Add scripts/precompress.ts, a dependency-free Node 26 tool that writes .br/.gz/.zst sidecars next to every text asset and keeps the originals, so static-web-server can serve the variant matching Accept-Encoding and fall back to the original. The coverage publish step runs it on the copied report. Wire scripts/*.ts into the toolchain: type-check (tsconfig include), lint and fix (oxlint paths), knip entry (CI invokes the file rather than importing it), and a narrow .oxlintrc override allowing node:* imports in Node CLI scripts.
46 lines
1.4 KiB
JSON
46 lines
1.4 KiB
JSON
{
|
|
"$schema": "./node_modules/oxlint/configuration_schema.json",
|
|
"plugins": ["typescript", "unicorn", "oxc", "import"],
|
|
"categories": {
|
|
"correctness": "error",
|
|
"suspicious": "error",
|
|
"perf": "warn",
|
|
"style": "warn",
|
|
"restriction": "error",
|
|
"nursery": "off"
|
|
},
|
|
"rules": {
|
|
"eslint/no-undefined": "off",
|
|
"eslint/sort-keys": "off",
|
|
"eslint/id-length": "off",
|
|
"import/no-named-export": "off",
|
|
"eslint/one-var": "off",
|
|
"import/group-exports": "off",
|
|
"import/exports-last": "off",
|
|
"eslint/sort-imports": "off",
|
|
"import/consistent-type-specifier-style": "off",
|
|
"unicorn/prefer-export-from": "off",
|
|
"typescript/method-signature-style": "off"
|
|
},
|
|
"options": { "typeAware": true },
|
|
"env": { "builtin": true, "es2024": true, "node": true },
|
|
"overrides": [
|
|
{
|
|
"files": ["**/*.test.ts"],
|
|
"rules": {
|
|
"no-unused-expressions": "off",
|
|
"no-empty-file": "off",
|
|
"import/no-nodejs-modules": "off",
|
|
"eslint/no-magic-numbers": "off"
|
|
}
|
|
},
|
|
{
|
|
"files": ["scripts/**/*.ts"],
|
|
"rules": {
|
|
"import/no-nodejs-modules": "off"
|
|
}
|
|
}
|
|
],
|
|
"ignorePatterns": ["dist", "node_modules", "coverage"]
|
|
}
|