@mui/material 5.8.2 → 5.8.5

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 (154) hide show
  1. package/Alert/Alert.js +3 -1
  2. package/AppBar/AppBar.js +22 -5
  3. package/Autocomplete/autocompleteClasses.d.ts +1 -1
  4. package/Avatar/Avatar.js +7 -4
  5. package/Badge/Badge.js +2 -2
  6. package/Button/buttonClasses.d.ts +24 -0
  7. package/Button/buttonClasses.js +1 -1
  8. package/CHANGELOG.md +225 -8
  9. package/Checkbox/Checkbox.js +4 -4
  10. package/Chip/Chip.js +31 -30
  11. package/Dialog/Dialog.js +11 -6
  12. package/FilledInput/FilledInput.js +28 -13
  13. package/Grid/Grid.d.ts +73 -52
  14. package/Grid/Grid.js +94 -40
  15. package/Grow/Grow.js +1 -2
  16. package/Hidden/withWidth.js +0 -2
  17. package/InputBase/InputBase.js +2 -2
  18. package/LinearProgress/LinearProgress.js +6 -2
  19. package/Link/Link.js +10 -17
  20. package/Link/getTextDecoration.d.ts +15 -0
  21. package/Link/getTextDecoration.js +29 -0
  22. package/Modal/Modal.d.ts +2 -0
  23. package/Modal/Modal.js +25 -8
  24. package/OutlinedInput/OutlinedInput.js +25 -10
  25. package/Popover/Popover.d.ts +7 -0
  26. package/Popover/index.js +1 -0
  27. package/README.md +13 -12
  28. package/Skeleton/Skeleton.js +8 -3
  29. package/Slider/Slider.d.ts +3 -1
  30. package/Slider/Slider.js +35 -20
  31. package/Snackbar/Snackbar.js +6 -20
  32. package/SnackbarContent/SnackbarContent.js +3 -3
  33. package/SpeedDialAction/SpeedDialAction.js +7 -7
  34. package/Stack/Stack.js +1 -1
  35. package/StepConnector/StepConnector.js +14 -11
  36. package/StepContent/StepContent.js +1 -1
  37. package/StepIcon/StepIcon.js +2 -1
  38. package/Switch/Switch.js +11 -11
  39. package/Tab/Tab.d.ts +0 -1
  40. package/TableCell/TableCell.js +5 -5
  41. package/Tabs/Tabs.js +6 -0
  42. package/Tooltip/Tooltip.js +1 -1
  43. package/index.js +1 -1
  44. package/legacy/Alert/Alert.js +3 -1
  45. package/legacy/AppBar/AppBar.js +23 -4
  46. package/legacy/Avatar/Avatar.js +7 -4
  47. package/legacy/Badge/Badge.js +2 -2
  48. package/legacy/Button/buttonClasses.js +1 -1
  49. package/legacy/Checkbox/Checkbox.js +4 -4
  50. package/legacy/Chip/Chip.js +31 -30
  51. package/legacy/Dialog/Dialog.js +11 -6
  52. package/legacy/FilledInput/FilledInput.js +28 -14
  53. package/legacy/Grid/Grid.js +97 -48
  54. package/legacy/Grow/Grow.js +1 -2
  55. package/legacy/Hidden/withWidth.js +0 -2
  56. package/legacy/InputBase/InputBase.js +2 -2
  57. package/legacy/LinearProgress/LinearProgress.js +6 -2
  58. package/legacy/Link/Link.js +10 -17
  59. package/legacy/Link/getTextDecoration.js +28 -0
  60. package/legacy/Modal/Modal.js +23 -7
  61. package/legacy/OutlinedInput/OutlinedInput.js +21 -9
  62. package/legacy/Popover/index.js +1 -0
  63. package/legacy/Skeleton/Skeleton.js +2 -2
  64. package/legacy/Slider/Slider.js +35 -20
  65. package/legacy/Snackbar/Snackbar.js +6 -21
  66. package/legacy/SnackbarContent/SnackbarContent.js +3 -3
  67. package/legacy/SpeedDialAction/SpeedDialAction.js +7 -7
  68. package/legacy/Stack/Stack.js +2 -1
  69. package/legacy/StepConnector/StepConnector.js +2 -1
  70. package/legacy/StepContent/StepContent.js +1 -1
  71. package/legacy/StepIcon/StepIcon.js +2 -1
  72. package/legacy/Switch/Switch.js +11 -11
  73. package/legacy/TableCell/TableCell.js +5 -5
  74. package/legacy/Tabs/Tabs.js +6 -0
  75. package/legacy/Tooltip/Tooltip.js +1 -1
  76. package/legacy/index.js +1 -1
  77. package/legacy/styles/CssVarsProvider.js +4 -1
  78. package/legacy/styles/experimental_extendTheme.js +113 -18
  79. package/modern/Alert/Alert.js +3 -1
  80. package/modern/AppBar/AppBar.js +22 -5
  81. package/modern/Avatar/Avatar.js +7 -4
  82. package/modern/Badge/Badge.js +2 -2
  83. package/modern/Button/buttonClasses.js +1 -1
  84. package/modern/Checkbox/Checkbox.js +4 -4
  85. package/modern/Chip/Chip.js +31 -30
  86. package/modern/Dialog/Dialog.js +11 -6
  87. package/modern/FilledInput/FilledInput.js +27 -12
  88. package/modern/Grid/Grid.js +94 -40
  89. package/modern/Grow/Grow.js +1 -2
  90. package/modern/Hidden/withWidth.js +0 -2
  91. package/modern/InputBase/InputBase.js +2 -2
  92. package/modern/LinearProgress/LinearProgress.js +6 -2
  93. package/modern/Link/Link.js +10 -17
  94. package/modern/Link/getTextDecoration.js +29 -0
  95. package/modern/Modal/Modal.js +24 -7
  96. package/modern/OutlinedInput/OutlinedInput.js +25 -10
  97. package/modern/Popover/index.js +1 -0
  98. package/modern/Skeleton/Skeleton.js +7 -2
  99. package/modern/Slider/Slider.js +35 -20
  100. package/modern/Snackbar/Snackbar.js +6 -20
  101. package/modern/SnackbarContent/SnackbarContent.js +3 -3
  102. package/modern/SpeedDialAction/SpeedDialAction.js +7 -7
  103. package/modern/Stack/Stack.js +1 -1
  104. package/modern/StepConnector/StepConnector.js +14 -11
  105. package/modern/StepContent/StepContent.js +1 -1
  106. package/modern/StepIcon/StepIcon.js +2 -1
  107. package/modern/Switch/Switch.js +11 -11
  108. package/modern/TableCell/TableCell.js +5 -5
  109. package/modern/Tabs/Tabs.js +6 -0
  110. package/modern/Tooltip/Tooltip.js +1 -1
  111. package/modern/index.js +1 -1
  112. package/modern/styles/CssVarsProvider.js +4 -1
  113. package/modern/styles/experimental_extendTheme.js +114 -18
  114. package/node/Alert/Alert.js +3 -1
  115. package/node/AppBar/AppBar.js +22 -5
  116. package/node/Avatar/Avatar.js +7 -4
  117. package/node/Badge/Badge.js +2 -2
  118. package/node/Button/buttonClasses.js +1 -1
  119. package/node/Checkbox/Checkbox.js +4 -4
  120. package/node/Chip/Chip.js +31 -30
  121. package/node/Dialog/Dialog.js +11 -6
  122. package/node/FilledInput/FilledInput.js +28 -13
  123. package/node/Grid/Grid.js +95 -40
  124. package/node/Grow/Grow.js +1 -2
  125. package/node/Hidden/withWidth.js +0 -3
  126. package/node/InputBase/InputBase.js +2 -2
  127. package/node/LinearProgress/LinearProgress.js +6 -2
  128. package/node/Link/Link.js +12 -20
  129. package/node/Link/getTextDecoration.js +39 -0
  130. package/node/Modal/Modal.js +25 -8
  131. package/node/OutlinedInput/OutlinedInput.js +25 -10
  132. package/node/Popover/index.js +13 -3
  133. package/node/Skeleton/Skeleton.js +7 -2
  134. package/node/Slider/Slider.js +35 -20
  135. package/node/Snackbar/Snackbar.js +6 -18
  136. package/node/SnackbarContent/SnackbarContent.js +3 -3
  137. package/node/SpeedDialAction/SpeedDialAction.js +7 -7
  138. package/node/Stack/Stack.js +1 -1
  139. package/node/StepConnector/StepConnector.js +14 -11
  140. package/node/StepContent/StepContent.js +1 -1
  141. package/node/StepIcon/StepIcon.js +2 -1
  142. package/node/Switch/Switch.js +11 -11
  143. package/node/TableCell/TableCell.js +5 -5
  144. package/node/Tabs/Tabs.js +6 -0
  145. package/node/Tooltip/Tooltip.js +1 -1
  146. package/node/index.js +1 -1
  147. package/node/styles/CssVarsProvider.js +4 -1
  148. package/node/styles/experimental_extendTheme.js +112 -17
  149. package/package.json +6 -7
  150. package/styles/CssVarsProvider.js +4 -1
  151. package/styles/createPalette.d.ts +65 -2
  152. package/styles/experimental_extendTheme.js +114 -18
  153. package/umd/material-ui.development.js +767 -414
  154. package/umd/material-ui.production.min.js +27 -22
