1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-20 02:03:39 +00:00

[PM-3763] remove Sweet Alert from desktop and browser (#6138)

* update desktop and browser swal references to use CL

* rename bit-dialog-close

* share fingerprint dialog between desktop and browser

* apply code review

* format fingerprint in template

* apply code review

* fix button color

* fix button types

* update var names

* close awaitDesktop dialog on success AND error

* add DialogService to NativeMessageHandlerService deps

* wrap browser message dialogs in ngZone.run

* wrap native messaging handler in ngzone.run

* apply code review

* fix async ngzone

---------

Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
This commit is contained in:
Will Martin
2023-09-11 14:54:23 -04:00
committed by GitHub
parent 2323509dee
commit f999e2cea9
20 changed files with 268 additions and 118 deletions

View File

@@ -0,0 +1,19 @@
<bit-simple-dialog>
<span bitDialogTitle>
{{ "verifyBrowserTitle" | i18n }}
</span>
<span bitDialogContent>
<p>{{ "verifyBrowserDesc" | i18n }}</p>
<p>
<strong>{{ params.fingerprint.join("-") }}</strong>
</p>
</span>
<ng-container bitDialogFooter>
<button bitButton type="button" buttonType="primary" [bitDialogClose]="true">
{{ "approve" | i18n }}
</button>
<button bitButton type="button" buttonType="secondary" [bitDialogClose]="false">
{{ "cancel" | i18n }}
</button>
</ng-container>
</bit-simple-dialog>

View File

@@ -0,0 +1,25 @@
import { DIALOG_DATA } from "@angular/cdk/dialog";
import { Component, Inject } from "@angular/core";
import { JslibModule } from "@bitwarden/angular/jslib.module";
import { ButtonModule, DialogModule, DialogService } from "@bitwarden/components";
export type BrowserSyncVerificationDialogParams = {
fingerprint: string[];
};
@Component({
templateUrl: "browser-sync-verification-dialog.component.html",
standalone: true,
imports: [JslibModule, ButtonModule, DialogModule],
})
export class BrowserSyncVerificationDialogComponent {
constructor(@Inject(DIALOG_DATA) protected params: BrowserSyncVerificationDialogParams) {}
static open(dialogService: DialogService, data: BrowserSyncVerificationDialogParams) {
return dialogService.open(BrowserSyncVerificationDialogComponent, {
data,
disableClose: true,
});
}
}

View File

@@ -0,0 +1,18 @@
<bit-simple-dialog>
<span bitDialogTitle>
{{ "verifyNativeMessagingConnectionTitle" | i18n : data.applicationName }}:
</span>
<span bitDialogContent>
{{ "verifyNativeMessagingConnectionDesc" | i18n }}
<br />
{{ "verifyNativeMessagingConnectionWarning" | i18n }}
</span>
<ng-container bitDialogFooter>
<button bitButton type="button" buttonType="primary" [bitDialogClose]="true">
{{ "yes" | i18n }}
</button>
<button bitButton type="button" buttonType="secondary" [bitDialogClose]="false">
{{ "no" | i18n }}
</button>
</ng-container>
</bit-simple-dialog>

View File

@@ -0,0 +1,24 @@
import { DIALOG_DATA } from "@angular/cdk/dialog";
import { Component, Inject } from "@angular/core";
import { JslibModule } from "@bitwarden/angular/jslib.module";
import { ButtonModule, DialogModule, DialogService } from "@bitwarden/components";
export type VerifyNativeMessagingDialogData = {
applicationName: string;
};
@Component({
templateUrl: "verify-native-messaging-dialog.component.html",
standalone: true,
imports: [JslibModule, ButtonModule, DialogModule],
})
export class VerifyNativeMessagingDialogComponent {
constructor(@Inject(DIALOG_DATA) protected data: VerifyNativeMessagingDialogData) {}
static open(dialogService: DialogService, data: VerifyNativeMessagingDialogData) {
return dialogService.open<boolean>(VerifyNativeMessagingDialogComponent, {
data,
});
}
}