[Calendar] Support ref as prop and fix date handling edge cases
I maintainer di solito rispondono entro 5 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- react, typescript
- Ambito
- frontend
Direzione di ricerca
Inizia dai punti di ingresso dei componenti Calendar, DatePicker e RangePicker e analizza i relativi prop types e i percorsi di gestione delle date. Verifica il supporto di ref, la validazione delle date future, la pulizia del listener mouseup, il valore predefinito del single mode di Calendar e il rilevamento del formato di input in relazione ai miglioramenti indicati. Il lavoro è completato quando il comportamento interessato è configurabile o corretto in tutti e tre i componenti, mantenendo i pattern esistenti del design system.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
Improvements to the Calendar, DatePicker, and RangePicker components to fix patterns and improve flexibility.
Improvements
1. No ref prop support on Calendar, DatePicker, or RangePicker
None of the three exported components accept ref as a prop, inconsistent with the rest of the design system.
2. Hardcoded future date restriction in DatePicker
DatePicker input validation has dayjs(date).isSameOrBefore(dayjs()) hardcoded, preventing selection of future dates. This should be configurable or removed.
4. Manual event listener management in DatePicker
DatePicker manually manages mouseup event listeners via document.addEventListener/removeEventListener. This could be simplified using the Popover's own onOpenChange interaction model or a useEffect cleanup pattern.
5. mode='single' hardcoded in Calendar
The Calendar component sets mode='single' by default but also spreads ...props after, which allows override. The default should be documented or the prop should be explicit in the type.
6. DatePicker input format detection is fragile
handleInputChange guesses the date format based on separator character (/ or -). This can conflict with the dateFormat prop if the user specifies a different format.
Moved to Cross-Cutting Issues
The following items have been moved to cross-cutting issues that address them across all components:
- Remove !important declarations (#678)
- Lingua principale
- TypeScript
- Stelle
- 70
- Fork
- 13
- Merge medio
- 8g 8h
- PR unite (30g)
- 21
Preparare l'ambiente
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 raystack/apsara
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 5 giorni
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 75/100
I maintainer di solito rispondono entro 5 giorni
-
Docs: hand-duplicated props tables drift risk, missing a11y sections, no per-component changelogApertaenhancement global
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
I maintainer di solito rispondono entro 5 giorni
-
bug global
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
raystack/apsara#878 · 1 assegnatario ·
I maintainer di solito rispondono entro 5 giorni
Tutte le issue di raystack/apsara
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
lichess-org/api#678 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
PostHog/posthog.com#20628 ·
I maintainer di solito rispondono entro 1 giorno
-
bug status:Needs Triage
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
jupyterlab/jupyterlab#19964 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
agentscope-ai/QwenPaw#8064 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
area: notebooks-jupyter bug theme: new notebook frontend
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
posit-dev/positron#16347 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno