mirror of
https://github.com/bitwarden/browser
synced 2025-12-27 05:33:59 +00:00
22 lines
762 B
TypeScript
22 lines
762 B
TypeScript
import { ipcRenderer } from 'electron';
|
|
|
|
import { MessagingService } from 'jslib/abstractions/messaging.service';
|
|
|
|
import { BroadcasterService } from '../app/services/broadcaster.service';
|
|
|
|
export class DesktopRendererMessagingService implements MessagingService {
|
|
constructor(private broadcasterService: BroadcasterService) {
|
|
ipcRenderer.on('messagingService', async (event: any, message: any) => {
|
|
if (message.command) {
|
|
this.send(message.command, message);
|
|
}
|
|
});
|
|
}
|
|
|
|
send(subscriber: string, arg: any = {}) {
|
|
const message = Object.assign({}, { command: subscriber }, arg);
|
|
ipcRenderer.send('messagingService', message);
|
|
this.broadcasterService.send(message);
|
|
}
|
|
}
|