eslint-plugin-rxjs-x 0.9.0 → 0.9.1
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/dist/index.d.mts +2 -1
- package/dist/index.d.ts +2 -1
- package/dist/index.js +41 -11
- package/dist/index.mjs +99 -69
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -18,12 +18,13 @@ declare const allRules: {
|
|
|
18
18
|
description: "Disallow banned operators.";
|
|
19
19
|
requiresTypeChecking: true;
|
|
20
20
|
}, TSESLint.RuleListener>;
|
|
21
|
-
finnish: TSESLint.RuleModule<"shouldBeFinnish" | "shouldNotBeFinnish", readonly {
|
|
21
|
+
finnish: TSESLint.RuleModule<"shouldBeFinnish" | "shouldBeFinnishProperty" | "shouldNotBeFinnish", readonly {
|
|
22
22
|
functions?: boolean;
|
|
23
23
|
methods?: boolean;
|
|
24
24
|
names?: Record<string, boolean>;
|
|
25
25
|
parameters?: boolean;
|
|
26
26
|
properties?: boolean;
|
|
27
|
+
objects?: boolean;
|
|
27
28
|
strict?: boolean;
|
|
28
29
|
types?: Record<string, boolean>;
|
|
29
30
|
variables?: boolean;
|
package/dist/index.d.ts
CHANGED
|
@@ -18,12 +18,13 @@ declare const allRules: {
|
|
|
18
18
|
description: "Disallow banned operators.";
|
|
19
19
|
requiresTypeChecking: true;
|
|
20
20
|
}, TSESLint.RuleListener>;
|
|
21
|
-
finnish: TSESLint.RuleModule<"shouldBeFinnish" | "shouldNotBeFinnish", readonly {
|
|
21
|
+
finnish: TSESLint.RuleModule<"shouldBeFinnish" | "shouldBeFinnishProperty" | "shouldNotBeFinnish", readonly {
|
|
22
22
|
functions?: boolean;
|
|
23
23
|
methods?: boolean;
|
|
24
24
|
names?: Record<string, boolean>;
|
|
25
25
|
parameters?: boolean;
|
|
26
26
|
properties?: boolean;
|
|
27
|
+
objects?: boolean;
|
|
27
28
|
strict?: boolean;
|
|
28
29
|
types?: Record<string, boolean>;
|
|
29
30
|
variables?: boolean;
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }// package.json
|
|
2
2
|
var name = "eslint-plugin-rxjs-x";
|
|
3
|
-
var version = "0.9.
|
|
3
|
+
var version = "0.9.1";
|
|
4
4
|
|
|
5
5
|
// src/configs/recommended.ts
|
|
6
6
|
var createRecommendedConfig = (plugin2) => ({
|
|
@@ -298,12 +298,21 @@ function isPropertyDefinition(node) {
|
|
|
298
298
|
function isSpreadElement(node) {
|
|
299
299
|
return node.type === _utils.AST_NODE_TYPES.SpreadElement;
|
|
300
300
|
}
|
|
301
|
+
function isTSAsExpression(node) {
|
|
302
|
+
return node.type === _utils.AST_NODE_TYPES.TSAsExpression;
|
|
303
|
+
}
|
|
304
|
+
function isTSSatisfiesExpression(node) {
|
|
305
|
+
return node.type === _utils.AST_NODE_TYPES.TSSatisfiesExpression;
|
|
306
|
+
}
|
|
301
307
|
function isUnaryExpression(node) {
|
|
302
308
|
return node.type === _utils.AST_NODE_TYPES.UnaryExpression;
|
|
303
309
|
}
|
|
304
310
|
function isUnionType(node) {
|
|
305
311
|
return node.type === _utils.AST_NODE_TYPES.TSUnionType;
|
|
306
312
|
}
|
|
313
|
+
function isVariableDeclarator(node) {
|
|
314
|
+
return node.type === _utils.AST_NODE_TYPES.VariableDeclarator;
|
|
315
|
+
}
|
|
307
316
|
|
|
308
317
|
// src/etc/get-type-services.ts
|
|
309
318
|
function getTypeServices(context) {
|
|
@@ -583,6 +592,7 @@ var banOperatorsRule = ruleCreator({
|
|
|
583
592
|
// src/rules/finnish.ts
|
|
584
593
|
|
|
585
594
|
var defaultOptions3 = [];
|
|
595
|
+
var baseShouldBeFinnish = "Finnish notation should be used here.";
|
|
586
596
|
var finnishRule = ruleCreator({
|
|
587
597
|
defaultOptions: defaultOptions3,
|
|
588
598
|
meta: {
|
|
@@ -591,7 +601,8 @@ var finnishRule = ruleCreator({
|
|
|
591
601
|
requiresTypeChecking: true
|
|
592
602
|
},
|
|
593
603
|
messages: {
|
|
594
|
-
shouldBeFinnish:
|
|
604
|
+
shouldBeFinnish: baseShouldBeFinnish,
|
|
605
|
+
shouldBeFinnishProperty: `${baseShouldBeFinnish} Add a type annotation, assertion, or 'satisfies' to silence this rule.`,
|
|
595
606
|
shouldNotBeFinnish: "Finnish notation should not be used here."
|
|
596
607
|
},
|
|
597
608
|
schema: [
|
|
@@ -601,7 +612,8 @@ var finnishRule = ruleCreator({
|
|
|
601
612
|
methods: { type: "boolean", description: "Require for methods." },
|
|
602
613
|
names: { type: "object", description: "Enforce for specific names. Keys are a RegExp, values are a boolean." },
|
|
603
614
|
parameters: { type: "boolean", description: "Require for parameters." },
|
|
604
|
-
properties: { type: "boolean", description:
|
|
615
|
+
properties: { type: "boolean", description: 'Require for properties, except object literal keys (see "objects" option).' },
|
|
616
|
+
objects: { type: "boolean", description: "Require for object literal keys." },
|
|
605
617
|
strict: { type: "boolean", description: "Disallow Finnish notation for non-Observables." },
|
|
606
618
|
types: { type: "object", description: "Enforce for specific types. Keys are a RegExp, values are a boolean." },
|
|
607
619
|
variables: { type: "boolean", description: "Require for variables." }
|
|
@@ -627,6 +639,7 @@ var finnishRule = ruleCreator({
|
|
|
627
639
|
methods: true,
|
|
628
640
|
parameters: true,
|
|
629
641
|
properties: true,
|
|
642
|
+
objects: true,
|
|
630
643
|
variables: true,
|
|
631
644
|
...config
|
|
632
645
|
};
|
|
@@ -656,7 +669,7 @@ var finnishRule = ruleCreator({
|
|
|
656
669
|
validate: false
|
|
657
670
|
});
|
|
658
671
|
}
|
|
659
|
-
function checkNode(nameNode, typeNode) {
|
|
672
|
+
function checkNode(nameNode, typeNode, shouldMessage = "shouldBeFinnish") {
|
|
660
673
|
const tsNode = esTreeNodeToTSNodeMap.get(nameNode);
|
|
661
674
|
const text = tsNode.getText();
|
|
662
675
|
const hasFinnish = text.endsWith("$");
|
|
@@ -667,7 +680,7 @@ var finnishRule = ruleCreator({
|
|
|
667
680
|
} : () => {
|
|
668
681
|
context.report({
|
|
669
682
|
loc: getLoc(tsNode),
|
|
670
|
-
messageId:
|
|
683
|
+
messageId: shouldMessage
|
|
671
684
|
});
|
|
672
685
|
};
|
|
673
686
|
const shouldNotBeFinnish = hasFinnish ? () => {
|
|
@@ -718,7 +731,7 @@ var finnishRule = ruleCreator({
|
|
|
718
731
|
if (!found) {
|
|
719
732
|
return;
|
|
720
733
|
}
|
|
721
|
-
if (!validate.variables && found
|
|
734
|
+
if (!validate.variables && isVariableDeclarator(found)) {
|
|
722
735
|
return;
|
|
723
736
|
}
|
|
724
737
|
if (!validate.parameters) {
|
|
@@ -779,12 +792,29 @@ var finnishRule = ruleCreator({
|
|
|
779
792
|
}
|
|
780
793
|
},
|
|
781
794
|
"ObjectExpression > Property[computed=false] > Identifier": (node) => {
|
|
782
|
-
if (validate.
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
795
|
+
if (!validate.objects) {
|
|
796
|
+
return;
|
|
797
|
+
}
|
|
798
|
+
const found = findParent(
|
|
799
|
+
node,
|
|
800
|
+
"CallExpression",
|
|
801
|
+
"VariableDeclarator",
|
|
802
|
+
"TSSatisfiesExpression",
|
|
803
|
+
"TSAsExpression"
|
|
804
|
+
);
|
|
805
|
+
if (found) {
|
|
806
|
+
if (isCallExpression(found)) {
|
|
807
|
+
return;
|
|
808
|
+
} else if (isVariableDeclarator(found) && !!found.id.typeAnnotation) {
|
|
809
|
+
return;
|
|
810
|
+
} else if (isTSAsExpression(found) || isTSSatisfiesExpression(found)) {
|
|
811
|
+
return;
|
|
786
812
|
}
|
|
787
813
|
}
|
|
814
|
+
const parent = node.parent;
|
|
815
|
+
if (node === parent.key) {
|
|
816
|
+
checkNode(node, void 0, "shouldBeFinnishProperty");
|
|
817
|
+
}
|
|
788
818
|
},
|
|
789
819
|
"ObjectPattern > Property > Identifier": (node) => {
|
|
790
820
|
const found = findParent(
|
|
@@ -797,7 +827,7 @@ var finnishRule = ruleCreator({
|
|
|
797
827
|
if (!found) {
|
|
798
828
|
return;
|
|
799
829
|
}
|
|
800
|
-
if (!validate.variables && found
|
|
830
|
+
if (!validate.variables && isVariableDeclarator(found)) {
|
|
801
831
|
return;
|
|
802
832
|
}
|
|
803
833
|
if (!validate.parameters) {
|
package/dist/index.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// package.json
|
|
2
2
|
var name = "eslint-plugin-rxjs-x";
|
|
3
|
-
var version = "0.9.
|
|
3
|
+
var version = "0.9.1";
|
|
4
4
|
|
|
5
5
|
// src/configs/recommended.ts
|
|
6
6
|
var createRecommendedConfig = (plugin2) => ({
|
|
@@ -298,12 +298,21 @@ function isPropertyDefinition(node) {
|
|
|
298
298
|
function isSpreadElement(node) {
|
|
299
299
|
return node.type === AST_NODE_TYPES.SpreadElement;
|
|
300
300
|
}
|
|
301
|
+
function isTSAsExpression(node) {
|
|
302
|
+
return node.type === AST_NODE_TYPES.TSAsExpression;
|
|
303
|
+
}
|
|
304
|
+
function isTSSatisfiesExpression(node) {
|
|
305
|
+
return node.type === AST_NODE_TYPES.TSSatisfiesExpression;
|
|
306
|
+
}
|
|
301
307
|
function isUnaryExpression(node) {
|
|
302
308
|
return node.type === AST_NODE_TYPES.UnaryExpression;
|
|
303
309
|
}
|
|
304
310
|
function isUnionType(node) {
|
|
305
311
|
return node.type === AST_NODE_TYPES.TSUnionType;
|
|
306
312
|
}
|
|
313
|
+
function isVariableDeclarator(node) {
|
|
314
|
+
return node.type === AST_NODE_TYPES.VariableDeclarator;
|
|
315
|
+
}
|
|
307
316
|
|
|
308
317
|
// src/etc/get-type-services.ts
|
|
309
318
|
function getTypeServices(context) {
|
|
@@ -581,8 +590,9 @@ var banOperatorsRule = ruleCreator({
|
|
|
581
590
|
});
|
|
582
591
|
|
|
583
592
|
// src/rules/finnish.ts
|
|
584
|
-
import {
|
|
593
|
+
import { ESLintUtils as ESLintUtils3 } from "@typescript-eslint/utils";
|
|
585
594
|
var defaultOptions3 = [];
|
|
595
|
+
var baseShouldBeFinnish = "Finnish notation should be used here.";
|
|
586
596
|
var finnishRule = ruleCreator({
|
|
587
597
|
defaultOptions: defaultOptions3,
|
|
588
598
|
meta: {
|
|
@@ -591,7 +601,8 @@ var finnishRule = ruleCreator({
|
|
|
591
601
|
requiresTypeChecking: true
|
|
592
602
|
},
|
|
593
603
|
messages: {
|
|
594
|
-
shouldBeFinnish:
|
|
604
|
+
shouldBeFinnish: baseShouldBeFinnish,
|
|
605
|
+
shouldBeFinnishProperty: `${baseShouldBeFinnish} Add a type annotation, assertion, or 'satisfies' to silence this rule.`,
|
|
595
606
|
shouldNotBeFinnish: "Finnish notation should not be used here."
|
|
596
607
|
},
|
|
597
608
|
schema: [
|
|
@@ -601,7 +612,8 @@ var finnishRule = ruleCreator({
|
|
|
601
612
|
methods: { type: "boolean", description: "Require for methods." },
|
|
602
613
|
names: { type: "object", description: "Enforce for specific names. Keys are a RegExp, values are a boolean." },
|
|
603
614
|
parameters: { type: "boolean", description: "Require for parameters." },
|
|
604
|
-
properties: { type: "boolean", description:
|
|
615
|
+
properties: { type: "boolean", description: 'Require for properties, except object literal keys (see "objects" option).' },
|
|
616
|
+
objects: { type: "boolean", description: "Require for object literal keys." },
|
|
605
617
|
strict: { type: "boolean", description: "Disallow Finnish notation for non-Observables." },
|
|
606
618
|
types: { type: "object", description: "Enforce for specific types. Keys are a RegExp, values are a boolean." },
|
|
607
619
|
variables: { type: "boolean", description: "Require for variables." }
|
|
@@ -627,6 +639,7 @@ var finnishRule = ruleCreator({
|
|
|
627
639
|
methods: true,
|
|
628
640
|
parameters: true,
|
|
629
641
|
properties: true,
|
|
642
|
+
objects: true,
|
|
630
643
|
variables: true,
|
|
631
644
|
...config
|
|
632
645
|
};
|
|
@@ -656,7 +669,7 @@ var finnishRule = ruleCreator({
|
|
|
656
669
|
validate: false
|
|
657
670
|
});
|
|
658
671
|
}
|
|
659
|
-
function checkNode(nameNode, typeNode) {
|
|
672
|
+
function checkNode(nameNode, typeNode, shouldMessage = "shouldBeFinnish") {
|
|
660
673
|
const tsNode = esTreeNodeToTSNodeMap.get(nameNode);
|
|
661
674
|
const text = tsNode.getText();
|
|
662
675
|
const hasFinnish = text.endsWith("$");
|
|
@@ -667,7 +680,7 @@ var finnishRule = ruleCreator({
|
|
|
667
680
|
} : () => {
|
|
668
681
|
context.report({
|
|
669
682
|
loc: getLoc(tsNode),
|
|
670
|
-
messageId:
|
|
683
|
+
messageId: shouldMessage
|
|
671
684
|
});
|
|
672
685
|
};
|
|
673
686
|
const shouldNotBeFinnish = hasFinnish ? () => {
|
|
@@ -718,7 +731,7 @@ var finnishRule = ruleCreator({
|
|
|
718
731
|
if (!found) {
|
|
719
732
|
return;
|
|
720
733
|
}
|
|
721
|
-
if (!validate.variables && found
|
|
734
|
+
if (!validate.variables && isVariableDeclarator(found)) {
|
|
722
735
|
return;
|
|
723
736
|
}
|
|
724
737
|
if (!validate.parameters) {
|
|
@@ -779,12 +792,29 @@ var finnishRule = ruleCreator({
|
|
|
779
792
|
}
|
|
780
793
|
},
|
|
781
794
|
"ObjectExpression > Property[computed=false] > Identifier": (node) => {
|
|
782
|
-
if (validate.
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
795
|
+
if (!validate.objects) {
|
|
796
|
+
return;
|
|
797
|
+
}
|
|
798
|
+
const found = findParent(
|
|
799
|
+
node,
|
|
800
|
+
"CallExpression",
|
|
801
|
+
"VariableDeclarator",
|
|
802
|
+
"TSSatisfiesExpression",
|
|
803
|
+
"TSAsExpression"
|
|
804
|
+
);
|
|
805
|
+
if (found) {
|
|
806
|
+
if (isCallExpression(found)) {
|
|
807
|
+
return;
|
|
808
|
+
} else if (isVariableDeclarator(found) && !!found.id.typeAnnotation) {
|
|
809
|
+
return;
|
|
810
|
+
} else if (isTSAsExpression(found) || isTSSatisfiesExpression(found)) {
|
|
811
|
+
return;
|
|
786
812
|
}
|
|
787
813
|
}
|
|
814
|
+
const parent = node.parent;
|
|
815
|
+
if (node === parent.key) {
|
|
816
|
+
checkNode(node, void 0, "shouldBeFinnishProperty");
|
|
817
|
+
}
|
|
788
818
|
},
|
|
789
819
|
"ObjectPattern > Property > Identifier": (node) => {
|
|
790
820
|
const found = findParent(
|
|
@@ -797,7 +827,7 @@ var finnishRule = ruleCreator({
|
|
|
797
827
|
if (!found) {
|
|
798
828
|
return;
|
|
799
829
|
}
|
|
800
|
-
if (!validate.variables && found
|
|
830
|
+
if (!validate.variables && isVariableDeclarator(found)) {
|
|
801
831
|
return;
|
|
802
832
|
}
|
|
803
833
|
if (!validate.parameters) {
|
|
@@ -2048,7 +2078,7 @@ var noIgnoredTakewhileValueRule = ruleCreator({
|
|
|
2048
2078
|
|
|
2049
2079
|
// src/rules/no-implicit-any-catch.ts
|
|
2050
2080
|
import {
|
|
2051
|
-
AST_NODE_TYPES as
|
|
2081
|
+
AST_NODE_TYPES as AST_NODE_TYPES4
|
|
2052
2082
|
} from "@typescript-eslint/utils";
|
|
2053
2083
|
function isParenthesised(sourceCode, node) {
|
|
2054
2084
|
const before = sourceCode.getTokenBefore(node);
|
|
@@ -2126,7 +2156,7 @@ var noImplicitAnyCatchRule = ruleCreator({
|
|
|
2126
2156
|
const {
|
|
2127
2157
|
typeAnnotation: { type }
|
|
2128
2158
|
} = typeAnnotation;
|
|
2129
|
-
if (type ===
|
|
2159
|
+
if (type === AST_NODE_TYPES4.TSAnyKeyword) {
|
|
2130
2160
|
if (allowExplicitAny) {
|
|
2131
2161
|
return;
|
|
2132
2162
|
}
|
|
@@ -2140,7 +2170,7 @@ var noImplicitAnyCatchRule = ruleCreator({
|
|
|
2140
2170
|
}
|
|
2141
2171
|
]
|
|
2142
2172
|
});
|
|
2143
|
-
} else if (type !==
|
|
2173
|
+
} else if (type !== AST_NODE_TYPES4.TSUnknownKeyword) {
|
|
2144
2174
|
context.report({
|
|
2145
2175
|
messageId: "narrowed",
|
|
2146
2176
|
node: param,
|
|
@@ -2309,7 +2339,7 @@ var noInternalRule = ruleCreator({
|
|
|
2309
2339
|
});
|
|
2310
2340
|
|
|
2311
2341
|
// src/rules/no-misused-observables.ts
|
|
2312
|
-
import { AST_NODE_TYPES as
|
|
2342
|
+
import { AST_NODE_TYPES as AST_NODE_TYPES5, ESLintUtils as ESLintUtils9 } from "@typescript-eslint/utils";
|
|
2313
2343
|
import { getFunctionHeadLocation, isFunction } from "@typescript-eslint/utils/ast-utils";
|
|
2314
2344
|
import * as tsutils4 from "ts-api-utils";
|
|
2315
2345
|
import ts5 from "typescript";
|
|
@@ -2675,55 +2705,55 @@ function getPropertyContextualType(checker, tsNode) {
|
|
|
2675
2705
|
}
|
|
2676
2706
|
function isPossiblyFunctionType(node) {
|
|
2677
2707
|
switch (node.typeAnnotation.type) {
|
|
2678
|
-
case
|
|
2679
|
-
case
|
|
2680
|
-
case
|
|
2681
|
-
case
|
|
2682
|
-
case
|
|
2683
|
-
case
|
|
2684
|
-
case
|
|
2685
|
-
case
|
|
2686
|
-
case
|
|
2687
|
-
case
|
|
2688
|
-
case
|
|
2689
|
-
case
|
|
2690
|
-
case
|
|
2708
|
+
case AST_NODE_TYPES5.TSConditionalType:
|
|
2709
|
+
case AST_NODE_TYPES5.TSConstructorType:
|
|
2710
|
+
case AST_NODE_TYPES5.TSFunctionType:
|
|
2711
|
+
case AST_NODE_TYPES5.TSImportType:
|
|
2712
|
+
case AST_NODE_TYPES5.TSIndexedAccessType:
|
|
2713
|
+
case AST_NODE_TYPES5.TSInferType:
|
|
2714
|
+
case AST_NODE_TYPES5.TSIntersectionType:
|
|
2715
|
+
case AST_NODE_TYPES5.TSQualifiedName:
|
|
2716
|
+
case AST_NODE_TYPES5.TSThisType:
|
|
2717
|
+
case AST_NODE_TYPES5.TSTypeOperator:
|
|
2718
|
+
case AST_NODE_TYPES5.TSTypeQuery:
|
|
2719
|
+
case AST_NODE_TYPES5.TSTypeReference:
|
|
2720
|
+
case AST_NODE_TYPES5.TSUnionType:
|
|
2691
2721
|
return true;
|
|
2692
|
-
case
|
|
2722
|
+
case AST_NODE_TYPES5.TSTypeLiteral:
|
|
2693
2723
|
return node.typeAnnotation.members.some(
|
|
2694
|
-
(member) => member.type ===
|
|
2724
|
+
(member) => member.type === AST_NODE_TYPES5.TSCallSignatureDeclaration || member.type === AST_NODE_TYPES5.TSConstructSignatureDeclaration
|
|
2695
2725
|
);
|
|
2696
|
-
case
|
|
2697
|
-
case
|
|
2698
|
-
case
|
|
2699
|
-
case
|
|
2700
|
-
case
|
|
2701
|
-
case
|
|
2702
|
-
case
|
|
2703
|
-
case
|
|
2704
|
-
case
|
|
2705
|
-
case
|
|
2706
|
-
case
|
|
2707
|
-
case
|
|
2708
|
-
case
|
|
2709
|
-
case
|
|
2710
|
-
case
|
|
2711
|
-
case
|
|
2712
|
-
case
|
|
2713
|
-
case
|
|
2714
|
-
case
|
|
2715
|
-
case
|
|
2716
|
-
case
|
|
2717
|
-
case
|
|
2718
|
-
case
|
|
2719
|
-
case
|
|
2720
|
-
case
|
|
2721
|
-
case
|
|
2722
|
-
case
|
|
2723
|
-
case
|
|
2724
|
-
case
|
|
2725
|
-
case
|
|
2726
|
-
case
|
|
2726
|
+
case AST_NODE_TYPES5.TSAbstractKeyword:
|
|
2727
|
+
case AST_NODE_TYPES5.TSAnyKeyword:
|
|
2728
|
+
case AST_NODE_TYPES5.TSArrayType:
|
|
2729
|
+
case AST_NODE_TYPES5.TSAsyncKeyword:
|
|
2730
|
+
case AST_NODE_TYPES5.TSBigIntKeyword:
|
|
2731
|
+
case AST_NODE_TYPES5.TSBooleanKeyword:
|
|
2732
|
+
case AST_NODE_TYPES5.TSDeclareKeyword:
|
|
2733
|
+
case AST_NODE_TYPES5.TSExportKeyword:
|
|
2734
|
+
case AST_NODE_TYPES5.TSIntrinsicKeyword:
|
|
2735
|
+
case AST_NODE_TYPES5.TSLiteralType:
|
|
2736
|
+
case AST_NODE_TYPES5.TSMappedType:
|
|
2737
|
+
case AST_NODE_TYPES5.TSNamedTupleMember:
|
|
2738
|
+
case AST_NODE_TYPES5.TSNeverKeyword:
|
|
2739
|
+
case AST_NODE_TYPES5.TSNullKeyword:
|
|
2740
|
+
case AST_NODE_TYPES5.TSNumberKeyword:
|
|
2741
|
+
case AST_NODE_TYPES5.TSObjectKeyword:
|
|
2742
|
+
case AST_NODE_TYPES5.TSOptionalType:
|
|
2743
|
+
case AST_NODE_TYPES5.TSPrivateKeyword:
|
|
2744
|
+
case AST_NODE_TYPES5.TSProtectedKeyword:
|
|
2745
|
+
case AST_NODE_TYPES5.TSPublicKeyword:
|
|
2746
|
+
case AST_NODE_TYPES5.TSReadonlyKeyword:
|
|
2747
|
+
case AST_NODE_TYPES5.TSRestType:
|
|
2748
|
+
case AST_NODE_TYPES5.TSStaticKeyword:
|
|
2749
|
+
case AST_NODE_TYPES5.TSStringKeyword:
|
|
2750
|
+
case AST_NODE_TYPES5.TSSymbolKeyword:
|
|
2751
|
+
case AST_NODE_TYPES5.TSTemplateLiteralType:
|
|
2752
|
+
case AST_NODE_TYPES5.TSTupleType:
|
|
2753
|
+
case AST_NODE_TYPES5.TSTypePredicate:
|
|
2754
|
+
case AST_NODE_TYPES5.TSUndefinedKeyword:
|
|
2755
|
+
case AST_NODE_TYPES5.TSUnknownKeyword:
|
|
2756
|
+
case AST_NODE_TYPES5.TSVoidKeyword:
|
|
2727
2757
|
return false;
|
|
2728
2758
|
}
|
|
2729
2759
|
}
|
|
@@ -2850,7 +2880,7 @@ function isExpressionObserver(expressionStatement, couldBeType2) {
|
|
|
2850
2880
|
}
|
|
2851
2881
|
|
|
2852
2882
|
// src/rules/no-sharereplay.ts
|
|
2853
|
-
import { AST_NODE_TYPES as
|
|
2883
|
+
import { AST_NODE_TYPES as AST_NODE_TYPES6 } from "@typescript-eslint/utils";
|
|
2854
2884
|
var defaultOptions10 = [];
|
|
2855
2885
|
var noSharereplayRule = ruleCreator({
|
|
2856
2886
|
defaultOptions: defaultOptions10,
|
|
@@ -2881,7 +2911,7 @@ var noSharereplayRule = ruleCreator({
|
|
|
2881
2911
|
"CallExpression[callee.name='shareReplay']": (node) => {
|
|
2882
2912
|
let report = true;
|
|
2883
2913
|
if (allowConfig) {
|
|
2884
|
-
report = node.arguments.length !== 1 || node.arguments[0].type !==
|
|
2914
|
+
report = node.arguments.length !== 1 || node.arguments[0].type !== AST_NODE_TYPES6.ObjectExpression;
|
|
2885
2915
|
}
|
|
2886
2916
|
if (report) {
|
|
2887
2917
|
context.report({
|
|
@@ -3118,7 +3148,7 @@ var noSubscribeHandlersRule = ruleCreator({
|
|
|
3118
3148
|
});
|
|
3119
3149
|
|
|
3120
3150
|
// src/rules/no-subscribe-in-pipe.ts
|
|
3121
|
-
import { AST_NODE_TYPES as
|
|
3151
|
+
import { AST_NODE_TYPES as AST_NODE_TYPES7 } from "@typescript-eslint/utils";
|
|
3122
3152
|
var noSubscribeInPipeRule = ruleCreator({
|
|
3123
3153
|
defaultOptions: [],
|
|
3124
3154
|
meta: {
|
|
@@ -3139,7 +3169,7 @@ var noSubscribeInPipeRule = ruleCreator({
|
|
|
3139
3169
|
function isWithinPipe(node) {
|
|
3140
3170
|
let parent = node.parent;
|
|
3141
3171
|
while (parent) {
|
|
3142
|
-
if (parent.type ===
|
|
3172
|
+
if (parent.type === AST_NODE_TYPES7.CallExpression && parent.callee.type === AST_NODE_TYPES7.MemberExpression && parent.callee.property.type === AST_NODE_TYPES7.Identifier && parent.callee.property.name === "pipe") {
|
|
3143
3173
|
return true;
|
|
3144
3174
|
}
|
|
3145
3175
|
parent = parent.parent;
|
|
@@ -4074,7 +4104,7 @@ var preferRootOperatorsRule = ruleCreator({
|
|
|
4074
4104
|
});
|
|
4075
4105
|
|
|
4076
4106
|
// src/rules/suffix-subjects.ts
|
|
4077
|
-
import { AST_NODE_TYPES as
|
|
4107
|
+
import { AST_NODE_TYPES as AST_NODE_TYPES8, ESLintUtils as ESLintUtils12 } from "@typescript-eslint/utils";
|
|
4078
4108
|
var defaultOptions18 = [];
|
|
4079
4109
|
var suffixSubjectsRule = ruleCreator({
|
|
4080
4110
|
defaultOptions: defaultOptions18,
|
|
@@ -4158,7 +4188,7 @@ var suffixSubjectsRule = ruleCreator({
|
|
|
4158
4188
|
if (!found) {
|
|
4159
4189
|
return;
|
|
4160
4190
|
}
|
|
4161
|
-
if (!validate.variables && found.type ===
|
|
4191
|
+
if (!validate.variables && found.type === AST_NODE_TYPES8.VariableDeclarator) {
|
|
4162
4192
|
return;
|
|
4163
4193
|
}
|
|
4164
4194
|
if (!validate.parameters) {
|
|
@@ -4225,7 +4255,7 @@ var suffixSubjectsRule = ruleCreator({
|
|
|
4225
4255
|
if (!found) {
|
|
4226
4256
|
return;
|
|
4227
4257
|
}
|
|
4228
|
-
if (!validate.variables && found.type ===
|
|
4258
|
+
if (!validate.variables && found.type === AST_NODE_TYPES8.VariableDeclarator) {
|
|
4229
4259
|
return;
|
|
4230
4260
|
}
|
|
4231
4261
|
if (!validate.parameters) {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "eslint-plugin-rxjs-x",
|
|
3
3
|
"type": "commonjs",
|
|
4
|
-
"version": "0.9.
|
|
4
|
+
"version": "0.9.1",
|
|
5
5
|
"packageManager": "yarn@4.12.0+sha512.f45ab632439a67f8bc759bf32ead036a1f413287b9042726b7cc4818b7b49e14e9423ba49b18f9e06ea4941c1ad062385b1d8760a8d5091a1a31e5f6219afca8",
|
|
6
6
|
"description": "Modern ESLint plugin for RxJS",
|
|
7
7
|
"author": "Jason Weinzierl <weinzierljason@gmail.com>",
|