@mui/material 5.8.5 → 5.8.6

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.
Files changed (182) hide show
  1. package/Accordion/accordionClasses.d.ts +18 -18
  2. package/AccordionActions/accordionActionsClasses.d.ts +10 -10
  3. package/AccordionDetails/accordionDetailsClasses.d.ts +8 -8
  4. package/AccordionSummary/accordionSummaryClasses.d.ts +22 -22
  5. package/Alert/Alert.js +19 -11
  6. package/Alert/alertClasses.d.ts +44 -44
  7. package/AlertTitle/alertTitleClasses.d.ts +8 -8
  8. package/AppBar/appBarClasses.d.ts +28 -28
  9. package/Autocomplete/autocompleteClasses.d.ts +54 -54
  10. package/Avatar/avatarClasses.d.ts +20 -20
  11. package/AvatarGroup/avatarGroupClasses.d.ts +10 -10
  12. package/Backdrop/backdropClasses.d.ts +10 -10
  13. package/Badge/badgeClasses.d.ts +56 -56
  14. package/BottomNavigation/BottomNavigation.js +0 -0
  15. package/BottomNavigation/bottomNavigationClasses.d.ts +8 -8
  16. package/BottomNavigationAction/bottomNavigationActionClasses.d.ts +14 -14
  17. package/Breadcrumbs/breadcrumbsClasses.d.ts +14 -14
  18. package/Button/buttonClasses.d.ts +100 -100
  19. package/ButtonBase/buttonBaseClasses.d.ts +12 -12
  20. package/ButtonBase/touchRippleClasses.d.ts +20 -20
  21. package/ButtonGroup/ButtonGroupContext.d.ts +18 -18
  22. package/ButtonGroup/buttonGroupClasses.d.ts +58 -58
  23. package/CHANGELOG.md +65 -0
  24. package/Card/cardClasses.d.ts +8 -8
  25. package/CardActionArea/cardActionAreaClasses.d.ts +12 -12
  26. package/CardActions/cardActionsClasses.d.ts +10 -10
  27. package/CardContent/cardContentClasses.d.ts +8 -8
  28. package/CardHeader/cardHeaderClasses.d.ts +18 -18
  29. package/CardMedia/cardMediaClasses.d.ts +12 -12
  30. package/Checkbox/checkboxClasses.d.ts +18 -18
  31. package/Chip/chipClasses.d.ts +80 -80
  32. package/CircularProgress/circularProgressClasses.d.ts +26 -26
  33. package/ClickAwayListener/index.d.ts +2 -2
  34. package/Collapse/collapseClasses.d.ts +18 -18
  35. package/Container/containerClasses.d.ts +6 -6
  36. package/Dialog/DialogContext.d.ts +6 -6
  37. package/Dialog/dialogClasses.d.ts +36 -36
  38. package/DialogActions/dialogActionsClasses.d.ts +10 -10
  39. package/DialogContent/dialogContentClasses.d.ts +10 -10
  40. package/DialogContentText/dialogContentTextClasses.d.ts +8 -8
  41. package/DialogTitle/dialogTitleClasses.d.ts +8 -8
  42. package/Divider/dividerClasses.d.ts +34 -34
  43. package/Drawer/drawerClasses.d.ts +30 -30
  44. package/Fab/fabClasses.d.ts +26 -26
  45. package/FilledInput/FilledInput.js +1 -1
  46. package/FilledInput/filledInputClasses.d.ts +40 -40
  47. package/FormControl/formControlClasses.d.ts +14 -14
  48. package/FormControlLabel/formControlLabelClasses.d.ts +20 -20
  49. package/FormGroup/formGroupClasses.d.ts +12 -12
  50. package/FormHelperText/formHelperTextClasses.d.ts +22 -22
  51. package/FormLabel/formLabelClasses.d.ts +22 -22
  52. package/Grid/gridClasses.d.ts +48 -48
  53. package/Icon/iconClasses.d.ts +24 -24
  54. package/IconButton/iconButtonClasses.d.ts +26 -26
  55. package/ImageList/imageListClasses.d.ts +16 -16
  56. package/ImageListItem/imageListItemClasses.d.ts +18 -18
  57. package/ImageListItemBar/imageListItemBarClasses.d.ts +30 -30
  58. package/Input/Input.js +1 -1
  59. package/Input/inputClasses.d.ts +34 -34
  60. package/InputAdornment/inputAdornmentClasses.d.ts +24 -24
  61. package/InputBase/inputBaseClasses.d.ts +44 -44
  62. package/InputLabel/inputLabelClasses.d.ts +32 -32
  63. package/LinearProgress/linearProgressClasses.d.ts +42 -42
  64. package/Link/getTextDecoration.d.ts +15 -15
  65. package/Link/linkClasses.d.ts +18 -18
  66. package/List/listClasses.d.ts +14 -14
  67. package/ListItem/listItemClasses.d.ts +30 -30
  68. package/ListItemAvatar/listItemAvatarClasses.d.ts +10 -10
  69. package/ListItemButton/listItemButtonClasses.d.ts +22 -22
  70. package/ListItemIcon/listItemIconClasses.d.ts +10 -10
  71. package/ListItemSecondaryAction/listItemSecondaryActionClasses.d.ts +10 -10
  72. package/ListItemText/listItemTextClasses.d.ts +18 -18
  73. package/ListSubheader/listSubheaderClasses.d.ts +18 -18
  74. package/Menu/menuClasses.d.ts +12 -12
  75. package/MenuItem/menuItemClasses.d.ts +20 -20
  76. package/MobileStepper/mobileStepperClasses.d.ts +22 -22
  77. package/NativeSelect/nativeSelectClasses.d.ts +32 -32
  78. package/OutlinedInput/OutlinedInput.js +15 -0
  79. package/OutlinedInput/outlinedInputClasses.d.ts +36 -36
  80. package/Pagination/paginationClasses.d.ts +14 -14
  81. package/PaginationItem/paginationItemClasses.d.ts +42 -42
  82. package/Paper/paperClasses.d.ts +39 -39
  83. package/Popover/popoverClasses.d.ts +10 -10
  84. package/Popper/Popper.d.ts +29 -29
  85. package/Radio/radioClasses.d.ts +16 -16
  86. package/RadioGroup/RadioGroupContext.d.ts +11 -11
  87. package/RadioGroup/useRadioGroup.d.ts +4 -4
  88. package/Rating/ratingClasses.d.ts +40 -40
  89. package/ScopedCssBaseline/scopedCssBaselineClasses.d.ts +8 -8
  90. package/Select/selectClasses.d.ts +30 -30
  91. package/Skeleton/skeletonClasses.d.ts +24 -24
  92. package/Slider/Slider.js +9 -9
  93. package/Snackbar/snackbarClasses.d.ts +20 -20
  94. package/SnackbarContent/snackbarContentClasses.d.ts +12 -12
  95. package/SpeedDial/speedDialClasses.d.ts +22 -22
  96. package/SpeedDialAction/speedDialActionClasses.d.ts +20 -20
  97. package/SpeedDialIcon/speedDialIconClasses.d.ts +18 -18
  98. package/Step/StepContext.d.ts +20 -20
  99. package/Step/stepClasses.d.ts +16 -16
  100. package/StepButton/stepButtonClasses.d.ts +14 -14
  101. package/StepConnector/stepConnectorClasses.d.ts +26 -26
  102. package/StepContent/stepContentClasses.d.ts +12 -12
  103. package/StepIcon/stepIconClasses.d.ts +16 -16
  104. package/StepLabel/stepLabelClasses.d.ts +28 -28
  105. package/Stepper/StepperContext.d.ts +18 -18
  106. package/Stepper/stepperClasses.d.ts +14 -14
  107. package/SvgIcon/svgIconClasses.d.ts +24 -24
  108. package/Switch/switchClasses.d.ts +32 -32
  109. package/Tab/tabClasses.d.ts +26 -26
  110. package/TabScrollButton/tabScrollButtonClasses.d.ts +12 -12
  111. package/Table/tableClasses.d.ts +10 -10
  112. package/TableBody/tableBodyClasses.d.ts +8 -8
  113. package/TableCell/tableCellClasses.d.ts +32 -32
  114. package/TableContainer/tableContainerClasses.d.ts +8 -8
  115. package/TableFooter/tableFooterClasses.d.ts +8 -8
  116. package/TableHead/tableHeadClasses.d.ts +8 -8
  117. package/TablePagination/tablePaginationClasses.d.ts +28 -28
  118. package/TableRow/tableRowClasses.d.ts +16 -16
  119. package/TableSortLabel/tableSortLabelClasses.d.ts +16 -16
  120. package/Tabs/Tabs.js +10 -2
  121. package/Tabs/tabsClasses.d.ts +32 -32
  122. package/TextField/textFieldClasses.d.ts +8 -8
  123. package/ToggleButton/toggleButtonClasses.d.ts +24 -24
  124. package/ToggleButtonGroup/toggleButtonGroupClasses.d.ts +18 -18
  125. package/Toolbar/toolbarClasses.d.ts +14 -14
  126. package/Tooltip/tooltipClasses.d.ts +30 -30
  127. package/Typography/typographyClasses.d.ts +50 -50
  128. package/className/index.d.ts +1 -1
  129. package/darkScrollbar/index.d.ts +28 -28
  130. package/index.js +1 -1
  131. package/internal/switchBaseClasses.d.ts +12 -12
  132. package/legacy/Alert/Alert.js +19 -11
  133. package/legacy/BottomNavigation/BottomNavigation.js +0 -0
  134. package/legacy/FilledInput/FilledInput.js +1 -1
  135. package/legacy/Input/Input.js +1 -1
  136. package/legacy/OutlinedInput/OutlinedInput.js +15 -0
  137. package/legacy/Slider/Slider.js +9 -9
  138. package/legacy/Tabs/Tabs.js +10 -2
  139. package/legacy/index.js +1 -1
  140. package/legacy/styles/CssVarsProvider.js +3 -1
  141. package/legacy/styles/experimental_extendTheme.js +43 -3
  142. package/locale/index.d.ts +71 -71
  143. package/modern/Alert/Alert.js +19 -11
  144. package/modern/BottomNavigation/BottomNavigation.js +0 -0
  145. package/modern/FilledInput/FilledInput.js +1 -1
  146. package/modern/Input/Input.js +1 -1
  147. package/modern/OutlinedInput/OutlinedInput.js +15 -0
  148. package/modern/Slider/Slider.js +9 -9
  149. package/modern/Tabs/Tabs.js +10 -2
  150. package/modern/index.js +1 -1
  151. package/modern/styles/CssVarsProvider.js +1 -1
  152. package/modern/styles/experimental_extendTheme.js +43 -3
  153. package/node/Alert/Alert.js +19 -11
  154. package/node/BottomNavigation/BottomNavigation.js +0 -0
  155. package/node/FilledInput/FilledInput.js +1 -1
  156. package/node/Input/Input.js +1 -1
  157. package/node/OutlinedInput/OutlinedInput.js +13 -0
  158. package/node/Slider/Slider.js +9 -9
  159. package/node/Tabs/Tabs.js +10 -2
  160. package/node/index.js +1 -1
  161. package/node/styles/CssVarsProvider.js +5 -1
  162. package/node/styles/experimental_extendTheme.js +43 -3
  163. package/package.json +4 -4
  164. package/styles/CssVarsProvider.d.ts +10 -28
  165. package/styles/CssVarsProvider.js +5 -1
  166. package/styles/createPalette.d.ts +0 -89
  167. package/styles/experimental_extendTheme.d.ts +225 -37
  168. package/styles/experimental_extendTheme.js +43 -3
  169. package/styles/index.d.ts +24 -1
  170. package/themeCssVarsAugmentation/index.d.ts +61 -0
  171. package/transitions/index.d.ts +1 -1
  172. package/transitions/transition.d.ts +13 -13
  173. package/transitions/utils.d.ts +23 -23
  174. package/umd/material-ui.development.js +355 -173
  175. package/umd/material-ui.production.min.js +21 -21
  176. package/useMediaQuery/useMediaQuery.d.ts +31 -31
  177. package/useTouchRipple/index.d.ts +1 -1
  178. package/useTouchRipple/useTouchRipple.d.ts +28 -28
  179. package/utils/getScrollbarSize.d.ts +2 -2
  180. package/utils/ownerDocument.d.ts +2 -2
  181. package/utils/ownerWindow.d.ts +2 -2
  182. package/utils/setRef.d.ts +2 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/material",
