@mui/codemod 6.3.1 → 6.4.1

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 (37) hide show
  1. package/README.md +132 -0
  2. package/node/deprecations/alert-classes/postcss-plugin.js +1 -1
  3. package/node/deprecations/all/deprecations-all.js +6 -0
  4. package/node/deprecations/all/postcss.config.js +7 -1
  5. package/node/deprecations/button-classes/postcss-plugin.js +1 -1
  6. package/node/deprecations/button-group-classes/postcss-plugin.js +1 -1
  7. package/node/deprecations/card-header-props/card-header-props.js +30 -0
  8. package/node/deprecations/card-header-props/index.js +13 -0
  9. package/node/deprecations/card-header-props/test-cases/actual.js +66 -0
  10. package/node/deprecations/card-header-props/test-cases/expected.js +78 -0
  11. package/node/deprecations/chip-classes/postcss-plugin.js +1 -1
  12. package/node/deprecations/drawer-classes/drawer-classes.js +77 -0
  13. package/node/deprecations/drawer-classes/index.js +13 -0
  14. package/node/deprecations/drawer-classes/postcss-plugin.js +51 -0
  15. package/node/deprecations/drawer-classes/postcss.config.js +8 -0
  16. package/node/deprecations/drawer-classes/test-cases/actual.js +19 -0
  17. package/node/deprecations/drawer-classes/test-cases/expected.js +19 -0
  18. package/node/deprecations/linear-progress-classes/index.js +13 -0
  19. package/node/deprecations/linear-progress-classes/linear-progress-classes.js +77 -0
  20. package/node/deprecations/linear-progress-classes/postcss-plugin.js +54 -0
  21. package/node/deprecations/linear-progress-classes/postcss.config.js +8 -0
  22. package/node/deprecations/linear-progress-classes/test-cases/actual.js +21 -0
  23. package/node/deprecations/linear-progress-classes/test-cases/expected.js +21 -0
  24. package/node/deprecations/list-item-props/list-item-props.js +14 -0
  25. package/node/deprecations/list-item-props/test-cases/actual.js +6 -0
  26. package/node/deprecations/list-item-props/test-cases/expected.js +10 -0
  27. package/node/deprecations/list-item-props/test-cases/theme.actual.js +10 -0
  28. package/node/deprecations/list-item-props/test-cases/theme.expected.js +14 -0
  29. package/node/deprecations/modal-props/modal-props.js +14 -0
  30. package/node/deprecations/modal-props/test-cases/actual.js +6 -0
  31. package/node/deprecations/modal-props/test-cases/expected.js +10 -0
  32. package/node/deprecations/modal-props/test-cases/theme.actual.js +10 -0
  33. package/node/deprecations/modal-props/test-cases/theme.expected.js +14 -0
  34. package/node/deprecations/pagination-item-classes/postcss-plugin.js +1 -1
  35. package/node/deprecations/step-connector-classes/postcss-plugin.js +1 -1
  36. package/node/deprecations/toggle-button-group-classes/postcss-plugin.js +1 -1
  37. package/package.json +3 -3
package/README.md CHANGED
@@ -1032,6 +1032,78 @@ npx @mui/codemod@latest deprecations/circular-progress-classes <path>
1032
1032
  npx @mui/codemod@latest deprecations/divider-props <path>
