forked from raminturne/promptpad
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathpreload.js
More file actions
53 lines (52 loc) · 3.46 KB
/
Copy pathpreload.js
File metadata and controls
53 lines (52 loc) · 3.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
const { contextBridge, ipcRenderer } = require('electron');
contextBridge.exposeInMainWorld('api', {
platform: process.platform,
loadNotes: () => ipcRenderer.invoke('load-notes'),
saveNotes: (notes) => ipcRenderer.invoke('save-notes', notes),
minimize: () => ipcRenderer.send('window-minimize'),
close: () => ipcRenderer.send('window-close'),
toggleAlwaysOnTop: () => ipcRenderer.invoke('toggle-always-on-top'),
getAlwaysOnTop: () => ipcRenderer.invoke('get-always-on-top'),
loadSettings: () => ipcRenderer.invoke('load-settings'),
saveSettings: (settings) => ipcRenderer.invoke('save-settings', settings),
setBgColor: (color) => ipcRenderer.send('set-bg-color', color),
setStartup: (enabled) => ipcRenderer.invoke('set-startup', enabled),
getStartup: () => ipcRenderer.invoke('get-startup'),
openExternal: (url) => ipcRenderer.send('open-external', url),
checkUpdate: () => ipcRenderer.invoke('check-update'),
setOpacity: (v) => ipcRenderer.send('set-opacity', v),
setCloseToTray: (enabled) => ipcRenderer.send('set-close-to-tray', enabled),
handyEnter: (position) => ipcRenderer.invoke('handy-enter', position),
handyExit: () => ipcRenderer.invoke('handy-exit'),
handyExpand: (position, focus) => ipcRenderer.invoke('handy-expand', { position, focus }),
handyCollapse: (position) => ipcRenderer.invoke('handy-collapse', position),
handySetPosition: (position, open) => ipcRenderer.invoke('handy-set-position', { position, open }),
pickImage: () => ipcRenderer.invoke('pick-image'),
saveImage: (base64, ext) => ipcRenderer.invoke('save-image', base64, ext),
generateImage: (prompt, opts) => ipcRenderer.invoke('generate-image', prompt, opts),
improvePrompt: (text) => ipcRenderer.invoke('improve-prompt', text),
aiTransform: (action, text) => ipcRenderer.invoke('ai-transform', { action, text }),
chatMessage: (history) => ipcRenderer.invoke('chat-message', history),
transcribeAudio: (base64, mimeType, opts) => ipcRenderer.invoke('transcribe-audio', base64, mimeType, opts),
downloadImage: (filename) => ipcRenderer.invoke('download-image', filename),
revealImage: (filename) => ipcRenderer.invoke('reveal-image', filename),
copyImageToClipboard: (filename) => ipcRenderer.invoke('copy-image-clipboard', filename),
pickFiles: () => ipcRenderer.invoke('pick-files'),
saveFileAs: (storedName, name) => ipcRenderer.invoke('save-file-as', storedName, name),
openFile: (storedName) => ipcRenderer.invoke('open-file', storedName),
revealFile: (storedName) => ipcRenderer.invoke('reveal-file', storedName),
deleteFile: (storedName) => ipcRenderer.invoke('delete-file', storedName),
getStoragePath: () => ipcRenderer.invoke('get-storage-path'),
pickStorageFolder: () => ipcRenderer.invoke('pick-storage-folder'),
setStoragePath: (newBase) => ipcRenderer.invoke('set-storage-path', newBase),
openStorageFolder: () => ipcRenderer.invoke('open-storage-folder'),
exportData: () => ipcRenderer.invoke('export-data'),
importData: () => ipcRenderer.invoke('import-data'),
relaunchApp: () => ipcRenderer.send('relaunch-app'),
exportNote: (name, content, ext) => ipcRenderer.invoke('export-note', name, content, ext),
setQuickCapture: (enabled) => ipcRenderer.invoke('set-quick-capture', enabled),
onQuickCapture: (cb) => ipcRenderer.on('quick-capture', () => cb()),
qcSubmit: (payload) => ipcRenderer.send('qc-submit', payload),
qcClose: () => ipcRenderer.send('qc-close'),
onQcMessage: (cb) => ipcRenderer.on('qc-message', (_e, payload) => cb(payload))
});