graphql-engine/console/.eslintrc
Ikechukwu Eze 701f3fd304 pro-console/security features: add support for api limits
https://github.com/hasura/graphql-engine-mono/pull/1541

Co-authored-by: Vijay Prasanna <11921040+vijayprasanna13@users.noreply.github.com>
GitOrigin-RevId: 83f0f20a45f0f396002c53a716dd3541e82b83e1
2021-07-13 11:18:06 +00:00

229 lines
6.5 KiB
Plaintext

{
"extends": [
"airbnb",
"prettier"
],
"env": {
"browser": true,
"node": true,
"mocha": true
},
"parser": "babel-eslint",
"rules": {
"allowForLoopAfterthoughts": 0,
"react/no-multi-comp": 0,
"import/default": 0,
"import/no-duplicates": 0,
"import/named": 0,
"import/first": 0,
"import/namespace": 0,
"import/no-unresolved": 0,
"import/no-named-as-default": 2,
"import/extensions": 0,
"import/no-extraneous-dependencies": 0,
"import/prefer-default-export": 0,
"comma-dangle": 0,
"id-length": [
1,
{
"min": 1,
"properties": "never"
}
],
"indent": "off",
"no-console": 0,
"arrow-parens": 0,
"no-alert": 0,
"no-plusplus": 0,
"no-unsafe-negation": 0,
"no-loop-func": 0,
"no-lonely-if": 0,
"no-bitwise": 0,
"global-require": 0,
"no-param-reassign": 0,
"no-underscore-dangle": 0,
"no-useless-return": 0,
"no-restricted-syntax": 0,
"no-prototype-builtins": 0,
"array-callback-return": 0,
"no-useless-concat": 0,
"consistent-return": 0,
"class-methods-use-this": 0,
"arrow-body-style": 0,
"prefer-template": 0,
"prefer-spread": 0,
"object-shorthand": 0,
"camelcase": 0,
"object-curly-newline": 0,
"spaced-comment": 0,
"prefer-destructuring": [
"error",
{
"object": false,
"array": false
}
],
"prefer-rest-params": 0,
"function-paren-newline": 0,
"no-case-declarations": 0,
"no-restricted-globals": 0,
"no-unneeded-ternary": 0,
"no-mixed-operators": 0,
"no-return-assign": 0,
"operator-assignment": 0,
"strict": 0,
"react/jsx-no-duplicate-props": 0,
"react/jsx-filename-extension": 0,
"react/jsx-curly-brace-presence": 0,
"react/forbid-prop-types": 0,
"react/require-default-props": 0,
"react/no-unused-prop-types": 0,
"react/no-string-refs": 0,
"react/no-unused-state": 0,
"react/no-array-index-key": 0,
"react/jsx-no-bind": 0,
"react/prop-types": 0,
"react/prefer-stateless-function": 0,
"react/no-unescaped-entities": 0,
"react/sort-comp": 0,
"react/jsx-indent": 0,
"react-hooks/rules-of-hooks": "error",
"react-hooks/exhaustive-deps": "warn",
"jsx-a11y/click-events-have-key-events": 0,
"jsx-a11y/no-static-element-interactions": 0,
"jsx-a11y/no-noninteractive-element-interactions": 0,
"jsx-a11y/label-has-for": 0,
"jsx-a11y/anchor-is-valid": 0,
"jsx-a11y/lang": 0,
"jsx-a11y/alt-text": 0,
"jsx-a11y/no-autofocus": 0,
"max-len": 0,
"no-continue": 0,
"no-new": 0,
"eqeqeq": 0,
"no-nested-ternary": 0
},
"plugins": [
"react",
"import",
"@typescript-eslint/eslint-plugin",
"react-hooks",
"testing-library"
],
"settings": {
"import/resolve": {
"moduleDirectory": [
"node_modules",
"src"
]
}
},
"globals": {
"__DEVELOPMENT__": true,
"__CLIENT__": true,
"__SERVER__": true,
"__DISABLE_SSR__": true,
"__DEVTOOLS__": true,
"socket": true,
"webpackIsomorphicTools": true,
"CONSOLE_ASSET_VERSION": true
},
"overrides": [
{
"extends": [
"plugin:@typescript-eslint/recommended",
"airbnb",
"prettier"
],
"parser": "@typescript-eslint/parser",
"files": [
"*.ts",
"*.tsx"
],
"rules": {
"jsx-a11y/label-has-for": [
0,
{
"required": {
"some": [
"nesting",
"id"
]
}
}
],
"import/extensions": 0,
"import/prefer-default-export": "off",
"react/prop-types": "off",
"react/jsx-filename-extension": 0,
"no-unused-vars": "off",
"camelcase": "off",
"no-param-reassign": "off",
"no-use-before-define": "off",
"consistent-return": "off",
"@typescript-eslint/no-unused-vars": 2,
"@typescript-eslint/no-use-before-define": "warn",
"@typescript-eslint/indent": 0,
"@typescript-eslint/explicit-function-return-type": 0,
"@typescript-eslint/prefer-interface": 0,
"@typescript-eslint/no-namespace": "off",
"@typescript-eslint/camelcase": 0,
"@typescript-eslint/explicit-member-accessibility": 0,
"@typescript-eslint/no-non-null-assertion": 0,
"@typescript-eslint/no-object-literal-type-assertion": "off",
"@typescript-eslint/no-empty-interface": "off",
"@typescript-eslint/no-parameter-properties": "off",
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-var-requires": "off",
"@typescript-eslint/no-shadow": "error",
"@typescript-eslint/no-useless-constructor": "error",
"@typescript-eslint/no-unused-expressions": [
"error"
],
"@typescript-eslint/no-empty-function": "off",
"@typescript-eslint/explicit-module-boundary-types": "off",
"no-restricted-syntax": "warn",
/**
* Disable things that are checked by TypeScript
*/
"import/no-unresolved": 0,
"getter-return": "off",
"no-dupe-args": "off",
"no-dupe-keys": "off",
"no-unreachable": "off",
"valid-typeof": "off",
"no-const-assign": "off",
"no-new-symbol": "off",
"no-this-before-super": "off",
"no-undef": "off",
"no-dupe-class-members": "off",
"no-redeclare": "off",
"no-restricted-globals": "warn",
"no-useless-constructor": "off",
"no-unused-expressions": "off",
"no-console": "off",
"no-shadow": "off",
"prefer-destructuring": "off",
"no-plusplus": "off",
"jsx-a11y/anchor-is-valid": "off",
"jsx-a11y/click-events-have-key-events": "off",
"jsx-a11y/no-static-element-interactions": "off",
"no-new": "off",
"no-nested-ternary": "off",
"jsx-a11y/interactive-supports-focus": "off",
"no-restricted-properties": "off",
"react/no-danger": "off",
"react/no-array-index-key": "off",
"no-case-declarations": 0,
"react/jsx-indent": "off",
"arrow-body-style": "off"
}
},
{
// 3) Now we enable eslint-plugin-testing-library rules or preset only for matching files!
"files": ["src/**/__tests__/**/*.[jt]s?(x)", "src/**/?(*.)+(spec|test).[jt]s?(x)"],
"extends": ["plugin:testing-library/react", "plugin:jest-dom/recommended"]
}
]
}