1033
1033
  ```
1034
1034
 
1035
+ #### `drawer-classes`
1036
+
1037
+ JS transforms:
1038
+
1039
+ ```diff
1040
+ import { drawerClasses } from '@mui/material/Drawer';
1041
+
1042
+ MuiDrawer: {
1043
+ styleOverrides: {
1044
+ root: {
1045
+ - [`.${drawerClasses.paperAnchorBottom}`]: {
1046
+ + [`&.${drawerClasses.anchorBottom} > .${drawerClasses.paper}`]: {
1047
+ color: 'red',
1048
+ },
1049
+ - [`.${drawerClasses.paperAnchorLeft}`]: {
1050
+ + [`&.${drawerClasses.anchorLeft} > .${drawerClasses.paper}`]: {
1051
+ color: 'red',
1052
+ },
1053
+ - [`.${drawerClasses.paperAnchorRight}`]: {
1054
+ + [`&.${drawerClasses.anchorRight} > .${drawerClasses.paper}`]: {
1055
+ color: 'red',
1056
+ },
1057
+ - [`.${drawerClasses.paperAnchorTop}`]: {
1058
+ + [`&.${drawerClasses.anchorTop} > .${drawerClasses.paper}`]: {
1059
+ color: 'red',
1060
+ },
1061
+ - [`.${drawerClasses.paperAnchorDockedBottom}`]: {
1062
+ + [`&.${drawerClasses.docked}.${drawerClasses.anchorBottom} > .${drawerClasses.paper}`]: {
1063
+ color: 'red',
1064
+ },
1065
+ - [`.${drawerClasses.paperAnchorDockedLeft}`]: {
1066
+ + [`&.${drawerClasses.docked}.${drawerClasses.anchorLeft} > .${drawerClasses.paper}`]: {
1067
+ color: 'red',
1068
+ },
1069
+ - [`.${drawerClasses.paperAnchorDockedRight}`]: {
1070
+ + [`&.${drawerClasses.docked}.${drawerClasses.anchorRight} > .${drawerClasses.paper}`]: {
1071
+ color: 'red',
1072
+ },
1073
+ - [`.${drawerClasses.paperAnchorDockedTop}`]: {
1074
+ + [`&.${drawerClasses.docked}.${drawerClasses.anchorTop} > .${drawerClasses.paper}`]: {
1075
+ color: 'red',
1076
+ },
1077
+ },
1078
+ },
1079
+ },
1080
+ ```
1081
+
1082
+ CSS transforms:
1083
+
1084
+ ```diff
1085
+ -.MuiDrawer-paperAnchorBottom
1086
+ +.MuiDrawer-anchorBottom > .MuiDrawer-paper
1087
+ -.MuiDrawer-paperAnchorLeft
1088
+ +.MuiDrawer-anchorLeft > .MuiDrawer-paper
1089
+ -.MuiDrawer-paperAnchorRight
1090
+ +.MuiDrawer-anchorRight > .MuiDrawer-paper
1091
+ -.MuiDrawer-paperAnchorTop
1092
+ +.MuiDrawer-anchorTop > .MuiDrawer-paper
1093
+ -.MuiDrawer-paperAnchorDockedBottom
1094
+ +.MuiDrawer-docked.MuiDrawer-anchorBottom > .MuiDrawer-paper
1095
+ -.MuiDrawer-paperAnchorDockedLeft
1096
+ +.MuiDrawer-docked.MuiDrawer-anchorLeft > .MuiDrawer-paper
1097
+ -.MuiDrawer-paperAnchorDockedRight
1098
+ +.MuiDrawer-docked.MuiDrawer-anchorRight > .MuiDrawer-paper
1099
+ -.MuiDrawer-paperAnchorDockedTop
1100
+ +.MuiDrawer-docked.MuiDrawer-anchorTop > .MuiDrawer-paper
1101
+ ```
1102
+
1103
+ ```bash
1104
+ npx @mui/codemod@latest deprecations/drawer-classes <path>
1105
+ ```
1106
+
1035
1107
  #### `filled-input-props`
1036
1108
 
1037
1109
  ```diff
@@ -1242,6 +1314,66 @@ npx @mui/codemod@latest deprecations/input-base-props <path>
1242
1314
  npx @mui/codemod@latest deprecations/input-props <path>
1243
1315
  ```
1244
1316
 
1317
+ #### `linear-progress-classes`
1318
+
1319
+ JS transforms:
1320
+
1321
+ ```diff
1322
+ import { linearProgressClasses } from '@mui/material/LinearProgress';
1323
+
1324
+ MuiLinearProgress: {
1325
+ styleOverrides: {
1326
+ root: {
1327
+ - [`&.${linearProgressClasses.bar1Buffer}`]: {},
1328
+ + [`&.${linearProgressClasses.buffer} > .${linearProgressClasses.bar1}`]: {},
1329
+ - [`&.${linearProgressClasses.bar1Determinate}`]: {},
1330
+ + [`&.${linearProgressClasses.determinate} > .${linearProgressClasses.bar1}`]: {},
1331
+ - [`&.${linearProgressClasses.bar1Indeterminate}`]: {},
1332
+ + [`&.${linearProgressClasses.indeterminate} > .${linearProgressClasses.bar1}`]: {},
1333
+ - [`&.${linearProgressClasses.bar2Buffer}`]: {},
1334
+ + [`&.${linearProgressClasses.buffer} > .${linearProgressClasses.bar2}`]: {},
1335
+ - [`&.${linearProgressClasses.bar2Indeterminate}`]: {},
1336
+ + [`&.${linearProgressClasses.indeterminate} > .${linearProgressClasses.bar2}`]: {},
1337
+ - [`&.${linearProgressClasses.barColorPrimary}`]: {},
1338
+ + [`&.${linearProgressClasses.colorPrimary} > .${linearProgressClasses.bar}`]: {},
1339
+ - [`&.${linearProgressClasses.barColorSecondary}`]: {},
1340
+ + [`&.${linearProgressClasses.colorSecondary} > .${linearProgressClasses.bar}`]: {},
1341
+ - [`&.${linearProgressClasses.dashedColorPrimary}`]: {},
1342
+ + [`&.${linearProgressClasses.colorPrimary} > .${linearProgressClasses.dashed}`]: {},
1343
+ - [`&.${linearProgressClasses.dashedColorSecondary}`]: {},
1344
+ + [`&.${linearProgressClasses.colorSecondary} > .${linearProgressClasses.dashed}`]: {},
1345
+ },
1346
+ },
1347
+ }
1348
+ ```
1349
+
1350
+ CSS transforms:
1351
+
1352
+ ```diff
1353
+ -.MuiLinearProgress-bar1Buffer
1354
+ +.MuiLinearProgress-buffer > .MuiLinearProgress-bar1
1355
+ -.MuiLinearProgress-bar1Determinate
1356
+ +.MuiLinearProgress-determinate > .MuiLinearProgress-bar1
1357
+ -.MuiLinearProgress-bar1Indeterminate
1358
+ +.MuiLinearProgress-indeterminate > .MuiLinearProgress-bar1
1359
+ -.MuiLinearProgress-bar2Buffer
1360
+ +.MuiLinearProgress-buffer > .MuiLinearProgress-bar2
1361
+ -.MuiLinearProgress-bar2Indeterminate
1362
+ +.MuiLinearProgress-indeterminate > .MuiLinearProgress-bar2
1363
+ -.MuiLinearProgress-barColorPrimary
1364
+ +.MuiLinearProgress-colorPrimary > .MuiLinearProgress-bar
1365
+ -.MuiLinearProgress-barColorSecondary
1366
+ +.MuiLinearProgress-colorSecondary > .MuiLinearProgress-bar
1367
+ -.MuiLinearProgress-dashedColorPrimary
1368
+ +.MuiLinearProgress-colorPrimary > .MuiLinearProgress-dashed
1369
+ -.MuiLinearProgress-dashedColorSecondary
1370
+ +.MuiLinearProgress-colorSecondary > .MuiLinearProgress-dashed
1371
+ ```
1372
+
1373
+ ```bash
1374
+ npx @mui/codemod@latest deprecations/linear-progress-classes <path>
1375
+ ```
1376
+
1245
1377
  #### `modal-props`
1246
1378
 
1247
1379
  ```diff
@@ -14,7 +14,7 @@ const classes = variants.reduce((acc, variant) => {
14
14
  }, []);
15
15
  const plugin = () => {
16
16
  return {
17
- postcssPlugin: `Replace deperecated Alert classes with new classes`,
17
+ postcssPlugin: `Replace deprecated Alert classes with new classes`,
18
18
  Rule(rule) {
19
19
  const {
20
20
  selector
@@ -17,12 +17,14 @@ var _buttonGroupClasses = _interopRequireDefault(require("../button-group-classe
17
17
  var _chipClasses = _interopRequireDefault(require("../chip-classes"));
18
18
  var _circularProgressClasses = _interopRequireDefault(require("../circular-progress-classes"));
19
19
  var _dividerProps = _interopRequireDefault(require("../divider-props"));
20
+ var _drawerClasses = _interopRequireDefault(require("../drawer-classes"));
20
21
  var _filledInputProps = _interopRequireDefault(require("../filled-input-props"));
21
22
  var _formControlLabelProps = _interopRequireDefault(require("../form-control-label-props"));
22
23
  var _imageListItemBarClasses = _interopRequireDefault(require("../image-list-item-bar-classes"));
23
24
  var _inputBaseProps = _interopRequireDefault(require("../input-base-props"));
24
25
  var _inputProps = _interopRequireDefault(require("../input-props"));
25
26
  var _listItemTextProps = _interopRequireDefault(require("../list-item-text-props"));
27
+ var _linearProgressClasses = _interopRequireDefault(require("../linear-progress-classes"));
26
28
  var _modalProps = _interopRequireDefault(require("../modal-props"));
27
29
  var _outlinedInputProps = _interopRequireDefault(require("../outlined-input-props"));
28
30
  var _paginationItemClasses = _interopRequireDefault(require("../pagination-item-classes"));
@@ -37,6 +39,7 @@ var _tabClasses = _interopRequireDefault(require("../tab-classes"));
37
39
  var _toggleButtonGroupClasses = _interopRequireDefault(require("../toggle-button-group-classes"));
38
40
  var _tooltipProps = _interopRequireDefault(require("../tooltip-props"));
39
41
  var _tablePaginationProps = _interopRequireDefault(require("../table-pagination-props"));
42
+ var _cardHeaderProps = _interopRequireDefault(require("../card-header-props"));
40
43
  /**
41
44
  * @param {import('jscodeshift').FileInfo} file
42
45
  * @param {import('jscodeshift').API} api
@@ -54,12 +57,14 @@ function deprecationsAll(file, api, options) {
54
57
  file.source = (0, _chipClasses.default)(file, api, options);
55
58
  file.source = (0, _circularProgressClasses.default)(file, api, options);
56
59
  file.source = (0, _dividerProps.default)(file, api, options);
60
+ file.source = (0, _drawerClasses.default)(file, api, options);
57
61
  file.source = (0, _filledInputProps.default)(file, api, options);
58
62
  file.source = (0, _formControlLabelProps.default)(file, api, options);
59
63
  file.source = (0, _imageListItemBarClasses.default)(file, api, options);
60
64
  file.source = (0, _inputBaseProps.default)(file, api, options);
61
65
  file.source = (0, _inputProps.default)(file, api, options);
62
66
  file.source = (0, _listItemTextProps.default)(file, api, options);
67
+ file.source = (0, _linearProgressClasses.default)(file, api, options);
63
68
  file.source = (0, _modalProps.default)(file, api, options);
64
69
  file.source = (0, _outlinedInputProps.default)(file, api, options);
65
70
  file.source = (0, _paginationItemClasses.default)(file, api, options);
@@ -74,5 +79,6 @@ function deprecationsAll(file, api, options) {
74
79
  file.source = (0, _toggleButtonGroupClasses.default)(file, api, options);
75
80
  file.source = (0, _tooltipProps.default)(file, api, options);
76
81
  file.source = (0, _tablePaginationProps.default)(file, api, options);
82
+ file.source = (0, _cardHeaderProps.default)(file, api, options);
77
83
  return file.source;
78
84
  }
@@ -15,6 +15,9 @@ const {
15
15
  const {
16
16
  plugin: chipClassesPlugin
17
17
  } = require('../chip-classes/postcss-plugin');
18
+ const {
19
+ plugin: drawerClassesPlugin
20
+ } = require('../drawer-classes/postcss-plugin');
18
21
  const {
19
22
  plugin: paginationItemClassesPlugin
20
23
  } = require('../pagination-item-classes/postcss-plugin');
@@ -27,6 +30,9 @@ const {
27
30
  const {
28
31
  plugin: circularProgressClassesPlugin
29
32
  } = require('../circular-progress-classes/postcss-plugin');
33
+ const {
34
+ plugin: linearProgressClassesPlugin
35
+ } = require('../linear-progress-classes/postcss-plugin');
30
36
  const {
31
37
  plugin: tabClassesPlugin
32
38
  } = require('../tab-classes/postcss-plugin');
@@ -37,5 +43,5 @@ const {
37
43
  plugin: selectClassesPlugin
38
44
  } = require('../select-classes/postcss-plugin');
39
45
  module.exports = {
40
- plugins: [accordionSummaryClassesPlugin, alertClassesPlugin, buttonClassesPlugin, buttonGroupClassesPlugin, chipClassesPlugin, circularProgressClassesPlugin, paginationItemClassesPlugin, stepConnectorClassesPlugin, toggleButtonGroupClassesPlugin, tabClassesPlugin, tableSortLabelClassesPlugin, selectClassesPlugin]
46
+ plugins: [accordionSummaryClassesPlugin, alertClassesPlugin, buttonClassesPlugin, buttonGroupClassesPlugin, chipClassesPlugin, circularProgressClassesPlugin, linearProgressClassesPlugin, drawerClassesPlugin, paginationItemClassesPlugin, stepConnectorClassesPlugin, toggleButtonGroupClassesPlugin, tabClassesPlugin, tableSortLabelClassesPlugin, selectClassesPlugin]
41
47
  };
@@ -102,7 +102,7 @@ const classes = [{
102
102
  }];
103
103
  const plugin = () => {
104
104
  return {
105
- postcssPlugin: `Replace deperecated Button classes with new classes`,
105
+ postcssPlugin: `Replace deprecated Button classes with new classes`,
106
106
  Rule(rule) {
107
107
  const {
108
108
  selector
@@ -54,7 +54,7 @@ const classes = [{
54
54
  }];
55
55
  const plugin = () => {
56
56
  return {
57
- postcssPlugin: `Replace deperecated ButtonGroup classes with new classes`,
57
+ postcssPlugin: `Replace deprecated ButtonGroup classes with new classes`,
58
58
  Rule(rule) {
59
59
  const {
60
60
  selector
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = transformer;
8
+ var _movePropIntoSlotProps = _interopRequireDefault(require("../utils/movePropIntoSlotProps"));
9
+ /**
10
+ * @param {import('jscodeshift').FileInfo} file
11
+ * @param {import('jscodeshift').API} api
12
+ */
13
+ function transformer(file, api, options) {
14
+ const j = api.jscodeshift;
15
+ const root = j(file.source);
16
+ const printOptions = options.printOptions;
17
+ (0, _movePropIntoSlotProps.default)(j, {
18
+ root,
19
+ componentName: 'CardHeader',
20
+ propName: 'titleTypographyProps',
21
+ slotName: 'title'
22
+ });
23
+ (0, _movePropIntoSlotProps.default)(j, {
24
+ root,
25
+ componentName: 'CardHeader',
26
+ propName: 'subheaderTypographyProps',
27
+ slotName: 'subheader'
28
+ });
29
+ return root.toSource(printOptions);
30
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _cardHeaderProps.default;
11
+ }
12
+ });
13
+ var _cardHeaderProps = _interopRequireDefault(require("./card-header-props"));
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _CardHeader = _interopRequireDefault(require("@mui/material/CardHeader"));
5
+ var _material = require("@mui/material");
6
+ var _jsxRuntime = require("react/jsx-runtime");
7
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardHeader.default, {
8
+ titleTypographyProps: {
9
+ variant: 'h6'
10
+ },
11
+ subheaderTypographyProps: {
12
+ variant: 'body2'
13
+ }
14
+ });
15
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardHeader.default, {
16
+ titleTypographyProps: {
17
+ variant: 'h6'
18
+ },
19
+ subheaderTypographyProps: {
20
+ variant: 'body2'
21
+ },
22
+ slotProps: {
23
+ title: {
24
+ variant: 'h1'
25
+ },
26
+ subheader: {
27
+ variant: 'h2'
28
+ }
29
+ }
30
+ });
31
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardHeader.default, {
32
+ titleTypographyProps: {
33
+ variant: 'h6'
34
+ },
35
+ subheaderTypographyProps: {
36
+ variant: 'body2'
37
+ },
38
+ slotProps: {
39
+ title: {
40
+ sx: {
41
+ color: 'red'
42
+ }
43
+ },
44
+ subheader: {
45
+ sx: {
46
+ color: 'red'
47
+ }
48
+ }
49
+ }
50
+ });
51
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.CardHeader, {
52
+ titleTypographyProps: {
53
+ variant: 'h6'
54
+ },
55
+ subheaderTypographyProps: {
56
+ variant: 'body2'
57
+ }
58
+ });
59
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(CustomCardHeader, {
60
+ titleTypographyProps: {
61
+ variant: 'h6'
62
+ },
63
+ subheaderTypographyProps: {
64
+ variant: 'body2'
65
+ }
66
+ });
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ var _CardHeader = _interopRequireDefault(require("@mui/material/CardHeader"));
5
+ var _material = require("@mui/material");
6
+ var _jsxRuntime = require("react/jsx-runtime");
7
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardHeader.default, {
8
+ slotProps: {
9
+ title: {
10
+ variant: 'h6'
11
+ },
12
+ subheader: {
13
+ variant: 'body2'
14
+ }
15
+ }
16
+ });
17
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardHeader.default, {
18
+ slotProps: {
19
+ title: {
20
+ ...{
21
+ variant: 'h6'
22
+ },
23
+ ...{
24
+ variant: 'h1'
25
+ }
26
+ },
27
+ subheader: {
28
+ ...{
29
+ variant: 'body2'
30
+ },
31
+ ...{
32
+ variant: 'h2'
33
+ }
34
+ }
35
+ }
36
+ });
37
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_CardHeader.default, {
38
+ slotProps: {
39
+ title: {
40
+ ...{
41
+ variant: 'h6'
42
+ },
43
+ ...{
44
+ sx: {
45
+ color: 'red'
46
+ }
47
+ }
48
+ },
49
+ subheader: {
50
+ ...{
51
+ variant: 'body2'
52
+ },
53
+ ...{
54
+ sx: {
55
+ color: 'red'
56
+ }
57
+ }
58
+ }
59
+ }
60
+ });
61
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_material.CardHeader, {
62
+ slotProps: {
63
+ title: {
64
+ variant: 'h6'
65
+ },
66
+ subheader: {
67
+ variant: 'body2'
68
+ }
69
+ }
70
+ });
71
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(CustomCardHeader, {
72
+ titleTypographyProps: {
73
+ variant: 'h6'
74
+ },
75
+ subheaderTypographyProps: {
76
+ variant: 'body2'
77
+ }
78
+ });
@@ -81,7 +81,7 @@ const classes = [{
81
81
  }];
82
82
  const plugin = () => {
83
83
  return {
84
- postcssPlugin: `Replace deperecated Chip classes with new classes`,
84
+ postcssPlugin: `Replace deprecated Chip classes with new classes`,
85
85
  Rule(rule) {
86
86
  const {
87
87
  selector
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = transformer;
7
+ var _postcssPlugin = require("./postcss-plugin");
8
+ /**
9
+ * @param {import('jscodeshift').FileInfo} file
10
+ * @param {import('jscodeshift').API} api
11
+ */
12
+ function transformer(file, api, options) {
13
+ const j = api.jscodeshift;
14
+ const root = j(file.source);
15
+ const printOptions = options.printOptions;
16
+ _postcssPlugin.classes.forEach(({
17
+ deprecatedClass,
18
+ replacementSelector
19
+ }) => {
20
+ const replacementSelectorPrefix = '&';
21
+ root.find(j.ImportDeclaration).filter(path => path.node.source.value.match(/^@mui\/material\/Drawer$/)).forEach(path => {
22
+ path.node.specifiers.forEach(specifier => {
23
+ if (specifier.type === 'ImportSpecifier' && specifier.imported.name === 'drawerClasses') {
24
+ const deprecatedAtomicClass = deprecatedClass.replace(`${deprecatedClass.split('-')[0]}-`, '');
25
+ root.find(j.MemberExpression, {
26
+ object: {
27
+ name: specifier.local.name
28
+ },
29
+ property: {
30
+ name: deprecatedAtomicClass
31
+ }
32
+ }).forEach(memberExpression => {
33
+ const parent = memberExpression.parentPath.parentPath.value;
34
+ if (parent.type === j.TemplateLiteral.name) {
35
+ const memberExpressionIndex = parent.expressions.findIndex(expression => expression === memberExpression.value);
36
+ const precedingTemplateElement = parent.quasis[memberExpressionIndex];
37
+ const atomicClasses = replacementSelector.replaceAll('MuiDrawer-', '').replaceAll(replacementSelectorPrefix, '').replaceAll(' > ', '').split('.').filter(Boolean);
38
+ if (precedingTemplateElement.value.raw.endsWith(deprecatedClass.startsWith(' ') ? `${replacementSelectorPrefix} .` : `${replacementSelectorPrefix}.`)) {
39
+ const atomicClassesArgs = [memberExpressionIndex, 1, ...atomicClasses.map(atomicClass => j.memberExpression(memberExpression.value.object, j.identifier(atomicClass)))];
40
+ parent.expressions.splice(...atomicClassesArgs);
41
+ if (replacementSelector.includes(' > ')) {
42
+ const quasisArgs = [memberExpressionIndex, 1, j.templateElement({
43
+ raw: precedingTemplateElement.value.raw.replace(' ', ''),
44
+ cooked: precedingTemplateElement.value.cooked.replace(' ', '')
45
+ }, false), j.templateElement({
46
+ raw: ' > .',
47
+ cooked: ' > .'
48
+ }, false)];
49
+ if (atomicClasses.length === 3) {
50
+ quasisArgs.splice(3, 0, j.templateElement({
51
+ raw: '.',
52
+ cooked: '.'
53
+ }, false));
54
+ }
55
+ parent.quasis.splice(...quasisArgs);
56
+ } else {
57
+ parent.quasis.splice(memberExpressionIndex, 1, j.templateElement({
58
+ raw: precedingTemplateElement.value.raw,
59
+ cooked: precedingTemplateElement.value.cooked
60
+ }, false), j.templateElement({
61
+ raw: '.',
62
+ cooked: '.'
63
+ }, false));
64
+ }
65
+ }
66
+ }
67
+ });
68
+ }
69
+ });
70
+ });
71
+ const selectorRegex = new RegExp(`^${replacementSelectorPrefix}${deprecatedClass}`);
72
+ root.find(j.Literal, literal => typeof literal.value === 'string' && literal.value.match(selectorRegex)).forEach(path => {
73
+ path.replace(j.literal(path.value.value.replace(selectorRegex, `${replacementSelectorPrefix}${replacementSelector}`)));
74
+ });
75
+ });
76
+ return root.toSource(printOptions);
77
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _drawerClasses.default;
11
+ }
12
+ });
13
+ var _drawerClasses = _interopRequireDefault(require("./drawer-classes"));
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ const classes = [{
4
+ deprecatedClass: ' .MuiDrawer-paperAnchorBottom',
5
+ replacementSelector: '.MuiDrawer-anchorBottom > .MuiDrawer-paper'
6
+ }, {
7
+ deprecatedClass: ' .MuiDrawer-paperAnchorLeft',
8
+ replacementSelector: '.MuiDrawer-anchorLeft > .MuiDrawer-paper'
9
+ }, {
10
+ deprecatedClass: ' .MuiDrawer-paperAnchorRight',
11
+ replacementSelector: '.MuiDrawer-anchorRight > .MuiDrawer-paper'
12
+ }, {
13
+ deprecatedClass: ' .MuiDrawer-paperAnchorTop',
14
+ replacementSelector: '.MuiDrawer-anchorTop > .MuiDrawer-paper'
15
+ }, {
16
+ deprecatedClass: ' .MuiDrawer-paperAnchorDockedBottom',
17
+ replacementSelector: '.MuiDrawer-docked.MuiDrawer-anchorBottom > .MuiDrawer-paper'
18
+ }, {
19
+ deprecatedClass: ' .MuiDrawer-paperAnchorDockedLeft',
20
+ replacementSelector: '.MuiDrawer-docked.MuiDrawer-anchorLeft > .MuiDrawer-paper'
21
+ }, {
22
+ deprecatedClass: ' .MuiDrawer-paperAnchorDockedRight',
23
+ replacementSelector: '.MuiDrawer-docked.MuiDrawer-anchorRight > .MuiDrawer-paper'
24
+ }, {
25
+ deprecatedClass: ' .MuiDrawer-paperAnchorDockedTop',
26
+ replacementSelector: '.MuiDrawer-docked.MuiDrawer-anchorTop > .MuiDrawer-paper'
27
+ }];
28
+ const plugin = () => {
29
+ return {
30
+ postcssPlugin: `Replace deprecated Drawer classes with new classes`,
31
+ Rule(rule) {
32
+ const {
33
+ selector
34
+ } = rule;
35
+ classes.forEach(({
36
+ deprecatedClass,
37
+ replacementSelector
38
+ }) => {
39
+ const selectorRegex = new RegExp(`${deprecatedClass}`);
40
+ if (selector.match(selectorRegex)) {
41
+ rule.selector = selector.replace(selectorRegex, replacementSelector);
42
+ }
43
+ });
44
+ }
45
+ };
46
+ };
47
+ plugin.postcss = true;
48
+ module.exports = {
49
+ plugin,
50
+ classes
51
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ const {
4
+ plugin
5
+ } = require('./postcss-plugin');
6
+ module.exports = {
7
+ plugins: [plugin]
8
+ };
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var _Drawer = require("@mui/material/Drawer");
4
+ "& .MuiDrawer-paperAnchorBottom";
5
+ "& .MuiDrawer-paperAnchorLeft";
6
+ "& .MuiDrawer-paperAnchorRight";
7
+ "& .MuiDrawer-paperAnchorTop";
8
+ "& .MuiDrawer-paperAnchorDockedBottom";
9
+ "& .MuiDrawer-paperAnchorDockedLeft";
10
+ "& .MuiDrawer-paperAnchorDockedRight";
11
+ "& .MuiDrawer-paperAnchorDockedTop";
12
+ `& .${_Drawer.drawerClasses.paperAnchorBottom}`;
13
+ `& .${_Drawer.drawerClasses.paperAnchorLeft}`;
14
+ `& .${_Drawer.drawerClasses.paperAnchorRight}`;
15
+ `& .${_Drawer.drawerClasses.paperAnchorTop}`;
16
+ `& .${_Drawer.drawerClasses.paperAnchorDockedBottom}`;
17
+ `& .${_Drawer.drawerClasses.paperAnchorDockedLeft}`;
18
+ `& .${_Drawer.drawerClasses.paperAnchorDockedRight}`;
19
+ `& .${_Drawer.drawerClasses.paperAnchorDockedTop}`;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ var _Drawer = require("@mui/material/Drawer");
4
+ "&.MuiDrawer-anchorBottom > .MuiDrawer-paper";
5
+ "&.MuiDrawer-anchorLeft > .MuiDrawer-paper";
6
+ "&.MuiDrawer-anchorRight > .MuiDrawer-paper";
7
+ "&.MuiDrawer-anchorTop > .MuiDrawer-paper";
8
+ "&.MuiDrawer-docked.MuiDrawer-anchorBottom > .MuiDrawer-paper";
9
+ "&.MuiDrawer-docked.MuiDrawer-anchorLeft > .MuiDrawer-paper";
10
+ "&.MuiDrawer-docked.MuiDrawer-anchorRight > .MuiDrawer-paper";
11
+ "&.MuiDrawer-docked.MuiDrawer-anchorTop > .MuiDrawer-paper";
12
+ `&.${_Drawer.drawerClasses.anchorBottom} > .${_Drawer.drawerClasses.paper}`;
13
+ `&.${_Drawer.drawerClasses.anchorLeft} > .${_Drawer.drawerClasses.paper}`;
14
+ `&.${_Drawer.drawerClasses.anchorRight} > .${_Drawer.drawerClasses.paper}`;
15
+ `&.${_Drawer.drawerClasses.anchorTop} > .${_Drawer.drawerClasses.paper}`;
16
+ `&.${_Drawer.drawerClasses.docked}.${_Drawer.drawerClasses.anchorBottom} > .${_Drawer.drawerClasses.paper}`;
17
+ `&.${_Drawer.drawerClasses.docked}.${_Drawer.drawerClasses.anchorLeft} > .${_Drawer.drawerClasses.paper}`;
18
+ `&.${_Drawer.drawerClasses.docked}.${_Drawer.drawerClasses.anchorRight} > .${_Drawer.drawerClasses.paper}`;
19
+ `&.${_Drawer.drawerClasses.docked}.${_Drawer.drawerClasses.anchorTop} > .${_Drawer.drawerClasses.paper}`;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _linearProgressClasses.default;
11
+ }
12
+ });
13
+ var _linearProgressClasses = _interopRequireDefault(require("./linear-progress-classes"));
@@ -0,0 +1,77 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = transformer;
7
+ var _postcssPlugin = require("./postcss-plugin");
8
+ /**
9
+ * @param {import('jscodeshift').FileInfo} file
10
+ * @param {import('jscodeshift').API} api
11
+ */
12
+ function transformer(file, api, options) {
13
+ const j = api.jscodeshift;
14
+ const root = j(file.source);
15
+ const printOptions = options.printOptions;
16
+ _postcssPlugin.classes.forEach(({
17
+ deprecatedClass,
18
+ replacementSelector
19
+ }) => {
20
+ const replacementSelectorPrefix = '&';
21
+ root.find(j.ImportDeclaration).filter(path => path.node.source.value.match(/^@mui\/material\/LinearProgress$/)).forEach(path => {
22
+ path.node.specifiers.forEach(specifier => {
23
+ if (specifier.type === 'ImportSpecifier' && specifier.imported.name === 'linearProgressClasses') {
24
+ const deprecatedAtomicClass = deprecatedClass.replace(`${deprecatedClass.split('-')[0]}-`, '');
25
+ root.find(j.MemberExpression, {
26
+ object: {
27
+ name: specifier.local.name
28
+ },
29
+ property: {
30
+ name: deprecatedAtomicClass
31
+ }
32
+ }).forEach(memberExpression => {
33
+ const parent = memberExpression.parentPath.parentPath.value;
34
+ if (parent.type === j.TemplateLiteral.name) {
35
+ const memberExpressionIndex = parent.expressions.findIndex(expression => expression === memberExpression.value);
36
+ const precedingTemplateElement = parent.quasis[memberExpressionIndex];
37
+ const atomicClasses = replacementSelector.replaceAll('MuiLinearProgress-', '').replaceAll(replacementSelectorPrefix, '').replaceAll(' > ', '').split('.').filter(Boolean);
38
+ if (precedingTemplateElement.value.raw.endsWith(deprecatedClass.startsWith(' ') ? `${replacementSelectorPrefix} .` : `${replacementSelectorPrefix}.`)) {
39
+ const atomicClassesArgs = [memberExpressionIndex, 1, ...atomicClasses.map(atomicClass => j.memberExpression(memberExpression.value.object, j.identifier(atomicClass)))];
40
+ parent.expressions.splice(...atomicClassesArgs);
41
+ if (replacementSelector.includes(' > ')) {
42
+ const quasisArgs = [memberExpressionIndex, 1, j.templateElement({
43
+ raw: precedingTemplateElement.value.raw.replace(' ', ''),
44
+ cooked: precedingTemplateElement.value.cooked.replace(' ', '')
45
+ }, false), j.templateElement({
46
+ raw: ' > .',
47
+ cooked: ' > .'
48
+ }, false)];
49
+ if (atomicClasses.length === 3) {
50
+ quasisArgs.splice(3, 0, j.templateElement({
51
+ raw: '.',
52
+ cooked: '.'
53
+ }, false));
54
+ }
55
+ parent.quasis.splice(...quasisArgs);
56
+ } else {
57
+ parent.quasis.splice(memberExpressionIndex, 1, j.templateElement({
58
+ raw: precedingTemplateElement.value.raw,
59
+ cooked: precedingTemplateElement.value.cooked
60
+ }, false), j.templateElement({
61
+ raw: '.',
62
+ cooked: '.'
63
+ }, false));
64
+ }
65
+ }
66
+ }
67
+ });
68
+ }
69
+ });
70
+ });
71
+ const selectorRegex = new RegExp(`^${replacementSelectorPrefix}${deprecatedClass}`);
72
+ root.find(j.Literal, literal => typeof literal.value === 'string' && literal.value.match(selectorRegex)).forEach(path => {
73
+ path.replace(j.literal(path.value.value.replace(selectorRegex, `${replacementSelectorPrefix}${replacementSelector}`)));
74
+ });
75
+ });
76
+ return root.toSource(printOptions);
77
+ }
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+
3
+ const classes = [{
4
+ deprecatedClass: ' .MuiLinearProgress-bar1Buffer',
5
+ replacementSelector: '.MuiLinearProgress-buffer > .MuiLinearProgress-bar1'
6
+ }, {
7
+ deprecatedClass: ' .MuiLinearProgress-bar1Determinate',
8
+ replacementSelector: '.MuiLinearProgress-determinate > .MuiLinearProgress-bar1'
9
+ }, {
10
+ deprecatedClass: ' .MuiLinearProgress-bar1Indeterminate',
11
+ replacementSelector: '.MuiLinearProgress-indeterminate > .MuiLinearProgress-bar1'
12
+ }, {
13
+ deprecatedClass: ' .MuiLinearProgress-bar2Buffer',
14
+ replacementSelector: '.MuiLinearProgress-buffer > .MuiLinearProgress-bar2'
15
+ }, {
16
+ deprecatedClass: ' .MuiLinearProgress-bar2Indeterminate',
17
+ replacementSelector: '.MuiLinearProgress-indeterminate > .MuiLinearProgress-bar2'
18
+ }, {
19
+ deprecatedClass: ' .MuiLinearProgress-barColorPrimary',
20
+ replacementSelector: '.MuiLinearProgress-colorPrimary > .MuiLinearProgress-bar'
21
+ }, {
22
+ deprecatedClass: ' .MuiLinearProgress-barColorSecondary',
23
+ replacementSelector: '.MuiLinearProgress-colorSecondary > .MuiLinearProgress-bar'
24
+ }, {
25
+ deprecatedClass: ' .MuiLinearProgress-dashedColorPrimary',
26
+ replacementSelector: '.MuiLinearProgress-colorPrimary > .MuiLinearProgress-dashed'
27
+ }, {
28
+ deprecatedClass: ' .MuiLinearProgress-dashedColorSecondary',
29
+ replacementSelector: '.MuiLinearProgress-colorSecondary > .MuiLinearProgress-dashed'
30
+ }];
31
+ const plugin = () => {
32
+ return {
33
+ postcssPlugin: `Replace deprecated LinearProgress classes with new classes`,
34
+ Rule(rule) {
35
+ const {
36
+ selector
37
+ } = rule;
38
+ classes.forEach(({
39
+ deprecatedClass,
40
+ replacementSelector
41
+ }) => {
42
+ const selectorRegex = new RegExp(`${deprecatedClass}`);
43
+ if (selector.match(selectorRegex)) {
44
+ rule.selector = selector.replace(selectorRegex, replacementSelector);
45
+ }
46
+ });
47
+ }
48
+ };
49
+ };
50
+ plugin.postcss = true;
51
+ module.exports = {
52
+ plugin,
53
+ classes
54
+ };
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+
3
+ const {
4
+ plugin
5
+ } = require('./postcss-plugin');
6
+ module.exports = {
7
+ plugins: [plugin]
8
+ };
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ var _LinearProgress = require("@mui/material/LinearProgress");
4
+ '& .MuiLinearProgress-bar1Buffer';
5
+ '& .MuiLinearProgress-bar1Determinate';
6
+ '& .MuiLinearProgress-bar1Indeterminate';
7
+ '& .MuiLinearProgress-bar2Buffer';
8
+ '& .MuiLinearProgress-bar2Indeterminate';
9
+ '& .MuiLinearProgress-barColorPrimary';
10
+ '& .MuiLinearProgress-barColorSecondary';
11
+ '& .MuiLinearProgress-dashedColorPrimary';
12
+ '& .MuiLinearProgress-dashedColorSecondary';
13
+ `& .${_LinearProgress.linearProgressClasses.bar1Buffer}`;
14
+ `& .${_LinearProgress.linearProgressClasses.bar1Determinate}`;
15
+ `& .${_LinearProgress.linearProgressClasses.bar1Indeterminate}`;
16
+ `& .${_LinearProgress.linearProgressClasses.bar2Buffer}`;
17
+ `& .${_LinearProgress.linearProgressClasses.bar2Indeterminate}`;
18
+ `& .${_LinearProgress.linearProgressClasses.barColorPrimary}`;
19
+ `& .${_LinearProgress.linearProgressClasses.barColorSecondary}`;
20
+ `& .${_LinearProgress.linearProgressClasses.dashedColorPrimary}`;
21
+ `& .${_LinearProgress.linearProgressClasses.dashedColorSecondary}`;
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ var _LinearProgress = require("@mui/material/LinearProgress");
4
+ '&.MuiLinearProgress-buffer > .MuiLinearProgress-bar1';
5
+ '&.MuiLinearProgress-determinate > .MuiLinearProgress-bar1';
6
+ '&.MuiLinearProgress-indeterminate > .MuiLinearProgress-bar1';
7
+ '&.MuiLinearProgress-buffer > .MuiLinearProgress-bar2';
8
+ '&.MuiLinearProgress-indeterminate > .MuiLinearProgress-bar2';
9
+ '&.MuiLinearProgress-colorPrimary > .MuiLinearProgress-bar';
10
+ '&.MuiLinearProgress-colorSecondary > .MuiLinearProgress-bar';
11
+ '&.MuiLinearProgress-colorPrimary > .MuiLinearProgress-dashed';
12
+ '&.MuiLinearProgress-colorSecondary > .MuiLinearProgress-dashed';
13
+ `&.${_LinearProgress.linearProgressClasses.buffer} > .${_LinearProgress.linearProgressClasses.bar1}`;
14
+ `&.${_LinearProgress.linearProgressClasses.determinate} > .${_LinearProgress.linearProgressClasses.bar1}`;
15
+ `&.${_LinearProgress.linearProgressClasses.indeterminate} > .${_LinearProgress.linearProgressClasses.bar1}`;
16
+ `&.${_LinearProgress.linearProgressClasses.buffer} > .${_LinearProgress.linearProgressClasses.bar2}`;
17
+ `&.${_LinearProgress.linearProgressClasses.indeterminate} > .${_LinearProgress.linearProgressClasses.bar2}`;
18
+ `&.${_LinearProgress.linearProgressClasses.colorPrimary} > .${_LinearProgress.linearProgressClasses.bar}`;
19
+ `&.${_LinearProgress.linearProgressClasses.colorSecondary} > .${_LinearProgress.linearProgressClasses.bar}`;
20
+ `&.${_LinearProgress.linearProgressClasses.colorPrimary} > .${_LinearProgress.linearProgressClasses.dashed}`;
21
+ `&.${_LinearProgress.linearProgressClasses.colorSecondary} > .${_LinearProgress.linearProgressClasses.dashed}`;
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = transformer;
8
+ var _movePropIntoSlotProps = _interopRequireDefault(require("../utils/movePropIntoSlotProps"));
9
+ var _movePropIntoSlots = _interopRequireDefault(require("../utils/movePropIntoSlots"));
8
10
  var _replaceComponentsWithSlots = _interopRequireDefault(require("../utils/replaceComponentsWithSlots"));
9
11
  /**
10
12
  * @param {import('jscodeshift').FileInfo} file
@@ -18,5 +20,17 @@ function transformer(file, api, options) {
18
20
  root,
19
21
  componentName: 'ListItem'
20
22
  });
23
+ (0, _movePropIntoSlots.default)(j, {
24
+ root,
25
+ componentName: 'ListItem',
26
+ propName: 'ContainerComponent',
27
+ slotName: 'root'
28
+ });
29
+ (0, _movePropIntoSlotProps.default)(j, {
30
+ root,
31
+ componentName: 'ListItem',
32
+ propName: 'ContainerProps',
33
+ slotName: 'root'
34
+ });
21
35
  return root.toSource(printOptions);
22
36
  }
@@ -40,4 +40,10 @@ var _jsxRuntime = require("react/jsx-runtime");
40
40
  componentsProps: {
41
41
  root: componentsRootProps
42
42
  }
43
+ });
44
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.default, {
45
+ ContainerComponent: Container,
46
+ ContainerProps: {
47
+ id: 'test'
48
+ }
43
49
  });
@@ -37,4 +37,14 @@ var _jsxRuntime = require("react/jsx-runtime");
37
37
  ...slotsRootProps
38
38
  }
39
39
  }
40
+ });
41
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_ListItem.default, {
42
+ slots: {
43
+ root: Container
44
+ },
45
+ slotProps: {
46
+ root: {
47
+ id: 'test'
48
+ }
49
+ }
40
50
  });
@@ -53,4 +53,14 @@ fn({
53
53
  }
54
54
  }
55
55
  }
56
+ });
57
+ fn({
58
+ MuiListItem: {
59
+ defaultProps: {
60
+ ContainerComponent: Container,
61
+ ContainerProps: {
62
+ id: 'test'
63
+ }
64
+ }
65
+ }
56
66
  });
@@ -50,4 +50,18 @@ fn({
50
50
  }
51
51
  }
52
52
  }
53
+ });
54
+ fn({
55
+ MuiListItem: {
56
+ defaultProps: {
57
+ slots: {
58
+ root: Container
59
+ },
60
+ slotProps: {
61
+ root: {
62
+ id: 'test'
63
+ }
64
+ }
65
+ }
66
+ }
53
67
  });
@@ -5,6 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.default = transformer;
8
+ var _movePropIntoSlotProps = _interopRequireDefault(require("../utils/movePropIntoSlotProps"));
9
+ var _movePropIntoSlots = _interopRequireDefault(require("../utils/movePropIntoSlots"));
8
10
  var _replaceComponentsWithSlots = _interopRequireDefault(require("../utils/replaceComponentsWithSlots"));
9
11
  /**
10
12
  * @param {import('jscodeshift').FileInfo} file
@@ -18,5 +20,17 @@ function transformer(file, api, options) {
18
20
  root,
19
21
  componentName: 'Modal'
20
22
  });
23
+ (0, _movePropIntoSlots.default)(j, {
24
+ root,
25
+ componentName: 'Modal',
26
+ propName: 'BackdropComponent',
27
+ slotName: 'backdrop'
28
+ });
29
+ (0, _movePropIntoSlotProps.default)(j, {
30
+ root,
31
+ componentName: 'Modal',
32
+ propName: 'BackdropProps',
33
+ slotName: 'backdrop'
34
+ });
21
35
  return root.toSource(printOptions);
22
36
  }
@@ -40,4 +40,10 @@ var _jsxRuntime = require("react/jsx-runtime");
40
40
  componentsProps: {
41
41
  root: componentsRootProps
42
42
  }
43
+ });
44
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_Modal.default, {
45
+ BackdropComponent: Backdrop,
46
+ BackdropProps: {
47
+ timeout: 500
48
+ }
43
49
  });
@@ -37,4 +37,14 @@ var _jsxRuntime = require("react/jsx-runtime");
37
37
  ...slotsRootProps
38
38
  }
39
39
  }
40
+ });
41
+ /*#__PURE__*/(0, _jsxRuntime.jsx)(_Modal.default, {
42
+ slots: {
43
+ backdrop: Backdrop
44
+ },
45
+ slotProps: {
46
+ backdrop: {
47
+ timeout: 500
48
+ }
49
+ }
40
50
  });
@@ -53,4 +53,14 @@ fn({
53
53
  }
54
54
  }
55
55
  }
56
+ });
57
+ fn({
58
+ MuiModal: {
59
+ defaultProps: {
60
+ BackdropProps: {
61
+ timeout: 500
62
+ },
63
+ BackdropComponent: Backdrop
64
+ }
65
+ }
56
66
  });
@@ -50,4 +50,18 @@ fn({
50
50
  }
51
51
  }
52
52
  }
