Spaces:
Running
Running
import js from "@eslint/js"; | |
import tseslint from "@typescript-eslint/eslint-plugin"; | |
import tsparser from "@typescript-eslint/parser"; | |
import prettierConfig from "eslint-config-prettier"; | |
import importPlugin from "eslint-plugin-import"; | |
import prettier from "eslint-plugin-prettier"; | |
export default [ | |
js.configs.recommended, | |
{ | |
files: ["**/*.ts", "**/*.tsx"], | |
languageOptions: { | |
parser: tsparser, | |
parserOptions: { | |
ecmaVersion: "latest", | |
sourceType: "module", | |
}, | |
globals: { | |
console: "readonly", | |
window: "readonly", | |
document: "readonly", | |
HTMLElement: "readonly", | |
HTMLCanvasElement: "readonly", | |
KeyboardEvent: "readonly", | |
MouseEvent: "readonly", | |
WheelEvent: "readonly", | |
requestAnimationFrame: "readonly", | |
cancelAnimationFrame: "readonly", | |
performance: "readonly", | |
process: "readonly", | |
WebSocket: "readonly", | |
setTimeout: "readonly", | |
clearTimeout: "readonly", | |
setInterval: "readonly", | |
clearInterval: "readonly", | |
sessionStorage: "readonly", | |
localStorage: "readonly", | |
AbortController: "readonly", | |
AbortSignal: "readonly", | |
DOMParser: "readonly", | |
Document: "readonly", | |
Element: "readonly", | |
HTMLCollectionOf: "readonly", | |
}, | |
}, | |
plugins: { | |
"@typescript-eslint": tseslint, | |
prettier: prettier, | |
import: importPlugin, | |
}, | |
rules: { | |
...tseslint.configs.recommended.rules, | |
...prettierConfig.rules, | |
"prettier/prettier": "error", | |
"@typescript-eslint/no-unused-vars": [ | |
"error", | |
{ argsIgnorePattern: "^_", varsIgnorePattern: "^_" }, | |
], | |
"@typescript-eslint/explicit-function-return-type": "off", | |
"@typescript-eslint/explicit-module-boundary-types": "off", | |
"@typescript-eslint/no-explicit-any": "warn", | |
"no-console": "off", | |
}, | |
}, | |
{ | |
ignores: ["dist/**", "node_modules/**"], | |
}, | |
]; | |