@1024pix/pix-ui 24.1.0 → 24.2.1

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 (76) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/addon/components/pix-filterable-and-searchable-select.hbs +1 -0
  3. package/app/stories/form.stories.mdx +2 -4
  4. package/app/stories/pix-background-header.stories.mdx +3 -8
  5. package/app/stories/pix-banner.stories.js +9 -11
  6. package/app/stories/pix-banner.stories.mdx +9 -32
  7. package/app/stories/pix-block.stories.js +3 -2
  8. package/app/stories/pix-block.stories.mdx +1 -1
  9. package/app/stories/pix-button-link.stories.js +0 -2
  10. package/app/stories/pix-button-link.stories.mdx +7 -15
  11. package/app/stories/pix-button-upload.stories.js +2 -3
  12. package/app/stories/pix-button-upload.stories.mdx +4 -12
  13. package/app/stories/pix-button.stories.mdx +7 -9
  14. package/app/stories/pix-checkbox.stories.js +8 -10
  15. package/app/stories/pix-checkbox.stories.mdx +12 -13
  16. package/app/stories/pix-collapsible.stories.js +7 -3
  17. package/app/stories/pix-collapsible.stories.mdx +6 -12
  18. package/app/stories/pix-dropdown.stories.mdx +10 -14
  19. package/app/stories/pix-filter-banner.stories.js +1 -4
  20. package/app/stories/pix-filter-banner.stories.mdx +5 -9
  21. package/app/stories/pix-filterable-and-searchable-select.stories.js +1 -2
  22. package/app/stories/pix-filterable-and-searchable-select.stories.mdx +25 -25
  23. package/app/stories/pix-icon-button.stories.js +7 -5
  24. package/app/stories/pix-icon-button.stories.mdx +2 -6
  25. package/app/stories/pix-indicator-card.stories.js +2 -2
  26. package/app/stories/pix-indicator-card.stories.mdx +2 -1
  27. package/app/stories/pix-input-code.stories.mdx +7 -16
  28. package/app/stories/pix-input-password.stories.js +1 -8
  29. package/app/stories/pix-input-password.stories.mdx +12 -16
  30. package/app/stories/pix-input.stories.js +4 -10
  31. package/app/stories/pix-input.stories.mdx +14 -26
  32. package/app/stories/pix-message.stories.js +4 -3
  33. package/app/stories/pix-message.stories.mdx +4 -9
  34. package/app/stories/pix-modal.stories.js +0 -2
  35. package/app/stories/pix-modal.stories.mdx +2 -6
  36. package/app/stories/pix-multi-select.stories.mdx +24 -21
  37. package/app/stories/pix-pagination.stories.js +2 -1
  38. package/app/stories/pix-pagination.stories.mdx +19 -18
  39. package/app/stories/pix-progress-gauge.stories.js +2 -1
  40. package/app/stories/pix-progress-gauge.stories.mdx +6 -9
  41. package/app/stories/pix-radio-button.stories.js +0 -3
  42. package/app/stories/pix-radio-button.stories.mdx +7 -16
  43. package/app/stories/pix-return-to.stories.js +3 -3
  44. package/app/stories/pix-return-to.stories.mdx +4 -10
  45. package/app/stories/pix-search-input.stories.mdx +14 -22
  46. package/app/stories/pix-select.stories.mdx +26 -31
  47. package/app/stories/pix-selectable-tag.stories.mdx +10 -20
  48. package/app/stories/pix-sidebar.stories.js +0 -5
  49. package/app/stories/pix-sidebar.stories.mdx +2 -6
  50. package/app/stories/pix-stars.stories.js +12 -6
  51. package/app/stories/pix-stars.stories.mdx +3 -12
  52. package/app/stories/pix-tag.stories.js +21 -25
  53. package/app/stories/pix-tag.stories.mdx +5 -15
  54. package/app/stories/pix-textarea.stories.js +7 -12
  55. package/app/stories/pix-textarea.stories.mdx +8 -11
  56. package/app/stories/pix-toggle.stories.mdx +7 -11
  57. package/app/stories/pix-tooltip.stories.js +11 -14
  58. package/app/stories/pix-tooltip.stories.mdx +2 -7
  59. package/docs/architecture.stories.mdx +3 -3
  60. package/docs/breaking-changes.stories.mdx +16 -14
  61. package/docs/changelog.stories.mdx +1 -1
  62. package/docs/create-component.stories.mdx +31 -29
  63. package/docs/design-system.stories.mdx +2 -2
  64. package/docs/design-tokens.stories.mdx +6 -2
  65. package/docs/good-practices-a11y.stories.mdx +4 -9
  66. package/docs/good-practices-design.stories.mdx +11 -20
  67. package/docs/good-practices-responsive.stories.mdx +3 -3
  68. package/docs/good-practices-style-css.stories.mdx +10 -10
  69. package/docs/good-practices-tests.stories.mdx +2 -2
  70. package/docs/make-a-release.stories.mdx +16 -13
  71. package/docs/pix-design-tokens-dev.stories.mdx +1 -1
  72. package/docs/storybook.stories.mdx +4 -3
  73. package/docs/test-component-without-release.stories.mdx +1 -1
  74. package/docs/use-component.stories.mdx +7 -6
  75. package/docs/use-install.stories.mdx +6 -6
  76. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Développement/Bonnes pratiques/Design' />
