Configure FIR production API defaults and environment overrides
Deploy B9 / deploy (push) Successful in 4m13s
Deploy B9 / deploy (push) Successful in 4m13s
This commit is contained in:
@@ -1 +1,7 @@
|
||||
VITE_AI_API_URL=http://localhost:8000
|
||||
FIR_LIBRARY_PROXY_TARGET=https://cs-fir.luxsin.com.cn
|
||||
|
||||
# 前端 FIR API 地址,默认使用生产服务;可手动修改覆盖。
|
||||
# 如需使用开发代理,可设为 /fir-library。
|
||||
# 生产配置见 .env.production,pnpm build 自动加载。
|
||||
VITE_FIR_API_BASE=https://cs-fir.luxsin.com.cn/api
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
# pnpm build 使用 production 模式,自动加载本文件。
|
||||
# 前端直接请求生产 API;/api 对应开发代理中的路径重写。
|
||||
VITE_FIR_API_BASE=https://cs-fir.luxsin.com.cn/api
|
||||
|
||||
# 仅供 Vite 开发代理使用,不会在静态部署中创建代理。
|
||||
FIR_LIBRARY_PROXY_TARGET=https://cs-fir.luxsin.com.cn
|
||||
@@ -6,7 +6,7 @@ import { useEffect, useRef, useState } from 'react';
|
||||
import { useDevice } from '@/contexts/DeviceContext';
|
||||
import { decodeFirWav, FirError, firRoomName, applyFir, readFirBinary, readFirJson, validateFirBinary, type FirRoom } from '@/lib/fir';
|
||||
|
||||
const LIBRARY = (import.meta.env.VITE_FIR_API_BASE || '/fir-library').replace(/\/$/, '');
|
||||
const LIBRARY = (import.meta.env.VITE_FIR_API_BASE || 'https://cs-fir.luxsin.com.cn/api').replace(/\/$/, '');
|
||||
|
||||
export default function FirPanel() {
|
||||
const { ip } = useDevice();
|
||||
|
||||
@@ -3,7 +3,7 @@ import { Dialog, DialogContent, DialogTitle, DialogDescription, DialogClose } fr
|
||||
import { firImageUrl, firRoomName, type FirRoom } from '@/lib/fir';
|
||||
import { firTranslate } from '@/lib/firLocale';
|
||||
|
||||
const LIBRARY = (import.meta.env.VITE_FIR_API_BASE || '/fir-library').replace(/\/$/, '');
|
||||
const LIBRARY = (import.meta.env.VITE_FIR_API_BASE || 'https://cs-fir.luxsin.com.cn/api').replace(/\/$/, '');
|
||||
|
||||
type Props = { room: FirRoom; language?: number };
|
||||
export function FirRoomDetailsBody({ room, language }: Props) {
|
||||
|
||||
+2
-2
@@ -7,8 +7,8 @@
|
||||
"dev": "vite --host",
|
||||
"dev:legacy": "vite --config vite.legacy.config.ts --host",
|
||||
"build": "pnpm build:legacy && pnpm build:modern",
|
||||
"build:modern": "vite build",
|
||||
"build:legacy": "vite build --config vite.legacy.config.ts",
|
||||
"build:modern": "vite build --mode production",
|
||||
"build:legacy": "vite build --config vite.legacy.config.ts --mode production",
|
||||
"build:test": "pnpm build:test:legacy && pnpm build:test:modern",
|
||||
"build:test:modern": "DEPLOY_ENV=test vite build",
|
||||
"build:test:legacy": "DEPLOY_ENV=test vite build --config vite.legacy.config.ts",
|
||||
|
||||
+7
-3
@@ -4,7 +4,7 @@ import tailwindcss from "@tailwindcss/vite";
|
||||
import react from "@vitejs/plugin-react";
|
||||
import fs from "node:fs";
|
||||
import path from "node:path";
|
||||
import { defineConfig, type Plugin } from "vite";
|
||||
import { defineConfig, loadEnv, type Plugin } from "vite";
|
||||
import { vitePluginManusRuntime } from "vite-plugin-manus-runtime";
|
||||
|
||||
const PROJECT_ROOT = import.meta.dirname;
|
||||
@@ -59,7 +59,10 @@ const deployBase = isProd
|
||||
? (DEPLOY_ENV === "test" ? `/${DEPLOY_PROJECT}/test/modern/` : `/${DEPLOY_PROJECT}/v2/modern/`)
|
||||
: "/";
|
||||
|
||||
export default defineConfig({
|
||||
export default defineConfig(({ mode }) => {
|
||||
const env = loadEnv(mode, PROJECT_ROOT, "");
|
||||
|
||||
return {
|
||||
plugins,
|
||||
base: deployBase,
|
||||
resolve: {
|
||||
@@ -138,7 +141,7 @@ export default defineConfig({
|
||||
timeout: 0,
|
||||
proxyTimeout: 0,
|
||||
},
|
||||
"/fir-library": { target: "http://127.0.0.1:8000", changeOrigin: true, rewrite: p => p.replace(/^\/fir-library/, "/api") },
|
||||
"/fir-library": { target: env.FIR_LIBRARY_PROXY_TARGET || "https://cs-fir.luxsin.com.cn", changeOrigin: true, rewrite: p => p.replace(/^\/fir-library/, "/api") },
|
||||
"/luxsin-audio-api": {
|
||||
target: "https://api.luxsin.com.cn",
|
||||
changeOrigin: true,
|
||||
@@ -159,4 +162,5 @@ export default defineConfig({
|
||||
deny: ["**/.*"],
|
||||
},
|
||||
},
|
||||
};
|
||||
});
|
||||
|
||||
@@ -3,7 +3,7 @@ import { jsxLocPlugin } from "@builder.io/vite-plugin-jsx-loc";
|
||||
import react from "@vitejs/plugin-react";
|
||||
import path from "node:path";
|
||||
import { createRequire } from "node:module";
|
||||
import { defineConfig, type Plugin } from "vite";
|
||||
import { defineConfig, loadEnv, type Plugin } from "vite";
|
||||
|
||||
const PROJECT_ROOT = import.meta.dirname;
|
||||
const require = createRequire(import.meta.url);
|
||||
@@ -52,7 +52,9 @@ const deployBase = isProd
|
||||
? (DEPLOY_ENV === "test" ? `/${DEPLOY_PROJECT}/test/legacy/` : `/${DEPLOY_PROJECT}/v2/legacy/`)
|
||||
: "/";
|
||||
|
||||
export default defineConfig({
|
||||
export default defineConfig(({ mode }) => {
|
||||
const env = loadEnv(mode, PROJECT_ROOT, "");
|
||||
return {
|
||||
plugins: [firDevProxy(),legacySkipModernCssPlugin(), legacyIndexRewritePlugin(), react(), jsxLocPlugin()],
|
||||
define: {
|
||||
"import.meta.env.VITE_X9_LEGACY": JSON.stringify("1"),
|
||||
@@ -118,7 +120,7 @@ export default defineConfig({
|
||||
timeout: 0,
|
||||
proxyTimeout: 0,
|
||||
},
|
||||
"/fir-library": { target: "http://127.0.0.1:8000", changeOrigin: true, rewrite: p => p.replace(/^\/fir-library/, "/api") },
|
||||
"/fir-library": { target: env.FIR_LIBRARY_PROXY_TARGET || "https://cs-fir.luxsin.com.cn", changeOrigin: true, rewrite: p => p.replace(/^\/fir-library/, "/api") },
|
||||
"/luxsin-audio-api": {
|
||||
target: "https://api.luxsin.com.cn",
|
||||
changeOrigin: true,
|
||||
@@ -126,4 +128,5 @@ export default defineConfig({
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user