2024-09-17

This commit is contained in:
gcch 2024-09-17 12:57:51 +02:00
commit 82040ce0fb
543 changed files with 5727 additions and 4898 deletions

View file

@ -1,22 +1,31 @@
import eslint from "@eslint/js";
import js from "@eslint/js";
import oxlint from "eslint-plugin-oxlint";
import perfectionist from "eslint-plugin-perfectionist";
import globals from "globals";
import tseslint from "typescript-eslint";
export default tseslint.config(
eslint.configs.recommended,
js.configs.recommended,
perfectionist.configs["recommended-natural"],
...tseslint.configs.strictTypeChecked,
...tseslint.configs.stylisticTypeChecked,
// @ts-expect-error -- Erreur inévitable pour le moment.
oxlint.configs["flat/recommended"],
{
files: ["*.js", "web/app/themes/haiku-atelier-2024/src/**/*.ts"],
languageOptions: {
ecmaVersion: "latest",
globals: {
...globals.browser,
...globals.es2020,
},
parserOptions: {
projectService: true,
tsconfigRootDir: import.meta.dirname,
},
},
rules: {
/* */
/* Utilise Array<T> plutôt que T[]. */
"@typescript-eslint/array-type": ["error", {
default: "generic",
readonly: "generic",
@ -24,13 +33,12 @@ export default tseslint.config(
/* L'usage d'interfaces ou de types doit être à la discrétion du développeur. */
"@typescript-eslint/consistent-type-definitions": "off",
/* Désactive cette règle pour les fonctions fléchées pour rendre le code moins verbeux. */
"@typescript-eslint/no-confusing-void-expression": [
"error",
{
"ignoreArrowShorthand": true,
"ignoreVoidOperator": false,
},
],
"@typescript-eslint/no-confusing-void-expression": ["error", {
"ignoreArrowShorthand": true,
"ignoreVoidOperator": false,
}],
/* Cette règle est doublon avec les règles noUnused* de TypeScript. */
"@typescript-eslint/no-unused-vars": "off",
/* Cette règle empêche de lever des erreurs génériques (p.ex. `E extends Error`). */
"@typescript-eslint/only-throw-error": "off",
/* Cette règle empêche le style fonctionnel « point free ». */