diff --git a/package.json b/package.json index 6235dc7..3335b36 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflight/eslint-plugin", - "version": "1.0.0-rc11", + "version": "1.0.0-rc12", "private": true, "volta": { "node": "20.12.2", diff --git a/packages/eslint-plugin-angular/package.json b/packages/eslint-plugin-angular/package.json index 25f8de2..f427313 100644 --- a/packages/eslint-plugin-angular/package.json +++ b/packages/eslint-plugin-angular/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflight/eslint-plugin-angular", - "version": "1.0.0-rc11", + "version": "1.0.0-rc12", "description": "Cloudflight eslint-plugin & eslint-config for angular", "volta": { "extends": "../../package.json" diff --git a/packages/eslint-plugin-node/package.json b/packages/eslint-plugin-node/package.json index e6937a5..f876b35 100644 --- a/packages/eslint-plugin-node/package.json +++ b/packages/eslint-plugin-node/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflight/eslint-plugin-node", - "version": "1.0.0-rc11", + "version": "1.0.0-rc12", "description": "Cloudflight eslint-plugin & eslint-config for node", "volta": { "extends": "../../package.json" diff --git a/packages/eslint-plugin-react/package.json b/packages/eslint-plugin-react/package.json index 43358fa..8fb87ae 100644 --- a/packages/eslint-plugin-react/package.json +++ b/packages/eslint-plugin-react/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflight/eslint-plugin-react", - "version": "1.0.0-rc11", + "version": "1.0.0-rc12", "description": "Cloudflight eslint-plugin & eslint-config for React", "volta": { "extends": "../../package.json" diff --git a/packages/eslint-plugin-typescript/package.json b/packages/eslint-plugin-typescript/package.json index dc24477..76ce132 100644 --- a/packages/eslint-plugin-typescript/package.json +++ b/packages/eslint-plugin-typescript/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflight/eslint-plugin-typescript", - "version": "1.0.0-rc11", + "version": "1.0.0-rc12", "description": "Cloudflight eslint-plugin & eslint-config for typescript", "volta": { "extends": "../../package.json" @@ -38,6 +38,7 @@ "eslint": ">=9.0.0 < 10.0.0" }, "devDependencies": { + "@types/eslint-plugin-rxjs": "workspace:*", "typescript": "5.5.4" } } diff --git a/packages/eslint-plugin-typescript/src/index.ts b/packages/eslint-plugin-typescript/src/index.ts index 55c5a0c..320f90c 100644 --- a/packages/eslint-plugin-typescript/src/index.ts +++ b/packages/eslint-plugin-typescript/src/index.ts @@ -1,13 +1,16 @@ +import {fixupPluginRules} from '@eslint/compat'; import pluginJs from '@eslint/js'; import stylistic from '@stylistic/eslint-plugin'; import eslintPluginImportX from 'eslint-plugin-import-x'; import perfectionist from 'eslint-plugin-perfectionist'; +import rxjs from 'eslint-plugin-rxjs'; import tseslint from 'typescript-eslint'; import {customRules} from './configs/custom'; import {eslintRules} from './configs/eslint'; import {formatEslintRules} from './configs/format'; import {importEslintRules} from './configs/import'; +import {rxjsRules} from './configs/rxjs'; import {typescriptEslintRules, typescriptEslintRulesDisableTypeChecked} from './configs/typescript-eslint'; import {cloudflightTypescriptPlugin} from './rules'; @@ -20,6 +23,7 @@ export const cloudflightTypescriptBaseConfig = tseslint.config( files: ['**/*.{js,mjs,cjs,ts,mts,cts}'], plugins: { '@cloudflight/typescript': cloudflightTypescriptPlugin, + rxjs: fixupPluginRules(rxjs), }, extends: [ pluginJs.configs.recommended, @@ -31,6 +35,7 @@ export const cloudflightTypescriptBaseConfig = tseslint.config( ...eslintRules, ...typescriptEslintRules, ...customRules, + ...rxjsRules, }, }, ); diff --git a/packages/eslint-plugin-vue/package.json b/packages/eslint-plugin-vue/package.json index b31d707..fb92d46 100644 --- a/packages/eslint-plugin-vue/package.json +++ b/packages/eslint-plugin-vue/package.json @@ -1,6 +1,6 @@ { "name": "@cloudflight/eslint-plugin-vue", - "version": "1.0.0-rc11", + "version": "1.0.0-rc12", "description": "Cloudflight eslint-plugin & eslint-config for vue", "volta": { "extends": "../../package.json" diff --git a/packages/types-eslint-plugin-rxjs/index.d.ts b/packages/types-eslint-plugin-rxjs/index.d.ts new file mode 100644 index 0000000..db3058d --- /dev/null +++ b/packages/types-eslint-plugin-rxjs/index.d.ts @@ -0,0 +1,5 @@ +import {FixupPluginDefinition} from '@eslint/compat'; + +declare const rxjs: FixupPluginDefinition; + +export = rxjs; diff --git a/packages/types-eslint-plugin-rxjs/package.json b/packages/types-eslint-plugin-rxjs/package.json new file mode 100644 index 0000000..0f6f9c9 --- /dev/null +++ b/packages/types-eslint-plugin-rxjs/package.json @@ -0,0 +1,18 @@ +{ + "name": "@types/eslint-plugin-rxjs", + "version": "0.1.0", + "description": "TypeScript definitions for eslint-plugin-rxjs", + "homepage": "https://github.com/cloudflightio/cloudflight-eslint-plugin", + "bugs": { + "url": "https://github.com/cloudflightio/cloudflight-eslint-plugin/issues" + }, + "private": true, + "author": "Cloudflight GmbH", + "license": "Apache-2.0", + "main": "", + "types": "index.d.ts", + "dependencies": { + "@types/eslint": "*" + }, + "typeScriptVersion": "5.5" +} diff --git a/yarn.lock b/yarn.lock index b8e1ecc..f1182da 100644 --- a/yarn.lock +++ b/yarn.lock @@ -556,6 +556,7 @@ __metadata: dependencies: "@eslint/js": "npm:^9.12.0" "@stylistic/eslint-plugin": "npm:2.9.0" + "@types/eslint-plugin-rxjs": "workspace:*" eslint-import-resolver-typescript: "npm:3.6.3" eslint-plugin-import-x: "npm:4.3.1" eslint-plugin-perfectionist: "npm:3.9.1" @@ -1267,6 +1268,14 @@ __metadata: languageName: unknown linkType: soft +"@types/eslint-plugin-rxjs@workspace:*, @types/eslint-plugin-rxjs@workspace:packages/types-eslint-plugin-rxjs": + version: 0.0.0-use.local + resolution: "@types/eslint-plugin-rxjs@workspace:packages/types-eslint-plugin-rxjs" + dependencies: + "@types/eslint": "npm:*" + languageName: unknown + linkType: soft + "@types/eslint-plugin-security@workspace:*, @types/eslint-plugin-security@workspace:packages/types-eslint-plugin-security": version: 0.0.0-use.local resolution: "@types/eslint-plugin-security@workspace:packages/types-eslint-plugin-security"