@mui/codemod 9.0.0-alpha.1 → 9.0.0-beta.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.
Files changed (60) hide show
  1. package/CHANGELOG.md +288 -2
  2. package/README.md +393 -8
  3. package/deprecations/all/deprecations-all.js +6 -0
  4. package/deprecations/autocomplete-props/autocomplete-props.js +195 -0
  5. package/deprecations/autocomplete-props/test-cases/actual.js +31 -0
  6. package/deprecations/autocomplete-props/test-cases/expected.js +31 -0
  7. package/deprecations/autocomplete-props/test-cases/package.actual.js +11 -0
  8. package/deprecations/autocomplete-props/test-cases/package.expected.js +11 -0
  9. package/deprecations/autocomplete-props/test-cases/render-input-package.actual.js +34 -0
  10. package/deprecations/autocomplete-props/test-cases/render-input-package.expected.js +40 -0
  11. package/deprecations/autocomplete-props/test-cases/render-input.actual.js +81 -0
  12. package/deprecations/autocomplete-props/test-cases/render-input.expected.js +92 -0
  13. package/deprecations/autocomplete-props/test-cases/theme.actual.js +15 -0
  14. package/deprecations/autocomplete-props/test-cases/theme.expected.js +15 -0
  15. package/deprecations/checkbox-props/checkbox-props.js +33 -0
  16. package/deprecations/checkbox-props/index.js +13 -0
  17. package/deprecations/checkbox-props/test-cases/actual.js +45 -0
  18. package/deprecations/checkbox-props/test-cases/expected.js +61 -0
  19. package/deprecations/checkbox-props/test-cases/package.actual.js +34 -0
  20. package/deprecations/checkbox-props/test-cases/package.expected.js +50 -0
  21. package/deprecations/checkbox-props/test-cases/theme.actual.js +28 -0
  22. package/deprecations/checkbox-props/test-cases/theme.expected.js +36 -0
  23. package/deprecations/circular-progress-classes/circular-progress-classes.js +16 -1
  24. package/deprecations/circular-progress-classes/postcss-plugin.js +2 -2
  25. package/deprecations/circular-progress-classes/test-cases/expected.js +4 -4
  26. package/deprecations/circular-progress-classes/test-cases/package.expected.js +4 -4
  27. package/deprecations/dialog-props/dialog-props.js +14 -0
  28. package/deprecations/dialog-props/test-cases/actual.js +4 -0
  29. package/deprecations/dialog-props/test-cases/expected.js +4 -0
  30. package/deprecations/drawer-props/drawer-props.js +14 -0
  31. package/deprecations/drawer-props/test-cases/actual.js +10 -2
  32. package/deprecations/drawer-props/test-cases/expected.js +14 -2
  33. package/deprecations/radio-props/index.js +13 -0
  34. package/deprecations/radio-props/radio-props.js +33 -0
  35. package/deprecations/radio-props/test-cases/actual.js +45 -0
  36. package/deprecations/radio-props/test-cases/expected.js +61 -0
  37. package/deprecations/radio-props/test-cases/package.actual.js +34 -0
  38. package/deprecations/radio-props/test-cases/package.expected.js +50 -0
  39. package/deprecations/radio-props/test-cases/theme.actual.js +28 -0
  40. package/deprecations/radio-props/test-cases/theme.expected.js +36 -0
  41. package/deprecations/switch-props/index.js +13 -0
  42. package/deprecations/switch-props/switch-props.js +33 -0
  43. package/deprecations/switch-props/test-cases/actual.js +45 -0
  44. package/deprecations/switch-props/test-cases/expected.js +61 -0
  45. package/deprecations/switch-props/test-cases/package.actual.js +34 -0
  46. package/deprecations/switch-props/test-cases/package.expected.js +50 -0
  47. package/deprecations/switch-props/test-cases/theme.actual.js +28 -0
  48. package/deprecations/switch-props/test-cases/theme.expected.js +36 -0
  49. package/deprecations/tabs-props/tabs-props.js +44 -0
  50. package/deprecations/tabs-props/test-cases/actual.js +11 -0
  51. package/deprecations/tabs-props/test-cases/expected.js +11 -0
  52. package/deprecations/tabs-props/test-cases/package.actual.js +6 -0
  53. package/deprecations/tabs-props/test-cases/package.expected.js +6 -0
  54. package/deprecations/tabs-props/test-cases/theme.actual.js +10 -0
  55. package/deprecations/tabs-props/test-cases/theme.expected.js +10 -0
  56. package/package.json +3 -3
  57. package/v9.0.0/system-props/index.js +13 -0
  58. package/v9.0.0/system-props/removeSystemProps.js +243 -0
  59. package/v9.0.0/system-props/test-cases/system-props.actual.js +144 -0
  60. package/v9.0.0/system-props/test-cases/system-props.expected.js +175 -0
