55 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| import js from "@eslint/js";
 | |
| import reactDom from "eslint-plugin-react-dom";
 | |
| import reactHooks from "eslint-plugin-react-hooks";
 | |
| import reactRefresh from "eslint-plugin-react-refresh";
 | |
| import reactX from "eslint-plugin-react-x";
 | |
| import globals from "globals";
 | |
| import tseslint from "typescript-eslint";
 | |
| 
 | |
| export default tseslint.config(
 | |
|   { ignores: ["dist"] },
 | |
|   {
 | |
|     extends: [
 | |
|       js.configs.recommended,
 | |
|       ...tseslint.configs.strictTypeChecked,
 | |
|       ...tseslint.configs.stylisticTypeChecked,
 | |
|     ],
 | |
|     files: ["**/*.{ts,tsx}"],
 | |
|     languageOptions: {
 | |
|       ecmaVersion: 2020,
 | |
|       globals: globals.browser,
 | |
|       parserOptions: {
 | |
|         project: ["./tsconfig.node.json", "./tsconfig.app.json"],
 | |
|         tsconfigRootDir: import.meta.dirname,
 | |
|       },
 | |
|     },
 | |
|     plugins: {
 | |
|       "react-hooks": reactHooks,
 | |
|       "react-refresh": reactRefresh,
 | |
|       "react-x": reactX,
 | |
|       "react-dom": reactDom,
 | |
|     },
 | |
|     rules: {
 | |
|       ...reactHooks.configs.recommended.rules,
 | |
|       "react-refresh/only-export-components": [
 | |
|         "warn",
 | |
|         { allowConstantExport: true },
 | |
|       ],
 | |
|       ...reactX.configs["recommended-typescript"].rules,
 | |
|       ...reactDom.configs.recommended.rules,
 | |
|       "@typescript-eslint/no-non-null-assertion": "off",
 | |
|       "@typescript-eslint/no-misused-promises": "off",
 | |
|       "@typescript-eslint/no-floating-promises": "off",
 | |
|       "@typescript-eslint/restrict-template-expressions": "off",
 | |
|       "@typescript-eslint/no-extraneous-class": "off",
 | |
|       "@typescript-eslint/no-explicit-any": "off",
 | |
|       "@typescript-eslint/no-unsafe-assignment": "off",
 | |
|       "@typescript-eslint/no-unsafe-return": "off",
 | |
|       "@typescript-eslint/no-unsafe-call": "off",
 | |
|       "@typescript-eslint/no-unsafe-member-access": "off",
 | |
|       "@typescript-eslint/no-unsafe-argument": "off",
 | |
|       "react-refresh/only-export-components": "off",
 | |
|     },
 | |
|   }
 | |
| );
 |