@mui/codemod 7.2.0 → 7.3.2
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.
- package/CHANGELOG.md +897 -0
- package/README.md +42 -1
- package/package.json +8 -16
- package/util/migrateToVariants.js +5 -5
- package/v1.0.0/color-imports.js +1 -1
- package/v5.0.0/jss-to-styled.test/first.actual.js +15 -6
- package/v5.0.0/jss-to-styled.test/first.expected.js +15 -6
- package/v5.0.0/jss-to-styled.test/sixth.actual.js +5 -3
- package/v5.0.0/jss-to-styled.test/sixth.expected.js +5 -3
- package/v5.0.0/path-imports.js +90 -0
- package/v5.0.0/path-imports.test/actual.js +8 -0
- package/v5.0.0/path-imports.test/expected.js +66 -0
- package/v5.0.0/theme-spacing.test/large-actual.js +2 -2
- package/v5.0.0/theme-spacing.test/large-expected.js +2 -2
- package/v5.0.0/top-level-imports.js +1 -1
- package/v5.0.0/top-level-imports.test/actual.js +2 -2
- package/v5.0.0/top-level-imports.test/expected.js +2 -0
- package/v6.0.0/styled/styled-v6.js +1 -1
- package/v6.0.0/theme-v6/theme-v6.js +1 -1
- package/v7.0.0/theme-color-functions/index.js +13 -0
- package/v7.0.0/theme-color-functions/test-cases/actual.js +21 -0
- package/v7.0.0/theme-color-functions/test-cases/darken-basic.actual.js +20 -0
- package/v7.0.0/theme-color-functions/test-cases/darken-basic.expected.js +19 -0
- package/v7.0.0/theme-color-functions/test-cases/expected.js +20 -0
- package/v7.0.0/theme-color-functions/test-cases/lighten-basic.actual.js +13 -0
- package/v7.0.0/theme-color-functions/test-cases/lighten-basic.expected.js +12 -0
- package/v7.0.0/theme-color-functions/test-cases/mixed-functions.actual.js +17 -0
- package/v7.0.0/theme-color-functions/test-cases/mixed-functions.expected.js +16 -0
- package/v7.0.0/theme-color-functions/test-cases/mixed-imports.actual.js +19 -0
- package/v7.0.0/theme-color-functions/test-cases/mixed-imports.expected.js +18 -0
- package/v7.0.0/theme-color-functions/test-cases/mui-material-styles.actual.js +18 -0
- package/v7.0.0/theme-color-functions/test-cases/mui-material-styles.expected.js +17 -0
- package/v7.0.0/theme-color-functions/test-cases/no-import.actual.js +11 -0
- package/v7.0.0/theme-color-functions/test-cases/no-import.expected.js +11 -0
- package/v7.0.0/theme-color-functions/test-cases/opacity-calc.actual.js +57 -0
- package/v7.0.0/theme-color-functions/test-cases/opacity-calc.expected.js +56 -0
- package/v7.0.0/theme-color-functions/test-cases/opacity-var.actual.js +37 -0
- package/v7.0.0/theme-color-functions/test-cases/opacity-var.expected.js +36 -0
- package/v7.0.0/theme-color-functions/theme-color-functions.js +142 -0
package/README.md
CHANGED
|
@@ -2156,6 +2156,27 @@ npx @mui/codemod@latest deprecations/typography-props <path>
|
|
|
2156
2156
|
|
|
2157
2157
|
### v7.0.0
|
|
2158
2158
|
|
|
2159
|
+
#### `theme-color-functions`
|
|
2160
|
+
|
|
2161
|
+
```bash
|
|
2162
|
+
npx @mui/codemod@latest v7.0.0/theme-color-functions <path>
|
|
2163
|
+
```
|
|
2164
|
+
|
|
2165
|
+
Replace the usage of the `alpha()`, `lighten()`, and `darken()` functions from `@mui/system/colorManipulator` to use the `theme` object instead.
|
|
2166
|
+
|
|
2167
|
+
```diff
|
|
2168
|
+
- import { alpha, lighten, darken } from '@mui/system/colorManipulator';
|
|
2169
|
+
|
|
2170
|
+
- alpha(theme.palette.primary.main, 0.8)
|
|
2171
|
+
+ theme.alpha((theme.vars || theme).palette.primary.main, 0.8)
|
|
2172
|
+
|
|
2173
|
+
- lighten(theme.palette.primary.main, 0.1)
|
|
2174
|
+
+ theme.lighten(theme.palette.primary.main, 0.1)
|
|
2175
|
+
|
|
2176
|
+
- darken(theme.palette.primary.main, 0.3)
|
|
2177
|
+
+ theme.darken(theme.palette.primary.main, 0.3)
|
|
2178
|
+
```
|
|
2179
|
+
|
|
2159
2180
|
#### `grid-props`
|
|
2160
2181
|
|
|
2161
2182
|
<!-- #npm-tag-reference -->
|
|
@@ -3445,6 +3466,26 @@ npx @mui/codemod@latest v5.0.0/pagination-round-circular <path>
|
|
|
3445
3466
|
|
|
3446
3467
|
You can find more details about this breaking change in [the migration guide](https://mui.com/material-ui/migration/v5-component-changes/#pagination).
|
|
3447
3468
|
|
|
3469
|
+
#### `path-imports`
|
|
3470
|
+
|
|
3471
|
+
Converts all `@mui/material` & `@mui/icons-material` top-level imports to path imports (essentially the reverse of `top-level-imports`, with the addition of `@mui/icons-material`):
|
|
3472
|
+
|
|
3473
|
+
```diff
|
|
3474
|
+
-import { List, Grid } from '@mui/material';
|
|
3475
|
+
+import List from '@mui/material/List';
|
|
3476
|
+
+import Grid from '@mui/material/Grid';
|
|
3477
|
+
|
|
3478
|
+
-import { Delete, People as PeopleIcon } from '@mui/icons-material';
|
|
3479
|
+
+import Delete from '@mui/icons-material/Delete';
|
|
3480
|
+
+import PeopleIcon from '@mui/icons-material/People';
|
|
3481
|
+
```
|
|
3482
|
+
|
|
3483
|
+
```bash
|
|
3484
|
+
npx @mui/codemod@latest v5.0.0/path-imports <path>
|
|
3485
|
+
```
|
|
3486
|
+
|
|
3487
|
+
Head to https://mui.com/material-ui/guides/minimizing-bundle-size/ to understand when it's useful.
|
|
3488
|
+
|
|
3448
3489
|
#### `optimal-imports`
|
|
3449
3490
|
|
|
3450
3491
|
Fix private import paths.
|
|
@@ -3698,7 +3739,7 @@ Converts all `@mui/material` submodule imports to the root module:
|
|
|
3698
3739
|
npx @mui/codemod@latest v5.0.0/top-level-imports <path>
|
|
3699
3740
|
```
|
|
3700
3741
|
|
|
3701
|
-
Head to https://mui.com/guides/minimizing-bundle-size/ to understand when it's useful.
|
|
3742
|
+
Head to https://mui.com/material-ui/guides/minimizing-bundle-size/ to understand when it's useful.
|
|
3702
3743
|
|
|
3703
3744
|
#### `transitions`
|
|
3704
3745
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mui/codemod",
|
|
3
|
-
"version": "7.2
|
|
3
|
+
"version": "7.3.2",
|
|
4
4
|
"author": "MUI Team",
|
|
5
5
|
"description": "Codemod scripts for Material UI.",
|
|
6
6
|
"bin": "./codemod.js",
|
|
@@ -23,32 +23,24 @@
|
|
|
23
23
|
"url": "https://opencollective.com/mui-org"
|
|
24
24
|
},
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@babel/core": "^7.
|
|
27
|
-
"@babel/runtime": "^7.
|
|
28
|
-
"@babel/traverse": "^7.
|
|
26
|
+
"@babel/core": "^7.28.3",
|
|
27
|
+
"@babel/runtime": "^7.28.3",
|
|
28
|
+
"@babel/traverse": "^7.28.3",
|
|
29
29
|
"jscodeshift": "^17.1.2",
|
|
30
30
|
"jscodeshift-add-imports": "^1.0.11",
|
|
31
31
|
"postcss": "^8.5.6",
|
|
32
32
|
"postcss-cli": "^11.0.1",
|
|
33
33
|
"yargs": "^17.7.2"
|
|
34
34
|
},
|
|
35
|
-
"devDependencies": {
|
|
36
|
-
"@types/chai": "^4.3.20",
|
|
37
|
-
"@types/jscodeshift": "0.12.0",
|
|
38
|
-
"chai": "^4.5.0"
|
|
39
|
-
},
|
|
40
35
|
"sideEffects": false,
|
|
41
36
|
"publishConfig": {
|
|
42
|
-
"access": "public"
|
|
43
|
-
"directory": "build"
|
|
37
|
+
"access": "public"
|
|
44
38
|
},
|
|
45
39
|
"engines": {
|
|
46
40
|
"node": ">=14.0.0"
|
|
47
41
|
},
|
|
48
|
-
"
|
|
49
|
-
|
|
50
|
-
"
|
|
51
|
-
"build": "node ../../scripts/build.mjs node --out-dir ./build && cpy README.md build && cpy package.json build && cpy codemod.js build",
|
|
52
|
-
"release": "pnpm build && pnpm publish"
|
|
42
|
+
"type": "commonjs",
|
|
43
|
+
"exports": {
|
|
44
|
+
"./package.json": "./package.json"
|
|
53
45
|
}
|
|
54
46
|
}
|
|
@@ -121,9 +121,9 @@ const getObjectToArrowFunction = j => {
|
|
|
121
121
|
/**
|
|
122
122
|
*
|
|
123
123
|
* @param {import('jscodeshift').ObjectExpression} objectExpression
|
|
124
|
-
* @param {import('jscodeshift').BinaryExpression}
|
|
124
|
+
* @param {import('jscodeshift').BinaryExpression} additional
|
|
125
125
|
*/
|
|
126
|
-
function objectToArrowFunction(objectExpression,
|
|
126
|
+
function objectToArrowFunction(objectExpression, additional) {
|
|
127
127
|
const paramKeys = new Set();
|
|
128
128
|
let left;
|
|
129
129
|
objectExpression.properties.forEach((prop, index) => {
|
|
@@ -135,10 +135,10 @@ const getObjectToArrowFunction = j => {
|
|
|
135
135
|
left = j.logicalExpression('&&', left, result);
|
|
136
136
|
}
|
|
137
137
|
});
|
|
138
|
-
if (
|
|
139
|
-
paramKeys.add(getObjectKey(
|
|
138
|
+
if (additional) {
|
|
139
|
+
paramKeys.add(getObjectKey(additional.left).name);
|
|
140
140
|
}
|
|
141
|
-
return buildArrowFunctionAST(paramKeys,
|
|
141
|
+
return buildArrowFunctionAST(paramKeys, additional ? j.logicalExpression('&&', left, additional) : left);
|
|
142
142
|
}
|
|
143
143
|
);
|
|
144
144
|
};
|
package/v1.0.0/color-imports.js
CHANGED
|
@@ -30,7 +30,7 @@ function colorImportPath(colorPalette) {
|
|
|
30
30
|
/**
|
|
31
31
|
* Replace all expressions that use identifier to access color palettes.
|
|
32
32
|
* e.g. colors.amber100 -> colors.amber['100']
|
|
33
|
-
* @param {
|
|
33
|
+
* @param {string} identifier
|
|
34
34
|
* @param {jscodeshift_api_object} j
|
|
35
35
|
* @param {jscodeshift_ast_object} root
|
|
36
36
|
*/
|
|
@@ -164,7 +164,9 @@ class AppAppBar extends React.Component {
|
|
|
164
164
|
essential: essential,
|
|
165
165
|
position: position,
|
|
166
166
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
167
|
-
className: (0, _clsx.default)(classes.wrap,
|
|
167
|
+
className: (0, _clsx.default)(classes.wrap, {
|
|
168
|
+
[classes.wrapOpened]: menuOpen
|
|
169
|
+
}),
|
|
168
170
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {
|
|
169
171
|
to: "/",
|
|
170
172
|
"aria-label": "Back to homepage",
|
|
@@ -173,7 +175,10 @@ class AppAppBar extends React.Component {
|
|
|
173
175
|
color: menuOpen ? 'inherit' : 'textPrimary'
|
|
174
176
|
})
|
|
175
177
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
176
|
-
className: (0, _clsx.default)(classes.content,
|
|
178
|
+
className: (0, _clsx.default)(classes.content, {
|
|
179
|
+
[classes.contentOpened]: menuOpen,
|
|
180
|
+
'mui-fixed': menuOpen
|
|
181
|
+
}),
|
|
177
182
|
children: [children || /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
178
183
|
className: classes.grow
|
|
179
184
|
}), essential ? null : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
@@ -197,9 +202,13 @@ class AppAppBar extends React.Component {
|
|
|
197
202
|
href: "#",
|
|
198
203
|
onClick: this.handleToggleMenu,
|
|
199
204
|
children: menuOpen ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {
|
|
200
|
-
className: (0, _clsx.default)(classes.menuIcon, classes.closeIcon, classes.white,
|
|
205
|
+
className: (0, _clsx.default)(classes.menuIcon, classes.closeIcon, classes.white, {
|
|
206
|
+
[classes.hide]: menuOpen
|
|
207
|
+
})
|
|
201
208
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Menu.default, {
|
|
202
|
-
className: (0, _clsx.default)(classes.menuIcon, classes.burgerIcon,
|
|
209
|
+
className: (0, _clsx.default)(classes.menuIcon, classes.burgerIcon, {
|
|
210
|
+
[classes.hide]: menuOpen
|
|
211
|
+
})
|
|
203
212
|
})
|
|
204
213
|
})
|
|
205
214
|
})]
|
|
@@ -207,13 +216,13 @@ class AppAppBar extends React.Component {
|
|
|
207
216
|
});
|
|
208
217
|
}
|
|
209
218
|
}
|
|
210
|
-
|
|
219
|
+
AppAppBar.propTypes = {
|
|
211
220
|
children: _propTypes.default.node,
|
|
212
221
|
classes: _propTypes.default.object.isRequired,
|
|
213
222
|
essential: _propTypes.default.bool,
|
|
214
223
|
position: _propTypes.default.string,
|
|
215
224
|
user: _propTypes.default.object
|
|
216
|
-
}
|
|
225
|
+
};
|
|
217
226
|
var _default = exports.default = (0, _recompose.compose)((0, _withStyles.default)(styles, {
|
|
218
227
|
name: 'AppAppBar'
|
|
219
228
|
}), (0, _reactRedux.connect)(state => ({
|
|
@@ -179,7 +179,9 @@ class AppAppBar extends React.Component {
|
|
|
179
179
|
essential: essential,
|
|
180
180
|
position: position,
|
|
181
181
|
children: /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
182
|
-
className: (0, _clsx.default)(classes.wrap,
|
|
182
|
+
className: (0, _clsx.default)(classes.wrap, {
|
|
183
|
+
[classes.wrapOpened]: menuOpen
|
|
184
|
+
}),
|
|
183
185
|
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_Link.default, {
|
|
184
186
|
to: "/",
|
|
185
187
|
"aria-label": "Back to homepage",
|
|
@@ -188,7 +190,10 @@ class AppAppBar extends React.Component {
|
|
|
188
190
|
color: menuOpen ? 'inherit' : 'textPrimary'
|
|
189
191
|
})
|
|
190
192
|
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
191
|
-
className: (0, _clsx.default)(classes.content,
|
|
193
|
+
className: (0, _clsx.default)(classes.content, {
|
|
194
|
+
[classes.contentOpened]: menuOpen,
|
|
195
|
+
'mui-fixed': menuOpen
|
|
196
|
+
}),
|
|
192
197
|
children: [children || /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
193
198
|
className: classes.grow
|
|
194
199
|
}), essential ? null : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Typography.default, {
|
|
@@ -212,9 +217,13 @@ class AppAppBar extends React.Component {
|
|
|
212
217
|
href: "#",
|
|
213
218
|
onClick: this.handleToggleMenu,
|
|
214
219
|
children: menuOpen ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_Close.default, {
|
|
215
|
-
className: (0, _clsx.default)(classes.menuIcon, classes.closeIcon, classes.white,
|
|
220
|
+
className: (0, _clsx.default)(classes.menuIcon, classes.closeIcon, classes.white, {
|
|
221
|
+
[classes.hide]: menuOpen
|
|
222
|
+
})
|
|
216
223
|
}) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_Menu.default, {
|
|
217
|
-
className: (0, _clsx.default)(classes.menuIcon, classes.burgerIcon,
|
|
224
|
+
className: (0, _clsx.default)(classes.menuIcon, classes.burgerIcon, {
|
|
225
|
+
[classes.hide]: menuOpen
|
|
226
|
+
})
|
|
218
227
|
})
|
|
219
228
|
})
|
|
220
229
|
})]
|
|
@@ -222,13 +231,13 @@ class AppAppBar extends React.Component {
|
|
|
222
231
|
});
|
|
223
232
|
}
|
|
224
233
|
}
|
|
225
|
-
|
|
234
|
+
AppAppBar.propTypes = {
|
|
226
235
|
children: _propTypes.default.node,
|
|
227
236
|
classes: _propTypes.default.object.isRequired,
|
|
228
237
|
essential: _propTypes.default.bool,
|
|
229
238
|
position: _propTypes.default.string,
|
|
230
239
|
user: _propTypes.default.object
|
|
231
|
-
}
|
|
240
|
+
};
|
|
232
241
|
var _default = exports.default = (0, _recompose.compose)((0, _reactRedux.connect)(state => ({
|
|
233
242
|
user: state.data.user
|
|
234
243
|
})))(AppAppBar);
|
|
@@ -68,7 +68,9 @@ function AppAppBarCart(props) {
|
|
|
68
68
|
}), count > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Badge.default, {
|
|
69
69
|
color: "primary",
|
|
70
70
|
classes: {
|
|
71
|
-
badge: (0, _clsx.default)(classes.badge,
|
|
71
|
+
badge: (0, _clsx.default)(classes.badge, {
|
|
72
|
+
[classes.transparentBadge]: transparent
|
|
73
|
+
})
|
|
72
74
|
},
|
|
73
75
|
badgeContent: count > 9 ? '+9' : count,
|
|
74
76
|
children: ''
|
|
@@ -76,12 +78,12 @@ function AppAppBarCart(props) {
|
|
|
76
78
|
});
|
|
77
79
|
}
|
|
78
80
|
AppAppBarCart.displayName = 'AppAppBarCart';
|
|
79
|
-
|
|
81
|
+
AppAppBarCart.propTypes = {
|
|
80
82
|
classes: _propTypes.default.object.isRequired,
|
|
81
83
|
className: _propTypes.default.string,
|
|
82
84
|
variant: _propTypes.default.oneOf(['text', 'icon']),
|
|
83
85
|
transparent: _propTypes.default.bool
|
|
84
|
-
}
|
|
86
|
+
};
|
|
85
87
|
AppAppBarCart.defaultProps = {
|
|
86
88
|
variant: 'icon'
|
|
87
89
|
};
|
|
@@ -76,7 +76,9 @@ function AppAppBarCart(props) {
|
|
|
76
76
|
}), count > 0 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_Badge.default, {
|
|
77
77
|
color: "primary",
|
|
78
78
|
classes: {
|
|
79
|
-
badge: (0, _clsx.default)(classes.badge,
|
|
79
|
+
badge: (0, _clsx.default)(classes.badge, {
|
|
80
|
+
[classes.transparentBadge]: transparent
|
|
81
|
+
})
|
|
80
82
|
},
|
|
81
83
|
badgeContent: count > 9 ? '+9' : count,
|
|
82
84
|
children: ''
|
|
@@ -84,12 +86,12 @@ function AppAppBarCart(props) {
|
|
|
84
86
|
});
|
|
85
87
|
}
|
|
86
88
|
AppAppBarCart.displayName = 'AppAppBarCart';
|
|
87
|
-
|
|
89
|
+
AppAppBarCart.propTypes = {
|
|
88
90
|
classes: _propTypes.default.object.isRequired,
|
|
89
91
|
className: _propTypes.default.string,
|
|
90
92
|
variant: _propTypes.default.oneOf(['text', 'icon']),
|
|
91
93
|
transparent: _propTypes.default.bool
|
|
92
|
-
}
|
|
94
|
+
};
|
|
93
95
|
AppAppBarCart.defaultProps = {
|
|
94
96
|
variant: 'icon'
|
|
95
97
|
};
|
|
@@ -0,0 +1,90 @@
|
|
|
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 _jscodeshiftAddImports = _interopRequireDefault(require("jscodeshift-add-imports"));
|
|
9
|
+
// istanbul ignore next
|
|
10
|
+
if (process.env.NODE_ENV === 'test') {
|
|
11
|
+
const resolve = require.resolve;
|
|
12
|
+
require.resolve = source => resolve(source.replace(/^@mui\/material\/modern/, '../../../mui-material/src'));
|
|
13
|
+
}
|
|
14
|
+
const barrelImportsToTransform = {
|
|
15
|
+
material: {},
|
|
16
|
+
'icons-material': {}
|
|
17
|
+
};
|
|
18
|
+
const muiImportRegExp = /^@mui\/([^/]+)$/;
|
|
19
|
+
function transformer(fileInfo, api, options) {
|
|
20
|
+
const j = api.jscodeshift;
|
|
21
|
+
const printOptions = options.printOptions || {
|
|
22
|
+
quote: 'single',
|
|
23
|
+
trailingComma: true
|
|
24
|
+
};
|
|
25
|
+
const root = j(fileInfo.source);
|
|
26
|
+
root.find(j.ImportDeclaration).forEach(path => {
|
|
27
|
+
if (!path.node.specifiers.length) {
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
30
|
+
if (path.value.importKind && path.value.importKind !== 'value') {
|
|
31
|
+
return;
|
|
32
|
+
}
|
|
33
|
+
const importPath = path.value.source.value;
|
|
34
|
+
const match = importPath.match(muiImportRegExp);
|
|
35
|
+
if (!match) {
|
|
36
|
+
return;
|
|
37
|
+
}
|
|
38
|
+
const moduleName = match[1];
|
|
39
|
+
const importsToAdd = barrelImportsToTransform[moduleName];
|
|
40
|
+
if (!importsToAdd) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
const indexesToPrune = [];
|
|
44
|
+
path.node.specifiers.forEach((specifier, index) => {
|
|
45
|
+
if (specifier.importKind && specifier.importKind !== 'value') {
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (specifier.type === 'ImportNamespaceSpecifier') {
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
if (specifier.type === 'ImportSpecifier') {
|
|
52
|
+
const name = specifier.imported.name;
|
|
53
|
+
if (moduleName === 'material') {
|
|
54
|
+
if (name === 'ThemeProvider' || name === 'createTheme') {
|
|
55
|
+
importsToAdd.styles ?? (importsToAdd.styles = []);
|
|
56
|
+
importsToAdd.styles.push(specifier);
|
|
57
|
+
indexesToPrune.push(index);
|
|
58
|
+
return;
|
|
59
|
+
}
|
|
60
|
+
if (name.endsWith('Classes')) {
|
|
61
|
+
const base = name.replace(/Classes$/, '');
|
|
62
|
+
const componentName = base.charAt(0).toUpperCase() + base.slice(1); // autocomplete → Autocomplete
|
|
63
|
+
importsToAdd[componentName] ?? (importsToAdd[componentName] = []);
|
|
64
|
+
importsToAdd[componentName].push(j.importSpecifier(specifier.imported, specifier.local));
|
|
65
|
+
indexesToPrune.push(index);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
importsToAdd[name] ?? (importsToAdd[name] = []);
|
|
70
|
+
importsToAdd[name].push(j.importDefaultSpecifier(specifier.local));
|
|
71
|
+
indexesToPrune.push(index);
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
|
|
75
|
+
// We prune imports starting with the highest index as otherwise subsequent indexes would become
|
|
76
|
+
// invalid once an index that comes before it gets pruned.
|
|
77
|
+
indexesToPrune.sort((a, b) => a - b).reverse();
|
|
78
|
+
indexesToPrune.forEach(index => path.get('specifiers', index).prune());
|
|
79
|
+
if (!path.node.specifiers.length) {
|
|
80
|
+
path.prune();
|
|
81
|
+
}
|
|
82
|
+
});
|
|
83
|
+
Object.entries(barrelImportsToTransform).forEach(([moduleName, importsToAdd]) => {
|
|
84
|
+
Object.entries(importsToAdd).forEach(([module, specifiers]) => {
|
|
85
|
+
const fullTargetModule = `@mui/${moduleName}/${module}`;
|
|
86
|
+
(0, _jscodeshiftAddImports.default)(root, j.importDeclaration(specifiers, j.stringLiteral(fullTargetModule)));
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
return root.toSource(printOptions);
|
|
90
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
|
+
var React = _interopRequireWildcard(require("react"));
|
|
5
|
+
var _styles = require("@mui/styles");
|
|
6
|
+
var _colors = require("@mui/material/colors");
|
|
7
|
+
var _material = require("@mui/material");
|
|
8
|
+
var _iconsMaterial = require("@mui/icons-material");
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
|
|
4
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
|
+
var React = _interopRequireWildcard(require("react"));
|
|
6
|
+
var _styles = require("@mui/styles");
|
|
7
|
+
var _colors = require("@mui/material/colors");
|
|
8
|
+
var _styles2 = require("@mui/material/styles");
|
|
9
|
+
var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
10
|
+
var _Tab = _interopRequireDefault(require("@mui/material/Tab"));
|
|
11
|
+
var _Tabs = _interopRequireDefault(require("@mui/material/Tabs"));
|
|
12
|
+
var _Autocomplete = require("@mui/material/Autocomplete");
|
|
13
|
+
var _BottomNavigationAction = _interopRequireDefault(require("@mui/material/BottomNavigationAction"));
|
|
14
|
+
var _BottomNavigation = _interopRequireDefault(require("@mui/material/BottomNavigation"));
|
|
15
|
+
var _CardContent = _interopRequireDefault(require("@mui/material/CardContent"));
|
|
16
|
+
var _CardActions = _interopRequireDefault(require("@mui/material/CardActions"));
|
|
17
|
+
var _Card = _interopRequireDefault(require("@mui/material/Card"));
|
|
18
|
+
var _CardMedia = _interopRequireDefault(require("@mui/material/CardMedia"));
|
|
19
|
+
var _CardHeader = _interopRequireDefault(require("@mui/material/CardHeader"));
|
|
20
|
+
var _Collapse = _interopRequireDefault(require("@mui/material/Collapse"));
|
|
21
|
+
var _ListItemSecondaryAction = _interopRequireDefault(require("@mui/material/ListItemSecondaryAction"));
|
|
22
|
+
var _ListItemText = _interopRequireDefault(require("@mui/material/ListItemText"));
|
|
23
|
+
var _ListItemAvatar = _interopRequireDefault(require("@mui/material/ListItemAvatar"));
|
|
24
|
+
var _ListItem = _interopRequireDefault(require("@mui/material/ListItem"));
|
|
25
|
+
var _ListItemIcon = _interopRequireDefault(require("@mui/material/ListItemIcon"));
|
|
26
|
+
var _List = _interopRequireDefault(require("@mui/material/List"));
|
|
27
|
+
var _DialogTitle = _interopRequireDefault(require("@mui/material/DialogTitle"));
|
|
28
|
+
var _Dialog = _interopRequireDefault(require("@mui/material/Dialog"));
|
|
29
|
+
var _DialogContentText = _interopRequireDefault(require("@mui/material/DialogContentText"));
|
|
30
|
+
var _DialogContent = _interopRequireDefault(require("@mui/material/DialogContent"));
|
|
31
|
+
var _DialogActions = _interopRequireDefault(require("@mui/material/DialogActions"));
|
|
32
|
+
var _Slide = _interopRequireDefault(require("@mui/material/Slide"));
|
|
33
|
+
var _RadioGroup = _interopRequireDefault(require("@mui/material/RadioGroup"));
|
|
34
|
+
var _Radio = _interopRequireDefault(require("@mui/material/Radio"));
|
|
35
|
+
var _FormControlLabel = _interopRequireDefault(require("@mui/material/FormControlLabel"));
|
|
36
|
+
var _AccordionActions = _interopRequireDefault(require("@mui/material/AccordionActions"));
|
|
37
|
+
var _AccordionDetails = _interopRequireDefault(require("@mui/material/AccordionDetails"));
|
|
38
|
+
var _AccordionSummary = _interopRequireDefault(require("@mui/material/AccordionSummary"));
|
|
39
|
+
var _Accordion = _interopRequireDefault(require("@mui/material/Accordion"));
|
|
40
|
+
var _CircularProgress = _interopRequireDefault(require("@mui/material/CircularProgress"));
|
|
41
|
+
var _LinearProgress = _interopRequireDefault(require("@mui/material/LinearProgress"));
|
|
42
|
+
var _FormHelperText = _interopRequireDefault(require("@mui/material/FormHelperText"));
|
|
43
|
+
var _FormGroup = _interopRequireDefault(require("@mui/material/FormGroup"));
|
|
44
|
+
var _FormControl = _interopRequireDefault(require("@mui/material/FormControl"));
|
|
45
|
+
var _FormLabel = _interopRequireDefault(require("@mui/material/FormLabel"));
|
|
46
|
+
var _Fade = _interopRequireDefault(require("@mui/material/Fade"));
|
|
47
|
+
var _StepContent = _interopRequireDefault(require("@mui/material/StepContent"));
|
|
48
|
+
var _StepButton = _interopRequireDefault(require("@mui/material/StepButton"));
|
|
49
|
+
var _Step = _interopRequireDefault(require("@mui/material/Step"));
|
|
50
|
+
var _Stepper = _interopRequireDefault(require("@mui/material/Stepper"));
|
|
51
|
+
var _TableRow = _interopRequireDefault(require("@mui/material/TableRow"));
|
|
52
|
+
var _TablePagination = _interopRequireDefault(require("@mui/material/TablePagination"));
|
|
53
|
+
var _TableCell = _interopRequireDefault(require("@mui/material/TableCell"));
|
|
54
|
+
var _TableBody = _interopRequireDefault(require("@mui/material/TableBody"));
|
|
55
|
+
var _Table = _interopRequireDefault(require("@mui/material/Table"));
|
|
56
|
+
var _TableHead = _interopRequireDefault(require("@mui/material/TableHead"));
|
|
57
|
+
var _Tooltip = require("@mui/material/Tooltip");
|
|
58
|
+
var _InputLabel = _interopRequireDefault(require("@mui/material/InputLabel"));
|
|
59
|
+
var _Input = _interopRequireDefault(require("@mui/material/Input"));
|
|
60
|
+
var _Grow = _interopRequireDefault(require("@mui/material/Grow"));
|
|
61
|
+
var _TableFooter = _interopRequireDefault(require("@mui/material/TableFooter"));
|
|
62
|
+
var _Zoom = _interopRequireDefault(require("@mui/material/Zoom"));
|
|
63
|
+
var _ClickAwayListener = _interopRequireDefault(require("@mui/material/ClickAwayListener"));
|
|
64
|
+
var _ListSubheader = _interopRequireDefault(require("@mui/material/ListSubheader"));
|
|
65
|
+
var _Delete = _interopRequireDefault(require("@mui/icons-material/Delete"));
|
|
66
|
+
var _People = _interopRequireDefault(require("@mui/icons-material/People"));
|
|
@@ -236,10 +236,10 @@ function DocSearchHit(props) {
|
|
|
236
236
|
children: children
|
|
237
237
|
});
|
|
238
238
|
}
|
|
239
|
-
|
|
239
|
+
DocSearchHit.propTypes = {
|
|
240
240
|
children: _propTypes.default.node,
|
|
241
241
|
hit: _propTypes.default.object.isRequired
|
|
242
|
-
}
|
|
242
|
+
};
|
|
243
243
|
function AppSearch() {
|
|
244
244
|
(0, _useLazyCSS.default)('https://cdn.jsdelivr.net/npm/@docsearch/css@3.0.0-alpha.40/dist/style.min.css', '#app-search');
|
|
245
245
|
const FADE_DURATION = 100; // ms
|
|
@@ -236,10 +236,10 @@ function DocSearchHit(props) {
|
|
|
236
236
|
children: children
|
|
237
237
|
});
|
|
238
238
|
}
|
|
239
|
-
|
|
239
|
+
DocSearchHit.propTypes = {
|
|
240
240
|
children: _propTypes.default.node,
|
|
241
241
|
hit: _propTypes.default.object.isRequired
|
|
242
|
-
}
|
|
242
|
+
};
|
|
243
243
|
function AppSearch() {
|
|
244
244
|
(0, _useLazyCSS.default)('https://cdn.jsdelivr.net/npm/@docsearch/css@3.0.0-alpha.40/dist/style.min.css', '#app-search');
|
|
245
245
|
const FADE_DURATION = 100; // ms
|
|
@@ -62,7 +62,7 @@ function transformer(fileInfo, api, options) {
|
|
|
62
62
|
break;
|
|
63
63
|
}
|
|
64
64
|
case 'ImportSpecifier':
|
|
65
|
-
if (!whitelist.has(specifier.imported.name)
|
|
65
|
+
if (!whitelist.has(specifier.imported.name) && specifier.imported.name !== 'withStyles') {
|
|
66
66
|
return;
|
|
67
67
|
}
|
|
68
68
|
resultSpecifiers.push(specifier);
|
|
@@ -4,7 +4,6 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
4
4
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
5
5
|
var React = _interopRequireWildcard(require("react"));
|
|
6
6
|
var _styles = require("@mui/styles");
|
|
7
|
-
var _material = require("@mui/material");
|
|
8
7
|
var _styles2 = require("@mui/material/styles");
|
|
9
8
|
var _MenuItem = _interopRequireDefault(require("@mui/material/MenuItem"));
|
|
10
9
|
var _Tab = _interopRequireDefault(require("@mui/material/Tab"));
|
|
@@ -59,4 +58,5 @@ var _Grow = _interopRequireDefault(require("@mui/material/Grow"));
|
|
|
59
58
|
var _TableFooter = _interopRequireDefault(require("@mui/material/TableFooter"));
|
|
60
59
|
var _Zoom = _interopRequireDefault(require("@mui/material/Zoom"));
|
|
61
60
|
var _ClickAwayListener = _interopRequireDefault(require("@mui/material/ClickAwayListener"));
|
|
62
|
-
var _ListSubheader = _interopRequireDefault(require("@mui/material/ListSubheader"));
|
|
61
|
+
var _ListSubheader = _interopRequireDefault(require("@mui/material/ListSubheader"));
|
|
62
|
+
var _colors = require("@mui/material/colors");
|
|
@@ -3,4 +3,6 @@
|
|
|
3
3
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
|
|
4
4
|
var React = _interopRequireWildcard(require("react"));
|
|
5
5
|
var _styles = require("@mui/styles");
|
|
6
|
+
var _styles2 = require("@mui/material/styles");
|
|
7
|
+
var _colors = require("@mui/material/colors");
|
|
6
8
|
var _material = require("@mui/material");
|
|
@@ -29,7 +29,7 @@ function styledV6(file, api, options) {
|
|
|
29
29
|
args = path.node.arguments;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
-
// 1. collecting styles that should be
|
|
32
|
+
// 1. collecting styles that should be transformed
|
|
33
33
|
args.forEach(arg => {
|
|
34
34
|
if (arg.type === 'ArrowFunctionExpression' && arg.params[0] && arg.params[0].type === 'ObjectPattern') {
|
|
35
35
|
styles.push(arg);
|
|
@@ -23,7 +23,7 @@ function themeV6(file, api, options) {
|
|
|
23
23
|
args = [path.node];
|
|
24
24
|
}
|
|
25
25
|
|
|
26
|
-
// 1. collecting styles that should be
|
|
26
|
+
// 1. collecting styles that should be transformed
|
|
27
27
|
args.forEach(arg => {
|
|
28
28
|
if (arg.type === 'ArrowFunctionExpression' && arg.params[0] && arg.params[0].type === 'ObjectPattern') {
|
|
29
29
|
styles.push(arg);
|
|
@@ -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 _themeColorFunctions.default;
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
var _themeColorFunctions = _interopRequireDefault(require("./theme-color-functions"));
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _colorManipulator = require("@mui/system/colorManipulator");
|
|
4
|
+
const Value = styled('div')(({
|
|
5
|
+
theme
|
|
6
|
+
}) => ({
|
|
7
|
+
width: '100%',
|
|
8
|
+
height: '100%',
|
|
9
|
+
lineHeight: '100%',
|
|
10
|
+
paddingRight: 8,
|
|
11
|
+
fontVariantNumeric: 'tabular-nums',
|
|
12
|
+
display: 'flex',
|
|
13
|
+
alignItems: 'center',
|
|
14
|
+
justifyContent: 'flex-end',
|
|
15
|
+
'&.good': {
|
|
16
|
+
backgroundColor: theme.vars ? `rgba(${theme.vars.palette.success.mainChannel} / 0.3)` : (0, _colorManipulator.alpha)(theme.palette.success.main, 0.3)
|
|
17
|
+
},
|
|
18
|
+
'&.bad': {
|
|
19
|
+
backgroundColor: theme.vars ? `rgba(${theme.vars.palette.error.mainChannel} / 0.3)` : (0, _colorManipulator.alpha)(theme.palette.error.main, 0.3)
|
|
20
|
+
}
|
|
21
|
+
}));
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _colorManipulator = require("@mui/system/colorManipulator");
|
|
4
|
+
const Button = styled('button')(({
|
|
5
|
+
theme
|
|
6
|
+
}) => ({
|
|
7
|
+
backgroundColor: (0, _colorManipulator.darken)(theme.palette.primary.main, 0.1),
|
|
8
|
+
'&:active': {
|
|
9
|
+
backgroundColor: (0, _colorManipulator.darken)(theme.palette.primary.main, 0.3)
|
|
10
|
+
},
|
|
11
|
+
'&:disabled': {
|
|
12
|
+
backgroundColor: (0, _colorManipulator.darken)(theme.palette.action.disabled, 0.1)
|
|
13
|
+
}
|
|
14
|
+
}));
|
|
15
|
+
const Card = styled('div')(({
|
|
16
|
+
theme
|
|
17
|
+
}) => ({
|
|
18
|
+
boxShadow: `0 2px 4px ${(0, _colorManipulator.darken)(theme.palette.background.paper, 0.15)}`,
|
|
19
|
+
borderColor: (0, _colorManipulator.darken)(theme.palette.divider, 0.2)
|
|
20
|
+
}));
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
const Button = styled('button')(({
|
|
4
|
+
theme
|
|
5
|
+
}) => ({
|
|
6
|
+
backgroundColor: theme.darken(theme.palette.primary.main, 0.1),
|
|
7
|
+
'&:active': {
|
|
8
|
+
backgroundColor: theme.darken(theme.palette.primary.main, 0.3)
|
|
9
|
+
},
|
|
10
|
+
'&:disabled': {
|
|
11
|
+
backgroundColor: theme.darken(theme.palette.action.disabled, 0.1)
|
|
12
|
+
}
|
|
13
|
+
}));
|
|
14
|
+
const Card = styled('div')(({
|
|
15
|
+
theme
|
|
16
|
+
}) => ({
|
|
17
|
+
boxShadow: `0 2px 4px ${theme.darken(theme.palette.background.paper, 0.15)}`,
|
|
18
|
+
borderColor: theme.darken(theme.palette.divider, 0.2)
|
|
19
|
+
}));
|