-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[POC][pickers] Explore the Base UI Calendar component #16069
Draft
flaviendelangle
wants to merge
86
commits into
mui:master
Choose a base branch
from
flaviendelangle:base-ui-calendar
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+8,751
−0
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #15598
Doc preview
There is a lot of polishing to do before considering any of this to be ready.
This POC is mostly here to test some of the assumption I made in my RFC.
For example I think having a view lifecycle inside
Calendar
is a bad idea, it creates too much complexity and letting the developper handle it works great.New features compared to MUI
Steps before creating the Base UI X pickers package
@mui/x-license
temporarily even if we don't want any@mui
deps for the launchCompositeList
and a lot of things in theutils
package)Work
Components
Calendar.*
Calendar.Root
Calendar.SetVisibleMonth
Calendar.SetVisibleYear
Calendar.DaysGrid
Calendar.DaysGridHeader
Calendar.DaysGridHeaderCell
Calendar.DaysGridBody
Calendar.DaysWeekRow
Calendar.DaysCell
Calendar.MonthsList
Calendar.MonthsGrid
Calendar.MonthsCell
Calendar.YearsList
Calendar.YearsGrid
Calendar.YearsCell
RangeCalendar.*
RangeCalendar.Root
RangeCalendar.SetVisibleMonth
RangeCalendar.SetVisibleYear
RangeCalendar.DaysGrid
RangeCalendar.DaysGridHeader
RangeCalendar.DaysGridHeaderCell
RangeCalendar.DaysGridBody
RangeCalendar.DaysWeekRow
RangeCalendar.DaysCell
RangeCalendar.MonthsList
(not supported in MUI, can be done later)RangeCalendar.MonthsGrid
(not supported in MUI, can be done later)RangeCalendar.MonthsCell
(not supported in MUI, can be done later)RangeCalendar.YearsList
(not supported in MUI, can be done later)RangeCalendar.YearsGrid
(not supported in MUI, can be done later)RangeCalendar.YearsCell
(not supported in MUI, can be done later)Keyboard navigation
Calendar.DaysGrid
monthPageSize
Calendar.MonthsList
Calendar.MonthsGrid
Calendar.YearsList
Calendar.YearsGrid
RangeCalendar.DaysGrid
Validation
Focus
Calendar.Root
autoFocus
(check the Base UI nomenclature)Calendar.DaysGrid
tabIndex={0}
on the right cellCalendar.MonthsGrid
/Calendar.MonthsList
tabIndex={0}
on the right cellCalendar.YearsGrid
/Calendar.YearsList
tabIndex={0}
on the right cellOther
value
,defaultValue
,referenceDate
,onValueChange
,onError
andtimezone
with the same behavior as on the MUI version (justonChange
is renamedonValueChange
)fixedWeekNumber
monthPageSize
on<Calendar.SetVisibleMonth />
yearPageSize
on<Calendar.SetVisibleYear />
offset
on<Calendar.DaysGrid />
offset
on<Calendar.MonthsGrid />
and<Calendar.MonthsList />