3
+ <Meta title="Développement/Bonnes pratiques/Design" />
4
4
 
5
5
  # Bonnes pratiques design
6
6
 
@@ -8,23 +8,16 @@ import { Meta } from '@storybook/addon-docs/blocks';
8
8
 
9
9
  - les **noms de branches** commencent par `pix-ui`.
10
10
 
11
-
12
11
  - Les **noms des fichiers** suivent l'exemple de la pix-tooltip.
13
- *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).*
14
-
15
-
16
- - Les **noms des composants** commencent par `Pix` et sont écrit en *PascalCase*.
17
- *Par exemple, un composant bouton devient : `PixButton`.*
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)._
18
13
 
14
+ - Les **noms des composants** commencent par `Pix` et sont écrit en _PascalCase_.
15
+ _Par exemple, un composant bouton devient : `PixButton`._
19
16
 
20
- - Les **noms des propriétés des composants** sont écrit en *camelCase*.
17
+ - Les **noms des propriétés des composants** sont écrit en _camelCase_.
21
18
 
22
19
  ```hbs
23
- <PixSelect
24
- @options={{options}}
25
- @onChange={{onChange}}
26
- @selectedOption="1"
27
- />
20
+ <PixSelect @options={{options}} @onChange={{onChange}} @selectedOption='1' />
28
21
  ```
29
22
 
