Restore to commit 74e578279624c6045ca440a3459ebfa1f8d54191
This commit is contained in:
40
windows-app/tauri-bridge.js
Normal file
40
windows-app/tauri-bridge.js
Normal file
@@ -0,0 +1,40 @@
|
||||
import { invoke } from "@tauri-apps/api/tauri";
|
||||
|
||||
function assertPayload(payload) {
|
||||
if (payload && typeof payload === "object") return payload;
|
||||
throw new Error("App payload must be an object");
|
||||
}
|
||||
|
||||
async function saveApiKey(token) {
|
||||
if (!token || typeof token !== "string") throw new Error("token is required");
|
||||
return invoke("save_api_key", { token });
|
||||
}
|
||||
|
||||
async function persistApp(app) {
|
||||
const valid = assertPayload(app);
|
||||
if (!valid.id) throw new Error("app.id is required");
|
||||
return invoke("persist_app", { app: valid });
|
||||
}
|
||||
|
||||
async function listApps() {
|
||||
return invoke("list_apps");
|
||||
}
|
||||
|
||||
async function syncApp(appId) {
|
||||
if (!appId) throw new Error("appId is required");
|
||||
return invoke("sync_app", { appId });
|
||||
}
|
||||
|
||||
async function runOpencodeTask(appId, taskName, args = []) {
|
||||
if (!appId) throw new Error("appId is required");
|
||||
if (!taskName) throw new Error("taskName is required");
|
||||
return invoke("run_opencode_task", { appId, taskName, args });
|
||||
}
|
||||
|
||||
window.windowsAppBridge = {
|
||||
saveApiKey,
|
||||
persistApp,
|
||||
listApps,
|
||||
syncApp,
|
||||
runOpencodeTask,
|
||||
};
|
||||
Reference in New Issue
Block a user