Skip to content

Commit ed17c27

Browse files
committed
refactor(DsfrBadge): ♻️ migre DsfrBadge.stories.ts vers le format Storybook 9
- Mettre à jour les imports pour utiliser les types Meta/StoryObj depuis @storybook/vue3-vite - Transformer les stories pour utiliser render() au lieu de data() - Ajouter la prop ellipsis manquante dans argTypes - Assurer la conformité TypeScript avec satisfies Meta<typeof DsfrBadge>
1 parent 0e2b66e commit ed17c27

File tree

2 files changed

+61
-51
lines changed

2 files changed

+61
-51
lines changed

src/components/DsfrAlert/DsfrAlert.stories.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,9 +37,6 @@ const meta = {
3737
control: 'boolean',
3838
description: 'Permet d\'obtenir une version minimaliste de l\'alerte',
3939
},
40-
close: {
41-
description: 'Event de fermeture de l\'alerte',
42-
},
4340
closed: {
4441
control: 'boolean',
4542
description: 'Permet d\'alterner entre l\'état ouvert ou fermé de l\'alerte',
Lines changed: 61 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
1+
import type { Meta, StoryObj } from '@storybook/vue3-vite'
2+
13
import DsfrBadge from './DsfrBadge.vue'
24

35
/**
46
* [Voir quand l’utiliser sur la documentation du DSFR](https://www.systeme-de-design.gouv.fr/version-courante/fr/composants/badge)
57
*/
6-
export default {
8+
const meta = {
79
component: DsfrBadge,
810
title: 'Composants/DsfrBadge',
911
tags: ['chip'],
@@ -26,56 +28,67 @@ export default {
2628
control: 'boolean',
2729
description: 'Permet d’afficher une petite icône (si `true`)',
2830
},
31+
ellipsis: {
32+
control: 'boolean',
33+
description: 'Permet de couper le texte avec des points de suspension si le texte est trop long',
34+
},
2935
},
30-
}
36+
} satisfies Meta<typeof DsfrBadge>
3137

32-
export const Badge = (args) => ({
33-
components: {
34-
DsfrBadge,
35-
},
36-
data () {
37-
return args
38+
export default meta
39+
40+
type Story = StoryObj<typeof meta>
41+
42+
export const Badge: Story = {
43+
args: {
44+
small: false,
45+
type: 'success',
46+
label: 'Succès au chocolat vert',
47+
noIcon: false,
3848
},
39-
template: `
40-
<DsfrBadge :label="label" :small="small" :type="type" :no-icon="noIcon" />
41-
`,
42-
})
43-
Badge.args = {
44-
small: false,
45-
type: 'success',
46-
label: 'Succès au chocolat vert',
47-
noIcon: false,
49+
render: (args) => ({
50+
components: {
51+
DsfrBadge,
52+
},
53+
setup () {
54+
return { args }
55+
},
56+
template: `
57+
<DsfrBadge :label="args.label" :small="args.small" :type="args.type" :no-icon="args.noIcon" />
58+
`,
59+
}),
4860
}
4961

50-
export const TousLesBadges = (args) => ({
51-
components: {
52-
DsfrBadge,
62+
export const TousLesBadges: Story = {
63+
args: {
64+
label: 'Exemple', // Valeur par défaut, non utilisée car hardcodée dans le template
5365
},
54-
data () {
55-
return args
56-
},
57-
template: `
58-
<p>
59-
<DsfrBadge label="Simple" />
60-
</p>
61-
<p>
62-
<DsfrBadge style="width: 300px" ellipsis label="Label très long qui, normalement, devrait être coupé par une ellipse" />
63-
</p>
64-
<p>
65-
<DsfrBadge label="Succès" type="success" />
66-
</p>
67-
<p>
68-
<DsfrBadge label="Erreur" type="error" />
69-
</p>
70-
<p>
71-
<DsfrBadge label="Attention !" type="warning" />
72-
</p>
73-
<p>
74-
<DsfrBadge label="Information" type="info" />
75-
</p>
76-
<p>
77-
<DsfrBadge label="Nouveauté" type="new" />
78-
</p>
79-
`,
80-
})
81-
TousLesBadges.args = {}
66+
render: () => ({
67+
components: {
68+
DsfrBadge,
69+
},
70+
template: `
71+
<p>
72+
<DsfrBadge label="Simple" />
73+
</p>
74+
<p>
75+
<DsfrBadge style="width: 300px" ellipsis label="Label très long qui, normalement, devrait être coupé par une ellipse" />
76+
</p>
77+
<p>
78+
<DsfrBadge label="Succès" type="success" />
79+
</p>
80+
<p>
81+
<DsfrBadge label="Erreur" type="error" />
82+
</p>
83+
<p>
84+
<DsfrBadge label="Attention !" type="warning" />
85+
</p>
86+
<p>
87+
<DsfrBadge label="Information" type="info" />
88+
</p>
89+
<p>
90+
<DsfrBadge label="Nouveauté" type="new" />
91+
</p>
92+
`,
93+
}),
94+
}

0 commit comments

Comments
 (0)