Files
Banana/electron/preload.js
2026-03-03 10:38:37 +08:00

16 lines
768 B
JavaScript

const { contextBridge, ipcRenderer } = require("electron");
contextBridge.exposeInMainWorld("electronAPI", {
getConfig: () => ipcRenderer.invoke("getConfig"),
saveConfig: (config) => ipcRenderer.invoke("saveConfig", config),
selectDirectory: (defaultPath) => ipcRenderer.invoke("selectDirectory", defaultPath),
selectReferenceFiles: () => ipcRenderer.invoke("selectReferenceFiles"),
getImageDataUrl: (filePath) => ipcRenderer.invoke("getImageDataUrl", filePath),
startGeneration: (options) => ipcRenderer.invoke("startGeneration", options),
onGenerationProgress: (cb) => {
const handler = (_e, data) => cb(data);
ipcRenderer.on("generationProgress", handler);
return () => ipcRenderer.removeListener("generationProgress", handler);
},
});