Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Use one item counter for Combobox, Menu, and Command

Ouverte
#962 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Les mainteneurs répondent en général sous 5 jours

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
48/100
Type d'issue
Refactorisation
Clarté
Plutôt claire
Activité
Active
Stack technique
react, typescript

Piste de recherche

Start by reading the shared helper in packages/react/shared/item-count/ and the Combobox count added in #954; compare how the two paths handle empty states and screen-reader result announcements. After #953, #954, and #960 merge, move Combobox to the shared helper and remove its separate count. Check whether Select's search mode can use the helper without an items prop, and verify the empty state and status message across the four components.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Combobox, Menu, ContextMenu, and Command each need to know how many items match the search. They use the count to show the empty state and to announce "N results" for screen readers.

Base UI's own count (useFilteredItems) only works when the root gets an items prop. Our components also filter their own children, so they need their own count.

Today there are two ways to do this:

  • #953 and #960 add packages/react/shared/item-count/. Each item adds itself to the count while it is shown. Menu, ContextMenu, and Command use it.
  • #954 adds a separate count on the Combobox root.

Both do the same job.

Proposal

After #953, #954, and #960 merge, move Combobox to shared/item-count and delete its own count. Keep one code path for the empty state and the status message in all four components.

Select's search mode (#958) only shows Select.Empty when items is given. It could use the same helper to work without items too.

Langage dominant
TypeScript
Étoiles
69
Forks
13
Merge moyen
4 j 4 h
PR mergées (30 j)
27

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de raystack/apsara

Toutes les issues de raystack/apsara

Issues similaires

Plus d'issues TypeScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.