2026-03-05 16:46:03 +01:00
|
|
|
const { contextBridge, ipcRenderer, webUtils } = require('electron');
|
2026-03-05 14:45:06 +01:00
|
|
|
|
|
|
|
|
contextBridge.exposeInMainWorld('api', {
|
|
|
|
|
selectFolder: () => ipcRenderer.invoke('select-folder'),
|
|
|
|
|
selectZip: () => ipcRenderer.invoke('select-zip'),
|
2026-03-05 16:30:03 +01:00
|
|
|
processDroppedPath: (path) => ipcRenderer.invoke('process-dropped-path', { path }),
|
2026-03-05 16:46:03 +01:00
|
|
|
getPathForDroppedFile: (file) => webUtils.getPathForFile(file),
|
2026-03-05 16:11:01 +01:00
|
|
|
getDestination: () => ipcRenderer.invoke('get-destination'),
|
|
|
|
|
selectDestinationFolder: () => ipcRenderer.invoke('select-destination-folder'),
|
|
|
|
|
updateDestination: (destination) => ipcRenderer.invoke('update-destination', { destination }),
|
2026-03-16 10:11:59 +01:00
|
|
|
openUnroutedFolder: () => ipcRenderer.invoke('open-unrouted-folder'),
|
|
|
|
|
listUnroutedFiles: () => ipcRenderer.invoke('list-unrouted-files'),
|
2026-03-16 10:27:12 +01:00
|
|
|
listDuplicatesFiles: () => ipcRenderer.invoke('list-duplicates-files'),
|
2026-03-16 12:10:43 +01:00
|
|
|
listSkippedFiles: () => ipcRenderer.invoke('list-skipped-files'),
|
2026-03-16 10:27:12 +01:00
|
|
|
clearUnroutedFiles: () => ipcRenderer.invoke('clear-unrouted-files'),
|
|
|
|
|
clearDuplicatesFiles: () => ipcRenderer.invoke('clear-duplicates-files'),
|
2026-03-16 12:10:43 +01:00
|
|
|
clearSkippedFiles: () => ipcRenderer.invoke('clear-skipped-files'),
|
2026-03-16 14:54:23 +01:00
|
|
|
onProgress: (cb) => ipcRenderer.on('progress', (_e, data) => cb(data)),
|
|
|
|
|
offProgress: () => ipcRenderer.removeAllListeners('progress'),
|
2026-03-05 14:45:06 +01:00
|
|
|
});
|