package/README.md CHANGED
@@ -278,6 +278,11 @@ npx @mui/codemod@next deprecations/alert-props <path>
278
278
  - PopperComponent={CustomPopper}
279
279
  - ListboxComponent={CustomListbox}
280
280
  - ListboxProps={{ height: 12 }}
281
+ - renderTags={(value, getTagProps, ownerState) =>
282
+ - value.map((option, index) => (
283
+ - <Chip label={option.label} {...getTagProps({ index })} />
284
+ - ))
285
+ - }
281
286
  - componentsProps={{
282
287
  - clearIndicator: { width: 10 },
283
288
  - paper: { width: 12 },
@@ -299,6 +304,11 @@ npx @mui/codemod@next deprecations/alert-props <path>
299
304
  + popper: { width: 14 },
300
305
  + popupIndicator: { width: 16 },
301
306
  + }}
307
+ + renderValue={(value, getItemProps, ownerState) =>
308
+ + value.map((option, index) => (
309
+ + <Chip label={option.label} {...getItemProps({ index })} />
310
+ + ))
311
+ + }
302
312
  />
303
313
  ```
304
314
 
@@ -310,6 +320,10 @@ npx @mui/codemod@next deprecations/alert-props <path>
310
320
  - PopperComponent: CustomPopper,
311
321
  - ListboxComponent: CustomListbox,
312
322
  - ListboxProps: { height: 12 },
323
+ - renderTags: (value, getTagProps, ownerState) =>
324
+ - value.map((option, index) => (
325
+ - <Chip label={option.label} {...getTagProps({ index })} />
326
+ - )),
313
327
  - componentsProps: {
314
328
  - clearIndicator: { width: 10 },
315
329
  - paper: { width: 12 },
@@ -331,10 +345,52 @@ npx @mui/codemod@next deprecations/alert-props <path>
331
345
  + popper: { width: 14 },
332
346
  + popupIndicator: { width: 16 },
333
347
  + },
348
+ + renderValue: (value, getItemProps, ownerState) =>
349
+ + value.map((option, index) => (
350
+ + <Chip label={option.label} {...getItemProps({ index })} />
351
+ + )),
334
352
  },
335
353
  },
336
354
  ```
337
355
 
356
+ ```diff
357
+ <Autocomplete
358
+ renderInput={(params) => (
359
+ <TextField
360
+ {...params}
361
+ - InputProps={{
362
+ - ...params.InputProps,
363
+ - endAdornment: (
364
+ - <React.Fragment>
365
+ - {params.InputProps.endAdornment}
366
+ - </React.Fragment>
367
+ - ),
368
+ - }}
369
+ + slotProps={{
370
+ + ...params.slotProps,
371
+ + input: {
372
+ + ...params.slotProps.input,
373
+ + endAdornment: (
374
+ + <React.Fragment>
375
+ + {params.slotProps.input.endAdornment}
376
+ + </React.Fragment>
377
+ + ),
378
+ + },
379
+ + }}
380
+ />
381
+ )}
382
+ />
383
+ ```
384
+
385
+ ```diff
386
+ const {
387
+ - getTagProps,
388
+ - focusedTag,
389
+ + getItemProps,
390
+ + focusedItem,
391
+ } = useAutocomplete(props);
392
+ ```
393
+
338
394
  ```bash
339
395
  npx @mui/codemod@next deprecations/autocomplete-props <path>
340
396
  ```
@@ -814,6 +870,50 @@ CSS transforms:
814
870
  npx @mui/codemod@next deprecations/button-group-classes <path>
