Centralize ESLint into a single root config

Replace the duplicated per-workspace eslint.config.mjs files in
apps/console, apps/trust, packages/ui, and packages/eslint-config with
one root eslint.config.mjs that reuses the shared @probo/eslint-config
rule sets and scopes them per directory. Linting now runs from the repo
root, so pin the type-checked project service root and broaden the
import-x resolver to every workspace tsconfig (the #/* aliases live in
each app's tsconfig.app.json).

Drop the now-redundant per-package lint scripts and lint-only devDeps,
and add a root lint script that runs eslint over the four dirs with
multithreading restored via --concurrency auto, then lints n8n-node
through a direct workspace call. packages/n8n-node keeps its own
external preset.

Collapse the redundant lint-js -> npm-lint Makefile chain into a single
lint-js target and update the make docs accordingly.

Signed-off-by: Émile Ré <emile@probo.com>
This commit is contained in:
Émile Ré
2026-06-19 16:36:09 +02:00
parent 652be7a984
commit 4d28dab2f4
14 changed files with 339 additions and 927 deletions

View File

@@ -13,11 +13,13 @@
"scripts": {
"build": "turbo run build",
"dev": "turbo run dev",
"lint": "turbo run lint",
"lint": "eslint apps/console apps/trust packages/ui packages/eslint-config --concurrency auto && npm -w @probo/n8n-nodes-probo run lint",
"check": "turbo run check",
"relay": "relay-compiler"
},
"devDependencies": {
"@probo/eslint-config": "1.0.0",
"eslint": "^10.5.0",
"relay-compiler": "^21.0.1",
"turbo": "^2.9.14"
},