show fingerprint phrase menu option
This commit is contained in:
parent
d207469fc0
commit
1e7c3c058c
|
@ -39,6 +39,7 @@ import { LockService } from 'jslib/abstractions/lock.service';
|
||||||
import { MessagingService } from 'jslib/abstractions/messaging.service';
|
import { MessagingService } from 'jslib/abstractions/messaging.service';
|
||||||
import { NotificationsService } from 'jslib/abstractions/notifications.service';
|
import { NotificationsService } from 'jslib/abstractions/notifications.service';
|
||||||
import { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';
|
import { PasswordGenerationService } from 'jslib/abstractions/passwordGeneration.service';
|
||||||
|
import { PlatformUtilsService } from 'jslib/abstractions/platformUtils.service';
|
||||||
import { SearchService } from 'jslib/abstractions/search.service';
|
import { SearchService } from 'jslib/abstractions/search.service';
|
||||||
import { SettingsService } from 'jslib/abstractions/settings.service';
|
import { SettingsService } from 'jslib/abstractions/settings.service';
|
||||||
import { StorageService } from 'jslib/abstractions/storage.service';
|
import { StorageService } from 'jslib/abstractions/storage.service';
|
||||||
|
@ -89,7 +90,8 @@ export class AppComponent implements OnInit {
|
||||||
private lockService: LockService, private storageService: StorageService,
|
private lockService: LockService, private storageService: StorageService,
|
||||||
private cryptoService: CryptoService, private componentFactoryResolver: ComponentFactoryResolver,
|
private cryptoService: CryptoService, private componentFactoryResolver: ComponentFactoryResolver,
|
||||||
private messagingService: MessagingService, private collectionService: CollectionService,
|
private messagingService: MessagingService, private collectionService: CollectionService,
|
||||||
private searchService: SearchService, private notificationsService: NotificationsService) { }
|
private searchService: SearchService, private notificationsService: NotificationsService,
|
||||||
|
private platformUtilsService: PlatformUtilsService) { }
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
this.ngZone.runOutsideAngular(() => {
|
this.ngZone.runOutsideAngular(() => {
|
||||||
|
@ -135,6 +137,17 @@ export class AppComponent implements OnInit {
|
||||||
case 'openPremium':
|
case 'openPremium':
|
||||||
this.openModal<PremiumComponent>(PremiumComponent, this.premiumRef);
|
this.openModal<PremiumComponent>(PremiumComponent, this.premiumRef);
|
||||||
break;
|
break;
|
||||||
|
case 'showFingerprintPhrase':
|
||||||
|
const fingerprint = await this.cryptoService.getFingerprint(
|
||||||
|
await this.userService.getUserId());
|
||||||
|
const result = await this.platformUtilsService.showDialog(
|
||||||
|
this.i18nService.t('yourAccountsFingerprint') + ': ' + fingerprint.join('-'),
|
||||||
|
this.i18nService.t('fingerprintPhrase'), this.i18nService.t('learnMore'),
|
||||||
|
this.i18nService.t('close'));
|
||||||
|
if (result) {
|
||||||
|
this.platformUtilsService.launchUri('https://help.bitwarden.com');
|
||||||
|
}
|
||||||
|
break;
|
||||||
case 'openPasswordHistory':
|
case 'openPasswordHistory':
|
||||||
this.openModal<PasswordGeneratorHistoryComponent>(
|
this.openModal<PasswordGeneratorHistoryComponent>(
|
||||||
PasswordGeneratorHistoryComponent, this.passwordHistoryRef);
|
PasswordGeneratorHistoryComponent, this.passwordHistoryRef);
|
||||||
|
|
|
@ -705,11 +705,13 @@
|
||||||
"changeMasterPasswordConfirmation": {
|
"changeMasterPasswordConfirmation": {
|
||||||
"message": "You can change your master password on the bitwarden.com web vault. Do you want to visit the website now?"
|
"message": "You can change your master password on the bitwarden.com web vault. Do you want to visit the website now?"
|
||||||
},
|
},
|
||||||
"changeEmail": {
|
"fingerprintPhrase": {
|
||||||
"message": "Change Email"
|
"message": "Fingerprint Phrase",
|
||||||
|
"description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing."
|
||||||
},
|
},
|
||||||
"changeEmailConfirmation": {
|
"yourAccountsFingerprint": {
|
||||||
"message": "You can change your email address on the bitwarden.com web vault. Do you want to visit the website now?"
|
"message": "Your account's fingerprint phrase",
|
||||||
|
"description": "A 'fingerprint phrase' is a unique word phrase (similar to a passphrase) that a user can use to authenticate their public key with another user, for the purposes of sharing."
|
||||||
},
|
},
|
||||||
"goToWebVault": {
|
"goToWebVault": {
|
||||||
"message": "Go To Web Vault"
|
"message": "Go To Web Vault"
|
||||||
|
|
|
@ -30,7 +30,7 @@ export class MenuMain extends BaseMenu {
|
||||||
lockNow: MenuItem;
|
lockNow: MenuItem;
|
||||||
logOut: MenuItem;
|
logOut: MenuItem;
|
||||||
twoStepLogin: MenuItem;
|
twoStepLogin: MenuItem;
|
||||||
changeEmail: MenuItem;
|
fingerprintPhrase: MenuItem;
|
||||||
changeMasterPass: MenuItem;
|
changeMasterPass: MenuItem;
|
||||||
premiumMembership: MenuItem;
|
premiumMembership: MenuItem;
|
||||||
passwordGenerator: MenuItem;
|
passwordGenerator: MenuItem;
|
||||||
|
@ -57,7 +57,7 @@ export class MenuMain extends BaseMenu {
|
||||||
this.lockNow = this.menu.getMenuItemById('lockNow');
|
this.lockNow = this.menu.getMenuItemById('lockNow');
|
||||||
this.logOut = this.menu.getMenuItemById('logOut');
|
this.logOut = this.menu.getMenuItemById('logOut');
|
||||||
this.twoStepLogin = this.menu.getMenuItemById('twoStepLogin');
|
this.twoStepLogin = this.menu.getMenuItemById('twoStepLogin');
|
||||||
this.changeEmail = this.menu.getMenuItemById('changeEmail');
|
this.fingerprintPhrase = this.menu.getMenuItemById('fingerprintPhrase');
|
||||||
this.changeMasterPass = this.menu.getMenuItemById('changeMasterPass');
|
this.changeMasterPass = this.menu.getMenuItemById('changeMasterPass');
|
||||||
this.premiumMembership = this.menu.getMenuItemById('premiumMembership');
|
this.premiumMembership = this.menu.getMenuItemById('premiumMembership');
|
||||||
this.passwordGenerator = this.menu.getMenuItemById('passwordGenerator');
|
this.passwordGenerator = this.menu.getMenuItemById('passwordGenerator');
|
||||||
|
@ -66,7 +66,7 @@ export class MenuMain extends BaseMenu {
|
||||||
|
|
||||||
this.unlockedRequiredMenuItems = [
|
this.unlockedRequiredMenuItems = [
|
||||||
this.addNewLogin, this.addNewItem, this.addNewFolder,
|
this.addNewLogin, this.addNewItem, this.addNewFolder,
|
||||||
this.syncVault, this.exportVault, this.settings, this.lockNow, this.twoStepLogin, this.changeEmail,
|
this.syncVault, this.exportVault, this.settings, this.lockNow, this.twoStepLogin, this.fingerprintPhrase,
|
||||||
this.changeMasterPass, this.premiumMembership, this.passwordGenerator, this.passwordHistory,
|
this.changeMasterPass, this.premiumMembership, this.passwordGenerator, this.passwordHistory,
|
||||||
this.searchVault];
|
this.searchVault];
|
||||||
this.updateApplicationMenuState(false, true);
|
this.updateApplicationMenuState(false, true);
|
||||||
|
@ -100,24 +100,6 @@ export class MenuMain extends BaseMenu {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
|
||||||
label: this.main.i18nService.t('changeEmail'),
|
|
||||||
id: 'changeEmail',
|
|
||||||
click: async () => {
|
|
||||||
const result = dialog.showMessageBox(this.main.windowMain.win, {
|
|
||||||
title: this.main.i18nService.t('changeEmail'),
|
|
||||||
message: this.main.i18nService.t('changeEmail'),
|
|
||||||
detail: this.main.i18nService.t('changeEmailConfirmation'),
|
|
||||||
buttons: [this.main.i18nService.t('yes'), this.main.i18nService.t('no')],
|
|
||||||
cancelId: 1,
|
|
||||||
defaultId: 0,
|
|
||||||
noLink: true,
|
|
||||||
});
|
|
||||||
if (result === 0) {
|
|
||||||
await this.openWebVault();
|
|
||||||
}
|
|
||||||
},
|
|
||||||
},
|
|
||||||
{
|
{
|
||||||
label: this.main.i18nService.t('twoStepLogin'),
|
label: this.main.i18nService.t('twoStepLogin'),
|
||||||
id: 'twoStepLogin',
|
id: 'twoStepLogin',
|
||||||
|
@ -136,6 +118,11 @@ export class MenuMain extends BaseMenu {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
label: this.main.i18nService.t('fingerprintPhrase'),
|
||||||
|
id: 'fingerprintPhrase',
|
||||||
|
click: () => this.main.messagingService.send('showFingerprintPhrase'),
|
||||||
|
},
|
||||||
{ type: 'separator' },
|
{ type: 'separator' },
|
||||||
{
|
{
|
||||||
label: this.i18nService.t('logOut'),
|
label: this.i18nService.t('logOut'),
|
||||||
|
|
Loading…
Reference in New Issue