30
23
  - Les **noms des classes CSS** suivent la convention [BEM](https://github.com/1024pix/pix/blob/dev/docs/CSS.md).
@@ -40,7 +33,7 @@ Il faut garder une **responsabilité unique** par composant.
40
33
  - Un composant doit interagir uniquement dans son scope afin de ne pas devenir trop complexe et provoquer des effets de bord.
41
34
  - Un composant trop complexe induit plusieurs paramètres ce qui rend donc son utilisation délicate.
42
35
 
43
- 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.
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.
44
37
 
45
38
  Il conviendra alors d'avoir un composant pour un bouton et un autre pour un lien.
46
39
 
@@ -55,16 +48,14 @@ Lorsqu'une autre personne va mettre à jour Pix UI dans une application, il est
55
48
  ## Rétrocompatibilité / Deprecated
56
49
 
57
50
  Il est aussi possible de signaler ces changements comme dépréciés :
51
+
58
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.
59
53
 
60
54
  Exemple d'un composant déprécié :
55
+
61
56
  ```hbs
62
57
  <PixSelect>
63
- <NewPixSelect
64
- @options={{options}}
65
- @onChange={{onChange}}
66
- @selectedOption="1"
67
- />
58
+ <NewPixSelect @options={{options}} @onChange={{onChange}} @selectedOption='1' />
68
59
  </PixSelect>
69
60
  ```
70
61
 
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Développement/Bonnes pratiques/Responsive' />
3
+ <Meta title="Développement/Bonnes pratiques/Responsive" />
4
4
 
5
5
  # Bonnes pratiques responsive
6
6
 
@@ -14,7 +14,6 @@ Ils sont décris dans le fichier `addon/styles/_breakpoints.scss` et utilisables
14
14
 
15
15
  Par exemple, ici le style s'applique si on a moins la largeure d'une tablette.
16
16
 
17
-
18
17
  ```scss
19
18
  @include device-is('tablet') {
20
19
  padding: 32px 58px;
@@ -23,6 +22,7 @@ Par exemple, ici le style s'applique si on a moins la largeure d'une tablette.
23
22
  ```
24
23
 
25
24
  Le différents devices disponibles sont :
25
+
26
26
  - `mobile`
27
27
  - `tablet`
28
28
  - `desktop`
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Développement/Bonnes pratiques/Style CSS' />
3
+ <Meta title="Développement/Bonnes pratiques/Style CSS" />
4
4
 
5
5
  # Style CSS / SCSS
6
6
 
@@ -9,25 +9,25 @@ import { Meta } from '@storybook/addon-docs/blocks';
9
9
  - Les variables se trouvent dans leur fichier scss respectif: `_breakpoints.scss`, `_colors.scss`, `_fonts.scss`.
10
10
  - Chaque composant a son fichier scss qui sont importés dans `addon/styles/addon.scss`.
11
11
 
12
- ~~~javascript
12
+ ```javascript
13
13
  @import 'pix-tooltip';
14
- ~~~
14
+ ```
15
15
 
16
16
  ## Rendre surchargeable le SCSS
17
17
 
18
18
  Passer `...attributes` au composant.
19
19
 
20
- ~~~html
21
- <div class="pix-background-header" ...attributes>
22
- ~~~
20
+ ```html
21
+ <div class="pix-background-header" ...attributes></div>
22
+ ```
23
23
 
24
24
  ## Convention BEM
25
25
 
26
26
  Nos classes suivent la convention [BEM](https://github.com/1024pix/pix/blob/dev/docs/CSS.md).
27
27
 
28
- ~~~javascript
28
+ ```javascript
29
29
  class='pix-tooltip__content'
30
- ~~~
30
+ ```
31
31
 
32
32
  ## rem, spacing...
33
33
 
@@ -37,4 +37,4 @@ Il est recommandé d'utiliser le `rem` plutot que `px`.
37
37
  Concernant les niveaux de textes, se référer a ZeroHeight [ici](https://zeroheight.com/8dd127da7/p/20e4df-typographie/b/974231).
38
38
 
39
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.*
40
+ _Par exemple, vérifier dans les fichiers `_fonts.scss` et `_colors.scss`. Si elles n'existent pas, les rajouter au bon endroit._
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Développement/Bonnes pratiques/Tests' />
3
+ <Meta title="Développement/Bonnes pratiques/Tests" />
4
4
 
5
5
  # Bonnes pratiques de test
6
6
 
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Développement/Faire une release' />
3
+ <Meta title="Développement/Faire une release" />
4
4
 
5
5
  # Faire une release
6
6
 
@@ -19,11 +19,12 @@ Par ailleurs, sur Pix UI une release signifie aussi la mise à jour automatique
19
19
  ## Effectuer la release, méthode via slack (conseillée)
20
20
 
21
21
  Aller dans le canal slack dédié aux releases : [#tech-releases](https://1024pix.slack.com/archives/CVAMDQYHY), puis taper la commande suivante :
22
+
22
23
  - `/publish-pix-ui <version_souhaitée>`
23
- `<version_souhaitée>` peut prendre 3 valeurs :
24
- - `patch` : correctif de bug
25
- - `minor` : modifications n'apportant pas de changement dans l'utilisation de Pix UI
26
- - `major` : modifications apportant des breaking changes
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
27
28
 
28
29
  Vous devriez voir apparaître dans le canal un premier message (visible uniquement par vous) de Pix-bot vous indiquant
29
30
  que la demande de déploiement pour Pix UI a bien été prise en compte.
@@ -34,33 +35,35 @@ indiquant le numéro de sa nouvelle version.
34
35
  Et voilà 🎉
35
36
 
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)
37
- de la GitHub action `Deploy Pix UI Storybook`.
38
+ de la GitHub action `Deploy Pix UI Storybook`.
38
39
 
39
40
  ## Constater le bon fonctionnement de la release
40
41
 
41
42
  Pour vérifier si la release s'est bien déroulée :
43
+
42
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` ?
43
45
  - vérifier si notre [Storybook en ligne](https://1024pix.github.io/pix-ui/) montre bien les nouveaux composants.
44
46
 
45
-
46
47
  ## Effectuer la release, méthode à la mano (déconseillée)
48
+
47
49
  Après s'être mis à jour sur la branche dev, lancer le script de publication :
50
+
48
51
  - `git checkout dev`
49
52
  - `git pull`
50
53
  - `./scripts/publish.sh <version_souhaitée>`
51
54
 
52
55
  `<version_souhaitée>` peut prendre 3 valeurs :
53
- - `patch` : correctif de bug
54
- - `minor` : modifications n'apportant pas de changement dans l'utilisation de Pix UI
55
- - `major` : modifications apportant des breaking changes
56
+
57
+ - `patch` : correctif de bug
58
+ - `minor` : modifications n'apportant pas de changement dans l'utilisation de Pix UI
59
+ - `major` : modifications apportant des breaking changes
56
60
 
57
61
  Pour plus d'informations au sujet de la version à choisir se référencer à [SemVer](https://semver.org/lang/fr/).
58
62
 
59
63
  Le script de publication effectuera automatiquement les actions suivantes :
64
+
60
65
  - mise à jour de la version du projet dans le `package.json`
61
66
  - création d'un tag git correspondant à la nouvelle version
62
67
  - mise à jour de la liste des changements dans le [CHANGELOG.md](../CHANGELOG.md)
63
68
  - mise à jour de la branche `master` par rapport à `dev`
64
69
  - re-[déploiement de storybook sur les GitHub Pages](/?path=/docs/développement-storybook--page)
65
-
66
-
@@ -1,4 +1,4 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
3
  <Meta title="Développement/Pix Design Tokens" />
4
4
 
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Développement/Storybook' />
3
+ <Meta title="Développement/Storybook" />
4
4
 
5
5
  # Déploiement de Storybook
6
6
 
@@ -33,10 +33,11 @@ npm run deploy-storybook
33
33
  ```
34
34
 
35
35
  Cette commande fait appel à l'outil [storybook-deployer](https://github.com/storybookjs/storybook-deployer). Ce dernier effectue les actions suivantes :
36
+
36
37
  - compiler Storybook comme une application statique
37
38
  - commit et push le résultat précédent sur la branche `gh-pages`
38
39
 
39
- *(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).)*
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).)_
40
41
 
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.
42
43
 