53
+ });
54
+ fn({
55
+ MuiModal: {
56
+ defaultProps: {
57
+ slots: {
58
+ backdrop: Backdrop
59
+ },
60
+ slotProps: {
61
+ backdrop: {
62
+ timeout: 500
63
+ }
64
+ }
65
+ }
66
+ }
53
67
  });
@@ -15,7 +15,7 @@ const classes = [{
15
15
  }];
16
16
  const plugin = () => {
17
17
  return {
18
- postcssPlugin: `Replace deperecated PaginationItem classes with new classes`,
18
+ postcssPlugin: `Replace deprecated PaginationItem classes with new classes`,
19
19
  Rule(rule) {
20
20
  const {
21
21
  selector
@@ -9,7 +9,7 @@ const classes = [{
9
9
  }];
10
10
  const plugin = () => {
11
11
  return {
12
- postcssPlugin: `Replace deperecated StepConnector classes with new classes`,
12
+ postcssPlugin: `Replace deprecated StepConnector classes with new classes`,
13
13
  Rule(rule) {
14
14
  const {
15
15
  selector
@@ -9,7 +9,7 @@ const classes = [{
9
9
  }];
10
10
  const plugin = () => {
11
11
  return {
12
- postcssPlugin: `Replace deperecated ToggleButtonGroup classes with new classes`,
12
+ postcssPlugin: `Replace deprecated ToggleButtonGroup classes with new classes`,
13
13
  Rule(rule) {
14
14
  const {
15
15
  selector
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mui/codemod",
3
- "version": "6.3.1",
3
+ "version": "6.4.1",
4
4
  "bin": "./codemod.js",
5
5
  "private": false,
6
6
  "author": "MUI Team",
@@ -26,8 +26,8 @@
26
26
  "dependencies": {
27
27
  "@babel/core": "^7.26.0",
28
28
  "@babel/runtime": "^7.26.0",
29
- "@babel/traverse": "^7.26.4",
30
- "jscodeshift": "^17.1.1",
29
+ "@babel/traverse": "^7.26.5",
30
+ "jscodeshift": "^17.1.2",
31
31
  "jscodeshift-add-imports": "^1.0.11",
32
32
  "postcss": "^8.4.49",
33
33
  "postcss-cli": "^11.0.0",