From 0f28cdcb487de70fb186d25a9364a37d14f2c32e Mon Sep 17 00:00:00 2001 From: duanshuwen Date: Wed, 3 Jun 2026 21:34:32 +0800 Subject: [PATCH] build: add staging/prod scripts and env type definitions update the default build script to use production mode define TypeScript types for all supported Vite environment variables --- package.json | 4 +++- src/env.d.ts | 13 +++++++++++++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 2a1b738..518bba2 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,9 @@ "type": "module", "scripts": { "dev": "vite", - "build": "vue-tsc --noEmit && vite build", + "build": "vue-tsc --noEmit && vite build --mode production", + "build:staging": "vue-tsc --noEmit && vite build --mode staging", + "build:prod": "vue-tsc --noEmit && vite build --mode production", "preview": "vite preview --host 0.0.0.0", "typecheck": "vue-tsc --noEmit", "test": "node --test src/**/*.test.ts" diff --git a/src/env.d.ts b/src/env.d.ts index fc5f35e..ea5c5c3 100644 --- a/src/env.d.ts +++ b/src/env.d.ts @@ -1,5 +1,18 @@ /// +interface ImportMetaEnv { + readonly VITE_APP_ENV: "development" | "staging" | "production"; + readonly VITE_API_BASE_URL: string; + readonly VITE_API_TIMEOUT_MS?: string; + readonly VITE_SOCKET_BASE_URL?: string; + readonly VITE_CLIENT_ID?: string; + readonly VITE_TOKEN?: string; +} + +interface ImportMeta { + readonly env: ImportMetaEnv; +} + declare module "*.vue" { import type { DefineComponent } from "vue";