Implement es-lint-plugin-compat

This commit is contained in:
redphx 2024-07-28 09:00:31 +07:00
parent fd21fe63f7
commit 03eb323fd9
4 changed files with 22 additions and 1 deletions

View File

@ -2,9 +2,12 @@
import { readFile } from "node:fs/promises";
import { parseArgs } from "node:util";
import { sys } from "typescript";
// @ts-ignore
import txtScriptHeader from "./src/assets/header_script.txt" with { type: "text" };
// @ts-ignore
import txtMetaHeader from "./src/assets/header_meta.txt" with { type: "text" };
import { assert } from "node:console";
import { ESLint } from "eslint";
enum BuildTarget {
ALL = 'all',
@ -80,10 +83,20 @@ const build = async (target: BuildTarget, version: string, config: any={}) => {
// Save to script
await Bun.write(path, scriptHeader + result);
console.log(`---- [${target}] done in ${performance.now() - startTime} ms`);
// Create meta file
await Bun.write(outDir + '/' + outputMetaName, txtMetaHeader.replace('[[VERSION]]', version));
// Check with ESLint
const eslint = new ESLint();
eslint.lintFiles([path]).then((results: any) => {
results[0].messages.forEach((msg: any) => {
console.error(`${path}#${msg.line}: ${msg.message}`);
});
console.log(`---- [${target}] done in ${performance.now() - startTime} ms`);
console.log(`---- [${target}] ${new Date()}`);
});
}
const buildTargets = [

BIN
bun.lockb

Binary file not shown.

3
eslint.config.mjs Normal file
View File

@ -0,0 +1,3 @@
import compat from "eslint-plugin-compat";
export default [compat.configs['flat/recommended']];

View File

@ -2,6 +2,9 @@
"name": "better-xcloud",
"module": "src/index.ts",
"type": "module",
"browserslist": [
"Chrome >= 80"
],
"bin": {
"build": "build.ts"
},
@ -9,6 +12,8 @@
"@types/bun": "^1.1.6",
"@types/node": "^20.14.12",
"@types/stylus": "^0.48.42",
"eslint": "^9.8.0",
"eslint-plugin-compat": "^6.0.0",
"stylus": "^0.63.0"
},
"peerDependencies": {