monerod-gui/app/preload.js

86 lines
2.5 KiB
JavaScript
Raw Normal View History

// preload.js
const { contextBridge, ipcRenderer } = require('electron');
2024-10-09 21:40:32 +00:00
//const os = require('os');
contextBridge.exposeInMainWorld('electronAPI', {
startMonerod: (args) => {
ipcRenderer.invoke('start-monerod', args);
},
onMonerodStarted: (callback) => {
ipcRenderer.on('monerod-started', callback);
},
2024-10-16 16:18:43 +00:00
monitorMonerod: () => {
ipcRenderer.invoke('monitor-monerod');
},
onMonitorMonerod: (callback) => {
ipcRenderer.on('on-monitor-monerod', callback);
},
onMonitorMonerodError: (callback) => {
ipcRenderer.on('on-monitor-monerod-error', callback);
},
unsubscribeOnMonerodStarted: () => {
const listeners = ipcRenderer.listeners('monerod-started');
listeners.forEach((listener) => {
ipcRenderer.removeListener('monerod-started', listener);
});
},
onMoneroStdout: (callback) => {
ipcRenderer.on('monero-stdout', callback);
},
onMoneroClose: (callback) => {
ipcRenderer.on('monero-close', callback);
2024-10-01 18:45:10 +00:00
},
2024-10-09 19:44:37 +00:00
getMoneroVersion: (monerodPath) => {
ipcRenderer.invoke('get-monero-version', monerodPath);
2024-10-01 18:45:10 +00:00
},
onMoneroVersion: (callback) => {
ipcRenderer.on('monero-version', callback);
},
onMoneroVersionError: (callback) => {
ipcRenderer.on('monero-version-error', callback);
2024-10-07 21:47:52 +00:00
},
downloadMonerod: (downloadUrl, destination) => {
ipcRenderer.invoke('download-monerod', downloadUrl, destination);
},
onDownloadProgress: (callback) => {
ipcRenderer.on('download-progress', callback);
2024-10-09 18:53:38 +00:00
},
checkValidMonerodPath: (path) => {
ipcRenderer.invoke('check-valid-monerod-path', path);
},
onCheckValidMonerodPath: (callback) => {
ipcRenderer.on('on-check-valid-monerod-path', callback);
},
2024-10-09 18:53:38 +00:00
selectFolder: () => {
ipcRenderer.invoke('select-folder')
},
onSelectedFolder: (callback) => {
ipcRenderer.on('selected-folder', callback);
2024-10-09 21:40:32 +00:00
},
2024-10-19 10:27:40 +00:00
selectFile: (extensions = undefined) => {
ipcRenderer.invoke('select-file', extensions);
},
onSelectedFile: (callback) => {
ipcRenderer.on('selected-file', callback);
},
2024-10-09 21:40:32 +00:00
isWifiConnected: () => {
ipcRenderer.invoke('is-wifi-connected');
},
onIsWifiConnectedResponse: (callback) => {
ipcRenderer.on('is-wifi-connected-result', callback);
},
getOsType: () => {
ipcRenderer.invoke('get-os-type');
},
gotOsType: (callback) => {
ipcRenderer.on('got-os-type', callback);
2024-10-13 18:47:25 +00:00
},
showNotification: (options) => {
ipcRenderer.invoke('show-notification', options);
},
2024-10-13 18:47:25 +00:00
quit: () => {
ipcRenderer.invoke('quit');
}
});