From a78a4199a86ffa6b7789cc73db7635c81315bd9a Mon Sep 17 00:00:00 2001 From: Lyon <88232613+pikasTech@users.noreply.github.com> Date: Wed, 3 Jun 2026 17:15:54 +0800 Subject: [PATCH] fix(web): use local node_modules/.bin/vite in dist-contract (#767) Co-authored-by: Codex --- web/hwlab-cloud-web/scripts/dist-contract.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/web/hwlab-cloud-web/scripts/dist-contract.ts b/web/hwlab-cloud-web/scripts/dist-contract.ts index 665a319d..ac774ac5 100644 --- a/web/hwlab-cloud-web/scripts/dist-contract.ts +++ b/web/hwlab-cloud-web/scripts/dist-contract.ts @@ -186,8 +186,13 @@ function listFiles(dir) { } async function runViteBuild(rootDir, outDir) { + const localVite = path.join(rootDir, "node_modules", ".bin", "vite"); + const command = fs.existsSync(localVite) ? localVite : "npx"; + const args = fs.existsSync(localVite) + ? ["build", "--outDir", outDir, "--emptyOutDir", "false"] + : ["--yes", "vite@5.4.10", "build", "--outDir", outDir, "--emptyOutDir", "false"]; await new Promise((resolve, reject) => { - const child = spawn("bun", ["x", "vite", "build", "--outDir", outDir, "--emptyOutDir", "false"], { cwd: rootDir, stdio: ["ignore", "inherit", "inherit"] }); + const child = spawn(command, args, { cwd: rootDir, stdio: ["ignore", "inherit", "inherit"] }); child.on("error", reject); child.on("exit", (code) => { if (code === 0) resolve();