Assist_Design/apps/bff/eslint.config.cjs
2025-08-21 15:24:40 +09:00

46 lines
1.3 KiB
JavaScript

// Flat ESLint config for BFF (ESLint v9)
const js = require('@eslint/js');
const tsParser = require('@typescript-eslint/parser');
const tsPlugin = require('@typescript-eslint/eslint-plugin');
const prettierPlugin = require('eslint-plugin-prettier');
module.exports = [
{ ignores: ['dist/**', 'node_modules/**'] },
{
files: ['**/*.ts', '**/*.tsx'],
languageOptions: {
parser: tsParser,
parserOptions: {
project: './tsconfig.json',
tsconfigRootDir: __dirname,
sourceType: 'module',
},
},
plugins: {
'@typescript-eslint': tsPlugin,
prettier: prettierPlugin,
},
rules: {
...js.configs.recommended.rules,
'prettier/prettier': 'warn',
'@typescript-eslint/consistent-type-imports': 'error',
'@typescript-eslint/no-misused-promises': ['error', { checksVoidReturn: false }],
'@typescript-eslint/no-explicit-any': 'off',
'no-console': ['warn', { allow: ['warn', 'error'] }],
// Prefer TS variants of core rules
'no-unused-vars': 'off',
'@typescript-eslint/no-unused-vars': [
'warn',
{ argsIgnorePattern: '^_', varsIgnorePattern: '^_' },
],
'no-redeclare': 'off',
'@typescript-eslint/no-redeclare': [
'error',
{ ignoreDeclarationMerge: true },
],
},
},
];