@1024pix/pix-ui 39.0.3 → 40.1.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.
Files changed (62) hide show
  1. package/addon/common/add-dynamic-style-tag.js +8 -0
  2. package/addon/components/pix-filterable-and-searchable-select.hbs +11 -10
  3. package/addon/components/pix-filterable-and-searchable-select.js +30 -2
  4. package/addon/components/pix-multi-select.hbs +68 -64
  5. package/addon/components/pix-multi-select.js +9 -0
  6. package/addon/components/pix-select.hbs +6 -2
  7. package/addon/components/pix-select.js +13 -19
  8. package/addon/styles/_pix-filterable-and-searchable-select.scss +6 -1
  9. package/addon/styles/_pix-multi-select.scss +2 -2
  10. package/addon/styles/_pix-select.scss +4 -2
  11. package/addon/styles/addon.scss +1 -2
  12. package/app/stories/form.stories.js +0 -13
  13. package/app/stories/pix-multi-select.stories.js +13 -2
  14. package/app/stories/pix-select.stories.js +9 -0
  15. package/package.json +25 -20
  16. package/.buildpacks +0 -2
  17. package/.circleci/config.yml +0 -84
  18. package/.gitattributes +0 -7
  19. package/.nvmrc +0 -1
  20. package/.prettierrc.json +0 -12
  21. package/.storybook/logo.svg +0 -1
  22. package/.storybook/main.js +0 -10
  23. package/.storybook/manager.js +0 -6
  24. package/.storybook/preview.js +0 -39
  25. package/.storybook/storybook-custom-theme.js +0 -37
  26. package/.stylelintrc.json +0 -17
  27. package/CHANGELOG.md +0 -1373
  28. package/CNAME +0 -1
  29. package/addon/components/pix-dropdown.hbs +0 -101
  30. package/addon/components/pix-dropdown.js +0 -181
  31. package/addon/styles/_pix-dropdown.scss +0 -157
  32. package/app/components/pix-dropdown.js +0 -1
  33. package/app/stories/pix-dropdown.mdx +0 -57
  34. package/app/stories/pix-dropdown.stories.js +0 -193
  35. package/config/environment.js +0 -5
  36. package/docs/adr/0001-utiliser-les-balises-html-natives.md +0 -51
  37. package/docs/architecture.mdx +0 -106
  38. package/docs/assets/accessibility-storybook.png +0 -0
  39. package/docs/assets/screen-pix-storybook.png +0 -0
  40. package/docs/breaking-changes.mdx +0 -102
  41. package/docs/changelog.mdx +0 -6
  42. package/docs/colors-palette.mdx +0 -237
  43. package/docs/create-component.mdx +0 -112
  44. package/docs/design-system.mdx +0 -20
  45. package/docs/design-tokens.mdx +0 -72
  46. package/docs/good-practices-a11y.mdx +0 -43
  47. package/docs/good-practices-design.mdx +0 -62
  48. package/docs/good-practices-responsive.mdx +0 -51
  49. package/docs/good-practices-style-css.mdx +0 -40
  50. package/docs/good-practices-tests.mdx +0 -9
  51. package/docs/make-a-release.mdx +0 -45
  52. package/docs/pix-design-tokens-dev.mdx +0 -39
  53. package/docs/pull_request_template.md +0 -14
  54. package/docs/shadow.mdx +0 -25
  55. package/docs/spacing.mdx +0 -19
  56. package/docs/storybook.mdx +0 -45
  57. package/docs/test-component-without-release.mdx +0 -19
  58. package/docs/typography.mdx +0 -163
  59. package/docs/use-component.mdx +0 -90
  60. package/docs/use-install.mdx +0 -37
  61. package/scalingo.json +0 -17
  62. package/servers.conf.erb +0 -30
