const { contextBridge, ipcRenderer } = require('electron'); contextBridge.exposeInMainWorld('converter', { pickInputZip: () => ipcRenderer.invoke('converter.pickInputZip'), pickOutputZip: (inputPath) => ipcRenderer.invoke('converter.pickOutputZip', { inputPath }), convert: ({ inputPath, outputPath }) => ipcRenderer.invoke('converter.convert', { inputPath, outputPath }), onLog: (cb) => { ipcRenderer.removeAllListeners('converter.log'); ipcRenderer.on('converter.log', (_e, { line }) => cb(line)); }, });