19 lines
791 B
JavaScript
19 lines
791 B
JavaScript
const { contextBridge, ipcRenderer } = require('electron')
|
|
|
|
async function invoke(channel, payload) {
|
|
const result = await ipcRenderer.invoke(channel, payload)
|
|
if (result?.ok) return result.data
|
|
const error = new Error(result?.error?.message || 'Request failed')
|
|
error.status = result?.error?.status || null
|
|
throw error
|
|
}
|
|
|
|
contextBridge.exposeInMainWorld('notesBridge', {
|
|
getAccount: () => invoke('credentials:get'),
|
|
saveCredentials: credentials => invoke('credentials:save', credentials),
|
|
clearCredentials: () => invoke('credentials:clear'),
|
|
syncNotes: payload => invoke('notes:sync', payload),
|
|
createNote: payload => invoke('notes:create', payload),
|
|
updateNote: payload => invoke('notes:update', payload),
|
|
deleteNote: payload => invoke('notes:delete', payload),
|
|
})
|