From 9843f4d032770780f34b24907f4dd2a27a45a115 Mon Sep 17 00:00:00 2001 From: tristan Date: Thu, 19 Mar 2026 17:45:03 +0100 Subject: [PATCH] feat : ajout de state dans les histoires des composants --- app/story/InputSelect.story.vue | 80 +++++++++-- app/story/inputAmount.story.vue | 67 ++++++++- app/story/inputCheckbox.story.vue | 64 +++++++++ app/story/inputText.story.vue | 87 +++++++++++- app/story/inputTextArea.story.vue | 78 ++++++++++- app/story/selectCheckbox.story.vue | 213 +++++++++++++++++++++++++++++ 6 files changed, 568 insertions(+), 21 deletions(-) create mode 100644 app/story/selectCheckbox.story.vue diff --git a/app/story/InputSelect.story.vue b/app/story/InputSelect.story.vue index 7939beb..44ef6f9 100644 --- a/app/story/InputSelect.story.vue +++ b/app/story/InputSelect.story.vue @@ -1,11 +1,67 @@ @@ -121,9 +177,15 @@ largeur. diff --git a/app/story/inputCheckbox.story.vue b/app/story/inputCheckbox.story.vue index 10d3667..5b8724d 100644 --- a/app/story/inputCheckbox.story.vue +++ b/app/story/inputCheckbox.story.vue @@ -1,9 +1,67 @@ @@ -111,4 +169,10 @@ import {ref} from 'vue' import MalioCheckbox from '../components/malio/Checkbox.vue' const simpleValue = ref(false) +const checkedValue = ref(true) +const hintValue = ref(false) +const disabledValue = ref(true) +const readonlyValue = ref(true) +const errorValue = ref(false) +const successValue = ref(true) diff --git a/app/story/inputText.story.vue b/app/story/inputText.story.vue index e6db366..1024ce1 100644 --- a/app/story/inputText.story.vue +++ b/app/story/inputText.story.vue @@ -1,8 +1,77 @@ @@ -196,5 +265,15 @@ largeur. diff --git a/app/story/inputTextArea.story.vue b/app/story/inputTextArea.story.vue index ef903ed..052db5b 100644 --- a/app/story/inputTextArea.story.vue +++ b/app/story/inputTextArea.story.vue @@ -1,8 +1,69 @@ @@ -188,5 +249,14 @@ redimensionnement. diff --git a/app/story/selectCheckbox.story.vue b/app/story/selectCheckbox.story.vue new file mode 100644 index 0000000..742580c --- /dev/null +++ b/app/story/selectCheckbox.story.vue @@ -0,0 +1,213 @@ + + + +# MalioSelectCheckbox + +Composant select avec checkboxes multiples, label flottant, tags optionnels, +états visuels (erreur / succès) et option "tout sélectionner". + +------------------------------------------------------------------------ + +## Props détaillées + +### modelValue + +- Type: Array +- Description: Tableau des valeurs sélectionnées. + +### options + +- Type: Array<{ label: string; value: string | number }> +- Description: Liste des options disponibles. + +### emptyOptionLabel + +- Type: string +- Description: Texte affiché quand aucune option n'est sélectionnée (mode tag). + +### label + +- Type: string +- Description: Texte affiché comme label flottant. + +------------------------------------------------------------------------ + +## Apparence & Style + +### displayTag + +- Type: boolean +- Défaut: false +- Description: Affiche les sélections sous forme de tags au lieu du compteur. + +### displaySelectAll + +- Type: boolean +- Défaut: false +- Description: Affiche une checkbox "Tout sélectionner / Tout désélectionner" en haut de la liste. + +### selectAllLabel + +- Type: string +- Défaut: "Tout sélectionner" +- Description: Label de la checkbox de sélection globale. + +### minWidth / maxWidth + +- Type: string +- Description: Classes Tailwind pour contraindre la largeur. + +------------------------------------------------------------------------ + +## États & Messages + +### hint + +- Type: string +- Description: Message d'aide affiché sous le champ. + +### error + +- Type: string +- Description: Message d'erreur. Prioritaire sur success et hint. + +### success + +- Type: string +- Description: Message de succès. Actif si error est absent. + +### disabled + +- Type: boolean +- Description: Désactive complètement le composant. + +------------------------------------------------------------------------ + +## Accessibilité + +- `aria-expanded` et `aria-controls` sur le bouton. +- `role="listbox"` sur la liste, `role="option"` et `aria-selected` sur chaque option. +- `aria-invalid` activé si error existe. + +------------------------------------------------------------------------ + +## Events + +### update:modelValue + +- Émis à chaque changement de sélection. +- Retourne un tableau de valeurs. + + + +