aksel icon indicating copy to clipboard operation
aksel copied to clipboard

[Innspill til komponent]: <DatePicker /> Bedre valg av årstall

Open ivoiv opened this issue 1 year ago • 5 comments

Tilbakemelding

Liker DatePicker komponenten veldig bra, men savner mulighet å velge årstall mer fritt.

Jobber med saksbehandling system hvor dato på ting kan være sånn 30år tilbake i tid så det er viktig å kunne enkelt bytte årstall.

Nå gjøres dette vel hovedsakelig via dropdownCaption. Problemet er at den krever fromDate og toDate, antar fordi det er ikke nok plass til alle årstall i den native select UI-en.

MUI har et godt forslag til en løsning som ser ganske mye ut som vår. Er dette noe vi kunne implementert eller er vi fastbestemt med native UI?

https://mui.com/x/react-date-pickers/getting-started/#FirstComponent.js

ivoiv avatar Mar 15 '23 09:03 ivoiv

Hei, i eksempelet til MUI er det endringen i selve input-feltet eller i selve popoveren som er tenkt her? Screenshot 2023-03-16 at 12 21 43 Screenshot 2023-03-16 at 12 21 47

KenAJoh avatar Mar 16 '23 11:03 KenAJoh

Popoveren tenke jeg. Den skrollbare listen av årstall er mye mer brukervennlig enn nettleseren sin native select UI.

ivoiv avatar Mar 17 '23 12:03 ivoiv

Enig i at det kan være mer brukervennlig for seende, men for brukere av skjermleser eller bare tastatur vil dette kunne være problematisk. MUI har valgt å løse det med en "infinite"-lang liste med knapper i div-er. Kunne blitt forbedret med ul > li, men vil fortsatt kreve at man tabber potensielt 10+, eller kanskje 100+ ganger på det verste.

Screenshot 2023-03-17 at 13 50 49

Det fine med native select er "autoselect"-funksjonaliteten der selv om man har 100+ valg, så kan man skrive 1960 og nettleseren highlighter det valget (usikker på om hvor nettleser-spesifikt dette er)

https://user-images.githubusercontent.com/26967723/225928484-00d893c9-be93-4af0-bca3-9067cad390b7.mp4

Select med 40+ options er ikke den mest optimale løsningen, og blir diskutert diverse pros/cons i denne artikkelen som konkluderer med at man kanskje bør vurdere andre løsninger enn en Datepicker for valg av dato for ukjente og potensielt lengre perioder.

KenAJoh avatar Mar 17 '23 14:03 KenAJoh

Navigasjon i årstall-velger i MUI løsningen skjer i likhet med tabeller via tastatur-pilene og ikke Tab. Tab brukes for å navigere frem og tilbake mellom "Minimer årstall-velger"-knappen og selve årstallene.

Jeg synes det bevarer UU for tastatur-navigasjon relativt godt.

Akkurat vårt behov kommer fra interne saksbehandling-systemer hvor tilrettelegging og UU er viktig men effektivitet er høyeste prio.

Native UI gir nok bedre brukeropplevelse for eksterne brukere, mobiltelefoner osv, mens jeg synes MUI gir bedre brukeropplevelse for saksbehandlere. Kan vi ikke ha en nativeSelectUI prop eller noe, som defaulter til native UI når man ikke har behov for mer avansert velger?

ivoiv avatar Mar 17 '23 14:03 ivoiv

Pratet litt med teamet og opprettet en oppgave på å teste konseptet 👍 Har ikke en ETA for når vi blir å se på dette, så for nå vil dagens løsning være eneste mulighet.

KenAJoh avatar Mar 20 '23 09:03 KenAJoh