diff --git a/frontend/package-lock.json b/frontend/package-lock.json index e1f785a..b6118ac 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -57,6 +57,7 @@ "pinia": "^3.0.3", "pinia-plugin-persistedstate": "^4.5.0", "prettier": "^3.6.2", + "prettier-plugin-toml": "^2.0.6", "remarkable": "^2.0.1", "sass": "^1.92.1", "sh-syntax": "^0.5.8", @@ -73,9 +74,11 @@ "@types/remarkable": "^2.0.8", "@vitejs/plugin-vue": "^6.0.1", "@wailsio/runtime": "latest", + "cross-env": "^7.0.3", "eslint": "^9.35.0", "eslint-plugin-vue": "^10.4.0", "globals": "^16.4.0", + "rollup-plugin-visualizer": "^6.0.3", "typescript": "^5.9.2", "typescript-eslint": "^8.43.0", "unplugin-vue-components": "^29.0.0", @@ -2225,6 +2228,21 @@ "win32" ] }, + "node_modules/@taplo/core": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/@taplo/core/-/core-0.2.0.tgz", + "integrity": "sha512-r8bl54Zj1In3QLkiW/ex694bVzpPJ9EhwqT9xkcUVODnVUGirdB1JTsmiIv0o1uwqZiwhi8xNnTOQBRQCpizrQ==", + "license": "MIT" + }, + "node_modules/@taplo/lib": { + "version": "0.5.0", + "resolved": "https://registry.npmmirror.com/@taplo/lib/-/lib-0.5.0.tgz", + "integrity": "sha512-+xIqpQXJco3T+VGaTTwmhxLa51qpkQxCjRwezjFZgr+l21ExlywJFcDfTrNmL6lG6tqb0h8GyJKO3UPGPtSCWg==", + "license": "MIT", + "dependencies": { + "@taplo/core": "^0.2.0" + } + }, "node_modules/@types/estree": { "version": "1.0.8", "resolved": "https://registry.npmmirror.com/@types/estree/-/estree-1.0.8.tgz", @@ -2820,6 +2838,16 @@ "dev": true, "license": "MIT" }, + "node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-4.3.0.tgz", @@ -3374,6 +3402,21 @@ "consola": "^3.2.3" } }, + "node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmmirror.com/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "dev": true, + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, "node_modules/codemirror": { "version": "6.0.2", "resolved": "https://registry.npmmirror.com/codemirror/-/codemirror-6.0.2.tgz", @@ -3578,6 +3621,25 @@ "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==", "license": "MIT" }, + "node_modules/cross-env": { + "version": "7.0.3", + "resolved": "https://registry.npmmirror.com/cross-env/-/cross-env-7.0.3.tgz", + "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "cross-spawn": "^7.0.1" + }, + "bin": { + "cross-env": "src/bin/cross-env.js", + "cross-env-shell": "src/bin/cross-env-shell.js" + }, + "engines": { + "node": ">=10.14", + "npm": ">=6", + "yarn": ">=1" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -3695,6 +3757,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/define-lazy-prop": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", + "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/define-properties": { "version": "1.2.1", "resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.1.tgz", @@ -3839,6 +3911,13 @@ "dev": true, "license": "MIT" }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmmirror.com/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "dev": true, + "license": "MIT" + }, "node_modules/entities": { "version": "4.5.0", "resolved": "https://registry.npmmirror.com/entities/-/entities-4.5.0.tgz", @@ -3933,6 +4012,16 @@ "@esbuild/win32-x64": "0.25.2" } }, + "node_modules/escalade": { + "version": "3.2.0", + "resolved": "https://registry.npmmirror.com/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/escape-string-regexp": { "version": "4.0.0", "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", @@ -4342,6 +4431,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-caller-file": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz", + "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", + "dev": true, + "license": "ISC", + "engines": { + "node": "6.* || 8.* || >= 10.*" + } + }, "node_modules/get-intrinsic": { "version": "1.3.0", "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.3.0.tgz", @@ -4713,6 +4812,22 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "dev": true, + "license": "MIT", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/is-extglob": { "version": "2.1.1", "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", @@ -4723,6 +4838,16 @@ "node": ">=0.10.0" } }, + "node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, "node_modules/is-generator-function": { "version": "1.1.0", "resolved": "https://registry.npmmirror.com/is-generator-function/-/is-generator-function-1.1.0.tgz", @@ -4829,6 +4954,19 @@ "url": "https://github.com/sponsors/mesqueeb" } }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/isarray": { "version": "2.0.5", "resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz", @@ -5465,6 +5603,24 @@ "optional": true, "peer": true }, + "node_modules/open": { + "version": "8.4.2", + "resolved": "https://registry.npmmirror.com/open/-/open-8.4.2.tgz", + "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "define-lazy-prop": "^2.0.0", + "is-docker": "^2.1.1", + "is-wsl": "^2.2.0" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/optionator": { "version": "0.9.4", "resolved": "https://registry.npmmirror.com/optionator/-/optionator-0.9.4.tgz", @@ -5834,6 +5990,24 @@ "url": "https://github.com/prettier/prettier?sponsor=1" } }, + "node_modules/prettier-plugin-toml": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/prettier-plugin-toml/-/prettier-plugin-toml-2.0.6.tgz", + "integrity": "sha512-12N/wBuHa9jd/KVy9pRP20NMKxQfQLMseQCt66lIbLaPLItvGUcSIryE1eZZMJ7loSws6Ig3M2Elc2EreNh76w==", + "license": "MIT", + "dependencies": { + "@taplo/lib": "^0.5.0" + }, + "engines": { + "node": ">=16.0.0" + }, + "funding": { + "url": "https://opencollective.com/unts" + }, + "peerDependencies": { + "prettier": "^3.0.3" + } + }, "node_modules/process": { "version": "0.11.10", "resolved": "https://registry.npmmirror.com/process/-/process-0.11.10.tgz", @@ -6057,6 +6231,16 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/require-directory": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/require-directory/-/require-directory-2.1.1.tgz", + "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/resolve": { "version": "1.22.10", "resolved": "https://registry.npmmirror.com/resolve/-/resolve-1.22.10.tgz", @@ -6165,6 +6349,50 @@ "fsevents": "~2.3.2" } }, + "node_modules/rollup-plugin-visualizer": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/rollup-plugin-visualizer/-/rollup-plugin-visualizer-6.0.3.tgz", + "integrity": "sha512-ZU41GwrkDcCpVoffviuM9Clwjy5fcUxlz0oMoTXTYsK+tcIFzbdacnrr2n8TXcHxbGKKXtOdjxM2HUS4HjkwIw==", + "dev": true, + "license": "MIT", + "dependencies": { + "open": "^8.0.0", + "picomatch": "^4.0.2", + "source-map": "^0.7.4", + "yargs": "^17.5.1" + }, + "bin": { + "rollup-plugin-visualizer": "dist/bin/cli.js" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "rolldown": "1.x || ^1.0.0-beta", + "rollup": "2.x || 3.x || 4.x" + }, + "peerDependenciesMeta": { + "rolldown": { + "optional": true + }, + "rollup": { + "optional": true + } + } + }, + "node_modules/rollup-plugin-visualizer/node_modules/picomatch": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", @@ -6429,6 +6657,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/source-map": { + "version": "0.7.6", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.7.6.tgz", + "integrity": "sha512-i5uvt8C3ikiWeNZSVZNWcfZPItFQOsYTUAOkcUPGd8DqDy1uOUikjt5dG+uRlwyvR108Fb9DOd4GvXfT0N2/uQ==", + "dev": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">= 12" + } + }, "node_modules/source-map-js": { "version": "1.2.1", "resolved": "https://registry.npmmirror.com/source-map-js/-/source-map-js-1.2.1.tgz", @@ -6508,6 +6746,34 @@ "safe-buffer": "~5.2.0" } }, + "node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmmirror.com/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "license": "MIT", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmmirror.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz", @@ -7422,6 +7688,24 @@ "node": ">=0.10.0" } }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, "node_modules/xml-name-validator": { "version": "4.0.0", "resolved": "https://registry.npmmirror.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz", @@ -7442,6 +7726,45 @@ "node": ">=0.4" } }, + "node_modules/y18n": { + "version": "5.0.8", + "resolved": "https://registry.npmmirror.com/y18n/-/y18n-5.0.8.tgz", + "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=10" + } + }, + "node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmmirror.com/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "dev": true, + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "dev": true, + "license": "ISC", + "engines": { + "node": ">=12" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmmirror.com/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/frontend/package.json b/frontend/package.json index 9007338..5629b8d 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -5,8 +5,8 @@ "type": "module", "scripts": { "dev": "vite --host --mode development", - "build:dev": "vue-tsc && vite build --minify false --mode development", - "build": "vue-tsc && vite build --mode production", + "build:dev": "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" vue-tsc && cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" vite build --minify false --mode development", + "build": "cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" vue-tsc && cross-env NODE_OPTIONS=\"--max-old-space-size=8192\" vite build --mode production", "preview": "vite preview", "lint": "eslint", "lint:fix": "eslint --fix" @@ -61,6 +61,7 @@ "pinia": "^3.0.3", "pinia-plugin-persistedstate": "^4.5.0", "prettier": "^3.6.2", + "prettier-plugin-toml": "^2.0.6", "remarkable": "^2.0.1", "sass": "^1.92.1", "sh-syntax": "^0.5.8", @@ -77,9 +78,11 @@ "@types/remarkable": "^2.0.8", "@vitejs/plugin-vue": "^6.0.1", "@wailsio/runtime": "latest", + "cross-env": "^7.0.3", "eslint": "^9.35.0", "eslint-plugin-vue": "^10.4.0", "globals": "^16.4.0", + "rollup-plugin-visualizer": "^6.0.3", "typescript": "^5.9.2", "typescript-eslint": "^8.43.0", "unplugin-vue-components": "^29.0.0", diff --git a/frontend/src/utils/prettier/plugins/go/build.bat b/frontend/src/common/prettier/plugins/go/build.bat similarity index 100% rename from frontend/src/utils/prettier/plugins/go/build.bat rename to frontend/src/common/prettier/plugins/go/build.bat diff --git a/frontend/src/utils/prettier/plugins/go/build.sh b/frontend/src/common/prettier/plugins/go/build.sh similarity index 100% rename from frontend/src/utils/prettier/plugins/go/build.sh rename to frontend/src/common/prettier/plugins/go/build.sh diff --git a/frontend/src/utils/prettier/plugins/go/go.d.ts b/frontend/src/common/prettier/plugins/go/go.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/go/go.d.ts rename to frontend/src/common/prettier/plugins/go/go.d.ts diff --git a/frontend/src/utils/prettier/plugins/go/go.mjs b/frontend/src/common/prettier/plugins/go/go.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/go/go.mjs rename to frontend/src/common/prettier/plugins/go/go.mjs diff --git a/frontend/src/utils/prettier/plugins/go/main.go b/frontend/src/common/prettier/plugins/go/main.go similarity index 100% rename from frontend/src/utils/prettier/plugins/go/main.go rename to frontend/src/common/prettier/plugins/go/main.go diff --git a/frontend/src/utils/prettier/plugins/java/comments.d.ts b/frontend/src/common/prettier/plugins/java/comments.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/comments.d.ts rename to frontend/src/common/prettier/plugins/java/comments.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/comments.js b/frontend/src/common/prettier/plugins/java/comments.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/comments.js rename to frontend/src/common/prettier/plugins/java/comments.js diff --git a/frontend/src/utils/prettier/plugins/java/index.d.ts b/frontend/src/common/prettier/plugins/java/index.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/index.d.ts rename to frontend/src/common/prettier/plugins/java/index.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/index.js b/frontend/src/common/prettier/plugins/java/index.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/index.js rename to frontend/src/common/prettier/plugins/java/index.js diff --git a/frontend/src/utils/prettier/plugins/java/options.d.ts b/frontend/src/common/prettier/plugins/java/options.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/options.d.ts rename to frontend/src/common/prettier/plugins/java/options.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/options.js b/frontend/src/common/prettier/plugins/java/options.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/options.js rename to frontend/src/common/prettier/plugins/java/options.js diff --git a/frontend/src/utils/prettier/plugins/java/parser.d.ts b/frontend/src/common/prettier/plugins/java/parser.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/parser.d.ts rename to frontend/src/common/prettier/plugins/java/parser.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/parser.js b/frontend/src/common/prettier/plugins/java/parser.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/parser.js rename to frontend/src/common/prettier/plugins/java/parser.js diff --git a/frontend/src/utils/prettier/plugins/java/printer.d.ts b/frontend/src/common/prettier/plugins/java/printer.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printer.d.ts rename to frontend/src/common/prettier/plugins/java/printer.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printer.js b/frontend/src/common/prettier/plugins/java/printer.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printer.js rename to frontend/src/common/prettier/plugins/java/printer.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/arrays.d.ts b/frontend/src/common/prettier/plugins/java/printers/arrays.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/arrays.d.ts rename to frontend/src/common/prettier/plugins/java/printers/arrays.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/arrays.js b/frontend/src/common/prettier/plugins/java/printers/arrays.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/arrays.js rename to frontend/src/common/prettier/plugins/java/printers/arrays.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/blocks-and-statements.d.ts b/frontend/src/common/prettier/plugins/java/printers/blocks-and-statements.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/blocks-and-statements.d.ts rename to frontend/src/common/prettier/plugins/java/printers/blocks-and-statements.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/blocks-and-statements.js b/frontend/src/common/prettier/plugins/java/printers/blocks-and-statements.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/blocks-and-statements.js rename to frontend/src/common/prettier/plugins/java/printers/blocks-and-statements.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/classes.d.ts b/frontend/src/common/prettier/plugins/java/printers/classes.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/classes.d.ts rename to frontend/src/common/prettier/plugins/java/printers/classes.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/classes.js b/frontend/src/common/prettier/plugins/java/printers/classes.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/classes.js rename to frontend/src/common/prettier/plugins/java/printers/classes.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/expressions.d.ts b/frontend/src/common/prettier/plugins/java/printers/expressions.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/expressions.d.ts rename to frontend/src/common/prettier/plugins/java/printers/expressions.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/expressions.js b/frontend/src/common/prettier/plugins/java/printers/expressions.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/expressions.js rename to frontend/src/common/prettier/plugins/java/printers/expressions.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/helpers.d.ts b/frontend/src/common/prettier/plugins/java/printers/helpers.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/helpers.d.ts rename to frontend/src/common/prettier/plugins/java/printers/helpers.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/helpers.js b/frontend/src/common/prettier/plugins/java/printers/helpers.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/helpers.js rename to frontend/src/common/prettier/plugins/java/printers/helpers.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/index.d.ts b/frontend/src/common/prettier/plugins/java/printers/index.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/index.d.ts rename to frontend/src/common/prettier/plugins/java/printers/index.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/index.js b/frontend/src/common/prettier/plugins/java/printers/index.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/index.js rename to frontend/src/common/prettier/plugins/java/printers/index.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/interfaces.d.ts b/frontend/src/common/prettier/plugins/java/printers/interfaces.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/interfaces.d.ts rename to frontend/src/common/prettier/plugins/java/printers/interfaces.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/interfaces.js b/frontend/src/common/prettier/plugins/java/printers/interfaces.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/interfaces.js rename to frontend/src/common/prettier/plugins/java/printers/interfaces.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/lexical-structure.d.ts b/frontend/src/common/prettier/plugins/java/printers/lexical-structure.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/lexical-structure.d.ts rename to frontend/src/common/prettier/plugins/java/printers/lexical-structure.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/lexical-structure.js b/frontend/src/common/prettier/plugins/java/printers/lexical-structure.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/lexical-structure.js rename to frontend/src/common/prettier/plugins/java/printers/lexical-structure.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/names.d.ts b/frontend/src/common/prettier/plugins/java/printers/names.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/names.d.ts rename to frontend/src/common/prettier/plugins/java/printers/names.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/names.js b/frontend/src/common/prettier/plugins/java/printers/names.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/names.js rename to frontend/src/common/prettier/plugins/java/printers/names.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/packages-and-modules.d.ts b/frontend/src/common/prettier/plugins/java/printers/packages-and-modules.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/packages-and-modules.d.ts rename to frontend/src/common/prettier/plugins/java/printers/packages-and-modules.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/packages-and-modules.js b/frontend/src/common/prettier/plugins/java/printers/packages-and-modules.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/packages-and-modules.js rename to frontend/src/common/prettier/plugins/java/printers/packages-and-modules.js diff --git a/frontend/src/utils/prettier/plugins/java/printers/types-values-and-variables.d.ts b/frontend/src/common/prettier/plugins/java/printers/types-values-and-variables.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/types-values-and-variables.d.ts rename to frontend/src/common/prettier/plugins/java/printers/types-values-and-variables.d.ts diff --git a/frontend/src/utils/prettier/plugins/java/printers/types-values-and-variables.js b/frontend/src/common/prettier/plugins/java/printers/types-values-and-variables.js similarity index 100% rename from frontend/src/utils/prettier/plugins/java/printers/types-values-and-variables.js rename to frontend/src/common/prettier/plugins/java/printers/types-values-and-variables.js diff --git a/frontend/src/utils/prettier/plugins/php/index.d.ts b/frontend/src/common/prettier/plugins/php/index.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/php/index.d.ts rename to frontend/src/common/prettier/plugins/php/index.d.ts diff --git a/frontend/src/utils/prettier/plugins/php/index.mjs b/frontend/src/common/prettier/plugins/php/index.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/index.mjs rename to frontend/src/common/prettier/plugins/php/index.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/clean.mjs b/frontend/src/common/prettier/plugins/php/src/clean.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/clean.mjs rename to frontend/src/common/prettier/plugins/php/src/clean.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/comments.mjs b/frontend/src/common/prettier/plugins/php/src/comments.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/comments.mjs rename to frontend/src/common/prettier/plugins/php/src/comments.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/index.mjs b/frontend/src/common/prettier/plugins/php/src/index.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/index.mjs rename to frontend/src/common/prettier/plugins/php/src/index.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/loc.mjs b/frontend/src/common/prettier/plugins/php/src/loc.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/loc.mjs rename to frontend/src/common/prettier/plugins/php/src/loc.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/needs-parens.mjs b/frontend/src/common/prettier/plugins/php/src/needs-parens.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/needs-parens.mjs rename to frontend/src/common/prettier/plugins/php/src/needs-parens.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/options.mjs b/frontend/src/common/prettier/plugins/php/src/options.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/options.mjs rename to frontend/src/common/prettier/plugins/php/src/options.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/parser.mjs b/frontend/src/common/prettier/plugins/php/src/parser.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/parser.mjs rename to frontend/src/common/prettier/plugins/php/src/parser.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/pragma.mjs b/frontend/src/common/prettier/plugins/php/src/pragma.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/pragma.mjs rename to frontend/src/common/prettier/plugins/php/src/pragma.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/printer.mjs b/frontend/src/common/prettier/plugins/php/src/printer.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/printer.mjs rename to frontend/src/common/prettier/plugins/php/src/printer.mjs diff --git a/frontend/src/utils/prettier/plugins/php/src/util.mjs b/frontend/src/common/prettier/plugins/php/src/util.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/php/src/util.mjs rename to frontend/src/common/prettier/plugins/php/src/util.mjs diff --git a/frontend/src/utils/prettier/plugins/rust/format/comments.ts b/frontend/src/common/prettier/plugins/rust/format/comments.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/format/comments.ts rename to frontend/src/common/prettier/plugins/rust/format/comments.ts diff --git a/frontend/src/utils/prettier/plugins/rust/format/complexity.ts b/frontend/src/common/prettier/plugins/rust/format/complexity.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/format/complexity.ts rename to frontend/src/common/prettier/plugins/rust/format/complexity.ts diff --git a/frontend/src/utils/prettier/plugins/rust/format/core.ts b/frontend/src/common/prettier/plugins/rust/format/core.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/format/core.ts rename to frontend/src/common/prettier/plugins/rust/format/core.ts diff --git a/frontend/src/utils/prettier/plugins/rust/format/external.ts b/frontend/src/common/prettier/plugins/rust/format/external.ts similarity index 98% rename from frontend/src/utils/prettier/plugins/rust/format/external.ts rename to frontend/src/common/prettier/plugins/rust/format/external.ts index 3e84295..ce3e9e8 100644 --- a/frontend/src/utils/prettier/plugins/rust/format/external.ts +++ b/frontend/src/common/prettier/plugins/rust/format/external.ts @@ -43,7 +43,7 @@ export const { stripTrailingHardline, } = doc.utils; -// Fallback implementations for removed utils in prettier 3 +// Fallback implementations for removed common in prettier 3 export const isConcat = (doc: any): boolean => Array.isArray(doc); export const getDocParts = (doc: any): any[] => Array.isArray(doc) ? doc : [doc]; export const propagateBreaks = (doc: any): any => doc; diff --git a/frontend/src/utils/prettier/plugins/rust/format/plugin.ts b/frontend/src/common/prettier/plugins/rust/format/plugin.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/format/plugin.ts rename to frontend/src/common/prettier/plugins/rust/format/plugin.ts diff --git a/frontend/src/utils/prettier/plugins/rust/format/printer.ts b/frontend/src/common/prettier/plugins/rust/format/printer.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/format/printer.ts rename to frontend/src/common/prettier/plugins/rust/format/printer.ts diff --git a/frontend/src/utils/prettier/plugins/rust/format/styling.ts b/frontend/src/common/prettier/plugins/rust/format/styling.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/format/styling.ts rename to frontend/src/common/prettier/plugins/rust/format/styling.ts diff --git a/frontend/src/utils/prettier/plugins/rust/index.ts b/frontend/src/common/prettier/plugins/rust/index.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/index.ts rename to frontend/src/common/prettier/plugins/rust/index.ts diff --git a/frontend/src/utils/prettier/plugins/rust/transform/custom/attribute.ts b/frontend/src/common/prettier/plugins/rust/transform/custom/attribute.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/transform/custom/attribute.ts rename to frontend/src/common/prettier/plugins/rust/transform/custom/attribute.ts diff --git a/frontend/src/utils/prettier/plugins/rust/transform/custom/cfg_if.ts b/frontend/src/common/prettier/plugins/rust/transform/custom/cfg_if.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/transform/custom/cfg_if.ts rename to frontend/src/common/prettier/plugins/rust/transform/custom/cfg_if.ts diff --git a/frontend/src/utils/prettier/plugins/rust/transform/custom/utils.ts b/frontend/src/common/prettier/plugins/rust/transform/custom/utils.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/transform/custom/utils.ts rename to frontend/src/common/prettier/plugins/rust/transform/custom/utils.ts diff --git a/frontend/src/utils/prettier/plugins/rust/transform/index.ts b/frontend/src/common/prettier/plugins/rust/transform/index.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/transform/index.ts rename to frontend/src/common/prettier/plugins/rust/transform/index.ts diff --git a/frontend/src/utils/prettier/plugins/rust/utils/common.ts b/frontend/src/common/prettier/plugins/rust/utils/common.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/utils/common.ts rename to frontend/src/common/prettier/plugins/rust/utils/common.ts diff --git a/frontend/src/utils/prettier/plugins/rust/utils/debug.ts b/frontend/src/common/prettier/plugins/rust/utils/debug.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/rust/utils/debug.ts rename to frontend/src/common/prettier/plugins/rust/utils/debug.ts diff --git a/frontend/src/utils/prettier/plugins/shell/index.ts b/frontend/src/common/prettier/plugins/shell/index.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/shell/index.ts rename to frontend/src/common/prettier/plugins/shell/index.ts diff --git a/frontend/src/utils/prettier/plugins/shell/languages.ts b/frontend/src/common/prettier/plugins/shell/languages.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/shell/languages.ts rename to frontend/src/common/prettier/plugins/shell/languages.ts diff --git a/frontend/src/utils/prettier/plugins/sql/detect.mjs b/frontend/src/common/prettier/plugins/sql/detect.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/sql/detect.mjs rename to frontend/src/common/prettier/plugins/sql/detect.mjs diff --git a/frontend/src/utils/prettier/plugins/sql/languages.js b/frontend/src/common/prettier/plugins/sql/languages.js similarity index 100% rename from frontend/src/utils/prettier/plugins/sql/languages.js rename to frontend/src/common/prettier/plugins/sql/languages.js diff --git a/frontend/src/utils/prettier/plugins/sql/sql.d.ts b/frontend/src/common/prettier/plugins/sql/sql.d.ts similarity index 100% rename from frontend/src/utils/prettier/plugins/sql/sql.d.ts rename to frontend/src/common/prettier/plugins/sql/sql.d.ts diff --git a/frontend/src/utils/prettier/plugins/sql/sql.mjs b/frontend/src/common/prettier/plugins/sql/sql.mjs similarity index 100% rename from frontend/src/utils/prettier/plugins/sql/sql.mjs rename to frontend/src/common/prettier/plugins/sql/sql.mjs diff --git a/frontend/src/utils/configUtils.ts b/frontend/src/common/utils/configUtils.ts similarity index 92% rename from frontend/src/utils/configUtils.ts rename to frontend/src/common/utils/configUtils.ts index cc9d936..94b2148 100644 --- a/frontend/src/utils/configUtils.ts +++ b/frontend/src/common/utils/configUtils.ts @@ -1,4 +1,4 @@ -import { LanguageType } from '@/../bindings/voidraft/internal/models/models'; +import { LanguageType } from '../../../bindings/voidraft/internal/models/models'; import type { SupportedLocaleType } from '@/stores/configStore'; /** diff --git a/frontend/src/stores/configStore.ts b/frontend/src/stores/configStore.ts index bbdb235..c1efb4c 100644 --- a/frontend/src/stores/configStore.ts +++ b/frontend/src/stores/configStore.ts @@ -15,7 +15,7 @@ import { AuthMethod } from '@/../bindings/voidraft/internal/models/models'; import {useI18n} from 'vue-i18n'; -import {ConfigUtils} from '@/utils/configUtils'; +import {ConfigUtils} from '@/common/utils/configUtils'; import * as runtime from '@wailsio/runtime'; // 国际化相关导入 export type SupportedLocaleType = 'zh-CN' | 'en-US'; diff --git a/frontend/src/views/editor/extensions/codeblock/lang-parser/languages.ts b/frontend/src/views/editor/extensions/codeblock/lang-parser/languages.ts index 5d2a78c..47c3c08 100644 --- a/frontend/src/views/editor/extensions/codeblock/lang-parser/languages.ts +++ b/frontend/src/views/editor/extensions/codeblock/lang-parser/languages.ts @@ -36,13 +36,14 @@ import htmlPrettierPlugin from "prettier/plugins/html" import cssPrettierPlugin from "prettier/plugins/postcss" import markdownPrettierPlugin from "prettier/plugins/markdown" import yamlPrettierPlugin from "prettier/plugins/yaml" -import goPrettierPlugin from "@/utils/prettier/plugins/go/go" -import sqlPrettierPlugin from "@/utils/prettier/plugins/sql/sql" -import phpPrettierPlugin from "@/utils/prettier/plugins/php" -import javaPrettierPlugin from "@/utils/prettier/plugins/java" +import goPrettierPlugin from "@/common/prettier/plugins/go/go" +import sqlPrettierPlugin from "@/common/prettier/plugins/sql/sql" +import phpPrettierPlugin from "@/common/prettier/plugins/php" +import javaPrettierPlugin from "@/common/prettier/plugins/java" import xmlPrettierPlugin from "@prettier/plugin-xml" -import * as rustPrettierPlugin from "@/utils/prettier/plugins/rust"; -import * as shellPrettierPlugin from "@/utils/prettier/plugins/shell"; +import * as rustPrettierPlugin from "@/common/prettier/plugins/rust"; +import * as shellPrettierPlugin from "@/common/prettier/plugins/shell"; +import tomlPrettierPlugin from "prettier-plugin-toml"; import * as prettierPluginEstree from "prettier/plugins/estree"; /** @@ -113,7 +114,10 @@ export const LANGUAGES: LanguageInfo[] = [ parser: "yaml", plugins: [yamlPrettierPlugin] }), - new LanguageInfo("toml", "TOML", StreamLanguage.define(toml).parser), + new LanguageInfo("toml", "TOML", StreamLanguage.define(toml).parser,{ + parser: "toml", + plugins: [tomlPrettierPlugin] + }), new LanguageInfo("go", "Go", StreamLanguage.define(go).parser, { parser: "go", plugins: [goPrettierPlugin] diff --git a/frontend/vite.config.ts b/frontend/vite.config.ts index 00997b8..3a26b8e 100644 --- a/frontend/vite.config.ts +++ b/frontend/vite.config.ts @@ -2,7 +2,8 @@ import {defineConfig, loadEnv} from 'vite'; import vue from '@vitejs/plugin-vue'; import Components from 'unplugin-vue-components/vite'; import * as path from 'path'; -import { nodePolyfills } from 'vite-plugin-node-polyfills' +import {nodePolyfills} from 'vite-plugin-node-polyfills' +import {visualizer} from 'rollup-plugin-visualizer' export default defineConfig(({mode}: { mode: string }): object => { const env: Record = loadEnv(mode, process.cwd()); @@ -17,6 +18,9 @@ export default defineConfig(({mode}: { mode: string }): object => { plugins: [ vue(), nodePolyfills(), + visualizer({open: false, + filename: 'visualizer.html', + }), Components({ dts: true, dirs: ['src/components'], @@ -29,21 +33,91 @@ export default defineConfig(({mode}: { mode: string }): object => { build: { outDir: "dist", assetsDir: "assets", - assetsInlineLimit: "4096", + assetsInlineLimit: 2048, // 减少内联资源阈值以减少bundle大小 cssCodeSplit: true, sourcemap: false, minify: "esbuild", write: true, emptyOutDir: true, - brotliSize: true, - chunkSizeWarningLimit: 2000, + brotliSize: false, // 跳过 brotli 压缩分析 + chunkSizeWarningLimit: 1000, watch: null, + reportCompressedSize: false, // 跳过压缩大小报告 rollupOptions: { + maxParallelFileOps: 2, + treeshake: { + moduleSideEffects: false, + propertyReadSideEffects: false, + tryCatchDeoptimization: false + }, output: { format: 'es', chunkFileNames: 'js/[name]-[hash].js', entryFileNames: 'js/[name]-[hash].js', assetFileNames: '[ext]/[name]-[hash].[ext]', + compact: true, + manualChunks(id: string) { + // CodeMirror + if (id.includes('@codemirror') || id.includes('codemirror')) { + return 'codemirror'; + } + // Vue + if (id.includes('vue') && !id.includes('vue-pick-colors')) { + return 'vue'; + } + // Lezer + if (id.includes('@lezer') || id.includes('lezer')) { + return 'lezer'; + } + // Prettier + if (id.includes('prettier')) { + return 'prettier'; + } + // Taplo + if (id.includes('@taplo') || id.includes('taplo')) { + return 'taplo'; + } + // Linguist languages + if (id.includes('franc-min') || id.includes('linguist-languages')) { + return 'lang-detect'; + } + // Java parser + if (id.includes('java-parser')) { + return 'java-parser'; + } + // PHP parser + if (id.includes('php-parser')) { + return 'php-parser'; + } + // SQL parser + if (id.includes('node-sql-parser') || id.includes('sql-formatter')) { + return 'sql-parser'; + } + // Rust tools + if (id.includes('jinx-rust') || id.includes('sh-syntax')) { + return 'rust-tools'; + } + // Color utils + if (id.includes('colors-named') || id.includes('hsl-matcher')) { + return 'color-utils'; + } + // Pinia + if (id.includes('pinia')) { + return 'pinia'; + } + // Vue Router + if (id.includes('vue-router')) { + return 'vue-router'; + } + // Vue i18n + if (id.includes('vue-i18n')) { + return 'vue-i18n'; + } + // Vendor + if (id.includes("node_modules")) { + return 'vendor'; + } + } }, } }