@starterlib/tokens 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,64 +1,54 @@
1
- # Tokens
1
+ # @starterlib/tokens
2
2
 
3
- This project was generated using [Angular CLI](https://github.com/angular/angular-cli) version 22.1.0.
3
+ Jetons de design du socle frontal starter : couleurs semantiques, echelles,
4
+ themes clair et sombre, et la feuille CSS engendree depuis le TypeScript.
4
5
 
5
- ## Code scaffolding
6
+ **Aucune dependance**, Angular compris. Le paquet reste donc consommable par un
7
+ courriel, un document PDF ou un outil de design, et le contraste se teste sans
8
+ monter le moindre composant.
6
9
 
7
- Angular CLI includes powerful code scaffolding tools. To generate a new component, run:
10
+ ## Installation
8
11
 
9
12
  ```bash
10
- ng generate component component-name
13
+ pnpm add @starterlib/tokens
11
14
  ```
12
15
 
13
- For a complete list of available schematics (such as `components`, `directives`, or `pipes`), run:
16
+ ## Feuille CSS
14
17
 
15
- ```bash
16
- ng generate --help
18
+ ```css
19
+ @import '@starterlib/tokens/styles/starter-tokens.css';
17
20
  ```
18
21
 
19
- ## Building
22
+ Elle pose les variables `--st-*` sur `:root`, le theme sombre sous
23
+ `[data-theme='sombre']` et sous `prefers-color-scheme: dark`, et reduit les
24
+ durees sous `prefers-reduced-motion`. `color-scheme` suit le theme effectif :
25
+ les controles natifs, les barres de defilement et le remplissage automatique
26
+ restent dans le bon theme meme quand l'utilisateur force un theme contraire a
27
+ son systeme.
20
28
 
21
- To build the library, run:
29
+ Le theme se force par attribut, et l'attribut l'emporte dans les deux sens :
22
30
 
23
- ```bash
24
- ng build tokens
31
+ ```html
32
+ <html data-theme="sombre"></html>
25
33
  ```
26
34
 
27
- This command will compile your project, and the build artifacts will be placed in the `dist/` directory.
28
-
29
- ### Publishing the Library
30
-
31
- Once the project is built, you can publish your library by following these steps:
32
-
33
- 1. Navigate to the `dist` directory:
34
-
35
- ```bash
36
- cd dist/tokens
37
- ```
38
-
39
- 2. Run the `npm publish` command to publish your library to the npm registry:
40
- ```bash
41
- npm publish
42
- ```
35
+ ## API TypeScript
43
36
 
44
- ## Running unit tests
45
-
46
- To execute unit tests with the [Vitest](https://vitest.dev/) test runner, use the following command:
47
-
48
- ```bash
49
- ng test
37
+ ```ts
38
+ import { themes, contraste, echelles } from '@starterlib/tokens';
50
39
  ```
51
40
 
52
- ## Running end-to-end tests
41
+ - `themes.clair` et `themes.sombre` : couleurs semantiques.
42
+ - `echelles` : espacement, typographie, rayons, ombres, durees, plans.
43
+ - `contraste(a, b)` : rapport WCAG, employe par les tests du depot.
53
44
 
54
- For end-to-end (e2e) testing, run:
55
-
56
- ```bash
57
- ng e2e
58
- ```
45
+ ## Garde de non-derive
59
46
 
60
- Angular CLI does not come with an end-to-end testing framework by default. You can choose one that suits your needs.
47
+ Le CSS est **engendre**, jamais ecrit a la main. `pnpm tokens:css:check` echoue
48
+ si la feuille livree ne correspond plus aux jetons TypeScript — meme principe
49
+ que le controle de contrat cote backend.
61
50
 
62
- ## Additional Resources
51
+ ## Accessibilite
63
52
 
64
- For more information on using the Angular CLI, including detailed command references, visit the [Angular CLI Overview and Command Reference](https://angular.dev/tools/cli) page.
53
+ 25 paires semantiques sont verifiees en AA dans les deux themes par les tests du
54
+ paquet. Toute exemption porte une raison ecrite et reste perceptible.
@@ -371,23 +371,30 @@ function cssDuTheme(theme) {
371
371
  * s'applique soit par preference systeme, soit par attribut explicite, et
372
372
  * l'attribut l'emporte dans les deux sens (un utilisateur qui choisit le
373
373
  * clair sur un systeme sombre doit obtenir le clair).
374
+ *
375
+ * ⚠️ `color-scheme` suit le theme EFFECTIF, il n'est pas pose une fois pour
376
+ * toutes a `light dark` : ce dernier laisse le navigateur decider seul, si bien
377
+ * qu'un theme clair force sur un systeme sombre gardait des barres de
378
+ * defilement, des champs natifs et un remplissage automatique sombres.
374
379
  */
375
380
  function feuilleDeJetons() {
376
381
  return `/* Engendre par @starterlib/tokens — ne pas modifier a la main.
377
382
  Regenerer : pnpm tokens:css */
378
383
 
379
384
  :root {
380
- color-scheme: light dark;
385
+ color-scheme: light;
381
386
  ${cssDesEchelles()}
382
387
  ${cssDuTheme('clair')}
383
388
  }
384
389
 
385
390
  :root[data-theme='sombre'] {
391
+ color-scheme: dark;
386
392
  ${cssDuTheme('sombre')}
387
393
  }
388
394
 
389
395
  @media (prefers-color-scheme: dark) {
390
396
  :root:not([data-theme='clair']) {
397
+ color-scheme: dark;
391
398
  ${cssDuTheme('sombre')
392
399
  .split('\n')
393
400
  .map((l) => ` ${l}`)
@@ -1 +1 @@
1
- {"version":3,"file":"starterlib-tokens.mjs","sources":["../../../../packages/tokens/src/lib/primitives.ts","../../../../packages/tokens/src/lib/echelles.ts","../../../../packages/tokens/src/lib/contraste.ts","../../../../packages/tokens/src/lib/theme.ts","../../../../packages/tokens/src/lib/css.ts","../../../../packages/tokens/src/public-api.ts","../../../../packages/tokens/src/starterlib-tokens.ts"],"sourcesContent":["/**\n * Niveau 1 — primitives. Palette brute, sans intention d'usage.\n * Aucun composant ne consomme ce niveau directement : il passe par le\n * niveau semantique, sinon un changement de nuance se propage a l'aveugle.\n */\nexport const primitives = {\n neutre: {\n 0: '#ffffff',\n 50: '#f7f8fa',\n 100: '#eef1f5',\n 200: '#dde2e9',\n 300: '#c3ccd7',\n 400: '#94a1b2',\n 500: '#6b7889',\n 600: '#4d5868',\n 700: '#39414e',\n 800: '#232a34',\n 900: '#141920',\n 950: '#0b0e13',\n },\n bleu: {\n 50: '#eff5ff',\n 100: '#dbe8fe',\n 200: '#bfd6fe',\n 300: '#93bbfd',\n 400: '#609afa',\n 500: '#3b7df6',\n 600: '#255eeb',\n 700: '#1d4ed8',\n 800: '#1e40af',\n 900: '#1e3a8a',\n },\n vert: {\n 100: '#d7f5e3',\n 300: '#7fd6a4',\n 500: '#1a9d54',\n 600: '#15803d',\n 700: '#116932',\n 900: '#0a3d1e',\n },\n ambre: {\n 100: '#fdf0d5',\n 300: '#f3c969',\n 500: '#b4730b',\n 600: '#a16207',\n 700: '#854d0e',\n 900: '#432a06',\n },\n rouge: {\n 100: '#fde2e2',\n 300: '#f3a3a3',\n 500: '#d92d2d',\n 600: '#b91c1c',\n 700: '#991b1b',\n 900: '#4c1010',\n },\n} as const;\n","/**\n * Echelles non chromatiques. Elles ne changent pas entre le theme clair et le\n * theme sombre : une distance ni une graisse ne dependent de la luminosite.\n */\n\n/** Pas de 4 px. Une valeur hors echelle est un defaut de conception. */\nexport const espacement = {\n '0': '0',\n '1': '0.25rem',\n '2': '0.5rem',\n '3': '0.75rem',\n '4': '1rem',\n '5': '1.25rem',\n '6': '1.5rem',\n '8': '2rem',\n '10': '2.5rem',\n '12': '3rem',\n '16': '4rem',\n '20': '5rem',\n '24': '6rem',\n} as const;\n\nexport const rayon = {\n none: '0',\n xs: '0.125rem',\n sm: '0.25rem',\n md: '0.5rem',\n lg: '0.75rem',\n xl: '1rem',\n pleine: '9999px',\n} as const;\n\nexport const typographie = {\n famille: {\n base: \"system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif\",\n mono: \"ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace\",\n },\n taille: {\n xs: '0.75rem',\n sm: '0.875rem',\n md: '1rem',\n lg: '1.125rem',\n xl: '1.25rem',\n '2xl': '1.5rem',\n '3xl': '1.875rem',\n '4xl': '2.25rem',\n },\n graisse: { normale: '400', moyenne: '500', semi: '600', grasse: '700' },\n interligne: { serre: '1.25', normal: '1.5', large: '1.75' },\n} as const;\n\n/**\n * Les ombres restent discretes : une elevation forte sur fond sombre se lit\n * comme une salissure, jamais comme une hauteur.\n */\nexport const ombre = {\n none: 'none',\n sm: '0 1px 2px 0 rgb(0 0 0 / 0.06)',\n md: '0 2px 6px -1px rgb(0 0 0 / 0.10), 0 1px 3px -1px rgb(0 0 0 / 0.06)',\n lg: '0 8px 20px -4px rgb(0 0 0 / 0.12), 0 3px 8px -3px rgb(0 0 0 / 0.07)',\n xl: '0 20px 40px -8px rgb(0 0 0 / 0.16)',\n} as const;\n\n/**\n * Durees courtes : au-dela de 250 ms une interface bancaire parait lente.\n * Toute animation doit se desactiver sous `prefers-reduced-motion`.\n */\nexport const duree = {\n instantane: '0ms',\n rapide: '120ms',\n normale: '200ms',\n lente: '320ms',\n} as const;\n\nexport const courbe = {\n standard: 'cubic-bezier(0.2, 0, 0, 1)',\n entrant: 'cubic-bezier(0, 0, 0, 1)',\n sortant: 'cubic-bezier(0.3, 0, 1, 1)',\n} as const;\n\n/**\n * Plans d'empilement nommes. Un `z-index` ecrit a la main dans un composant\n * est un defaut : il finira par passer devant ou derriere sans qu'on sache\n * pourquoi.\n */\nexport const plan = {\n base: '0',\n contenuEleve: '10',\n entete: '100',\n tiroir: '200',\n superposition: '300',\n dialogue: '400',\n infobulle: '500',\n notification: '600',\n} as const;\n\n/** Points de rupture. Mobile d'abord : ces valeurs sont des minimums. */\nexport const rupture = {\n sm: '480px',\n md: '768px',\n lg: '1024px',\n xl: '1280px',\n '2xl': '1536px',\n} as const;\n\n/** Cible tactile minimale. Sous 44 px, l'echec de pointage devient courant. */\nexport const cibleTactileMinimale = '44px';\n","/**\n * Calcul de contraste WCAG 2.1. Il vit dans les jetons, et non dans les tests,\n * parce qu'une SPA peut avoir a verifier une couleur fournie a l'execution\n * (theme d'un client, statut colore par une donnee).\n */\n\nexport interface Rvb {\n readonly r: number;\n readonly g: number;\n readonly b: number;\n}\n\n/** Accepte `#rgb` et `#rrggbb`. Leve sur toute autre forme : une couleur\n * illisible ne doit pas se transformer en noir par defaut. */\nexport function versRvb(hex: string): Rvb {\n const v = hex.trim().replace(/^#/, '');\n const complet =\n v.length === 3\n ? v\n .split('')\n .map((c) => c + c)\n .join('')\n : v;\n if (!/^[0-9a-fA-F]{6}$/.test(complet)) {\n throw new Error(`Couleur hexadecimale invalide : ${hex}`);\n }\n return {\n r: parseInt(complet.slice(0, 2), 16),\n g: parseInt(complet.slice(2, 4), 16),\n b: parseInt(complet.slice(4, 6), 16),\n };\n}\n\nfunction canalLineaire(valeur8bits: number): number {\n const c = valeur8bits / 255;\n return c <= 0.04045 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);\n}\n\n/** Luminance relative WCAG, entre 0 (noir) et 1 (blanc). */\nexport function luminanceRelative(couleur: string | Rvb): number {\n const { r, g, b } = typeof couleur === 'string' ? versRvb(couleur) : couleur;\n return 0.2126 * canalLineaire(r) + 0.7152 * canalLineaire(g) + 0.0722 * canalLineaire(b);\n}\n\n/** Rapport de contraste, entre 1 et 21. L'ordre des arguments est indifferent. */\nexport function rapportDeContraste(a: string | Rvb, b: string | Rvb): number {\n const la = luminanceRelative(a);\n const lb = luminanceRelative(b);\n const clair = Math.max(la, lb);\n const sombre = Math.min(la, lb);\n return (clair + 0.05) / (sombre + 0.05);\n}\n\nexport type NiveauContraste = 'AA' | 'AAA';\nexport type NatureDuTexte = 'courant' | 'grand' | 'composant';\n\n/**\n * Seuils WCAG. `composant` couvre les bordures, icones et limites de champ :\n * la norme 1.4.11 leur demande 3:1, pas 4.5:1.\n */\nexport function seuilExige(niveau: NiveauContraste, nature: NatureDuTexte): number {\n if (nature === 'composant') return 3;\n if (niveau === 'AAA') return nature === 'grand' ? 4.5 : 7;\n return nature === 'grand' ? 3 : 4.5;\n}\n\nexport function respecteLeContraste(\n premierPlan: string,\n arrierePlan: string,\n niveau: NiveauContraste = 'AA',\n nature: NatureDuTexte = 'courant',\n): boolean {\n return rapportDeContraste(premierPlan, arrierePlan) >= seuilExige(niveau, nature);\n}\n","import { primitives } from './primitives';\nimport type { NatureDuTexte } from './contraste';\n\n/**\n * Niveau 2 — jetons semantiques. C'est le SEUL niveau que les composants\n * consomment. Le nom dit le role, jamais la couleur : `danger` reste `danger`\n * si la charte passe du rouge a l'orange.\n */\nexport interface JetonsDeCouleur {\n readonly fond: string;\n readonly surface: string;\n readonly surfaceElevee: string;\n readonly surfaceEnfoncee: string;\n readonly surfaceSurvol: string;\n\n readonly texte: string;\n readonly texteDiscret: string;\n readonly texteDesactive: string;\n readonly texteInverse: string;\n\n readonly bordure: string;\n readonly bordureForte: string;\n readonly anneauFocus: string;\n\n readonly primaire: string;\n readonly primaireSurvol: string;\n readonly surPrimaire: string;\n readonly primaireDiscret: string;\n readonly surPrimaireDiscret: string;\n\n readonly succes: string;\n readonly surSucces: string;\n readonly succesDiscret: string;\n readonly surSuccesDiscret: string;\n\n readonly avertissement: string;\n readonly surAvertissement: string;\n readonly avertissementDiscret: string;\n readonly surAvertissementDiscret: string;\n\n readonly danger: string;\n readonly dangerSurvol: string;\n readonly surDanger: string;\n readonly dangerDiscret: string;\n readonly surDangerDiscret: string;\n}\n\nexport type NomDeTheme = 'clair' | 'sombre';\n\nexport const themeClair: JetonsDeCouleur = {\n fond: primitives.neutre[50],\n surface: primitives.neutre[0],\n surfaceElevee: primitives.neutre[0],\n surfaceEnfoncee: primitives.neutre[100],\n surfaceSurvol: primitives.neutre[100],\n\n texte: primitives.neutre[900],\n texteDiscret: primitives.neutre[600],\n texteDesactive: primitives.neutre[400],\n texteInverse: primitives.neutre[0],\n\n bordure: primitives.neutre[200],\n // 4.49:1 sur `surface` : c'est la bordure qui IDENTIFIE un champ,\n // elle est soumise a WCAG 1.4.11. La neutre 400 n'atteignait que 2.63:1.\n bordureForte: primitives.neutre[500],\n anneauFocus: primitives.bleu[600],\n\n primaire: primitives.bleu[700],\n primaireSurvol: primitives.bleu[800],\n surPrimaire: primitives.neutre[0],\n primaireDiscret: primitives.bleu[50],\n surPrimaireDiscret: primitives.bleu[900],\n\n succes: primitives.vert[600],\n surSucces: primitives.neutre[0],\n succesDiscret: primitives.vert[100],\n surSuccesDiscret: primitives.vert[900],\n\n avertissement: primitives.ambre[600],\n surAvertissement: primitives.neutre[0],\n avertissementDiscret: primitives.ambre[100],\n surAvertissementDiscret: primitives.ambre[900],\n\n danger: primitives.rouge[600],\n dangerSurvol: primitives.rouge[700],\n surDanger: primitives.neutre[0],\n dangerDiscret: primitives.rouge[100],\n surDangerDiscret: primitives.rouge[900],\n};\n\nexport const themeSombre: JetonsDeCouleur = {\n fond: primitives.neutre[950],\n surface: primitives.neutre[900],\n surfaceElevee: primitives.neutre[800],\n surfaceEnfoncee: primitives.neutre[950],\n surfaceSurvol: primitives.neutre[800],\n\n texte: primitives.neutre[100],\n texteDiscret: primitives.neutre[300],\n texteDesactive: primitives.neutre[500],\n texteInverse: primitives.neutre[950],\n\n bordure: primitives.neutre[700],\n bordureForte: primitives.neutre[500],\n anneauFocus: primitives.bleu[300],\n\n primaire: primitives.bleu[300],\n primaireSurvol: primitives.bleu[200],\n surPrimaire: primitives.neutre[950],\n primaireDiscret: primitives.bleu[900],\n surPrimaireDiscret: primitives.bleu[100],\n\n succes: primitives.vert[300],\n surSucces: primitives.neutre[950],\n succesDiscret: primitives.vert[900],\n surSuccesDiscret: primitives.vert[100],\n\n avertissement: primitives.ambre[300],\n surAvertissement: primitives.neutre[950],\n avertissementDiscret: primitives.ambre[900],\n surAvertissementDiscret: primitives.ambre[100],\n\n danger: primitives.rouge[300],\n dangerSurvol: primitives.rouge[100],\n surDanger: primitives.neutre[950],\n dangerDiscret: primitives.rouge[900],\n surDangerDiscret: primitives.rouge[100],\n};\n\nexport const themes: Readonly<Record<NomDeTheme, JetonsDeCouleur>> = {\n clair: themeClair,\n sombre: themeSombre,\n};\n\n/**\n * Les paires que le contraste doit tenir. Elles sont declarees ici, et non\n * dans le test, pour qu'un jeton ajoute sans sa paire saute aux yeux : le\n * test verifie aussi que chaque couleur de premier plan est couverte.\n */\nexport interface PaireDeContraste {\n readonly premierPlan: keyof JetonsDeCouleur;\n readonly arrierePlan: keyof JetonsDeCouleur;\n readonly nature: NatureDuTexte;\n}\n\nexport const pairesDeContraste: readonly PaireDeContraste[] = [\n { premierPlan: 'texte', arrierePlan: 'surface', nature: 'courant' },\n { premierPlan: 'texte', arrierePlan: 'fond', nature: 'courant' },\n { premierPlan: 'texte', arrierePlan: 'surfaceElevee', nature: 'courant' },\n { premierPlan: 'texte', arrierePlan: 'surfaceEnfoncee', nature: 'courant' },\n { premierPlan: 'texteDiscret', arrierePlan: 'surface', nature: 'courant' },\n { premierPlan: 'texteDiscret', arrierePlan: 'fond', nature: 'courant' },\n { premierPlan: 'texteInverse', arrierePlan: 'primaire', nature: 'courant' },\n\n { premierPlan: 'bordureForte', arrierePlan: 'surface', nature: 'composant' },\n { premierPlan: 'anneauFocus', arrierePlan: 'surface', nature: 'composant' },\n { premierPlan: 'anneauFocus', arrierePlan: 'fond', nature: 'composant' },\n\n { premierPlan: 'surPrimaire', arrierePlan: 'primaire', nature: 'courant' },\n { premierPlan: 'surPrimaire', arrierePlan: 'primaireSurvol', nature: 'courant' },\n { premierPlan: 'surPrimaireDiscret', arrierePlan: 'primaireDiscret', nature: 'courant' },\n { premierPlan: 'primaire', arrierePlan: 'surface', nature: 'courant' },\n\n { premierPlan: 'surSucces', arrierePlan: 'succes', nature: 'courant' },\n { premierPlan: 'surSuccesDiscret', arrierePlan: 'succesDiscret', nature: 'courant' },\n { premierPlan: 'succes', arrierePlan: 'surface', nature: 'composant' },\n\n { premierPlan: 'surAvertissement', arrierePlan: 'avertissement', nature: 'courant' },\n {\n premierPlan: 'surAvertissementDiscret',\n arrierePlan: 'avertissementDiscret',\n nature: 'courant',\n },\n { premierPlan: 'avertissement', arrierePlan: 'surface', nature: 'composant' },\n\n { premierPlan: 'surDanger', arrierePlan: 'danger', nature: 'courant' },\n { premierPlan: 'surDanger', arrierePlan: 'dangerSurvol', nature: 'courant' },\n { premierPlan: 'surDangerDiscret', arrierePlan: 'dangerDiscret', nature: 'courant' },\n { premierPlan: 'danger', arrierePlan: 'surface', nature: 'courant' },\n];\n\n/**\n * Jetons volontairement HORS du controle de contraste, avec leur raison.\n * Une exemption non ecrite est un oubli ; ecrite, elle se discute.\n */\nexport interface Exemption {\n readonly jeton: keyof JetonsDeCouleur;\n readonly raison: string;\n}\n\nexport const exemptesDeContraste: readonly Exemption[] = [\n {\n jeton: 'bordure',\n raison:\n 'Separateur decoratif (bord de carte, filet de tableau). WCAG 1.4.11 ne ' +\n \"s'applique qu'aux bordures porteuses d'information ; celle qui identifie \" +\n 'un champ est `bordureForte`, elle, controlee a 3:1.',\n },\n {\n jeton: 'texteDesactive',\n raison:\n 'WCAG 1.4.3 exempte explicitement les commandes desactivees. Le statut ' +\n \"desactive n'est jamais porte par la seule couleur : l'attribut aria le dit.\",\n },\n];\n\n/** Seuil de perceptibilite des jetons exemptes : ils n'ont pas de minimum\n * normatif, mais un separateur invisible ne separe rien. */\nexport const SEUIL_DE_PERCEPTIBILITE = 1.2;\n","import {\n duree,\n courbe,\n espacement,\n ombre,\n plan,\n rayon,\n rupture,\n typographie,\n cibleTactileMinimale,\n} from './echelles';\nimport { themes, type JetonsDeCouleur, type NomDeTheme } from './theme';\n\n/**\n * Les proprietes CSS personnalisees sont ENGENDREES depuis les jetons\n * TypeScript, jamais ecrites a la main en parallele. Deux sources de verite\n * pour une meme couleur finissent toujours par diverger ; ici la derive est\n * impossible, et la CI verifie que le fichier livre correspond au code.\n */\n\nexport const PREFIXE = '--st';\n\nfunction aplatir(prefixe: string, valeurs: Readonly<Record<string, string>>): string[] {\n const entrees = Object.entries(valeurs);\n return entrees.map(([cle, valeur]) => ` ${prefixe}-${cle}: ${valeur};`);\n}\n\nfunction couleursEnCss(jetons: JetonsDeCouleur): string[] {\n const entrees = Object.entries(jetons) as [string, string][];\n return entrees.map(([cle, valeur]) => ` ${PREFIXE}-couleur-${enKebab(cle)}: ${valeur};`);\n}\n\nfunction enKebab(valeur: string): string {\n return valeur.replace(/([a-z0-9])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\n/** Jetons invariants : ils ne dependent pas du theme. */\nexport function cssDesEchelles(): string {\n return [\n ...aplatir(`${PREFIXE}-espacement`, espacement),\n ...aplatir(`${PREFIXE}-rayon`, rayon),\n ...aplatir(`${PREFIXE}-ombre`, ombre),\n ...aplatir(`${PREFIXE}-duree`, duree),\n ...aplatir(`${PREFIXE}-courbe`, courbe),\n ...aplatir(`${PREFIXE}-plan`, plan),\n ...aplatir(`${PREFIXE}-rupture`, rupture),\n ...aplatir(`${PREFIXE}-police`, typographie.famille),\n ...aplatir(`${PREFIXE}-taille`, typographie.taille),\n ...aplatir(`${PREFIXE}-graisse`, typographie.graisse),\n ...aplatir(`${PREFIXE}-interligne`, typographie.interligne),\n ` ${PREFIXE}-cible-tactile-min: ${cibleTactileMinimale};`,\n ].join('\\n');\n}\n\nexport function cssDuTheme(theme: NomDeTheme): string {\n return couleursEnCss(themes[theme]).join('\\n');\n}\n\n/**\n * Feuille complete. Le theme clair est la valeur par defaut ; le sombre\n * s'applique soit par preference systeme, soit par attribut explicite, et\n * l'attribut l'emporte dans les deux sens (un utilisateur qui choisit le\n * clair sur un systeme sombre doit obtenir le clair).\n */\nexport function feuilleDeJetons(): string {\n return `/* Engendre par @starterlib/tokens — ne pas modifier a la main.\n Regenerer : pnpm tokens:css */\n\n:root {\n color-scheme: light dark;\n${cssDesEchelles()}\n${cssDuTheme('clair')}\n}\n\n:root[data-theme='sombre'] {\n${cssDuTheme('sombre')}\n}\n\n@media (prefers-color-scheme: dark) {\n :root:not([data-theme='clair']) {\n${cssDuTheme('sombre')\n .split('\\n')\n .map((l) => ` ${l}`)\n .join('\\n')}\n }\n}\n\n@media (prefers-reduced-motion: reduce) {\n :root {\n ${PREFIXE}-duree-rapide: 0ms;\n ${PREFIXE}-duree-normale: 0ms;\n ${PREFIXE}-duree-lente: 0ms;\n }\n}\n`;\n}\n","/**\n * @starterlib/tokens — niveau 1 et 2 du systeme de design.\n *\n * Ce paquet ne depend d'AUCUNE bibliotheque, Angular compris : il doit rester\n * consommable par un rendu de courriel, un export PDF ou un outil de design.\n */\nexport * from './lib/primitives';\nexport * from './lib/echelles';\nexport * from './lib/contraste';\nexport * from './lib/theme';\nexport * from './lib/css';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"starterlib-tokens.mjs","sources":["../../../../packages/tokens/src/lib/primitives.ts","../../../../packages/tokens/src/lib/echelles.ts","../../../../packages/tokens/src/lib/contraste.ts","../../../../packages/tokens/src/lib/theme.ts","../../../../packages/tokens/src/lib/css.ts","../../../../packages/tokens/src/public-api.ts","../../../../packages/tokens/src/starterlib-tokens.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,9 +1,11 @@
1
1
  {
2
2
  "name": "@starterlib/tokens",
3
- "version": "0.1.0",
4
- "description": "Jetons de design du socle frontal starter : couleurs semantiques, echelles, contraste WCAG. Aucune dependance, Angular compris.",
3
+ "version": "0.2.0",
4
+ "description": "Jetons de design du socle frontal starter : couleurs semantiques, echelles, contraste WCAG. Aucune dependance de rendu, Angular compris.",
5
5
  "license": "UNLICENSED",
6
- "sideEffects": false,
6
+ "sideEffects": [
7
+ "*.css"
8
+ ],
7
9
  "publishConfig": {
8
10
  "access": "public"
9
11
  },
@@ -2,7 +2,7 @@
2
2
  Regenerer : pnpm tokens:css */
3
3
 
4
4
  :root {
5
- color-scheme: light dark;
5
+ color-scheme: light;
6
6
  --st-espacement-0: 0;
7
7
  --st-espacement-1: 0.25rem;
8
8
  --st-espacement-2: 0.5rem;
@@ -99,6 +99,7 @@
99
99
  }
100
100
 
101
101
  :root[data-theme='sombre'] {
102
+ color-scheme: dark;
102
103
  --st-couleur-fond: #0b0e13;
103
104
  --st-couleur-surface: #141920;
104
105
  --st-couleur-surface-elevee: #232a34;
@@ -133,6 +134,7 @@
133
134
 
134
135
  @media (prefers-color-scheme: dark) {
135
136
  :root:not([data-theme='clair']) {
137
+ color-scheme: dark;
136
138
  --st-couleur-fond: #0b0e13;
137
139
  --st-couleur-surface: #141920;
138
140
  --st-couleur-surface-elevee: #232a34;
@@ -270,6 +270,11 @@ declare function cssDuTheme(theme: NomDeTheme): string;
270
270
  * s'applique soit par preference systeme, soit par attribut explicite, et
271
271
  * l'attribut l'emporte dans les deux sens (un utilisateur qui choisit le
272
272
  * clair sur un systeme sombre doit obtenir le clair).
273
+ *
274
+ * ⚠️ `color-scheme` suit le theme EFFECTIF, il n'est pas pose une fois pour
275
+ * toutes a `light dark` : ce dernier laisse le navigateur decider seul, si bien
276
+ * qu'un theme clair force sur un systeme sombre gardait des barres de
277
+ * defilement, des champs natifs et un remplissage automatique sombres.
273
278
  */
274
279
  declare function feuilleDeJetons(): string;
275
280