15 lines
907 B
JavaScript
15 lines
907 B
JavaScript
const { contextBridge, ipcRenderer } = require('electron');
|
|
|
|
contextBridge.exposeInMainWorld('api', {
|
|
checkDependencies: () => ipcRenderer.invoke('check-dependencies'),
|
|
onDependencyStatus: (callback) => ipcRenderer.on('dependency-status', (_, data) => callback(data)),
|
|
getVideoInfo: (url, browser) => ipcRenderer.invoke('get-video-info', { url, browser }),
|
|
downloadMedia: (url, format, quality, browser) => ipcRenderer.invoke('download-media', { url, format, quality, browser }),
|
|
onDownloadProgress: (callback) => ipcRenderer.on('download-progress', (_, data) => callback(data)),
|
|
selectDirectory: () => ipcRenderer.invoke('select-directory'),
|
|
getDownloadsFolder: () => ipcRenderer.invoke('get-downloads-folder'),
|
|
openPath: (path) => ipcRenderer.invoke('open-path', path),
|
|
minimizeWindow: () => ipcRenderer.send('window-minimize'),
|
|
closeWindow: () => ipcRenderer.send('window-close')
|
|
});
|