3
- "version": "5.8.5",
3
+ "version": "5.8.6",
4
4
  "private": false,
5
5
  "author": "MUI Team",
6
6
  "description": "React components that implement Google's Material Design.",
@@ -46,10 +46,10 @@
46
46
  },
47
47
  "dependencies": {
48
48
  "@babel/runtime": "^7.17.2",
49
- "@mui/base": "5.0.0-alpha.86",
50
- "@mui/system": "^5.8.5",
49
+ "@mui/base": "5.0.0-alpha.87",
50
+ "@mui/system": "^5.8.6",
51
51
  "@mui/types": "^7.1.4",
52
- "@mui/utils": "^5.8.4",
52
+ "@mui/utils": "^5.8.6",
53
53
  "@types/react-transition-group": "^4.4.4",
54
54
  "clsx": "^1.1.1",
55
55
  "csstype": "^3.1.0",
@@ -1,28 +1,10 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
- import { CreateCssVarsProviderResult } from '@mui/system';
3
- import { ThemeOptions, SupportedColorScheme } from './experimental_extendTheme';
4
- import { PaletteWithChannels } from './createPalette';
5
-
6
- export interface ThemeInput extends Omit<ThemeOptions, 'colorSchemes'> {
7
- colorSchemes: Partial<
8
- Record<
9
- SupportedColorScheme,
10
- {
11
- palette: PaletteWithChannels;
12
- }
13
- >
14
- >;
15
- }
16
-
17
- type MDCreateCssVarsProviderResult = CreateCssVarsProviderResult<SupportedColorScheme, ThemeInput>;
18
-
19
- declare const useColorScheme: MDCreateCssVarsProviderResult['useColorScheme'];
20
- declare const getInitColorSchemeScript: MDCreateCssVarsProviderResult['getInitColorSchemeScript'];
21
-
22
- /**
23
- * This component is an experimental Theme Provider that generates CSS variabels out of the theme tokens.
24
- * It should preferably be used at **the root of your component tree**.
25
- */
26
- declare const Experimental_CssVarsProvider: MDCreateCssVarsProviderResult['CssVarsProvider'];
27
-
28
- export { useColorScheme, getInitColorSchemeScript, Experimental_CssVarsProvider };
1
+ /// <reference types="react" />
2
+ import { SupportedColorScheme, CssVarsTheme } from './experimental_extendTheme';
3
+ declare const Experimental_CssVarsProvider: (props: import("react").PropsWithChildren<Partial<import("packages/mui-system/src/cssVars/createCssVarsProvider").CssVarsProviderConfig<SupportedColorScheme>> & {
4
+ theme?: CssVarsTheme | undefined;
5
+ documentNode?: Document | null | undefined;
6
+ colorSchemeNode?: Document | HTMLElement | null | undefined;
7
+ colorSchemeSelector?: string | undefined;
8
+ storageWindow?: Window | null | undefined;
9
+ }>) => import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>, useColorScheme: () => import("packages/mui-system/src/cssVars/createCssVarsProvider").ColorSchemeContextValue<SupportedColorScheme>, getInitColorSchemeScript: typeof import("packages/mui-system/src/cssVars/getInitColorSchemeScript").default;
10
+ export { useColorScheme, getInitColorSchemeScript, Experimental_CssVarsProvider };
@@ -26,6 +26,10 @@ const {
26
26
 
27
27
  return newTheme;
28
28
  },
29
- shouldSkipGeneratingVar: keys => !!keys[0].match(/(typography|mixins|breakpoints|direction|transitions)/)
29
+ shouldSkipGeneratingVar: keys => {
30
+ var _keys$;
31
+
32
+ return !!keys[0].match(/(typography|mixins|breakpoints|direction|transitions)/) || keys[0] === 'palette' && !!((_keys$ = keys[1]) != null && _keys$.match(/(mode|contrastThreshold|tonalOffset)/));
33
+ }
30
34
  });
