Mostra una progress bar con messaggio contestuale nelle 4 fasi: scansione sorgente, analisi cartella destinazione (con contatore cartelle), ricerca duplicati (con contatore file CAD), smistamento (N / totale). La barra è indeterminata nelle prime tre fasi e determinata durante la copia. Il canale IPC progress viene aperto all'inizio e chiuso al termine dell'operazione
21 lines
1.2 KiB
JavaScript
21 lines
1.2 KiB
JavaScript
const { contextBridge, ipcRenderer, webUtils } = require('electron');
|
|
|
|
contextBridge.exposeInMainWorld('api', {
|
|
selectFolder: () => ipcRenderer.invoke('select-folder'),
|
|
selectZip: () => ipcRenderer.invoke('select-zip'),
|
|
processDroppedPath: (path) => ipcRenderer.invoke('process-dropped-path', { path }),
|
|
getPathForDroppedFile: (file) => webUtils.getPathForFile(file),
|
|
getDestination: () => ipcRenderer.invoke('get-destination'),
|
|
selectDestinationFolder: () => ipcRenderer.invoke('select-destination-folder'),
|
|
updateDestination: (destination) => ipcRenderer.invoke('update-destination', { destination }),
|
|
openUnroutedFolder: () => ipcRenderer.invoke('open-unrouted-folder'),
|
|
listUnroutedFiles: () => ipcRenderer.invoke('list-unrouted-files'),
|
|
listDuplicatesFiles: () => ipcRenderer.invoke('list-duplicates-files'),
|
|
listSkippedFiles: () => ipcRenderer.invoke('list-skipped-files'),
|
|
clearUnroutedFiles: () => ipcRenderer.invoke('clear-unrouted-files'),
|
|
clearDuplicatesFiles: () => ipcRenderer.invoke('clear-duplicates-files'),
|
|
clearSkippedFiles: () => ipcRenderer.invoke('clear-skipped-files'),
|
|
onProgress: (cb) => ipcRenderer.on('progress', (_e, data) => cb(data)),
|
|
offProgress: () => ipcRenderer.removeAllListeners('progress'),
|
|
});
|