diff options
| author | nsfisis <nsfisis@gmail.com> | 2024-08-01 22:28:29 +0900 |
|---|---|---|
| committer | nsfisis <nsfisis@gmail.com> | 2024-08-01 22:28:29 +0900 |
| commit | 4b206bf707ef5d092ea9579fe82a06ee1d6e0337 (patch) | |
| tree | f3eb93e716cf1c6da2bccc112ce3b7cebff95222 /frontend/.eslintrc.cjs | |
| parent | 7ccf1da2f7448d93f8209982813e4097af13fd70 (diff) | |
| parent | 3a59aa595b1674e9286f4df0035b5b1e38e6957d (diff) | |
| download | phperkaigi-2025-albatross-4b206bf707ef5d092ea9579fe82a06ee1d6e0337.tar.gz phperkaigi-2025-albatross-4b206bf707ef5d092ea9579fe82a06ee1d6e0337.tar.zst phperkaigi-2025-albatross-4b206bf707ef5d092ea9579fe82a06ee1d6e0337.zip | |
Merge branch 'feat/biome'
Diffstat (limited to 'frontend/.eslintrc.cjs')
| -rw-r--r-- | frontend/.eslintrc.cjs | 147 |
1 files changed, 76 insertions, 71 deletions
diff --git a/frontend/.eslintrc.cjs b/frontend/.eslintrc.cjs index b87e395..ee16293 100644 --- a/frontend/.eslintrc.cjs +++ b/frontend/.eslintrc.cjs @@ -1,78 +1,83 @@ /** @type {import('eslint').Linter.Config} */ module.exports = { - root: true, - parserOptions: { - ecmaVersion: "latest", - sourceType: "module", - ecmaFeatures: { - jsx: true, - }, - }, - env: { - browser: true, - commonjs: true, - es6: true, - }, - ignorePatterns: ["!**/.server", "!**/.client"], + root: true, + parserOptions: { + ecmaVersion: "latest", + sourceType: "module", + ecmaFeatures: { + jsx: true, + }, + }, + env: { + browser: true, + commonjs: true, + es6: true, + }, + ignorePatterns: ["!**/.server", "!**/.client"], - // Base config - extends: ["eslint:recommended"], + // Base config + extends: ["eslint:recommended"], - overrides: [ - // React - { - files: ["**/*.{js,jsx,ts,tsx}"], - plugins: ["react", "jsx-a11y"], - extends: [ - "plugin:react/recommended", - "plugin:react/jsx-runtime", - "plugin:react-hooks/recommended", - "plugin:jsx-a11y/recommended", - ], - settings: { - react: { - version: "detect", - }, - formComponents: ["Form"], - linkComponents: [ - { name: "Link", linkAttribute: "to" }, - { name: "NavLink", linkAttribute: "to" }, - ], - "import/resolver": { - typescript: {}, - }, - }, - }, + rules: { + // It conflicts with Biome. + "no-mixed-spaces-and-tabs": "off", + }, - // Typescript - { - files: ["**/*.{ts,tsx}"], - plugins: ["@typescript-eslint", "import"], - parser: "@typescript-eslint/parser", - settings: { - "import/internal-regex": "^~/", - "import/resolver": { - node: { - extensions: [".ts", ".tsx"], - }, - typescript: { - alwaysTryTypes: true, - }, - }, - }, - extends: [ - "plugin:@typescript-eslint/recommended", - "plugin:import/recommended", - "plugin:import/typescript", - ], - }, + overrides: [ + // React + { + files: ["**/*.{js,jsx,ts,tsx}"], + plugins: ["react", "jsx-a11y"], + extends: [ + "plugin:react/recommended", + "plugin:react/jsx-runtime", + "plugin:react-hooks/recommended", + "plugin:jsx-a11y/recommended", + ], + settings: { + react: { + version: "detect", + }, + formComponents: ["Form"], + linkComponents: [ + { name: "Link", linkAttribute: "to" }, + { name: "NavLink", linkAttribute: "to" }, + ], + "import/resolver": { + typescript: {}, + }, + }, + }, - // Node - { - files: [".eslintrc.cjs"], - env: { - node: true, - }, - }, - ], + // Typescript + { + files: ["**/*.{ts,tsx}"], + plugins: ["@typescript-eslint", "import"], + parser: "@typescript-eslint/parser", + settings: { + "import/internal-regex": "^~/", + "import/resolver": { + node: { + extensions: [".ts", ".tsx"], + }, + typescript: { + alwaysTryTypes: true, + }, + }, + }, + extends: [ + "plugin:@typescript-eslint/recommended", + "plugin:import/recommended", + "plugin:import/typescript", + ], + }, + + // Node + { + files: [".eslintrc.cjs"], + env: { + node: true, + }, + }, + ], }; |
