@mui/material 7.0.1 → 7.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Autocomplete/Autocomplete.d.ts +31 -1
- package/Autocomplete/Autocomplete.js +39 -27
- package/AvatarGroup/AvatarGroup.js +10 -2
- package/CHANGELOG.md +60 -0
- package/Dialog/dialogClasses.d.ts +6 -2
- package/SvgIcon/SvgIcon.d.ts +1 -1
- package/SvgIcon/SvgIcon.js +1 -1
- package/esm/Autocomplete/Autocomplete.d.ts +31 -1
- package/esm/Autocomplete/Autocomplete.js +39 -27
- package/esm/AvatarGroup/AvatarGroup.js +10 -2
- package/esm/Dialog/dialogClasses.d.ts +6 -2
- package/esm/SvgIcon/SvgIcon.d.ts +1 -1
- package/esm/SvgIcon/SvgIcon.js +1 -1
- package/esm/index.d.ts +0 -1
- package/esm/index.js +1 -1
- package/esm/useAutocomplete/useAutocomplete.d.ts +26 -0
- package/esm/useAutocomplete/useAutocomplete.js +88 -42
- package/esm/utils/memoTheme.d.ts +1 -1
- package/esm/version/index.js +2 -2
- package/index.d.ts +0 -1
- package/index.js +1 -1
- package/modern/Autocomplete/Autocomplete.d.ts +31 -1
- package/modern/Dialog/dialogClasses.d.ts +6 -2
- package/modern/SvgIcon/SvgIcon.d.ts +1 -1
- package/modern/index.d.ts +0 -1
- package/modern/useAutocomplete/useAutocomplete.d.ts +26 -0
- package/modern/utils/memoTheme.d.ts +1 -1
- package/package.json +8 -20
- package/useAutocomplete/useAutocomplete.d.ts +26 -0
- package/useAutocomplete/useAutocomplete.js +88 -42
- package/utils/memoTheme.d.ts +1 -1
- package/version/index.js +2 -2
- package/modern/Accordion/Accordion.js +0 -328
- package/modern/Accordion/AccordionContext.js +0 -13
- package/modern/Accordion/accordionClasses.js +0 -7
- package/modern/Accordion/index.js +0 -3
- package/modern/AccordionActions/AccordionActions.js +0 -93
- package/modern/AccordionActions/accordionActionsClasses.js +0 -7
- package/modern/AccordionActions/index.js +0 -3
- package/modern/AccordionDetails/AccordionDetails.js +0 -70
- package/modern/AccordionDetails/accordionDetailsClasses.js +0 -7
- package/modern/AccordionDetails/index.js +0 -3
- package/modern/AccordionSummary/AccordionSummary.js +0 -250
- package/modern/AccordionSummary/accordionSummaryClasses.js +0 -7
- package/modern/AccordionSummary/index.js +0 -3
- package/modern/Alert/Alert.js +0 -386
- package/modern/Alert/alertClasses.js +0 -7
- package/modern/Alert/index.js +0 -3
- package/modern/AlertTitle/AlertTitle.js +0 -76
- package/modern/AlertTitle/alertTitleClasses.js +0 -7
- package/modern/AlertTitle/index.js +0 -3
- package/modern/AppBar/AppBar.js +0 -227
- package/modern/AppBar/appBarClasses.js +0 -7
- package/modern/AppBar/index.js +0 -3
- package/modern/Autocomplete/Autocomplete.js +0 -1186
- package/modern/Autocomplete/autocompleteClasses.js +0 -7
- package/modern/Autocomplete/index.js +0 -3
- package/modern/Avatar/Avatar.js +0 -299
- package/modern/Avatar/avatarClasses.js +0 -7
- package/modern/Avatar/index.js +0 -3
- package/modern/AvatarGroup/AvatarGroup.js +0 -223
- package/modern/AvatarGroup/avatarGroupClasses.js +0 -7
- package/modern/AvatarGroup/index.js +0 -3
- package/modern/Backdrop/Backdrop.js +0 -205
- package/modern/Backdrop/backdropClasses.js +0 -7
- package/modern/Backdrop/index.js +0 -3
- package/modern/Badge/Badge.js +0 -428
- package/modern/Badge/badgeClasses.js +0 -9
- package/modern/Badge/index.js +0 -3
- package/modern/Badge/useBadge.js +0 -41
- package/modern/Badge/useBadge.types.js +0 -1
- package/modern/BottomNavigation/BottomNavigation.js +0 -123
- package/modern/BottomNavigation/bottomNavigationClasses.js +0 -7
- package/modern/BottomNavigation/index.js +0 -3
- package/modern/BottomNavigationAction/BottomNavigationAction.js +0 -187
- package/modern/BottomNavigationAction/bottomNavigationActionClasses.js +0 -7
- package/modern/BottomNavigationAction/index.js +0 -3
- package/modern/Box/Box.js +0 -35
- package/modern/Box/boxClasses.js +0 -3
- package/modern/Box/index.js +0 -3
- package/modern/Breadcrumbs/BreadcrumbCollapsed.js +0 -90
- package/modern/Breadcrumbs/Breadcrumbs.js +0 -240
- package/modern/Breadcrumbs/breadcrumbsClasses.js +0 -7
- package/modern/Breadcrumbs/index.js +0 -3
- package/modern/Button/Button.js +0 -688
- package/modern/Button/buttonClasses.js +0 -7
- package/modern/Button/index.js +0 -3
- package/modern/ButtonBase/ButtonBase.js +0 -447
- package/modern/ButtonBase/Ripple.js +0 -88
- package/modern/ButtonBase/TouchRipple.js +0 -324
- package/modern/ButtonBase/buttonBaseClasses.js +0 -7
- package/modern/ButtonBase/index.js +0 -5
- package/modern/ButtonBase/touchRippleClasses.js +0 -7
- package/modern/ButtonGroup/ButtonGroup.js +0 -390
- package/modern/ButtonGroup/ButtonGroupButtonContext.js +0 -11
- package/modern/ButtonGroup/ButtonGroupContext.js +0 -11
- package/modern/ButtonGroup/buttonGroupClasses.js +0 -7
- package/modern/ButtonGroup/index.js +0 -5
- package/modern/Card/Card.js +0 -84
- package/modern/Card/cardClasses.js +0 -7
- package/modern/Card/index.js +0 -3
- package/modern/CardActionArea/CardActionArea.js +0 -117
- package/modern/CardActionArea/cardActionAreaClasses.js +0 -7
- package/modern/CardActionArea/index.js +0 -3
- package/modern/CardActions/CardActions.js +0 -94
- package/modern/CardActions/cardActionsClasses.js +0 -7
- package/modern/CardActions/index.js +0 -3
- package/modern/CardContent/CardContent.js +0 -80
- package/modern/CardContent/cardContentClasses.js +0 -7
- package/modern/CardContent/index.js +0 -3
- package/modern/CardHeader/CardHeader.js +0 -267
- package/modern/CardHeader/cardHeaderClasses.js +0 -7
- package/modern/CardHeader/index.js +0 -3
- package/modern/CardMedia/CardMedia.js +0 -145
- package/modern/CardMedia/cardMediaClasses.js +0 -7
- package/modern/CardMedia/index.js +0 -3
- package/modern/Checkbox/Checkbox.js +0 -280
- package/modern/Checkbox/checkboxClasses.js +0 -7
- package/modern/Checkbox/index.js +0 -3
- package/modern/Chip/Chip.js +0 -576
- package/modern/Chip/chipClasses.js +0 -7
- package/modern/Chip/index.js +0 -3
- package/modern/CircularProgress/CircularProgress.js +0 -285
- package/modern/CircularProgress/circularProgressClasses.js +0 -7
- package/modern/CircularProgress/index.js +0 -3
- package/modern/ClickAwayListener/ClickAwayListener.js +0 -174
- package/modern/ClickAwayListener/index.js +0 -1
- package/modern/Collapse/Collapse.js +0 -411
- package/modern/Collapse/collapseClasses.js +0 -7
- package/modern/Collapse/index.js +0 -3
- package/modern/Container/Container.js +0 -67
- package/modern/Container/containerClasses.js +0 -7
- package/modern/Container/index.js +0 -3
- package/modern/CssBaseline/CssBaseline.js +0 -161
- package/modern/CssBaseline/index.js +0 -1
- package/modern/DefaultPropsProvider/DefaultPropsProvider.js +0 -29
- package/modern/DefaultPropsProvider/index.js +0 -1
- package/modern/Dialog/Dialog.js +0 -513
- package/modern/Dialog/DialogContext.js +0 -8
- package/modern/Dialog/dialogClasses.js +0 -7
- package/modern/Dialog/index.js +0 -3
- package/modern/DialogActions/DialogActions.js +0 -96
- package/modern/DialogActions/dialogActionsClasses.js +0 -7
- package/modern/DialogActions/index.js +0 -3
- package/modern/DialogContent/DialogContent.js +0 -109
- package/modern/DialogContent/dialogContentClasses.js +0 -7
- package/modern/DialogContent/index.js +0 -3
- package/modern/DialogContentText/DialogContentText.js +0 -77
- package/modern/DialogContentText/dialogContentTextClasses.js +0 -7
- package/modern/DialogContentText/index.js +0 -3
- package/modern/DialogTitle/DialogTitle.js +0 -81
- package/modern/DialogTitle/dialogTitleClasses.js +0 -7
- package/modern/DialogTitle/index.js +0 -3
- package/modern/Divider/Divider.js +0 -314
- package/modern/Divider/dividerClasses.js +0 -7
- package/modern/Divider/index.js +0 -3
- package/modern/Drawer/Drawer.js +0 -434
- package/modern/Drawer/drawerClasses.js +0 -7
- package/modern/Drawer/index.js +0 -3
- package/modern/Fab/Fab.js +0 -271
- package/modern/Fab/fabClasses.js +0 -7
- package/modern/Fab/index.js +0 -3
- package/modern/Fade/Fade.js +0 -210
- package/modern/Fade/index.js +0 -1
- package/modern/FilledInput/FilledInput.js +0 -516
- package/modern/FilledInput/filledInputClasses.js +0 -11
- package/modern/FilledInput/index.js +0 -3
- package/modern/FormControl/FormControl.js +0 -305
- package/modern/FormControl/FormControlContext.js +0 -11
- package/modern/FormControl/formControlClasses.js +0 -7
- package/modern/FormControl/formControlState.js +0 -15
- package/modern/FormControl/index.js +0 -4
- package/modern/FormControl/useFormControl.js +0 -7
- package/modern/FormControlLabel/FormControlLabel.js +0 -283
- package/modern/FormControlLabel/formControlLabelClasses.js +0 -7
- package/modern/FormControlLabel/index.js +0 -3
- package/modern/FormGroup/FormGroup.js +0 -108
- package/modern/FormGroup/formGroupClasses.js +0 -7
- package/modern/FormGroup/index.js +0 -3
- package/modern/FormHelperText/FormHelperText.js +0 -186
- package/modern/FormHelperText/formHelperTextClasses.js +0 -7
- package/modern/FormHelperText/index.js +0 -3
- package/modern/FormLabel/FormLabel.js +0 -182
- package/modern/FormLabel/formLabelClasses.js +0 -7
- package/modern/FormLabel/index.js +0 -4
- package/modern/GlobalStyles/GlobalStyles.js +0 -26
- package/modern/GlobalStyles/index.js +0 -1
- package/modern/Grid/Grid.js +0 -138
- package/modern/Grid/gridClasses.js +0 -19
- package/modern/Grid/index.js +0 -4
- package/modern/GridLegacy/GridLegacy.js +0 -588
- package/modern/GridLegacy/GridLegacyContext.js +0 -12
- package/modern/GridLegacy/gridLegacyClasses.js +0 -19
- package/modern/GridLegacy/index.js +0 -3
- package/modern/Grow/Grow.js +0 -262
- package/modern/Grow/index.js +0 -1
- package/modern/Icon/Icon.js +0 -185
- package/modern/Icon/iconClasses.js +0 -7
- package/modern/Icon/index.js +0 -3
- package/modern/IconButton/IconButton.js +0 -322
- package/modern/IconButton/iconButtonClasses.js +0 -7
- package/modern/IconButton/index.js +0 -3
- package/modern/ImageList/ImageList.js +0 -150
- package/modern/ImageList/ImageListContext.js +0 -13
- package/modern/ImageList/imageListClasses.js +0 -7
- package/modern/ImageList/index.js +0 -3
- package/modern/ImageListItem/ImageListItem.js +0 -188
- package/modern/ImageListItem/imageListItemClasses.js +0 -7
- package/modern/ImageListItem/index.js +0 -3
- package/modern/ImageListItemBar/ImageListItemBar.js +0 -253
- package/modern/ImageListItemBar/imageListItemBarClasses.js +0 -7
- package/modern/ImageListItemBar/index.js +0 -3
- package/modern/InitColorSchemeScript/InitColorSchemeScript.js +0 -16
- package/modern/InitColorSchemeScript/index.js +0 -1
- package/modern/Input/Input.js +0 -361
- package/modern/Input/index.js +0 -3
- package/modern/Input/inputClasses.js +0 -11
- package/modern/InputAdornment/InputAdornment.js +0 -186
- package/modern/InputAdornment/index.js +0 -3
- package/modern/InputAdornment/inputAdornmentClasses.js +0 -7
- package/modern/InputBase/InputBase.js +0 -749
- package/modern/InputBase/index.js +0 -3
- package/modern/InputBase/inputBaseClasses.js +0 -7
- package/modern/InputBase/utils.js +0 -30
- package/modern/InputLabel/InputLabel.js +0 -283
- package/modern/InputLabel/index.js +0 -3
- package/modern/InputLabel/inputLabelClasses.js +0 -7
- package/modern/LinearProgress/LinearProgress.js +0 -455
- package/modern/LinearProgress/index.js +0 -3
- package/modern/LinearProgress/linearProgressClasses.js +0 -7
- package/modern/Link/Link.js +0 -283
- package/modern/Link/getTextDecoration.js +0 -16
- package/modern/Link/index.js +0 -3
- package/modern/Link/linkClasses.js +0 -7
- package/modern/List/List.js +0 -134
- package/modern/List/ListContext.js +0 -12
- package/modern/List/index.js +0 -3
- package/modern/List/listClasses.js +0 -7
- package/modern/ListItem/ListItem.js +0 -388
- package/modern/ListItem/index.js +0 -3
- package/modern/ListItem/listItemClasses.js +0 -7
- package/modern/ListItemAvatar/ListItemAvatar.js +0 -91
- package/modern/ListItemAvatar/index.js +0 -3
- package/modern/ListItemAvatar/listItemAvatarClasses.js +0 -7
- package/modern/ListItemButton/ListItemButton.js +0 -264
- package/modern/ListItemButton/index.js +0 -3
- package/modern/ListItemButton/listItemButtonClasses.js +0 -7
- package/modern/ListItemIcon/ListItemIcon.js +0 -97
- package/modern/ListItemIcon/index.js +0 -3
- package/modern/ListItemIcon/listItemIconClasses.js +0 -7
- package/modern/ListItemSecondaryAction/ListItemSecondaryAction.js +0 -96
- package/modern/ListItemSecondaryAction/index.js +0 -3
- package/modern/ListItemSecondaryAction/listItemSecondaryActionClasses.js +0 -7
- package/modern/ListItemText/ListItemText.js +0 -227
- package/modern/ListItemText/index.js +0 -3
- package/modern/ListItemText/listItemTextClasses.js +0 -7
- package/modern/ListSubheader/ListSubheader.js +0 -167
- package/modern/ListSubheader/index.js +0 -3
- package/modern/ListSubheader/listSubheaderClasses.js +0 -7
- package/modern/Menu/Menu.js +0 -341
- package/modern/Menu/index.js +0 -3
- package/modern/Menu/menuClasses.js +0 -7
- package/modern/MenuItem/MenuItem.js +0 -283
- package/modern/MenuItem/index.js +0 -3
- package/modern/MenuItem/menuItemClasses.js +0 -7
- package/modern/MenuList/MenuList.js +0 -290
- package/modern/MenuList/index.js +0 -1
- package/modern/MobileStepper/MobileStepper.js +0 -306
- package/modern/MobileStepper/index.js +0 -3
- package/modern/MobileStepper/mobileStepperClasses.js +0 -7
- package/modern/Modal/Modal.js +0 -396
- package/modern/Modal/ModalManager.js +0 -211
- package/modern/Modal/index.js +0 -4
- package/modern/Modal/modalClasses.js +0 -7
- package/modern/Modal/useModal.js +0 -200
- package/modern/Modal/useModal.types.js +0 -1
- package/modern/NativeSelect/NativeSelect.js +0 -133
- package/modern/NativeSelect/NativeSelectInput.js +0 -240
- package/modern/NativeSelect/index.js +0 -3
- package/modern/NativeSelect/nativeSelectClasses.js +0 -7
- package/modern/NoSsr/NoSsr.js +0 -70
- package/modern/NoSsr/NoSsr.types.js +0 -1
- package/modern/NoSsr/index.js +0 -1
- package/modern/OutlinedInput/NotchedOutline.js +0 -154
- package/modern/OutlinedInput/OutlinedInput.js +0 -410
- package/modern/OutlinedInput/index.js +0 -3
- package/modern/OutlinedInput/outlinedInputClasses.js +0 -11
- package/modern/OverridableComponent/index.js +0 -1
- package/modern/Pagination/Pagination.js +0 -245
- package/modern/Pagination/index.js +0 -3
- package/modern/Pagination/paginationClasses.js +0 -7
- package/modern/PaginationItem/PaginationItem.js +0 -472
- package/modern/PaginationItem/index.js +0 -3
- package/modern/PaginationItem/paginationItemClasses.js +0 -7
- package/modern/Paper/Paper.js +0 -170
- package/modern/Paper/index.js +0 -3
- package/modern/Paper/paperClasses.js +0 -7
- package/modern/PigmentContainer/PigmentContainer.js +0 -98
- package/modern/PigmentContainer/index.js +0 -3
- package/modern/PigmentGrid/PigmentGrid.js +0 -126
- package/modern/PigmentGrid/index.js +0 -3
- package/modern/PigmentStack/PigmentStack.js +0 -81
- package/modern/PigmentStack/index.js +0 -3
- package/modern/Popover/Popover.js +0 -583
- package/modern/Popover/index.js +0 -4
- package/modern/Popover/popoverClasses.js +0 -7
- package/modern/Popper/BasePopper.js +0 -370
- package/modern/Popper/BasePopper.types.js +0 -1
- package/modern/Popper/Popper.js +0 -210
- package/modern/Popper/index.js +0 -2
- package/modern/Popper/popperClasses.js +0 -7
- package/modern/Portal/Portal.js +0 -86
- package/modern/Portal/Portal.types.js +0 -1
- package/modern/Portal/index.js +0 -1
- package/modern/Radio/Radio.js +0 -309
- package/modern/Radio/RadioButtonIcon.js +0 -87
- package/modern/Radio/index.js +0 -3
- package/modern/Radio/radioClasses.js +0 -7
- package/modern/RadioGroup/RadioGroup.js +0 -114
- package/modern/RadioGroup/RadioGroupContext.js +0 -11
- package/modern/RadioGroup/index.js +0 -4
- package/modern/RadioGroup/radioGroupClasses.js +0 -7
- package/modern/RadioGroup/useRadioGroup.js +0 -7
- package/modern/Rating/Rating.js +0 -777
- package/modern/Rating/index.js +0 -3
- package/modern/Rating/ratingClasses.js +0 -7
- package/modern/ScopedCssBaseline/ScopedCssBaseline.js +0 -120
- package/modern/ScopedCssBaseline/index.js +0 -3
- package/modern/ScopedCssBaseline/scopedCssBaselineClasses.js +0 -7
- package/modern/Select/Select.js +0 -300
- package/modern/Select/SelectInput.js +0 -673
- package/modern/Select/index.js +0 -3
- package/modern/Select/selectClasses.js +0 -7
- package/modern/Skeleton/Skeleton.js +0 -269
- package/modern/Skeleton/index.js +0 -3
- package/modern/Skeleton/skeletonClasses.js +0 -7
- package/modern/Slide/Slide.js +0 -338
- package/modern/Slide/index.js +0 -1
- package/modern/Slider/Slider.js +0 -1095
- package/modern/Slider/SliderValueLabel.js +0 -53
- package/modern/Slider/SliderValueLabel.types.js +0 -1
- package/modern/Slider/index.js +0 -4
- package/modern/Slider/sliderClasses.js +0 -7
- package/modern/Slider/useSlider.js +0 -704
- package/modern/Slider/useSlider.types.js +0 -1
- package/modern/Snackbar/Snackbar.js +0 -426
- package/modern/Snackbar/index.js +0 -3
- package/modern/Snackbar/snackbarClasses.js +0 -7
- package/modern/Snackbar/useSnackbar.js +0 -133
- package/modern/Snackbar/useSnackbar.types.js +0 -1
- package/modern/SnackbarContent/SnackbarContent.js +0 -132
- package/modern/SnackbarContent/index.js +0 -3
- package/modern/SnackbarContent/snackbarContentClasses.js +0 -7
- package/modern/SpeedDial/SpeedDial.js +0 -579
- package/modern/SpeedDial/index.js +0 -3
- package/modern/SpeedDial/speedDialClasses.js +0 -7
- package/modern/SpeedDialAction/SpeedDialAction.js +0 -351
- package/modern/SpeedDialAction/index.js +0 -3
- package/modern/SpeedDialAction/speedDialActionClasses.js +0 -7
- package/modern/SpeedDialIcon/SpeedDialIcon.js +0 -156
- package/modern/SpeedDialIcon/index.js +0 -3
- package/modern/SpeedDialIcon/speedDialIconClasses.js +0 -7
- package/modern/Stack/Stack.js +0 -62
- package/modern/Stack/index.js +0 -2
- package/modern/Stack/stackClasses.js +0 -7
- package/modern/Step/Step.js +0 -176
- package/modern/Step/StepContext.js +0 -19
- package/modern/Step/index.js +0 -5
- package/modern/Step/stepClasses.js +0 -7
- package/modern/StepButton/StepButton.js +0 -133
- package/modern/StepButton/index.js +0 -3
- package/modern/StepButton/stepButtonClasses.js +0 -7
- package/modern/StepConnector/StepConnector.js +0 -152
- package/modern/StepConnector/index.js +0 -3
- package/modern/StepConnector/stepConnectorClasses.js +0 -7
- package/modern/StepContent/StepContent.js +0 -187
- package/modern/StepContent/index.js +0 -3
- package/modern/StepContent/stepContentClasses.js +0 -7
- package/modern/StepIcon/StepIcon.js +0 -161
- package/modern/StepIcon/index.js +0 -3
- package/modern/StepIcon/stepIconClasses.js +0 -7
- package/modern/StepLabel/StepLabel.js +0 -280
- package/modern/StepLabel/index.js +0 -3
- package/modern/StepLabel/stepLabelClasses.js +0 -7
- package/modern/Stepper/Stepper.js +0 -167
- package/modern/Stepper/StepperContext.js +0 -19
- package/modern/Stepper/index.js +0 -5
- package/modern/Stepper/stepperClasses.js +0 -7
- package/modern/SvgIcon/SvgIcon.js +0 -234
- package/modern/SvgIcon/index.js +0 -3
- package/modern/SvgIcon/svgIconClasses.js +0 -7
- package/modern/SwipeableDrawer/SwipeArea.js +0 -104
- package/modern/SwipeableDrawer/SwipeableDrawer.js +0 -661
- package/modern/SwipeableDrawer/index.js +0 -1
- package/modern/Switch/Switch.js +0 -407
- package/modern/Switch/index.js +0 -3
- package/modern/Switch/switchClasses.js +0 -7
- package/modern/Tab/Tab.js +0 -338
- package/modern/Tab/index.js +0 -3
- package/modern/Tab/tabClasses.js +0 -7
- package/modern/TabScrollButton/TabScrollButton.js +0 -172
- package/modern/TabScrollButton/index.js +0 -3
- package/modern/TabScrollButton/tabScrollButtonClasses.js +0 -7
- package/modern/Table/Table.js +0 -136
- package/modern/Table/TableContext.js +0 -12
- package/modern/Table/Tablelvl2Context.js +0 -12
- package/modern/Table/index.js +0 -3
- package/modern/Table/tableClasses.js +0 -7
- package/modern/TableBody/TableBody.js +0 -86
- package/modern/TableBody/index.js +0 -3
- package/modern/TableBody/tableBodyClasses.js +0 -7
- package/modern/TableCell/TableCell.js +0 -270
- package/modern/TableCell/index.js +0 -3
- package/modern/TableCell/tableCellClasses.js +0 -7
- package/modern/TableContainer/TableContainer.js +0 -78
- package/modern/TableContainer/index.js +0 -3
- package/modern/TableContainer/tableContainerClasses.js +0 -7
- package/modern/TableFooter/TableFooter.js +0 -86
- package/modern/TableFooter/index.js +0 -3
- package/modern/TableFooter/tableFooterClasses.js +0 -7
- package/modern/TableHead/TableHead.js +0 -86
- package/modern/TableHead/index.js +0 -3
- package/modern/TableHead/tableHeadClasses.js +0 -7
- package/modern/TablePagination/TablePagination.js +0 -505
- package/modern/TablePagination/TablePaginationActions.js +0 -194
- package/modern/TablePagination/index.js +0 -3
- package/modern/TablePagination/tablePaginationClasses.js +0 -7
- package/modern/TableRow/TableRow.js +0 -127
- package/modern/TableRow/index.js +0 -3
- package/modern/TableRow/tableRowClasses.js +0 -7
- package/modern/TableSortLabel/TableSortLabel.js +0 -212
- package/modern/TableSortLabel/index.js +0 -3
- package/modern/TableSortLabel/tableSortLabelClasses.js +0 -7
- package/modern/Tabs/ScrollbarSize.js +0 -58
- package/modern/Tabs/Tabs.js +0 -956
- package/modern/Tabs/index.js +0 -3
- package/modern/Tabs/tabsClasses.js +0 -7
- package/modern/TextField/TextField.js +0 -457
- package/modern/TextField/index.js +0 -3
- package/modern/TextField/textFieldClasses.js +0 -7
- package/modern/TextareaAutosize/TextareaAutosize.js +0 -243
- package/modern/TextareaAutosize/TextareaAutosize.types.js +0 -1
- package/modern/TextareaAutosize/index.js +0 -1
- package/modern/ToggleButton/ToggleButton.js +0 -268
- package/modern/ToggleButton/index.js +0 -3
- package/modern/ToggleButton/toggleButtonClasses.js +0 -7
- package/modern/ToggleButtonGroup/ToggleButtonGroup.js +0 -281
- package/modern/ToggleButtonGroup/ToggleButtonGroupButtonContext.js +0 -11
- package/modern/ToggleButtonGroup/ToggleButtonGroupContext.js +0 -11
- package/modern/ToggleButtonGroup/index.js +0 -3
- package/modern/ToggleButtonGroup/isValueSelected.js +0 -11
- package/modern/ToggleButtonGroup/toggleButtonGroupClasses.js +0 -7
- package/modern/Toolbar/Toolbar.js +0 -129
- package/modern/Toolbar/index.js +0 -3
- package/modern/Toolbar/toolbarClasses.js +0 -7
- package/modern/Tooltip/Tooltip.js +0 -898
- package/modern/Tooltip/index.js +0 -3
- package/modern/Tooltip/tooltipClasses.js +0 -7
- package/modern/Typography/Typography.js +0 -268
- package/modern/Typography/index.js +0 -3
- package/modern/Typography/typographyClasses.js +0 -7
- package/modern/Unstable_TrapFocus/FocusTrap.js +0 -329
- package/modern/Unstable_TrapFocus/FocusTrap.types.js +0 -1
- package/modern/Unstable_TrapFocus/index.js +0 -1
- package/modern/Zoom/Zoom.js +0 -210
- package/modern/Zoom/index.js +0 -1
- package/modern/className/index.js +0 -2
- package/modern/colors/amber.js +0 -17
- package/modern/colors/blue.js +0 -17
- package/modern/colors/blueGrey.js +0 -17
- package/modern/colors/brown.js +0 -17
- package/modern/colors/common.js +0 -5
- package/modern/colors/cyan.js +0 -17
- package/modern/colors/deepOrange.js +0 -17
- package/modern/colors/deepPurple.js +0 -17
- package/modern/colors/green.js +0 -17
- package/modern/colors/grey.js +0 -17
- package/modern/colors/index.js +0 -20
- package/modern/colors/indigo.js +0 -17
- package/modern/colors/lightBlue.js +0 -17
- package/modern/colors/lightGreen.js +0 -17
- package/modern/colors/lime.js +0 -17
- package/modern/colors/orange.js +0 -17
- package/modern/colors/pink.js +0 -17
- package/modern/colors/purple.js +0 -17
- package/modern/colors/red.js +0 -17
- package/modern/colors/teal.js +0 -17
- package/modern/colors/yellow.js +0 -17
- package/modern/darkScrollbar/index.js +0 -32
- package/modern/generateUtilityClass/index.js +0 -1
- package/modern/generateUtilityClasses/index.js +0 -1
- package/modern/index.js +0 -286
- package/modern/internal/SwitchBase.js +0 -355
- package/modern/internal/animate.js +0 -39
- package/modern/internal/svg-icons/Add.js +0 -12
- package/modern/internal/svg-icons/ArrowDownward.js +0 -12
- package/modern/internal/svg-icons/ArrowDropDown.js +0 -12
- package/modern/internal/svg-icons/Cancel.js +0 -12
- package/modern/internal/svg-icons/CheckBox.js +0 -12
- package/modern/internal/svg-icons/CheckBoxOutlineBlank.js +0 -12
- package/modern/internal/svg-icons/CheckCircle.js +0 -12
- package/modern/internal/svg-icons/Close.js +0 -14
- package/modern/internal/svg-icons/ErrorOutline.js +0 -12
- package/modern/internal/svg-icons/FirstPage.js +0 -12
- package/modern/internal/svg-icons/IndeterminateCheckBox.js +0 -12
- package/modern/internal/svg-icons/InfoOutlined.js +0 -12
- package/modern/internal/svg-icons/KeyboardArrowLeft.js +0 -12
- package/modern/internal/svg-icons/KeyboardArrowRight.js +0 -12
- package/modern/internal/svg-icons/LastPage.js +0 -12
- package/modern/internal/svg-icons/MoreHoriz.js +0 -12
- package/modern/internal/svg-icons/NavigateBefore.js +0 -12
- package/modern/internal/svg-icons/NavigateNext.js +0 -12
- package/modern/internal/svg-icons/Person.js +0 -12
- package/modern/internal/svg-icons/RadioButtonChecked.js +0 -12
- package/modern/internal/svg-icons/RadioButtonUnchecked.js +0 -12
- package/modern/internal/svg-icons/ReportProblemOutlined.js +0 -12
- package/modern/internal/svg-icons/Star.js +0 -12
- package/modern/internal/svg-icons/StarBorder.js +0 -12
- package/modern/internal/svg-icons/SuccessOutlined.js +0 -12
- package/modern/internal/svg-icons/Warning.js +0 -12
- package/modern/internal/switchBaseClasses.js +0 -7
- package/modern/locale/index.js +0 -4324
- package/modern/package.json +0 -1
- package/modern/styles/ThemeProvider.js +0 -40
- package/modern/styles/ThemeProviderNoVars.js +0 -17
- package/modern/styles/ThemeProviderWithVars.js +0 -91
- package/modern/styles/adaptV4Theme.js +0 -83
- package/modern/styles/components.js +0 -1
- package/modern/styles/createColorScheme.js +0 -41
- package/modern/styles/createGetSelector.js +0 -60
- package/modern/styles/createMixins.js +0 -16
- package/modern/styles/createMuiStrictModeTheme.js +0 -7
- package/modern/styles/createPalette.js +0 -302
- package/modern/styles/createStyles.js +0 -10
- package/modern/styles/createTheme.js +0 -98
- package/modern/styles/createThemeNoVars.js +0 -91
- package/modern/styles/createThemeWithVars.js +0 -386
- package/modern/styles/createTransitions.js +0 -89
- package/modern/styles/createTypography.js +0 -92
- package/modern/styles/cssUtils.js +0 -125
- package/modern/styles/defaultTheme.js +0 -5
- package/modern/styles/excludeVariablesFromRoot.js +0 -5
- package/modern/styles/experimental_extendTheme.js +0 -9
- package/modern/styles/getOverlayAlpha.js +0 -10
- package/modern/styles/identifier.js +0 -1
- package/modern/styles/index.js +0 -37
- package/modern/styles/makeStyles.js +0 -4
- package/modern/styles/overrides.js +0 -1
- package/modern/styles/props.js +0 -1
- package/modern/styles/responsiveFontSizes.js +0 -67
- package/modern/styles/rootShouldForwardProp.js +0 -3
- package/modern/styles/shadows.js +0 -10
- package/modern/styles/shouldSkipGeneratingVar.js +0 -5
- package/modern/styles/slotShouldForwardProp.js +0 -5
- package/modern/styles/stringifyTheme.js +0 -54
- package/modern/styles/styled.js +0 -14
- package/modern/styles/useTheme.js +0 -15
- package/modern/styles/useThemeProps.js +0 -16
- package/modern/styles/variants.js +0 -1
- package/modern/styles/withStyles.js +0 -4
- package/modern/styles/withTheme.js +0 -4
- package/modern/styles/zIndex.js +0 -13
- package/modern/transitions/index.js +0 -1
- package/modern/transitions/transition.js +0 -1
- package/modern/transitions/utils.js +0 -13
- package/modern/types/OverridableComponentAugmentation.js +0 -1
- package/modern/useAutocomplete/index.js +0 -1
- package/modern/useAutocomplete/useAutocomplete.js +0 -973
- package/modern/useLazyRipple/index.js +0 -3
- package/modern/useLazyRipple/useLazyRipple.js +0 -85
- package/modern/useMediaQuery/index.js +0 -6
- package/modern/usePagination/index.js +0 -1
- package/modern/usePagination/usePagination.js +0 -113
- package/modern/useScrollTrigger/index.js +0 -1
- package/modern/useScrollTrigger/useScrollTrigger.js +0 -55
- package/modern/utils/PolymorphicComponent.js +0 -1
- package/modern/utils/areArraysEqual.js +0 -4
- package/modern/utils/capitalize.js +0 -2
- package/modern/utils/createChainedFunction.js +0 -2
- package/modern/utils/createSimplePaletteValueFilter.js +0 -41
- package/modern/utils/createSvgIcon.js +0 -26
- package/modern/utils/debounce.js +0 -2
- package/modern/utils/deprecatedPropType.js +0 -2
- package/modern/utils/getScrollbarSize.js +0 -2
- package/modern/utils/index.js +0 -31
- package/modern/utils/isHostComponent.js +0 -7
- package/modern/utils/isMuiElement.js +0 -2
- package/modern/utils/memoTheme.js +0 -3
- package/modern/utils/mergeSlotProps.js +0 -75
- package/modern/utils/omitEventHandlers.js +0 -18
- package/modern/utils/ownerDocument.js +0 -2
- package/modern/utils/ownerWindow.js +0 -2
- package/modern/utils/requirePropFactory.js +0 -2
- package/modern/utils/setRef.js +0 -2
- package/modern/utils/shouldSpreadAdditionalProps.js +0 -5
- package/modern/utils/types.js +0 -1
- package/modern/utils/unsupportedProp.js +0 -2
- package/modern/utils/useControlled.js +0 -4
- package/modern/utils/useEnhancedEffect.js +0 -4
- package/modern/utils/useEventCallback.js +0 -4
- package/modern/utils/useForkRef.js +0 -4
- package/modern/utils/useId.js +0 -4
- package/modern/utils/useSlot.js +0 -80
- package/modern/version/index.js +0 -6
- package/modern/zero-styled/index.js +0 -27
- package/tsconfig.build.tsbuildinfo +0 -1
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import createPalette from "./createPalette.js";
|
|
2
|
-
import createThemeWithVars from "./createThemeWithVars.js";
|
|
3
|
-
import createThemeNoVars from "./createThemeNoVars.js";
|
|
4
|
-
// eslint-disable-next-line consistent-return
|
|
5
|
-
function attachColorScheme(theme, scheme, colorScheme) {
|
|
6
|
-
if (!theme.colorSchemes) {
|
|
7
|
-
return undefined;
|
|
8
|
-
}
|
|
9
|
-
if (colorScheme) {
|
|
10
|
-
theme.colorSchemes[scheme] = {
|
|
11
|
-
...(colorScheme !== true && colorScheme),
|
|
12
|
-
palette: createPalette({
|
|
13
|
-
...(colorScheme === true ? {} : colorScheme.palette),
|
|
14
|
-
mode: scheme
|
|
15
|
-
}) // cast type to skip module augmentation test
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
|
|
20
|
-
/**
|
|
21
|
-
* Generate a theme base on the options received.
|
|
22
|
-
* @param options Takes an incomplete theme object and adds the missing parts.
|
|
23
|
-
* @param args Deep merge the arguments with the about to be returned theme.
|
|
24
|
-
* @returns A complete, ready-to-use theme object.
|
|
25
|
-
*/
|
|
26
|
-
export default function createTheme(options = {},
|
|
27
|
-
// cast type to skip module augmentation test
|
|
28
|
-
...args) {
|
|
29
|
-
const {
|
|
30
|
-
palette,
|
|
31
|
-
cssVariables = false,
|
|
32
|
-
colorSchemes: initialColorSchemes = !palette ? {
|
|
33
|
-
light: true
|
|
34
|
-
} : undefined,
|
|
35
|
-
defaultColorScheme: initialDefaultColorScheme = palette?.mode,
|
|
36
|
-
...rest
|
|
37
|
-
} = options;
|
|
38
|
-
const defaultColorSchemeInput = initialDefaultColorScheme || 'light';
|
|
39
|
-
const defaultScheme = initialColorSchemes?.[defaultColorSchemeInput];
|
|
40
|
-
const colorSchemesInput = {
|
|
41
|
-
...initialColorSchemes,
|
|
42
|
-
...(palette ? {
|
|
43
|
-
[defaultColorSchemeInput]: {
|
|
44
|
-
...(typeof defaultScheme !== 'boolean' && defaultScheme),
|
|
45
|
-
palette
|
|
46
|
-
}
|
|
47
|
-
} : undefined)
|
|
48
|
-
};
|
|
49
|
-
if (cssVariables === false) {
|
|
50
|
-
if (!('colorSchemes' in options)) {
|
|
51
|
-
// Behaves exactly as v5
|
|
52
|
-
return createThemeNoVars(options, ...args);
|
|
53
|
-
}
|
|
54
|
-
let paletteOptions = palette;
|
|
55
|
-
if (!('palette' in options)) {
|
|
56
|
-
if (colorSchemesInput[defaultColorSchemeInput]) {
|
|
57
|
-
if (colorSchemesInput[defaultColorSchemeInput] !== true) {
|
|
58
|
-
paletteOptions = colorSchemesInput[defaultColorSchemeInput].palette;
|
|
59
|
-
} else if (defaultColorSchemeInput === 'dark') {
|
|
60
|
-
// @ts-ignore to prevent the module augmentation test from failing
|
|
61
|
-
paletteOptions = {
|
|
62
|
-
mode: 'dark'
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
const theme = createThemeNoVars({
|
|
68
|
-
...options,
|
|
69
|
-
palette: paletteOptions
|
|
70
|
-
}, ...args);
|
|
71
|
-
theme.defaultColorScheme = defaultColorSchemeInput;
|
|
72
|
-
theme.colorSchemes = colorSchemesInput;
|
|
73
|
-
if (theme.palette.mode === 'light') {
|
|
74
|
-
theme.colorSchemes.light = {
|
|
75
|
-
...(colorSchemesInput.light !== true && colorSchemesInput.light),
|
|
76
|
-
palette: theme.palette
|
|
77
|
-
};
|
|
78
|
-
attachColorScheme(theme, 'dark', colorSchemesInput.dark);
|
|
79
|
-
}
|
|
80
|
-
if (theme.palette.mode === 'dark') {
|
|
81
|
-
theme.colorSchemes.dark = {
|
|
82
|
-
...(colorSchemesInput.dark !== true && colorSchemesInput.dark),
|
|
83
|
-
palette: theme.palette
|
|
84
|
-
};
|
|
85
|
-
attachColorScheme(theme, 'light', colorSchemesInput.light);
|
|
86
|
-
}
|
|
87
|
-
return theme;
|
|
88
|
-
}
|
|
89
|
-
if (!palette && !('light' in colorSchemesInput) && defaultColorSchemeInput === 'light') {
|
|
90
|
-
colorSchemesInput.light = true;
|
|
91
|
-
}
|
|
92
|
-
return createThemeWithVars({
|
|
93
|
-
...rest,
|
|
94
|
-
colorSchemes: colorSchemesInput,
|
|
95
|
-
defaultColorScheme: defaultColorSchemeInput,
|
|
96
|
-
...(typeof cssVariables !== 'boolean' && cssVariables)
|
|
97
|
-
}, ...args);
|
|
98
|
-
}
|
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import _formatErrorMessage from "@mui/utils/formatMuiErrorMessage";
|
|
2
|
-
import deepmerge from '@mui/utils/deepmerge';
|
|
3
|
-
import styleFunctionSx, { unstable_defaultSxConfig as defaultSxConfig } from '@mui/system/styleFunctionSx';
|
|
4
|
-
import systemCreateTheme from '@mui/system/createTheme';
|
|
5
|
-
import generateUtilityClass from '@mui/utils/generateUtilityClass';
|
|
6
|
-
import createMixins from "./createMixins.js";
|
|
7
|
-
import createPalette from "./createPalette.js";
|
|
8
|
-
import createTypography from "./createTypography.js";
|
|
9
|
-
import shadows from "./shadows.js";
|
|
10
|
-
import createTransitions from "./createTransitions.js";
|
|
11
|
-
import zIndex from "./zIndex.js";
|
|
12
|
-
import { stringifyTheme } from "./stringifyTheme.js";
|
|
13
|
-
function createThemeNoVars(options = {}, ...args) {
|
|
14
|
-
const {
|
|
15
|
-
breakpoints: breakpointsInput,
|
|
16
|
-
mixins: mixinsInput = {},
|
|
17
|
-
spacing: spacingInput,
|
|
18
|
-
palette: paletteInput = {},
|
|
19
|
-
transitions: transitionsInput = {},
|
|
20
|
-
typography: typographyInput = {},
|
|
21
|
-
shape: shapeInput,
|
|
22
|
-
...other
|
|
23
|
-
} = options;
|
|
24
|
-
if (options.vars &&
|
|
25
|
-
// The error should throw only for the root theme creation because user is not allowed to use a custom node `vars`.
|
|
26
|
-
// `generateThemeVars` is the closest identifier for checking that the `options` is a result of `createTheme` with CSS variables so that user can create new theme for nested ThemeProvider.
|
|
27
|
-
options.generateThemeVars === undefined) {
|
|
28
|
-
throw new Error(process.env.NODE_ENV !== "production" ? 'MUI: `vars` is a private field used for CSS variables support.\n' +
|
|
29
|
-
// #host-reference
|
|
30
|
-
'Please use another name or follow the [docs](https://mui.com/material-ui/customization/css-theme-variables/usage/) to enable the feature.' : _formatErrorMessage(20));
|
|
31
|
-
}
|
|
32
|
-
const palette = createPalette(paletteInput);
|
|
33
|
-
const systemTheme = systemCreateTheme(options);
|
|
34
|
-
let muiTheme = deepmerge(systemTheme, {
|
|
35
|
-
mixins: createMixins(systemTheme.breakpoints, mixinsInput),
|
|
36
|
-
palette,
|
|
37
|
-
// Don't use [...shadows] until you've verified its transpiled code is not invoking the iterator protocol.
|
|
38
|
-
shadows: shadows.slice(),
|
|
39
|
-
typography: createTypography(palette, typographyInput),
|
|
40
|
-
transitions: createTransitions(transitionsInput),
|
|
41
|
-
zIndex: {
|
|
42
|
-
...zIndex
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
muiTheme = deepmerge(muiTheme, other);
|
|
46
|
-
muiTheme = args.reduce((acc, argument) => deepmerge(acc, argument), muiTheme);
|
|
47
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
48
|
-
// TODO v6: Refactor to use globalStateClassesMapping from @mui/utils once `readOnly` state class is used in Rating component.
|
|
49
|
-
const stateClasses = ['active', 'checked', 'completed', 'disabled', 'error', 'expanded', 'focused', 'focusVisible', 'required', 'selected'];
|
|
50
|
-
const traverse = (node, component) => {
|
|
51
|
-
let key;
|
|
52
|
-
|
|
53
|
-
// eslint-disable-next-line guard-for-in
|
|
54
|
-
for (key in node) {
|
|
55
|
-
const child = node[key];
|
|
56
|
-
if (stateClasses.includes(key) && Object.keys(child).length > 0) {
|
|
57
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
58
|
-
const stateClass = generateUtilityClass('', key);
|
|
59
|
-
console.error([`MUI: The \`${component}\` component increases ` + `the CSS specificity of the \`${key}\` internal state.`, 'You can not override it like this: ', JSON.stringify(node, null, 2), '', `Instead, you need to use the '&.${stateClass}' syntax:`, JSON.stringify({
|
|
60
|
-
root: {
|
|
61
|
-
[`&.${stateClass}`]: child
|
|
62
|
-
}
|
|
63
|
-
}, null, 2), '', 'https://mui.com/r/state-classes-guide'].join('\n'));
|
|
64
|
-
}
|
|
65
|
-
// Remove the style to prevent global conflicts.
|
|
66
|
-
node[key] = {};
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
Object.keys(muiTheme.components).forEach(component => {
|
|
71
|
-
const styleOverrides = muiTheme.components[component].styleOverrides;
|
|
72
|
-
if (styleOverrides && component.startsWith('Mui')) {
|
|
73
|
-
traverse(styleOverrides, component);
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
muiTheme.unstable_sxConfig = {
|
|
78
|
-
...defaultSxConfig,
|
|
79
|
-
...other?.unstable_sxConfig
|
|
80
|
-
};
|
|
81
|
-
muiTheme.unstable_sx = function sx(props) {
|
|
82
|
-
return styleFunctionSx({
|
|
83
|
-
sx: props,
|
|
84
|
-
theme: this
|
|
85
|
-
});
|
|
86
|
-
};
|
|
87
|
-
muiTheme.toRuntimeSource = stringifyTheme; // for Pigment CSS integration
|
|
88
|
-
|
|
89
|
-
return muiTheme;
|
|
90
|
-
}
|
|
91
|
-
export default createThemeNoVars;
|
|
@@ -1,386 +0,0 @@
|
|
|
1
|
-
import _formatErrorMessage from "@mui/utils/formatMuiErrorMessage";
|
|
2
|
-
import deepmerge from '@mui/utils/deepmerge';
|
|
3
|
-
import { unstable_createGetCssVar as systemCreateGetCssVar, createSpacing } from '@mui/system';
|
|
4
|
-
import { createUnarySpacing } from '@mui/system/spacing';
|
|
5
|
-
import { prepareCssVars, prepareTypographyVars, createGetColorSchemeSelector } from '@mui/system/cssVars';
|
|
6
|
-
import styleFunctionSx, { unstable_defaultSxConfig as defaultSxConfig } from '@mui/system/styleFunctionSx';
|
|
7
|
-
import { private_safeColorChannel as safeColorChannel, private_safeAlpha as safeAlpha, private_safeDarken as safeDarken, private_safeLighten as safeLighten, private_safeEmphasize as safeEmphasize, hslToRgb } from '@mui/system/colorManipulator';
|
|
8
|
-
import createThemeNoVars from "./createThemeNoVars.js";
|
|
9
|
-
import createColorScheme, { getOpacity, getOverlays } from "./createColorScheme.js";
|
|
10
|
-
import defaultShouldSkipGeneratingVar from "./shouldSkipGeneratingVar.js";
|
|
11
|
-
import defaultGetSelector from "./createGetSelector.js";
|
|
12
|
-
import { stringifyTheme } from "./stringifyTheme.js";
|
|
13
|
-
function assignNode(obj, keys) {
|
|
14
|
-
keys.forEach(k => {
|
|
15
|
-
if (!obj[k]) {
|
|
16
|
-
obj[k] = {};
|
|
17
|
-
}
|
|
18
|
-
});
|
|
19
|
-
}
|
|
20
|
-
function setColor(obj, key, defaultValue) {
|
|
21
|
-
if (!obj[key] && defaultValue) {
|
|
22
|
-
obj[key] = defaultValue;
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
function toRgb(color) {
|
|
26
|
-
if (typeof color !== 'string' || !color.startsWith('hsl')) {
|
|
27
|
-
return color;
|
|
28
|
-
}
|
|
29
|
-
return hslToRgb(color);
|
|
30
|
-
}
|
|
31
|
-
function setColorChannel(obj, key) {
|
|
32
|
-
if (!(`${key}Channel` in obj)) {
|
|
33
|
-
// custom channel token is not provided, generate one.
|
|
34
|
-
// if channel token can't be generated, show a warning.
|
|
35
|
-
obj[`${key}Channel`] = safeColorChannel(toRgb(obj[key]), `MUI: Can't create \`palette.${key}Channel\` because \`palette.${key}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().` + '\n' + `To suppress this warning, you need to explicitly provide the \`palette.${key}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`);
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
function getSpacingVal(spacingInput) {
|
|
39
|
-
if (typeof spacingInput === 'number') {
|
|
40
|
-
return `${spacingInput}px`;
|
|
41
|
-
}
|
|
42
|
-
if (typeof spacingInput === 'string' || typeof spacingInput === 'function' || Array.isArray(spacingInput)) {
|
|
43
|
-
return spacingInput;
|
|
44
|
-
}
|
|
45
|
-
return '8px';
|
|
46
|
-
}
|
|
47
|
-
const silent = fn => {
|
|
48
|
-
try {
|
|
49
|
-
return fn();
|
|
50
|
-
} catch (error) {
|
|
51
|
-
// ignore error
|
|
52
|
-
}
|
|
53
|
-
return undefined;
|
|
54
|
-
};
|
|
55
|
-
export const createGetCssVar = (cssVarPrefix = 'mui') => systemCreateGetCssVar(cssVarPrefix);
|
|
56
|
-
function attachColorScheme(colorSchemes, scheme, restTheme, colorScheme) {
|
|
57
|
-
if (!scheme) {
|
|
58
|
-
return undefined;
|
|
59
|
-
}
|
|
60
|
-
scheme = scheme === true ? {} : scheme;
|
|
61
|
-
const mode = colorScheme === 'dark' ? 'dark' : 'light';
|
|
62
|
-
if (!restTheme) {
|
|
63
|
-
colorSchemes[colorScheme] = createColorScheme({
|
|
64
|
-
...scheme,
|
|
65
|
-
palette: {
|
|
66
|
-
mode,
|
|
67
|
-
...scheme?.palette
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
return undefined;
|
|
71
|
-
}
|
|
72
|
-
const {
|
|
73
|
-
palette,
|
|
74
|
-
...muiTheme
|
|
75
|
-
} = createThemeNoVars({
|
|
76
|
-
...restTheme,
|
|
77
|
-
palette: {
|
|
78
|
-
mode,
|
|
79
|
-
...scheme?.palette
|
|
80
|
-
}
|
|
81
|
-
});
|
|
82
|
-
colorSchemes[colorScheme] = {
|
|
83
|
-
...scheme,
|
|
84
|
-
palette,
|
|
85
|
-
opacity: {
|
|
86
|
-
...getOpacity(mode),
|
|
87
|
-
...scheme?.opacity
|
|
88
|
-
},
|
|
89
|
-
overlays: scheme?.overlays || getOverlays(mode)
|
|
90
|
-
};
|
|
91
|
-
return muiTheme;
|
|
92
|
-
}
|
|
93
|
-
|
|
94
|
-
/**
|
|
95
|
-
* A default `createThemeWithVars` comes with a single color scheme, either `light` or `dark` based on the `defaultColorScheme`.
|
|
96
|
-
* This is better suited for apps that only need a single color scheme.
|
|
97
|
-
*
|
|
98
|
-
* To enable built-in `light` and `dark` color schemes, either:
|
|
99
|
-
* 1. provide a `colorSchemeSelector` to define how the color schemes will change.
|
|
100
|
-
* 2. provide `colorSchemes.dark` will set `colorSchemeSelector: 'media'` by default.
|
|
101
|
-
*/
|
|
102
|
-
export default function createThemeWithVars(options = {}, ...args) {
|
|
103
|
-
const {
|
|
104
|
-
colorSchemes: colorSchemesInput = {
|
|
105
|
-
light: true
|
|
106
|
-
},
|
|
107
|
-
defaultColorScheme: defaultColorSchemeInput,
|
|
108
|
-
disableCssColorScheme = false,
|
|
109
|
-
cssVarPrefix = 'mui',
|
|
110
|
-
shouldSkipGeneratingVar = defaultShouldSkipGeneratingVar,
|
|
111
|
-
colorSchemeSelector: selector = colorSchemesInput.light && colorSchemesInput.dark ? 'media' : undefined,
|
|
112
|
-
rootSelector = ':root',
|
|
113
|
-
...input
|
|
114
|
-
} = options;
|
|
115
|
-
const firstColorScheme = Object.keys(colorSchemesInput)[0];
|
|
116
|
-
const defaultColorScheme = defaultColorSchemeInput || (colorSchemesInput.light && firstColorScheme !== 'light' ? 'light' : firstColorScheme);
|
|
117
|
-
const getCssVar = createGetCssVar(cssVarPrefix);
|
|
118
|
-
const {
|
|
119
|
-
[defaultColorScheme]: defaultSchemeInput,
|
|
120
|
-
light: builtInLight,
|
|
121
|
-
dark: builtInDark,
|
|
122
|
-
...customColorSchemes
|
|
123
|
-
} = colorSchemesInput;
|
|
124
|
-
const colorSchemes = {
|
|
125
|
-
...customColorSchemes
|
|
126
|
-
};
|
|
127
|
-
let defaultScheme = defaultSchemeInput;
|
|
128
|
-
|
|
129
|
-
// For built-in light and dark color schemes, ensure that the value is valid if they are the default color scheme.
|
|
130
|
-
if (defaultColorScheme === 'dark' && !('dark' in colorSchemesInput) || defaultColorScheme === 'light' && !('light' in colorSchemesInput)) {
|
|
131
|
-
defaultScheme = true;
|
|
132
|
-
}
|
|
133
|
-
if (!defaultScheme) {
|
|
134
|
-
throw new Error(process.env.NODE_ENV !== "production" ? `MUI: The \`colorSchemes.${defaultColorScheme}\` option is either missing or invalid.` : _formatErrorMessage(21, defaultColorScheme));
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
// Create the palette for the default color scheme, either `light`, `dark`, or custom color scheme.
|
|
138
|
-
const muiTheme = attachColorScheme(colorSchemes, defaultScheme, input, defaultColorScheme);
|
|
139
|
-
if (builtInLight && !colorSchemes.light) {
|
|
140
|
-
attachColorScheme(colorSchemes, builtInLight, undefined, 'light');
|
|
141
|
-
}
|
|
142
|
-
if (builtInDark && !colorSchemes.dark) {
|
|
143
|
-
attachColorScheme(colorSchemes, builtInDark, undefined, 'dark');
|
|
144
|
-
}
|
|
145
|
-
let theme = {
|
|
146
|
-
defaultColorScheme,
|
|
147
|
-
...muiTheme,
|
|
148
|
-
cssVarPrefix,
|
|
149
|
-
colorSchemeSelector: selector,
|
|
150
|
-
rootSelector,
|
|
151
|
-
getCssVar,
|
|
152
|
-
colorSchemes,
|
|
153
|
-
font: {
|
|
154
|
-
...prepareTypographyVars(muiTheme.typography),
|
|
155
|
-
...muiTheme.font
|
|
156
|
-
},
|
|
157
|
-
spacing: getSpacingVal(input.spacing)
|
|
158
|
-
};
|
|
159
|
-
Object.keys(theme.colorSchemes).forEach(key => {
|
|
160
|
-
const palette = theme.colorSchemes[key].palette;
|
|
161
|
-
const setCssVarColor = cssVar => {
|
|
162
|
-
const tokens = cssVar.split('-');
|
|
163
|
-
const color = tokens[1];
|
|
164
|
-
const colorToken = tokens[2];
|
|
165
|
-
return getCssVar(cssVar, palette[color][colorToken]);
|
|
166
|
-
};
|
|
167
|
-
|
|
168
|
-
// attach black & white channels to common node
|
|
169
|
-
if (palette.mode === 'light') {
|
|
170
|
-
setColor(palette.common, 'background', '#fff');
|
|
171
|
-
setColor(palette.common, 'onBackground', '#000');
|
|
172
|
-
}
|
|
173
|
-
if (palette.mode === 'dark') {
|
|
174
|
-
setColor(palette.common, 'background', '#000');
|
|
175
|
-
setColor(palette.common, 'onBackground', '#fff');
|
|
176
|
-
}
|
|
177
|
-
|
|
178
|
-
// assign component variables
|
|
179
|
-
assignNode(palette, ['Alert', 'AppBar', 'Avatar', 'Button', 'Chip', 'FilledInput', 'LinearProgress', 'Skeleton', 'Slider', 'SnackbarContent', 'SpeedDialAction', 'StepConnector', 'StepContent', 'Switch', 'TableCell', 'Tooltip']);
|
|
180
|
-
if (palette.mode === 'light') {
|
|
181
|
-
setColor(palette.Alert, 'errorColor', safeDarken(palette.error.light, 0.6));
|
|
182
|
-
setColor(palette.Alert, 'infoColor', safeDarken(palette.info.light, 0.6));
|
|
183
|
-
setColor(palette.Alert, 'successColor', safeDarken(palette.success.light, 0.6));
|
|
184
|
-
setColor(palette.Alert, 'warningColor', safeDarken(palette.warning.light, 0.6));
|
|
185
|
-
setColor(palette.Alert, 'errorFilledBg', setCssVarColor('palette-error-main'));
|
|
186
|
-
setColor(palette.Alert, 'infoFilledBg', setCssVarColor('palette-info-main'));
|
|
187
|
-
setColor(palette.Alert, 'successFilledBg', setCssVarColor('palette-success-main'));
|
|
188
|
-
setColor(palette.Alert, 'warningFilledBg', setCssVarColor('palette-warning-main'));
|
|
189
|
-
setColor(palette.Alert, 'errorFilledColor', silent(() => palette.getContrastText(palette.error.main)));
|
|
190
|
-
setColor(palette.Alert, 'infoFilledColor', silent(() => palette.getContrastText(palette.info.main)));
|
|
191
|
-
setColor(palette.Alert, 'successFilledColor', silent(() => palette.getContrastText(palette.success.main)));
|
|
192
|
-
setColor(palette.Alert, 'warningFilledColor', silent(() => palette.getContrastText(palette.warning.main)));
|
|
193
|
-
setColor(palette.Alert, 'errorStandardBg', safeLighten(palette.error.light, 0.9));
|
|
194
|
-
setColor(palette.Alert, 'infoStandardBg', safeLighten(palette.info.light, 0.9));
|
|
195
|
-
setColor(palette.Alert, 'successStandardBg', safeLighten(palette.success.light, 0.9));
|
|
196
|
-
setColor(palette.Alert, 'warningStandardBg', safeLighten(palette.warning.light, 0.9));
|
|
197
|
-
setColor(palette.Alert, 'errorIconColor', setCssVarColor('palette-error-main'));
|
|
198
|
-
setColor(palette.Alert, 'infoIconColor', setCssVarColor('palette-info-main'));
|
|
199
|
-
setColor(palette.Alert, 'successIconColor', setCssVarColor('palette-success-main'));
|
|
200
|
-
setColor(palette.Alert, 'warningIconColor', setCssVarColor('palette-warning-main'));
|
|
201
|
-
setColor(palette.AppBar, 'defaultBg', setCssVarColor('palette-grey-100'));
|
|
202
|
-
setColor(palette.Avatar, 'defaultBg', setCssVarColor('palette-grey-400'));
|
|
203
|
-
setColor(palette.Button, 'inheritContainedBg', setCssVarColor('palette-grey-300'));
|
|
204
|
-
setColor(palette.Button, 'inheritContainedHoverBg', setCssVarColor('palette-grey-A100'));
|
|
205
|
-
setColor(palette.Chip, 'defaultBorder', setCssVarColor('palette-grey-400'));
|
|
206
|
-
setColor(palette.Chip, 'defaultAvatarColor', setCssVarColor('palette-grey-700'));
|
|
207
|
-
setColor(palette.Chip, 'defaultIconColor', setCssVarColor('palette-grey-700'));
|
|
208
|
-
setColor(palette.FilledInput, 'bg', 'rgba(0, 0, 0, 0.06)');
|
|
209
|
-
setColor(palette.FilledInput, 'hoverBg', 'rgba(0, 0, 0, 0.09)');
|
|
210
|
-
setColor(palette.FilledInput, 'disabledBg', 'rgba(0, 0, 0, 0.12)');
|
|
211
|
-
setColor(palette.LinearProgress, 'primaryBg', safeLighten(palette.primary.main, 0.62));
|
|
212
|
-
setColor(palette.LinearProgress, 'secondaryBg', safeLighten(palette.secondary.main, 0.62));
|
|
213
|
-
setColor(palette.LinearProgress, 'errorBg', safeLighten(palette.error.main, 0.62));
|
|
214
|
-
setColor(palette.LinearProgress, 'infoBg', safeLighten(palette.info.main, 0.62));
|
|
215
|
-
setColor(palette.LinearProgress, 'successBg', safeLighten(palette.success.main, 0.62));
|
|
216
|
-
setColor(palette.LinearProgress, 'warningBg', safeLighten(palette.warning.main, 0.62));
|
|
217
|
-
setColor(palette.Skeleton, 'bg', `rgba(${setCssVarColor('palette-text-primaryChannel')} / 0.11)`);
|
|
218
|
-
setColor(palette.Slider, 'primaryTrack', safeLighten(palette.primary.main, 0.62));
|
|
219
|
-
setColor(palette.Slider, 'secondaryTrack', safeLighten(palette.secondary.main, 0.62));
|
|
220
|
-
setColor(palette.Slider, 'errorTrack', safeLighten(palette.error.main, 0.62));
|
|
221
|
-
setColor(palette.Slider, 'infoTrack', safeLighten(palette.info.main, 0.62));
|
|
222
|
-
setColor(palette.Slider, 'successTrack', safeLighten(palette.success.main, 0.62));
|
|
223
|
-
setColor(palette.Slider, 'warningTrack', safeLighten(palette.warning.main, 0.62));
|
|
224
|
-
const snackbarContentBackground = safeEmphasize(palette.background.default, 0.8);
|
|
225
|
-
setColor(palette.SnackbarContent, 'bg', snackbarContentBackground);
|
|
226
|
-
setColor(palette.SnackbarContent, 'color', silent(() => palette.getContrastText(snackbarContentBackground)));
|
|
227
|
-
setColor(palette.SpeedDialAction, 'fabHoverBg', safeEmphasize(palette.background.paper, 0.15));
|
|
228
|
-
setColor(palette.StepConnector, 'border', setCssVarColor('palette-grey-400'));
|
|
229
|
-
setColor(palette.StepContent, 'border', setCssVarColor('palette-grey-400'));
|
|
230
|
-
setColor(palette.Switch, 'defaultColor', setCssVarColor('palette-common-white'));
|
|
231
|
-
setColor(palette.Switch, 'defaultDisabledColor', setCssVarColor('palette-grey-100'));
|
|
232
|
-
setColor(palette.Switch, 'primaryDisabledColor', safeLighten(palette.primary.main, 0.62));
|
|
233
|
-
setColor(palette.Switch, 'secondaryDisabledColor', safeLighten(palette.secondary.main, 0.62));
|
|
234
|
-
setColor(palette.Switch, 'errorDisabledColor', safeLighten(palette.error.main, 0.62));
|
|
235
|
-
setColor(palette.Switch, 'infoDisabledColor', safeLighten(palette.info.main, 0.62));
|
|
236
|
-
setColor(palette.Switch, 'successDisabledColor', safeLighten(palette.success.main, 0.62));
|
|
237
|
-
setColor(palette.Switch, 'warningDisabledColor', safeLighten(palette.warning.main, 0.62));
|
|
238
|
-
setColor(palette.TableCell, 'border', safeLighten(safeAlpha(palette.divider, 1), 0.88));
|
|
239
|
-
setColor(palette.Tooltip, 'bg', safeAlpha(palette.grey[700], 0.92));
|
|
240
|
-
}
|
|
241
|
-
if (palette.mode === 'dark') {
|
|
242
|
-
setColor(palette.Alert, 'errorColor', safeLighten(palette.error.light, 0.6));
|
|
243
|
-
setColor(palette.Alert, 'infoColor', safeLighten(palette.info.light, 0.6));
|
|
244
|
-
setColor(palette.Alert, 'successColor', safeLighten(palette.success.light, 0.6));
|
|
245
|
-
setColor(palette.Alert, 'warningColor', safeLighten(palette.warning.light, 0.6));
|
|
246
|
-
setColor(palette.Alert, 'errorFilledBg', setCssVarColor('palette-error-dark'));
|
|
247
|
-
setColor(palette.Alert, 'infoFilledBg', setCssVarColor('palette-info-dark'));
|
|
248
|
-
setColor(palette.Alert, 'successFilledBg', setCssVarColor('palette-success-dark'));
|
|
249
|
-
setColor(palette.Alert, 'warningFilledBg', setCssVarColor('palette-warning-dark'));
|
|
250
|
-
setColor(palette.Alert, 'errorFilledColor', silent(() => palette.getContrastText(palette.error.dark)));
|
|
251
|
-
setColor(palette.Alert, 'infoFilledColor', silent(() => palette.getContrastText(palette.info.dark)));
|
|
252
|
-
setColor(palette.Alert, 'successFilledColor', silent(() => palette.getContrastText(palette.success.dark)));
|
|
253
|
-
setColor(palette.Alert, 'warningFilledColor', silent(() => palette.getContrastText(palette.warning.dark)));
|
|
254
|
-
setColor(palette.Alert, 'errorStandardBg', safeDarken(palette.error.light, 0.9));
|
|
255
|
-
setColor(palette.Alert, 'infoStandardBg', safeDarken(palette.info.light, 0.9));
|
|
256
|
-
setColor(palette.Alert, 'successStandardBg', safeDarken(palette.success.light, 0.9));
|
|
257
|
-
setColor(palette.Alert, 'warningStandardBg', safeDarken(palette.warning.light, 0.9));
|
|
258
|
-
setColor(palette.Alert, 'errorIconColor', setCssVarColor('palette-error-main'));
|
|
259
|
-
setColor(palette.Alert, 'infoIconColor', setCssVarColor('palette-info-main'));
|
|
260
|
-
setColor(palette.Alert, 'successIconColor', setCssVarColor('palette-success-main'));
|
|
261
|
-
setColor(palette.Alert, 'warningIconColor', setCssVarColor('palette-warning-main'));
|
|
262
|
-
setColor(palette.AppBar, 'defaultBg', setCssVarColor('palette-grey-900'));
|
|
263
|
-
setColor(palette.AppBar, 'darkBg', setCssVarColor('palette-background-paper')); // specific for dark mode
|
|
264
|
-
setColor(palette.AppBar, 'darkColor', setCssVarColor('palette-text-primary')); // specific for dark mode
|
|
265
|
-
setColor(palette.Avatar, 'defaultBg', setCssVarColor('palette-grey-600'));
|
|
266
|
-
setColor(palette.Button, 'inheritContainedBg', setCssVarColor('palette-grey-800'));
|
|
267
|
-
setColor(palette.Button, 'inheritContainedHoverBg', setCssVarColor('palette-grey-700'));
|
|
268
|
-
setColor(palette.Chip, 'defaultBorder', setCssVarColor('palette-grey-700'));
|
|
269
|
-
setColor(palette.Chip, 'defaultAvatarColor', setCssVarColor('palette-grey-300'));
|
|
270
|
-
setColor(palette.Chip, 'defaultIconColor', setCssVarColor('palette-grey-300'));
|
|
271
|
-
setColor(palette.FilledInput, 'bg', 'rgba(255, 255, 255, 0.09)');
|
|
272
|
-
setColor(palette.FilledInput, 'hoverBg', 'rgba(255, 255, 255, 0.13)');
|
|
273
|
-
setColor(palette.FilledInput, 'disabledBg', 'rgba(255, 255, 255, 0.12)');
|
|
274
|
-
setColor(palette.LinearProgress, 'primaryBg', safeDarken(palette.primary.main, 0.5));
|
|
275
|
-
setColor(palette.LinearProgress, 'secondaryBg', safeDarken(palette.secondary.main, 0.5));
|
|
276
|
-
setColor(palette.LinearProgress, 'errorBg', safeDarken(palette.error.main, 0.5));
|
|
277
|
-
setColor(palette.LinearProgress, 'infoBg', safeDarken(palette.info.main, 0.5));
|
|
278
|
-
setColor(palette.LinearProgress, 'successBg', safeDarken(palette.success.main, 0.5));
|
|
279
|
-
setColor(palette.LinearProgress, 'warningBg', safeDarken(palette.warning.main, 0.5));
|
|
280
|
-
setColor(palette.Skeleton, 'bg', `rgba(${setCssVarColor('palette-text-primaryChannel')} / 0.13)`);
|
|
281
|
-
setColor(palette.Slider, 'primaryTrack', safeDarken(palette.primary.main, 0.5));
|
|
282
|
-
setColor(palette.Slider, 'secondaryTrack', safeDarken(palette.secondary.main, 0.5));
|
|
283
|
-
setColor(palette.Slider, 'errorTrack', safeDarken(palette.error.main, 0.5));
|
|
284
|
-
setColor(palette.Slider, 'infoTrack', safeDarken(palette.info.main, 0.5));
|
|
285
|
-
setColor(palette.Slider, 'successTrack', safeDarken(palette.success.main, 0.5));
|
|
286
|
-
setColor(palette.Slider, 'warningTrack', safeDarken(palette.warning.main, 0.5));
|
|
287
|
-
const snackbarContentBackground = safeEmphasize(palette.background.default, 0.98);
|
|
288
|
-
setColor(palette.SnackbarContent, 'bg', snackbarContentBackground);
|
|
289
|
-
setColor(palette.SnackbarContent, 'color', silent(() => palette.getContrastText(snackbarContentBackground)));
|
|
290
|
-
setColor(palette.SpeedDialAction, 'fabHoverBg', safeEmphasize(palette.background.paper, 0.15));
|
|
291
|
-
setColor(palette.StepConnector, 'border', setCssVarColor('palette-grey-600'));
|
|
292
|
-
setColor(palette.StepContent, 'border', setCssVarColor('palette-grey-600'));
|
|
293
|
-
setColor(palette.Switch, 'defaultColor', setCssVarColor('palette-grey-300'));
|
|
294
|
-
setColor(palette.Switch, 'defaultDisabledColor', setCssVarColor('palette-grey-600'));
|
|
295
|
-
setColor(palette.Switch, 'primaryDisabledColor', safeDarken(palette.primary.main, 0.55));
|
|
296
|
-
setColor(palette.Switch, 'secondaryDisabledColor', safeDarken(palette.secondary.main, 0.55));
|
|
297
|
-
setColor(palette.Switch, 'errorDisabledColor', safeDarken(palette.error.main, 0.55));
|
|
298
|
-
setColor(palette.Switch, 'infoDisabledColor', safeDarken(palette.info.main, 0.55));
|
|
299
|
-
setColor(palette.Switch, 'successDisabledColor', safeDarken(palette.success.main, 0.55));
|
|
300
|
-
setColor(palette.Switch, 'warningDisabledColor', safeDarken(palette.warning.main, 0.55));
|
|
301
|
-
setColor(palette.TableCell, 'border', safeDarken(safeAlpha(palette.divider, 1), 0.68));
|
|
302
|
-
setColor(palette.Tooltip, 'bg', safeAlpha(palette.grey[700], 0.92));
|
|
303
|
-
}
|
|
304
|
-
|
|
305
|
-
// MUI X - DataGrid needs this token.
|
|
306
|
-
setColorChannel(palette.background, 'default');
|
|
307
|
-
|
|
308
|
-
// added for consistency with the `background.default` token
|
|
309
|
-
setColorChannel(palette.background, 'paper');
|
|
310
|
-
setColorChannel(palette.common, 'background');
|
|
311
|
-
setColorChannel(palette.common, 'onBackground');
|
|
312
|
-
setColorChannel(palette, 'divider');
|
|
313
|
-
Object.keys(palette).forEach(color => {
|
|
314
|
-
const colors = palette[color];
|
|
315
|
-
|
|
316
|
-
// The default palettes (primary, secondary, error, info, success, and warning) errors are handled by the above `createTheme(...)`.
|
|
317
|
-
|
|
318
|
-
if (color !== 'tonalOffset' && colors && typeof colors === 'object') {
|
|
319
|
-
// Silent the error for custom palettes.
|
|
320
|
-
if (colors.main) {
|
|
321
|
-
setColor(palette[color], 'mainChannel', safeColorChannel(toRgb(colors.main)));
|
|
322
|
-
}
|
|
323
|
-
if (colors.light) {
|
|
324
|
-
setColor(palette[color], 'lightChannel', safeColorChannel(toRgb(colors.light)));
|
|
325
|
-
}
|
|
326
|
-
if (colors.dark) {
|
|
327
|
-
setColor(palette[color], 'darkChannel', safeColorChannel(toRgb(colors.dark)));
|
|
328
|
-
}
|
|
329
|
-
if (colors.contrastText) {
|
|
330
|
-
setColor(palette[color], 'contrastTextChannel', safeColorChannel(toRgb(colors.contrastText)));
|
|
331
|
-
}
|
|
332
|
-
if (color === 'text') {
|
|
333
|
-
// Text colors: text.primary, text.secondary
|
|
334
|
-
setColorChannel(palette[color], 'primary');
|
|
335
|
-
setColorChannel(palette[color], 'secondary');
|
|
336
|
-
}
|
|
337
|
-
if (color === 'action') {
|
|
338
|
-
// Action colors: action.active, action.selected
|
|
339
|
-
if (colors.active) {
|
|
340
|
-
setColorChannel(palette[color], 'active');
|
|
341
|
-
}
|
|
342
|
-
if (colors.selected) {
|
|
343
|
-
setColorChannel(palette[color], 'selected');
|
|
344
|
-
}
|
|
345
|
-
}
|
|
346
|
-
}
|
|
347
|
-
});
|
|
348
|
-
});
|
|
349
|
-
theme = args.reduce((acc, argument) => deepmerge(acc, argument), theme);
|
|
350
|
-
const parserConfig = {
|
|
351
|
-
prefix: cssVarPrefix,
|
|
352
|
-
disableCssColorScheme,
|
|
353
|
-
shouldSkipGeneratingVar,
|
|
354
|
-
getSelector: defaultGetSelector(theme)
|
|
355
|
-
};
|
|
356
|
-
const {
|
|
357
|
-
vars,
|
|
358
|
-
generateThemeVars,
|
|
359
|
-
generateStyleSheets
|
|
360
|
-
} = prepareCssVars(theme, parserConfig);
|
|
361
|
-
theme.vars = vars;
|
|
362
|
-
Object.entries(theme.colorSchemes[theme.defaultColorScheme]).forEach(([key, value]) => {
|
|
363
|
-
theme[key] = value;
|
|
364
|
-
});
|
|
365
|
-
theme.generateThemeVars = generateThemeVars;
|
|
366
|
-
theme.generateStyleSheets = generateStyleSheets;
|
|
367
|
-
theme.generateSpacing = function generateSpacing() {
|
|
368
|
-
return createSpacing(input.spacing, createUnarySpacing(this));
|
|
369
|
-
};
|
|
370
|
-
theme.getColorSchemeSelector = createGetColorSchemeSelector(selector);
|
|
371
|
-
theme.spacing = theme.generateSpacing();
|
|
372
|
-
theme.shouldSkipGeneratingVar = shouldSkipGeneratingVar;
|
|
373
|
-
theme.unstable_sxConfig = {
|
|
374
|
-
...defaultSxConfig,
|
|
375
|
-
...input?.unstable_sxConfig
|
|
376
|
-
};
|
|
377
|
-
theme.unstable_sx = function sx(props) {
|
|
378
|
-
return styleFunctionSx({
|
|
379
|
-
sx: props,
|
|
380
|
-
theme: this
|
|
381
|
-
});
|
|
382
|
-
};
|
|
383
|
-
theme.toRuntimeSource = stringifyTheme; // for Pigment CSS integration
|
|
384
|
-
|
|
385
|
-
return theme;
|
|
386
|
-
}
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
// Follow https://material.google.com/motion/duration-easing.html#duration-easing-natural-easing-curves
|
|
2
|
-
// to learn the context in which each easing should be used.
|
|
3
|
-
export const easing = {
|
|
4
|
-
// This is the most common easing curve.
|
|
5
|
-
easeInOut: 'cubic-bezier(0.4, 0, 0.2, 1)',
|
|
6
|
-
// Objects enter the screen at full velocity from off-screen and
|
|
7
|
-
// slowly decelerate to a resting point.
|
|
8
|
-
easeOut: 'cubic-bezier(0.0, 0, 0.2, 1)',
|
|
9
|
-
// Objects leave the screen at full velocity. They do not decelerate when off-screen.
|
|
10
|
-
easeIn: 'cubic-bezier(0.4, 0, 1, 1)',
|
|
11
|
-
// The sharp curve is used by objects that may return to the screen at any time.
|
|
12
|
-
sharp: 'cubic-bezier(0.4, 0, 0.6, 1)'
|
|
13
|
-
};
|
|
14
|
-
|
|
15
|
-
// Follow https://m2.material.io/guidelines/motion/duration-easing.html#duration-easing-common-durations
|
|
16
|
-
// to learn when use what timing
|
|
17
|
-
export const duration = {
|
|
18
|
-
shortest: 150,
|
|
19
|
-
shorter: 200,
|
|
20
|
-
short: 250,
|
|
21
|
-
// most basic recommended timing
|
|
22
|
-
standard: 300,
|
|
23
|
-
// this is to be used in complex animations
|
|
24
|
-
complex: 375,
|
|
25
|
-
// recommended when something is entering screen
|
|
26
|
-
enteringScreen: 225,
|
|
27
|
-
// recommended when something is leaving screen
|
|
28
|
-
leavingScreen: 195
|
|
29
|
-
};
|
|
30
|
-
function formatMs(milliseconds) {
|
|
31
|
-
return `${Math.round(milliseconds)}ms`;
|
|
32
|
-
}
|
|
33
|
-
function getAutoHeightDuration(height) {
|
|
34
|
-
if (!height) {
|
|
35
|
-
return 0;
|
|
36
|
-
}
|
|
37
|
-
const constant = height / 36;
|
|
38
|
-
|
|
39
|
-
// https://www.desmos.com/calculator/vbrp3ggqet
|
|
40
|
-
return Math.min(Math.round((4 + 15 * constant ** 0.25 + constant / 5) * 10), 3000);
|
|
41
|
-
}
|
|
42
|
-
export default function createTransitions(inputTransitions) {
|
|
43
|
-
const mergedEasing = {
|
|
44
|
-
...easing,
|
|
45
|
-
...inputTransitions.easing
|
|
46
|
-
};
|
|
47
|
-
const mergedDuration = {
|
|
48
|
-
...duration,
|
|
49
|
-
...inputTransitions.duration
|
|
50
|
-
};
|
|
51
|
-
const create = (props = ['all'], options = {}) => {
|
|
52
|
-
const {
|
|
53
|
-
duration: durationOption = mergedDuration.standard,
|
|
54
|
-
easing: easingOption = mergedEasing.easeInOut,
|
|
55
|
-
delay = 0,
|
|
56
|
-
...other
|
|
57
|
-
} = options;
|
|
58
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
59
|
-
const isString = value => typeof value === 'string';
|
|
60
|
-
const isNumber = value => !Number.isNaN(parseFloat(value));
|
|
61
|
-
if (!isString(props) && !Array.isArray(props)) {
|
|
62
|
-
console.error('MUI: Argument "props" must be a string or Array.');
|
|
63
|
-
}
|
|
64
|
-
if (!isNumber(durationOption) && !isString(durationOption)) {
|
|
65
|
-
console.error(`MUI: Argument "duration" must be a number or a string but found ${durationOption}.`);
|
|
66
|
-
}
|
|
67
|
-
if (!isString(easingOption)) {
|
|
68
|
-
console.error('MUI: Argument "easing" must be a string.');
|
|
69
|
-
}
|
|
70
|
-
if (!isNumber(delay) && !isString(delay)) {
|
|
71
|
-
console.error('MUI: Argument "delay" must be a number or a string.');
|
|
72
|
-
}
|
|
73
|
-
if (typeof options !== 'object') {
|
|
74
|
-
console.error(['MUI: Secong argument of transition.create must be an object.', "Arguments should be either `create('prop1', options)` or `create(['prop1', 'prop2'], options)`"].join('\n'));
|
|
75
|
-
}
|
|
76
|
-
if (Object.keys(other).length !== 0) {
|
|
77
|
-
console.error(`MUI: Unrecognized argument(s) [${Object.keys(other).join(',')}].`);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
return (Array.isArray(props) ? props : [props]).map(animatedProp => `${animatedProp} ${typeof durationOption === 'string' ? durationOption : formatMs(durationOption)} ${easingOption} ${typeof delay === 'string' ? delay : formatMs(delay)}`).join(',');
|
|
81
|
-
};
|
|
82
|
-
return {
|
|
83
|
-
getAutoHeightDuration,
|
|
84
|
-
create,
|
|
85
|
-
...inputTransitions,
|
|
86
|
-
easing: mergedEasing,
|
|
87
|
-
duration: mergedDuration
|
|
88
|
-
};
|
|
89
|
-
}
|