package/Chip/Chip.js CHANGED
@@ -78,6 +78,7 @@ const ChipRoot = styled('div', {
78
78
  ownerState
79
79
  }) => {
80
80
  const deleteIconColor = alpha(theme.palette.text.primary, 0.26);
81
+ const textColor = theme.palette.mode === 'light' ? theme.palette.grey[700] : theme.palette.grey[300];
81
82
  return _extends({
82
83
  maxWidth: '100%',
83
84
  fontFamily: theme.typography.fontFamily,
@@ -86,8 +87,8 @@ const ChipRoot = styled('div', {
86
87
  alignItems: 'center',
87
88
  justifyContent: 'center',
88
89
  height: 32,
89
- color: theme.palette.text.primary,
90
- backgroundColor: theme.palette.action.selected,
90
+ color: (theme.vars || theme).palette.text.primary,
91
+ backgroundColor: (theme.vars || theme).palette.action.selected,
91
92
  borderRadius: 32 / 2,
92
93
  whiteSpace: 'nowrap',
93
94
  transition: theme.transitions.create(['background-color', 'box-shadow']),
@@ -103,7 +104,7 @@ const ChipRoot = styled('div', {
103
104
  verticalAlign: 'middle',
104
105
  boxSizing: 'border-box',
105
106
  [`&.${chipClasses.disabled}`]: {
106
- opacity: theme.palette.action.disabledOpacity,
107
+ opacity: (theme.vars || theme).palette.action.disabledOpacity,
107
108
  pointerEvents: 'none'
108
109
  },
109
110
  [`& .${chipClasses.avatar}`]: {
@@ -111,16 +112,16 @@ const ChipRoot = styled('div', {
111
112
  marginRight: -6,
112
113
  width: 24,
113
114
  height: 24,
114
- color: theme.palette.mode === 'light' ? theme.palette.grey[700] : theme.palette.grey[300],
115
+ color: theme.vars ? theme.vars.palette.Chip.defaultAvatarColor : textColor,
115
116
  fontSize: theme.typography.pxToRem(12)
116
117
  },
117
118
  [`& .${chipClasses.avatarColorPrimary}`]: {
118
- color: theme.palette.primary.contrastText,
119
- backgroundColor: theme.palette.primary.dark
119
+ color: (theme.vars || theme).palette.primary.contrastText,
120
+ backgroundColor: (theme.vars || theme).palette.primary.dark
120
121
  },
121
122
  [`& .${chipClasses.avatarColorSecondary}`]: {
122
- color: theme.palette.secondary.contrastText,
123
- backgroundColor: theme.palette.secondary.dark
123
+ color: (theme.vars || theme).palette.secondary.contrastText,
124
+ backgroundColor: (theme.vars || theme).palette.secondary.dark
124
125
  },
125
126
  [`& .${chipClasses.avatarSmall}`]: {
126
127
  marginLeft: 4,
@@ -130,7 +131,7 @@ const ChipRoot = styled('div', {
130
131
  fontSize: theme.typography.pxToRem(10)
131
132
  },
132
133
  [`& .${chipClasses.icon}`]: _extends({
133
- color: theme.palette.mode === 'light' ? theme.palette.grey[700] : theme.palette.grey[300],
134
+ color: theme.vars ? theme.vars.palette.Chip.defaultIconColor : textColor,
134
135
  marginLeft: 5,
135
136
  marginRight: -6
136
137
  }, ownerState.size === 'small' && {
@@ -142,35 +143,35 @@ const ChipRoot = styled('div', {
142
143
  }),
143
144
  [`& .${chipClasses.deleteIcon}`]: _extends({
144
145
  WebkitTapHighlightColor: 'transparent',
145
- color: deleteIconColor,
146
+ color: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / 0.26)` : deleteIconColor,
146
147
  fontSize: 22,
147
148
  cursor: 'pointer',
148
149
  margin: '0 5px 0 -6px',
149
150
  '&:hover': {
150
- color: alpha(deleteIconColor, 0.4)
151
+ color: theme.vars ? `rgba(${theme.vars.palette.text.primaryChannel} / 0.4)` : alpha(deleteIconColor, 0.4)
151
152
  }
152
153
  }, ownerState.size === 'small' && {
153
154
  fontSize: 16,
154
155
  marginRight: 4,
155
156
  marginLeft: -4
156
157
  }, ownerState.color !== 'default' && {
157
- color: alpha(theme.palette[ownerState.color].contrastText, 0.7),
158
+ color: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].contrastTextChannel} / 0.7)` : alpha(theme.palette[ownerState.color].contrastText, 0.7),
158
159
  '&:hover, &:active': {
159
- color: theme.palette[ownerState.color].contrastText
160
+ color: (theme.vars || theme).palette[ownerState.color].contrastText
160
161
  }
161
162
  })
162
163
  }, ownerState.size === 'small' && {
163
164
  height: 24
164
165
  }, ownerState.color !== 'default' && {
165
- backgroundColor: theme.palette[ownerState.color].main,
166
- color: theme.palette[ownerState.color].contrastText
166
+ backgroundColor: (theme.vars || theme).palette[ownerState.color].main,
167
+ color: (theme.vars || theme).palette[ownerState.color].contrastText
167
168
  }, ownerState.onDelete && {
168
169
  [`&.${chipClasses.focusVisible}`]: {
169
- backgroundColor: alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)
170
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity + theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)
170
171
  }
171
172
  }, ownerState.onDelete && ownerState.color !== 'default' && {
172
173
  [`&.${chipClasses.focusVisible}`]: {
173
- backgroundColor: theme.palette[ownerState.color].dark
174
+ backgroundColor: (theme.vars || theme).palette[ownerState.color].dark
174
175
  }
175
176
  });
176
177
  }, ({
@@ -181,29 +182,29 @@ const ChipRoot = styled('div', {
181
182
  WebkitTapHighlightColor: 'transparent',
182
183
  cursor: 'pointer',
183
184
  '&:hover': {
184
- backgroundColor: alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity)
185
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity + theme.vars.palette.action.hoverOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.hoverOpacity)
185
186
  },
186
187
  [`&.${chipClasses.focusVisible}`]: {
187
- backgroundColor: alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)
188
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette.action.selectedChannel} / calc(${theme.vars.palette.action.selectedOpacity + theme.vars.palette.action.focusOpacity}))` : alpha(theme.palette.action.selected, theme.palette.action.selectedOpacity + theme.palette.action.focusOpacity)
188
189
  },
189
190
  '&:active': {
190
- boxShadow: theme.shadows[1]
191
+ boxShadow: (theme.vars || theme).shadows[1]
191
192
  }
192
193
  }, ownerState.clickable && ownerState.color !== 'default' && {
193
194
  [`&:hover, &.${chipClasses.focusVisible}`]: {
194
- backgroundColor: theme.palette[ownerState.color].dark
195
+ backgroundColor: (theme.vars || theme).palette[ownerState.color].dark
195
196
  }
196
197
  }), ({
197
198
  theme,
198
199
  ownerState
199
200
  }) => _extends({}, ownerState.variant === 'outlined' && {
200
201
  backgroundColor: 'transparent',
201
- border: `1px solid ${theme.palette.mode === 'light' ? theme.palette.grey[400] : theme.palette.grey[700]}`,
202
+ border: theme.vars ? `1px solid ${theme.vars.palette.Chip.defaultBorder}` : `1px solid ${theme.palette.mode === 'light' ? theme.palette.grey[400] : theme.palette.grey[700]}`,
202
203
  [`&.${chipClasses.clickable}:hover`]: {
203
- backgroundColor: theme.palette.action.hover
204
+ backgroundColor: (theme.vars || theme).palette.action.hover
204
205
  },
205
206
  [`&.${chipClasses.focusVisible}`]: {
206
- backgroundColor: theme.palette.action.focus
207
+ backgroundColor: (theme.vars || theme).palette.action.focus
207
208
  },
208
209
  [`& .${chipClasses.avatar}`]: {
209
210
  marginLeft: 4
@@ -224,18 +225,18 @@ const ChipRoot = styled('div', {
224
225
  marginRight: 3
225
226
  }
226
227
  }, ownerState.variant === 'outlined' && ownerState.color !== 'default' && {
227
- color: theme.palette[ownerState.color].main,
228
- border: `1px solid ${alpha(theme.palette[ownerState.color].main, 0.7)}`,
228
+ color: (theme.vars || theme).palette[ownerState.color].main,
229
+ border: `1px solid ${theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.7)` : alpha(theme.palette[ownerState.color].main, 0.7)}`,
229
230
  [`&.${chipClasses.clickable}:hover`]: {
230
- backgroundColor: alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity)
231
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.hoverOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.hoverOpacity)
231
232
  },
232
233
  [`&.${chipClasses.focusVisible}`]: {
233
- backgroundColor: alpha(theme.palette[ownerState.color].main, theme.palette.action.focusOpacity)
234
+ backgroundColor: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / ${theme.vars.palette.action.focusOpacity})` : alpha(theme.palette[ownerState.color].main, theme.palette.action.focusOpacity)
234
235
  },
235
236
  [`& .${chipClasses.deleteIcon}`]: {
236
- color: alpha(theme.palette[ownerState.color].main, 0.7),
237
+ color: theme.vars ? `rgba(${theme.vars.palette[ownerState.color].mainChannel} / 0.7)` : alpha(theme.palette[ownerState.color].main, 0.7),
237
238
  '&:hover, &:active': {
238
- color: theme.palette[ownerState.color].main
239
+ color: (theme.vars || theme).palette[ownerState.color].main
239
240
  }
240
241
  }
241
242
  }));
package/Dialog/Dialog.js CHANGED
@@ -125,7 +125,7 @@ const DialogPaper = styled(Paper, {
125
125
  maxWidth: 'calc(100% - 64px)'
126
126
  }
127
127
  }
128
- }, ownerState.maxWidth !== 'xs' && {
128
+ }, ownerState.maxWidth && ownerState.maxWidth !== 'xs' && {
129
129
  maxWidth: `${theme.breakpoints.values[ownerState.maxWidth]}${theme.breakpoints.unit}`,
130
130
  [`&.${dialogClasses.paperScrollBody}`]: {
131
131
  [theme.breakpoints.down(theme.breakpoints.values[ownerState.maxWidth] + 32 * 2)]: {
@@ -226,12 +226,16 @@ const Dialog = /*#__PURE__*/React.forwardRef(function Dialog(inProps, ref) {
226
226
  }, [ariaLabelledby]);
227
227
  return /*#__PURE__*/_jsx(DialogRoot, _extends({
228
228
  className: clsx(classes.root, className),
229
- BackdropProps: _extends({
230
- transitionDuration,
231
- as: BackdropComponent
232
- }, BackdropProps),
233
229
  closeAfterTransition: true,
234
- BackdropComponent: DialogBackdrop,
230
+ components: {
231
+ Backdrop: DialogBackdrop
232
+ },
233
+ componentsProps: {
234
+ backdrop: _extends({
235
+ transitionDuration,
236
+ as: BackdropComponent
237
+ }, BackdropProps)
238
+ },
235
239
  disableEscapeKeyDown: disableEscapeKeyDown,
236
240
  onClose: onClose,
237
241
  open: open,
@@ -287,6 +291,7 @@ process.env.NODE_ENV !== "production" ? Dialog.propTypes
287
291
 
288
292
  /**
289
293
  * A backdrop component. This prop enables custom backdrop rendering.
294
+ * @deprecated Use `components.Backdrop` instead.
290
295
  * @default styled(Backdrop, {
291
296
  * name: 'MuiModal',
292
297
  * slot: 'Backdrop',
@@ -39,36 +39,38 @@ const FilledInputRoot = styled(InputBaseRoot, {
39
39
  theme,
40
40
  ownerState
41
41
  }) => {
42
- var _theme$palette;
42
+ var _palette;
43
43
 
44
44
  const light = theme.palette.mode === 'light';
45
45
  const bottomLineColor = light ? 'rgba(0, 0, 0, 0.42)' : 'rgba(255, 255, 255, 0.7)';
46
46
  const backgroundColor = light ? 'rgba(0, 0, 0, 0.06)' : 'rgba(255, 255, 255, 0.09)';
47
+ const hoverBackground = light ? 'rgba(0, 0, 0, 0.09)' : 'rgba(255, 255, 255, 0.13)';
48
+ const disabledBackground = light ? 'rgba(0, 0, 0, 0.12)' : 'rgba(255, 255, 255, 0.12)';
47
49
  return _extends({
48
50
  position: 'relative',
49
- backgroundColor,
50
- borderTopLeftRadius: theme.shape.borderRadius,
51
- borderTopRightRadius: theme.shape.borderRadius,
51
+ backgroundColor: theme.vars ? theme.vars.palette.FilledInput.bg : backgroundColor,
52
+ borderTopLeftRadius: (theme.vars || theme).shape.borderRadius,
53
+ borderTopRightRadius: (theme.vars || theme).shape.borderRadius,
52
54
  transition: theme.transitions.create('background-color', {
53
55
  duration: theme.transitions.duration.shorter,
54
56
  easing: theme.transitions.easing.easeOut
55
57
  }),
56
58
  '&:hover': {
57
- backgroundColor: light ? 'rgba(0, 0, 0, 0.09)' : 'rgba(255, 255, 255, 0.13)',
59
+ backgroundColor: theme.vars ? theme.vars.palette.FilledInput.hoverBg : hoverBackground,
58
60
  // Reset on touch devices, it doesn't add specificity
59
61
  '@media (hover: none)': {
60
- backgroundColor
62
+ backgroundColor: theme.vars ? theme.vars.palette.FilledInput.bg : backgroundColor
61
63
  }
62
64
  },
63
65
  [`&.${filledInputClasses.focused}`]: {
64
- backgroundColor
66
+ backgroundColor: theme.vars ? theme.vars.palette.FilledInput.bg : backgroundColor
65
67
  },
66
68
  [`&.${filledInputClasses.disabled}`]: {
67
- backgroundColor: light ? 'rgba(0, 0, 0, 0.12)' : 'rgba(255, 255, 255, 0.12)'
69
+ backgroundColor: theme.vars ? theme.vars.palette.FilledInput.disabledBg : disabledBackground
68
70
  }
69
71
  }, !ownerState.disableUnderline && {
70
72
  '&:after': {
71
- borderBottom: `2px solid ${(_theme$palette = theme.palette[ownerState.color || 'primary']) == null ? void 0 : _theme$palette.main}`,
73
+ borderBottom: `2px solid ${(_palette = (theme.vars || theme).palette[ownerState.color || 'primary']) == null ? void 0 : _palette.main}`,
72
74
  left: 0,
73
75
  bottom: 0,
74
76
  // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242
@@ -89,12 +91,12 @@ const FilledInputRoot = styled(InputBaseRoot, {
89
91
  transform: 'scaleX(1) translateX(0)'
90
92
  },
91
93
  [`&.${filledInputClasses.error}:after`]: {
92
- borderBottomColor: theme.palette.error.main,
94
+ borderBottomColor: (theme.vars || theme).palette.error.main,
93
95
  transform: 'scaleX(1)' // error is always underlined in red
94
96
 
95
97
  },
96
98
  '&:before': {
97
- borderBottom: `1px solid ${bottomLineColor}`,
99
+ borderBottom: `1px solid ${theme.vars ? `rgba(${theme.vars.palette.common.onBackgroundChannel} / ${theme.vars.opacity.inputTouchBottomLine})` : bottomLineColor}`,
98
100
  left: 0,
99
101
  bottom: 0,
100
102
  // Doing the other way around crash on IE11 "''" https://github.com/cssinjs/jss/issues/242
@@ -108,7 +110,7 @@ const FilledInputRoot = styled(InputBaseRoot, {
108
110
 
109
111
  },
110
112
  [`&:hover:not(.${filledInputClasses.disabled}):before`]: {
111
- borderBottom: `1px solid ${theme.palette.text.primary}`
113
+ borderBottom: `1px solid ${(theme.vars || theme).palette.text.primary}`
112
114
  },
113
115
  [`&.${filledInputClasses.disabled}:before`]: {
114
116
  borderBottomStyle: 'dotted'
@@ -138,7 +140,8 @@ const FilledInputInput = styled(InputBaseInput, {
138
140
  paddingTop: 25,
139
141
  paddingRight: 12,
140
142
  paddingBottom: 8,
141
- paddingLeft: 12,
143
+ paddingLeft: 12
144
+ }, !theme.vars && {
142
145
  '&:-webkit-autofill': {
143
146
  WebkitBoxShadow: theme.palette.mode === 'light' ? null : '0 0 0 100px #266798 inset',
144
147
  WebkitTextFillColor: theme.palette.mode === 'light' ? null : '#fff',
@@ -146,6 +149,18 @@ const FilledInputInput = styled(InputBaseInput, {
146
149
  borderTopLeftRadius: 'inherit',
147
150
  borderTopRightRadius: 'inherit'
148
151
  }
152
+ }, theme.vars && {
153
+ '&:-webkit-autofill': {
154
+ borderTopLeftRadius: 'inherit',
155
+ borderTopRightRadius: 'inherit'
156
+ },
157
+ [theme.getColorSchemeSelector('dark')]: {
158
+ '&:-webkit-autofill': {
159
+ WebkitBoxShadow: '0 0 0 100px #266798 inset',
160
+ WebkitTextFillColor: '#fff',
161
+ caretColor: '#fff'
162
+ }
163
+ }
149
164
  }, ownerState.size === 'small' && {
150
165
  paddingTop: 21,
151
166
  paddingBottom: 4
package/Grid/Grid.d.ts CHANGED
@@ -1,5 +1,12 @@
1
1
  import * as React from 'react';
2
- import { ResponsiveStyleValue, SxProps, SystemProps } from '@mui/system';
2
+ import {
3
+ ResponsiveStyleValue,
4
+ SxProps,
5
+ SystemProps,
6
+ Breakpoint,
7
+ BreakpointOverrides,
8
+ } from '@mui/system';
9
+ import { IfEquals } from '@mui/types';
3
10
  import { Theme } from '../styles';
4
11
  import { OverridableComponent, OverrideProps } from '../OverridableComponent';
5
12
  import { GridClasses } from './gridClasses';
@@ -12,6 +19,70 @@ export type GridWrap = 'nowrap' | 'wrap' | 'wrap-reverse';
12
19
 
13
20
  export type GridSize = 'auto' | number;
14
21
 
22
+ interface RegularBreakpoints {
23
+ /**
24
+ * If a number, it sets the number of columns the grid item uses.
25
+ * It can't be greater than the total number of columns of the container (12 by default).
26
+ * If 'auto', the grid item's width matches its content.
27
+ * If false, the prop is ignored.
28
+ * If true, the grid item's width grows to use the space available in the grid container.
29
+ * The value is applied for the `lg` breakpoint and wider screens if not overridden.
30
+ * @default false
31
+ */
32
+ lg?: boolean | GridSize;
33
+ /**
34
+ * If a number, it sets the number of columns the grid item uses.
35
+ * It can't be greater than the total number of columns of the container (12 by default).
36
+ * If 'auto', the grid item's width matches its content.
37
+ * If false, the prop is ignored.
38
+ * If true, the grid item's width grows to use the space available in the grid container.
39
+ * The value is applied for the `md` breakpoint and wider screens if not overridden.
40
+ * @default false
41
+ */
42
+ md?: boolean | GridSize;
43
+ /**
44
+ * If a number, it sets the number of columns the grid item uses.
45
+ * It can't be greater than the total number of columns of the container (12 by default).
46
+ * If 'auto', the grid item's width matches its content.
47
+ * If false, the prop is ignored.
48
+ * If true, the grid item's width grows to use the space available in the grid container.
49
+ * The value is applied for the `sm` breakpoint and wider screens if not overridden.
50
+ * @default false
51
+ */
52
+ sm?: boolean | GridSize;
53
+ /**
54
+ * If a number, it sets the number of columns the grid item uses.
55
+ * It can't be greater than the total number of columns of the container (12 by default).
56
+ * If 'auto', the grid item's width matches its content.
57
+ * If false, the prop is ignored.
58
+ * If true, the grid item's width grows to use the space available in the grid container.
59
+ * The value is applied for the `xl` breakpoint and wider screens if not overridden.
60
+ * @default false
61
+ */
62
+ xl?: boolean | GridSize;
63
+ /**
64
+ * If a number, it sets the number of columns the grid item uses.
65
+ * It can't be greater than the total number of columns of the container (12 by default).
66
+ * If 'auto', the grid item's width matches its content.
67
+ * If false, the prop is ignored.
68
+ * If true, the grid item's width grows to use the space available in the grid container.
69
+ * The value is applied for all the screen sizes with the lowest priority.
70
+ * @default false
71
+ */
72
+ xs?: boolean | GridSize;
73
+ }
74
+
75
+ type CustomBreakpoints = Partial<Record<Breakpoint, boolean | GridSize>>;
76
+
77
+ interface BreakpointOverridesEmpty {}
78
+
79
+ type Breakpoints = IfEquals<
80
+ BreakpointOverrides,
81
+ BreakpointOverridesEmpty,
82
+ RegularBreakpoints,
83
+ CustomBreakpoints
84
+ >;
85
+
15
86
  export interface GridTypeMap<P = {}, D extends React.ElementType = 'div'> {
16
87
  props: P &
17
88
  SystemProps<Theme> & {
@@ -51,41 +122,11 @@ export interface GridTypeMap<P = {}, D extends React.ElementType = 'div'> {
51
122
  * @default false
52
123
  */
53
124
  item?: boolean;
54
- /**
55
- * If a number, it sets the number of columns the grid item uses.
56
- * It can't be greater than the total number of columns of the container (12 by default).
57
- * If 'auto', the grid item's width matches its content.
58
- * If false, the prop is ignored.
59
- * If true, the grid item's width grows to use the space available in the grid container.
60
- * The value is applied for the `lg` breakpoint and wider screens if not overridden.
61
- * @default false
62
- */
63
- lg?: boolean | GridSize;
64
- /**
65
- * If a number, it sets the number of columns the grid item uses.
66
- * It can't be greater than the total number of columns of the container (12 by default).
67
- * If 'auto', the grid item's width matches its content.
68
- * If false, the prop is ignored.
69
- * If true, the grid item's width grows to use the space available in the grid container.
70
- * The value is applied for the `md` breakpoint and wider screens if not overridden.
71
- * @default false
72
- */
73
- md?: boolean | GridSize;
74
125
  /**
75
126
  * Defines the vertical space between the type `item` components.
76
127
  * It overrides the value of the `spacing` prop.
77
128
  */
78
129
  rowSpacing?: ResponsiveStyleValue<GridSpacing>;
79
- /**
80
- * If a number, it sets the number of columns the grid item uses.
81
- * It can't be greater than the total number of columns of the container (12 by default).
82
- * If 'auto', the grid item's width matches its content.
83
- * If false, the prop is ignored.
84
- * If true, the grid item's width grows to use the space available in the grid container.
85
- * The value is applied for the `sm` breakpoint and wider screens if not overridden.
86
- * @default false
87
- */
88
- sm?: boolean | GridSize;
89
130
  /**
90
131
  * Defines the space between the type `item` components.
91
132
  * It can only be used on a type `container` component.
@@ -102,33 +143,13 @@ export interface GridTypeMap<P = {}, D extends React.ElementType = 'div'> {
102
143
  * @default 'wrap'
103
144
  */
104
145
  wrap?: GridWrap;
105
- /**
106
- * If a number, it sets the number of columns the grid item uses.
107
- * It can't be greater than the total number of columns of the container (12 by default).
108
- * If 'auto', the grid item's width matches its content.
109
- * If false, the prop is ignored.
110
- * If true, the grid item's width grows to use the space available in the grid container.
111
- * The value is applied for the `xl` breakpoint and wider screens if not overridden.
112
- * @default false
113
- */
114
- xl?: boolean | GridSize;
115
- /**
116
- * If a number, it sets the number of columns the grid item uses.
117
- * It can't be greater than the total number of columns of the container (12 by default).
118
- * If 'auto', the grid item's width matches its content.
119
- * If false, the prop is ignored.
120
- * If true, the grid item's width grows to use the space available in the grid container.
121
- * The value is applied for all the screen sizes with the lowest priority.
122
- * @default false
123
- */
124
- xs?: boolean | GridSize;
125
146
  /**
126
147
  * If `true`, it sets `min-width: 0` on the item.
127
148
  * Refer to the limitations section of the documentation to better understand the use case.
128
149
  * @default false
129
150
  */
130
151
  zeroMinWidth?: boolean;
131
- };
152
+ } & Breakpoints;
132
153
  defaultComponent: D;
133
154
  }
134
155