feat(aria/spinbutton): Add spinbutton primitive for value selection within discrete ranges
Les mainteneurs répondent en général sous 1 jour
@ok7sai y travaille déjà.
Depuis le 1/4/2026.
Évaluation
Cette issue n'a pas encore été évaluée.
Description
Feature Description
Angular Aria currently lacks a spinbutton primitive.
The APG Spinbutton Pattern defines it as an input widget that restricts its value to a set or range of discrete values.
Keyboard Interaction (per APG)
| Key | Function |
|---|---|
| Up Arrow | Increases the value |
| Down Arrow | Decreases the value |
| Home | Sets value to minimum (if defined) |
| End | Sets value to maximum (if defined) |
| Page Up | Increases value by larger step (optional) |
| Page Down | Decreases value by larger step (optional) |
Required ARIA Attributes
role="spinbutton"on the focusable elementaria-valuenow- Current valuearia-valuemin/aria-valuemax- Min/max allowed valuesaria-valuetext- User-friendly string (e.g., "Monday" instead of "1")aria-labelledbyoraria-label- Accessible namearia-invalid="true"- When value is outside allowed range
References
APG Specification
- Spinbutton Pattern
- Quantity Spin Button
Example - Toolbar Example (includes font size
spinbutton)
React Aria Prior Art
React Aria uses spinbuttons internally for date/time segment navigation:
Implementation
PR: https://github.com/angular/components/pull/32663
Use Case
- Quantity Selection - Hotel booking, shopping carts, product pages
- Time Input - Time pickers with hours, minutes, seconds segments
- Date Picker Components - Date range selectors using spinbuttons for date segments
- Toolbar Controls - Font size and property controls in text editors
- Numeric Input with Constraints - Any value selection within a min/max range
- Langage dominant
- TypeScript
- Étoiles
- 25k
- Forks
- 6.8k
- Merge moyen
- 1 j 7 h
- PR mergées (30 j)
- 69
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Aucun modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de angular/components
-
bug(aria/combobox): keys pressed back to back are lost; only the last one reaches the popupPeut-être pris @drakeo338 l’a pris il y a 1 jour. Ouvertearea: aria/combobox gemini-triaged
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
angular/components#33973 ·
Les mainteneurs répondent en général sous 1 jour
-
bug(material/sort): hover hint arrow on an unsorted header shows the active sort direction, not the resulting direction after click.Peut-être pris @lekhmanrus l’a pris il y a 13 jours. Ouvertearea: material/sort P3
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
angular/components#33933 ·
Les mainteneurs répondent en général sous 1 jour
-
bug(mat-date-picker): month shown twice in date pickerPeut-être pris @PreethiPantangi l’a pris il y a 30 jours. Ouvertearea: material/datepicker P4
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
angular/components#33763 · 2 commentaires · 3 réactions ·
Les mainteneurs répondent en général sous 1 jour
-
Bug in table.scss footer cell height: unset instead of footer row height unsetPeut-être pris @minwookshin l’a pris il y a 17 jours. Ouvertearea: material/table P4
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
angular/components#33709 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
docs-bug(Table): Add example with `rowspan`Peut-être pris @BHUVANSH855 l’a pris il y a 98 jours. Ouvertearea: material/table docs P4
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
angular/components#33455 ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de angular/components
Issues similaires
-
[BUG] rag: sentence content can cross the reported sentence boundariesPeut-être pris @LJK-ikun l’a pris aujourd’hui. Ouvertebug
Difficulté 2/5 1-3 heures Accessibilité débutants 75/100
Les mainteneurs répondent en général sous 1 jour
-
bug needs-triage
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
README: the Resource URI Schemas example's file://documents/* pattern only matches that literal URIOuverte
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
platformatic/mcp#361 ·
Les mainteneurs répondent en général sous 1 jour
-
frontend
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
Les mainteneurs répondent en général sous 1 jour
-
Push: sem service worker ou sem VAPID, o interruptor de Notificações fica ligado sem avisar nadaOuverte
Difficulté 2/5 1-3 heures Accessibilité débutants 76/100
melgarafael/DeskcommCRM#3164 ·
Les mainteneurs répondent en général sous 1 jour