Files
video-downloader/preload.js

12 lines
842 B
JavaScript

const { contextBridge, ipcRenderer } = require('electron');
contextBridge.exposeInMainWorld('electronAPI', {
detectVideos: (url) => ipcRenderer.invoke('detect-videos', url),
startDownload: (url, formatId, extractAudio, audioFormat, title, downloadPlaylist) => ipcRenderer.invoke('start-download', { url, formatId, extractAudio, audioFormat, title, downloadPlaylist }),
cancelDownload: () => ipcRenderer.invoke('cancel-download'),
onProgress: (callback) => ipcRenderer.on('download-progress', (event, data) => callback(data)),
onComplete: (callback) => ipcRenderer.on('download-complete', (event, data) => callback(data)),
onError: (callback) => ipcRenderer.on('download-error', (event, message) => callback(message)),
onStatus: (callback) => ipcRenderer.on('download-status', (event, data) => callback(data))
});