@microsoft/sp-tslint-rules 1.17.4 → 1.18.0-beta.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/lib/importRequiresChunkNameRule.d.ts.map +1 -1
- package/lib/importRequiresChunkNameRule.js +0 -1
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +4 -0
- package/lib/noAsyncAwaitRule.d.ts.map +1 -1
- package/lib/noAsyncAwaitRule.js +0 -1
- package/lib/noRequireEnsureRule.d.ts.map +1 -1
- package/lib/noRequireEnsureRule.js +0 -1
- package/lib/pairReactDomRenderUnmountRule.d.ts +4 -4
- package/lib/pairReactDomRenderUnmountRule.d.ts.map +1 -1
- package/lib/pairReactDomRenderUnmountRule.js +9 -10
- package/lib/validKillSwitchGuidRule.d.ts.map +1 -1
- package/lib/validKillSwitchGuidRule.js +0 -1
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"importRequiresChunkNameRule.d.ts","sourceRoot":"","sources":["../src/importRequiresChunkNameRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAe/B;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"importRequiresChunkNameRule.d.ts","sourceRoot":"","sources":["../src/importRequiresChunkNameRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAe/B;;;;GAIG;AACH,qBAAa,IAAK,SAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;IAC/C,OAAc,QAAQ,EAAE,IAAI,CAAC,aAAa,CAQxC;IAEK,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE;CAqD5D"}
|
|
@@ -44,7 +44,6 @@ const COMMENT_PART_REGEX = /^([A-Za-z]+)\s*:\s*('[^']+'|"[^"]+")$/;
|
|
|
44
44
|
*
|
|
45
45
|
* See documentation here: https://webpack.js.org/api/module-methods/#import-
|
|
46
46
|
*/
|
|
47
|
-
// tslint:disable:export-name
|
|
48
47
|
class Rule extends Lint.Rules.AbstractRule {
|
|
49
48
|
apply(sourceFile) {
|
|
50
49
|
return this.applyWithFunction(sourceFile, (ctx) => {
|
package/lib/index.d.ts
CHANGED
package/lib/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,CAAC"}
|
package/lib/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"noAsyncAwaitRule.d.ts","sourceRoot":"","sources":["../src/noAsyncAwaitRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAI/B;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"noAsyncAwaitRule.d.ts","sourceRoot":"","sources":["../src/noAsyncAwaitRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAI/B;;;;GAIG;AACH,qBAAa,IAAK,SAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;IAC/C,OAAc,QAAQ,EAAE,IAAI,CAAC,aAAa,CAQxC;IAEK,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE;CAGxD"}
|
package/lib/noAsyncAwaitRule.js
CHANGED
|
@@ -32,7 +32,6 @@ const Lint = __importStar(require("tslint"));
|
|
|
32
32
|
* modifier then we defer to TSC to fail on `await` keywords since `await` has to be used
|
|
33
33
|
* within an `async` context.
|
|
34
34
|
*/
|
|
35
|
-
// tslint:disable-next-line:export-name
|
|
36
35
|
class Rule extends Lint.Rules.AbstractRule {
|
|
37
36
|
apply(source) {
|
|
38
37
|
return this.applyWithFunction(source, noAsyncAwait);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"noRequireEnsureRule.d.ts","sourceRoot":"","sources":["../src/noRequireEnsureRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"noRequireEnsureRule.d.ts","sourceRoot":"","sources":["../src/noRequireEnsureRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,qBAAa,IAAK,SAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;IAC/C,OAAc,QAAQ,EAAE,IAAI,CAAC,aAAa,CAQxC;IAEK,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE;CAyB5D"}
|
|
@@ -27,7 +27,6 @@ exports.Rule = void 0;
|
|
|
27
27
|
const tsutils_1 = require("tsutils");
|
|
28
28
|
const ts = __importStar(require("typescript"));
|
|
29
29
|
const Lint = __importStar(require("tslint"));
|
|
30
|
-
// tslint:disable:export-name
|
|
31
30
|
class Rule extends Lint.Rules.AbstractRule {
|
|
32
31
|
apply(sourceFile) {
|
|
33
32
|
return this.applyWithFunction(sourceFile, (ctx) => {
|
|
@@ -2,10 +2,10 @@ import * as ts from 'typescript';
|
|
|
2
2
|
import * as Lint from 'tslint';
|
|
3
3
|
export declare class Rule extends Lint.Rules.AbstractRule {
|
|
4
4
|
static metadata: Lint.IRuleMetadata;
|
|
5
|
-
private
|
|
5
|
+
private _reactDOMImportNamespaceName;
|
|
6
6
|
apply(sourceFile: ts.SourceFile): Lint.RuleFailure[];
|
|
7
|
-
private
|
|
8
|
-
private
|
|
9
|
-
private
|
|
7
|
+
private _walk;
|
|
8
|
+
private _getReactDOMImportNamespaceName;
|
|
9
|
+
private _isReactDOMCallExpression;
|
|
10
10
|
}
|
|
11
11
|
//# sourceMappingURL=pairReactDomRenderUnmountRule.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pairReactDomRenderUnmountRule.d.ts","sourceRoot":"","sources":["../src/pairReactDomRenderUnmountRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"pairReactDomRenderUnmountRule.d.ts","sourceRoot":"","sources":["../src/pairReactDomRenderUnmountRule.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,qBAAa,IAAK,SAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;IAC/C,OAAc,QAAQ,EAAE,IAAI,CAAC,aAAa,CAUxC;IAEF,OAAO,CAAC,4BAA4B,CAAqB;IAElD,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE;IAI3D,OAAO,CAAC,KAAK;IAwCb,OAAO,CAAC,+BAA+B;IAoBvC,OAAO,CAAC,yBAAyB;CAclC"}
|
|
@@ -27,27 +27,26 @@ exports.Rule = void 0;
|
|
|
27
27
|
const tsUtils = __importStar(require("tsutils"));
|
|
28
28
|
const ts = __importStar(require("typescript"));
|
|
29
29
|
const Lint = __importStar(require("tslint"));
|
|
30
|
-
// tslint:disable:export-name
|
|
31
30
|
class Rule extends Lint.Rules.AbstractRule {
|
|
32
31
|
apply(sourceFile) {
|
|
33
|
-
return this.applyWithFunction(sourceFile, this.
|
|
32
|
+
return this.applyWithFunction(sourceFile, this._walk.bind(this));
|
|
34
33
|
}
|
|
35
|
-
|
|
34
|
+
_walk(ctx) {
|
|
36
35
|
const renderCalls = [];
|
|
37
36
|
const unmountCalls = [];
|
|
38
37
|
// Do not convert `callback` to a function. It references `this` keyword inside it.
|
|
39
38
|
const callback = (node) => {
|
|
40
|
-
const reactDOMImportNamespaceName = this.
|
|
39
|
+
const reactDOMImportNamespaceName = this._getReactDOMImportNamespaceName(node);
|
|
41
40
|
if (reactDOMImportNamespaceName) {
|
|
42
|
-
this.
|
|
41
|
+
this._reactDOMImportNamespaceName = reactDOMImportNamespaceName;
|
|
43
42
|
return;
|
|
44
43
|
}
|
|
45
|
-
const isRenderCallExpression = this.
|
|
44
|
+
const isRenderCallExpression = this._isReactDOMCallExpression(node, 'render');
|
|
46
45
|
if (isRenderCallExpression) {
|
|
47
46
|
renderCalls.push(node);
|
|
48
47
|
return;
|
|
49
48
|
}
|
|
50
|
-
const isUnmountCallExpression = this.
|
|
49
|
+
const isUnmountCallExpression = this._isReactDOMCallExpression(node, 'unmountComponentAtNode');
|
|
51
50
|
if (isUnmountCallExpression) {
|
|
52
51
|
unmountCalls.push(node);
|
|
53
52
|
return;
|
|
@@ -62,7 +61,7 @@ class Rule extends Lint.Rules.AbstractRule {
|
|
|
62
61
|
});
|
|
63
62
|
}
|
|
64
63
|
}
|
|
65
|
-
|
|
64
|
+
_getReactDOMImportNamespaceName(node) {
|
|
66
65
|
if (
|
|
67
66
|
// import * as ReactDOM from 'react-dom'
|
|
68
67
|
tsUtils.isImportDeclaration(node) &&
|
|
@@ -81,7 +80,7 @@ class Rule extends Lint.Rules.AbstractRule {
|
|
|
81
80
|
return undefined;
|
|
82
81
|
}
|
|
83
82
|
}
|
|
84
|
-
|
|
83
|
+
_isReactDOMCallExpression(node, methodName) {
|
|
85
84
|
return (
|
|
86
85
|
// ReactDOM.method(param1, param2)
|
|
87
86
|
tsUtils.isCallExpression(node) &&
|
|
@@ -89,7 +88,7 @@ class Rule extends Lint.Rules.AbstractRule {
|
|
|
89
88
|
tsUtils.isPropertyAccessExpression(node.expression) &&
|
|
90
89
|
// ReactDOM
|
|
91
90
|
tsUtils.isIdentifier(node.expression.expression) &&
|
|
92
|
-
node.expression.expression.text === this.
|
|
91
|
+
node.expression.expression.text === this._reactDOMImportNamespaceName &&
|
|
93
92
|
// method
|
|
94
93
|
tsUtils.isIdentifier(node.expression.name) &&
|
|
95
94
|
node.expression.name.text === methodName);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validKillSwitchGuidRule.d.ts","sourceRoot":"","sources":["../src/validKillSwitchGuidRule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"validKillSwitchGuidRule.d.ts","sourceRoot":"","sources":["../src/validKillSwitchGuidRule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,QAAQ,CAAC;AAE/B,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AAEjC;;;;GAIG;AACH,qBAAa,IAAK,SAAQ,IAAI,CAAC,KAAK,CAAC,YAAY;IAC/C,OAAc,QAAQ,EAAE,IAAI,CAAC,aAAa,CAQxC;IAEK,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,GAAG,IAAI,CAAC,WAAW,EAAE;CAGxD"}
|
|
@@ -32,7 +32,6 @@ const ts = __importStar(require("typescript"));
|
|
|
32
32
|
* JavaScript does not have a native GUID type. We removed expensive runtime parsing during production
|
|
33
33
|
* builds when checking kill switches. In order to ensure type safety, we are validating at build time with tslint.
|
|
34
34
|
*/
|
|
35
|
-
// tslint:disable-next-line:export-name
|
|
36
35
|
class Rule extends Lint.Rules.AbstractRule {
|
|
37
36
|
apply(source) {
|
|
38
37
|
return this.applyWithFunction(source, validKillSwitchGuid);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@microsoft/sp-tslint-rules",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.18.0-beta.2",
|
|
4
4
|
"description": "SharePoint Framework tslint rules",
|
|
5
5
|
"license": "https://aka.ms/spfx/license",
|
|
6
6
|
"homepage": "http://aka.ms/spfx",
|
|
@@ -14,8 +14,9 @@
|
|
|
14
14
|
"typescript": "4.7.4"
|
|
15
15
|
},
|
|
16
16
|
"devDependencies": {
|
|
17
|
-
"@rushstack/heft": "0.
|
|
18
|
-
"@rushstack/node-core-library": "3.
|
|
17
|
+
"@rushstack/heft": "0.50.6",
|
|
18
|
+
"@rushstack/node-core-library": "3.59.4",
|
|
19
|
+
"eslint": "8.7.0",
|
|
19
20
|
"@odsp-web-tools/internal-node-rig": "0.1.0"
|
|
20
21
|
},
|
|
21
22
|
"scripts": {
|