@@ -1,4 +1,4 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
3
  <Meta title="Développement/Tester un composant en developpement dans une app" />
4
4
 
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Utiliser Pix UI/Utiliser un composant' />
3
+ <Meta title="Utiliser Pix UI/Utiliser un composant" />
4
4
 
5
5
  # Utiliser un composant
6
6
 
@@ -63,8 +63,8 @@ Si cela ne fonctionne pas, vérifier dans Pix UI que le composant hérite des at
63
63
  et que cet argument soit placé en dernier pour qu'il puisse surchager les attributs par défaut du composant.
64
64
 
65
65
  ```hbs
66
- <p class="pix-message {{concat "pix-message--" this.type}}" ...attributes>
67
- ...
66
+ <p class='pix-message {{concat "pix-message--" this.type}}' ...attributes>
67
+ ...
68
68
  </p>
69
69
  ```
70
70
 
@@ -74,11 +74,12 @@ L'accessibilité du composant lui-même est déjà testé par Storybook, voir
74
74
  [Bonnes Pratiques / Accessibilité](/?path=/docs/développement-bonnes-pratiques-accessibilité--page).
75
75
 
76
76
  Mais il faut aussi vérifier son accessibilité une fois composant intégré dans l'application front.
77
- *Par exemple, le libellé étant spécifique à chaque bouton, il doit être défini à l'instanciation.*
77
+ _Par exemple, le libellé étant spécifique à chaque bouton, il doit être défini à l'instanciation._
78
78
 
