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 @@ - - + + + + Simple + + + + + Valeur présélectionnée + + + + + Désactivé + + + + + Avec hint + + + + + Erreur + + + + + Succès + + + @@ -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 @@ + + + Simple + + + + Coché + + + + + Avec hint + + + + + Désactivé + + + + + Readonly + + + + + Erreur + + + + + Succès + + + @@ -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 @@ - - + + + + Simple + + + + + Avec hint + + + + + Désactivé + + + + + Readonly + + + + + Erreur + + + + + Succès + + + + + Avec masque (téléphone) + + + + + Avec icône + + + @@ -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 @@ - - + + + + Simple + + + + + Avec hint + + + + + Désactivé + + + + + Readonly + + + + + Erreur + + + + + Succès + + + + + Avec compteur + + + @@ -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 @@ + + + + + Simple + + + + + Avec tags + + + + + Avec hint + + + + + Désactivé + + + + + Erreur + + + + + Succès + + + + + Tout sélectionner + + + + + Tout sélectionner (label custom) + + + + + + + +# 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. + + + +