mirror of
https://github.com/bitwarden/browser
synced 2025-12-13 14:53:33 +00:00
Remove v1 tools owned settings pages and extension refresh conditional routing (#12350)
Co-authored-by: Daniel James Smith <djsmith85@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
parent
97e9947d38
commit
00d2ea0c31
@@ -648,9 +648,6 @@
|
|||||||
"rateExtension": {
|
"rateExtension": {
|
||||||
"message": "Rate the extension"
|
"message": "Rate the extension"
|
||||||
},
|
},
|
||||||
"rateExtensionDesc": {
|
|
||||||
"message": "Please consider helping us out with a good review!"
|
|
||||||
},
|
|
||||||
"browserNotSupportClipboard": {
|
"browserNotSupportClipboard": {
|
||||||
"message": "Your web browser does not support easy clipboard copying. Copy it manually instead."
|
"message": "Your web browser does not support easy clipboard copying. Copy it manually instead."
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -91,13 +91,10 @@ import { SendAddEditComponent as SendAddEditV2Component } from "../tools/popup/s
|
|||||||
import { SendCreatedComponent } from "../tools/popup/send-v2/send-created/send-created.component";
|
import { SendCreatedComponent } from "../tools/popup/send-v2/send-created/send-created.component";
|
||||||
import { SendV2Component } from "../tools/popup/send-v2/send-v2.component";
|
import { SendV2Component } from "../tools/popup/send-v2/send-v2.component";
|
||||||
import { AboutPageV2Component } from "../tools/popup/settings/about-page/about-page-v2.component";
|
import { AboutPageV2Component } from "../tools/popup/settings/about-page/about-page-v2.component";
|
||||||
import { AboutPageComponent } from "../tools/popup/settings/about-page/about-page.component";
|
|
||||||
import { MoreFromBitwardenPageV2Component } from "../tools/popup/settings/about-page/more-from-bitwarden-page-v2.component";
|
import { MoreFromBitwardenPageV2Component } from "../tools/popup/settings/about-page/more-from-bitwarden-page-v2.component";
|
||||||
import { MoreFromBitwardenPageComponent } from "../tools/popup/settings/about-page/more-from-bitwarden-page.component";
|
|
||||||
import { ExportBrowserV2Component } from "../tools/popup/settings/export/export-browser-v2.component";
|
import { ExportBrowserV2Component } from "../tools/popup/settings/export/export-browser-v2.component";
|
||||||
import { ImportBrowserV2Component } from "../tools/popup/settings/import/import-browser-v2.component";
|
import { ImportBrowserV2Component } from "../tools/popup/settings/import/import-browser-v2.component";
|
||||||
import { SettingsV2Component } from "../tools/popup/settings/settings-v2.component";
|
import { SettingsV2Component } from "../tools/popup/settings/settings-v2.component";
|
||||||
import { SettingsComponent } from "../tools/popup/settings/settings.component";
|
|
||||||
import { clearVaultStateGuard } from "../vault/guards/clear-vault-state.guard";
|
import { clearVaultStateGuard } from "../vault/guards/clear-vault-state.guard";
|
||||||
import { AddEditComponent } from "../vault/popup/components/vault/add-edit.component";
|
import { AddEditComponent } from "../vault/popup/components/vault/add-edit.component";
|
||||||
import { AttachmentsComponent } from "../vault/popup/components/vault/attachments.component";
|
import { AttachmentsComponent } from "../vault/popup/components/vault/attachments.component";
|
||||||
@@ -702,16 +699,18 @@ const routes: Routes = [
|
|||||||
canActivate: [canAccessFeature(FeatureFlag.ExtensionRefresh, true, "/")],
|
canActivate: [canAccessFeature(FeatureFlag.ExtensionRefresh, true, "/")],
|
||||||
data: { elevation: 1 } satisfies RouteDataProperties,
|
data: { elevation: 1 } satisfies RouteDataProperties,
|
||||||
},
|
},
|
||||||
...extensionRefreshSwap(AboutPageComponent, AboutPageV2Component, {
|
{
|
||||||
path: "about",
|
path: "about",
|
||||||
|
component: AboutPageV2Component,
|
||||||
canActivate: [authGuard],
|
canActivate: [authGuard],
|
||||||
data: { elevation: 1 } satisfies RouteDataProperties,
|
data: { elevation: 1 } satisfies RouteDataProperties,
|
||||||
}),
|
},
|
||||||
...extensionRefreshSwap(MoreFromBitwardenPageComponent, MoreFromBitwardenPageV2Component, {
|
{
|
||||||
path: "more-from-bitwarden",
|
path: "more-from-bitwarden",
|
||||||
|
component: MoreFromBitwardenPageV2Component,
|
||||||
canActivate: [authGuard],
|
canActivate: [authGuard],
|
||||||
data: { elevation: 2 } satisfies RouteDataProperties,
|
data: { elevation: 2 } satisfies RouteDataProperties,
|
||||||
}),
|
},
|
||||||
...extensionRefreshSwap(TabsComponent, TabsV2Component, {
|
...extensionRefreshSwap(TabsComponent, TabsV2Component, {
|
||||||
path: "tabs",
|
path: "tabs",
|
||||||
data: { elevation: 0 } satisfies RouteDataProperties,
|
data: { elevation: 0 } satisfies RouteDataProperties,
|
||||||
@@ -740,11 +739,12 @@ const routes: Routes = [
|
|||||||
canActivate: [authGuard],
|
canActivate: [authGuard],
|
||||||
data: { elevation: 0 } satisfies RouteDataProperties,
|
data: { elevation: 0 } satisfies RouteDataProperties,
|
||||||
}),
|
}),
|
||||||
...extensionRefreshSwap(SettingsComponent, SettingsV2Component, {
|
{
|
||||||
path: "settings",
|
path: "settings",
|
||||||
|
component: SettingsV2Component,
|
||||||
canActivate: [authGuard],
|
canActivate: [authGuard],
|
||||||
data: { elevation: 0 } satisfies RouteDataProperties,
|
data: { elevation: 0 } satisfies RouteDataProperties,
|
||||||
}),
|
},
|
||||||
...extensionRefreshSwap(SendGroupingsComponent, SendV2Component, {
|
...extensionRefreshSwap(SendGroupingsComponent, SendV2Component, {
|
||||||
path: "send",
|
path: "send",
|
||||||
canActivate: [authGuard],
|
canActivate: [authGuard],
|
||||||
|
|||||||
@@ -63,7 +63,6 @@ import { SendListComponent } from "../tools/popup/send/components/send-list.comp
|
|||||||
import { SendAddEditComponent } from "../tools/popup/send/send-add-edit.component";
|
import { SendAddEditComponent } from "../tools/popup/send/send-add-edit.component";
|
||||||
import { SendGroupingsComponent } from "../tools/popup/send/send-groupings.component";
|
import { SendGroupingsComponent } from "../tools/popup/send/send-groupings.component";
|
||||||
import { SendTypeComponent } from "../tools/popup/send/send-type.component";
|
import { SendTypeComponent } from "../tools/popup/send/send-type.component";
|
||||||
import { SettingsComponent } from "../tools/popup/settings/settings.component";
|
|
||||||
import { ActionButtonsComponent } from "../vault/popup/components/action-buttons.component";
|
import { ActionButtonsComponent } from "../vault/popup/components/action-buttons.component";
|
||||||
import { CipherRowComponent } from "../vault/popup/components/cipher-row.component";
|
import { CipherRowComponent } from "../vault/popup/components/cipher-row.component";
|
||||||
import { AddEditCustomFieldsComponent } from "../vault/popup/components/vault/add-edit-custom-fields.component";
|
import { AddEditCustomFieldsComponent } from "../vault/popup/components/vault/add-edit-custom-fields.component";
|
||||||
@@ -174,7 +173,6 @@ import "../platform/popup/locales";
|
|||||||
SendListComponent,
|
SendListComponent,
|
||||||
SendTypeComponent,
|
SendTypeComponent,
|
||||||
SetPasswordComponent,
|
SetPasswordComponent,
|
||||||
SettingsComponent,
|
|
||||||
VaultSettingsComponent,
|
VaultSettingsComponent,
|
||||||
ShareComponent,
|
ShareComponent,
|
||||||
SsoComponentV1,
|
SsoComponentV1,
|
||||||
|
|||||||
@@ -1,63 +0,0 @@
|
|||||||
<header>
|
|
||||||
<div class="left">
|
|
||||||
<button type="button" routerLink="/tabs/settings">
|
|
||||||
<span class="header-icon"><i class="bwi bwi-angle-left" aria-hidden="true"></i></span>
|
|
||||||
<span>{{ "back" | i18n }}</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<h1 class="center">
|
|
||||||
<span class="title">{{ "about" | i18n }}</span>
|
|
||||||
</h1>
|
|
||||||
<div class="right">
|
|
||||||
<app-pop-out></app-pop-out>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<main tabindex="-1">
|
|
||||||
<div class="box list">
|
|
||||||
<div class="box-content single-line">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="about()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "aboutBitwarden" | i18n }}</div>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="launchHelp()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "helpCenter" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="openWebVault()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "bitWebVaultApp" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/more-from-bitwarden"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "moreFromBitwarden" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="rate()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "rateExtension" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
@@ -1,84 +0,0 @@
|
|||||||
import { CommonModule } from "@angular/common";
|
|
||||||
import { Component } from "@angular/core";
|
|
||||||
import { RouterModule } from "@angular/router";
|
|
||||||
import { firstValueFrom } from "rxjs";
|
|
||||||
|
|
||||||
import { JslibModule } from "@bitwarden/angular/jslib.module";
|
|
||||||
import { DeviceType } from "@bitwarden/common/enums";
|
|
||||||
import { EnvironmentService } from "@bitwarden/common/platform/abstractions/environment.service";
|
|
||||||
import { PlatformUtilsService } from "@bitwarden/common/platform/abstractions/platform-utils.service";
|
|
||||||
import { DialogService } from "@bitwarden/components";
|
|
||||||
|
|
||||||
import { BrowserApi } from "../../../../platform/browser/browser-api";
|
|
||||||
import { PopOutComponent } from "../../../../platform/popup/components/pop-out.component";
|
|
||||||
import { AboutDialogComponent } from "../about-dialog/about-dialog.component";
|
|
||||||
|
|
||||||
const RateUrls = {
|
|
||||||
[DeviceType.ChromeExtension]:
|
|
||||||
"https://chromewebstore.google.com/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb/reviews",
|
|
||||||
[DeviceType.FirefoxExtension]:
|
|
||||||
"https://addons.mozilla.org/en-US/firefox/addon/bitwarden-password-manager/#reviews",
|
|
||||||
[DeviceType.OperaExtension]:
|
|
||||||
"https://addons.opera.com/en/extensions/details/bitwarden-free-password-manager/#feedback-container",
|
|
||||||
[DeviceType.EdgeExtension]:
|
|
||||||
"https://microsoftedge.microsoft.com/addons/detail/jbkfoedolllekgbhcbcoahefnbanhhlh",
|
|
||||||
[DeviceType.VivaldiExtension]:
|
|
||||||
"https://chromewebstore.google.com/detail/bitwarden-free-password-m/nngceckbapebfimnlniiiahkandclblb/reviews",
|
|
||||||
[DeviceType.SafariExtension]: "https://apps.apple.com/app/bitwarden/id1352778147",
|
|
||||||
};
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
templateUrl: "about-page.component.html",
|
|
||||||
standalone: true,
|
|
||||||
imports: [CommonModule, JslibModule, RouterModule, PopOutComponent],
|
|
||||||
})
|
|
||||||
export class AboutPageComponent {
|
|
||||||
constructor(
|
|
||||||
private dialogService: DialogService,
|
|
||||||
private environmentService: EnvironmentService,
|
|
||||||
private platformUtilsService: PlatformUtilsService,
|
|
||||||
) {}
|
|
||||||
|
|
||||||
about() {
|
|
||||||
this.dialogService.open(AboutDialogComponent);
|
|
||||||
}
|
|
||||||
|
|
||||||
async launchHelp() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToHelpCenter" },
|
|
||||||
content: { key: "continueToHelpCenterDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
await BrowserApi.createNewTab("https://bitwarden.com/help/");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async openWebVault() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToWebApp" },
|
|
||||||
content: { key: "continueToWebAppDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
const env = await firstValueFrom(this.environmentService.environment$);
|
|
||||||
const url = env.getWebVaultUrl();
|
|
||||||
await BrowserApi.createNewTab(url);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async rate() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToBrowserExtensionStore" },
|
|
||||||
content: { key: "continueToBrowserExtensionStoreDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
const deviceType = this.platformUtilsService.getDevice();
|
|
||||||
await BrowserApi.createNewTab((RateUrls as any)[deviceType]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,76 +0,0 @@
|
|||||||
<header>
|
|
||||||
<div class="left">
|
|
||||||
<button type="button" routerLink="/about">
|
|
||||||
<span class="header-icon"><i class="bwi bwi-angle-left" aria-hidden="true"></i></span>
|
|
||||||
<span>{{ "back" | i18n }}</span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<h1 class="center">
|
|
||||||
<span class="title">{{ "moreFromBitwarden" | i18n }}</span>
|
|
||||||
</h1>
|
|
||||||
<div class="right">
|
|
||||||
<app-pop-out></app-pop-out>
|
|
||||||
</div>
|
|
||||||
</header>
|
|
||||||
<main tabindex="-1">
|
|
||||||
<div class="box list">
|
|
||||||
<div class="box-content single-line">
|
|
||||||
<div *ngIf="!(canAccessPremium$ | async)">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/premium"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "premiumMembership" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="openFreeBitwardenFamiliesPage()"
|
|
||||||
*ngIf="!((isFreeFamilyPolicyEnabled$ | async) && (hasSingleEnterpriseOrg$ | async))"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "freeBitwardenFamilies" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="openBitwardenForBusinessPage()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "bitwardenForBusiness" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="openAuthenticatorPage()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "bitwardenAuthenticator" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="openSecretsManagerPage()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "bitwardenSecretsManager" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
appStopClick
|
|
||||||
(click)="openPasswordlessDotDevPage()"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "passwordlessDotDev" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-external-link bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
@@ -1,97 +0,0 @@
|
|||||||
import { CommonModule } from "@angular/common";
|
|
||||||
import { Component } from "@angular/core";
|
|
||||||
import { RouterModule } from "@angular/router";
|
|
||||||
import { Observable, firstValueFrom } from "rxjs";
|
|
||||||
|
|
||||||
import { JslibModule } from "@bitwarden/angular/jslib.module";
|
|
||||||
import { BillingAccountProfileStateService } from "@bitwarden/common/billing/abstractions/account/billing-account-profile-state.service";
|
|
||||||
import { EnvironmentService } from "@bitwarden/common/platform/abstractions/environment.service";
|
|
||||||
import { DialogService } from "@bitwarden/components";
|
|
||||||
|
|
||||||
import { BrowserApi } from "../../../../platform/browser/browser-api";
|
|
||||||
import { PopOutComponent } from "../../../../platform/popup/components/pop-out.component";
|
|
||||||
import { FamiliesPolicyService } from "../../../../services/families-policy.service";
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
templateUrl: "more-from-bitwarden-page.component.html",
|
|
||||||
standalone: true,
|
|
||||||
imports: [CommonModule, JslibModule, RouterModule, PopOutComponent],
|
|
||||||
})
|
|
||||||
export class MoreFromBitwardenPageComponent {
|
|
||||||
canAccessPremium$: Observable<boolean>;
|
|
||||||
protected isFreeFamilyPolicyEnabled$: Observable<boolean>;
|
|
||||||
protected hasSingleEnterpriseOrg$: Observable<boolean>;
|
|
||||||
|
|
||||||
constructor(
|
|
||||||
private dialogService: DialogService,
|
|
||||||
private billingAccountProfileStateService: BillingAccountProfileStateService,
|
|
||||||
private environmentService: EnvironmentService,
|
|
||||||
private familiesPolicyService: FamiliesPolicyService,
|
|
||||||
) {
|
|
||||||
this.canAccessPremium$ = billingAccountProfileStateService.hasPremiumFromAnySource$;
|
|
||||||
this.hasSingleEnterpriseOrg$ = this.familiesPolicyService.hasSingleEnterpriseOrg$();
|
|
||||||
this.isFreeFamilyPolicyEnabled$ = this.familiesPolicyService.isFreeFamilyPolicyEnabled$();
|
|
||||||
}
|
|
||||||
|
|
||||||
async openFreeBitwardenFamiliesPage() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToWebApp" },
|
|
||||||
content: { key: "freeBitwardenFamiliesPageDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
const env = await firstValueFrom(this.environmentService.environment$);
|
|
||||||
const url = env.getWebVaultUrl();
|
|
||||||
await BrowserApi.createNewTab(url + "/#/settings/sponsored-families");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async openBitwardenForBusinessPage() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToBitwardenDotCom" },
|
|
||||||
content: { key: "bitwardenForBusinessPageDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
await BrowserApi.createNewTab("https://bitwarden.com/products/business/");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async openAuthenticatorPage() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToBitwardenDotCom" },
|
|
||||||
content: { key: "continueToAuthenticatorPageDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
await BrowserApi.createNewTab("https://bitwarden.com/products/authenticator");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async openSecretsManagerPage() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToBitwardenDotCom" },
|
|
||||||
content: { key: "continueToSecretsManagerPageDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
await BrowserApi.createNewTab("https://bitwarden.com/products/secrets-manager");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
async openPasswordlessDotDevPage() {
|
|
||||||
const confirmed = await this.dialogService.openSimpleDialog({
|
|
||||||
title: { key: "continueToBitwardenDotCom" },
|
|
||||||
content: { key: "continueToPasswordlessDotDevPageDesc" },
|
|
||||||
type: "info",
|
|
||||||
acceptButtonText: { key: "continue" },
|
|
||||||
});
|
|
||||||
if (confirmed) {
|
|
||||||
await BrowserApi.createNewTab("https://bitwarden.com/products/passwordless");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,63 +0,0 @@
|
|||||||
<app-header>
|
|
||||||
<div class="left"></div>
|
|
||||||
<h1 class="center">
|
|
||||||
<span class="title">{{ "settings" | i18n }}</span>
|
|
||||||
</h1>
|
|
||||||
<div class="right">
|
|
||||||
<app-pop-out></app-pop-out>
|
|
||||||
</div>
|
|
||||||
</app-header>
|
|
||||||
<main tabindex="-1">
|
|
||||||
<div class="box list">
|
|
||||||
<div class="box-content single-line">
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/account-security"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "accountSecurity" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/autofill"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "autofill" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/notifications"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "notifications" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/vault-settings"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "vault" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/appearance"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "appearance" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
<button
|
|
||||||
type="button"
|
|
||||||
class="box-content-row box-content-row-flex text-default"
|
|
||||||
routerLink="/about"
|
|
||||||
>
|
|
||||||
<div class="row-main">{{ "about" | i18n }}</div>
|
|
||||||
<i class="bwi bwi-angle-right bwi-lg row-sub-icon" aria-hidden="true"></i>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</main>
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
import { Component } from "@angular/core";
|
|
||||||
|
|
||||||
@Component({
|
|
||||||
selector: "tools-settings",
|
|
||||||
templateUrl: "settings.component.html",
|
|
||||||
})
|
|
||||||
export class SettingsComponent {
|
|
||||||
constructor() {}
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user