mirror of
https://github.com/maputnik/editor.git
synced 2026-07-15 10:27:25 +00:00
73 lines
2.0 KiB
JavaScript
73 lines
2.0 KiB
JavaScript
import eslint from "@eslint/js";
|
|
import {defineConfig} from "eslint/config";
|
|
import stylisticTs from "@stylistic/eslint-plugin";
|
|
import tseslint from "typescript-eslint";
|
|
import reactPlugin from "eslint-plugin-react";
|
|
import reactHooksPlugin from "eslint-plugin-react-hooks";
|
|
import reactRefreshPlugin from "eslint-plugin-react-refresh";
|
|
|
|
export default defineConfig({
|
|
extends: [
|
|
eslint.configs.recommended,
|
|
tseslint.configs.recommended,
|
|
],
|
|
files: ["**/*.{js,jsx,ts,tsx}"],
|
|
ignores: [
|
|
"dist/**/*",
|
|
],
|
|
languageOptions: {
|
|
ecmaVersion: 2024,
|
|
sourceType: "module",
|
|
globals: {
|
|
global: "readonly"
|
|
}
|
|
},
|
|
settings: {
|
|
react: { version: "18.2" }
|
|
},
|
|
plugins: {
|
|
"react": reactPlugin,
|
|
"react-hooks": reactHooksPlugin,
|
|
"react-refresh": reactRefreshPlugin,
|
|
"@stylistic": stylisticTs
|
|
},
|
|
rules: {
|
|
"react-hooks/rules-of-hooks": "error",
|
|
"react-hooks/exhaustive-deps": "warn",
|
|
"react-refresh/only-export-components": [
|
|
"warn",
|
|
{ allowConstantExport: true, extraHOCs: ["withTranslation"] }
|
|
],
|
|
"@typescript-eslint/no-explicit-any": "off",
|
|
"@typescript-eslint/no-unused-vars": [
|
|
"warn",
|
|
{
|
|
varsIgnorePattern: "^_",
|
|
caughtErrors: "all",
|
|
caughtErrorsIgnorePattern: "^_",
|
|
argsIgnorePattern: "^_"
|
|
}
|
|
],
|
|
"no-unused-vars": "off",
|
|
"react/prop-types": "off",
|
|
"no-undef": "off",
|
|
"indent": "off",
|
|
"@stylistic/indent": ["error", 2],
|
|
"semi": "off",
|
|
"@stylistic/semi": ["error", "always"],
|
|
"quotes": "off",
|
|
"@stylistic/quotes": ["error", "double", { avoidEscape: true }],
|
|
"no-var": "error",
|
|
"@typescript-eslint/no-non-null-asserted-optional-chain": "off",
|
|
"@typescript-eslint/ban-ts-comment": "off",
|
|
"@typescript-eslint/no-empty-object-type": "off",
|
|
"@typescript-eslint/consistent-type-imports": ["error", { "fixStyle": "inline-type-imports" }],
|
|
|
|
},
|
|
linterOptions: {
|
|
reportUnusedDisableDirectives: true,
|
|
noInlineConfig: false
|
|
}
|
|
}
|
|
);
|