Explorar o código

chore: update eslint config and quiet lint output

- Add recommended TypeScript ESLint rules and configurations
- Configure explicit function return types and member accessibility
- Add environment settings for Node.js and ES2021
- Update parser options and ignore patterns
- Add --quiet flag to lint commands to reduce noise
sam hoang hai 11 meses
pai
achega
6db3ecf73e
Modificáronse 3 ficheiros con 44 adicións e 12 borrados
  1. 42 10
      .eslintrc.json
  2. 1 1
      package.json
  3. 1 1
      webview-ui/package.json

+ 42 - 10
.eslintrc.json

@@ -1,24 +1,56 @@
 {
 	"root": true,
+	"extends": ["eslint:recommended", "plugin:@typescript-eslint/recommended"],
 	"parser": "@typescript-eslint/parser",
 	"parserOptions": {
-		"ecmaVersion": 6,
-		"sourceType": "module"
+		"ecmaVersion": 2021,
+		"sourceType": "module",
+		"project": "./tsconfig.json"
 	},
 	"plugins": ["@typescript-eslint"],
 	"rules": {
-		"@typescript-eslint/naming-convention": [
+		"@typescript-eslint/naming-convention": ["warn"],
+		"@typescript-eslint/no-explicit-any": "off",
+		"@typescript-eslint/no-unused-vars": [
 			"warn",
 			{
-				"selector": "import",
-				"format": ["camelCase", "PascalCase"]
+				"argsIgnorePattern": "^_",
+				"varsIgnorePattern": "^_",
+				"caughtErrorsIgnorePattern": "^_"
 			}
 		],
-		"@typescript-eslint/semi": "off",
-		"eqeqeq": "warn",
+		"@typescript-eslint/explicit-function-return-type": [
+			"warn",
+			{
+				"allowExpressions": true,
+				"allowTypedFunctionExpressions": true
+			}
+		],
+		"@typescript-eslint/explicit-member-accessibility": [
+			"warn",
+			{
+				"accessibility": "explicit"
+			}
+		],
+		"@typescript-eslint/no-non-null-assertion": "warn",
 		"no-throw-literal": "warn",
-		"semi": "off",
-		"react-hooks/exhaustive-deps": "off"
+		"semi": ["off", "always"],
+		"quotes": ["warn", "double", { "avoidEscape": true }],
+		"@typescript-eslint/ban-types": "off",
+		"@typescript-eslint/no-var-requires": "warn",
+		"no-extra-semi": "warn",
+		"prefer-const": "warn",
+		"no-mixed-spaces-and-tabs": "warn",
+		"no-case-declarations": "warn",
+		"no-useless-escape": "warn",
+		"require-yield": "warn",
+		"no-empty": "warn",
+		"no-control-regex": "warn",
+		"@typescript-eslint/ban-ts-comment": "warn"
+	},
+	"env": {
+		"node": true,
+		"es2021": true
 	},
-	"ignorePatterns": ["out", "dist", "**/*.d.ts"]
+	"ignorePatterns": ["dist/**", "out/**", "webview-ui/**", "**/*.js"]
 }

+ 1 - 1
package.json

@@ -212,7 +212,7 @@
 		"compile": "npm run check-types && npm run lint && node esbuild.js",
 		"compile-tests": "tsc -p . --outDir out",
 		"install:all": "npm install && cd webview-ui && npm install",
-		"lint": "eslint src --ext ts && npm run lint --prefix webview-ui",
+		"lint": "eslint src --ext ts --quiet && npm run lint --prefix webview-ui",
 		"package": "npm run build:webview && npm run check-types && npm run lint && node esbuild.js --production",
 		"pretest": "npm run compile-tests && npm run compile && npm run lint",
 		"start:webview": "cd webview-ui && npm run start",

+ 1 - 1
webview-ui/package.json

@@ -8,7 +8,7 @@
 		"build": "tsc && vite build",
 		"preview": "vite preview",
 		"test": "jest",
-		"lint": "eslint src --ext ts,tsx"
+		"lint": "eslint src --ext ts,tsx --quiet"
 	},
 	"dependencies": {
 		"@vscode/webview-ui-toolkit": "^1.4.0",