Implement react-autosuggest alternative
Description
react-autosuggest is no longer maintained and has deprecated code that conflicts with our testing utilities, React Testing Library (@testing-library/react).
react-autosuggest still checks for event.keyCode, which is long since deprecated. testing-library/user-event stopped supporting as of v14 and now overwrites keyCode to 0 (only to support React's SyntheticEvents which expect a value for keyCode).
- See: https://github.com/moroshko/react-autosuggest/blob/master/src/Autosuggest.js#L713
- See: https://github.com/testing-library/user-event/issues/842
There are many alternatives out there but I would personally suggest downshift as it is well-maintained, well-supported, and quite scalable. The learning curve to get everything up-and-running can take a bit, but once you have your components established, it "just works". Plus, it has the benefit of being created and maintained by Kent C. Dodds, the creator/maintainer of React Testing Library.
Reproduction Steps
See #2166 discussion for more details
Screenshots
Please assign yourself (via the Assignees dropdown), if you do want to work on this issue. Can't find yourself? You need to join our organization.
Check out our Picking Up Issues guide if you haven't already!
Hi, sir @LMulvey
can you please be more specific with this issue like what we have to do, and in what fields or components we have to replace the react-autosuggest with downshift?
And I would love to work on this issue.
Thanks.
Hey @MuhammadAakash, I haven't looked at https://github.com/downshift-js/downshift too deeply, but at first glance it looks like a good, maintained alternative to switch to. Feel free to take this on and investigate further!
Hi @MuhammadAakash is there any progress on this issue? I'd love to work on it
Hi @pauluzo. If you want to work just start working on it
@pauluzo I have assigned this issue to you, feel free to reach out to us on slack if you have any query.
@MuhammadAakash thanks. I'll reach out on slack.
@julianguyen do you know of any progress that has been made on this?
No progress @lucas-codes-stuff ! You can start from scratch here!