@mui/codemod 5.15.10 → 5.15.12

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 (49) hide show
  1. package/README.md +670 -7
  2. package/codemod.js +80 -7
  3. package/node/deprecations/accordion-summary-classes/accordion-summary-classes.js +55 -0
  4. package/node/deprecations/accordion-summary-classes/index.js +13 -0
  5. package/node/deprecations/accordion-summary-classes/postcss-plugin.js +28 -0
  6. package/node/deprecations/accordion-summary-classes/postcss.config.js +8 -0
  7. package/node/deprecations/accordion-summary-classes/test-cases/actual.js +54 -0
  8. package/node/deprecations/accordion-summary-classes/test-cases/expected.js +54 -0
  9. package/node/deprecations/alert-classes/alert-classes.js +58 -0
  10. package/node/deprecations/alert-classes/index.js +13 -0
  11. package/node/deprecations/alert-classes/postcss-plugin.js +38 -0
  12. package/node/deprecations/alert-classes/postcss.config.js +8 -0
  13. package/node/deprecations/alert-classes/test-cases/actual.js +27 -0
  14. package/node/deprecations/alert-classes/test-cases/expected.js +27 -0
  15. package/node/deprecations/alert-props/alert-props.js +22 -0
  16. package/node/deprecations/alert-props/index.js +13 -0
  17. package/node/deprecations/alert-props/test-cases/actual.js +43 -0
  18. package/node/deprecations/alert-props/test-cases/expected.js +33 -0
  19. package/node/deprecations/alert-props/test-cases/theme.actual.js +52 -0
  20. package/node/deprecations/alert-props/test-cases/theme.expected.js +42 -0
  21. package/node/deprecations/all/deprecations-all.js +10 -0
  22. package/node/deprecations/all/postcss.config.js +20 -0
  23. package/node/deprecations/button-classes/button-classes.js +69 -0
  24. package/node/deprecations/button-classes/index.js +13 -0
  25. package/node/deprecations/button-classes/postcss-plugin.js +126 -0
  26. package/node/deprecations/button-classes/postcss.config.js +8 -0
  27. package/node/deprecations/button-classes/test-cases/actual.js +69 -0
  28. package/node/deprecations/button-classes/test-cases/expected.js +69 -0
  29. package/node/deprecations/chip-classes/chip-classes.js +77 -0
  30. package/node/deprecations/chip-classes/index.js +13 -0
  31. package/node/deprecations/chip-classes/postcss-plugin.js +105 -0
  32. package/node/deprecations/chip-classes/postcss.config.js +8 -0
  33. package/node/deprecations/chip-classes/test-cases/actual.js +55 -0
  34. package/node/deprecations/chip-classes/test-cases/expected.js +55 -0
  35. package/node/deprecations/pagination-item-classes/index.js +13 -0
  36. package/node/deprecations/pagination-item-classes/pagination-item-classes.js +58 -0
  37. package/node/deprecations/pagination-item-classes/postcss-plugin.js +39 -0
  38. package/node/deprecations/pagination-item-classes/postcss.config.js +8 -0
  39. package/node/deprecations/pagination-item-classes/test-cases/actual.js +108 -0
  40. package/node/deprecations/pagination-item-classes/test-cases/expected.js +108 -0
  41. package/node/deprecations/slider-props/index.js +13 -0
  42. package/node/deprecations/slider-props/slider-props.js +22 -0
  43. package/node/deprecations/slider-props/test-cases/actual.js +43 -0
  44. package/node/deprecations/slider-props/test-cases/expected.js +33 -0
  45. package/node/deprecations/slider-props/test-cases/theme.actual.js +52 -0
  46. package/node/deprecations/slider-props/test-cases/theme.expected.js +42 -0
  47. package/node/deprecations/utils/replaceComponentsWithSlots.js +184 -0
  48. package/node/util/findComponentDefaultProps.js +30 -0
  49. package/package.json +4 -2
package/README.md CHANGED
@@ -1,12 +1,13 @@
1
1
  # @mui/codemod
2
2
 
3
- > Codemod scripts for Material UI, Base UI, MUI System, Joy UI.
3
+ > Codemod scripts for Material UI, Base UI, MUI System, Joy UI.
4
4
 
