mirror of
https://github.com/bitwarden/browser
synced 2026-02-06 19:53:59 +00:00
[PM-2014] feat: implement deletion without user verification
This commit is contained in:
@@ -34,4 +34,8 @@ export class WebauthnApiService {
|
||||
getCredentials(): Promise<ListResponse<WebauthnCredentialResponse>> {
|
||||
return this.apiService.send("GET", "/webauthn", null, true, true);
|
||||
}
|
||||
|
||||
deleteCredential(id: string): Promise<unknown> {
|
||||
return this.apiService.send("DELETE", `/webauthn/${id}`, null, true, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -114,6 +114,19 @@ export class WebauthnService {
|
||||
);
|
||||
}
|
||||
|
||||
async deleteCredential(credentialId: string): Promise<boolean> {
|
||||
try {
|
||||
await this.apiService.deleteCredential(credentialId);
|
||||
this.platformUtilsService.showToast("success", null, this.i18nService.t("passkeyRemoved"));
|
||||
this.refresh();
|
||||
return true;
|
||||
} catch (error) {
|
||||
this.logService?.error(error);
|
||||
this.platformUtilsService.showToast("error", null, this.i18nService.t("unexpectedError"));
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
private getCredentials$(): Observable<WebauthnCredentialView[]> {
|
||||
return from(this.apiService.getCredentials()).pipe(map((response) => response.data));
|
||||
}
|
||||
|
||||
@@ -38,7 +38,16 @@ export class DeleteCredentialDialogComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
submit = async () => {
|
||||
// empty
|
||||
if (this.credential === undefined) {
|
||||
return;
|
||||
}
|
||||
|
||||
this.dialogRef.disableClose = true;
|
||||
if (!(await this.webauthnService.deleteCredential(this.credential.id))) {
|
||||
this.dialogRef.disableClose = false;
|
||||
return;
|
||||
}
|
||||
this.dialogRef.close();
|
||||
};
|
||||
|
||||
ngOnDestroy(): void {
|
||||
|
||||
@@ -673,6 +673,9 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"passkeyRemoved": {
|
||||
"message": "Passkey removed"
|
||||
},
|
||||
"removePasskey": {
|
||||
"message": "Remove passkey"
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user