31
35
  export { useColorScheme, getInitColorSchemeScript, Experimental_CssVarsProvider };
@@ -105,95 +105,6 @@ export interface Channels {
105
105
  contrastTextChannel: string;
106
106
  }
107
107
 
108
- export interface PaletteWithChannels {
109
- common: CommonColors & {
110
- background: string;
111
- onBackground: string;
112
- backgroundChannel: string;
113
- onBackgroundChannel: string;
114
- };
115
- mode: PaletteMode;
116
- contrastThreshold: number;
117
- tonalOffset: PaletteTonalOffset;
118
- primary: PaletteColor & Channels;
119
- secondary: PaletteColor & Channels;
120
- error: PaletteColor & Channels;
121
- warning: PaletteColor & Channels;
122
- info: PaletteColor & Channels;
123
- success: PaletteColor & Channels;
124
- grey: Color & { darkChannel: string };
125
- text: TypeText & { primaryChannel: string; secondaryChannel: string };
126
- divider: TypeDivider;
127
- dividerChannel: TypeDivider;
128
- action: TypeAction & { activeChannel: string; selectedChannel: string };
129
- background: TypeBackground;
130
- getContrastText: (background: string) => string;
131
- augmentColor: (options: PaletteAugmentColorOptions) => PaletteColor;
132
- // component tokens
133
- AppBar: {
134
- defaultBg: string;
135
- darkBg: string;
136
- darkColor: string;
137
- };
138
- Avatar: {
139
- defaultBg: string;
140
- };
141
- Chip: {
142
- defaultBorder: string;
143
- defaultAvatarColor: string;
144
- defaultIconColor: string;
145
- };
146
- FilledInput: {
147
- bg: string;
148
- hoverBg: string;
149
- disabledBg: string;
150
- };
151
- LinearProgress: {
152
- primaryBg: string;
153
- secondaryBg: string;
154
- errorBg: string;
155
- infoBg: string;
156
- successBg: string;
157
- warningBg: string;
158
- };
159
- Slider: {
160
- primaryTrack: string;
161
- secondaryTrack: string;
162
- errorTrack: string;
163
- infoTrack: string;
164
- successTrack: string;
165
- warningTrack: string;
166
- };
167
- SnackbarContent: {
168
- bg: string;
169
- };
170
- SpeedDialAction: {
171
- fabHoverBg: string;
172
- };
173
- StepConnector: {
174
- border: string;
175
- };
176
- StepContent: {
177
- border: string;
178
- };
179
- Switch: {
180
- defaultColor: string;
181
- defaultDisabledColor: string;
182
- primaryDisabledColor: string;
183
- secondaryDisabledColor: string;
184
- errorDisabledColor: string;
185
- infoDisabledColor: string;
186
- successDisabledColor: string;
187
- warningDisabledColor: string;
188
- };
189
- TableCell: {
190
- border: string;
191
- };
192
- Tooltip: {
193
- bg: string;
194
- };
195
- }
196
-
197
108
  export type PartialTypeObject = { [P in keyof TypeObject]?: Partial<TypeObject[P]> };
