onInput callback for Form.TagPicker or Form.Dropdown
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 7.8k
- Forks
- 6.9k
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 442
Description
Describe the feature and the current behavior/state.
It'd be nice that Form.TagPicker or Form.Dropdown includes an onInput callback so that we can execute an action each time the user enters text in these fields. The main use case would be for searching in a list that might return a lot of options.
For example, in the Linear extension, the API returns the 50 first results by default for the queries. This causes a problem for Linear workspaces with more than 50 labels since all labels wouldn't be shown. While it's possible to increase this number, this wouldn't solve the issue since it's not possible to know in advance what's a reasonable number of labels. Instead, it's better to allow users to search for labels directly in the picker or dropdown. That way, they can search for the label they want. (cf Slack thread)
Will this change the current API? How?
This would be purely additive to the API. No breaking changes to expect.
Who will benefit from this feature?
Any users who want to execute some kind of action when the users enters text in Form.TagPicker or Form.Dropdown
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Form.TagPicker and Form.Dropdown implementations and their existing input or selection callback props. Trace how user-entered text is handled, then determine the additive callback behavior and verify that typing in either field can trigger it for searching options.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, frontend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100