UNPKG

eslint-config-neon

Version:

The ultimate ESLint shareable config

138 lines (137 loc) 4.48 kB
//#region src/oxlint/typescript.jsplugins.ts const config = { jsPlugins: [ { name: "@neon/eslint-import-x", specifier: "eslint-plugin-import-x" }, { name: "@neon/eslint-sonarjs", specifier: "eslint-plugin-sonarjs" }, { name: "@neon/eslint-stylistic", specifier: "@stylistic/eslint-plugin" }, { name: "@neon/eslint-tsdoc", specifier: "eslint-plugin-tsdoc" }, { name: "@neon/eslint-typescript-sort-keys", specifier: "eslint-plugin-typescript-sort-keys" } ], overrides: [ { files: ["**/*.{js,jsx,ts,tsx,cjs,mjs,cts,mts}"], rules: { "@neon/eslint-sonarjs/elseif-without-else": 0, "@neon/eslint-sonarjs/max-switch-cases": 0, "@neon/eslint-sonarjs/no-all-duplicated-branches": 2, "@neon/eslint-sonarjs/no-collapsible-if": 2, "@neon/eslint-sonarjs/no-collection-size-mischeck": 2, "@neon/eslint-sonarjs/no-duplicate-string": 0, "@neon/eslint-sonarjs/no-duplicated-branches": 2, "@neon/eslint-sonarjs/no-element-overwrite": 2, "@neon/eslint-sonarjs/no-empty-collection": 2, "@neon/eslint-sonarjs/no-extra-arguments": 2, "@neon/eslint-sonarjs/no-gratuitous-expressions": 2, "@neon/eslint-sonarjs/no-identical-conditions": 2, "@neon/eslint-sonarjs/no-identical-expressions": 2, "@neon/eslint-sonarjs/no-identical-functions": 2, "@neon/eslint-sonarjs/no-ignored-return": 2, "@neon/eslint-sonarjs/no-inverted-boolean-check": 2, "@neon/eslint-sonarjs/no-nested-switch": 2, "@neon/eslint-sonarjs/no-nested-template-literals": 0, "@neon/eslint-sonarjs/no-redundant-boolean": 2, "@neon/eslint-sonarjs/no-redundant-jump": 2, "@neon/eslint-sonarjs/no-same-line-conditional": 2, "@neon/eslint-sonarjs/no-small-switch": 0, "@neon/eslint-sonarjs/no-unused-collection": 2, "@neon/eslint-sonarjs/no-use-of-empty-return-value": 2, "@neon/eslint-sonarjs/no-useless-catch": 0, "@neon/eslint-sonarjs/non-existent-operator": 2, "@neon/eslint-sonarjs/prefer-immediate-return": 2, "@neon/eslint-sonarjs/prefer-object-literal": 2, "@neon/eslint-sonarjs/prefer-single-boolean-return": 2, "@neon/eslint-sonarjs/prefer-while": 2, "@neon/eslint-stylistic/brace-style": [ 2, "1tbs", { allowSingleLine: false } ], "@neon/eslint-stylistic/comma-dangle": [2, { arrays: "always-multiline", exports: "always-multiline", functions: "always-multiline", imports: "always-multiline", objects: "always-multiline", enums: "always-multiline", generics: "never", tuples: "never" }], "@neon/eslint-stylistic/comma-spacing": [2, { after: true, before: false }], "@neon/eslint-stylistic/function-call-spacing": [2, "never"], "@neon/eslint-stylistic/indent": [2, "tab"], "@neon/eslint-stylistic/keyword-spacing": [2, { after: true, before: true }], "@neon/eslint-stylistic/lines-between-class-members": [2, "always"], "@neon/eslint-stylistic/member-delimiter-style": [2, { multiline: { delimiter: "semi", requireLast: true }, overrides: { interface: { multiline: { delimiter: "semi", requireLast: true } } }, singleline: { delimiter: "semi", requireLast: true } }], "@neon/eslint-stylistic/no-extra-parens": 2, "@neon/eslint-stylistic/no-extra-semi": 2, "@neon/eslint-stylistic/object-curly-spacing": [2, "always"], "@neon/eslint-stylistic/padding-line-between-statements": [2, { blankLine: "always", next: "*", prev: "multiline-block-like" }], "@neon/eslint-stylistic/quotes": [2, "double"], "@neon/eslint-stylistic/semi": [2, "always"], "@neon/eslint-stylistic/space-before-blocks": [2, "always"], "@neon/eslint-stylistic/space-before-function-paren": [2, { anonymous: "always", named: "never", asyncArrow: "always" }], "@neon/eslint-stylistic/space-infix-ops": [2, { int32Hint: true }], "@neon/eslint-stylistic/type-annotation-spacing": 2 } }, { files: ["**/*.{ts,tsx,cts,mts}"], rules: { "@neon/eslint-tsdoc/syntax": 1, "@neon/eslint-typescript-sort-keys/interface": 2, "@neon/eslint-typescript-sort-keys/string-enum": 2 } }, { files: ["**/*.oxlint-disabled"], rules: { "@neon/eslint-import-x/no-unresolved": 0 } } ], rules: {}, plugins: [] }; //#endregion export { config as default }; //# sourceMappingURL=typescript.jsplugins.mjs.map