815
871
  ```
816
872
 
873
+ #### `card-header-props`
874
+
875
+ ```diff
876
+ <CardHeader
877
+ - titleTypographyProps={{ variant: 'h6' }}
878
+ - subheaderTypographyProps={{ variant: 'body2' }}
879
+ + slotProps={{
880
+ + title: { variant: 'h6' },
881
+ + subheader: { variant: 'body2' }
882
+ + }}
883
+ />
884
+ ```
885
+
886
+ ```diff
887
+ MuiCardHeader: {
888
+ defaultProps: {
889
+ - titleTypographyProps: { variant: 'h6' },
890
+ - subheaderTypographyProps: { variant: 'body2' },
891
+ + slotProps: {
892
+ + title: { variant: 'h6' },
893
+ + subheader: { variant: 'body2' },
894
+ + },
895
+ },
896
+ },
897
+ ```
898
+
899
+ ```bash
900
+ npx @mui/codemod@next deprecations/card-header-props <path>
901
+ ```
902
+
903
+ #### `checkbox-props`
904
+
905
+ ```diff
906
+ <Checkbox
907
+ - inputProps={{ 'aria-label': 'Checkbox' }}
908
+ - inputRef={ref}
909
+ + slotProps={{ input: { 'aria-label': 'Checkbox', ref } }}
910
+ />
911
+ ```
912
+
913
+ ```bash
914
+ npx @mui/codemod@next deprecations/checkbox-props <path>
915
+ ```
916
+
817
917
  #### `chip-classes`
818
918
 
819
919
  JS transforms:
@@ -1006,11 +1106,11 @@ JS transforms:
1006
1106
  styleOverrides: {
1007
1107
  root: {
1008
1108
  - [`& .${circularProgressClasses.circleDeterminate}`]: {
1009
- + [`&.${circularProgressClasses.determinate} > .${circularProgressClasses.circle}`]: {
1109
+ + [`&.${circularProgressClasses.determinate} .${circularProgressClasses.circle}`]: {
1010
1110
  color: 'red',
1011
1111
  },
1012
1112
  - [`& .${circularProgressClasses.circleIndeterminate}`]: {
1013
- + [`&.${circularProgressClasses.indeterminate} > .${circularProgressClasses.circle}`]: {
1113
+ + [`&.${circularProgressClasses.indeterminate} .${circularProgressClasses.circle}`]: {
1014
1114
  color: 'red',
1015
1115
  },
1016
1116
  },
@@ -1022,12 +1122,12 @@ CSS transforms:
1022
1122
 
1023
1123
  ```diff
1024
1124
  -.MuiCircularProgress-circleDeterminate
1025
- +.MuiCircularProgress-determinate > .MuiCircularProgress-circle
1125
+ +.MuiCircularProgress-determinate .MuiCircularProgress-circle
1026
1126
  ```
1027
1127
 
1028
1128
  ```diff
1029
1129
  -.MuiCircularProgress-circleIndeterminate
1030
- +.MuiCircularProgress-indeterminate > .MuiCircularProgress-circle
1130
+ +.MuiCircularProgress-indeterminate .MuiCircularProgress-circle
1031
1131
  ```
1032
1132
 
1033
1133
  ```bash
@@ -1177,6 +1277,46 @@ CSS transforms:
1177
1277
  npx @mui/codemod@next deprecations/drawer-classes <path>
1178
1278
  ```
1179
1279
 
1280
+ #### `drawer-props`
1281
+
1282
+ ```diff
1283
+ <Drawer
1284
+ - BackdropComponent={CustomBackdrop}
1285
+ - BackdropProps={{ transitionDuration: 300 }}
1286
+ - PaperProps={{ elevation: 20 }}
1287
+ - SlideProps={{ direction: 'right' }}
1288
+ + slots={{ backdrop: CustomBackdrop }}
1289
+ + slotProps={{
1290
+ + backdrop: { transitionDuration: 300 },
1291
+ + paper: { elevation: 20 },
1292
+ + transition: { direction: 'right' },
1293
+ + }}
1294
+ />
1295
+ ```
1296
+
1297
+ The same applies to `SwipeableDrawer`.
1298
+
1299
+ ```diff
1300
+ MuiDrawer: {
1301
+ defaultProps: {
1302
+ - BackdropComponent: CustomBackdrop,
1303
+ - BackdropProps: { transitionDuration: 300 },
1304
+ - PaperProps: { elevation: 20 },
1305
+ - SlideProps: { direction: 'right' },
1306
+ + slots: { backdrop: CustomBackdrop },
1307
+ + slotProps: {
1308
+ + backdrop: { transitionDuration: 300 },
1309
+ + paper: { elevation: 20 },
1310
+ + transition: { direction: 'right' },
1311
+ + },
1312
+ },
1313
+ },
1314
+ ```
1315
+
1316
+ ```bash
1317
+ npx @mui/codemod@next deprecations/drawer-props <path>
1318
+ ```
1319
+
1180
1320
  #### `filled-input-props`
1181
1321
 
1182
1322
  ```diff
