1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-19 01:33:33 +00:00

process messages in popup

This commit is contained in:
Kyle Spearrin
2018-04-06 15:33:20 -04:00
parent 1a9cbb03e0
commit 94a79c80db
6 changed files with 209 additions and 23 deletions

View File

@@ -1,6 +1,9 @@
import { Location } from '@angular/common';
import {
ChangeDetectorRef,
Component,
NgZone,
OnDestroy,
OnInit,
} from '@angular/core';
import {
@@ -12,15 +15,21 @@ import { CipherService } from 'jslib/abstractions/cipher.service';
import { CipherView } from 'jslib/models/view/cipherView';
import { BroadcasterService } from 'jslib/angular/services/broadcaster.service';
import { CiphersComponent as BaseCiphersComponent } from 'jslib/angular/components/ciphers.component';
const BroadcasterSubscriptionId = 'CiphersComponent';
@Component({
selector: 'app-vault-ciphers',
templateUrl: 'ciphers.component.html',
})
export class CiphersComponent extends BaseCiphersComponent implements OnInit {
export class CiphersComponent extends BaseCiphersComponent implements OnInit, OnDestroy {
constructor(cipherService: CipherService, private route: ActivatedRoute,
private router: Router, private location: Location) {
private router: Router, private location: Location,
private ngZone: NgZone, private broadcasterService: BroadcasterService,
private changeDetectorRef: ChangeDetectorRef) {
super(cipherService);
}
@@ -37,6 +46,26 @@ export class CiphersComponent extends BaseCiphersComponent implements OnInit {
await super.load();
}
});
this.broadcasterService.subscribe(BroadcasterSubscriptionId, (message: any) => {
this.ngZone.run(async () => {
switch (message.command) {
case 'syncCompleted':
window.setTimeout(() => {
this.load();
}, 500);
break;
default:
break;
}
this.changeDetectorRef.detectChanges();
})
});
}
ngOnDestroy() {
this.broadcasterService.unsubscribe(BroadcasterSubscriptionId);
}
selectCipher(cipher: CipherView) {