unsub from query params route observable
This commit is contained in:
parent
645fa8e7ca
commit
8dff57e89e
2
jslib
2
jslib
|
@ -1 +1 @@
|
||||||
Subproject commit aa1784932945bfd1115f366cf5dafc6b481c19a3
|
Subproject commit cddeeefdbb14d5f70020fb705885eb05a0bb4339
|
|
@ -163,45 +163,45 @@ export class VaultComponent implements OnInit, OnDestroy {
|
||||||
}
|
}
|
||||||
|
|
||||||
async load() {
|
async load() {
|
||||||
this.route.queryParams.subscribe(async (params) => {
|
const queryParamsSub = this.route.queryParams.subscribe(async (params) => {
|
||||||
await this.groupingsComponent.load();
|
await this.groupingsComponent.load();
|
||||||
|
|
||||||
if (params == null) {
|
if (params == null) {
|
||||||
this.groupingsComponent.selectedAll = true;
|
this.groupingsComponent.selectedAll = true;
|
||||||
await this.ciphersComponent.load();
|
await this.ciphersComponent.load();
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (params.cipherId) {
|
|
||||||
const cipherView = new CipherView();
|
|
||||||
cipherView.id = params.cipherId;
|
|
||||||
if (params.action === 'edit') {
|
|
||||||
this.editCipher(cipherView);
|
|
||||||
} else {
|
|
||||||
this.viewCipher(cipherView);
|
|
||||||
}
|
|
||||||
} else if (params.action === 'add') {
|
|
||||||
this.addCipher();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (params.favorites) {
|
|
||||||
this.groupingsComponent.selectedFavorites = true;
|
|
||||||
await this.filterFavorites();
|
|
||||||
} else if (params.type) {
|
|
||||||
const t = parseInt(params.type, null);
|
|
||||||
this.groupingsComponent.selectedType = t;
|
|
||||||
await this.filterCipherType(t);
|
|
||||||
} else if (params.folderId) {
|
|
||||||
this.groupingsComponent.selectedFolder = true;
|
|
||||||
this.groupingsComponent.selectedFolderId = params.folderId;
|
|
||||||
await this.filterFolder(params.folderId);
|
|
||||||
} else if (params.collectionId) {
|
|
||||||
this.groupingsComponent.selectedCollectionId = params.collectionId;
|
|
||||||
await this.filterCollection(params.collectionId);
|
|
||||||
} else {
|
} else {
|
||||||
this.groupingsComponent.selectedAll = true;
|
if (params.cipherId) {
|
||||||
await this.ciphersComponent.load();
|
const cipherView = new CipherView();
|
||||||
|
cipherView.id = params.cipherId;
|
||||||
|
if (params.action === 'edit') {
|
||||||
|
this.editCipher(cipherView);
|
||||||
|
} else {
|
||||||
|
this.viewCipher(cipherView);
|
||||||
|
}
|
||||||
|
} else if (params.action === 'add') {
|
||||||
|
this.addCipher();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (params.favorites) {
|
||||||
|
this.groupingsComponent.selectedFavorites = true;
|
||||||
|
await this.filterFavorites();
|
||||||
|
} else if (params.type) {
|
||||||
|
const t = parseInt(params.type, null);
|
||||||
|
this.groupingsComponent.selectedType = t;
|
||||||
|
await this.filterCipherType(t);
|
||||||
|
} else if (params.folderId) {
|
||||||
|
this.groupingsComponent.selectedFolder = true;
|
||||||
|
this.groupingsComponent.selectedFolderId = params.folderId;
|
||||||
|
await this.filterFolder(params.folderId);
|
||||||
|
} else if (params.collectionId) {
|
||||||
|
this.groupingsComponent.selectedCollectionId = params.collectionId;
|
||||||
|
await this.filterCollection(params.collectionId);
|
||||||
|
} else {
|
||||||
|
this.groupingsComponent.selectedAll = true;
|
||||||
|
await this.ciphersComponent.load();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
queryParamsSub.unsubscribe();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue