Files
yaoayanui/src/services/audioDb.js
fengchuanhn@gmail.com d3af2e1124 11
2026-05-22 18:42:26 +08:00

50 lines
1.2 KiB
JavaScript

import { invoke, isTauri } from "@tauri-apps/api/core";
function ensureTauri() {
if (!isTauri()) {
throw new Error("语音历史需在 Tauri 桌面端使用");
}
}
/**
* @typedef {{ id: number, name: string, filePath: string, sourceText: string, createdAt: string }} GeneratedAudioRecord
*/
/** @returns {Promise<GeneratedAudioRecord[]>} */
export async function listGeneratedAudios() {
ensureTauri();
return invoke("list_generated_audios");
}
/**
* @param {string} name 可为空,空时由后端填入当前时间
* @param {string} filePath
* @param {string} [sourceText]
* @returns {Promise<GeneratedAudioRecord>}
*/
export async function insertGeneratedAudio(name, filePath, sourceText = "") {
ensureTauri();
return invoke("insert_generated_audio", {
name,
filePath,
sourceText: sourceText || "",
});
}
/**
* @param {number} id
* @param {string} name
*/
export async function updateGeneratedAudioName(id, name) {
ensureTauri();
return invoke("update_generated_audio_name", { id, name });
}
/**
* @param {number} id
*/
export async function deleteGeneratedAudio(id) {
ensureTauri();
return invoke("delete_generated_audio", { id });
}