Files
deskhub/desktop/src/preload.js
T
2026-10-23 17:22:55 +00:00

16 lines
822 B
JavaScript

const { contextBridge, ipcRenderer } = require('electron');
contextBridge.exposeInMainWorld('deskhub', {
session: () => ipcRenderer.invoke('session:get'),
login: (data) => ipcRenderer.invoke('auth:login', data),
logout: () => ipcRenderer.invoke('auth:logout'),
api: (req) => ipcRenderer.invoke('api', req),
openWeb: (path) => ipcRenderer.invoke('web:open', { path }),
notify: (title, body) => ipcRenderer.invoke('notify', { title, body }),
settings: () => ipcRenderer.invoke('settings:get'),
setSettings: (patch) => ipcRenderer.invoke('settings:set', patch),
badge: (count, dataUrl) => ipcRenderer.invoke('badge', { count, dataUrl }),
onNavigate: (cb) => ipcRenderer.on('navigate', (_e, page) => cb(page)),
onSessionExpired: (cb) => ipcRenderer.on('session-expired', () => cb()),
});