| 123456789101112131415161718192021222324252627282930313233343536 |
- const { contextBridge, ipcRenderer } = require('electron')
- contextBridge.exposeInMainWorld('yaoyaoDesktop', Object.freeze({
- unreadState: account => ipcRenderer.invoke('desktop:unread-state', account),
- status: () => ipcRenderer.invoke('desktop:status'),
- selectServer: mode => ipcRenderer.invoke('desktop:onboarding-select', mode),
- prepareServer: input => ipcRenderer.invoke('desktop:onboarding-prepare', input),
- login: input => ipcRenderer.invoke('desktop:onboarding-submit', input),
- openLogin: () => ipcRenderer.invoke('desktop:open-login'),
- forgetLogin: () => ipcRenderer.invoke('desktop:forget-login'),
- retry: () => ipcRenderer.invoke('desktop:retry'),
- forceSync: () => ipcRenderer.invoke('desktop:force-sync'),
- logs: () => ipcRenderer.invoke('desktop:logs'),
- openUpdates: () => ipcRenderer.invoke('desktop:updates'),
- updateState: () => ipcRenderer.invoke('desktop-update:state'),
- updateAction: action => ipcRenderer.invoke(`desktop-update:${action}`),
- onUpdateRequested: callback => {
- const listener = () => callback()
- ipcRenderer.on('desktop:update-requested', listener)
- return () => ipcRenderer.removeListener('desktop:update-requested', listener)
- },
- modeState: () => ipcRenderer.invoke('desktop:mode-state'),
- switchMode: mode => ipcRenderer.invoke('desktop:mode-switch', mode),
- openRemoteLogin: () => ipcRenderer.invoke('desktop:remote-login'),
- authorizeComputer: csrfToken => ipcRenderer.invoke('desktop:computer-authorize', csrfToken),
- authorizeCurrentDevice: scope => ipcRenderer.invoke('desktop:device-authorize', scope),
- /** 'local' on the YaoYao server Mac; paired host uuid in remote mode; null if unknown. */
- deviceHost: () => ipcRenderer.invoke('desktop:device-host'),
- openComputer: (id, target) => ipcRenderer.invoke('desktop-computer:open', id, target),
- computerTargetChanged: target => ipcRenderer.invoke('desktop-computer:target', target),
- computerClosed: () => ipcRenderer.invoke('desktop-computer:closed'),
- onComputerClose: callback => {
- const listener = () => callback()
- ipcRenderer.on('desktop-computer:request-close', listener)
- return () => ipcRenderer.removeListener('desktop-computer:request-close', listener)
- },
- }))
|