@@ -1540,6 +1680,40 @@ npx @mui/codemod@next deprecations/modal-props <path>
1540
1680
  npx @mui/codemod@next deprecations/mobile-stepper-props <path>
1541
1681
  ```
1542
1682
 
1683
+ #### `menu-props`
1684
+
1685
+ ```diff
1686
+ <Menu
1687
+ - TransitionComponent={CustomTransition}
1688
+ - MenuListProps={{ disablePadding: true }}
1689
+ - TransitionProps={{ timeout: 200 }}
1690
+ + slots={{ transition: CustomTransition }}
1691
+ + slotProps={{
1692
+ + list: { disablePadding: true },
1693
+ + transition: { timeout: 200 },
1694
+ + }}
1695
+ />
1696
+ ```
1697
+
1698
+ ```diff
1699
+ MuiMenu: {
1700
+ defaultProps: {
1701
+ - TransitionComponent: CustomTransition,
1702
+ - MenuListProps: { disablePadding: true },
1703
+ - TransitionProps: { timeout: 200 },
1704
+ + slots: { transition: CustomTransition },
1705
+ + slotProps: {
1706
+ + list: { disablePadding: true },
1707
+ + transition: { timeout: 200 },
1708
+ + },
1709
+ },
1710
+ },
1711
+ ```
1712
+
1713
+ ```bash
1714
+ npx @mui/codemod@next deprecations/menu-props <path>
1715
+ ```
1716
+
1543
1717
  #### `pagination-item-classes`
1544
1718
 
1545
1719
  JS transforms:
@@ -1626,6 +1800,46 @@ npx @mui/codemod@next deprecations/pagination-item-classes <path>
1626
1800
  npx @mui/codemod@next deprecations/pagination-item-props <path>
1627
1801
  ```
1628
1802
 
1803
+ #### `popover-props`
1804
+
1805
+ ```diff
1806
+ <Popover
1807
+ - BackdropComponent={CustomBackdrop}
1808
+ - BackdropProps={{ timeout: 200 }}
1809
+ - PaperProps={{ elevation: 4 }}
1810
+ - TransitionComponent={CustomTransition}
1811
+ - TransitionProps={{ timeout: 200 }}
1812
+ + slots={{ backdrop: CustomBackdrop, transition: CustomTransition }}
1813
+ + slotProps={{
1814
+ + backdrop: { timeout: 200 },
1815
+ + paper: { elevation: 4 },
1816
+ + transition: { timeout: 200 },
1817
+ + }}
1818
+ />
1819
+ ```
1820
+
1821
+ ```diff
1822
+ MuiPopover: {
1823
+ defaultProps: {
1824
+ - BackdropComponent: 'div',
1825
+ - BackdropProps: { timeout: 200 },
1826
+ - PaperProps: { elevation: 8 },
1827
+ - TransitionComponent: 'em',
1828
+ - TransitionProps: { timeout: 200 },
1829
+ + slots: { backdrop: 'div', transition: 'em' },
1830
+ + slotProps: {
1831
+ + backdrop: { timeout: 200 },
1832
+ + paper: { elevation: 8 },
1833
+ + transition: { timeout: 200 },
1834
+ + },
1835
+ },
1836
+ },
1837
+ ```
1838
+
1839
+ ```bash
1840
+ npx @mui/codemod@next deprecations/popover-props <path>
1841
+ ```
1842
+
1629
1843
  #### `popper-props`
1630
1844
 
1631
1845
  ```diff
@@ -1695,6 +1909,20 @@ npx @mui/codemod@next deprecations/outlined-input-props <path>
1695
1909
  npx @mui/codemod@next deprecations/rating-props <path>
1696
1910
  ```
1697
1911
 
1912
+ #### `radio-props`
1913
+
1914
+ ```diff
1915
+ <Radio
1916
+ - inputProps={{ 'aria-label': 'Radio' }}
1917
+ - inputRef={ref}
1918
+ + slotProps={{ input: { 'aria-label': 'Radio', ref } }}
1919
+ />
1920
+ ```
1921
+
1922
+ ```bash
1923
+ npx @mui/codemod@next deprecations/radio-props <path>
1924
+ ```
1925
+
1698
1926
  #### `select-classes`