198
109
 
199
110
  export interface PaletteOptions {
@@ -1,12 +1,9 @@
1
1
  /* eslint-disable @typescript-eslint/naming-convention */
2
- import { ThemeOptions as SystemThemeOptions, Theme as SystemTheme } from '@mui/system';
3
2
  import { OverridableStringUnion } from '@mui/types';
4
- import { Mixins, MixinsOptions } from './createMixins';
3
+ import { ThemeOptions, Theme } from './createTheme';
5
4
  import { Palette, PaletteOptions } from './createPalette';
6
- import { Typography, TypographyOptions } from './createTypography';
7
5
  import { Shadows } from './shadows';
8
- import { Transitions, TransitionsOptions } from './createTransitions';
9
- import { ZIndex, ZIndexOptions } from './zIndex';
6
+ import { ZIndex } from './zIndex';
10
7
  import { Components } from './components';
11
8
 
12
9
  /**
@@ -35,8 +32,8 @@ export type ExtendedColorScheme = OverridableStringUnion<never, ColorSchemeOverr
35
32
  export type SupportedColorScheme = DefaultColorScheme | ExtendedColorScheme;
36
33
 
37
34
  export interface Opacity {
38
- placeholder: number;
39
- inputTouchBottomLine: number;
35
+ inputPlaceholder: number;
36
+ inputUnderline: number;
40
37
  }
41
38
 
42
39
  export type Overlays = [
@@ -67,45 +64,233 @@ export type Overlays = [
67
64
  string | undefined,
68
65
  ];
69
66
 
70
- export interface ThemeOptions extends Omit<SystemThemeOptions, 'zIndex'> {
71
- mixins?: MixinsOptions;
72
- components?: Components<BaseTheme>;
73
- colorSchemes?: Record<
74
- SupportedColorScheme,
75
- {
76
- palette?: PaletteOptions;
77
- opacity?: Partial<Opacity>;
78
- overlays?: Overlays;
79
- }
80
- >;
81
- shadows?: Shadows;
82
- transitions?: TransitionsOptions;
83
- typography?: TypographyOptions | ((palette: Palette) => TypographyOptions);
84
- zIndex?: ZIndexOptions;
85
- unstable_strictMode?: boolean;
67
+ export interface PaletteCommonChannel {
68
+ background: string;
69
+ backgroundChannel: string;
70
+ onBackground: string;
71
+ onBackgroundChannel: string;
72
+ }
73
+
74
+ export interface PaletteColorChannel {
75
+ mainChannel: string;
76
+ lightChannel: string;
77
+ darkChannel: string;
78
+ contrastTextChannel: string;
79
+ }
80
+
81
+ export interface PaletteActionChannel {
82
+ activeChannel: string;
83
+ selectedChannel: string;
84
+ }
85
+
86
+ export interface PaletteTextChannel {
87
+ primaryChannel: string;
88
+ secondaryChannel: string;
89
+ }
90
+
91
+ export interface PaletteAlert {
92
+ errorColor: string;
93
+ infoColor: string;
94
+ successColor: string;
95
+ warningColor: string;
96
+ errorFilledBg: string;
97
+ infoFilledBg: string;
98
+ successFilledBg: string;
99
+ warningFilledBg: string;
100
+ errorFilledColor: string;
101
+ infoFilledColor: string;
102
+ successFilledColor: string;
103
+ warningFilledColor: string;
104
+ errorStandardBg: string;
105
+ infoStandardBg: string;
106
+ successStandardBg: string;
107
+ warningStandardBg: string;
108
+ errorIconColor: string;
109
+ infoIconColor: string;
110
+ successIconColor: string;
111
+ warningIconColor: string;
112
+ }
113
+
114
+ export interface PaletteAppBar {
115
+ defaultBg: string;
116
+ darkBg: string;
117
+ darkColor: string;
118
+ }
119
+
120
+ export interface PaletteAvatar {
121
+ defaultBg: string;
122
+ }
123
+
124
+ export interface PaletteChip {
125
+ defaultBorder: string;
126
+ defaultAvatarColor: string;
127
+ defaultIconColor: string;
128
+ }
129
+
130
+ export interface PaletteFilledInput {
131
+ bg: string;
132
+ hoverBg: string;
133
+ disabledBg: string;
134
+ }
135
+
136
+ export interface PaletteLinearProgress {
137
+ primaryBg: string;
138
+ secondaryBg: string;
139
+ errorBg: string;
140
+ infoBg: string;
141
+ successBg: string;
142
+ warningBg: string;
143
+ }
144
+
145
+ export interface PaletteSkeleton {
146
+ bg: string;
147
+ }
148
+
149
+ export interface PaletteSlider {
150
+ primaryTrack: string;
151
+ secondaryTrack: string;
152
+ errorTrack: string;
153
+ infoTrack: string;
154
+ successTrack: string;
155
+ warningTrack: string;
156
+ }
157
+
158
+ export interface PaletteSnackbarContent {
159
+ bg: string;
160
+ }
161
+
162
+ export interface PaletteSpeedDialAction {
163
+ fabHoverBg: string;
164
+ }
165
+
166
+ export interface PaletteStepConnector {
167
+ border: string;
168
+ }
169
+
170
+ export interface PaletteStepContent {
171
+ border: string;
172
+ }
173
+
174
+ export interface PaletteSwitch {
175
+ defaultColor: string;
176
+ defaultDisabledColor: string;
177
+ primaryDisabledColor: string;
178
+ secondaryDisabledColor: string;
179
+ errorDisabledColor: string;
180
+ infoDisabledColor: string;
181
+ successDisabledColor: string;
182
+ warningDisabledColor: string;
183
+ }
184
+
185
+ export interface PaletteTableCell {
186
+ border: string;
187
+ }
188
+
189
+ export interface PaletteTooltip {
190
+ bg: string;
191
+ }
192
+
193
+ // The Palette should be sync with `../themeCssVarsAugmentation/index.d.ts`
194
+ export interface ColorSystemOptions {
195
+ palette?: Omit<PaletteOptions, 'mode'> & {
196
+ common?: Partial<PaletteCommonChannel>;
197
+ primary?: Partial<PaletteColorChannel>;
198
+ secondary?: Partial<PaletteColorChannel>;
199
+ error?: Partial<PaletteColorChannel>;
200
+ info?: Partial<PaletteColorChannel>;
201
+ success?: Partial<PaletteColorChannel>;
202
+ text?: Partial<PaletteTextChannel>;
203
+ dividerChannel?: Partial<string>;
204
+ action?: Partial<PaletteActionChannel>;
205
+ Alert?: Partial<PaletteAlert>;
206
+ AppBar?: Partial<PaletteAppBar>;
207
+ Avatar?: Partial<PaletteAvatar>;
208
+ Chip?: Partial<PaletteChip>;
209
+ FilledInput?: Partial<PaletteFilledInput>;
210
+ LinearProgress?: Partial<PaletteLinearProgress>;
211
+ Skeleton?: Partial<PaletteSkeleton>;
212
+ Slider?: Partial<PaletteSlider>;
213
+ SnackbarContent?: Partial<PaletteSnackbarContent>;
214
+ SpeedDialAction?: Partial<PaletteSpeedDialAction>;
215
+ StepConnector?: Partial<PaletteStepConnector>;
216
+ StepContent?: Partial<PaletteStepContent>;
217
+ Switch?: Partial<PaletteSwitch>;
218
+ TableCell?: Partial<PaletteTableCell>;
219
+ Tooltip?: Partial<PaletteTooltip>;
220
+ };
221
+ opacity?: Partial<Opacity>;
222
+ overlays?: Overlays;
223
+ }
224
+
225
+ // The Palette should be sync with `../themeCssVarsAugmentation/index.d.ts`
226
+ export interface ColorSystem {
227
+ palette: Palette & {
228
+ colorScheme: SupportedColorScheme;
229
+ common: PaletteCommonChannel;
230
+ primary: PaletteColorChannel;
231
+ secondary: PaletteColorChannel;
232
+ error: PaletteColorChannel;
233
+ info: PaletteColorChannel;
234
+ success: PaletteColorChannel;
235
+ text: PaletteTextChannel;
236
+ dividerChannel: string;
237
+ action: PaletteActionChannel;
238
+ Alert: PaletteAlert;
239
+ AppBar: PaletteAppBar;
240
+ Avatar: PaletteAvatar;
241
+ Chip: PaletteChip;
242
+ FilledInput: PaletteFilledInput;
243
+ LinearProgress: PaletteLinearProgress;
244
+ Skeleton: PaletteSkeleton;
245
+ Slider: PaletteSlider;
246
+ SnackbarContent: PaletteSnackbarContent;
247
+ SpeedDialAction: PaletteSpeedDialAction;
248
+ StepConnector: PaletteStepConnector;
249
+ StepContent: PaletteStepContent;
250
+ Switch: PaletteSwitch;
251
+ TableCell: PaletteTableCell;
252
+ Tooltip: PaletteTooltip;
253
+ };
254
+ opacity: Opacity;
255
+ overlays: Overlays;
256
+ }
257
+
258
+ export interface CssVarsThemeOptions extends Omit<ThemeOptions, 'palette' | 'components'> {
259
+ components?: Components<Omit<CssVarsTheme, 'components'>>;
260
+ colorSchemes?: Partial<Record<SupportedColorScheme, ColorSystemOptions>>;
86
261
  }
87
262
 
88
- interface BaseTheme extends SystemTheme {
89
- mixins: Mixins;
90
- palette: Palette;
263
+ // should not include keys defined in `shouldSkipGeneratingVar` and have value typeof function
264
+ interface ThemeVars {
265
+ palette: Omit<
266
+ ColorSystem['palette'],
267
+ | 'colorScheme'
268
+ | 'mode'
269
+ | 'contrastThreshold'
270
+ | 'tonalOffset'
271
+ | 'getContrastText'
272
+ | 'augmentColor'
273
+ >;
91
274
  opacity: Opacity;
92
275
  overlays: Overlays;
93
276
  shadows: Shadows;
94
- transitions: Transitions;
95
- typography: Typography;
96
277
  zIndex: ZIndex;
97
- unstable_strictMode?: boolean;
98
- colorSchemes: Record<string, { palette: Palette }>;
278
+ shape: Theme['shape'];
99
279
  }
100
280
 
101
- // shut off automatic exporting for the `BaseTheme` above
281
+ // shut off automatic exporting for the `ThemeVars` above
102
282
  export {};
103
283
 
104
- /**
105
- * Our [TypeScript guide on theme customization](https://mui.com/material-ui/guides/typescript/#customization-of-theme) explains in detail how you would add custom properties.
106
- */
107
- export interface Theme extends BaseTheme {
108
- components?: Components<BaseTheme>;
284
+ export interface CssVarsTheme extends Omit<Theme, 'palette' | 'components'>, ColorSystem {
285
+ components?: Components<Omit<CssVarsTheme, 'components'>>;
286
+ colorSchemes: Record<SupportedColorScheme, ColorSystem>;
287
+ prefix: string;
288
+ vars: ThemeVars;
289
+ getCssVar: <CustomVar extends string = never>(
290
+ field: string | CustomVar,
291
+ ...vars: Array<string | CustomVar>
292
+ ) => string;
293
+ getColorSchemeSelector: (colorScheme: SupportedColorScheme) => string;
109
294
  }
110
295
 
111
296
  /**
@@ -114,4 +299,7 @@ export interface Theme extends BaseTheme {
114
299
  * @param args Deep merge the arguments with the about to be returned theme.
115
300
  * @returns A complete, ready-to-use theme object.
116
301
  */
117
- export default function experimental_extendTheme(options?: ThemeOptions, ...args: object[]): Theme;
302
+ export default function experimental_extendTheme(
303
+ options?: CssVarsThemeOptions,
304
+ ...args: object[]
305
+ ): CssVarsTheme;
@@ -57,7 +57,7 @@ export default function extendTheme(options = {}, ...args) {
57
57
  palette: lightPalette,
58
58
  opacity: _extends({
59
59
  inputPlaceholder: 0.42,
60
- inputTouchBottomLine: 0.42,
60
+ inputUnderline: 0.42,
61
61
  switchTrackDisabled: 0.12,
62
62
  switchTrack: 0.38
63
63
  }, (_colorSchemesInput$li2 = colorSchemesInput.light) == null ? void 0 : _colorSchemesInput$li2.opacity),
@@ -67,7 +67,7 @@ export default function extendTheme(options = {}, ...args) {
67
67
  palette: darkPalette,
68
68
  opacity: _extends({
69
69
  inputPlaceholder: 0.5,
70
- inputTouchBottomLine: 0.7,
70
+ inputUnderline: 0.7,
71
71
  switchTrackDisabled: 0.2,
72
72
  switchTrack: 0.3
73
73
  }, (_colorSchemesInput$da2 = colorSchemesInput.dark) == null ? void 0 : _colorSchemesInput$da2.opacity),
@@ -88,9 +88,29 @@ export default function extendTheme(options = {}, ...args) {
88
88
  } // assign component variables
89
89
 
90
90
 
91
- assignNode(palette, ['AppBar', 'Avatar', 'Chip', 'FilledInput', 'LinearProgress', 'Skeleton', 'Slider', 'SnackbarContent', 'SpeedDialAction', 'StepConnector', 'StepContent', 'Switch', 'TableCell', 'Tooltip']);
91
+ assignNode(palette, ['Alert', 'AppBar', 'Avatar', 'Chip', 'FilledInput', 'LinearProgress', 'Skeleton', 'Slider', 'SnackbarContent', 'SpeedDialAction', 'StepConnector', 'StepContent', 'Switch', 'TableCell', 'Tooltip']);
92
92
 
93
93
  if (key === 'light') {
94
+ setColor(palette.Alert, 'errorColor', darken(palette.error.light, 0.6));
95
+ setColor(palette.Alert, 'infoColor', darken(palette.info.light, 0.6));
96
+ setColor(palette.Alert, 'successColor', darken(palette.success.light, 0.6));
97
+ setColor(palette.Alert, 'warningColor', darken(palette.warning.light, 0.6));
98
+ setColor(palette.Alert, 'errorFilledBg', 'var(--mui-palette-error-main)');
99
+ setColor(palette.Alert, 'infoFilledBg', 'var(--mui-palette-info-main)');
100
+ setColor(palette.Alert, 'successFilledBg', 'var(--mui-palette-success-main)');
101
+ setColor(palette.Alert, 'warningFilledBg', 'var(--mui-palette-warning-main)');
102
+ setColor(palette.Alert, 'errorFilledColor', lightPalette.getContrastText(palette.error.main));
103
+ setColor(palette.Alert, 'infoFilledColor', lightPalette.getContrastText(palette.info.main));
104
+ setColor(palette.Alert, 'successFilledColor', lightPalette.getContrastText(palette.success.main));
105
+ setColor(palette.Alert, 'warningFilledColor', lightPalette.getContrastText(palette.warning.main));
106
+ setColor(palette.Alert, 'errorStandardBg', lighten(palette.error.light, 0.9));
107
+ setColor(palette.Alert, 'infoStandardBg', lighten(palette.info.light, 0.9));
108
+ setColor(palette.Alert, 'successStandardBg', lighten(palette.success.light, 0.9));
109
+ setColor(palette.Alert, 'warningStandardBg', lighten(palette.warning.light, 0.9));
110
+ setColor(palette.Alert, 'errorIconColor', 'var(--mui-palette-error-light)');
111
+ setColor(palette.Alert, 'infoIconColor', 'var(--mui-palette-info-light)');
112
+ setColor(palette.Alert, 'successIconColor', 'var(--mui-palette-success-light)');
113
+ setColor(palette.Alert, 'warningIconColor', 'var(--mui-palette-warning-light)');
94
114
  setColor(palette.AppBar, 'defaultBg', 'var(--mui-palette-grey-100)');
95
115
  setColor(palette.Avatar, 'defaultBg', 'var(--mui-palette-grey-400)');
96
116
  setColor(palette.Chip, 'defaultBorder', 'var(--mui-palette-grey-400)');
@@ -127,6 +147,26 @@ export default function extendTheme(options = {}, ...args) {
127
147
  setColor(palette.TableCell, 'border', lighten(alpha(palette.divider, 1), 0.88));
128
148
  setColor(palette.Tooltip, 'bg', alpha(palette.grey[700], 0.92));
129
149
  } else {
150
+ setColor(palette.Alert, 'errorColor', lighten(palette.error.light, 0.6));
151
+ setColor(palette.Alert, 'infoColor', lighten(palette.info.light, 0.6));
152
+ setColor(palette.Alert, 'successColor', lighten(palette.success.light, 0.6));
153
+ setColor(palette.Alert, 'warningColor', lighten(palette.warning.light, 0.6));
154
+ setColor(palette.Alert, 'errorFilledBg', 'var(--mui-palette-error-dark)');
155
+ setColor(palette.Alert, 'infoFilledBg', 'var(--mui-palette-info-dark)');
156
+ setColor(palette.Alert, 'successFilledBg', 'var(--mui-palette-success-dark)');
157
+ setColor(palette.Alert, 'warningFilledBg', 'var(--mui-palette-warning-dark)');
158
+ setColor(palette.Alert, 'errorFilledColor', darkPalette.getContrastText(palette.error.dark));
159
+ setColor(palette.Alert, 'infoFilledColor', darkPalette.getContrastText(palette.info.dark));
160
+ setColor(palette.Alert, 'successFilledColor', darkPalette.getContrastText(palette.success.dark));
161
+ setColor(palette.Alert, 'warningFilledColor', darkPalette.getContrastText(palette.warning.dark));
162
+ setColor(palette.Alert, 'errorStandardBg', darken(palette.error.light, 0.9));
163
+ setColor(palette.Alert, 'infoStandardBg', darken(palette.info.light, 0.9));
164
+ setColor(palette.Alert, 'successStandardBg', darken(palette.success.light, 0.9));
165
+ setColor(palette.Alert, 'warningStandardBg', darken(palette.warning.light, 0.9));
166
+ setColor(palette.Alert, 'errorIconColor', 'var(--mui-palette-error-main)');
167
+ setColor(palette.Alert, 'infoIconColor', 'var(--mui-palette-info-main)');
168
+ setColor(palette.Alert, 'successIconColor', 'var(--mui-palette-success-main)');
169
+ setColor(palette.Alert, 'warningIconColor', 'var(--mui-palette-warning-main)');
130
170
  setColor(palette.AppBar, 'defaultBg', 'var(--mui-palette-grey-900)');
131
171
  setColor(palette.AppBar, 'darkBg', 'var(--mui-palette-background-paper)'); // specific for dark mode
132
172
 
package/styles/index.d.ts CHANGED
@@ -94,4 +94,27 @@ export { default as withTheme } from './withTheme';
94
94
  export * from './CssVarsProvider';
95
95
 
96
96
  export { default as experimental_extendTheme } from './experimental_extendTheme';
97
- export * from './experimental_extendTheme';
97
+ export type {
98
+ ColorSchemeOverrides,
99
+ SupportedColorScheme,
100
+ Opacity,
101
+ Overlays,
102
+ PaletteActionChannel,
103
+ PaletteAppBar,
104
+ PaletteAvatar,
105
+ PaletteChip,
106
+ PaletteColorChannel,
107
+ PaletteCommonChannel,
108
+ PaletteFilledInput,
109
+ PaletteLinearProgress,
110
+ PaletteSlider,
111
+ PaletteSnackbarContent,
112
+ PaletteStepConnector,
113
+ PaletteStepContent,
114
+ PaletteSwitch,
115
+ PaletteTableCell,
116
+ PaletteTextChannel,
117
+ PaletteTooltip,
118
+ CssVarsThemeOptions,
119
+ CssVarsTheme,
120
+ } from './experimental_extendTheme';
@@ -0,0 +1,61 @@
1
+ import type {
2
+ CssVarsTheme,
3
+ ColorSystem,
4
+ PaletteCommonChannel,
5
+ PaletteColorChannel,
6
+ PaletteTextChannel,
7
+ PaletteActionChannel,
8
+ PaletteAppBar,
9
+ PaletteAvatar,
10
+ PaletteChip,
11
+ PaletteFilledInput,
12
+ PaletteLinearProgress,
13
+ PaletteSlider,
14
+ PaletteSnackbarContent,
15
+ PaletteStepConnector,
16
+ PaletteStepContent,
17
+ PaletteSwitch,
18
+ PaletteTableCell,
19
+ PaletteTooltip,
20
+ } from '../styles/experimental_extendTheme';
21
+
22
+ /**
23
+ * Enhance the theme types to include new properties from the CssVarsProvider.
24
+ * The theme is typed with CSS variables in `styled`, `sx`, `useTheme`, etc.
25
+ */
26
+ declare module '@mui/material/styles' {
27
+ // The palette must be extended in each node.
28
+ interface Theme extends Omit<ColorSystem, 'palette'> {
29
+ prefix: string;
30
+ vars: CssVarsTheme['vars'];
31
+ getCssVar: CssVarsTheme['getCssVar'];
32
+ getColorSchemeSelector: CssVarsTheme['getColorSchemeSelector'];
33
+ }
34
+
35
+ // The extended Palette should be in sync with `extendTheme`
36
+ interface Palette {
37
+ dividerChannel: string;
38
+ AppBar: PaletteAppBar;
39
+ Avatar: PaletteAvatar;
40
+ Chip: PaletteChip;
41
+ FilledInput: PaletteFilledInput;
42
+ LinearProgress: PaletteLinearProgress;
43
+ Slider: PaletteSlider;
44
+ SnackbarContent: PaletteSnackbarContent;
45
+ StepConnector: PaletteStepConnector;
46
+ StepContent: PaletteStepContent;
47
+ Switch: PaletteSwitch;
48
+ TableCell: PaletteTableCell;
49
+ Tooltip: PaletteTooltip;
50
+ }
51
+ }
52
+
53
+ declare module '@mui/material/styles/createPalette' {
54
+ interface CommonColors extends PaletteCommonChannel {}
55
+
56
+ interface PaletteColor extends PaletteColorChannel {}
57
+
58
+ interface TypeText extends PaletteTextChannel {}
59
+
60
+ interface TypeAction extends PaletteActionChannel {}
61
+ }
@@ -1 +1 @@
1
- export * from './transition';
1
+ export * from './transition';
@@ -1,13 +1,13 @@
1
- import { TransitionProps as _TransitionProps, TransitionActions } from 'react-transition-group/Transition';
2
- import * as React from 'react';
3
- export declare type TransitionHandlerKeys = 'onEnter' | 'onEntering' | 'onEntered' | 'onExit' | 'onExiting' | 'onExited';
4
- export declare type TransitionHandlerProps = Pick<_TransitionProps, TransitionHandlerKeys>;
5
- export interface EasingProps {
6
- easing: string | {
7
- enter?: string;
8
- exit?: string;
9
- };
10
- }
11
- export declare type TransitionKeys = 'in' | 'mountOnEnter' | 'unmountOnExit' | 'timeout' | 'easing' | 'addEndListener' | TransitionHandlerKeys;
12
- export interface TransitionProps extends TransitionActions, Partial<Pick<_TransitionProps & EasingProps, TransitionKeys>>, React.HTMLAttributes<HTMLElement> {
13
- }
1
+ import { TransitionProps as _TransitionProps, TransitionActions } from 'react-transition-group/Transition';
2
+ import * as React from 'react';
3
+ export declare type TransitionHandlerKeys = 'onEnter' | 'onEntering' | 'onEntered' | 'onExit' | 'onExiting' | 'onExited';
4
+ export declare type TransitionHandlerProps = Pick<_TransitionProps, TransitionHandlerKeys>;
5
+ export interface EasingProps {
6
+ easing: string | {
7
+ enter?: string;
8
+ exit?: string;
9
+ };
10
+ }
11
+ export declare type TransitionKeys = 'in' | 'mountOnEnter' | 'unmountOnExit' | 'timeout' | 'easing' | 'addEndListener' | TransitionHandlerKeys;
12
+ export interface TransitionProps extends TransitionActions, Partial<Pick<_TransitionProps & EasingProps, TransitionKeys>>, React.HTMLAttributes<HTMLElement> {
13
+ }