Skip to content

Commit

Permalink
Migrate to eslint.config.mjs
Browse files Browse the repository at this point in the history
`.eslintrc.json` is deprecated.
  • Loading branch information
aeisenberg committed Jul 16, 2024
1 parent c2585ec commit 3cf7236
Show file tree
Hide file tree
Showing 91 changed files with 22,185 additions and 604 deletions.
71 changes: 0 additions & 71 deletions .eslintrc.json

This file was deleted.

116 changes: 116 additions & 0 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
// Automatically generated by running npx @eslint/migrate-config .eslintrc.json

import { fixupConfigRules, fixupPluginRules } from "@eslint/compat";
import typescriptEslint from "@typescript-eslint/eslint-plugin";
import filenames from "eslint-plugin-filenames";
import github from "eslint-plugin-github";
import _import from "eslint-plugin-import";
import noAsyncForeach from "eslint-plugin-no-async-foreach";
import tsParser from "@typescript-eslint/parser";
import path from "node:path";
import { fileURLToPath } from "node:url";
import js from "@eslint/js";
import { FlatCompat } from "@eslint/eslintrc";

const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
const compat = new FlatCompat({
baseDirectory: __dirname,
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all
});

export default [{
ignores: ["**/webpack.config.js", "lib/**/*", "src/testdata/**/*", "tests/**/*"],
}, ...fixupConfigRules(compat.extends(
"eslint:recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@typescript-eslint/recommended-requiring-type-checking",
"plugin:github/recommended",
"plugin:github/typescript",
"plugin:import/typescript",
)), {
plugins: {
"@typescript-eslint": fixupPluginRules(typescriptEslint),
filenames,
github: fixupPluginRules(github),
import: fixupPluginRules(_import),
"no-async-foreach": noAsyncForeach,
},

languageOptions: {
parser: tsParser,
ecmaVersion: 5,
sourceType: "script",

parserOptions: {
project: "./tsconfig.json",
},
},

settings: {
"import/resolver": {
node: {
moduleDirectory: ["node_modules", "src"],
},

typescript: {},
},
},

rules: {
"filenames/match-regex": ["error", "^[a-z0-9-]+(\\.test)?$"],
"i18n-text/no-en": "off",

"import/extensions": ["error", {
json: {},
}],

"import/no-amd": "error",
"import/no-commonjs": "error",
"import/no-cycle": "error",
"import/no-dynamic-require": "error",

"import/no-extraneous-dependencies": ["error", {
devDependencies: true,
}],

"import/no-namespace": "off",
"import/no-unresolved": "error",
"import/no-webpack-loader-syntax": "error",

"import/order": ["error", {
alphabetize: {
order: "asc",
},

"newlines-between": "always",
}],

"max-len": ["error", {
code: 120,
ignoreUrls: true,
ignoreStrings: true,
ignoreTemplateLiterals: true,
}],

"no-async-foreach/no-async-foreach": "error",
"no-sequences": "error",
"no-shadow": "off",
"@typescript-eslint/no-shadow": "error",
"one-var": ["error", "never"],
},
}, {
files: ["**"],

rules: {
"@typescript-eslint/no-explicit-any": "off",
"@typescript-eslint/no-unsafe-assignment": "off",
"@typescript-eslint/no-unsafe-member-access": "off",
"@typescript-eslint/no-var-requires": "off",
"@typescript-eslint/prefer-regexp-exec": "off",
"@typescript-eslint/require-await": "off",
"@typescript-eslint/restrict-template-expressions": "off",
"func-style": "off",
},
}];
105 changes: 95 additions & 10 deletions node_modules/.package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading

0 comments on commit 3cf7236

Please sign in to comment.