1699
1927
 
1700
1928
  JS transforms:
@@ -1792,6 +2020,78 @@ npx @mui/codemod@next deprecations/slider-props <path>
1792
2020
  npx @mui/codemod@next deprecations/snackbar-props <path>
1793
2021
  ```
1794
2022
 
2023
+ #### `speed-dial-props`
2024
+
2025
+ ```diff
2026
+ <SpeedDial
2027
+ - TransitionComponent={CustomTransition}
2028
+ - TransitionProps={CustomTransitionProps}
2029
+ + slots={{ transition: CustomTransition }}
2030
+ + slotProps={{ transition: CustomTransitionProps }}
2031
+ />
2032
+ ```
2033
+
2034
+ ```diff
2035
+ MuiSpeedDial: {
2036
+ defaultProps: {
2037
+ - TransitionComponent: CustomTransition,
2038
+ - TransitionProps: CustomTransitionProps,
2039
+ + slots: { transition: CustomTransition },
2040
+ + slotProps: { transition: CustomTransitionProps },
2041
+ },
2042
+ },
2043
+ ```
2044
+
2045
+ ```bash
2046
+ npx @mui/codemod@next deprecations/speed-dial-props <path>
2047
+ ```
2048
+
2049
+ #### `speed-dial-action-props`
2050
+
2051
+ ```diff
2052
+ <SpeedDialAction
2053
+ - FabProps={FabProps}
2054
+ - TooltipClasses={TooltipClasses}
2055
+ - tooltipOpen={true}
2056
+ - tooltipPlacement="top"
2057
+ - tooltipTitle="test"
2058
+ + slotProps={{
2059
+ + fab: FabProps,
2060
+ + tooltip: {
2061
+ + classes: TooltipClasses,
2062
+ + open: true,
2063
+ + placement: 'top',
2064
+ + title: 'test',
2065
+ + },
2066
+ + }}
2067
+ />
2068
+ ```
2069
+
2070
+ ```diff
2071
+ MuiSpeedDialAction: {
2072
+ defaultProps: {
2073
+ - FabProps: { id: 'test' },
2074
+ - TooltipClasses: classes,
2075
+ - tooltipOpen: true,
2076
+ - tooltipPlacement: 'top',
2077
+ - tooltipTitle: 'test',
2078
+ + slotProps: {
2079
+ + fab: { id: 'test' },
2080
+ + tooltip: {
2081
+ + classes: classes,
2082
+ + open: true,
2083
+ + placement: 'top',
2084
+ + title: 'test',
2085
+ + },
2086
+ + },
2087
+ },
2088
+ },
2089
+ ```
2090
+
2091
+ ```bash
2092
+ npx @mui/codemod@next deprecations/speed-dial-action-props <path>
2093
+ ```
2094
+
1795
2095
  #### `slider-classes`
1796
2096
 
1797
2097
  JS transforms:
@@ -1864,23 +2164,68 @@ CSS transforms:
1864
2164
  npx @mui/codemod@next deprecations/slider-classes <path>
1865
2165
  ```
1866
2166
 
2167
+ #### `tabs-props`
2168
+
2169
+ ```diff
2170
+ <Tabs
2171
+ - ScrollButtonComponent={CustomScrollButton}
2172
+ - TabIndicatorProps={{ className: 'indicator' }}
2173
+ - TabScrollButtonProps={{ disableRipple: true }}
2174
+ + slots={{ scrollButtons: CustomScrollButton }}
2175
+ + slotProps={{
2176
+ + indicator: { className: 'indicator' },
2177
+ + scrollButtons: { disableRipple: true },
2178
+ + }}
2179
+ />
2180
+ ```
2181
+
2182
+ ```diff
2183
+ <Tabs
2184
+ - slots={{ StartScrollButtonIcon: CustomIcon, EndScrollButtonIcon: CustomIcon2 }}
2185
+ + slots={{ startScrollButtonIcon: CustomIcon, endScrollButtonIcon: CustomIcon2 }}
2186
+ />
2187
+ ```
2188
+
2189
+ ```diff
2190
+ MuiTabs: {
2191
+ defaultProps: {
2192
+ - ScrollButtonComponent: CustomScrollButton,
2193
+ - TabScrollButtonProps: { disableRipple: true },
2194
+ - TabIndicatorProps: { className: 'indicator' },
2195
+ + slots: {
2196
+ + scrollButtons: CustomScrollButton,
2197
+ + },
2198
+ + slotProps: {
2199
+ + scrollButtons: { disableRipple: true },
2200
+ + indicator: { className: 'indicator' },
2201
+ + },
2202
+ },
2203
+ },
2204
+ ```
2205
+
2206
+ ```bash
2207
+ npx @mui/codemod@next deprecations/tabs-props <path>
2208
+ ```
2209
+
1867
2210
  #### `tooltip-props`
