@mui/material 7.1.1 → 7.2.0

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.
@@ -91,6 +91,7 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
91
91
  ...slotProps
92
92
  };
93
93
  const externalForwardedProps = {
94
+ component,
94
95
  slots: backwardCompatibleSlots,
95
96
  slotProps: backwardCompatibleSlotProps
96
97
  };
@@ -15,7 +15,9 @@ var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
15
15
  var _MoreHoriz = _interopRequireDefault(require("../internal/svg-icons/MoreHoriz"));
16
16
  var _ButtonBase = _interopRequireDefault(require("../ButtonBase"));
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
- const BreadcrumbCollapsedButton = (0, _zeroStyled.styled)(_ButtonBase.default)((0, _memoTheme.default)(({
18
+ const BreadcrumbCollapsedButton = (0, _zeroStyled.styled)(_ButtonBase.default, {
19
+ name: 'MuiBreadcrumbCollapsed'
20
+ })((0, _memoTheme.default)(({
19
21
  theme
20
22
  }) => ({
21
23
  display: 'flex',
package/CHANGELOG.md CHANGED
@@ -1,5 +1,86 @@
1
1
  # [Versions](https://mui.com/versions/)
2
2
 
3
+ ## 7.2.0
4
+
5
+ <!-- generated comparing v7.1.1..master -->
6
+
7
+ _Jun 26, 2025_
8
+
9
+ A big thanks to the 17 contributors who made this release possible. Here are the highlights ✨:
10
+
11
+ - ⚡️ Added `modularCssLayers` theme option for splitting styles into multiple CSS layers (#46001) @siriwatknp.
12
+ - 📖 Added example for using Material UI with React Router v7 (#46406) @siriwatknp.
13
+
14
+ ### `@mui/material@7.2.0`
15
+
16
+ - [Backdrop] Fix handling of `component` prop (#46269) @sai6855
17
+ - [Chip] Explicitly define line-height (#46260) @DiegoAndai
18
+ - [Chip] Fix handling on event handlers (#46263) @sai6855
19
+ - [OutlinedInput][Input] Deprecate composed classes (#46316) @sai6855
20
+ - [Select] Pass MenuProps.slotProps.list alongside MenuListProps (#46274) @scousino
21
+ - [l10] Enable `labelDisplayedRows` translation for Romanian (#46377) @dhu-redwoodtech
22
+ - Skip generating `modularCssLayers` CSS var (#46329) @siriwatknp
23
+
24
+ ### `@mui/system@7.2.0`
25
+
26
+ - Add `modularCssLayers` theme flag to split styles into multiple CSS layers (#46001) @siriwatknp
27
+
28
+ ### `@mui/styled-engine@7.2.0`
29
+
30
+ - Do not reuse the emotion cache across SSR requests (#46276) @robbtraister
31
+
32
+ ### `@mui/codemod@7.2.0`
33
+
34
+ - [Dialog] Add codemod for deprecated props (#46328) @sai6855
35
+
36
+ ### Docs
37
+
38
+ - Don't forward `hasAiSuggestion` (#46415) @bharatkashyap
39
+ - Add introduction to MCP (#46224) @bharatkashyap
40
+ - Fallback for searchbar during SSR (#46364) @Janpot
41
+ - Update InitColorSchemeScript options to match colorSchemeSelector (#46302) @humble-barnacle001
42
+ - Add `ListItemButton` to make the deprecation clear (#46356) @siriwatknp
43
+ - Remove "Unstyled" section from component docs (#46272) @mapache-salvaje
44
+ - Add Testing section to Rating component doc (#46268) @0210shivam
45
+ - Fix fade modal demo (#46271) @brijeshb42
46
+ - [ai] Add suggestions to edit with MUI Chat (#46309) @bharatkashyap
47
+ - [Dialog] Fix form dialog uses ARIA roles on incompatible elements (#46307) @ZeeshanTamboli
48
+ - [Menu] Fix dark mode styling of grouped header demo (#46317) @sai6855
49
+ - [TextField] Removed type="number" demos (#46314) @KirankumarAmbati
50
+ - [examples] Add `material-ui-react-router-ts` example (#46406) @siriwatknp
51
+
52
+ ### Core
53
+
54
+ - pnpm docs:sync-team (3641a0b) @oliviertassinari
55
+ - Add cross-env to eslint script (#46358) @ZeeshanTamboli
56
+ - Support merging of className and style from theme (#45975) @sai6855
57
+ - [code-infra] Create bundle size package (#45911) @Janpot
58
+ - [docs-infra] Add a script to generate Material UI `llms.txt` and docs markdown. (#46308) @siriwatknp
59
+ - [docs-infra] Fix stackblitz for js projects (#46220) @Janpot
60
+ - [infra] Add emotion as external for bundle monitor (#46372) @Janpot
61
+ - [infra] Create update PR on every canary publish for internal packages (#46367) @Janpot
62
+ - [infra] Remove deprecated esmExternals (#46365) @Janpot
63
+ - [infra] Support project-specific changelog in build scripts (#46425) @michaldudak
64
+ - [toolpad][website] Remove references to Toolpad (#46311) @prakhargupta1
65
+
66
+ All contributors of this release in alphabetical order: @0210shivam, @bharatkashyap, @brijeshb42, @dhu-redwoodtech, @DiegoAndai, @humble-barnacle001, @Janpot, @KirankumarAmbati, @mapache-salvaje, @michaldudak, @oliviertassinari, @prakhargupta1, @robbtraister, @sai6855, @scousino, @siriwatknp, @ZeeshanTamboli
67
+
68
+ ## 7.1.2
69
+
70
+ _Jun 18, 2025_
71
+
72
+ A big thanks to the 2 contributors who made this release possible.
73
+
74
+ ### `@mui/material@7.1.2`
75
+
76
+ - [Chip] Fix handling on event handlers (#46263) @sai6855
77
+
78
+ ### Docs
79
+
80
+ - Fix fade modal demo (#46271) @brijeshb42
81
+
82
+ All contributors of this release in alphabetical order: @brijeshb42, @sai6855
83
+
3
84
  ## 7.1.1
4
85
 
5
86
  <!-- generated comparing v7.1.0..master -->
package/Chip/Chip.js CHANGED
@@ -93,6 +93,7 @@ const ChipRoot = (0, _zeroStyled.styled)('div', {
93
93
  alignItems: 'center',
94
94
  justifyContent: 'center',
95
95
  height: 32,
96
+ lineHeight: 1.5,
96
97
  color: (theme.vars || theme).palette.text.primary,
97
98
  backgroundColor: (theme.vars || theme).palette.action.selected,
98
99
  borderRadius: 32 / 2,
@@ -486,15 +487,15 @@ const Chip = /*#__PURE__*/React.forwardRef(function Chip(inProps, ref) {
486
487
  ...handlers,
487
488
  onClick: event => {
488
489
  handlers.onClick?.(event);
489
- onClick(event);
490
+ onClick?.(event);
490
491
  },
491
492
  onKeyDown: event => {
492
493
  handlers.onKeyDown?.(event);
493
- handleKeyDown(event);
494
+ handleKeyDown?.(event);
494
495
  },
495
496
  onKeyUp: event => {
496
497
  handlers.onKeyUp?.(event);
497
- handleKeyUp(event);
498
+ handleKeyUp?.(event);
498
499
  }
499
500
  })
500
501
  });
@@ -21,13 +21,21 @@ export interface InputClasses {
21
21
  fullWidth: string;
22
22
  /** Styles applied to the input element. */
23
23
  input: string;
24
- /** Styles applied to the input element if `size="small"`. */
24
+ /** Styles applied to the input element if `size="small"`.
25
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-sizeSmall](/material-ui/api/input-base/#inputbase-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
26
+ */
25
27
  inputSizeSmall: string;
26
- /** Styles applied to the input element if `multiline={true}`. */
28
+ /** Styles applied to the input element if `multiline={true}`.
29
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-multiline](/material-ui/api/input-base/#inputbase-classes-multiline) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
30
+ */
27
31
  inputMultiline: string;
28
- /** Styles applied to the input element if `startAdornment` is provided. */
32
+ /** Styles applied to the input element if `startAdornment` is provided.
33
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedStart](/material-ui/api/input-base/#inputbase-classes-adornedStart) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
34
+ */
29
35
  inputAdornedStart: string;
30
- /** Styles applied to the input element if `endAdornment` is provided. */
36
+ /** Styles applied to the input element if `endAdornment` is provided.
37
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedEnd](/material-ui/api/input-base/#inputbase-classes-adornedEnd) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
38
+ */
31
39
  inputAdornedEnd: string;
32
40
  /** Styles applied to the input element if `type="search"`. */
33
41
  inputTypeSearch: string;
@@ -32,7 +32,9 @@ const useUtilityClasses = ownerState => {
32
32
  };
33
33
  return (0, _composeClasses.default)(slots, _nativeSelectClasses.getNativeSelectUtilityClasses, classes);
34
34
  };
35
- const StyledSelectSelect = exports.StyledSelectSelect = (0, _zeroStyled.styled)('select')(({
35
+ const StyledSelectSelect = exports.StyledSelectSelect = (0, _zeroStyled.styled)('select', {
36
+ name: 'MuiNativeSelect'
37
+ })(({
36
38
  theme
37
39
  }) => ({
38
40
  // Reset
@@ -106,7 +108,9 @@ const NativeSelectSelect = (0, _zeroStyled.styled)(StyledSelectSelect, {
106
108
  }];
107
109
  }
108
110
  })({});
109
- const StyledSelectIcon = exports.StyledSelectIcon = (0, _zeroStyled.styled)('svg')(({
111
+ const StyledSelectIcon = exports.StyledSelectIcon = (0, _zeroStyled.styled)('svg', {
112
+ name: 'MuiNativeSelect'
113
+ })(({
110
114
  theme
111
115
  }) => ({
112
116
  // We use a position absolute over a flexbox in order to forward the pointer events
@@ -15,6 +15,7 @@ var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
15
15
  var _jsxRuntime = require("react/jsx-runtime");
16
16
  var _span;
17
17
  const NotchedOutlineRoot = (0, _zeroStyled.styled)('fieldset', {
18
+ name: 'MuiNotchedOutlined',
18
19
  shouldForwardProp: _rootShouldForwardProp.default
19
20
  })({
20
21
  textAlign: 'left',
@@ -33,6 +34,7 @@ const NotchedOutlineRoot = (0, _zeroStyled.styled)('fieldset', {
33
34
  minWidth: '0%'
34
35
  });
35
36
  const NotchedOutlineLegend = (0, _zeroStyled.styled)('legend', {
37
+ name: 'MuiNotchedOutlined',
36
38
  shouldForwardProp: _rootShouldForwardProp.default
37
39
  })((0, _memoTheme.default)(({
38
40
  theme
@@ -21,13 +21,21 @@ export interface OutlinedInputClasses {
21
21
  notchedOutline: string;
22
22
  /** Styles applied to the input element. */
23
23
  input: string;
24
- /** Styles applied to the input element if `size="small"`. */
24
+ /** Styles applied to the input element if `size="small"`.
25
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-sizeSmall](/material-ui/api/input-base/#inputbase-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
26
+ */
25
27
  inputSizeSmall: string;
26
- /** Styles applied to the input element if `multiline={true}`. */
28
+ /** Styles applied to the input element if `multiline={true}`.
29
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-multiline](/material-ui/api/input-base/#inputbase-classes-multiline) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
30
+ */
27
31
  inputMultiline: string;
28
- /** Styles applied to the input element if `startAdornment` is provided. */
32
+ /** Styles applied to the input element if `startAdornment` is provided.
33
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedStart](/material-ui/api/input-base/#inputbase-classes-adornedStart) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
34
+ */
29
35
  inputAdornedStart: string;
30
- /** Styles applied to the input element if `endAdornment` is provided. */
36
+ /** Styles applied to the input element if `endAdornment` is provided.
37
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedEnd](/material-ui/api/input-base/#inputbase-classes-adornedEnd) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
38
+ */
31
39
  inputAdornedEnd: string;
32
40
  /** Styles applied to the input element if `type="search"`. */
33
41
  inputTypeSearch: string;
@@ -16,16 +16,21 @@ var _zeroStyled = require("../zero-styled");
16
16
  var _memoTheme = _interopRequireDefault(require("../utils/memoTheme"));
17
17
  var _jsxRuntime = require("react/jsx-runtime");
18
18
  const RadioButtonIconRoot = (0, _zeroStyled.styled)('span', {
19
+ name: 'MuiRadioButtonIcon',
19
20
  shouldForwardProp: _rootShouldForwardProp.default
20
21
  })({
21
22
  position: 'relative',
22
23
  display: 'flex'
23
24
  });
24
- const RadioButtonIconBackground = (0, _zeroStyled.styled)(_RadioButtonUnchecked.default)({
25
+ const RadioButtonIconBackground = (0, _zeroStyled.styled)(_RadioButtonUnchecked.default, {
26
+ name: 'MuiRadioButtonIcon'
27
+ })({
25
28
  // Scale applied to prevent dot misalignment in Safari
26
29
  transform: 'scale(1)'
27
30
  });
28
- const RadioButtonIconDot = (0, _zeroStyled.styled)(_RadioButtonChecked.default)((0, _memoTheme.default)(({
31
+ const RadioButtonIconDot = (0, _zeroStyled.styled)(_RadioButtonChecked.default, {
32
+ name: 'MuiRadioButtonIcon'
33
+ })((0, _memoTheme.default)(({
29
34
  theme
30
35
  }) => ({
31
36
  left: 0,
@@ -442,6 +442,10 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
442
442
  ...MenuProps.PaperProps,
443
443
  ...MenuProps.slotProps?.paper
444
444
  };
445
+ const listProps = {
446
+ ...MenuProps.MenuListProps,
447
+ ...MenuProps.slotProps?.list
448
+ };
445
449
  const listboxId = (0, _useId.default)();
446
450
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(React.Fragment, {
447
451
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(SelectSelect, {
@@ -514,7 +518,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
514
518
  'aria-multiselectable': multiple ? 'true' : undefined,
515
519
  disableListWrap: true,
516
520
  id: listboxId,
517
- ...MenuProps.MenuListProps
521
+ ...listProps
518
522
  },
519
523
  paper: {
520
524
  ...paperProps,
@@ -17,6 +17,7 @@ var _capitalize = _interopRequireDefault(require("../utils/capitalize"));
17
17
  var _Drawer = require("../Drawer/Drawer");
18
18
  var _jsxRuntime = require("react/jsx-runtime");
19
19
  const SwipeAreaRoot = (0, _zeroStyled.styled)('div', {
20
+ name: 'MuiSwipeArea',
20
21
  shouldForwardProp: _rootShouldForwardProp.default
21
22
  })((0, _memoTheme.default)(({
22
23
  theme
@@ -84,6 +84,7 @@ const Backdrop = /*#__PURE__*/React.forwardRef(function Backdrop(inProps, ref) {
84
84
  ...slotProps
85
85
  };
86
86
  const externalForwardedProps = {
87
+ component,
87
88
  slots: backwardCompatibleSlots,
88
89
  slotProps: backwardCompatibleSlotProps
89
90
  };
@@ -8,7 +8,9 @@ import memoTheme from "../utils/memoTheme.js";
8
8
  import MoreHorizIcon from "../internal/svg-icons/MoreHoriz.js";
9
9
  import ButtonBase from "../ButtonBase/index.js";
10
10
  import { jsx as _jsx } from "react/jsx-runtime";
11
- const BreadcrumbCollapsedButton = styled(ButtonBase)(memoTheme(({
11
+ const BreadcrumbCollapsedButton = styled(ButtonBase, {
12
+ name: 'MuiBreadcrumbCollapsed'
13
+ })(memoTheme(({
12
14
  theme
13
15
  }) => ({
14
16
  display: 'flex',
package/esm/Chip/Chip.js CHANGED
@@ -86,6 +86,7 @@ const ChipRoot = styled('div', {
86
86
  alignItems: 'center',
87
87
  justifyContent: 'center',
88
88
  height: 32,
89
+ lineHeight: 1.5,
89
90
  color: (theme.vars || theme).palette.text.primary,
90
91
  backgroundColor: (theme.vars || theme).palette.action.selected,
91
92
  borderRadius: 32 / 2,
@@ -479,15 +480,15 @@ const Chip = /*#__PURE__*/React.forwardRef(function Chip(inProps, ref) {
479
480
  ...handlers,
480
481
  onClick: event => {
481
482
  handlers.onClick?.(event);
482
- onClick(event);
483
+ onClick?.(event);
483
484
  },
484
485
  onKeyDown: event => {
485
486
  handlers.onKeyDown?.(event);
486
- handleKeyDown(event);
487
+ handleKeyDown?.(event);
487
488
  },
488
489
  onKeyUp: event => {
489
490
  handlers.onKeyUp?.(event);
490
- handleKeyUp(event);
491
+ handleKeyUp?.(event);
491
492
  }
492
493
  })
493
494
  });
@@ -21,13 +21,21 @@ export interface InputClasses {
21
21
  fullWidth: string;
22
22
  /** Styles applied to the input element. */
23
23
  input: string;
24
- /** Styles applied to the input element if `size="small"`. */
24
+ /** Styles applied to the input element if `size="small"`.
25
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-sizeSmall](/material-ui/api/input-base/#inputbase-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
26
+ */
25
27
  inputSizeSmall: string;
26
- /** Styles applied to the input element if `multiline={true}`. */
28
+ /** Styles applied to the input element if `multiline={true}`.
29
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-multiline](/material-ui/api/input-base/#inputbase-classes-multiline) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
30
+ */
27
31
  inputMultiline: string;
28
- /** Styles applied to the input element if `startAdornment` is provided. */
32
+ /** Styles applied to the input element if `startAdornment` is provided.
33
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedStart](/material-ui/api/input-base/#inputbase-classes-adornedStart) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
34
+ */
29
35
  inputAdornedStart: string;
30
- /** Styles applied to the input element if `endAdornment` is provided. */
36
+ /** Styles applied to the input element if `endAdornment` is provided.
37
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedEnd](/material-ui/api/input-base/#inputbase-classes-adornedEnd) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
38
+ */
31
39
  inputAdornedEnd: string;
32
40
  /** Styles applied to the input element if `type="search"`. */
33
41
  inputTypeSearch: string;
@@ -25,7 +25,9 @@ const useUtilityClasses = ownerState => {
25
25
  };
26
26
  return composeClasses(slots, getNativeSelectUtilityClasses, classes);
27
27
  };
28
- export const StyledSelectSelect = styled('select')(({
28
+ export const StyledSelectSelect = styled('select', {
29
+ name: 'MuiNativeSelect'
30
+ })(({
29
31
  theme
30
32
  }) => ({
31
33
  // Reset
@@ -99,7 +101,9 @@ const NativeSelectSelect = styled(StyledSelectSelect, {
99
101
  }];
100
102
  }
101
103
  })({});
102
- export const StyledSelectIcon = styled('svg')(({
104
+ export const StyledSelectIcon = styled('svg', {
105
+ name: 'MuiNativeSelect'
106
+ })(({
103
107
  theme
104
108
  }) => ({
105
109
  // We use a position absolute over a flexbox in order to forward the pointer events
@@ -8,6 +8,7 @@ import { styled } from "../zero-styled/index.js";
8
8
  import memoTheme from "../utils/memoTheme.js";
9
9
  import { jsx as _jsx } from "react/jsx-runtime";
10
10
  const NotchedOutlineRoot = styled('fieldset', {
11
+ name: 'MuiNotchedOutlined',
11
12
  shouldForwardProp: rootShouldForwardProp
12
13
  })({
13
14
  textAlign: 'left',
@@ -26,6 +27,7 @@ const NotchedOutlineRoot = styled('fieldset', {
26
27
  minWidth: '0%'
27
28
  });
28
29
  const NotchedOutlineLegend = styled('legend', {
30
+ name: 'MuiNotchedOutlined',
29
31
  shouldForwardProp: rootShouldForwardProp
30
32
  })(memoTheme(({
31
33
  theme
@@ -21,13 +21,21 @@ export interface OutlinedInputClasses {
21
21
  notchedOutline: string;
22
22
  /** Styles applied to the input element. */
23
23
  input: string;
24
- /** Styles applied to the input element if `size="small"`. */
24
+ /** Styles applied to the input element if `size="small"`.
25
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-sizeSmall](/material-ui/api/input-base/#inputbase-classes-sizeSmall) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
26
+ */
25
27
  inputSizeSmall: string;
26
- /** Styles applied to the input element if `multiline={true}`. */
28
+ /** Styles applied to the input element if `multiline={true}`.
29
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-multiline](/material-ui/api/input-base/#inputbase-classes-multiline) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
30
+ */
27
31
  inputMultiline: string;
28
- /** Styles applied to the input element if `startAdornment` is provided. */
32
+ /** Styles applied to the input element if `startAdornment` is provided.
33
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedStart](/material-ui/api/input-base/#inputbase-classes-adornedStart) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
34
+ */
29
35
  inputAdornedStart: string;
30
- /** Styles applied to the input element if `endAdornment` is provided. */
36
+ /** Styles applied to the input element if `endAdornment` is provided.
37
+ * @deprecated Combine the [.MuiInputBase-input](/material-ui/api/input-base/#inputbase-classes-input) and [.MuiInputBase-adornedEnd](/material-ui/api/input-base/#inputbase-classes-adornedEnd) classes instead. See [Migrating from deprecated APIs](/material-ui/migration/migrating-from-deprecated-apis/) for more details.
38
+ */
31
39
  inputAdornedEnd: string;
32
40
  /** Styles applied to the input element if `type="search"`. */
33
41
  inputTypeSearch: string;
@@ -9,16 +9,21 @@ import { styled } from "../zero-styled/index.js";
9
9
  import memoTheme from "../utils/memoTheme.js";
10
10
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
11
11
  const RadioButtonIconRoot = styled('span', {
12
+ name: 'MuiRadioButtonIcon',
12
13
  shouldForwardProp: rootShouldForwardProp
13
14
  })({
14
15
  position: 'relative',
15
16
  display: 'flex'
16
17
  });
17
- const RadioButtonIconBackground = styled(RadioButtonUncheckedIcon)({
18
+ const RadioButtonIconBackground = styled(RadioButtonUncheckedIcon, {
19
+ name: 'MuiRadioButtonIcon'
20
+ })({
18
21
  // Scale applied to prevent dot misalignment in Safari
19
22
  transform: 'scale(1)'
20
23
  });
21
- const RadioButtonIconDot = styled(RadioButtonCheckedIcon)(memoTheme(({
24
+ const RadioButtonIconDot = styled(RadioButtonCheckedIcon, {
25
+ name: 'MuiRadioButtonIcon'
26
+ })(memoTheme(({
22
27
  theme
23
28
  }) => ({
24
29
  left: 0,
@@ -435,6 +435,10 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
435
435
  ...MenuProps.PaperProps,
436
436
  ...MenuProps.slotProps?.paper
437
437
  };
438
+ const listProps = {
439
+ ...MenuProps.MenuListProps,
440
+ ...MenuProps.slotProps?.list
441
+ };
438
442
  const listboxId = useId();
439
443
  return /*#__PURE__*/_jsxs(React.Fragment, {
440
444
  children: [/*#__PURE__*/_jsx(SelectSelect, {
@@ -507,7 +511,7 @@ const SelectInput = /*#__PURE__*/React.forwardRef(function SelectInput(props, re
507
511
  'aria-multiselectable': multiple ? 'true' : undefined,
508
512
  disableListWrap: true,
509
513
  id: listboxId,
510
- ...MenuProps.MenuListProps
514
+ ...listProps
511
515
  },
512
516
  paper: {
513
517
  ...paperProps,
@@ -10,6 +10,7 @@ import capitalize from "../utils/capitalize.js";
10
10
  import { isHorizontal } from "../Drawer/Drawer.js";
11
11
  import { jsx as _jsx } from "react/jsx-runtime";
12
12
  const SwipeAreaRoot = styled('div', {
13
+ name: 'MuiSwipeArea',
13
14
  shouldForwardProp: rootShouldForwardProp
14
15
  })(memoTheme(({
15
16
  theme
package/esm/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/material v7.1.1
2
+ * @mui/material v7.2.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -26,7 +26,9 @@ const useUtilityClasses = ownerState => {
26
26
  };
27
27
  return composeClasses(slots, getSwitchBaseUtilityClass, classes);
28
28
  };
29
- const SwitchBaseRoot = styled(ButtonBase)({
29
+ const SwitchBaseRoot = styled(ButtonBase, {
30
+ name: 'MuiSwitchBase'
31
+ })({
30
32
  padding: 9,
31
33
  borderRadius: '50%',
32
34
  variants: [{
@@ -64,6 +66,7 @@ const SwitchBaseRoot = styled(ButtonBase)({
64
66
  }]
65
67
  });
66
68
  const SwitchBaseInput = styled('input', {
69
+ name: 'MuiSwitchBase',
67
70
  shouldForwardProp: rootShouldForwardProp
68
71
  })({
69
72
  cursor: 'inherit',
@@ -3278,9 +3278,12 @@ export const roRO = {
3278
3278
  // if (type === 'previous') {
3279
3279
  return 'Mergi la pagina precedentă';
3280
3280
  },
3281
- labelRowsPerPage: 'Rânduri pe pagină:'
3282
- // labelDisplayedRows: ({ from, to, count }) =>
3283
- // `${from}–${to} din ${count !== -1 ? count : `more than ${to}`}`,
3281
+ labelRowsPerPage: 'Rânduri pe pagină:',
3282
+ labelDisplayedRows: ({
3283
+ from,
3284
+ to,
3285
+ count
3286
+ }) => `${from}–${to} din ${count !== -1 ? count : `mai mult de ${to}`}`
3284
3287
  }
3285
3288
  },
3286
3289
  MuiRating: {
@@ -2,6 +2,11 @@ import { ComponentsProps } from "./props.js";
2
2
  import { ComponentsOverrides } from "./overrides.js";
3
3
  import { ComponentsVariants } from "./variants.js";
4
4
  export interface Components<Theme = unknown> {
5
+ /**
6
+ * Whether to merge the className and style coming from the component props with the default props.
7
+ * @default false
8
+ */
9
+ mergeClassNameAndStyle?: boolean;
5
10
  MuiAlert?: {
6
11
  defaultProps?: ComponentsProps['MuiAlert'];
7
12
  styleOverrides?: ComponentsOverrides<Theme>['MuiAlert'];
@@ -32,6 +32,7 @@ export interface ThemeOptions extends Omit<SystemThemeOptions, 'zIndex'>, CssVar
32
32
  zIndex?: ZIndexOptions;
33
33
  unstable_strictMode?: boolean;
34
34
  unstable_sxConfig?: SxConfig;
35
+ modularCssLayers?: boolean | string;
35
36
  }
36
37
  export interface BaseTheme extends SystemTheme {
37
38
  mixins: Mixins;
@@ -1,5 +1,5 @@
1
1
  export default function shouldSkipGeneratingVar(keys) {
2
- return !!keys[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!keys[0].match(/sxConfig$/) ||
2
+ return !!keys[0].match(/(cssVarPrefix|colorSchemeSelector|modularCssLayers|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!keys[0].match(/sxConfig$/) ||
3
3
  // ends with sxConfig
4
4
  keys[0] === 'palette' && !!keys[1]?.match(/(mode|contrastThreshold|tonalOffset)/);
5
5
  }
@@ -1,6 +1,6 @@
1
- export const version = "7.1.1";
1
+ export const version = "7.2.0";
2
2
  export const major = Number("7");
3
- export const minor = Number("1");
4
- export const patch = Number("1");
3
+ export const minor = Number("2");
4
+ export const patch = Number("0");
5
5
  export const prerelease = undefined;
6
6
  export default version;
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @mui/material v7.1.1
2
+ * @mui/material v7.2.0
3
3
  *
4
4
  * @license MIT
5
5
  * This source code is licensed under the MIT license found in the
@@ -33,7 +33,9 @@ const useUtilityClasses = ownerState => {
33
33
  };
34
34
  return (0, _composeClasses.default)(slots, _switchBaseClasses.getSwitchBaseUtilityClass, classes);
35
35
  };
36
- const SwitchBaseRoot = (0, _zeroStyled.styled)(_ButtonBase.default)({
36
+ const SwitchBaseRoot = (0, _zeroStyled.styled)(_ButtonBase.default, {
37
+ name: 'MuiSwitchBase'
38
+ })({
37
39
  padding: 9,
38
40
  borderRadius: '50%',
39
41
  variants: [{
@@ -71,6 +73,7 @@ const SwitchBaseRoot = (0, _zeroStyled.styled)(_ButtonBase.default)({
71
73
  }]
72
74
  });
73
75
  const SwitchBaseInput = (0, _zeroStyled.styled)('input', {
76
+ name: 'MuiSwitchBase',
74
77
  shouldForwardProp: _rootShouldForwardProp.default
75
78
  })({
76
79
  cursor: 'inherit',
package/locale/index.js CHANGED
@@ -3284,9 +3284,12 @@ const roRO = exports.roRO = {
3284
3284
  // if (type === 'previous') {
3285
3285
  return 'Mergi la pagina precedentă';
3286
3286
  },
3287
- labelRowsPerPage: 'Rânduri pe pagină:'
3288
- // labelDisplayedRows: ({ from, to, count }) =>
3289
- // `${from}–${to} din ${count !== -1 ? count : `more than ${to}`}`,
3287
+ labelRowsPerPage: 'Rânduri pe pagină:',
3288
+ labelDisplayedRows: ({
3289
+ from,
3290
+ to,
3291
+ count
3292
+ }) => `${from}–${to} din ${count !== -1 ? count : `mai mult de ${to}`}`
3290
3293
  }
3291
3294
  },
3292
3295
  MuiRating: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/material",
3
- "version": "7.1.1",
3
+ "version": "7.2.0",
4
4
  "author": "MUI Team",
5
5
  "description": "Material UI is an open-source React component library that implements Google's Material Design. It's comprehensive and can be used in production out of the box.",
6
6
  "main": "./index.js",
@@ -26,7 +26,7 @@
26
26
  "url": "https://opencollective.com/mui-org"
27
27
  },
28
28
  "dependencies": {
29
- "@babel/runtime": "^7.27.1",
29
+ "@babel/runtime": "^7.27.6",
30
30
  "@popperjs/core": "^2.11.8",
31
31
  "@types/react-transition-group": "^4.4.12",
32
32
  "clsx": "^2.1.1",
@@ -34,10 +34,10 @@
34
34
  "prop-types": "^15.8.1",
35
35
  "react-is": "^19.1.0",
36
36
  "react-transition-group": "^4.4.5",
37
- "@mui/core-downloads-tracker": "^7.1.1",
38
- "@mui/types": "^7.4.3",
39
- "@mui/system": "^7.1.1",
40
- "@mui/utils": "^7.1.1"
37
+ "@mui/system": "^7.2.0",
38
+ "@mui/types": "^7.4.4",
39
+ "@mui/utils": "^7.2.0",
40
+ "@mui/core-downloads-tracker": "^7.2.0"
41
41
  },
42
42
  "peerDependencies": {
43
43
  "@emotion/react": "^11.5.0",
@@ -45,7 +45,7 @@
45
45
  "@types/react": "^17.0.0 || ^18.0.0 || ^19.0.0",
46
46
  "react": "^17.0.0 || ^18.0.0 || ^19.0.0",
47
47
  "react-dom": "^17.0.0 || ^18.0.0 || ^19.0.0",
48
- "@mui/material-pigment-css": "^7.1.1"
48
+ "@mui/material-pigment-css": "^7.2.0"
49
49
  },
50
50
  "peerDependenciesMeta": {
51
51
  "@types/react": {
@@ -2,6 +2,11 @@ import { ComponentsProps } from "./props.js";
2
2
  import { ComponentsOverrides } from "./overrides.js";
3
3
  import { ComponentsVariants } from "./variants.js";
4
4
  export interface Components<Theme = unknown> {
5
+ /**
6
+ * Whether to merge the className and style coming from the component props with the default props.
7
+ * @default false
8
+ */
9
+ mergeClassNameAndStyle?: boolean;
5
10
  MuiAlert?: {
6
11
  defaultProps?: ComponentsProps['MuiAlert'];
7
12
  styleOverrides?: ComponentsOverrides<Theme>['MuiAlert'];
@@ -32,6 +32,7 @@ export interface ThemeOptions extends Omit<SystemThemeOptions, 'zIndex'>, CssVar
32
32
  zIndex?: ZIndexOptions;
33
33
  unstable_strictMode?: boolean;
34
34
  unstable_sxConfig?: SxConfig;
35
+ modularCssLayers?: boolean | string;
35
36
  }
36
37
  export interface BaseTheme extends SystemTheme {
37
38
  mixins: Mixins;
@@ -5,7 +5,7 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.default = shouldSkipGeneratingVar;
7
7
  function shouldSkipGeneratingVar(keys) {
8
- return !!keys[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!keys[0].match(/sxConfig$/) ||
8
+ return !!keys[0].match(/(cssVarPrefix|colorSchemeSelector|modularCssLayers|rootSelector|typography|mixins|breakpoints|direction|transitions)/) || !!keys[0].match(/sxConfig$/) ||
9
9
  // ends with sxConfig
10
10
  keys[0] === 'palette' && !!keys[1]?.match(/(mode|contrastThreshold|tonalOffset)/);
11
11
  }
package/version/index.js CHANGED
@@ -4,9 +4,9 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.version = exports.prerelease = exports.patch = exports.minor = exports.major = exports.default = void 0;
7
- const version = exports.version = "7.1.1";
7
+ const version = exports.version = "7.2.0";
8
8
  const major = exports.major = Number("7");
9
- const minor = exports.minor = Number("1");
10
- const patch = exports.patch = Number("1");
9
+ const minor = exports.minor = Number("2");
10
+ const patch = exports.patch = Number("0");
11
11
  const prerelease = exports.prerelease = undefined;
12
12
  var _default = exports.default = version;