Open TheElegantCoding opened 8 months ago
I am using flat config
from ESLint
several months ago, and this is my configuration with Qwik
, so far it works correctly.
eslint.config.js
import typescriptPlugin from '@typescript-eslint/eslint-plugin';
import typescriptParser from '@typescript-eslint/parser';
import prettierPlugin from 'eslint-plugin-prettier';
import qwikPlugin from 'eslint-plugin-qwik';
import globals from 'globals';
/** @type {import('eslint').Linter.FlatConfig[]} */
export default [
{
files: ['src/**/*.ts*'],
languageOptions: {
globals: {
...globals.node,
},
parser: typescriptParser,
parserOptions: {
ecmaFeatures: {
jsx: true,
},
ecmaVersion: 'latest',
project: ['./tsconfig.json'],
sourceType: 'module',
tsconfigRootDir: import.meta.dir,
},
},
plugins: {
'@typescript-eslint': typescriptPlugin,
prettier: prettierPlugin,
qwik: qwikPlugin,
},
rules: {
...prettierPlugin.configs.recommended.rules,
...qwikPlugin.configs.recommended.rules,
...typescriptPlugin.configs['strict-type-checked'].rules,
...typescriptPlugin.configs['stylistic-type-checked'].rules,
},
},
];
yes this kind of work but the types are not well defined
update this is the error the package has no support for typescript, te export is any
Temporary workaround: use ESLint official FlatCompat
.
pnpm add -D @eslint/eslintrc
// eslint.config.js
import { FlatCompat } from "@eslint/eslintrc";
const compat = new FlatCompat({
baseDirectory: import.meta.dirname,
});
export default [
// other configs
...compat.extends("plugin:qwik/recommended")
];
@JerryWu1234 how about this one?
@JerryWu1234 how about this one?
I can do it
@wmertens
I remembered there was PR about our migration from eslint
to Biome
.
and someone is focusing on.
@mrcaidev @devcaeg Could you help to try it when you are available?
Please add support for ESLint 9, including Flat config support.
See:
Thanks!
Maintainer update:
The idea is that the plugin keeps supporting v8, but also supports v9 better so that the types work correctly.
Furthermore, the qwik codebase and starters should use v9, so all eslint configs need updating.