The autocomplete component needs to be split into two separate components
@SidG-CG ci sta già lavorando.
Dal 15/7/2024.
Valutazione
Questa issue non è ancora stata valutata.
Descrizione
The autocomplete component is currently just over 700 lines long and handles multiselect, loading of the options dynamically with the use of onChange and using static options which are then either filtered inside the autocomplete or with an external function using the search parameter. The reason for this refactor would be to reduce the code complexity and hopefully the size of the components so that they are easier to work on in the future.
The two new components would be DynamicAutocomplete and StaticAutoComplete, the main difference between the two components is how they handle filtering and the loading of options.
The dynamic autocomplete would have all filtering external to the component, done by the user, and the user would then update the options property to give the new results. Whereas the static autocomplete options property never changes it's value after it has received the data. The filtering can be done either externally or internally to the component however the options value is never updated by the user.
These two components would still need to handle the current functionality of switching to a form select if the user has turned off javascript and all of the accessibility features that have been added recently. The two components would NOT include the multiselect functionality which would be split off into it's own component in a separate ticket.
Tasks
- Autocomplete to be marked as deprecated
- Two new components to be created based off of the existing autocomplete, DynamicAutoComplete and StaticAutocomplete. (StaticAutocomplete can be created first as a base so that DynamicAutocomplete can extend the component)
- Updated documentation and tests for the components as well as updated examples in storybook.
Please follow these steps to create your branch:
git checkout release/1.1.0
git pull
git checkout -b 'feature/split-autocomplete'
- Lingua principale
- TypeScript
- Stelle
- 120
- Fork
- 6
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Capgemini/dcx-react-library
-
`Autocomplete` — hardcoded inline styles cannot be overridden by external CSSForse di nuovo libera @Ibabalola l’ha presa 119 giorni fa e non c’è nessuna pull request aperta. Apertaenhancement
Capgemini/dcx-react-library#707 · 1 assegnatario ·
-
Tabs - State and A11y errorsForse di nuovo libera @fermarinsanchez l’ha presa 498 giorni fa e non c’è nessuna pull request aperta. Apertaa11y bug
Capgemini/dcx-react-library#705 · 1 assegnatario ·
-
design-system
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
Capgemini/dcx-react-library#686 ·
-
Tabs - Design SystemForse di nuovo libera @jgonza16 l’ha presa 801 giorni fa e non c’è nessuna pull request aperta. Apertadesign-system
Capgemini/dcx-react-library#685 · 1 assegnatario ·
-
Details - Design SystemApertadesign-system
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
Capgemini/dcx-react-library#684 ·
Tutte le issue di Capgemini/dcx-react-library
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
gnosis/gnosis_vpn#661 ·
I maintainer di solito rispondono entro 1 giorno
-
content-freshness: staleOwnedContent doc comments still say 'complete receipt' (follow-up to #7912)Apertatriage:bug-verified
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
I maintainer di solito rispondono entro 1 giorno
-
fix: reject sourceStorage/packagedStorage bucket that differs from the stack default (fail loud)Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Eyevinn/open-videocore#1300 ·
I maintainer di solito rispondono entro 1 giorno
-
nextjs-tracking
Difficoltà 2/5 1-3 ore Idoneità per principianti 67/100
cloudflare/vinext#4390 ·
I maintainer di solito rispondono entro 1 giorno
-
kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
kubernetes-sigs/headlamp#8175 ·
I maintainer di solito rispondono entro 2 giorni