nxtgauge-frontend-solid/.eslintrc.cjs

68 lines
1.7 KiB
JavaScript
Raw Normal View History

/* eslint-env node */
require("@typescript-eslint/eslint-recommended");
require("@typescript-eslint/parser");
require("eslint-plugin-solid");
module.exports = {
root: true,
parser: "@typescript-eslint/parser",
plugins: ["solid"],
extends: [
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:solid/recommended",
],
overrides: [
{
files: ["**/*.tsx"],
parserOptions: {
ecmaFeatures: {
jsx: true,
},
},
settings: {
solid: {
noImportReact: true,
},
},
rules: {
"solid/hyperscript": "off",
"solid/jsx-no-undef": "error",
"solid/jsx-pseudo-element": "error",
"solid/jsx-single-root-elem": "error",
"solid/no-dynamic-mount": "error",
"solid/no-hyphen-in-props": "error",
"solid/no-leaked-event-handlers": "error",
"solid/no-react-unknown-property": "error",
"solid/no-unknown-property": "error",
"solid/no-useless-fragment": "error",
"solid/prefer-classlist": "error",
"solid/prefer-destructuring": "warn",
"solid/prefer-innerhtml": "warn",
},
},
],
rules: {
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/no-unused-vars": ["warn", { argsIgnorePattern: "^_" }],
"@typescript-eslint/no-explicit-any": "warn",
"arrow-body-style": ["warn", "as-needed"],
curly: ["error", "multi-line"],
"no-console": "off",
"no-debugger": "warn",
"no-unused-vars": "off",
"prefer-const": "error",
},
env: {
browser: true,
},
ignorePatterns: [
"dist",
".output",
"node_modules",
"coverage",
"test-results",
"playwright-report",
],
};