@mui/material 6.0.0-alpha.8 → 6.0.0-alpha.9

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 (125) hide show
  1. package/AccordionActions/AccordionActions.d.ts +1 -1
  2. package/AccordionDetails/AccordionDetails.d.ts +1 -1
  3. package/Alert/Alert.d.ts +1 -1
  4. package/AlertTitle/AlertTitle.d.ts +3 -3
  5. package/Autocomplete/Autocomplete.d.ts +1 -1
  6. package/Avatar/Avatar.js +3 -1
  7. package/AvatarGroup/AvatarGroup.d.ts +51 -18
  8. package/AvatarGroup/AvatarGroup.js +37 -18
  9. package/Button/Button.d.ts +1 -1
  10. package/ButtonBase/ButtonBase.d.ts +1 -1
  11. package/CHANGELOG.md +76 -0
  12. package/CardActions/CardActions.d.ts +1 -1
  13. package/CardHeader/CardHeader.d.ts +1 -1
  14. package/Checkbox/Checkbox.d.ts +1 -1
  15. package/Chip/Chip.d.ts +3 -3
  16. package/CircularProgress/CircularProgress.d.ts +1 -1
  17. package/Collapse/Collapse.d.ts +1 -1
  18. package/CssBaseline/CssBaseline.d.ts +1 -1
  19. package/Dialog/Dialog.d.ts +1 -1
  20. package/DialogActions/DialogActions.d.ts +1 -1
  21. package/DialogContent/DialogContent.d.ts +1 -1
  22. package/Drawer/Drawer.d.ts +1 -1
  23. package/Fade/Fade.d.ts +1 -1
  24. package/FilledInput/FilledInput.d.ts +1 -1
  25. package/FormControlLabel/FormControlLabel.d.ts +1 -1
  26. package/FormGroup/FormGroup.d.ts +1 -1
  27. package/GlobalStyles/GlobalStyles.d.ts +1 -1
  28. package/Grid/Grid.d.ts +1 -0
  29. package/Grid/Grid.js +1 -0
  30. package/Grow/Grow.d.ts +1 -1
  31. package/Hidden/Hidden.d.ts +2 -0
  32. package/Hidden/Hidden.js +2 -0
  33. package/ImageListItemBar/ImageListItemBar.d.ts +1 -1
  34. package/Input/Input.d.ts +1 -1
  35. package/InputBase/InputBase.d.ts +1 -1
  36. package/LinearProgress/LinearProgress.d.ts +1 -1
  37. package/ListItem/ListItem.d.ts +4 -12
  38. package/ListItem/ListItem.js +6 -14
  39. package/ListItemAvatar/ListItemAvatar.d.ts +1 -1
  40. package/ListItemIcon/ListItemIcon.d.ts +1 -1
  41. package/ListItemSecondaryAction/ListItemSecondaryAction.d.ts +5 -1
  42. package/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  43. package/ListItemText/ListItemText.d.ts +3 -1
  44. package/Menu/Menu.d.ts +1 -1
  45. package/MobileStepper/MobileStepper.d.ts +1 -1
  46. package/Modal/Modal.d.ts +1 -1
  47. package/NativeSelect/NativeSelect.d.ts +1 -1
  48. package/OutlinedInput/OutlinedInput.d.ts +3 -1
  49. package/OverridableComponent.d.ts +2 -2
  50. package/Pagination/Pagination.d.ts +1 -1
  51. package/Popover/Popover.d.ts +1 -1
  52. package/Popper/Popper.d.ts +4 -0
  53. package/Popper/Popper.js +4 -0
  54. package/Radio/Radio.d.ts +1 -1
  55. package/RadioGroup/RadioGroup.d.ts +1 -1
  56. package/Rating/Rating.d.ts +1 -1
  57. package/Select/Select.d.ts +1 -1
  58. package/Slide/Slide.d.ts +1 -1
  59. package/Slider/Slider.d.ts +1 -1
  60. package/Slider/Slider.js +1 -1
  61. package/Slider/SliderValueLabel.types.d.ts +1 -1
  62. package/Snackbar/Snackbar.d.ts +1 -1
  63. package/SnackbarContent/SnackbarContent.d.ts +1 -1
  64. package/SpeedDial/SpeedDial.d.ts +1 -1
  65. package/SpeedDialAction/SpeedDialAction.d.ts +1 -1
  66. package/SpeedDialIcon/SpeedDialIcon.d.ts +3 -1
  67. package/StepConnector/StepConnector.d.ts +2 -2
  68. package/StepContent/StepContent.d.ts +1 -1
  69. package/StepIcon/StepIcon.d.ts +1 -1
  70. package/StepLabel/StepLabel.d.ts +1 -1
  71. package/Switch/Switch.d.ts +1 -1
  72. package/Tab/Tab.d.ts +1 -1
  73. package/TabScrollButton/TabScrollButton.d.ts +1 -1
  74. package/TableCell/TableCell.d.ts +1 -1
  75. package/TextField/TextField.d.ts +1 -1
  76. package/ToggleButtonGroup/ToggleButtonGroup.d.ts +1 -1
  77. package/Tooltip/Tooltip.d.ts +3 -5
  78. package/Tooltip/Tooltip.js +2 -4
  79. package/Zoom/Zoom.d.ts +1 -1
  80. package/index.js +1 -1
  81. package/locale/index.d.ts +1 -0
  82. package/locale/index.js +74 -1
  83. package/modern/Avatar/Avatar.js +3 -1
  84. package/modern/AvatarGroup/AvatarGroup.js +37 -18
  85. package/modern/Grid/Grid.js +1 -0
  86. package/modern/Hidden/Hidden.js +2 -0
  87. package/modern/ListItem/ListItem.js +6 -14
  88. package/modern/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  89. package/modern/Popper/Popper.js +4 -0
  90. package/modern/Slider/Slider.js +1 -1
  91. package/modern/Tooltip/Tooltip.js +2 -4
  92. package/modern/index.js +1 -1
  93. package/modern/locale/index.js +74 -1
  94. package/modern/styles/CssVarsProvider.js +17 -6
  95. package/modern/styles/experimental_extendTheme.js +8 -354
  96. package/modern/styles/extendTheme.js +355 -0
  97. package/modern/styles/index.js +2 -1
  98. package/modern/styles/responsiveFontSizes.js +3 -0
  99. package/node/Avatar/Avatar.js +3 -1
  100. package/node/AvatarGroup/AvatarGroup.js +37 -18
  101. package/node/Grid/Grid.js +1 -0
  102. package/node/Hidden/Hidden.js +2 -0
  103. package/node/ListItem/ListItem.js +6 -14
  104. package/node/ListItemSecondaryAction/ListItemSecondaryAction.js +2 -0
  105. package/node/Popper/Popper.js +4 -0
  106. package/node/Slider/Slider.js +1 -1
  107. package/node/Tooltip/Tooltip.js +2 -4
  108. package/node/index.js +1 -1
  109. package/node/locale/index.js +75 -2
  110. package/node/styles/CssVarsProvider.js +22 -7
  111. package/node/styles/experimental_extendTheme.js +9 -360
  112. package/node/styles/extendTheme.js +367 -0
  113. package/node/styles/index.js +10 -0
  114. package/node/styles/responsiveFontSizes.js +3 -0
  115. package/package.json +6 -6
  116. package/styles/CssVarsProvider.d.ts +3 -2
  117. package/styles/CssVarsProvider.js +17 -6
  118. package/styles/experimental_extendTheme.js +8 -354
  119. package/styles/{experimental_extendTheme.d.ts → extendTheme.d.ts} +1 -2
  120. package/styles/extendTheme.js +355 -0
  121. package/styles/index.d.ts +2 -2
  122. package/styles/index.js +2 -1
  123. package/styles/responsiveFontSizes.js +3 -0
  124. package/themeCssVarsAugmentation/index.d.ts +1 -1
  125. package/types/OverridableComponentAugmentation.d.ts +2 -2