1868
2211
 
1869
2212
  ```diff
1870
2213
  <Tooltip
1871
- - components={{ Arrow: CustomArrow }}
1872
- - componentsProps={{ arrow: { testid: 'test-id' } }}
2214
+ - components={{ Arrow: CustomArrow, Tooltip: CustomTooltip }}
2215
+ - componentsProps={{ arrow: { testid: 'test-id' }, tooltip: { className: 'custom' } }}
1873
2216
  - PopperComponent={CustomPopperComponent}
1874
2217
  - TransitionComponent={CustomTransitionComponent}
1875
2218
  - PopperProps={CustomPopperProps}
1876
2219
  - TransitionProps={CustomTransitionProps}
1877
2220
  + slots={{
1878
2221
  + arrow: CustomArrow,
2222
+ + tooltip: CustomTooltip,
1879
2223
  + popper: CustomPopperComponent,
1880
2224
  + transition: CustomTransitionComponent,
1881
2225
  + }}
1882
2226
  + slotProps={{
1883
2227
  + arrow: { testid: 'test-id' },
2228
+ + tooltip: { className: 'custom' },
1884
2229
  + popper: CustomPopperProps,
1885
2230
  + transition: CustomTransitionProps,
1886
2231
  + }}
@@ -1894,15 +2239,17 @@ npx @mui/codemod@next deprecations/slider-classes <path>
1894
2239
  - TransitionComponent: CustomTransitionComponent,
1895
2240
  - PopperProps: CustomPopperProps,
1896
2241
  - TransitionProps: CustomTransitionProps,
1897
- - components: { Arrow: CustomArrow }
2242
+ - components: { Arrow: CustomArrow, Tooltip: CustomTooltip }
1898
2243
  + slots: {
1899
2244
  + arrow: CustomArrow,
2245
+ + tooltip: CustomTooltip,
1900
2246
  + popper: CustomPopperComponent,
1901
2247
  + transition: CustomTransitionComponent,
1902
2248
  + },
1903
- - componentsProps: { arrow: { testid: 'test-id' }}
2249
+ - componentsProps: { arrow: { testid: 'test-id' }, tooltip: { className: 'custom' } }
1904
2250
  + slotProps: {
1905
2251
  + arrow: { testid: 'test-id' },
2252
+ + tooltip: { className: 'custom' },
1906
2253
  + popper: CustomPopperProps,
1907
2254
  + transition: CustomTransitionProps,
1908
2255
  + },
@@ -2000,6 +2347,20 @@ npx @mui/codemod@next deprecations/step-content-props <path>
2000
2347
  npx @mui/codemod@next deprecations/step-label-props <path>
2001
2348
  ```
2002
2349
 
2350
+ #### `switch-props`
2351
+
2352
+ ```diff
2353
+ <Switch
2354
+ - inputProps={{ 'aria-label': 'Switch' }}
2355
+ - inputRef={ref}
2356
+ + slotProps={{ input: { 'aria-label': 'Switch', ref } }}
2357
+ />
2358
+ ```
2359
+
2360
+ ```bash
2361
+ npx @mui/codemod@next deprecations/switch-props <path>
2362
+ ```
2363
+
2003
2364
  #### `text-field-props`
2004
2365
 
2005
2366
  ```diff
@@ -2160,6 +2521,30 @@ npx @mui/codemod@next deprecations/table-sort-label-classes <path>
2160
2521
  npx @mui/codemod@next deprecations/typography-props <path>
2161
2522
  ```
2162
2523
 
