This commit is contained in:
fengchuanhn@gmail.com
2026-05-18 08:52:38 +08:00
parent 9edf656828
commit 27e83c564c
4 changed files with 182 additions and 20 deletions

View File

@@ -5,20 +5,12 @@
import { invoke } from "@tauri-apps/api/core";
/** @returns {Promise<{ ok: true } | { ok: false, message: string }>} */
export async function ensureAppConfigReady() {
/** @returns {Promise<{ ok: true, map: Record<string, string> } | { ok: false, message: string }>} */
export async function loadAppConfigMap() {
try {
const map = await invoke("get_app_config");
if (map && typeof map === "object" && Object.keys(map).length > 0) {
const apiKey =map.BAILIAN_API_KEY ;
if (!apiKey) {
return {
ok: false,
message:
"缺少 BAILIAN_API_KEY 配置管理 或侧栏「本地配置」中设置",
};
}
return { ok: true };
return { ok: true, map };
}
const serverMsg = await invoke("get_app_config_last_message");
if (serverMsg) {
@@ -26,7 +18,7 @@ export async function ensureAppConfigReady() {
}
return {
ok: false,
message: "未获取到应用配置,请登录服务端或在「本地配置」中添加 LLM_API_KEY",
message: "未获取到应用配置,请登录服务端或在「本地配置」中添加密钥",
};
} catch {
return {
@@ -36,6 +28,43 @@ export async function ensureAppConfigReady() {
}
}
/** 一键仿写 / 在线 ASR 等需百炼密钥 */
export async function ensureAppConfigReady() {
const loaded = await loadAppConfigMap();
if (!loaded.ok) return loaded;
const apiKey = loaded.map.BAILIAN_API_KEY || loaded.map.DASHSCOPE_API_KEY;
if (!apiKey) {
return {
ok: false,
message:
"缺少 BAILIAN_API_KEY或 DASHSCOPE_API_KEY请在配置管理或「本地配置」中设置",
};
}
return { ok: true };
}
/** 撰写文案 / LLM 改写需文本模型配置 */
export async function ensureLlmConfigReady() {
const loaded = await loadAppConfigMap();
if (!loaded.ok) return loaded;
const { map } = loaded;
const apiKey = map.LLM_API_KEY || map.API_KEY;
const apiUrl = map.LLM_BASE_URL || map.LLM_API_URL;
if (!apiKey) {
return {
ok: false,
message: "缺少 LLM_API_KEY请在配置管理或「本地配置」中设置文本模型",
};
}
if (!apiUrl) {
return {
ok: false,
message: "缺少 LLM_BASE_URL或 LLM_API_URL请配置文本模型接口地址",
};
}
return { ok: true };
}
const DOUYIN_RE = /douyin\.com|iesdouyin\.com|v\.douyin\.com/i;
const DIRECT_VIDEO_RE = /\.(mp4|mov|m4v|webm|mkv|flv|avi)(\?|$)/i;