feat: Add new emoji assets and an UpdateBanner component.
Some checks failed
Build and Release / build-and-release (push) Failing after 3m28s
Some checks failed
Build and Release / build-and-release (push) Failing after 3m28s
This commit is contained in:
49
apps/electron/preload.cjs
Normal file
49
apps/electron/preload.cjs
Normal file
@@ -0,0 +1,49 @@
|
||||
const { contextBridge, ipcRenderer } = require('electron');
|
||||
|
||||
contextBridge.exposeInMainWorld('cryptoAPI', {
|
||||
generateKeys: () => ipcRenderer.invoke('generate-keys'),
|
||||
randomBytes: (size) => ipcRenderer.invoke('random-bytes', size),
|
||||
sha256: (data) => ipcRenderer.invoke('sha256', data),
|
||||
signMessage: (privateKey, message) => ipcRenderer.invoke('sign-message', privateKey, message),
|
||||
verifySignature: (publicKey, message, signature) => ipcRenderer.invoke('verify-signature', publicKey, message, signature),
|
||||
deriveAuthKeys: (password, salt) => ipcRenderer.invoke('derive-auth-keys', password, salt),
|
||||
encryptData: (data, key) => ipcRenderer.invoke('encrypt-data', data, key),
|
||||
decryptData: (encryptedData, key, iv, tag, options) => ipcRenderer.invoke('decrypt-data', encryptedData, key, iv, tag, options),
|
||||
decryptBatch: (items) => ipcRenderer.invoke('decrypt-batch', items),
|
||||
verifyBatch: (items) => ipcRenderer.invoke('verify-batch', items),
|
||||
|
||||
// RSA Helpers
|
||||
publicEncrypt: (publicKey, data) => ipcRenderer.invoke('public-encrypt', publicKey, data),
|
||||
privateDecrypt: (privateKey, encryptedHex) => ipcRenderer.invoke('private-decrypt', privateKey, encryptedHex),
|
||||
|
||||
fetchMetadata: (url) => ipcRenderer.invoke('fetch-metadata', url),
|
||||
openExternal: (url) => ipcRenderer.invoke('open-external', url),
|
||||
getScreenSources: () => ipcRenderer.invoke('get-screen-sources'),
|
||||
});
|
||||
|
||||
contextBridge.exposeInMainWorld('windowControls', {
|
||||
minimize: () => ipcRenderer.send('window-minimize'),
|
||||
maximize: () => ipcRenderer.send('window-maximize'),
|
||||
close: () => ipcRenderer.send('window-close'),
|
||||
});
|
||||
|
||||
contextBridge.exposeInMainWorld('appSettings', {
|
||||
get: (key) => ipcRenderer.invoke('get-setting', key),
|
||||
set: (key, value) => ipcRenderer.invoke('set-setting', key, value),
|
||||
});
|
||||
|
||||
contextBridge.exposeInMainWorld('updateAPI', {
|
||||
checkFlatpakUpdate: () => ipcRenderer.invoke('check-flatpak-update'),
|
||||
});
|
||||
|
||||
contextBridge.exposeInMainWorld('sessionPersistence', {
|
||||
save: (data) => ipcRenderer.invoke('save-session', data),
|
||||
load: () => ipcRenderer.invoke('load-session'),
|
||||
clear: () => ipcRenderer.invoke('clear-session'),
|
||||
});
|
||||
|
||||
contextBridge.exposeInMainWorld('idleAPI', {
|
||||
onIdleStateChanged: (callback) => ipcRenderer.on('idle-state-changed', (_event, data) => callback(data)),
|
||||
removeIdleStateListener: () => ipcRenderer.removeAllListeners('idle-state-changed'),
|
||||
getSystemIdleTime: () => ipcRenderer.invoke('get-system-idle-time'),
|
||||
});
|
||||
Reference in New Issue
Block a user