@mui/codemod 5.15.11 → 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 (28) hide show
  1. package/README.md +533 -6
  2. package/node/deprecations/alert-classes/alert-classes.js +58 -0
  3. package/node/deprecations/alert-classes/index.js +13 -0
  4. package/node/deprecations/alert-classes/postcss-plugin.js +38 -0
  5. package/node/deprecations/alert-classes/postcss.config.js +8 -0
  6. package/node/deprecations/alert-classes/test-cases/actual.js +27 -0
  7. package/node/deprecations/alert-classes/test-cases/expected.js +27 -0
  8. package/node/deprecations/all/deprecations-all.js +6 -0
  9. package/node/deprecations/all/postcss.config.js +10 -1
  10. package/node/deprecations/button-classes/button-classes.js +69 -0
  11. package/node/deprecations/button-classes/index.js +13 -0
  12. package/node/deprecations/button-classes/postcss-plugin.js +126 -0
  13. package/node/deprecations/button-classes/postcss.config.js +8 -0
  14. package/node/deprecations/button-classes/test-cases/actual.js +69 -0
  15. package/node/deprecations/button-classes/test-cases/expected.js +69 -0
  16. package/node/deprecations/chip-classes/chip-classes.js +77 -0
  17. package/node/deprecations/chip-classes/index.js +13 -0
  18. package/node/deprecations/chip-classes/postcss-plugin.js +105 -0
  19. package/node/deprecations/chip-classes/postcss.config.js +8 -0
  20. package/node/deprecations/chip-classes/test-cases/actual.js +55 -0
  21. package/node/deprecations/chip-classes/test-cases/expected.js +55 -0
  22. package/node/deprecations/slider-props/index.js +13 -0
  23. package/node/deprecations/slider-props/slider-props.js +22 -0
  24. package/node/deprecations/slider-props/test-cases/actual.js +43 -0
  25. package/node/deprecations/slider-props/test-cases/expected.js +33 -0
  26. package/node/deprecations/slider-props/test-cases/theme.actual.js +52 -0
  27. package/node/deprecations/slider-props/test-cases/theme.expected.js +42 -0
  28. package/package.json +4 -4
package/README.md CHANGED
@@ -1,6 +1,6 @@
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)
@@ -136,6 +136,102 @@ CSS transforms:
136
136
  npx @mui/codemod@latest deprecations/accordion-summary-classes <path>
137
137
  ```
138
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
+
139
235
  #### `alert-props`
140
236
 
141
237
  ```diff
@@ -178,6 +274,411 @@ npx @mui/codemod@latest deprecations/alert-props <path>
178
274
  />;
179
275
  ```
180
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
+
181
682
  #### `divider-props`
182
683
 
183
684
  ```diff
@@ -256,6 +757,32 @@ CSS transforms:
256
757
  npx @mui/codemod@latest deprecations/pagination-item-classes <path>
257
758
  ```
258
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
+
259
786
  ### v5.0.0
260
787
 
261
788
  #### `base-use-named-exports`
@@ -307,7 +834,7 @@ npx @mui/codemod@latest v5.0.0/base-remove-component-prop <path>
307
834
 
308
835
  #### `rename-css-variables`
309
836
 
310
- 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.
311
838
 
312
839
  ```diff
313
840
  -<List sx={{ py: 'var(--List-divider-gap)' }}>
@@ -335,7 +862,7 @@ npx @mui/codemod@latest v5.0.0/base-hook-imports <path>
335
862
 
336
863
  #### `joy-rename-classname-prefix`
337
864
 
338
- 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.
339
866
 
340
867
  ```diff
341
868
  <Button
@@ -367,7 +894,7 @@ npx @mui/codemod@latest v5.0.0/joy-rename-row-prop <path>
367
894
 
368
895
  Remove `imgProps` prop by transferring its value into `slotProps.img`
369
896
 
370
- This change only affects Joy UI Avatar component.
897
+ This change only affects Joy UI Avatar component.
371
898
 
372
899
  ```diff
373
900
  <Avatar
@@ -385,7 +912,7 @@ npx @mui/codemod@latest v5.0.0/joy-avatar-remove-imgProps <path>
385
912
 
386
913
  Replace `<TextField>` with composition of `Input`
387
914
 
388
- This change only affects Joy UI components.
915
+ This change only affects Joy UI components.
389
916
 
390
917
  ```diff
391
918
  -import TextField from '@mui/joy/TextField';
@@ -443,7 +970,7 @@ npx @mui/codemod@latest v5.0.0/joy-text-field-to-input <path>
443
970
 
444
971
  Renames the `components` and `componentsProps` props to `slots` and `slotProps`, respectively.
445
972
 
446
- This change only affects Joy UI components.
973
+ This change only affects Joy UI components.
447
974
 
448
975
  ```diff
449
976
  <Autocomplete
@@ -0,0 +1,58 @@
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
+ root.find(j.ImportDeclaration).filter(path => path.node.source.value.match(/^@mui\/material\/Alert$/)).forEach(path => {
21
+ path.node.specifiers.forEach(specifier => {
22
+ if (specifier.type === 'ImportSpecifier' && specifier.imported.name === 'alertClasses') {
23
+ const deprecatedAtomicClass = deprecatedClass.replace('.MuiAlert-', '');
24
+ root.find(j.MemberExpression, {
25
+ object: {
26
+ name: specifier.local.name
27
+ },
28
+ property: {
29
+ name: deprecatedAtomicClass
30
+ }
31
+ }).forEach(memberExpression => {
32
+ const parent = memberExpression.parentPath.parentPath.value;
33
+ if (parent.type === j.TemplateLiteral.name) {
34
+ const memberExpressionIndex = parent.expressions.findIndex(expression => expression === memberExpression.value);
35
+ const precedingTemplateElement = parent.quasis[memberExpressionIndex];
36
+ const atomicClasses = replacementSelector.replaceAll('MuiAlert-', '').split('.').filter(Boolean);
37
+ if (precedingTemplateElement.value.raw.endsWith('&.')) {
38
+ parent.expressions.splice(memberExpressionIndex, 1, j.memberExpression(memberExpression.value.object, j.identifier(atomicClasses[0])), j.memberExpression(memberExpression.value.object, j.identifier(atomicClasses[1])));
39
+ parent.quasis.splice(memberExpressionIndex, 1, j.templateElement({
40
+ raw: precedingTemplateElement.value.raw,
41
+ cooked: precedingTemplateElement.value.cooked
42
+ }, false), j.templateElement({
43
+ raw: '.',
44
+ cooked: '.'
45
+ }, false));
46
+ }
47
+ }
48
+ });
49
+ }
50
+ });
51
+ });
52
+ const selectorRegex = new RegExp(`^&${deprecatedClass}`);
53
+ root.find(j.Literal, literal => typeof literal.value === 'string' && literal.value.match(selectorRegex)).forEach(path => {
54
+ path.replace(j.literal(path.value.value.replace(selectorRegex, `&${replacementSelector}`)));
55
+ });
56
+ });
57
+ return root.toSource(printOptions);
58
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _alertClasses.default;
11
+ }
12
+ });
13
+ var _alertClasses = _interopRequireDefault(require("./alert-classes"));