implementation
Construis Liste d’options sans casser son comportement
# Implémenter Liste d’options dans ton agent ## Objectif Implémente Liste d’options pour ce comportement vérifié : Un widget composite d’options nommées qui accepte une ou plusieurs sélections et peut être autonome ou servir de surface contextuelle à une combobox. ## Prérequis - Inspecte d’abord le dépôt, le design system et les tests existants. - Préserve les changements sans rapport et borne les fichiers modifiés. - Confirme que Liste d’options répond au besoin avant de coder. ## Comportement requis - Les flèches parcourent les options selon le modèle déclaré du contrôle ; les états de focus et de sélection sont exposés de façon cohérente, y compris lorsque la sélection suit le focus. - Le contrôle expose si une ou plusieurs valeurs peuvent être sélectionnées et met à jour chaque état sélectionné de façon cohérente. ## États à couvrir - Période par défaut sélectionnée - 30 derniers jours sélectionnés ## Accessibilité - Rôle ARIA : listbox > option - Le contrôle principal ou la région nommée pour Liste d’options possède un nom accessible stable issu d’un texte visible ou d’un libellé programmatique explicite ; le placeholder et l’infobulle ne servent pas de nom. - Le select natif affichant plusieurs lignes forme un seul arrêt de tabulation. Dans cet exemple à sélection simple, la sélection suit le focus clavier : états actif et sélectionné évoluent ensemble ; une listbox personnalisée doit déclarer son propre modèle. - Dans cet exemple autonome, quitter avec Tab conserve la valeur sélectionnée ; lorsqu’une listbox est contextuelle, sa fermeture est coordonnée par le contrôle propriétaire. - Le nom de la liste, ses quatre options, la sélection, l’état désactivé et le mode simple de cet exemple sont exposés par la sémantique native. - Tab entre une fois dans le contrôle composite - Dans cet exemple natif à sélection simple, les flèches mettent la sélection à jour avec le focus - Cet exemple n’a pas de commande de validation séparée - Les touches Début et Fin prises en charge par la plateforme atteignent les limites ## Quand ne pas utiliser - L’espace manque et un Select natif suffit - Les éléments sont des commandes plutôt que des valeurs ## Critères d’acceptation - Les options appartiennent à une liste nommée, autonome ou contextuelle - La relation entre focus et sélection est déclarée, notamment si la sélection suit le focus - Les flèches, Début et Fin sont cohérents - Le mode de sélection est explicite ## Garde-fous - Montre d’abord les changements envisagés avant toute action externe. - Ne publie, n’envoie, ne supprime, ne paie et ne modifie aucun état distant sans autorisation explicite. - Préserve les changements sans rapport et arrête-toi si le périmètre devient ambigu. ## Format de sortie - Résultat obtenu ou verdict. - Fichiers ou actions concernés. - Vérifications exécutées et preuves observables. - Blocages ou limites restantes.
- Web platform
- Prérequis · Accès au dépôt, au design system et aux tests
Pourquoi ça marche
- Le besoin est relié au comportement canonique avant toute décision technique.
- Les états, l’accessibilité et les non-objectifs empêchent une implémentation seulement visuelle.
- Les critères d’acceptation et le format de sortie rendent la vérification observable.
À essayer ensuite
Vérifie Liste d’options sur un parcours réel
# Vérifier Liste d’options après l’implémentation ## Objectif Audite l’implémentation de Liste d’options au regard de son comportement, de ses états et de ses exigences d’accessibilité sans la modifier automatiquement. ## Contrôles - Rejoue le plus petit parcours représentatif. - Contrôle le clavier, le focus, le nom accessible et les annonces. - Relie chaque écart à un critère d’acceptation précis. ## Garde-fous - Montre d’abord les changements envisagés avant toute action externe. - Ne publie, n’envoie, ne supprime, ne paie et ne modifie aucun état distant sans autorisation explicite. - Préserve les changements sans rapport et arrête-toi si le périmètre devient ambigu. ## Format de sortie - Résultat obtenu ou verdict. - Fichiers ou actions concernés. - Vérifications exécutées et preuves observables. - Blocages ou limites restantes.
sha256:3a9ad69a3a653d46822355a9d2593dd624c0efaac410197bae73b269ee9dba26