1
0
mirror of https://github.com/bitwarden/browser synced 2026-01-02 16:43:19 +00:00
Files
browser/src/services/desktopRendererMessaging.service.ts
2018-04-06 15:33:53 -04:00

22 lines
769 B
TypeScript

import { ipcRenderer } from 'electron';
import { MessagingService } from 'jslib/abstractions/messaging.service';
import { BroadcasterService } from 'jslib/angular/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);
}
}