From 2fc9498f449af76fccee43fc71b206ae606a13e2 Mon Sep 17 00:00:00 2001 From: Brett Edwards Date: Wed, 18 Mar 2026 15:07:24 -0700 Subject: [PATCH] init --- web/{eslint.config.cjs => eslint.config.js} | 55 ++++++++++++--------- 1 file changed, 33 insertions(+), 22 deletions(-) rename web/{eslint.config.cjs => eslint.config.js} (53%) diff --git a/web/eslint.config.cjs b/web/eslint.config.js similarity index 53% rename from web/eslint.config.cjs rename to web/eslint.config.js index 4164b818e5..9dcfb3081e 100644 --- a/web/eslint.config.cjs +++ b/web/eslint.config.js @@ -1,11 +1,17 @@ -const { fixupConfigRules, fixupPluginRules } = require('@eslint/compat') -const typescriptEslint = require('@typescript-eslint/eslint-plugin') -const prettier = require('eslint-plugin-prettier') -const react = require('eslint-plugin-react') -const globals = require('globals') -const tsParser = require('@typescript-eslint/parser') -const js = require('@eslint/js') -const { FlatCompat } = require('@eslint/eslintrc') +import js from '@eslint/js' +import { fixupConfigRules, fixupPluginRules } from '@eslint/compat' +import { FlatCompat } from '@eslint/eslintrc' +import tsParser from '@typescript-eslint/parser' +import typescriptEslint from '@typescript-eslint/eslint-plugin' +import globals from 'globals' +import path from 'node:path' +import prettier from 'eslint-plugin-prettier' +import react from 'eslint-plugin-react' +import { fileURLToPath } from 'node:url' + +const __filename = fileURLToPath(import.meta.url) +const __dirname = path.dirname(__filename) +const srcFiles = ['src/**/*.{ts,tsx}'] const compat = new FlatCompat({ baseDirectory: __dirname, @@ -13,24 +19,27 @@ const compat = new FlatCompat({ allConfig: js.configs.all }) -module.export = [ - { - files: './src/**/*.{ts,tsx}' - }, +const compatConfigs = compat + .extends( + 'eslint:recommended', + 'plugin:react/recommended', + 'plugin:react-hooks/recommended', + 'plugin:@typescript-eslint/eslint-recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:prettier/recommended' + ) + .map(config => ({ + ...config, + files: srcFiles + })) + +export default [ { ignores: ['src/serviceWorker.ts', 'src/**/__tests__/**/*', 'src/**/*.stories.tsx', 'src/types/**/*', '**/cypress/'] }, - ...fixupConfigRules( - compat.extends( - 'eslint:recommended', - 'plugin:react/recommended', - 'plugin:react-hooks/recommended', - 'plugin:@typescript-eslint/eslint-recommended', - 'plugin:@typescript-eslint/recommended', - 'plugin:prettier/recommended' - ) - ), + ...fixupConfigRules(compatConfigs), { + files: srcFiles, plugins: { '@typescript-eslint': fixupPluginRules(typescriptEslint), prettier: fixupPluginRules(prettier), @@ -64,6 +73,8 @@ module.export = [ } ], 'react/prop-types': 'off', + 'react/react-in-jsx-scope': 'off', + 'react/jsx-uses-react': 'off', 'no-useless-catch': 'off', '@typescript-eslint/ban-ts-comment': 'warn', '@typescript-eslint/camelcase': 'off',