79
79
  Pour tester l'accessibilité, on peut utiliser [l'extension Wave](https://wave.webaim.org/extension/) (Chrome et Firefox).
80
80
 
81
81
  Voici quelques liens utiles :
82
+
82
83
  - https://github.com/1024pix/pix/blob/dev/docs/Accessibilite.md
83
84
  - https://1024pix.atlassian.net/wiki/spaces/DEV/pages/2856288297/2021-05-27+-+Compte-rendu+Atelier+accessibilit+Tanaguru+les+devs
84
85
 
@@ -86,4 +87,4 @@ Voici quelques liens utiles :
86
87
 
87
88
  Si une icône n'apparaît pas lorsqu'un composant est instancié, il faut vérifier que l'icône est bien déclarée dans le
88
89
  fichier `config/icons.js` de l'application concernée.
89
- *Par exemple, `PixBanner` utilise l'icône `info-circle`, il faut penser à l'ajouter au fichier `icons.js`.*
90
+ _Par exemple, `PixBanner` utilise l'icône `info-circle`, il faut penser à l'ajouter au fichier `icons.js`._
@@ -1,6 +1,6 @@
1
- import { Meta } from '@storybook/addon-docs/blocks';
1
+ import { Meta } from '@storybook/addon-docs';
2
2
 
3
- <Meta title='Utiliser Pix UI/Installation' />
3
+ <Meta title="Utiliser Pix UI/Installation" />
4
4
 
5
5
  # Installer l'addon Pix UI
6
6
 
@@ -8,7 +8,6 @@ Pour installer Pix UI dans une application Ember il suffit d'écrire la commande
8
8
 
9
9
  `npm install @1024pix/pix-ui@<tag_souhaité>` où `<tag_souhaité>` est la [dernière version](https://github.com/1024pix/pix-ui/tags).
10
10
 
11
-
12
11
  # Mise à jour de l'addon Pix UI <a id="Addon"></a>
13
12
 
14
13
  `npm install @1024pix/pix-ui@<tag_souhaité>`
@@ -19,10 +18,11 @@ ou bien, aller changer dans le `package.json` la version de Pix UI et faire un `
19
18
 
20
19
  `<tag_souhaité>` doit correspondre au numéro de version à installer. Ce numéro de version correspond à une release.
21
20
 
22
- *Par exemple, on peut remplacer `<tag_souhaité>` par `v0.1.1`.*
21
+ _Par exemple, on peut remplacer `<tag_souhaité>` par `v0.1.1`._
23
22
  Pour voir la liste des tags de Pix UI, [c'est par ici.](https://github.com/1024pix/pix-ui/tags)
24
23
 
25
24
  Selon la convention [Semver](https://semver.org/lang/fr/), un tag est sous le format `vx.y.z`.
25
+
26
26
  - `x` est une version majeure
27
27
  - `y` est une version mineure
28
28
  - `z` est un patch
@@ -33,5 +33,5 @@ Lorsqu'il y a un changement de version majeure, il faut faire attention aux chan
33
33
 
34
34
  Pour se mettre au courant des changements majeurs, il faut aller voir dans le [CHANGELOG](https://github.com/1024pix/pix-ui/blob/dev/CHANGELOG.md), pour pouvoir voir chaque PR concernée par la montée de version.
35
35
 
36
- *Par exemple, si l'on souhaite passer de la version v2.2.0 de Pix UI à v3.0.0, on voit dans le CHANGELOG que la PR [#79](https://github.com/1024pix/pix-ui/pull/79) a changé le nom d'un composant.
37
- Cela implique donc de changer le nom du composant partout dans l'application front où l'on souhaite monter de version.*
36
+ _Par exemple, si l'on souhaite passer de la version v2.2.0 de Pix UI à v3.0.0, on voit dans le CHANGELOG que la PR [#79](https://github.com/1024pix/pix-ui/pull/79) a changé le nom d'un composant.
37
+ Cela implique donc de changer le nom du composant partout dans l'application front où l'on souhaite monter de version._
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@1024pix/pix-ui",
3
- "version": "24.1.0",
3
+ "version": "24.2.1",
4
4
  "description": "Pix-UI is the implementation of Pix design principles and guidelines for its products.",
5
5
  "keywords": [
6
6
  "ember-addon"