feat: web (#6)

This commit is contained in:
Cody Tseng
2024-11-16 15:44:37 +08:00
committed by GitHub
parent ab667afc30
commit 26c2512d61
60 changed files with 937 additions and 547 deletions

View File

@@ -24,12 +24,16 @@ const api = {
},
nostr: {
login: (nsec: string) => ipcRenderer.invoke('nostr:login', nsec),
logout: () => ipcRenderer.invoke('nostr:logout'),
getPublicKey: () => ipcRenderer.invoke('nostr:getPublicKey'),
signEvent: (draftEvent: TDraftEvent) => ipcRenderer.invoke('nostr:signEvent', draftEvent)
logout: () => ipcRenderer.invoke('nostr:logout')
}
}
// NIP-07
const nostr = {
getPublicKey: () => ipcRenderer.invoke('nostr:getPublicKey'),
signEvent: (draftEvent: TDraftEvent) => ipcRenderer.invoke('nostr:signEvent', draftEvent)
}
// Use `contextBridge` APIs to expose Electron APIs to
// renderer only if context isolation is enabled, otherwise
// just add to the DOM global.
@@ -37,6 +41,7 @@ if (process.contextIsolated) {
try {
contextBridge.exposeInMainWorld('electron', electronAPI)
contextBridge.exposeInMainWorld('api', api)
contextBridge.exposeInMainWorld('nostr', nostr)
} catch (error) {
console.error(error)
}
@@ -45,4 +50,6 @@ if (process.contextIsolated) {
window.electron = electronAPI
// @ts-ignore (define in dts)
window.api = api
// @ts-ignore (define in dts)
window.nostr = nostr
}