Form fields: label-row slot, focusable read-only, SelectField ref and readOnly, AddressField trailing action
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 58/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- react, typescript
- Ambito
- accessibility, frontend
Direzione di ricerca
Start with the referenced BaseField.tsx, TextField.tsx, SelectField.tsx, AddressField.tsx, and select.tsx files in packages/components/src/components. Trace how labels, readOnly, refs, and end slots are handled across the field family, then check the related component tests. Done when the requested optional props work with defaults unchanged and SelectField forwards its ref and supports readOnly.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Moving my forms onto the kit's fields (react-hook-form), a few things needed workarounds:
- Label row.
labelis a string (BaseField.tsx#L31), so there's no place for an "Optional" chip or an action like "Address book" next to it.AddressField'sannouncerEndSlotsits below the input (AddressField.tsx#L557-L574). - Read-only that keeps focus.
readOnlybecomesdisabledon both the Controller and the input (TextField.tsx#L104, #L153). While a save is in flight I want the values readable and focus kept, not dropped to the body. - SelectField. It has no
readOnly(SelectField.tsx#L70-L82), andfield.refnever reaches the trigger (#L141-L143), even thoughSelectTriggerforwards a ref (select.tsx#L13). SosetFocusand focus-on-first-error skip selects.
Suggested, all optional, defaults unchanged
labelEnd?: ReactNodeon the BaseField family, andinputEnd?: ReactNodeonAddressFieldreadOnlyMode: 'disabled' | 'readonly'(default'disabled', as today), with a read-only look onInput- pass
field.reftoSelectTrigger, and supportreadOnlyonSelectField
- Lingua principale
- TypeScript
- Stelle
- 7
- Fork
- 4
- 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 OpenZeppelin/openzeppelin-ui
-
Banner: allow a non-alert role for info and status notesForse già presa @pasevin l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
OpenZeppelin/openzeppelin-ui#258 ·
-
AddressDisplay: configurable copy button labelForse già presa @pasevin l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
OpenZeppelin/openzeppelin-ui#256 ·
-
Form fields write aria-describedby=" " when there's no helper text or errorForse già presa @pasevin l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
OpenZeppelin/openzeppelin-ui#251 ·
-
EmptyState: action slot, optional icon and descriptionForse già presa @pasevin l’ha presa 1 giorno fa. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
OpenZeppelin/openzeppelin-ui#249 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
OpenZeppelin/openzeppelin-ui#201 ·
Tutte le issue di OpenZeppelin/openzeppelin-ui
Issue simili
-
Wallet functions throws TypeError when the wallet has no account IDForse già presa @Medhansh-741 l’ha presa oggi. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
hiero-ledger/hiero-sdk-js#4781 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
dataforgoodfr/mediterranean-rescue#91 ·
I maintainer di solito rispondono entro 1 giorno
-
transformer-directives: `@apply` drops a utility whose CSS is a substring of an earlier one'sForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
Add: KRT TVApertaapproved check:passed streams:add
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
iptv-org/iptv#58647 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
milind-soni/OpenMausBot#5829 ·
I maintainer di solito rispondono entro 1 giorno