@mui/codemod
Version:
Codemod scripts for Material UI.
75 lines (74 loc) • 2.15 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = transformer;
var _movePropIntoSlots = _interopRequireDefault(require("../utils/movePropIntoSlots"));
var _movePropIntoSlotProps = _interopRequireDefault(require("../utils/movePropIntoSlotProps"));
/**
* @param {import('jscodeshift').FileInfo} file
* @param {import('jscodeshift').API} api
*/
function transformer(file, api, options) {
const j = api.jscodeshift;
const root = j(file.source);
const printOptions = options.printOptions;
(0, _movePropIntoSlots.default)(j, {
root,
packageName: options.packageName,
componentName: 'Drawer',
propName: 'BackdropComponent',
slotName: 'backdrop'
});
(0, _movePropIntoSlots.default)(j, {
root,
packageName: options.packageName,
componentName: 'SwipeableDrawer',
propName: 'BackdropComponent',
slotName: 'backdrop'
});
(0, _movePropIntoSlotProps.default)(j, {
root,
packageName: options.packageName,
componentName: 'Drawer',
propName: 'BackdropProps',
slotName: 'backdrop'
});
(0, _movePropIntoSlotProps.default)(j, {
root,
packageName: options.packageName,
componentName: 'SwipeableDrawer',
propName: 'BackdropProps',
slotName: 'backdrop'
});
(0, _movePropIntoSlotProps.default)(j, {
root,
packageName: options.packageName,
componentName: 'Drawer',
propName: 'PaperProps',
slotName: 'paper'
});
(0, _movePropIntoSlotProps.default)(j, {
root,
packageName: options.packageName,
componentName: 'SwipeableDrawer',
propName: 'PaperProps',
slotName: 'paper'
});
(0, _movePropIntoSlotProps.default)(j, {
root,
packageName: options.packageName,
componentName: 'Drawer',
propName: 'SlideProps',
slotName: 'transition'
});
(0, _movePropIntoSlotProps.default)(j, {
root,
packageName: options.packageName,
componentName: 'SwipeableDrawer',
propName: 'SlideProps',
slotName: 'transition'
});
return root.toSource(printOptions);
}