@@ -1,355 +1,9 @@
1
- import deepmerge from '@mui/utils/deepmerge';
2
- import { unstable_createGetCssVar as systemCreateGetCssVar, createSpacing } from '@mui/system';
3
- import { createUnarySpacing } from '@mui/system/spacing';
4
- import { prepareCssVars, prepareTypographyVars } from '@mui/system/cssVars';
5
- import styleFunctionSx, { unstable_defaultSxConfig as defaultSxConfig } from '@mui/system/styleFunctionSx';
6
- 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';
7
- import defaultShouldSkipGeneratingVar from './shouldSkipGeneratingVar';
8
- import createThemeWithoutVars from './createTheme';
9
- import getOverlayAlpha from './getOverlayAlpha';
10
- import defaultGetSelector from './createGetSelector';
11
- const defaultDarkOverlays = [...Array(25)].map((_, index) => {
12
- if (index === 0) {
13
- return undefined;
14
- }
15
- const overlay = getOverlayAlpha(index);
16
- return `linear-gradient(rgba(255 255 255 / ${overlay}), rgba(255 255 255 / ${overlay}))`;
17
- });
18
- function assignNode(obj, keys) {
19
- keys.forEach(k => {
20
- if (!obj[k]) {
21
- obj[k] = {};
22
- }
23
- });
24
- }
25
- function setColor(obj, key, defaultValue) {
26
- if (!obj[key] && defaultValue) {
27
- obj[key] = defaultValue;
28
- }
29
- }
30
- function toRgb(color) {
31
- if (!color || !color.startsWith('hsl')) {
32
- return color;
33
- }
34
- return hslToRgb(color);
35
- }
36
- function setColorChannel(obj, key) {
37
- if (!(`${key}Channel` in obj)) {
38
- // custom channel token is not provided, generate one.
39
- // if channel token can't be generated, show a warning.
40
- 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.`);
41
- }
42
- }
43
- function getSpacingVal(spacingInput) {
44
- if (typeof spacingInput === 'number') {
45
- return `${spacingInput}px`;
46
- }
47
- if (typeof spacingInput === 'string') {
48
- return spacingInput;
49
- }
50
- if (typeof spacingInput === 'function') {
51
- return getSpacingVal(spacingInput(1));
52
- }
53
- if (Array.isArray(spacingInput)) {
54
- return spacingInput;
55
- }
56
- return '8px';
57
- }
58
- const silent = fn => {
59
- try {
60
- return fn();
61
- } catch (error) {
62
- // ignore error
63
- }
64
- return undefined;
65
- };
66
- export const createGetCssVar = (cssVarPrefix = 'mui') => systemCreateGetCssVar(cssVarPrefix);
67
- export default function extendTheme(options = {}, ...args) {
68
- const {
69
- colorSchemes: colorSchemesInput = {},
70
- cssVarPrefix = 'mui',
71
- shouldSkipGeneratingVar = defaultShouldSkipGeneratingVar,
72
- getSelector,
73
- ...input
74
- } = options;
75
- const getCssVar = createGetCssVar(cssVarPrefix);
76
- const {
77
- palette: lightPalette,
78
- ...muiTheme
79
- } = createThemeWithoutVars({
80
- ...input,
81
- ...(colorSchemesInput.light && {
82
- palette: colorSchemesInput.light?.palette
83
- })
84
- });
85
- const {
86
- palette: darkPalette
87
- } = createThemeWithoutVars({
88
- palette: {
89
- mode: 'dark',
90
- ...colorSchemesInput.dark?.palette
91
- }
92
- });
93
- let theme = {
94
- defaultColorScheme: 'light',
95
- ...muiTheme,
96
- cssVarPrefix,
97
- getCssVar,
98
- colorSchemes: {
99
- ...colorSchemesInput,
100
- light: {
101
- ...colorSchemesInput.light,
102
- palette: lightPalette,
103
- opacity: {
104
- inputPlaceholder: 0.42,
105
- inputUnderline: 0.42,
106
- switchTrackDisabled: 0.12,
107
- switchTrack: 0.38,
108
- ...colorSchemesInput.light?.opacity
109
- },
110
- overlays: colorSchemesInput.light?.overlays || []
111
- },
112
- dark: {
113
- ...colorSchemesInput.dark,
114
- palette: darkPalette,
115
- opacity: {
116
- inputPlaceholder: 0.5,
117
- inputUnderline: 0.7,
118
- switchTrackDisabled: 0.2,
119
- switchTrack: 0.3,
120
- ...colorSchemesInput.dark?.opacity
121
- },
122
- overlays: colorSchemesInput.dark?.overlays || defaultDarkOverlays
123
- }
124
- },
125
- font: {
126
- ...prepareTypographyVars(muiTheme.typography),
127
- ...muiTheme.font
128
- },
129
- spacing: getSpacingVal(input.spacing)
130
- };
131
- Object.keys(theme.colorSchemes).forEach(key => {
132
- const palette = theme.colorSchemes[key].palette;
133
- const setCssVarColor = cssVar => {
134
- const tokens = cssVar.split('-');
135
- const color = tokens[1];
136
- const colorToken = tokens[2];
137
- return getCssVar(cssVar, palette[color][colorToken]);
138
- };
139
-
140
- // attach black & white channels to common node
141
- if (key === 'light') {
142
- setColor(palette.common, 'background', '#fff');
143
- setColor(palette.common, 'onBackground', '#000');
144
- } else {
145
- setColor(palette.common, 'background', '#000');
146
- setColor(palette.common, 'onBackground', '#fff');
147
- }
148
-
149
- // assign component variables
150
- assignNode(palette, ['Alert', 'AppBar', 'Avatar', 'Button', 'Chip', 'FilledInput', 'LinearProgress', 'Skeleton', 'Slider', 'SnackbarContent', 'SpeedDialAction', 'StepConnector', 'StepContent', 'Switch', 'TableCell', 'Tooltip']);
151
- if (key === 'light') {
152
- setColor(palette.Alert, 'errorColor', safeDarken(palette.error.light, 0.6));
153
- setColor(palette.Alert, 'infoColor', safeDarken(palette.info.light, 0.6));
154
- setColor(palette.Alert, 'successColor', safeDarken(palette.success.light, 0.6));
155
- setColor(palette.Alert, 'warningColor', safeDarken(palette.warning.light, 0.6));
156
- setColor(palette.Alert, 'errorFilledBg', setCssVarColor('palette-error-main'));
157
- setColor(palette.Alert, 'infoFilledBg', setCssVarColor('palette-info-main'));
158
- setColor(palette.Alert, 'successFilledBg', setCssVarColor('palette-success-main'));
159
- setColor(palette.Alert, 'warningFilledBg', setCssVarColor('palette-warning-main'));
160
- setColor(palette.Alert, 'errorFilledColor', silent(() => lightPalette.getContrastText(palette.error.main)));
161
- setColor(palette.Alert, 'infoFilledColor', silent(() => lightPalette.getContrastText(palette.info.main)));
162
- setColor(palette.Alert, 'successFilledColor', silent(() => lightPalette.getContrastText(palette.success.main)));
163
- setColor(palette.Alert, 'warningFilledColor', silent(() => lightPalette.getContrastText(palette.warning.main)));
164
- setColor(palette.Alert, 'errorStandardBg', safeLighten(palette.error.light, 0.9));
165
- setColor(palette.Alert, 'infoStandardBg', safeLighten(palette.info.light, 0.9));
166
- setColor(palette.Alert, 'successStandardBg', safeLighten(palette.success.light, 0.9));
167
- setColor(palette.Alert, 'warningStandardBg', safeLighten(palette.warning.light, 0.9));
168
- setColor(palette.Alert, 'errorIconColor', setCssVarColor('palette-error-main'));
169
- setColor(palette.Alert, 'infoIconColor', setCssVarColor('palette-info-main'));
170
- setColor(palette.Alert, 'successIconColor', setCssVarColor('palette-success-main'));
171
- setColor(palette.Alert, 'warningIconColor', setCssVarColor('palette-warning-main'));
172
- setColor(palette.AppBar, 'defaultBg', setCssVarColor('palette-grey-100'));
173
- setColor(palette.Avatar, 'defaultBg', setCssVarColor('palette-grey-400'));
174
- setColor(palette.Button, 'inheritContainedBg', setCssVarColor('palette-grey-300'));
175
- setColor(palette.Button, 'inheritContainedHoverBg', setCssVarColor('palette-grey-A100'));
176
- setColor(palette.Chip, 'defaultBorder', setCssVarColor('palette-grey-400'));
177
- setColor(palette.Chip, 'defaultAvatarColor', setCssVarColor('palette-grey-700'));
178
- setColor(palette.Chip, 'defaultIconColor', setCssVarColor('palette-grey-700'));
179
- setColor(palette.FilledInput, 'bg', 'rgba(0, 0, 0, 0.06)');
180
- setColor(palette.FilledInput, 'hoverBg', 'rgba(0, 0, 0, 0.09)');
181
- setColor(palette.FilledInput, 'disabledBg', 'rgba(0, 0, 0, 0.12)');
182
- setColor(palette.LinearProgress, 'primaryBg', safeLighten(palette.primary.main, 0.62));
183
- setColor(palette.LinearProgress, 'secondaryBg', safeLighten(palette.secondary.main, 0.62));
184
- setColor(palette.LinearProgress, 'errorBg', safeLighten(palette.error.main, 0.62));
185
- setColor(palette.LinearProgress, 'infoBg', safeLighten(palette.info.main, 0.62));
186
- setColor(palette.LinearProgress, 'successBg', safeLighten(palette.success.main, 0.62));
187
- setColor(palette.LinearProgress, 'warningBg', safeLighten(palette.warning.main, 0.62));
188
- setColor(palette.Skeleton, 'bg', `rgba(${setCssVarColor('palette-text-primaryChannel')} / 0.11)`);
189
- setColor(palette.Slider, 'primaryTrack', safeLighten(palette.primary.main, 0.62));
190
- setColor(palette.Slider, 'secondaryTrack', safeLighten(palette.secondary.main, 0.62));
191
- setColor(palette.Slider, 'errorTrack', safeLighten(palette.error.main, 0.62));
192
- setColor(palette.Slider, 'infoTrack', safeLighten(palette.info.main, 0.62));
193
- setColor(palette.Slider, 'successTrack', safeLighten(palette.success.main, 0.62));
194
- setColor(palette.Slider, 'warningTrack', safeLighten(palette.warning.main, 0.62));
195
- const snackbarContentBackground = safeEmphasize(palette.background.default, 0.8);
196
- setColor(palette.SnackbarContent, 'bg', snackbarContentBackground);
197
- setColor(palette.SnackbarContent, 'color', silent(() => lightPalette.getContrastText(snackbarContentBackground)));
198
- setColor(palette.SpeedDialAction, 'fabHoverBg', safeEmphasize(palette.background.paper, 0.15));
199
- setColor(palette.StepConnector, 'border', setCssVarColor('palette-grey-400'));
200
- setColor(palette.StepContent, 'border', setCssVarColor('palette-grey-400'));
201
- setColor(palette.Switch, 'defaultColor', setCssVarColor('palette-common-white'));
202
- setColor(palette.Switch, 'defaultDisabledColor', setCssVarColor('palette-grey-100'));
203
- setColor(palette.Switch, 'primaryDisabledColor', safeLighten(palette.primary.main, 0.62));
204
- setColor(palette.Switch, 'secondaryDisabledColor', safeLighten(palette.secondary.main, 0.62));
205
- setColor(palette.Switch, 'errorDisabledColor', safeLighten(palette.error.main, 0.62));
206
- setColor(palette.Switch, 'infoDisabledColor', safeLighten(palette.info.main, 0.62));
207
- setColor(palette.Switch, 'successDisabledColor', safeLighten(palette.success.main, 0.62));
208
- setColor(palette.Switch, 'warningDisabledColor', safeLighten(palette.warning.main, 0.62));
209
- setColor(palette.TableCell, 'border', safeLighten(safeAlpha(palette.divider, 1), 0.88));
210
- setColor(palette.Tooltip, 'bg', safeAlpha(palette.grey[700], 0.92));
211
- } else {
212
- setColor(palette.Alert, 'errorColor', safeLighten(palette.error.light, 0.6));
213
- setColor(palette.Alert, 'infoColor', safeLighten(palette.info.light, 0.6));
214
- setColor(palette.Alert, 'successColor', safeLighten(palette.success.light, 0.6));
215
- setColor(palette.Alert, 'warningColor', safeLighten(palette.warning.light, 0.6));
216
- setColor(palette.Alert, 'errorFilledBg', setCssVarColor('palette-error-dark'));
217
- setColor(palette.Alert, 'infoFilledBg', setCssVarColor('palette-info-dark'));
218
- setColor(palette.Alert, 'successFilledBg', setCssVarColor('palette-success-dark'));
219
- setColor(palette.Alert, 'warningFilledBg', setCssVarColor('palette-warning-dark'));
220
- setColor(palette.Alert, 'errorFilledColor', silent(() => darkPalette.getContrastText(palette.error.dark)));
221
- setColor(palette.Alert, 'infoFilledColor', silent(() => darkPalette.getContrastText(palette.info.dark)));
222
- setColor(palette.Alert, 'successFilledColor', silent(() => darkPalette.getContrastText(palette.success.dark)));
223
- setColor(palette.Alert, 'warningFilledColor', silent(() => darkPalette.getContrastText(palette.warning.dark)));
224
- setColor(palette.Alert, 'errorStandardBg', safeDarken(palette.error.light, 0.9));
225
- setColor(palette.Alert, 'infoStandardBg', safeDarken(palette.info.light, 0.9));
226
- setColor(palette.Alert, 'successStandardBg', safeDarken(palette.success.light, 0.9));
227
- setColor(palette.Alert, 'warningStandardBg', safeDarken(palette.warning.light, 0.9));
228
- setColor(palette.Alert, 'errorIconColor', setCssVarColor('palette-error-main'));
229
- setColor(palette.Alert, 'infoIconColor', setCssVarColor('palette-info-main'));
230
- setColor(palette.Alert, 'successIconColor', setCssVarColor('palette-success-main'));
231
- setColor(palette.Alert, 'warningIconColor', setCssVarColor('palette-warning-main'));
232
- setColor(palette.AppBar, 'defaultBg', setCssVarColor('palette-grey-900'));
233
- setColor(palette.AppBar, 'darkBg', setCssVarColor('palette-background-paper')); // specific for dark mode
234
- setColor(palette.AppBar, 'darkColor', setCssVarColor('palette-text-primary')); // specific for dark mode
235
- setColor(palette.Avatar, 'defaultBg', setCssVarColor('palette-grey-600'));
236
- setColor(palette.Button, 'inheritContainedBg', setCssVarColor('palette-grey-800'));
237
- setColor(palette.Button, 'inheritContainedHoverBg', setCssVarColor('palette-grey-700'));
238
- setColor(palette.Chip, 'defaultBorder', setCssVarColor('palette-grey-700'));
239
- setColor(palette.Chip, 'defaultAvatarColor', setCssVarColor('palette-grey-300'));
240
- setColor(palette.Chip, 'defaultIconColor', setCssVarColor('palette-grey-300'));
241
- setColor(palette.FilledInput, 'bg', 'rgba(255, 255, 255, 0.09)');
242
- setColor(palette.FilledInput, 'hoverBg', 'rgba(255, 255, 255, 0.13)');
243
- setColor(palette.FilledInput, 'disabledBg', 'rgba(255, 255, 255, 0.12)');
244
- setColor(palette.LinearProgress, 'primaryBg', safeDarken(palette.primary.main, 0.5));
245
- setColor(palette.LinearProgress, 'secondaryBg', safeDarken(palette.secondary.main, 0.5));
246
- setColor(palette.LinearProgress, 'errorBg', safeDarken(palette.error.main, 0.5));
247
- setColor(palette.LinearProgress, 'infoBg', safeDarken(palette.info.main, 0.5));
248
- setColor(palette.LinearProgress, 'successBg', safeDarken(palette.success.main, 0.5));
249
- setColor(palette.LinearProgress, 'warningBg', safeDarken(palette.warning.main, 0.5));
250
- setColor(palette.Skeleton, 'bg', `rgba(${setCssVarColor('palette-text-primaryChannel')} / 0.13)`);
251
- setColor(palette.Slider, 'primaryTrack', safeDarken(palette.primary.main, 0.5));
252
- setColor(palette.Slider, 'secondaryTrack', safeDarken(palette.secondary.main, 0.5));
253
- setColor(palette.Slider, 'errorTrack', safeDarken(palette.error.main, 0.5));
254
- setColor(palette.Slider, 'infoTrack', safeDarken(palette.info.main, 0.5));
255
- setColor(palette.Slider, 'successTrack', safeDarken(palette.success.main, 0.5));
256
- setColor(palette.Slider, 'warningTrack', safeDarken(palette.warning.main, 0.5));
257
- const snackbarContentBackground = safeEmphasize(palette.background.default, 0.98);
258
- setColor(palette.SnackbarContent, 'bg', snackbarContentBackground);
259
- setColor(palette.SnackbarContent, 'color', silent(() => darkPalette.getContrastText(snackbarContentBackground)));
260
- setColor(palette.SpeedDialAction, 'fabHoverBg', safeEmphasize(palette.background.paper, 0.15));
261
- setColor(palette.StepConnector, 'border', setCssVarColor('palette-grey-600'));
262
- setColor(palette.StepContent, 'border', setCssVarColor('palette-grey-600'));
263
- setColor(palette.Switch, 'defaultColor', setCssVarColor('palette-grey-300'));
264
- setColor(palette.Switch, 'defaultDisabledColor', setCssVarColor('palette-grey-600'));
265
- setColor(palette.Switch, 'primaryDisabledColor', safeDarken(palette.primary.main, 0.55));
266
- setColor(palette.Switch, 'secondaryDisabledColor', safeDarken(palette.secondary.main, 0.55));
267
- setColor(palette.Switch, 'errorDisabledColor', safeDarken(palette.error.main, 0.55));
268
- setColor(palette.Switch, 'infoDisabledColor', safeDarken(palette.info.main, 0.55));
269
- setColor(palette.Switch, 'successDisabledColor', safeDarken(palette.success.main, 0.55));
270
- setColor(palette.Switch, 'warningDisabledColor', safeDarken(palette.warning.main, 0.55));
271
- setColor(palette.TableCell, 'border', safeDarken(safeAlpha(palette.divider, 1), 0.68));
272
- setColor(palette.Tooltip, 'bg', safeAlpha(palette.grey[700], 0.92));
273
- }
274
-
275
- // MUI X - DataGrid needs this token.
276
- setColorChannel(palette.background, 'default');
277
-
278
- // added for consistency with the `background.default` token
279
- setColorChannel(palette.background, 'paper');
280
- setColorChannel(palette.common, 'background');
281
- setColorChannel(palette.common, 'onBackground');
282
- setColorChannel(palette, 'divider');
283
- Object.keys(palette).forEach(color => {
284
- const colors = palette[color];
285
-
286
- // The default palettes (primary, secondary, error, info, success, and warning) errors are handled by the above `createTheme(...)`.
287
-
288
- if (colors && typeof colors === 'object') {
289
- // Silent the error for custom palettes.
290
- if (colors.main) {
291
- setColor(palette[color], 'mainChannel', safeColorChannel(toRgb(colors.main)));
292
- }
293
- if (colors.light) {
294
- setColor(palette[color], 'lightChannel', safeColorChannel(toRgb(colors.light)));
295
- }
296
- if (colors.dark) {
297
- setColor(palette[color], 'darkChannel', safeColorChannel(toRgb(colors.dark)));
298
- }
299
- if (colors.contrastText) {
300
- setColor(palette[color], 'contrastTextChannel', safeColorChannel(toRgb(colors.contrastText)));
301
- }
302
- if (color === 'text') {
303
- // Text colors: text.primary, text.secondary
304
- setColorChannel(palette[color], 'primary');
305
- setColorChannel(palette[color], 'secondary');
306
- }
307
- if (color === 'action') {
308
- // Action colors: action.active, action.selected
309
- if (colors.active) {
310
- setColorChannel(palette[color], 'active');
311
- }
312
- if (colors.selected) {
313
- setColorChannel(palette[color], 'selected');
314
- }
315
- }
316
- }
317
- });
318
- });
319
- theme = args.reduce((acc, argument) => deepmerge(acc, argument), theme);
320
- const parserConfig = {
321
- prefix: cssVarPrefix,
322
- shouldSkipGeneratingVar,
323
- getSelector: getSelector || defaultGetSelector(theme)
324
- };
325
- const {
326
- vars,
327
- generateThemeVars,
328
- generateStyleSheets
329
- } = prepareCssVars(theme, parserConfig);
330
- theme.attribute = 'data-mui-color-scheme';
331
- theme.colorSchemeSelector = ':root';
332
- theme.vars = vars;
333
- Object.entries(theme.colorSchemes[theme.defaultColorScheme]).forEach(([key, value]) => {
334
- theme[key] = value;
335
- });
336
- theme.generateThemeVars = generateThemeVars;
337
- theme.generateStyleSheets = generateStyleSheets;
338
- theme.generateSpacing = function generateSpacing() {
339
- return createSpacing(input.spacing, createUnarySpacing(this));
340
- };
341
- theme.getColorSchemeSelector = colorScheme => `[${theme.attribute}="${colorScheme}"] &`;
342
- theme.spacing = theme.generateSpacing();
343
- theme.shouldSkipGeneratingVar = shouldSkipGeneratingVar;
344
- theme.unstable_sxConfig = {
345
- ...defaultSxConfig,
346
- ...input?.unstable_sxConfig
347
- };
348
- theme.unstable_sx = function sx(props) {
349
- return styleFunctionSx({
350
- sx: props,
351
- theme: this
352
- });
353
- };
354
- return theme;
1
+ import extendTheme from './extendTheme';
2
+ let warnedOnce = false;
3
+ export default function deprecatedExtendTheme(...args) {
4
+ if (!warnedOnce) {
5
+ console.warn(['MUI: The `experimental_extendTheme` has been stabilized.', '', "You should use `import { extendTheme } from '@mui/material/styles'`"].join('\n'));
6
+ warnedOnce = true;
7
+ }
8
+ return extendTheme(...args);
355
9
  }
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/naming-convention */
2
1
  import { OverridableStringUnion } from '@mui/types';
3
2
  import { SxConfig, SxProps, CSSObject, ApplyStyles } from '@mui/system';
4
3
  import { ExtractTypographyTokens } from '@mui/system/cssVars';
@@ -465,7 +464,7 @@ export interface CssVarsTheme extends ColorSystem {
465
464
  * @param args Deep merge the arguments with the about to be returned theme.
466
465
  * @returns A complete, ready-to-use theme object.
467
466
  */
468
- export default function experimental_extendTheme(
467
+ export default function extendTheme(
469
468
  options?: CssVarsThemeOptions,
470
469
  ...args: object[]
471
470
  ): Omit<Theme, 'applyStyles'> & CssVarsTheme;