Skip to content

Commit 3c6fa5b

Browse files
committed
feat: add missing converters for rxjs rules
1 parent ed0781b commit 3c6fa5b

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+1015
-0
lines changed

src/converters/lintConfigs/rules/ruleConverters.ts

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,12 +74,22 @@ import { convertJsxNoLambda } from "./ruleConverters/eslint-plugin-react/jsx-no-
7474
import { convertJsxSelfClose } from "./ruleConverters/eslint-plugin-react/jsx-self-close";
7575
import { convertJsxSpaceBeforeTrailingSlash } from "./ruleConverters/eslint-plugin-react/jsx-space-before-trailing-slash";
7676
import { convertJsxWrapMultiline } from "./ruleConverters/eslint-plugin-react/jsx-wrap-multiline";
77+
import { convertBanObservables } from "./ruleConverters/eslint-plugin-rxjs/ban-observables";
78+
import { convertBanOperators } from "./ruleConverters/eslint-plugin-rxjs/ban-operators";
79+
import { convertFinnish } from "./ruleConverters/eslint-plugin-rxjs/finnish";
80+
import { convertJust } from "./ruleConverters/eslint-plugin-rxjs/just";
7781
import { convertNoAsyncSubscribe } from "./ruleConverters/eslint-plugin-rxjs/no-async-subscribe";
82+
import { convertNoCompat } from "./ruleConverters/eslint-plugin-rxjs/no-compat";
83+
import { convertNoConnectable } from "./ruleConverters/eslint-plugin-rxjs/no-connectable";
7884
import { convertNoCreate } from "./ruleConverters/eslint-plugin-rxjs/no-create";
85+
import { convertNoExplicitGenerics } from "./ruleConverters/eslint-plugin-rxjs/no-explicit-generics";
7986
import { convertNoExposedSubjects } from "./ruleConverters/eslint-plugin-rxjs/no-exposed-subjects";
8087
import { convertNoFinnish } from "./ruleConverters/eslint-plugin-rxjs/no-finnish";
88+
import { convertNoIgnoredError } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-error";
8189
import { convertNoIgnoredNotifier } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-notifier";
90+
import { convertNoIgnoredObservable } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-observable";
8291
import { convertNoIgnoredReplayBuffer } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-replay-buffer";
92+
import { convertNoIgnoredSubscribe } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-subscribe";
8393
import { convertNoIgnoredSubscription } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-subscription";
8494
import { convertNoIgnoredTakeWhileValue } from "./ruleConverters/eslint-plugin-rxjs/no-ignored-takewhile-value";
8595
import { convertNoImplicitAnyCatch } from "./ruleConverters/eslint-plugin-rxjs/no-implicit-any-catch";
@@ -88,11 +98,23 @@ import { convertNoInternal } from "./ruleConverters/eslint-plugin-rxjs/no-intern
8898
import { convertNoNestedSubscribe } from "./ruleConverters/eslint-plugin-rxjs/no-nested-subscribe";
8999
import { convertNoRedundantNotify } from "./ruleConverters/eslint-plugin-rxjs/no-redundant-notify";
90100
import { convertNoShareReplay } from "./ruleConverters/eslint-plugin-rxjs/no-sharereplay";
101+
import { convertNoSubclass } from "./ruleConverters/eslint-plugin-rxjs/no-subclass";
91102
import { convertNoSubjectUnubscribe } from "./ruleConverters/eslint-plugin-rxjs/no-subject-unsubscribe";
92103
import { convertNoSubjectValue } from "./ruleConverters/eslint-plugin-rxjs/no-subject-value";
104+
import { convertNoTap } from "./ruleConverters/eslint-plugin-rxjs/no-tap";
105+
import { convertNoToPromise } from "./ruleConverters/eslint-plugin-rxjs/no-topromise";
93106
import { convertNoUnboundMethods } from "./ruleConverters/eslint-plugin-rxjs/no-unbound-methods";
107+
import { convertNoUnsafeCatch } from "./ruleConverters/eslint-plugin-rxjs/no-unsafe-catch";
108+
import { convertNoUnsafeFirst } from "./ruleConverters/eslint-plugin-rxjs/no-unsafe-first";
94109
import { convertNoUnsafeSubjectNext } from "./ruleConverters/eslint-plugin-rxjs/no-unsafe-subject-next";
110+
import { convertNoUnsafeSwitchmap } from "./ruleConverters/eslint-plugin-rxjs/no-unsafe-switchmap";
95111
import { convertNoUnsafeTakeUntil } from "./ruleConverters/eslint-plugin-rxjs/no-unsafe-takeuntil";
112+
import { convertPreferAngularAsyncPipe } from "./ruleConverters/eslint-plugin-rxjs/prefer-angular-async-pipe";
113+
import { convertPreferAngularComposition } from "./ruleConverters/eslint-plugin-rxjs/prefer-angular-composition";
114+
import { convertPreferAngularTakeuntil } from "./ruleConverters/eslint-plugin-rxjs/prefer-angular-takeuntil";
115+
import { convertPreferObserver } from "./ruleConverters/eslint-plugin-rxjs/prefer-observer";
116+
import { convertSuffixSubjects } from "./ruleConverters/eslint-plugin-rxjs/suffix-subjects";
117+
import { convertThrowError } from "./ruleConverters/eslint-plugin-rxjs/throw-error";
96118
import { convertCognitiveComplexity } from "./ruleConverters/eslint-plugin-sonarjs/cognitive-complexity";
97119
import { convertConsecutiveOverloads } from "./ruleConverters/eslint-plugin-sonarjs/consecutive-overloads";
98120
import { convertMaxSwitchCases } from "./ruleConverters/eslint-plugin-sonarjs/max-switch-cases";
@@ -518,12 +540,22 @@ export const ruleConverters = new Map([
518540
["react-tsx-curly-spacing", convertReactTsxCurlySpacing],
519541
["relative-url-prefix", convertRelativeUrlPrefix],
520542
["restrict-plus-operands", convertRestrictPlusOperands],
543+
["rxjs-ban-observables", convertBanObservables],
544+
["rxjs-ban-operators", convertBanOperators],
545+
["rxjs-finnish", convertFinnish],
546+
["rxjs-just", convertJust],
521547
["rxjs-no-async-subscribe", convertNoAsyncSubscribe],
548+
["rxjs-no-compat", convertNoCompat],
549+
["rxjs-no-connectable", convertNoConnectable],
522550
["rxjs-no-create", convertNoCreate],
551+
["rxjs-no-explicit-generics", convertNoExplicitGenerics],
523552
["rxjs-no-exposed-subjects", convertNoExposedSubjects],
524553
["rxjs-no-finnish", convertNoFinnish],
554+
["rxjs-no-ignored-error", convertNoIgnoredError],
525555
["rxjs-no-ignored-notifier", convertNoIgnoredNotifier],
556+
["rxjs-no-ignored-observable", convertNoIgnoredObservable],
526557
["rxjs-no-ignored-replay-buffer", convertNoIgnoredReplayBuffer],
558+
["rxjs-no-ignored-subscribe", convertNoIgnoredSubscribe],
527559
["rxjs-no-ignored-subscription", convertNoIgnoredSubscription],
528560
["rxjs-no-ignored-takewhile-value", convertNoIgnoredTakeWhileValue],
529561
["rxjs-no-implicit-any-catch", convertNoImplicitAnyCatch],
@@ -532,11 +564,23 @@ export const ruleConverters = new Map([
532564
["rxjs-no-nested-subscribe", convertNoNestedSubscribe],
533565
["rxjs-no-redundant-notify", convertNoRedundantNotify],
534566
["rxjs-no-sharereplay", convertNoShareReplay],
567+
["rxjs-no-subclass", convertNoSubclass],
535568
["rxjs-no-subject-unsubscribe", convertNoSubjectUnubscribe],
536569
["rxjs-no-subject-value", convertNoSubjectValue],
570+
["rxjs-no-tap", convertNoTap],
571+
["rxjs-no-topromise", convertNoToPromise],
537572
["rxjs-no-unbound-methods", convertNoUnboundMethods],
573+
["rxjs-no-unsafe-catch", convertNoUnsafeCatch],
574+
["rxjs-no-unsafe-first", convertNoUnsafeFirst],
538575
["rxjs-no-unsafe-subject-next", convertNoUnsafeSubjectNext],
576+
["rxjs-no-unsafe-switchmap", convertNoUnsafeSwitchmap],
539577
["rxjs-no-unsafe-takeuntil", convertNoUnsafeTakeUntil],
578+
["rxjs-prefer-angular-async-pipe", convertPreferAngularAsyncPipe],
579+
["rxjs-prefer-angular-composition", convertPreferAngularComposition],
580+
["rxjs-prefer-angular-takeuntil", convertPreferAngularTakeuntil],
581+
["rxjs-prefer-observer", convertPreferObserver],
582+
["rxjs-suffix-subjects", convertSuffixSubjects],
583+
["rxjs-throw-error", convertThrowError],
540584
["semicolon", convertSemicolon],
541585
["space-before-function-paren", convertSpaceBeforeFunctionParen],
542586
["space-within-parens", convertSpaceWithinParens],
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertBanObservables: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/ban-observables",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertBanOperators: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/ban-operators",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertFinnish: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/finnish",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertJust: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/just",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoCompat: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-compat",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoConnectable: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-connectable",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoExplicitGenerics: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-explicit-generics",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoIgnoredError: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-ignored-error",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoIgnoredObservable: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-ignored-observable",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoIgnoredSubscribe: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-ignored-subscribe",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoSubclass: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-subclass",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoTap: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-tap",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoToPromise: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-topromise",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoUnsafeCatch: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/no-unsafe-catch",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoUnsafeFirst: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "rxjs/no-unsafe-first",
8+
},
9+
],
10+
plugins: ["eslint-plugin-rxjs"],
11+
};
12+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertNoUnsafeSwitchmap: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/no-unsafe-switchmap",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertPreferAngularAsyncPipe: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "prefer-async-pipe",
8+
},
9+
],
10+
plugins: ["rxjs-angular"],
11+
};
12+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertPreferAngularComposition: RuleConverter = () => {
4+
return {
5+
rules: [
6+
{
7+
ruleName: "prefer-composition",
8+
},
9+
],
10+
plugins: ["rxjs-angular"],
11+
};
12+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertPreferAngularTakeuntil: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "prefer-takeuntil",
9+
},
10+
],
11+
plugins: ["rxjs-angular"],
12+
};
13+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertPreferObserver: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/prefer-observer",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
import { RuleConverter } from "../../ruleConverter";
2+
3+
export const convertSuffixSubjects: RuleConverter = ({ ruleArguments }) => {
4+
return {
5+
rules: [
6+
{
7+
...(ruleArguments.length !== 0 && { ruleArguments }),
8+
ruleName: "rxjs/suffix-subjects",
9+
},
10+
],
11+
plugins: ["eslint-plugin-rxjs"],
12+
};
13+
};

0 commit comments

Comments
 (0)