76 lines
2.5 KiB
JSON
76 lines
2.5 KiB
JSON
{
|
|
"env": {
|
|
"browser": true,
|
|
"es6": true,
|
|
"node": true
|
|
},
|
|
"extends": [
|
|
"prettier",
|
|
"prettier/react",
|
|
"prettier/@typescript-eslint",
|
|
"plugin:prettier/recommended",
|
|
"plugin:react-hooks/recommended",
|
|
"plugin:import/errors",
|
|
"plugin:import/warnings",
|
|
"prettier",
|
|
"prettier/react",
|
|
"prettier/@typescript-eslint"
|
|
],
|
|
"plugins": ["@typescript-eslint", "react", "react-hooks", "import", "jest", "prettier"],
|
|
"parser": "@typescript-eslint/parser",
|
|
"parserOptions": {
|
|
"ecmaFeatures": {
|
|
"jsx": true
|
|
},
|
|
"ecmaVersion": 2018,
|
|
"sourceType": "module",
|
|
"rules": {
|
|
"curly": ["warn", "multi-line", "consistent"],
|
|
"no-console": "off",
|
|
"no-empty-pattern": "warn",
|
|
"no-duplicate-imports": "error",
|
|
"import/no-unresolved": "off",
|
|
"import/export": "error",
|
|
// https://github.com/typescript-eslint/typescript-eslint/blob/master/docs/getting-started/linting/FAQ.md#eslint-plugin-import
|
|
// We recommend you do not use the following import/* rules, as TypeScript provides the same checks as part of standard type checking:
|
|
"import/named": "off",
|
|
"import/namespace": "off",
|
|
"import/default": "off",
|
|
"no-unused-vars": ["warn", { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_" }],
|
|
"@typescript-eslint/no-unused-vars": ["warn", { "argsIgnorePattern": "^_", "varsIgnorePattern": "^_" }],
|
|
"@typescript-eslint/no-use-before-define": "off",
|
|
"@typescript-eslint/no-empty-function": "off",
|
|
"@typescript-eslint/no-empty-interface": "off",
|
|
"@typescript-eslint/no-explicit-any": "off",
|
|
"jest/consistent-test-it": ["error", { "fn": "it", "withinDescribe": "it" }]
|
|
}
|
|
},
|
|
"settings": {
|
|
"react": {
|
|
"version": "detect"
|
|
},
|
|
"import/extensions": [".js", ".jsx", ".ts", ".tsx"],
|
|
"import/parsers": {
|
|
"@typescript-eslint/parser": [".js", ".jsx", ".ts", ".tsx"]
|
|
},
|
|
"import/resolver": {
|
|
"node": {
|
|
"extensions": [".js", ".jsx", ".ts", ".tsx", ".json"],
|
|
"paths": ["src"]
|
|
},
|
|
"alias": {
|
|
"extensions": [".js", ".jsx", ".ts", ".tsx", ".json"],
|
|
"map": [["react-three-fiber", "./src/targets/web.tsx"]]
|
|
}
|
|
}
|
|
},
|
|
"overrides": [
|
|
{
|
|
"files": ["src"],
|
|
"parserOptions": {
|
|
"project": "./tsconfig.json"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
|