5
5
  [![npm version](https://img.shields.io/npm/v/@mui/codemod.svg?style=flat-square)](https://www.npmjs.com/package/@mui/codemod)
6
6
  [![npm downloads](https://img.shields.io/npm/dm/@mui/codemod.svg?style=flat-square)](https://www.npmjs.com/package/@mui/codemod)
7
7
 
8
8
  This repository contains a collection of codemod scripts based for use with
9
9
  [jscodeshift](https://github.com/facebook/jscodeshift) that help update the APIs.
10
+ Some of the codemods also run [postcss](https://github.com/postcss/postcss) plugins to update CSS files.
10
11
 
11
12
  ## Setup & run
12
13
 
@@ -91,6 +92,172 @@ A combination of all deprecations.
91
92
  npx @mui/codemod@latest deprecations/accordion-props <path>
92
93
  ```
93
94
 
95
+ #### `accordion-summary-classes`
96
+
97
+ JS transforms:
98
+
99
+ ```diff
100
+ import { accordionSummaryClasses } from '@mui/material/AccordionSummary';
101
+
102
+ MuiAccordionSummary: {
103
+ styleOverrides: {
104
+ root: {
105
+ - [`& .${accordionSummaryClasses.contentGutters}`]: {
106
+ + [`&.${accordionSummaryClasses.gutters} .${accordionSummaryClasses.content}`]: {
107
+ color: 'red',
108
+ },
109
+ },
110
+ },
111
+ },
112
+ ```
113
+
114
+ ```diff
115
+ MuiAccordionSummary: {
116
+ styleOverrides: {
117
+ root: {
118
+ - '& .MuiAccordionSummary-contentGutters': {
119
+ + '&.MuiAccordionSummary-gutters .MuiAccordionSummary-content': {
120
+ color: 'red',
121
+ },
122
+ },
123
+ },
124
+ },
125
+ ```
126
+
127
+ CSS transforms:
128
+
129
+ ```diff
130
+ -.MuiAccordionSummary-root .MuiAccordionSummary-contentGutters
131
+ +.MuiAccordionSummary-root.MuiAccordionSummary-gutters .MuiAccordionSummary-content
132
+ />
133
+ ```
134
+
135
+ ```bash
136
+ npx @mui/codemod@latest deprecations/accordion-summary-classes <path>
137
+ ```
138
+
139
+ #### `alert-classes`
140
+
141
+ JS transforms:
142
+
143
+ ```diff
144
+ import { alertClasses } from '@mui/material/PaginationItem';
145
+
146
+ MuiPaginationItem: {
147
+ styleOverrides: {
148
+ root: {
149
+ - [`&.${alertClasses.standardSuccess}`]: {
150
+ + [`&.${alertClasses.standard}.${alertClasses.colorSuccess}`]: {
151
+ color: 'red',
152
+ },
153
+ - [`&.${alertClasses.standardInfo}`]: {
154
+ + [`&.${alertClasses.standard}.${alertClasses.colorInfo}`]: {
155
+ color: 'red',
156
+ },
157
+ - [`&.${alertClasses.standardWarning}`]: {
158
+ + [`&.${alertClasses.standard}.${alertClasses.colorWarning}`]: {
159
+ color: 'red',
160
+ },
161
+ - [`&.${alertClasses.standardError}`]: {
162
+ + [`&.${alertClasses.standard}.${alertClasses.colorError}`]: {
163
+ color: 'red',
164
+ },
165
+ - [`&.${alertClasses.outlinedSuccess}`]: {
166
+ + [`&.${alertClasses.outlined}.${alertClasses.colorSuccess}`]: {
167
+ color: 'red',
168
+ },
169
+ - [`&.${alertClasses.outlinedInfo}`]: {
170
+ + [`&.${alertClasses.outlined}.${alertClasses.colorInfo}`]: {
171
+ color: 'red',
172
+ },
173
+ - [`&.${alertClasses.outlinedWarning}`]: {
174
+ + [`&.${alertClasses.outlined}.${alertClasses.colorWarning}`]: {
175
+ color: 'red',
176
+ },
177
+ - [`&.${alertClasses.outlinedError}`]: {
178
+ + [`&.${alertClasses.outlined}.${alertClasses.colorError}`]: {
179
+ color: 'red',
180
+ },
181
+ - [`&.${alertClasses.filledSuccess}`]: {
182
+ + [`&.${alertClasses.filled}.${alertClasses.colorSuccess}`]: {
183
+ color: 'red',
184
+ },
185
+ - [`&.${alertClasses.filledInfo}`]: {
186
+ + [`&.${alertClasses.filled}.${alertClasses.colorInfo}`]: {
187
+ color: 'red',
188
+ },
189
+ - [`&.${alertClasses.filledWarning}`]: {
190
+ + [`&.${alertClasses.filled}.${alertClasses.colorWarning}`]: {
191
+ color: 'red',
192
+ },
193
+ - [`&.${alertClasses.filledError}`]: {
194
+ + [`&.${alertClasses.filled}.${alertClasses.colorError}`]: {
195
+ color: 'red',
196
+ },
197
+ },
198
+ },
199
+ },
200
+ ```
201
+
202
+ CSS transforms:
203
+
204
+ ```diff
205
+ -.MuiAlert-standardSuccess
206
+ +.MuiAlert-standard.MuiAlert-colorSuccess
207
+ -.MuiAlert-standardInfo
208
+ +.MuiAlert-standard.MuiAlert-colorInfo
209
+ -.MuiAlert-standardWarning
210
+ +.MuiAlert-standard.MuiAlert-colorWarning
211
+ -.MuiAlert-standardError
212
+ +.MuiAlert-standard.MuiAlert-colorError
213
+ -.MuiAlert-outlinedSuccess
214
+ +.MuiAlert-outlined.MuiAlert-colorSuccess
215
+ -.MuiAlert-outlinedInfo
216
+ +.MuiAlert-outlined.MuiAlert-colorInfo
217
+ -.MuiAlert-outlinedWarning
218
+ +.MuiAlert-outlined.MuiAlert-colorWarning
219
+ -.MuiAlert-outlinedError
220
+ +.MuiAlert-outlined.MuiAlert-colorError
221
+ -.MuiAlert-filledSuccess
222
+ +.MuiAlert-filled.MuiAlert-colorSuccess
223
+ -.MuiAlert-filledInfo
224
+ +.MuiAlert-filled.MuiAlert-colorInfo
225
+ -.MuiAlert-filledWarning
226
+ +.MuiAlert-filled.MuiAlert-colorWarning
227
+ -.MuiAlert-filledError
228
+ +.MuiAlert-filled.MuiAlert-colorError
229
+ ```
230
+
231
+ ```bash
232
+ npx @mui/codemod@latest deprecations/alert-classes <path>
233
+ ```
234
+
235
+ #### `alert-props`
236
+
237
+ ```diff
238
+ <Alert
239
+ - components={{ CloseButton: CustomButton }}
240
+ + slots={{ closeButton: CustomButton }}
241
+ - componentsProps={{ closeButton: { testid: 'test-id' } }}
242
+ + slotProps={{ closeButton: { testid: 'test-id' } }}
243
+ />
244
+ ```
245
+
246
+ ```diff
247
+ MuiAlert: {
248
+ defaultProps: {
249
+ - components: { CloseButton: CustomButton }
250
+ + slots: { closeButton: CustomButton },
251
+ - componentsProps: { closeButton: { testid: 'test-id' }}
252
+ + slotProps: { closeButton: { testid: 'test-id' } },
253
+ },
254
+ },
255
+ ```
256
+
257
+ ```bash
258
+ npx @mui/codemod@latest deprecations/alert-props <path>
259
+ ```
260
+
94
261
  #### `avatar-props`
95
262
 
96
263
  ```diff
@@ -107,6 +274,411 @@ npx @mui/codemod@latest deprecations/accordion-props <path>
107
274
  />;
108
275
  ```
109
276
 
277
+ #### `button-classes`
278
+
279
+ JS transforms:
280
+
281
+ ```diff
282
+ import { buttonClasses } from '@mui/material/Button';
283
+
284
+ MuiButton: {
285
+ styleOverrides: {
286
+ root: {
287
+ - [`&.${buttonClasses.textInherit}`]: {
288
+ + [`&.${buttonClasses.text}.${buttonClasses.colorInherit}`]: {
289
+ color: 'red',
290
+ },
291
+ - [`&.${buttonClasses.textPrimary}`]: {
292
+ + [`&.${buttonClasses.text}.${buttonClasses.colorPrimary}`]: {
293
+ color: 'red',
294
+ },
295
+ - [`&.${buttonClasses.textSecondary}`]: {
296
+ + [`&.${buttonClasses.text}.${buttonClasses.colorSecondary}`]: {
297
+ color: 'red',
298
+ },
299
+ - [`&.${buttonClasses.textSuccess}`]: {
300
+ + [`&.${buttonClasses.text}.${buttonClasses.colorSuccess}`]: {
301
+ color: 'red',
302
+ },
303
+ - [`&.${buttonClasses.textError}`]: {
304
+ + [`&.${buttonClasses.text}.${buttonClasses.colorError}`]: {
305
+ color: 'red',
306
+ },
307
+ - [`&.${buttonClasses.textInfo}`]: {
308
+ + [`&.${buttonClasses.text}.${buttonClasses.colorInfo}`]: {
309
+ color: 'red',
310
+ },
311
+ - [`&.${buttonClasses.textWarning}`]: {
312
+ + [`&.${buttonClasses.text}.${buttonClasses.colorWarning}`]: {
313
+ color: 'red',
314
+ },
315
+ - [`&.${buttonClasses.outlinedInherit}`]: {
316
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorInherit}`]: {
317
+ color: 'red',
318
+ },
319
+ - [`&.${buttonClasses.outlinedPrimary}`]: {
320
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorPrimary}`]: {
321
+ color: 'red',
322
+ },
323
+ - [`&.${buttonClasses.outlinedSecondary}`]: {
324
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorSecondary}`]: {
325
+ color: 'red',
326
+ },
327
+ - [`&.${buttonClasses.outlinedSuccess}`]: {
328
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorSuccess}`]: {
329
+ color: 'red',
330
+ },
331
+ - [`&.${buttonClasses.outlinedError}`]: {
332
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorError}`]: {
333
+ color: 'red',
334
+ },
335
+ - [`&.${buttonClasses.outlinedInfo}`]: {
336
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorInfo}`]: {
337
+ color: 'red',
338
+ },
339
+ - [`&.${buttonClasses.outlinedWarning}`]: {
340
+ + [`&.${buttonClasses.outlined}.${buttonClasses.colorWarning}`]: {
341
+ color: 'red',
342
+ },
343
+ - [`&.${buttonClasses.containedInherit}`]: {
344
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorInherit}`]: {
345
+ color: 'red',
346
+ },
347
+ - [`&.${buttonClasses.containedPrimary}`]: {
348
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorPrimary}`]: {
349
+ color: 'red',
350
+ },
351
+ - [`&.${buttonClasses.containedSecondary}`]: {
352
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorSecondary}`]: {
353
+ color: 'red',
354
+ },
355
+ - [`&.${buttonClasses.containedSuccess}`]: {
356
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorSuccess}`]: {
357
+ color: 'red',
358
+ },
359
+ - [`&.${buttonClasses.containedError}`]: {
360
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorError}`]: {
361
+ color: 'red',
362
+ },
363
+ - [`&.${buttonClasses.containedInfo}`]: {
364
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorInfo}`]: {
365
+ color: 'red',
366
+ },
367
+ - [`&.${buttonClasses.containedWarning}`]: {
368
+ + [`&.${buttonClasses.contained}.${buttonClasses.colorWarning}`]: {
369
+ color: 'red',
370
+ },
371
+ - [`&.${buttonClasses.containedSizeSmall}`]: {
372
+ + [`&.${buttonClasses.contained}.${buttonClasses.sizeSmall}`]: {
373
+ color: 'red',
374
+ },
375
+ - [`&.${buttonClasses.containedSizeMedium}`]: {
376
+ + [`&.${buttonClasses.contained}.${buttonClasses.sizeMedium}`]: {
377
+ color: 'red',
378
+ },
379
+ - [`&.${buttonClasses.containedSizeLarge}`]: {
380
+ + [`&.${buttonClasses.contained}.${buttonClasses.sizeLarge}`]: {
381
+ color: 'red',
382
+ },
383
+ - [`&.${buttonClasses.textSizeSmall}`]: {
384
+ + [`&.${buttonClasses.text}.${buttonClasses.sizeSmall}`]: {
385
+ color: 'red',
386
+ },
387
+ - [`&.${buttonClasses.textSizeMedium}`]: {
388
+ + [`&.${buttonClasses.text}.${buttonClasses.sizeMedium}`]: {
389
+ color: 'red',
390
+ },
391
+ - [`&.${buttonClasses.textSizeLarge}`]: {
392
+ + [`&.${buttonClasses.text}.${buttonClasses.sizeLarge}`]: {
393
+ color: 'red',
394
+ },
395
+ - [`&.${buttonClasses.outlinedSizeSmall}`]: {
396
+ + [`&.${buttonClasses.outlined}.${buttonClasses.sizeSmall}`]: {
397
+ color: 'red',
398
+ },
399
+ - [`&.${buttonClasses.outlinedSizeMedium}`]: {
400
+ + [`&.${buttonClasses.outlined}.${buttonClasses.sizeMedium}`]: {
401
+ color: 'red',
402
+ },
403
+ - [`&.${buttonClasses.outlinedSizeLarge}`]: {
404
+ + [`&.${buttonClasses.outlined}.${buttonClasses.sizeLarge}`]: {
405
+ color: 'red',
406
+ },
407
+ - [`& .${buttonClasses.iconSizeSmall}`]: {
408
+ + [`&.${buttonClasses.sizeSmall} > .${buttonClasses.icon}`]: {
409
+ color: 'red',
410
+ },
411
+ - [`& .${buttonClasses.iconSizeMedium}`]: {
412
+ + [`&.${buttonClasses.sizeMedium} > .${buttonClasses.icon}`]: {
413
+ color: 'red',
414
+ },
415
+ - [`& .${buttonClasses.iconSizeLarge}`]: {
416
+ + [`&.${buttonClasses.sizeLarge} > .${buttonClasses.icon}`]: {
417
+ color: 'red',
418
+ },
419
+ },
420
+ },
421
+ },
422
+ ```
423
+
424
+ CSS transforms:
425
+
426
+ ```diff
427
+ -.MuiButton-textInherit
428
+ +.MuiButton-text.MuiButton-colorInherit
429
+ -.MuiButton-textPrimary
430
+ +.MuiButton-text.MuiButton-colorPrimary
431
+ -.MuiButton-textSecondary
432
+ +.MuiButton-text.MuiButton-colorSecondary
433
+ -.MuiButton-textSuccess
434
+ +.MuiButton-text.MuiButton-colorSuccess
435
+ -.MuiButton-textError
436
+ +.MuiButton-text.MuiButton-colorError
437
+ -.MuiButton-textInfo
438
+ +.MuiButton-text.MuiButton-colorInfo
439
+ -.MuiButton-textWarning
440
+ +.MuiButton-text.MuiButton-colorWarning
441
+ -.MuiButton-outlinedInherit
442
+ +.MuiButton-outlined.MuiButton-colorInherit
443
+ -.MuiButton-outlinedPrimary
444
+ +.MuiButton-outlined.MuiButton-colorPrimary
445
+ -.MuiButton-outlinedSecondary
446
+ +.MuiButton-outlined.MuiButton-colorSecondary
447
+ -.MuiButton-outlinedSuccess
448
+ +.MuiButton-outlined.MuiButton-colorSuccess
449
+ -.MuiButton-outlinedError
450
+ +.MuiButton-outlined.MuiButton-colorError
451
+ -.MuiButton-outlinedInfo
452
+ +.MuiButton-outlined.MuiButton-colorInfo
453
+ -.MuiButton-outlinedWarning
454
+ +.MuiButton-outlined.MuiButton-colorWarning
455
+ -.MuiButton-containedInherit
456
+ +.MuiButton-contained.MuiButton-colorInherit
457
+ -.MuiButton-containedPrimary
458
+ +.MuiButton-contained.MuiButton-colorPrimary
459
+ -.MuiButton-containedSecondary
460
+ +.MuiButton-contained.MuiButton-colorSecondary
461
+ -.MuiButton-containedSuccess
462
+ +.MuiButton-contained.MuiButton-colorSuccess
463
+ -.MuiButton-containedError
464
+ +.MuiButton-contained.MuiButton-colorError
465
+ -.MuiButton-containedInfo
466
+ +.MuiButton-contained.MuiButton-colorInfo
467
+ -.MuiButton-containedWarning
468
+ +.MuiButton-contained.MuiButton-colorWarning
469
+ -.MuiButton-textSizeSmall
470
+ +.MuiButton-text.MuiButton-sizeSmall
471
+ -.MuiButton-textSizeMedium
472
+ +.MuiButton-text.MuiButton-sizeMedium
473
+ -.MuiButton-textSizeLarge
474
+ +.MuiButton-text.MuiButton-sizeLarge
475
+ -.MuiButton-outlinedSizeSmall
476
+ +.MuiButton-outlined.MuiButton-sizeSmall
477
+ -.MuiButton-outlinedSizeMedium
478
+ +.MuiButton-outlined.MuiButton-sizeMedium
479
+ -.MuiButton-outlinedSizeLarge
480
+ +.MuiButton-outlined.MuiButton-sizeLarge
481
+ -.MuiButton-containedSizeSmall
482
+ +.MuiButton-contained.MuiButton-sizeSmall
483
+ -.MuiButton-containedSizeMedium
484
+ +.MuiButton-contained.MuiButton-sizeMedium
485
+ -.MuiButton-containedSizeLarge
486
+ +.MuiButton-contained.MuiButton-sizeLarge
487
+ -.MuiButton-root .MuiButton-iconSizeSmall
488
+ +.MuiButton-root.MuiButton-sizeSmall > .MuiButton-icon
489
+ -.MuiButton-root .MuiButton-iconSizeMedium
490
+ +.MuiButton-root.MuiButton-sizeMedium > .MuiButton-icon
491
+ -.MuiButton-root .MuiButton-iconSizeLarge
492
+ +.MuiButton-root.MuiButton-sizeLarge > .MuiButton-icon
493
+ />
494
+ ```
495
+
496
+ ```bash
497
+ npx @mui/codemod@latest deprecations/button-classes <path>
498
+ ```
499
+
500
+ #### `chip-classes`
501
+
502
+ JS transforms:
503
+
504
+ ```diff
505
+
506
+ import { chipClasses } from '@mui/material/Chip';
507
+
508
+ MuiChip: {
509
+ styleOverrides: {
510
+ root: {
511
+ - [`&.${chipClasses.clickableColorPrimary}`]: {
512
+ + [`&.${chipClasses.clickable}.${chipClasses.colorPrimary}`]: {
513
+ color: 'red',
514
+ },
515
+ - [`&.${chipClasses.clickableColorSecondary}`]: {
516
+ + [`&.${chipClasses.clickable}.${chipClasses.colorSecondary}`]: {
517
+ color: 'red',
518
+ },
519
+ - [`&.${chipClasses.deletableColorPrimary}`]: {
520
+ + [`&.${chipClasses.deletable}.${chipClasses.colorPrimary}`]: {
521
+ color: 'red',
522
+ },
523
+ - [`&.${chipClasses.deletableColorSecondary}`]: {
524
+ + [`&.${chipClasses.deletable}.${chipClasses.colorSecondary}`]: {
525
+ color: 'red',
526
+ },
527
+ - [`&.${chipClasses.outlinedPrimary}`]: {
528
+ + [`&.${chipClasses.outlined}.${chipClasses.colorPrimary}`]: {
529
+ color: 'red',
530
+ },
531
+ - [`&.${chipClasses.outlinedSecondary}`]: {
532
+ + [`&.${chipClasses.outlined}.${chipClasses.colorSecondary}`]: {
533
+ color: 'red',
534
+ },
535
+ - [`&.${chipClasses.filledPrimary}`]: {
536
+ + [`&.${chipClasses.filled}.${chipClasses.colorPrimary}`]: {
537
+ color: 'red',
538
+ },
539
+ - [`&.${chipClasses.filledSecondary}`]: {
540
+ + [`&.${chipClasses.filled}.${chipClasses.colorSecondary}`]: {
541
+ color: 'red',
542
+ },
543
+ - [`& .${chipClasses.avatarSmall}`]: {
544
+ + [`&.${chipClasses.sizeSmall} > .${chipClasses.avatar}`]: {
545
+ color: 'red',
546
+ },
547
+ - [`& .${chipClasses.avatarMedium}`]: {
548
+ + [`&.${chipClasses.sizeMedium} > .${chipClasses.avatar}`]: {
549
+ color: 'red',
550
+ },
551
+ - [`& .${chipClasses.avatarColorPrimary}`]: {
552
+ + [`&.${chipClasses.colorPrimary} > .${chipClasses.avatar}`]: {
553
+ color: 'red',
554
+ },
555
+ - [`& .${chipClasses.avatarColorSecondary}`]: {
556
+ + [`&.${chipClasses.colorSecondary} > .${chipClasses.avatar}`]: {
557
+ color: 'red',
558
+ },
559
+ - [`& .${chipClasses.iconSmall}`]: {
560
+ + [`&.${chipClasses.sizeSmall} > .${chipClasses.icon}`]: {
561
+ color: 'red',
562
+ },
563
+ - [`& .${chipClasses.iconMedium}`]: {
564
+ + [`&.${chipClasses.sizeMedium} > .${chipClasses.icon}`]: {
565
+ color: 'red',
566
+ },
567
+ - [`& .${chipClasses.iconColorPrimary}`]: {
568
+ + [`&.${chipClasses.colorPrimary} > .${chipClasses.icon}`]: {
569
+ color: 'red',
570
+ },
571
+ - [`& .${chipClasses.iconColorSecondary}`]: {
572
+ + [`&.${chipClasses.colorSecondary} > .${chipClasses.icon}`]: {
573
+ color: 'red',
574
+ },
575
+ - [`& .${chipClasses.labelSmall}`]: {
576
+ + [`&.${chipClasses.sizeSmall} > .${chipClasses.label}`]: {
577
+ color: 'red',
578
+ },
579
+ - [`& .${chipClasses.labelMedium}`]: {
580
+ + [`&.${chipClasses.sizeMedium} > .${chipClasses.label}`]: {
581
+ color: 'red',
582
+ },
583
+ - [`& .${chipClasses.deleteIconSmall}`]: {
584
+ + [`&.${chipClasses.sizeSmall} > .${chipClasses.deleteIcon}`]: {
585
+ color: 'red',
586
+ },
587
+ - [`& .${chipClasses.deleteIconMedium}`]: {
588
+ + [`&.${chipClasses.sizeMedium} > .${chipClasses.deleteIcon}`]: {
589
+ color: 'red',
590
+ },
591
+ - [`& .${chipClasses.deleteIconColorPrimary}`]: {
592
+ + [`&.${chipClasses.colorPrimary} > .${chipClasses.deleteIcon}`]: {
593
+ color: 'red',
594
+ },
595
+ - [`& .${chipClasses.deleteIconColorSecondary}`]: {
596
+ + [`&.${chipClasses.colorSecondary} > .${chipClasses.deleteIcon}`]: {
597
+ color: 'red',
598
+ },
599
+ - [`& .${chipClasses.deleteIconOutlinedColorPrimary}`]: {
600
+ + [`&.${chipClasses.outlined}.${chipClasses.colorPrimary} > .${chipClasses.deleteIcon}`]: {
601
+ color: 'red',
602
+ },
603
+ - [`& .${chipClasses.deleteIconOutlinedColorSecondary}`]: {
604
+ + [`&.${chipClasses.outlined}.${chipClasses.colorSecondary} > .${chipClasses.deleteIcon}`]: {
605
+ color: 'red',
606
+ },
607
+ - [`& .${chipClasses.deleteIconFilledColorPrimary}`]: {
608
+ + [`&.${chipClasses.filled}.${chipClasses.colorPrimary} > .${chipClasses.deleteIcon}`]: {
609
+ color: 'red',
610
+ },
611
+ - [`& .${chipClasses.deleteIconFilledColorSecondary}`]: {
612
+ + [`&.${chipClasses.filled}.${chipClasses.colorSecondary} > .${chipClasses.deleteIcon}`]: {
613
+ color: 'red',
614
+ },
615
+ },
616
+ },
617
+ },
618
+
619
+ ```
620
+
621
+ CSS transforms:
622
+
623
+ ```diff
624
+ -.MuiChip-clickableColorPrimary
625
+ +.MuiChip-clickable.MuiChip-colorPrimary
626
+ -.MuiChip-clickableColorSecondary
627
+ +.MuiChip-clickable.MuiChip-colorSecondary
628
+ -.MuiChip-deletableColorPrimary
629
+ +.MuiChip-deletable.MuiChip-colorPrimary
630
+ -.MuiChip-deletableColorSecondary
631
+ +.MuiChip-deletable.MuiChip-colorSecondary
632
+ -.MuiChip-outlinedPrimary
633
+ +.MuiChip-outlined.MuiChip-colorPrimary
634
+ -.MuiChip-outlinedSecondary
635
+ +.MuiChip-outlined.MuiChip-colorSecondary
636
+ -.MuiChip-filledPrimary
637
+ +.MuiChip-filled.MuiChip-colorPrimary
638
+ -.MuiChip-filledSecondary
639
+ +.MuiChip-filled.MuiChip-colorSecondary
640
+ -.MuiChip-root .MuiChip-avatarSmall
641
+ +.MuiChip-root.MuiChip-sizeSmall > .MuiChip-avatar
642
+ -.MuiChip-root .MuiChip-avatarMedium
643
+ +.MuiChip-root.MuiChip-sizeMedium > .MuiChip-avatar
644
+ -.MuiChip-root .MuiChip-avatarColorPrimary
645
+ +.MuiChip-root.MuiChip-colorPrimary > .MuiChip-avatar
646
+ -.MuiChip-root .MuiChip-avatarColorSecondary
647
+ +.MuiChip-root.MuiChip-colorSecondary > .MuiChip-avatar
648
+ -.MuiChip-root .MuiChip-iconSmall
649
+ +.MuiChip-root.MuiChip-sizeSmall > .MuiChip-icon
650
+ -.MuiChip-root .MuiChip-iconMedium
651
+ +.MuiChip-root.MuiChip-sizeMedium > .MuiChip-icon
652
+ -.MuiChip-root .MuiChip-iconColorPrimary
653
+ +.MuiChip-root.MuiChip-colorPrimary > .MuiChip-icon
654
+ -.MuiChip-root .MuiChip-iconColorSecondary
655
+ +.MuiChip-root.MuiChip-colorSecondary > .MuiChip-icon
656
+ -.MuiChip-root .MuiChip-labelSmall
657
+ +.MuiChip-root.MuiChip-sizeSmall > .MuiChip-label
658
+ -.MuiChip-root .MuiChip-labelMedium
659
+ +.MuiChip-root.MuiChip-sizeMedium > .MuiChip-label
660
+ -.MuiChip-root .MuiChip-deleteIconSmall
661
+ +.MuiChip-root.MuiChip-sizeSmall > .MuiChip-deleteIcon
662
+ -.MuiChip-root .MuiChip-deleteIconMedium
663
+ +.MuiChip-root.MuiChip-sizeMedium > .MuiChip-deleteIcon
664
+ -.MuiChip-root .MuiChip-deleteIconColorPrimary
665
+ +.MuiChip-root.MuiChip-colorPrimary > .MuiChip-deleteIcon
666
+ -.MuiChip-root .MuiChip-deleteIconColorSecondary
667
+ +.MuiChip-root.MuiChip-colorSecondary > .MuiChip-deleteIcon
668
+ -.MuiChip-root .MuiChip-deleteIconOutlinedColorPrimary
669
+ +.MuiChip-root.MuiChip-outlined.MuiChip-colorPrimary > .MuiChip-deleteIcon
670
+ -.MuiChip-root .MuiChip-deleteIconOutlinedColorSecondary
671
+ +.MuiChip-root.MuiChip-outlined.MuiChip-colorSecondary > .MuiChip-deleteIcon
672
+ -.MuiChip-root .MuiChip-deleteIconFilledColorPrimary
673
+ +.MuiChip-root.MuiChip-filled.MuiChip-colorPrimary > .MuiChip-deleteIcon
674
+ -.MuiChip-root .MuiChip-deleteIconFilledColorSecondary
675
+ +.MuiChip-root.MuiChip-filled.MuiChip-colorSecondary > .MuiChip-deleteIcon
676
+ ```
677
+
678
+ ```bash
679
+ npx @mui/codemod@latest deprecations/chip-classes <path>
680
+ ```
681
+
110
682
  #### `divider-props`
111
683
 
112
684
  ```diff
@@ -120,6 +692,97 @@ npx @mui/codemod@latest deprecations/accordion-props <path>
120
692
  npx @mui/codemod@latest deprecations/divider-props <path>
121
693
  ```
122
694
 
695
+ #### `pagination-item-classes`
696
+
697
+ JS transforms:
698
+
699
+ ```diff
700
+ import { paginationItemClasses } from '@mui/material/PaginationItem';
701
+
702
+ MuiPaginationItem: {
703
+ styleOverrides: {
704
+ root: {
705
+ - [`&.${paginationItemClasses.textPrimary}`]: {
706
+ + [`&.${paginationItemClasses.text}.${paginationItemClasses.colorPrimary}`]: {
707
+ color: 'red',
708
+ },
709
+ - [`&.${paginationItemClasses.textSecondary}`]: {
710
+ + [`&.${paginationItemClasses.text}.${paginationItemClasses.colorSecondary}`]: {
711
+ color: 'red',
712
+ },
713
+ - [`&.${paginationItemClasses.outlinedPrimary}`]: {
714
+ + [`&.${paginationItemClasses.outlined}.${paginationItemClasses.colorPrimary}`]: {
715
+ color: 'red',
716
+ },
717
+ - [`&.${paginationItemClasses.outlinedSecondary}`]: {
718
+ + [`&.${paginationItemClasses.outlined}.${paginationItemClasses.colorSecondary}`]: {
719
+ color: 'red',
720
+ },
721
+ - '&.MuiPaginationItem-textPrimary': {
722
+ + '&.MuiPaginationItem-text.MuiPaginationItem-colorPrimary': {
723
+ color: 'red',
724
+ },
725
+ - '&.MuiPaginationItem-textSecondary': {
726
+ + '&.MuiPaginationItem-text.MuiPaginationItem-colorSecondary': {
727
+ color: 'red',
728
+ },
729
+ - '&.MuiPaginationItem-outlinedPrimary': {
730
+ + '&.MuiPaginationItem-outlined.MuiPaginationItem-colorPrimary': {
731
+ color: 'red',
732
+ },
733
+ - '&.MuiPaginationItem-outlinedSecondary': {
734
+ + '&.MuiPaginationItem-outlined.MuiPaginationItem-colorSecondary': {
735
+ color: 'red',
736
+ },
737
+ },
738
+ },
739
+ },
740
+ ```
741
+
742
+ CSS transforms:
743
+
744
+ ```diff
745
+ -.MuiPaginationItem-textPrimary
746
+ +.MuiPaginationItem-text.MuiPaginationItem-primary
747
+ -.MuiPaginationItem-textSecondary
748
+ +.MuiPaginationItem-text.MuiPaginationItem-secondary
749
+ -.MuiPaginationItem-outlinedPrimary
750
+ +.MuiPaginationItem-outlined.MuiPaginationItem-primary
751
+ -.MuiPaginationItem-outlinedSecondary
752
+ +.MuiPaginationItem-outlined.MuiPaginationItem-secondary
753
+ />
754
+ ```
755
+
756
+ ```bash
757
+ npx @mui/codemod@latest deprecations/pagination-item-classes <path>
758
+ ```
759
+
760
+ #### `slider-props`
761
+
762
+ ```diff
763
+ <Slider
764
+ - components={{ Track: CustomTrack }}
765
+ + slots={{ track: CustomTrack }}
766
+ - componentsProps={{ track: { testid: 'test-id' } }}
767
+ + slotProps={{ track: { testid: 'test-id' } }}
768
+ />
769
+ ```
770
+
771
+ ```diff
772
+ MuiSlider: {
773
+ defaultProps: {
774
+ - components: { Track: CustomTrack }
775
+ + slots: { track: CustomTrack },
776
+ - componentsProps: { track: { testid: 'test-id' }}
777
+ + slotProps: { track: { testid: 'test-id' } },
778
+ },
779
+ },
780
+ ```
781
+
782
+ ```bash
783
+ npx @mui/codemod@latest deprecations/slider-props <path>
784
+ ```
785
+
123
786
  ### v5.0.0
124
787
 
125
788
  #### `base-use-named-exports`
@@ -171,7 +834,7 @@ npx @mui/codemod@latest v5.0.0/base-remove-component-prop <path>
171
834
 
172
835
  #### `rename-css-variables`
173
836
 
174
- Updates the names of the CSS variables of the Joy UI components to adapt to the new naming standards of the CSS variables for components.
837
+ Updates the names of the CSS variables of the Joy UI components to adapt to the new naming standards of the CSS variables for components.
175
838
 
176
839
  ```diff
177
840
  -<List sx={{ py: 'var(--List-divider-gap)' }}>
@@ -199,7 +862,7 @@ npx @mui/codemod@latest v5.0.0/base-hook-imports <path>
199
862
 
200
863
  #### `joy-rename-classname-prefix`
201
864
 
202
- Renames the classname prefix from `'Joy'` to `'Mui'` for Joy UI components.
865
+ Renames the classname prefix from `'Joy'` to `'Mui'` for Joy UI components.
203
866
 
204
867
  ```diff
205
868
  <Button
@@ -231,7 +894,7 @@ npx @mui/codemod@latest v5.0.0/joy-rename-row-prop <path>
231
894
 
232
895
  Remove `imgProps` prop by transferring its value into `slotProps.img`
233
896
 
234
- This change only affects Joy UI Avatar component.
897
+ This change only affects Joy UI Avatar component.
235
898
 
236
899
  ```diff
237
900
  <Avatar
@@ -249,7 +912,7 @@ npx @mui/codemod@latest v5.0.0/joy-avatar-remove-imgProps <path>
249
912
 
250
913
  Replace `<TextField>` with composition of `Input`
251
914
 
252
- This change only affects Joy UI components.
915
+ This change only affects Joy UI components.
253
916
 
254
917
  ```diff
255
918
  -import TextField from '@mui/joy/TextField';
@@ -307,7 +970,7 @@ npx @mui/codemod@latest v5.0.0/joy-text-field-to-input <path>
307
970
 
308
971
  Renames the `components` and `componentsProps` props to `slots` and `slotProps`, respectively.
309
972
 
310
- This change only affects Joy UI components.
973
+ This change only affects Joy UI components.
311
974
 
312
975
  ```diff
313
976
  <Autocomplete
@@ -1234,7 +1897,7 @@ You can find more details about this breaking change in the migration guide.
1234
1897
 
1235
1898
  #### `theme-augment`
1236
1899
 
1237
- Adds `DefaultTheme` module augmentation to typescript projects.
1900
+ Adds `DefaultTheme` module augmentation to TypeScript projects.
1238
1901
 
1239
1902
  ```bash
1240
1903
  npx @mui/codemod@latest v5.0.0/theme-augment <path>