mirror of
https://github.com/R0m1k3/EveFlow.git
synced 2026-10-11 17:29:03 +02:00
feat: implement file sharing, SVG image rendering, avatar emotional animations, live telemetry, and dynamic TTS description with cyberpunk playback controls
This commit is contained in:
1 parent
d77ace03cd
commit
bf247e7e5f
9 files changed
+1676
-99
No files matched your search
+31
@@ -0,0 +1,31 @@
|
||||
const { contextBridge, ipcRenderer } = require('electron');
|
||||
|
||||
// Exposition sécurisée via contextBridge (Zéro Trust contextIsolation)
|
||||
contextBridge.exposeInMainWorld('electronAPI', {
|
||||
windowControl: (action) => ipcRenderer.send('window-control', action),
|
||||
setWindowMode: (mode) => ipcRenderer.send('set-window-mode', mode),
|
||||
onWindowModeChanged: (callback) => {
|
||||
const subscription = (event, mode) => callback(mode);
|
||||
ipcRenderer.on('window-mode-changed', subscription);
|
||||
return () => ipcRenderer.removeListener('window-mode-changed', subscription);
|
||||
},
|
||||
// Logging : envoie une entrée structurée vers le processus principal pour écriture disque
|
||||
writeLog: (entry) => ipcRenderer.send('write-log', entry),
|
||||
// Webhook : abonnement aux events pushés par Hermes
|
||||
onHermesPush: (callback) => {
|
||||
const subscription = (event, data) => callback(data);
|
||||
ipcRenderer.on('hermes-push', subscription);
|
||||
return () => ipcRenderer.removeListener('hermes-push', subscription);
|
||||
},
|
||||
// Store persistant fichier — indépendant de l'origine HTTP/file://
|
||||
storeGet: (key) => ipcRenderer.invoke('store-get', key),
|
||||
storeSet: (key, value) => ipcRenderer.invoke('store-set', key, value),
|
||||
// Lecture de fichier local sécurisée
|
||||
readLocalFile: (filePath) => ipcRenderer.invoke('read-local-file', filePath),
|
||||
// Télémétrie réelle système
|
||||
getSystemMetrics: () => ipcRenderer.invoke('get-system-metrics'),
|
||||
// Écriture de fichier partagé
|
||||
writeSharedFile: (filename, content, isBase64) => ipcRenderer.invoke('write-shared-file', filename, content, isBase64),
|
||||
// Ouverture de fichier local
|
||||
openLocalFile: (filePath) => ipcRenderer.invoke('open-local-file', filePath),
|
||||
});
|
||||
Reference in new issue
Block a user