2524
+ ### v9.0.0
2525
+
2526
+ #### `system-props`
2527
+
2528
+ ```bash
2529
+ npx @mui/codemod@next v9.0.0/system-props <path>
2530
+ ```
2531
+
2532
+ Remove system props from Box, Stack, Typography, Link, Grid, DialogContentText, TimelineContent, and TimelineOppositeContent components and move them to the `sx` prop.
2533
+
2534
+ Compared to the v6 codemod, the v9 version also handles:
2535
+
2536
+ - `color="inherit"` on Typography (moved to `sx`)
2537
+ - `color="text.secondary"` on Link (moved to `sx`, while keeping named colors like `"primary"` and `"inherit"` as component props)
2538
+ - DialogContentText, TimelineContent, and TimelineOppositeContent components
2539
+
2540
+ ```diff
2541
+ -<Typography color="inherit" />
2542
+ +<Typography sx={{ color: "inherit" }} />
2543
+
2544
+ -<Link color="text.secondary" href="#" />
2545
+ +<Link href="#" sx={{ color: "text.secondary" }} />
2546
+ ```
2547
+
2163
2548
  ### v7.0.0
2164
2549
 
2165
2550
  #### `theme-color-functions`
@@ -13,6 +13,7 @@ var _avatarGroupProps = _interopRequireDefault(require("../avatar-group-props"))
13
13
  var _autocompleteProps = _interopRequireDefault(require("../autocomplete-props"));
14
14
  var _avatarProps = _interopRequireDefault(require("../avatar-props"));
15
15
  var _backdropProps = _interopRequireDefault(require("../backdrop-props"));
16
+ var _checkboxProps = _interopRequireDefault(require("../checkbox-props"));
16
17
  var _buttonClasses = _interopRequireDefault(require("../button-classes"));
17
18
  var _buttonGroupClasses = _interopRequireDefault(require("../button-group-classes"));
18
19
  var _chipClasses = _interopRequireDefault(require("../chip-classes"));
@@ -32,12 +33,14 @@ var _linearProgressClasses = _interopRequireDefault(require("../linear-progress-
32
33
  var _modalProps = _interopRequireDefault(require("../modal-props"));
33
34
  var _outlinedInputProps = _interopRequireDefault(require("../outlined-input-props"));
34
35
  var _paginationItemProps = _interopRequireDefault(require("../pagination-item-props"));
36
+ var _radioProps = _interopRequireDefault(require("../radio-props"));
35
37
  var _paginationItemClasses = _interopRequireDefault(require("../pagination-item-classes"));
36
38
  var _popperProps = _interopRequireDefault(require("../popper-props"));
37
39
  var _speedDialProps = _interopRequireDefault(require("../speed-dial-props"));
38
40
  var _tableSortLabelClasses = _interopRequireDefault(require("../table-sort-label-classes"));
39
41
  var _selectClasses = _interopRequireDefault(require("../select-classes"));
40
42
  var _stepConnectorClasses = _interopRequireDefault(require("../step-connector-classes"));
43
+ var _switchProps = _interopRequireDefault(require("../switch-props"));
41
44
  var _stepContentProps = _interopRequireDefault(require("../step-content-props"));
42
45
  var _stepLabelProps = _interopRequireDefault(require("../step-label-props"));
43
46
  var _textFieldProps = _interopRequireDefault(require("../text-field-props"));
@@ -70,6 +73,7 @@ function deprecationsAll(file, api, options) {
70
73
  file.source = (0, _autocompleteProps.default)(file, api, options);
71
74
  file.source = (0, _avatarProps.default)(file, api, options);
72
75
  file.source = (0, _backdropProps.default)(file, api, options);
76
+ file.source = (0, _checkboxProps.default)(file, api, options);
73
77
  file.source = (0, _buttonClasses.default)(file, api, options);
74
78
  file.source = (0, _buttonGroupClasses.default)(file, api, options);
75
79
  file.source = (0, _chipClasses.default)(file, api, options);
@@ -90,8 +94,10 @@ function deprecationsAll(file, api, options) {
90
94
  file.source = (0, _outlinedInputProps.default)(file, api, options);
91
95
  file.source = (0, _paginationItemClasses.default)(file, api, options);
92
96
  file.source = (0, _paginationItemProps.default)(file, api, options);
97
+ file.source = (0, _radioProps.default)(file, api, options);
93
98
  file.source = (0, _popperProps.default)(file, api, options);
94
99
  file.source = (0, _speedDialProps.default)(file, api, options);
100
+ file.source = (0, _switchProps.default)(file, api, options);
95
101
  file.source = (0, _stepConnectorClasses.default)(file, api, options);
96
102
  file.source = (0, _stepContentProps.default)(file, api, options);
97
103
  file.source = (0, _stepLabelProps.default)(file, api, options);