UNPKG

eslint-config-neon

Version:

The ultimate ESLint shareable config

1 lines 22.7 kB
{"version":3,"sources":["../../src/typescript.ts"],"names":[],"mappings":"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","file":"typescript.mjs","sourcesContent":["import { fixupPluginRules } from \"@eslint/compat\";\nimport type { TSESLint } from \"@typescript-eslint/utils\";\nimport eslintPluginSonarjs from \"eslint-plugin-sonarjs\";\nimport eslintPluginTsdoc from \"eslint-plugin-tsdoc\";\n// @ts-expect-error eslint-plugin-typescript-sort-keys is not typed\nimport eslintPluginTypescriptSortKeys from \"eslint-plugin-typescript-sort-keys\";\nimport tseslint from \"typescript-eslint\";\nimport { createTypeScriptImportResolver } from \"eslint-import-resolver-typescript\";\n\nconst rules: TSESLint.FlatConfig.Rules = {\n\t\"@typescript-eslint/adjacent-overload-signatures\": 2,\n\t\"@typescript-eslint/array-type\": [\n\t\t2,\n\t\t{\n\t\t\tdefault: \"array\",\n\t\t},\n\t],\n\t\"@typescript-eslint/await-thenable\": 2,\n\t\"@typescript-eslint/ban-ts-comment\": [\n\t\t2,\n\t\t{\n\t\t\t\"ts-check\": true,\n\t\t\t\"ts-expect-error\": \"allow-with-description\",\n\t\t\t\"ts-ignore\": false,\n\t\t\t\"ts-nocheck\": false,\n\t\t},\n\t],\n\t\"@typescript-eslint/ban-tslint-comment\": 2,\n\t\"@typescript-eslint/class-literal-property-style\": [2, \"fields\"],\n\t\"@typescript-eslint/consistent-indexed-object-style\": 0,\n\t\"@typescript-eslint/consistent-type-assertions\": [\n\t\t2,\n\t\t{\n\t\t\tassertionStyle: \"as\",\n\t\t\tobjectLiteralTypeAssertions: \"allow\",\n\t\t},\n\t],\n\t\"@typescript-eslint/consistent-type-definitions\": [2, \"type\"],\n\t\"@typescript-eslint/consistent-type-exports\": [\n\t\t2,\n\t\t{\n\t\t\tfixMixedExportsWithInlineTypeSpecifier: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/consistent-type-imports\": [\n\t\t2,\n\t\t{\n\t\t\tprefer: \"type-imports\",\n\t\t},\n\t],\n\t\"@typescript-eslint/explicit-function-return-type\": 0,\n\t\"@typescript-eslint/explicit-member-accessibility\": 2,\n\t\"@typescript-eslint/explicit-module-boundary-types\": 0,\n\t\"@typescript-eslint/member-ordering\": 0,\n\t\"@typescript-eslint/method-signature-style\": [2, \"method\"],\n\t\"@typescript-eslint/naming-convention\": 0,\n\t\"@typescript-eslint/no-base-to-string\": [\n\t\t2,\n\t\t{\n\t\t\tignoredTypeNames: [\"RegExp\"],\n\t\t},\n\t],\n\t\"@typescript-eslint/no-confusing-non-null-assertion\": 2,\n\t\"@typescript-eslint/no-confusing-void-expression\": [\n\t\t2,\n\t\t{\n\t\t\tignoreArrowShorthand: true,\n\t\t\tignoreVoidOperator: false,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-duplicate-enum-values\": 2,\n\t\"@typescript-eslint/no-dynamic-delete\": 2,\n\t\"@typescript-eslint/no-empty-function\": 0,\n\t\"@typescript-eslint/no-empty-interface\": [\n\t\t\"error\",\n\t\t{\n\t\t\tallowSingleExtends: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-explicit-any\": 0,\n\t\"@typescript-eslint/no-extra-non-null-assertion\": 2,\n\t\"@typescript-eslint/no-extraneous-class\": 0,\n\t\"@typescript-eslint/no-floating-promises\": [\n\t\t2,\n\t\t{\n\t\t\tignoreVoid: true,\n\t\t\tignoreIIFE: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-for-in-array\": 2,\n\t\"@typescript-eslint/no-inferrable-types\": [\n\t\t2,\n\t\t{\n\t\t\tignoreParameters: true,\n\t\t\tignoreProperties: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-invalid-void-type\": [\n\t\t2,\n\t\t{\n\t\t\tallowAsThisParameter: true,\n\t\t\tallowInGenericTypeArguments: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-meaningless-void-operator\": [\n\t\t2,\n\t\t{\n\t\t\tcheckNever: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-misused-new\": 2,\n\t\"@typescript-eslint/no-misused-promises\": [\n\t\t2,\n\t\t{\n\t\t\tchecksConditionals: true,\n\t\t\tchecksVoidReturn: false,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-namespace\": [\n\t\t2,\n\t\t{\n\t\t\tallowDeclarations: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-non-null-asserted-nullish-coalescing\": 2,\n\t\"@typescript-eslint/no-non-null-asserted-optional-chain\": 2,\n\t\"@typescript-eslint/no-non-null-assertion\": 0,\n\t\"@typescript-eslint/no-require-imports\": 2,\n\t\"@typescript-eslint/no-this-alias\": [\n\t\t2,\n\t\t{\n\t\t\tallowDestructuring: true,\n\t\t\tallowedNames: [\"self\"],\n\t\t},\n\t],\n\t\"@typescript-eslint/no-type-alias\": 0,\n\t\"@typescript-eslint/no-unnecessary-boolean-literal-compare\": 0,\n\t\"@typescript-eslint/no-unnecessary-condition\": 0,\n\t\"@typescript-eslint/no-unnecessary-qualifier\": 2,\n\t\"@typescript-eslint/no-unnecessary-type-arguments\": 0,\n\t\"@typescript-eslint/no-unnecessary-type-assertion\": 0,\n\t\"@typescript-eslint/no-unnecessary-type-constraint\": 2,\n\t\"@typescript-eslint/no-unsafe-argument\": 0,\n\t\"@typescript-eslint/no-unsafe-assignment\": 0,\n\t\"@typescript-eslint/no-unsafe-call\": 0,\n\t\"@typescript-eslint/no-unsafe-member-access\": 0,\n\t\"@typescript-eslint/no-unsafe-return\": 0,\n\t\"@typescript-eslint/no-var-requires\": 2,\n\t\"@typescript-eslint/non-nullable-type-assertion-style\": 0,\n\t\"@typescript-eslint/prefer-as-const\": 2,\n\t\"@typescript-eslint/prefer-enum-initializers\": 0,\n\t\"@typescript-eslint/prefer-for-of\": 2,\n\t\"@typescript-eslint/prefer-function-type\": 2,\n\t\"@typescript-eslint/prefer-includes\": 2,\n\t\"@typescript-eslint/prefer-literal-enum-member\": 2,\n\t\"@typescript-eslint/prefer-namespace-keyword\": 2,\n\t\"@typescript-eslint/prefer-nullish-coalescing\": [\n\t\t2,\n\t\t{\n\t\t\tignoreConditionalTests: true,\n\t\t\tignoreMixedLogicalExpressions: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/prefer-optional-chain\": 2,\n\t\"@typescript-eslint/prefer-readonly\": [\n\t\t2,\n\t\t{\n\t\t\tonlyInlineLambdas: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/prefer-readonly-parameter-types\": 0,\n\t\"@typescript-eslint/prefer-reduce-type-parameter\": 2,\n\t\"@typescript-eslint/prefer-regexp-exec\": 2,\n\t\"@typescript-eslint/prefer-return-this-type\": 2,\n\t\"@typescript-eslint/prefer-string-starts-ends-with\": 2,\n\t\"@typescript-eslint/prefer-ts-expect-error\": 2,\n\t\"@typescript-eslint/promise-function-async\": 2,\n\t\"@typescript-eslint/require-array-sort-compare\": [\n\t\t2,\n\t\t{\n\t\t\tignoreStringArrays: false,\n\t\t},\n\t],\n\t\"@typescript-eslint/restrict-plus-operands\": 2,\n\t\"@typescript-eslint/restrict-template-expressions\": 0,\n\t\"@typescript-eslint/return-await\": [2, \"in-try-catch\"],\n\t\"@typescript-eslint/sort-type-constituents\": 2,\n\t\"@typescript-eslint/strict-boolean-expressions\": 0,\n\t\"@typescript-eslint/switch-exhaustiveness-check\": 2,\n\t\"@typescript-eslint/triple-slash-reference\": [\n\t\t2,\n\t\t{\n\t\t\tlib: \"never\",\n\t\t\tpath: \"never\",\n\t\t\ttypes: \"never\",\n\t\t},\n\t],\n\t\"@typescript-eslint/typedef\": 0,\n\t\"@typescript-eslint/unbound-method\": [\n\t\t2,\n\t\t{\n\t\t\tignoreStatic: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/unified-signatures\": 2,\n\n\t// Eslint compatibility\n\t\"@typescript-eslint/default-param-last\": 2,\n\t\"@typescript-eslint/dot-notation\": 2,\n\t\"@typescript-eslint/init-declarations\": 0,\n\t\"@typescript-eslint/no-array-constructor\": 2,\n\t\"@typescript-eslint/no-dupe-class-members\": 2,\n\t\"@typescript-eslint/no-implied-eval\": 2,\n\t\"@typescript-eslint/no-invalid-this\": 0,\n\t\"@typescript-eslint/no-loop-func\": 2,\n\t\"@typescript-eslint/no-magic-numbers\": 0,\n\t\"@typescript-eslint/no-redeclare\": [\n\t\t2,\n\t\t{\n\t\t\tbuiltinGlobals: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-restricted-imports\": 0,\n\t\"@typescript-eslint/no-shadow\": 0,\n\t\"@typescript-eslint/only-throw-error\": 2,\n\t\"@typescript-eslint/no-unused-expressions\": 2,\n\t\"@typescript-eslint/no-unused-vars\": 0,\n\t\"@typescript-eslint/no-use-before-define\": [\n\t\t2,\n\t\t{\n\t\t\tclasses: true,\n\t\t\tfunctions: false,\n\t\t\tvariables: true,\n\t\t},\n\t],\n\t\"@typescript-eslint/no-useless-constructor\": 2,\n\t\"@typescript-eslint/require-await\": 0,\n\n\t// Disable eslint rules implemented in @typescript-eslint\n\t\"default-param-last\": 0,\n\t\"dot-notation\": 0,\n\t\"init-declarations\": 0,\n\t\"no-array-constructor\": 0,\n\t\"no-dupe-class-members\": 0,\n\t\"no-empty-function\": 0,\n\t\"no-implied-eval\": 0,\n\t\"no-invalid-this\": 0,\n\t\"no-loop-func\": 0,\n\t\"no-magic-numbers\": 0,\n\t\"no-redeclare\": 0,\n\t\"no-restricted-imports\": 0,\n\t\"no-return-await\": 0,\n\t\"no-shadow\": 0,\n\t\"no-throw-literal\": 0,\n\t\"no-unused-expressions\": 0,\n\t\"no-unused-vars\": 0,\n\t\"no-use-before-define\": 0,\n\t\"no-useless-constructor\": 0,\n\n\t\"require-await\": 0,\n\n\t// Disable Stylistic JS rules implemented in Stylistic TS\n\t\"@stylistic/ts/type-annotation-spacing\": 2,\n\t\"@stylistic/ts/keyword-spacing\": [\n\t\t2,\n\t\t{\n\t\t\tafter: true,\n\t\t\tbefore: true,\n\t\t},\n\t],\n\t\"@stylistic/ts/no-extra-parens\": 2,\n\t\"@stylistic/ts/no-extra-semi\": 2,\n\t\"@stylistic/js/brace-style\": 0,\n\t\"@stylistic/js/comma-dangle\": 0,\n\t\"@stylistic/js/comma-spacing\": 0,\n\t\"@stylistic/js/func-call-spacing\": 0,\n\t\"@stylistic/js/indent\": 0,\n\t\"@stylistic/js/keyword-spacing\": 0,\n\t\"@stylistic/js/lines-between-class-members\": 0,\n\t\"@stylistic/js/no-extra-parens\": 0,\n\t\"@stylistic/js/no-extra-semi\": 0,\n\t\"@stylistic/js/object-curly-spacing\": 0,\n\t\"@stylistic/js/padding-line-between-statements\": 0,\n\t\"@stylistic/js/quotes\": 0,\n\t\"@stylistic/js/semi\": 0,\n\t\"@stylistic/js/space-before-blocks\": 0,\n\t\"@stylistic/js/space-before-function-paren\": 0,\n\t\"@stylistic/js/space-infix-ops\": 0,\n\n\t// Stylistic\n\t\"@stylistic/ts/brace-style\": [2, \"1tbs\", { allowSingleLine: false }],\n\t\"@stylistic/ts/comma-dangle\": [\n\t\t2,\n\t\t{\n\t\t\tarrays: \"always-multiline\",\n\t\t\texports: \"always-multiline\",\n\t\t\tfunctions: \"always-multiline\",\n\t\t\timports: \"always-multiline\",\n\t\t\tobjects: \"always-multiline\",\n\t\t\tenums: \"always-multiline\",\n\t\t\tgenerics: \"never\",\n\t\t\ttuples: \"never\",\n\t\t},\n\t],\n\t\"@stylistic/ts/comma-spacing\": [2, { after: true, before: false }],\n\t\"@stylistic/ts/func-call-spacing\": [2, \"never\"],\n\t\"@stylistic/ts/indent\": [2, \"tab\"],\n\t\"@stylistic/ts/lines-between-class-members\": [2, \"always\"],\n\t\"@stylistic/ts/member-delimiter-style\": [\n\t\t2,\n\t\t{\n\t\t\tmultiline: { delimiter: \"semi\", requireLast: true },\n\t\t\toverrides: { interface: { multiline: { delimiter: \"semi\", requireLast: true } } },\n\t\t\tsingleline: { delimiter: \"semi\", requireLast: true },\n\t\t},\n\t],\n\t\"@stylistic/ts/object-curly-spacing\": [2, \"always\"],\n\t\"@stylistic/ts/padding-line-between-statements\": [\n\t\t2,\n\t\t{ blankLine: \"always\", next: \"*\", prev: \"multiline-block-like\" },\n\t],\n\t\"@stylistic/ts/quotes\": [2, \"double\"],\n\t\"@stylistic/ts/semi\": [2, \"always\"],\n\t\"@stylistic/ts/space-before-blocks\": [2, \"always\"],\n\t\"@stylistic/ts/space-before-function-paren\": [2, { anonymous: \"always\", named: \"never\", asyncArrow: \"always\" }],\n\t\"@stylistic/ts/space-infix-ops\": [2, { int32Hint: true }],\n\n\t// Additional rules\n\t\"consistent-return\": 0,\n\t\"default-case\": 0,\n\t\"default-case-last\": 0,\n\t\"import-x/no-dynamic-require\": 0,\n\t\"import-x/no-unresolved\": 0,\n\t\"jsdoc/check-tag-names\": 0,\n\t\"jsdoc/require-property-type\": 0,\n\t\"no-undef\": 0,\n\t\"n/global-require\": 0,\n\t\"sonarjs/no-all-duplicated-branches\": 2,\n\t\"sonarjs/no-element-overwrite\": 2,\n\t\"sonarjs/no-empty-collection\": 2,\n\t\"sonarjs/no-extra-arguments\": 2,\n\t\"sonarjs/no-identical-conditions\": 2,\n\t\"sonarjs/no-identical-expressions\": 2,\n\t\"sonarjs/no-ignored-return\": 2,\n\t\"sonarjs/no-one-iteration-loop\": 2,\n\t\"sonarjs/no-use-of-empty-return-value\": 2,\n\t\"sonarjs/non-existent-operator\": 2,\n\t\"sonarjs/elseif-without-else\": 0,\n\t\"sonarjs/max-switch-cases\": 0,\n\t\"sonarjs/no-collapsible-if\": 2,\n\t\"sonarjs/no-collection-size-mischeck\": 2,\n\t\"sonarjs/no-duplicate-string\": 0,\n\t\"sonarjs/no-duplicated-branches\": 2,\n\t\"sonarjs/no-gratuitous-expressions\": 2,\n\t\"sonarjs/no-identical-functions\": 2,\n\t\"sonarjs/no-inverted-boolean-check\": 2,\n\t\"sonarjs/no-nested-switch\": 2,\n\t\"sonarjs/no-nested-template-literals\": 0,\n\t\"sonarjs/no-redundant-boolean\": 2,\n\t\"sonarjs/no-redundant-jump\": 2,\n\t\"sonarjs/no-same-line-conditional\": 2,\n\t\"sonarjs/no-small-switch\": 0,\n\t\"sonarjs/no-unused-collection\": 2,\n\t\"sonarjs/no-useless-catch\": 0,\n\t\"sonarjs/prefer-immediate-return\": 2,\n\t\"sonarjs/prefer-object-literal\": 2,\n\t\"sonarjs/prefer-single-boolean-return\": 2,\n\t\"sonarjs/prefer-while\": 2,\n\t\"tsdoc/syntax\": 1,\n\t\"typescript-sort-keys/interface\": 2,\n\t\"typescript-sort-keys/string-enum\": 2,\n};\n\nconst settings: TSESLint.FlatConfig.Settings = {\n\tjsdoc: {\n\t\tmode: \"typescript\",\n\t},\n\t\"import-x/parsers\": {\n\t\t\"@typescript-eslint/parser\": [\".ts\", \".tsx\", \".cts\", \".mts\"],\n\t},\n\t\"import-x/external-module-folders\": [\"node_modules\", \"node_modules/@types\"],\n\t\"import-x/extensions\": [\".ts\", \".tsx\", \".cts\", \".mts\", \".js\", \".jsx\"],\n\t\"import-x/resolver\": {\n\t\ttypescript: true,\n\t\tnode: true\n\t},\n\t\"import-x/resolver-next\": [\n\t\tcreateTypeScriptImportResolver({\n\t\t\talwaysTryTypes: true,\n\t\t\tproject: [\"./tsconfig.json\", \"./tsconfig.eslint.json\"],\n\t\t})\n\t],\n};\n\n// @ts-expect-error typescript-eslint is poorly typed\nconst config: TSESLint.FlatConfig.ConfigArray = tseslint.config(...tseslint.configs.recommended, {\n\tplugins: {\n\t\tsonarjs: eslintPluginSonarjs,\n\t\ttsdoc: eslintPluginTsdoc,\n\t\t\"typescript-sort-keys\": fixupPluginRules(eslintPluginTypescriptSortKeys),\n\t},\n\trules,\n\tsettings,\n});\n\nexport default config;\n"]}