@putout/plugin-putout 20.2.0 β 20.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -0
- package/lib/check-replace-code/generate-code.js +14 -3
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1240,6 +1240,8 @@ const {
|
|
|
1240
1240
|
|
|
1241
1241
|
## simplify-replace-template
|
|
1242
1242
|
|
|
1243
|
+
Checkout in π[**Putout Editor**](https://putout.cloudcmd.io/#/gist/a012fc12f4d38038da022f7c8f379fe2/c65bf97c42650aa31c5481849bc934323df892a6).
|
|
1244
|
+
|
|
1243
1245
|
### β Example of incorrect code
|
|
1244
1246
|
|
|
1245
1247
|
```js
|
|
@@ -2,18 +2,20 @@
|
|
|
2
2
|
|
|
3
3
|
const putout = require('putout');
|
|
4
4
|
const tryCatch = require('try-catch');
|
|
5
|
-
const noop = () => {};
|
|
6
5
|
|
|
6
|
+
const noop = () => {};
|
|
7
7
|
const {types, operator} = putout;
|
|
8
|
-
const {replaceWith} = operator;
|
|
9
8
|
|
|
10
9
|
const {
|
|
11
10
|
ArrayPattern,
|
|
12
11
|
BlockStatement,
|
|
13
12
|
ObjectExpression,
|
|
14
13
|
ObjectPattern,
|
|
14
|
+
Identifier,
|
|
15
15
|
} = types;
|
|
16
16
|
|
|
17
|
+
const {replaceWith} = operator;
|
|
18
|
+
|
|
17
19
|
module.exports = (rootPath, key) => {
|
|
18
20
|
const getVar = createVarStore(rootPath);
|
|
19
21
|
|
|
@@ -64,8 +66,17 @@ module.exports = (rootPath, key) => {
|
|
|
64
66
|
if (name === '__object')
|
|
65
67
|
return objectify(path);
|
|
66
68
|
|
|
67
|
-
if (name === '__body')
|
|
69
|
+
if (name === '__body') {
|
|
70
|
+
if (path.parentPath.isClassProperty()) {
|
|
71
|
+
const key = Identifier(getVar());
|
|
72
|
+
|
|
73
|
+
replaceWith(path, key);
|
|
74
|
+
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
|
|
68
78
|
replaceWith(path, BlockStatement([]));
|
|
79
|
+
}
|
|
69
80
|
},
|
|
70
81
|
}],
|
|
71
82
|
],
|
package/package.json
CHANGED