14 lines
806 B
JavaScript
14 lines
806 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) => ipcRenderer.invoke('get-video-info', url),
|
|
downloadMedia: (url, format, quality) => ipcRenderer.invoke('download-media', { url, format, quality }),
|
|
onDownloadProgress: (callback) => ipcRenderer.on('download-progress', (_, data) => callback(data)),
|
|
selectDirectory: () => ipcRenderer.invoke('select-directory'),
|
|
getDownloadsFolder: () => ipcRenderer.invoke('get-downloads-folder'),
|
|
minimizeWindow: () => ipcRenderer.send('window-minimize'),
|
|
closeWindow: () => ipcRenderer.send('window-close')
|
|
});
|