@@ -1,72 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Utiliser Pix UI/Design Tokens/ Utilisation" />
4
-
5
- # Design Tokens
6
-
7
- > Les design tokens contiennent plusieurs éléments de base de la charte graphique (les couleurs, la typographie, les icônes, etc.)
8
-
9
- ## Utiliser les classes, placeholders, mixins et variables dans vos fichiers scss
10
-
11
- En ajoutant la dépendance dans votre application avec `npm install`, vous avez déjà accès aux classes, mais pour avoir accès aux placeholders, mixins et variables,
12
- il faut ajouter le code ci-dessous dans le `new EmberApp()` de votre `ember-cli.build.js` qui se trouve à la racine du projet :
13
-
14
- ```js
15
- sassOptions: {
16
- includePaths: ['node_modules/@1024pix/pix-ui/addon/styles'],
17
- },
18
- ```
19
-
20
- Par la suite vous aurez accès à toutes les variables des design tokens avec le `$`, par exemple `border: 1px solid $pix-primary;`.
21
-
22
- Pour pouvoir utiliser les placeholders et mixins, il faudra importer les design tokens dans le fichier source :
23
-
24
- ```css
25
- /* Fichier pix/orga/app/styles/app.scss */
26
- @import 'pix-design-tokens';
27
- ```
28
-
29
- Puis les utiliser de cette manière :
30
-
31
- ```css
32
- /* Fichier pix/orga/app/styles/authenticated/organization.scss */
33
- .organization-title {
34
- @extend %pix-title-m;
35
-
36
- @include device-is('desktop') {
37
- ...
38
- }
39
- }
40
- ```
41
-
42
- ## Définir les alertes
43
-
44
- Les couleurs pour définir un état d'une alerte ont été attribuées pour uniformiser le visuel sur toutes les applications.
45
-
46
- ### Success
47
-
48
- ```
49
- Texte ou bordure : $pix-success-70
50
- Background : $pix-success-5
51
- ```
52
-
53
- ### Warning
54
-
55
- ```
56
- Texte ou bordure : $pix-warning-70
57
- Background : $pix-warning-5
58
- ```
59
-
60
- ### Error
61
-
62
- ```
63
- Texte ou bordure : $pix-error-70
64
- Background : $pix-error-5
65
- ```
66
-
67
- ### Information
68
-
69
- ```
70
- Texte ou bordure : $pix-primary-70
71
- Background : $pix-primary-5
72
- ```
@@ -1,43 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
- import accessibilityImage from './assets/accessibility-storybook.png';
3
-
4
- <Meta title="Développement/Bonnes pratiques/Accessibilité" />
5
-
6
- # Bonnes pratiques d'accessibilité
7
-
8
- L'accessiblité est un enjeu important sur nos composants UI.
9
-
10
- ## S'assurer d'avoir un composant accessible
11
-
12
- - Penser au contraste entre le fond et le texte de votre composant.
13
- - La taille de la police ne peut pas être inférieure à `10px`.
14
- - La navigation au clavier permet d'accéder à toutes les parties de votre composant `Tab pour aller à l'élément suivant, Entrée ou Espace pour valider, Maj+Tab pour revenir à l'élément précédent`.
15
- - S'assurer que les éléments en focus suivent un ordre logique.
16
- - Lancer un logiciel de lecture d'écran (VoiceOver pour Mac) et s'assurer que ce soit compréhensible pour l'utilisateur.
17
-
18
- Exemples pour l'utilisation du lecteur d'écran :
19
-
20
- - Est-ce que l’information est lu et est compréhensible ?
21
-
22
- - Si l'information est obligatoire, est-ce signalé ?
23
-
24
- - Est-ce que les champs à remplir sont bien accompagnés d’un label ?
25
-
26
- - En cas d’erreur, est-ce que l’on prévient bien l'utilisateur pour corriger son erreur ?
27
-
28
- Pour vous aider à créer un composant accessible :
29
-
30
- - les channels Slack `#tech-a11y` (interne) et `#ext-hotline-accessibilité-pix-tanaguru` (externe avec Tanaguru) sont disponibles pour répondre à vos questions sur le sujet.
31
- - Nos pratiques sur l'accessibilité [ici](https://github.com/1024pix/pix/blob/dev/docs/Accessibilite.md)
32
- - Compte-rendu détaillé de notre atelier avec Tanaguru [ici](https://1024pix.atlassian.net/wiki/spaces/DEV/pages/2856288297/2021-05-27+-+Compte-rendu+Atelier+accessibilit+Tanaguru+les+devs)
33
- - Checklist des recommandations WebAIM [ici](https://webaim.org/standards/wcag/checklist#sc2.4.4)
34
-
35
- ## Vérifier l'accessibilité d'un composant sur Storybook
36
-
37
- Pour chaque composant, dans la partie 'Canvas', vous pouvez accéder à l'onglet 'Accessibility' qui donne un aperçu des règles d'accessibilité validées (Passes) ou non (Violations).
38
-
39
- Il est possible de cliquer sur "More info..." pour connaître en détail ces règles.
40
-
41
- <img src={accessibilityImage} alt="Accessibility in Storybook" />
42
-
43
- Mais cela ne couvre pas à 100% les règles d'accessibilité.
@@ -1,62 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Bonnes pratiques/Design" />
4
-
5
- # Bonnes pratiques design
6
-
7
- ## Nommage
8
-
9
- - les **noms de branches** commencent par `pix-ui`.
10
-
11
- - Les **noms des fichiers** suivent l'exemple de la pix-tooltip.
12
- _Par exemple, pour les styles, on recomandera de rajouter `_` devant le nom du fichier pour indiquer que c'est un ["fichier partiel Sass"](https://sass-lang.com/guide#topic-4)._
13
-
14
- - Les **noms des composants** commencent par `Pix` et sont écrit en _PascalCase_.
15
- _Par exemple, un composant bouton devient : `PixButton`._
16
-
17
- - Les **noms des propriétés des composants** sont écrit en _camelCase_.
18
-
19
- ```hbs
20
- <PixSelect @options={{options}} @onChange={{onChange}} @selectedOption='1' />
21
- ```
22
-
23
- - Les **noms des classes CSS** suivent la convention [BEM](https://github.com/1024pix/pix/blob/dev/docs/CSS.md).
24
-
25
- ```html
26
- class='pix-tooltip__content'
27
- ```
28
-
29
- ## Intentions & Responsabilités
30
-
31
- Il faut garder une **responsabilité unique** par composant.
32
-
33
- - Un composant doit interagir uniquement dans son scope afin de ne pas devenir trop complexe et provoquer des effets de bord.
34
- - Un composant trop complexe induit plusieurs paramètres ce qui rend donc son utilisation délicate.
35
-
36
- Par exemple, si l'intention d'un composant est d'être un bouton (dans notre existant, _`PixButton`_) et qu'on le fait évoluer pour qu'il puisse devenir aussi un lien, il perd alors son intention d'origine (le nommage du composant _`PixButton`_ ne fait alors plus sens) et prend trop de responsabilités.
37
-
38
- Il conviendra alors d'avoir un composant pour un bouton et un autre pour un lien.
39
-
40
- ## Breaking changes
41
-
42
- Un breaking change implique un changement d'intention ou/et de responsabilités du composant. Il est nécessaire de l'indiquer dans la PR correspondante.
43
-
44
- Exemple de PR : [Enrichir la Pix Tooltip - BREAKING CHANGES (Pix-2000).](https://github.com/1024pix/pix-ui/pull/68)
45
-
46
- Lorsqu'une autre personne va mettre à jour Pix UI dans une application, il est important qu'elle **vérifie le bon fonctionnement et le bon affichage des composants impactés par ces changements**. Il faut lui faciliter au maximum cette tâche en indiquant clairement dans la description de la PR le ou les composants impactés et les vérifications à effectuer.
47
-
48
- ## Rétrocompatibilité / Deprecated
49
-
50
- Il est aussi possible de signaler ces changements comme dépréciés :
51
-
52
- - Ne pas supprimer le composant actuel mais l'indiquer comme déprécié afin qu'il soit toujours utilisable le temps de faire les modifications. À terme, l'élément déprécié sera supprimé dans une nouvelle version majeure de Pix UI.
53
-
54
- Exemple d'un composant déprécié :
55
-
56
- ```hbs
57
- <PixSelect>
58
- <NewPixSelect @options={{options}} @onChange={{onChange}} @selectedOption='1' />
59
- </PixSelect>
60
- ```
61
-
62
- Autres détails d'un breaking change sur la page [Installation](/?path=/docs/utiliser-pix-ui-installation--page).
@@ -1,51 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Bonnes pratiques/Responsive" />
4
-
5
- # Bonnes pratiques responsive
6
-
7
- La mise en place de composants responsive doit respecter les règles définies dans le Design System.
8
-
9
- ## Breakpoints
10
-
11
- L'ensemble des breakpoints pour les différentes résolutions sont définis dans [le chapitre **Layout/Breakpoints** du Design System](https://zeroheight.com/8dd127da7/p/6877af-layout/t/47086b).
12
-
13
- Ils sont décris dans le fichier `addon/styles/_breakpoints.scss` et utilisables via la mixin `device-is`
14
-
15
- Par exemple, ici le style s'applique si on a moins la largeure d'une tablette.
16
-
17
- ```scss
18
- @include device-is('tablet') {
19
- padding: 32px 58px;
20
- font-size: 0.875rem;
21
- }
22
- ```
23
-
24
- Le différents devices disponibles sont :
25
-
26
- - `mobile`
27
- - `tablet`
28
- - `desktop`
29
- - `large-screen`
30
-
31
- ## Mobile first
32
-
33
- Le développement des composants doit être pensé et développé pour mobile puis adapté à des résolutions et devices supérieurs par la suite.
34
-
35
- ```scss
36
- .my-class {
37
- width: 100px; // Sur mobile par défaut
38
-
39
- @include device-is('tablet') {
40
- width: 200px; // Sur tablette
41
- }
42
-
43
- @include device-is('desktop') {
44
- width: 300px; // Sur desktop
45
- }
46
-
47
- @include device-is('large-screen') {
48
- width: 400px; // Sur écran large
49
- }
50
- }
51
- ```
@@ -1,40 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Bonnes pratiques/Style CSS" />
4
-
5
- # Style CSS / SCSS
6
-
7
- ## Arborescence
8
-
9
- - Les variables se trouvent dans leur fichier scss respectif: `_breakpoints.scss`, `_colors.scss`, `_fonts.scss`.
10
- - Chaque composant a son fichier scss qui sont importés dans `addon/styles/addon.scss`.
11
-
12
- ```javascript
13
- @import 'pix-tooltip';
14
- ```
15
-
16
- ## Rendre surchargeable le SCSS
17
-
18
- Passer `...attributes` au composant.
19
-
20
- ```html
21
- <div class="pix-background-header" ...attributes></div>
22
- ```
23
-
24
- ## Convention BEM
25
-
26
- Nos classes suivent la convention [BEM](https://github.com/1024pix/pix/blob/dev/docs/CSS.md).
27
-
28
- ```javascript
29
- class='pix-tooltip__content'
30
- ```
31
-
32
- ## rem, spacing...
33
-
34
- Il est recommandé d'utiliser le `rem` plutot que `px`.
35
- 1rem = 16px
36
-
37
- Concernant les niveaux de textes, se référer a ZeroHeight [ici](https://zeroheight.com/8dd127da7/p/20e4df-typographie/b/974231).
38
-
39
- Utiliser les **variables Sass** déjà existantes.
40
- _Par exemple, vérifier dans les fichiers `_fonts.scss` et `_colors.scss`. Si elles n'existent pas, les rajouter au bon endroit._
@@ -1,9 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Bonnes pratiques/Tests" />
4
-
5
- # Bonnes pratiques de test
6
-
7
- - Tests unitaires
8
- - Tests intégrations
9
- - Tests UI (en cours d'étude)
@@ -1,45 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Faire une release" />
4
-
5
- # Faire une release
6
-
7
- ## C'est quoi une release ?
8
-
9
- Une release est la publication d'un nouvelle version du projet.
10
-
11
- Autrement dit, on crée un tag git pour nommer cette version. Les nouveautés embarquées par cette version sont donc
12
- uniquement celles déjà présentes sur `dev` au moment de la release.
13
-
14
- Les applications se servant de Pix UI pourront alors se mettre à jour et utiliser les nouveaux composants et des
15
- dernières features en précisant le numéro de la version.
16
-
17
- Par ailleurs, sur Pix UI une release signifie aussi la mise à jour automatique de [notre storybook en ligne](https://storybook.pix.fr/).
18
-
19
- ## Effectuer la release via slack
20
-
21
- Aller dans le canal slack dédié aux releases : [#tech-releases](https://1024pix.slack.com/archives/CVAMDQYHY), puis taper la commande suivante :
22
-
23
- - `/publish-pix-ui <version_souhaitée>`
24
- `<version_souhaitée>` peut prendre 3 valeurs :
25
- - `patch` : correctif de bug
26
- - `minor` : modifications n'apportant pas de changement dans l'utilisation de Pix UI
27
- - `major` : modifications apportant des breaking changes
28
-
29
- Vous devriez voir apparaître dans le canal un premier message (visible uniquement par vous) de Pix-bot vous indiquant
30
- que la demande de déploiement pour Pix UI a bien été prise en compte.
31
-
32
- Ensuite, Pix-Bot vous confirmera à nouveau via deux messages (un privé et un public) du bon déploiement de Pix UI en
33
- indiquant le numéro de sa nouvelle version.
34
-
35
- Et voilà 🎉
36
-
37
- Si vous souhaitez suivre le déroulement de la release, consulter les [logs](https://github.com/1024pix/pix-ui/actions/workflows/deploy-storybook.yml)
38
- de la GitHub action `Deploy Pix UI Storybook`.
39
-
40
- ## Constater le bon fonctionnement de la release
41
-
42
- Pour vérifier si la release s'est bien déroulée :
43
-
44
- - vérifier le contenu du [CHANGELOG.md](../CHANGELOG.md) : contient-il toutes les PR qui ont été mergées récemment sur la branche `dev` ?
45
- - vérifier si notre [Storybook en ligne](https://1024pix.github.io/pix-ui/) montre bien les nouveaux composants.
@@ -1,39 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Pix Design Tokens" />
4
-
5
- # Design Tokens
6
-
7
- > Les design tokens contiennent plusieurs éléments de base de la charte graphique (les couleurs, la typographie, les icones, etc.)
8
-
9
- ## Rajouter des design tokens dans Pix UI
10
-
11
- Quand vous êtes amenés à ajouter ou à modifier des éléments des design tokens, faites le dans le scss associé,
12
- par example `addon/styles/_typography.scss` ou `addon/styles/_colors.scss` et s'il n'est pas déjà importé, rajoutez l'import dans `addon/styles/design-tokens.scss`.
13
- Ceci nous permettra d'utiliser les placeholders dans nos applications par la suite.
14
-
15
- Le standard d'équipe est de créer un placeholder SCSS et une classe CSS préfixés par `pix-`.
16
-
17
- Par exemple :
18
-
19
- ```
20
- %pix-title-large {
21
- font-family: $font-open-sans;
22
- font-size: 2rem;
23
- line-height: 1.25;
24
- letter-spacing: -0.04em;
25
- font-weight: 500;
26
-
27
- @include device-is('tablet') {
28
- font-size: 2.5rem;
29
- }
30
-
31
- @include device-is('desktop') {
32
- font-size: 3rem;
33
- }
34
- }
35
-
36
- .pix-text {
37
- @extend %pix-title-large;
38
- }
39
- ```
@@ -1,14 +0,0 @@
1
- ## :boom: BREAKING_CHANGES
2
- > _Décrivez ici les changements cassant (voir la doc associée)[https://github.com/1024pix/pix-ui/blob/dev/docs/breaking-changes.stories.mdx], s'il n'y en a pas indiquez le aussi.
3
-
4
- ## :christmas_tree: Problème
5
- > _Décrivez ici le besoin ou l'intention couvert par cette Pull Request._
6
-
7
- ## :gift: Solution
8
- > _Ajoutez à cet endroit, si nécessaire, des détails concernant la solution technique retenue et mise en oeuvre, des difficultés ou problèmes rencontrés._
9
-
10
- ## :star2: Remarques
11
- > _Des infos supplémentaires, trucs et astuces ?_
12
-
13
- ## :santa: Pour tester
14
- > _Les instructions pour reproduire le problème, les profils de test, le parcours spécifique à utiliser, etc._
package/docs/shadow.mdx DELETED
@@ -1,25 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Utiliser Pix UI/Design Tokens/Ombres" />
4
-
5
- # Ombres
6
-
7
- Pour uniformiser les ombres dans nos applications, on dispose de plusieurs classes CSS :
8
-
9
- - `pix-shadow-xs`
10
- - `pix-shadow-sm`
11
- - `pix-shadow-md`
12
- - `pix-shadow-lg`
13
- - `pix-shadow-xl`
14
-
15
- Et leur équivalent en placeholder SCSS :
16
-
17
- - `@extend %pix-shadow-xs;`
18
- - `@extend %pix-shadow-sm;`
19
- - `@extend %pix-shadow-md;`
20
- - `@extend %pix-shadow-lg;`
21
- - `@extend %pix-shadow-xl;`
22
-
23
- Code associé : https://github.com/1024pix/pix-ui/blob/dev/addon/styles/pix-design-tokens/_shadows.scss
24
-
25
- Lien Figma : https://www.figma.com/file/8RJ3aCSfdeQ8AZZVBBYKS8/Design-System-Pix?node-id=54%3A5141
package/docs/spacing.mdx DELETED
@@ -1,19 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Utiliser Pix UI/Design Tokens/Espacements" />
4
-
5
- # Espacements
6
-
7
- Pour uniformiser les espacements dans nos applications, on dispose de plusieurs variables SCSS :
8
-
9
- - `$pix-spacing-xxs`
10
- - `$pix-spacing-xs`
11
- - `$pix-spacing-s`
12
- - `$pix-spacing-m`
13
- - `$pix-spacing-l`
14
- - `$pix-spacing-xl`
15
- - `$pix-spacing-xxl`
16
-
17
- Code associé : https://github.com/1024pix/pix-ui/blob/dev/addon/styles/pix-design-tokens/_spacing.scss
18
-
19
- Lien Figma : https://www.figma.com/file/8RJ3aCSfdeQ8AZZVBBYKS8/Design-System-Pix?node-id=54%3A4595&t=8piOzYzdI0ala3i6-0
@@ -1,45 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Storybook" />
4
-
5
- # Déploiement de Storybook
6
-
7
- Notre Storybook est déployé à l'adresse suivante : https://storybook.pix.fr
8
-
9
- ## C'est quoi Storybook ?
10
-
11
- [Storybook](https://storybook.js.org/) est un outil pour faire des interfaces présentant les composants UI d'un projet.
12
- Par abus de langage, lorsque nous parlons de Storybook, nous parlons du site web crée grâce à cet outil.
13
-
14
- ## Qui héberge notre Storybook ?
15
-
16
- Notre Storybook est hébergé de manière statique sur les [Github Pages](https://pages.github.com/).
17
-
18
- ## Quand est mis à jour notre Storybook ?
19
-
20
- La mise à jour de ce site Storybook est faite automatiquement lors d'une release de Pix UI.
21
- A noter qu'il faudra attendre quelques minutes après la fin de la release pour voir le changement.
22
-
23
- ## Quelle version de Storybook est mise en ligne ?
24
-
25
- La version des composants présentée sur notre Storybook correspond (en temps normal) à la version des composants présents sur la branche `master`.
26
-
27
- ## Concrètement comment ça marche ?
28
-
29
- Lors de la release de Pix UI, Pix Bot effectue la commande suivante depuis la branche `master`:
30
-
31
- ```shell
32
- npm run deploy-storybook
33
- ```
34
-
35
- Cette commande fait appel à l'outil [storybook-deployer](https://github.com/storybookjs/storybook-deployer). Ce dernier effectue les actions suivantes :
36
-
37
- - compiler Storybook comme une application statique
38
- - commit et push le résultat précédent sur la branche `gh-pages`
39
-
40
- _(Il est possible de customiser l'auteur ou le nom des commits, voir sur la [doc de storybook-deployer](https://github.com/storybookjs/storybook-deployer).)_
41
-
42
- Le changement de la branche `gh-pages` est détecté par les Github Pages et la nouvelle version du site est re-déployée.
43
-
44
- Pour changer la branche de déploiement ou l'url du site,
45
- voir dans les [settings du repository de Pix UI](https://github.com/1024pix/pix-ui/settings), section Github Pages.
@@ -1,19 +0,0 @@
1
- import { Meta } from '@storybook/blocks';
2
-
3
- <Meta title="Développement/Tester un composant en developpement dans une app" />
4
-
5
- # Tester un composant en developpement dans une app
6
-
7
- Il est possible de tester l'intégration d'un composant dans une application
8
- Ember sans nécessairement créer une nouvelle release.
9
-
10
- Pour cela, dans le repertoire de l'application Ember, installer Pix UI
11
- en utilisant l'adresse du dépôt Github et le nom de la branche.
12
- Par exemple :
13
-
14
- ```shell
15
- npm install "git://github.com/1024pix/pix-ui#add-modal-component" --save-dev
16
- ```
17
-
18
- Une fois l'application Ember redémarrée, il sera possible d'accéder aux
19
- composants Pix UI tels qu'ils sont dans la branche en cours de développement.
@@ -1,163 +0,0 @@
1
- import { Meta, Typeset, Markdown } from '@storybook/blocks';
2
-
3
- <Meta title="Utiliser Pix UI/Design Tokens/Typographie" />
4
-
5
- # Typographie
6
-
7
- Cette page permet de connaître les typographies qui sont disponibles dans `Pix-UI`. [Figma](https://www.figma.com/file/8RJ3aCSfdeQ8AZZVBBYKS8/Design-System-Pix?node-id=24-8&t=Nuq9GxVknLW0Qsbc-0) reste la source de vérité du design system de Pix.
8
-
9
- Ce que l'on nomme typographie dans ce contexte est un ensemble de 5 éléments :
10
-
11
- - Police d'écriture `font-family`
12
- - Taille de la police `font-size`
13
- - Hauteur de ligne `line-height`
14
- - Graisse `font-weight`
15
- - Espacement des caractères `letter-spacing`
16
-
17
- On met à disposition dans Pix UI des utilitaires pour simplifier l'usage.
18
-
19
- ## Utilisation via placeholder SCSS
20
-
21
- Des **placeholder SCSS** équivalents aux tokens de Figma sont disponibles. C'est l'usage recommandé en priorité.
22
-
23
- ### Titres
24
-
25
- <Typeset
26
- fontSizes={[48]}
27
- fontWeight={500}
28
- sampleText={'@extend %pix-title-l;'}
29
- fontFamily={'"Open Sans", Arial, sans-serif'}
30
- />
31
-
32
- <Typeset
33
- fontSizes={[36]}
34
- fontWeight={500}
35
- sampleText={'@extend %pix-title-m;'}
36
- fontFamily={'"Open Sans", Arial, sans-serif'}
37
- />
38
-
39
- <Typeset
40
- fontSizes={[28]}
41
- fontWeight={500}
42
- sampleText={'@extend %pix-title-s;'}
43
- fontFamily={'"Open Sans", Arial, sans-serif'}
44
- />
45
-
46
- <Typeset
47
- fontSizes={[20]}
48
- fontWeight={500}
49
- sampleText={'@extend %pix-title-xs;'}
50
- fontFamily={'"Open Sans", Arial, sans-serif'}
51
- />
52
-
53
- ### Corps de texte
54
-
55
- <Typeset
56
- fontSizes={[18]}
57
- fontWeight={400}
58
- sampleText={'@extend %pix-body-l;'}
59
- fontFamily={'Roboto, Arial, sans-serif'}
60
- />
61
-
62
- <Typeset
63
- fontSizes={[16]}
64
- fontWeight={400}
65
- sampleText={'@extend %pix-body-m;'}
66
- fontFamily={'Roboto, Arial, sans-serif'}
67
- />
68
-
69
- <Typeset
70
- fontSizes={[14]}
71
- fontWeight={400}
72
- sampleText={'@extend %pix-body-s;'}
73
- fontFamily={'Roboto, Arial, sans-serif'}
74
- />
75
-
76
- <Typeset
77
- fontSizes={[12]}
78
- fontWeight={400}
79
- sampleText={'@extend %pix-body-xs;'}
80
- fontFamily={'Roboto, Arial, sans-serif'}
81
- />
82
-
83
- ### Comment utiliser un placeholder SCSS ?
84
-
85
- ```css
86
- .card__title {
87
- @extend %pix-title-m;
88
-
89
- color: $pix-neutral-70;
90
- }
91
- ```
92
-
93
- Contrairement à l'utilisation de mixins, le CSS compilé ne sera que très peu surchargé. Il ressemblera à ceci :
94
-
95
- ```css
96
- .pix-title-m,
97
- .card__title {
98
- font-family: 'Open Sans', Arial, sans-serif;
99
- font-size: 2rem;
100
- line-height: 1.25;
101
- letter-spacing: -0.04em;
102
- font-weight: 500;
103
- }
104
-
105
- .card__title {
106
- color: #344563;
107
- }
108
- ```
109
-
110
- ## Utilisation via classe CSS
111
-
112
- Pour chaque placeholder SCSS, une **classe CSS** utilitaire de même nom existe :
113
-
114
- - `pix-title-l`
115
- - `pix-title-m`
116
- - `pix-title-s`
117
- - `pix-title-xs`
118
- - `pix-body-l`
119
- - `pix-body-m`
120
- - `pix-body-s`
121
- - `pix-body-xs`
122
-
123
- ## Design tokens
124
-
125
- Des variables SCSS existent pour certaines propriétés de typographie.
126
-
127
- ### Font-weight
128
-
129
- ℹ️ Ces variables ne devraient pas être utilisées pour modifier la graisse d'un titre car les classes utilitaires et les placeholders ci-dessus s'en occupent déjà.
130
-
131
- `$font-normal: 400;`
132
-
133
- `$font-medium: 500;`
134
-
135
- `$font-bold: 700;`
136
-
137
- ### Font-family
138
-
139
- ℹ️ Vous ne devriez pas avoir à les utiliser car elles vont de pair avec d'autres propriétés de typo (font-size, line-height, ...).<br/>
140
- Pour en savoir plus, voir les classes utilitaires et les placeholders ci-dessus.
141
-
142
- `$font-open-sans: 'Open Sans', Arial, sans-serif;`
143
-
144
- `$font-roboto: 'Roboto', Arial, sans-serif;`
145
-
146
- ## Détails techniques
147
-
148
- On utilise sur les applications Pix deux polices d'écriture :
149
-
150
- - Open Sans pour les titres
151
- - Roboto pour les corps
152
-
153
- Selon qu'on utilise un smartphone, une tablette ou un ordinateur de bureau on peut se placer plus ou moins proche de l'écran.
154
- Aussi, le choix de design a été fait de faire varier les typographies en fonction de largeur du viewport de l'utilisateur.
155
-
156
- Ce choix est abstrait par l'utilisation des classes CSS ou mixins citées plus haut.
157
-
158
- Code associé :
159
-
160
- - https://github.com/1024pix/pix-ui/blob/dev/addon/styles/pix-design-tokens/_fonts.scss
161
- - https://github.com/1024pix/pix-ui/blob/dev/addon/styles/pix-design-tokens/_typography.scss
162
-
163
- Lien Figma : https://www.figma.com/file/8RJ3aCSfdeQ8AZZVBBYKS8/Design-System-Pix?node-id=24%3A8