Files
agent/preload.js
bangae1 12d6e29d90 123
2025-10-20 18:57:24 +09:00

37 lines
1.2 KiB
JavaScript

// preload.js
const { contextBridge, ipcRenderer, desktopCapturer } = require('electron');
contextBridge.exposeInMainWorld('agentAPI', {
getEmployeeId: () => ipcRenderer.invoke('get-employee-id')
});
// preload.js
contextBridge.exposeInMainWorld('electronAPI', {
// 메인 → 렌더러 메시지 수신
receive: (channel, func) => {
ipcRenderer.on(channel, (event, ...args) => func(...args));
},
// 렌더러 → 메인 메시지 전송
send: (channel, data) => {
ipcRenderer.send(channel, data);
}
});
// desktopCapturer 노출 (보안 주의: 신뢰 가능한 코드만)
contextBridge.exposeInMainWorld('desktopCapturer', {
getSources: (options) => {
return new Promise((resolve, reject) => {
console.log(desktopCapturer);
desktopCapturer.getSources(options, (error, sources) => {
console.log('preload', sources)
if (error) {
console.error('preload err', error)
reject(error);
} else {
console.log('preload sources', sources)
resolve(sources);
}
});
});
}
});