1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-17 08:43:33 +00:00

keytar storage listener

This commit is contained in:
Kyle Spearrin
2018-04-25 15:42:51 -04:00
parent 6e6dc422ac
commit 990c9a4c5d
3 changed files with 55 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
import { ipcMain } from 'electron';
import {
deletePassword,
getPassword,
setPassword,
} from 'keytar';
export class KeytarStorageListener {
constructor(private serviceName: string) { }
init() {
ipcMain.on('keytar', async (event: any, message: any) => {
try {
let val: string = null;
if (message.action && message.key) {
if (message.action === 'getPassword') {
val = await getPassword(this.serviceName, message.key);
} else if (message.action === 'setPassword' && message.value) {
await setPassword(this.serviceName, message.key, message.value);
} else if (message.action === 'deletePassword') {
await deletePassword(this.serviceName, message.key);
}
}
event.returnValue = val;
} catch {
event.returnValue = null;
}
});
}
}