mirror of
https://github.com/bitwarden/browser.git
synced 2024-12-01 13:13:36 +01:00
Merge branch 'master' of github.com:bitwarden/browser
This commit is contained in:
commit
e88467551b
2
jslib
2
jslib
@ -1 +1 @@
|
|||||||
Subproject commit a20e935268c986538ff68f72016bb8c772ea3a1b
|
Subproject commit 24fe836032354d4ec39435776e54dd0995e1b389
|
1
package-lock.json
generated
1
package-lock.json
generated
@ -94,6 +94,7 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"jslib/common": {
|
"jslib/common": {
|
||||||
|
"name": "@bitwarden/jslib-common",
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"license": "GPL-3.0",
|
"license": "GPL-3.0",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -184,7 +184,8 @@ export default class MainBackground {
|
|||||||
this.settingsService = new SettingsService(this.userService, this.storageService);
|
this.settingsService = new SettingsService(this.userService, this.storageService);
|
||||||
this.fileUploadService = new FileUploadService(this.logService, this.apiService);
|
this.fileUploadService = new FileUploadService(this.logService, this.apiService);
|
||||||
this.cipherService = new CipherService(this.cryptoService, this.userService, this.settingsService,
|
this.cipherService = new CipherService(this.cryptoService, this.userService, this.settingsService,
|
||||||
this.apiService, this.fileUploadService, this.storageService, this.i18nService, () => this.searchService);
|
this.apiService, this.fileUploadService, this.storageService, this.i18nService, () => this.searchService,
|
||||||
|
this.logService);
|
||||||
this.folderService = new FolderService(this.cryptoService, this.userService, this.apiService,
|
this.folderService = new FolderService(this.cryptoService, this.userService, this.apiService,
|
||||||
this.storageService, this.i18nService, this.cipherService);
|
this.storageService, this.i18nService, this.cipherService);
|
||||||
this.collectionService = new CollectionService(this.cryptoService, this.userService, this.storageService,
|
this.collectionService = new CollectionService(this.cryptoService, this.userService, this.storageService,
|
||||||
@ -193,7 +194,7 @@ export default class MainBackground {
|
|||||||
this.sendService = new SendService(this.cryptoService, this.userService, this.apiService, this.fileUploadService,
|
this.sendService = new SendService(this.cryptoService, this.userService, this.apiService, this.fileUploadService,
|
||||||
this.storageService, this.i18nService, this.cryptoFunctionService);
|
this.storageService, this.i18nService, this.cryptoFunctionService);
|
||||||
this.stateService = new StateService();
|
this.stateService = new StateService();
|
||||||
this.policyService = new PolicyService(this.userService, this.storageService);
|
this.policyService = new PolicyService(this.userService, this.storageService, this.apiService);
|
||||||
this.vaultTimeoutService = new VaultTimeoutService(this.cipherService, this.folderService,
|
this.vaultTimeoutService = new VaultTimeoutService(this.cipherService, this.folderService,
|
||||||
this.collectionService, this.cryptoService, this.platformUtilsService, this.storageService,
|
this.collectionService, this.cryptoService, this.platformUtilsService, this.storageService,
|
||||||
this.messagingService, this.searchService, this.userService, this.tokenService, this.policyService,
|
this.messagingService, this.searchService, this.userService, this.tokenService, this.policyService,
|
||||||
@ -211,14 +212,14 @@ export default class MainBackground {
|
|||||||
this.syncService = new SyncService(this.userService, this.apiService, this.settingsService,
|
this.syncService = new SyncService(this.userService, this.apiService, this.settingsService,
|
||||||
this.folderService, this.cipherService, this.cryptoService, this.collectionService,
|
this.folderService, this.cipherService, this.cryptoService, this.collectionService,
|
||||||
this.storageService, this.messagingService, this.policyService, this.sendService,
|
this.storageService, this.messagingService, this.policyService, this.sendService,
|
||||||
async (expired: boolean) => await this.logout(expired));
|
this.logService, async (expired: boolean) => await this.logout(expired));
|
||||||
this.eventService = new EventService(this.storageService, this.apiService, this.userService,
|
this.eventService = new EventService(this.storageService, this.apiService, this.userService,
|
||||||
this.cipherService);
|
this.cipherService, this.logService);
|
||||||
this.passwordGenerationService = new PasswordGenerationService(this.cryptoService, this.storageService,
|
this.passwordGenerationService = new PasswordGenerationService(this.cryptoService, this.storageService,
|
||||||
this.policyService);
|
this.policyService);
|
||||||
this.totpService = new TotpService(this.storageService, this.cryptoFunctionService);
|
this.totpService = new TotpService(this.storageService, this.cryptoFunctionService, this.logService);
|
||||||
this.autofillService = new AutofillService(this.cipherService, this.userService, this.totpService,
|
this.autofillService = new AutofillService(this.cipherService, this.userService, this.totpService,
|
||||||
this.eventService);
|
this.eventService, this.logService);
|
||||||
this.containerService = new ContainerService(this.cryptoService);
|
this.containerService = new ContainerService(this.cryptoService);
|
||||||
this.auditService = new AuditService(this.cryptoFunctionService, this.apiService);
|
this.auditService = new AuditService(this.cryptoFunctionService, this.apiService);
|
||||||
this.exportService = new ExportService(this.folderService, this.cipherService, this.apiService,
|
this.exportService = new ExportService(this.folderService, this.cipherService, this.apiService,
|
||||||
@ -242,7 +243,8 @@ export default class MainBackground {
|
|||||||
// Background
|
// Background
|
||||||
this.runtimeBackground = new RuntimeBackground(this, this.autofillService,
|
this.runtimeBackground = new RuntimeBackground(this, this.autofillService,
|
||||||
this.platformUtilsService as BrowserPlatformUtilsService, this.storageService, this.i18nService,
|
this.platformUtilsService as BrowserPlatformUtilsService, this.storageService, this.i18nService,
|
||||||
this.notificationsService, this.systemService, this.environmentService, this.messagingService);
|
this.notificationsService, this.systemService, this.environmentService, this.messagingService,
|
||||||
|
this.logService);
|
||||||
this.nativeMessagingBackground = new NativeMessagingBackground(this.storageService, this.cryptoService, this.cryptoFunctionService,
|
this.nativeMessagingBackground = new NativeMessagingBackground(this.storageService, this.cryptoService, this.cryptoFunctionService,
|
||||||
this.vaultTimeoutService, this.runtimeBackground, this.i18nService, this.userService, this.messagingService, this.appIdService,
|
this.vaultTimeoutService, this.runtimeBackground, this.i18nService, this.userService, this.messagingService, this.appIdService,
|
||||||
this.platformUtilsService);
|
this.platformUtilsService);
|
||||||
@ -548,7 +550,9 @@ export default class MainBackground {
|
|||||||
this.browserActionSetBadgeText(theText, tabId);
|
this.browserActionSetBadgeText(theText, tabId);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
} catch { }
|
} catch (e) {
|
||||||
|
this.logService.error(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
await this.loadMenuAndUpdateBadgeForNoAccessState(contextMenuEnabled);
|
await this.loadMenuAndUpdateBadgeForNoAccessState(contextMenuEnabled);
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import NotificationQueueMessage from "./notificationQueueMessage";
|
import NotificationQueueMessage from './notificationQueueMessage';
|
||||||
|
|
||||||
export default class AddChangePasswordQueueMessage extends NotificationQueueMessage {
|
export default class AddChangePasswordQueueMessage extends NotificationQueueMessage {
|
||||||
cipherId: string;
|
cipherId: string;
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import NotificationQueueMessage from "./notificationQueueMessage";
|
import NotificationQueueMessage from './notificationQueueMessage';
|
||||||
|
|
||||||
export default class AddLoginQueueMessage extends NotificationQueueMessage {
|
export default class AddLoginQueueMessage extends NotificationQueueMessage {
|
||||||
username: string;
|
username: string;
|
||||||
|
@ -2,6 +2,6 @@ export default class LockedVaultPendingNotificationsItem {
|
|||||||
commandToRetry: {
|
commandToRetry: {
|
||||||
msg: any;
|
msg: any;
|
||||||
sender: chrome.runtime.MessageSender;
|
sender: chrome.runtime.MessageSender;
|
||||||
}
|
};
|
||||||
target: string;
|
target: string;
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
import { NotificationQueueMessageType } from "./notificationQueueMessageType";
|
import { NotificationQueueMessageType } from './notificationQueueMessageType';
|
||||||
|
|
||||||
export default class NotificationQueueMessage {
|
export default class NotificationQueueMessage {
|
||||||
type: NotificationQueueMessageType;
|
type: NotificationQueueMessageType;
|
||||||
|
@ -1,10 +1,12 @@
|
|||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { NotificationsService } from 'jslib-common/abstractions/notifications.service';
|
import { NotificationsService } from 'jslib-common/abstractions/notifications.service';
|
||||||
import { StorageService } from 'jslib-common/abstractions/storage.service';
|
import { StorageService } from 'jslib-common/abstractions/storage.service';
|
||||||
import { SystemService } from 'jslib-common/abstractions/system.service';
|
import { SystemService } from 'jslib-common/abstractions/system.service';
|
||||||
import { ConstantsService } from 'jslib-common/services/constants.service';
|
import { ConstantsService } from 'jslib-common/services/constants.service';
|
||||||
|
|
||||||
import { AutofillService } from '../services/abstractions/autofill.service';
|
import { AutofillService } from '../services/abstractions/autofill.service';
|
||||||
import BrowserPlatformUtilsService from '../services/browserPlatformUtils.service';
|
import BrowserPlatformUtilsService from '../services/browserPlatformUtils.service';
|
||||||
|
|
||||||
@ -25,7 +27,8 @@ export default class RuntimeBackground {
|
|||||||
private platformUtilsService: BrowserPlatformUtilsService,
|
private platformUtilsService: BrowserPlatformUtilsService,
|
||||||
private storageService: StorageService, private i18nService: I18nService,
|
private storageService: StorageService, private i18nService: I18nService,
|
||||||
private notificationsService: NotificationsService, private systemService: SystemService,
|
private notificationsService: NotificationsService, private systemService: SystemService,
|
||||||
private environmentService: EnvironmentService, private messagingService: MessagingService) {
|
private environmentService: EnvironmentService, private messagingService: MessagingService,
|
||||||
|
private logService: LogService) {
|
||||||
|
|
||||||
// onInstalled listener must be wired up before anything else, so we do it in the ctor
|
// onInstalled listener must be wired up before anything else, so we do it in the ctor
|
||||||
chrome.runtime.onInstalled.addListener((details: any) => {
|
chrome.runtime.onInstalled.addListener((details: any) => {
|
||||||
@ -137,7 +140,9 @@ export default class RuntimeBackground {
|
|||||||
BrowserApi.createNewTab('popup/index.html?uilocation=popout#/sso?code=' +
|
BrowserApi.createNewTab('popup/index.html?uilocation=popout#/sso?code=' +
|
||||||
msg.code + '&state=' + msg.state);
|
msg.code + '&state=' + msg.state);
|
||||||
}
|
}
|
||||||
catch { }
|
catch {
|
||||||
|
this.logService.error('Unable to open sso popout tab');
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case 'webAuthnResult':
|
case 'webAuthnResult':
|
||||||
const vaultUrl2 = this.environmentService.getWebVaultUrl();
|
const vaultUrl2 = this.environmentService.getWebVaultUrl();
|
||||||
|
@ -2,24 +2,21 @@ import MainBackground from './main.background';
|
|||||||
import NotificationBackground from './notification.background';
|
import NotificationBackground from './notification.background';
|
||||||
|
|
||||||
export default class TabsBackground {
|
export default class TabsBackground {
|
||||||
private tabs: any;
|
|
||||||
|
|
||||||
constructor(private main: MainBackground, private notificationBackground: NotificationBackground) {
|
constructor(private main: MainBackground, private notificationBackground: NotificationBackground) {
|
||||||
this.tabs = chrome.tabs;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
async init() {
|
async init() {
|
||||||
if (!this.tabs) {
|
if (!chrome.tabs) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.tabs.onActivated.addListener(async (activeInfo: any) => {
|
chrome.tabs.onActivated.addListener(async (activeInfo: chrome.tabs.TabActiveInfo) => {
|
||||||
await this.main.refreshBadgeAndMenu();
|
await this.main.refreshBadgeAndMenu();
|
||||||
this.main.messagingService.send('tabActivated');
|
this.main.messagingService.send('tabActivated');
|
||||||
this.main.messagingService.send('tabChanged');
|
this.main.messagingService.send('tabChanged');
|
||||||
});
|
});
|
||||||
|
|
||||||
this.tabs.onReplaced.addListener(async (addedTabId: any, removedTabId: any) => {
|
chrome.tabs.onReplaced.addListener(async (addedTabId: number, removedTabId: number) => {
|
||||||
if (this.main.onReplacedRan) {
|
if (this.main.onReplacedRan) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -30,12 +27,12 @@ export default class TabsBackground {
|
|||||||
this.main.messagingService.send('tabChanged');
|
this.main.messagingService.send('tabChanged');
|
||||||
});
|
});
|
||||||
|
|
||||||
this.tabs.onUpdated.addListener(async (tabId: any, changeInfo: any, tab: any) => {
|
chrome.tabs.onUpdated.addListener(async (tabId: number, changeInfo: chrome.tabs.TabChangeInfo, tab: chrome.tabs.Tab) => {
|
||||||
if (this.main.onUpdatedRan) {
|
if (this.main.onUpdatedRan) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.main.onUpdatedRan = true;
|
this.main.onUpdatedRan = true;
|
||||||
await this.notificationBackground.checkNotificationQueue();
|
await this.notificationBackground.checkNotificationQueue(tab);
|
||||||
await this.main.refreshBadgeAndMenu();
|
await this.main.refreshBadgeAndMenu();
|
||||||
this.main.messagingService.send('tabUpdated');
|
this.main.messagingService.send('tabUpdated');
|
||||||
this.main.messagingService.send('tabChanged');
|
this.main.messagingService.send('tabChanged');
|
||||||
|
@ -259,7 +259,9 @@ document.addEventListener('DOMContentLoaded', event => {
|
|||||||
if (fieldData.htmlID != null && fieldData.htmlID !== '') {
|
if (fieldData.htmlID != null && fieldData.htmlID !== '') {
|
||||||
try {
|
try {
|
||||||
el = form.querySelector('#' + fieldData.htmlID);
|
el = form.querySelector('#' + fieldData.htmlID);
|
||||||
} catch { }
|
} catch {
|
||||||
|
// Ignore error, we perform fallbacks below.
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (el == null && fieldData.htmlName != null && fieldData.htmlName !== '') {
|
if (el == null && fieldData.htmlName != null && fieldData.htmlName !== '') {
|
||||||
el = form.querySelector('input[name="' + fieldData.htmlName + '"]');
|
el = form.querySelector('input[name="' + fieldData.htmlName + '"]');
|
||||||
@ -467,6 +469,7 @@ document.addEventListener('DOMContentLoaded', event => {
|
|||||||
const iframe = document.createElement('iframe');
|
const iframe = document.createElement('iframe');
|
||||||
iframe.style.cssText = 'height: 42px; width: 100%; border: 0; min-height: initial;';
|
iframe.style.cssText = 'height: 42px; width: 100%; border: 0; min-height: initial;';
|
||||||
iframe.id = 'bit-notification-bar-iframe';
|
iframe.id = 'bit-notification-bar-iframe';
|
||||||
|
iframe.src = barPageUrl;
|
||||||
|
|
||||||
const frameDiv = document.createElement('div');
|
const frameDiv = document.createElement('div');
|
||||||
frameDiv.setAttribute('aria-live', 'polite');
|
frameDiv.setAttribute('aria-live', 'polite');
|
||||||
|
@ -3,6 +3,7 @@ import { Router } from '@angular/router';
|
|||||||
|
|
||||||
import { ApiService } from 'jslib-common/abstractions/api.service';
|
import { ApiService } from 'jslib-common/abstractions/api.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
|
|
||||||
import { HintComponent as BaseHintComponent } from 'jslib-angular/components/hint.component';
|
import { HintComponent as BaseHintComponent } from 'jslib-angular/components/hint.component';
|
||||||
@ -13,7 +14,7 @@ import { HintComponent as BaseHintComponent } from 'jslib-angular/components/hin
|
|||||||
})
|
})
|
||||||
export class HintComponent extends BaseHintComponent {
|
export class HintComponent extends BaseHintComponent {
|
||||||
constructor(router: Router, platformUtilsService: PlatformUtilsService,
|
constructor(router: Router, platformUtilsService: PlatformUtilsService,
|
||||||
i18nService: I18nService, apiService: ApiService) {
|
i18nService: I18nService, apiService: ApiService, logService: LogService) {
|
||||||
super(router, i18nService, apiService, platformUtilsService);
|
super(router, i18nService, apiService, platformUtilsService, logService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { Router } from '@angular/router';
|
import { Router } from '@angular/router';
|
||||||
|
import Swal from 'sweetalert2';
|
||||||
|
|
||||||
import { ConstantsService } from 'jslib-common/services/constants.service';
|
import { ConstantsService } from 'jslib-common/services/constants.service';
|
||||||
|
|
||||||
@ -7,6 +8,7 @@ import { ApiService } from 'jslib-common/abstractions/api.service';
|
|||||||
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { StateService } from 'jslib-common/abstractions/state.service';
|
import { StateService } from 'jslib-common/abstractions/state.service';
|
||||||
@ -15,7 +17,6 @@ import { UserService } from 'jslib-common/abstractions/user.service';
|
|||||||
import { VaultTimeoutService } from 'jslib-common/abstractions/vaultTimeout.service';
|
import { VaultTimeoutService } from 'jslib-common/abstractions/vaultTimeout.service';
|
||||||
|
|
||||||
import { LockComponent as BaseLockComponent } from 'jslib-angular/components/lock.component';
|
import { LockComponent as BaseLockComponent } from 'jslib-angular/components/lock.component';
|
||||||
import Swal from 'sweetalert2';
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-lock',
|
selector: 'app-lock',
|
||||||
@ -29,9 +30,9 @@ export class LockComponent extends BaseLockComponent {
|
|||||||
userService: UserService, cryptoService: CryptoService,
|
userService: UserService, cryptoService: CryptoService,
|
||||||
storageService: StorageService, vaultTimeoutService: VaultTimeoutService,
|
storageService: StorageService, vaultTimeoutService: VaultTimeoutService,
|
||||||
environmentService: EnvironmentService, stateService: StateService,
|
environmentService: EnvironmentService, stateService: StateService,
|
||||||
apiService: ApiService) {
|
apiService: ApiService, logService: LogService) {
|
||||||
super(router, i18nService, platformUtilsService, messagingService, userService, cryptoService,
|
super(router, i18nService, platformUtilsService, messagingService, userService, cryptoService,
|
||||||
storageService, vaultTimeoutService, environmentService, stateService, apiService);
|
storageService, vaultTimeoutService, environmentService, stateService, apiService, logService);
|
||||||
this.successRoute = '/tabs/current';
|
this.successRoute = '/tabs/current';
|
||||||
this.isInitialLockScreen = (window as any).previousPopupUrl == null;
|
this.isInitialLockScreen = (window as any).previousPopupUrl == null;
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ import { AuthService } from 'jslib-common/abstractions/auth.service';
|
|||||||
import { CryptoFunctionService } from 'jslib-common/abstractions/cryptoFunction.service';
|
import { CryptoFunctionService } from 'jslib-common/abstractions/cryptoFunction.service';
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PasswordGenerationService } from 'jslib-common/abstractions/passwordGeneration.service';
|
import { PasswordGenerationService } from 'jslib-common/abstractions/passwordGeneration.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { StateService } from 'jslib-common/abstractions/state.service';
|
import { StateService } from 'jslib-common/abstractions/state.service';
|
||||||
@ -23,8 +24,9 @@ export class LoginComponent extends BaseLoginComponent {
|
|||||||
protected stateService: StateService, protected environmentService: EnvironmentService,
|
protected stateService: StateService, protected environmentService: EnvironmentService,
|
||||||
protected passwordGenerationService: PasswordGenerationService,
|
protected passwordGenerationService: PasswordGenerationService,
|
||||||
protected cryptoFunctionService: CryptoFunctionService, storageService: StorageService,
|
protected cryptoFunctionService: CryptoFunctionService, storageService: StorageService,
|
||||||
syncService: SyncService) {
|
syncService: SyncService, logService: LogService) {
|
||||||
super(authService, router, platformUtilsService, i18nService, stateService, environmentService, passwordGenerationService, cryptoFunctionService, storageService);
|
super(authService, router, platformUtilsService, i18nService, stateService, environmentService,
|
||||||
|
passwordGenerationService, cryptoFunctionService, storageService, logService);
|
||||||
super.onSuccessfulLogin = async () => {
|
super.onSuccessfulLogin = async () => {
|
||||||
await syncService.fullSync(true);
|
await syncService.fullSync(true);
|
||||||
};
|
};
|
||||||
|
@ -11,6 +11,7 @@ import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.se
|
|||||||
import { StateService } from 'jslib-common/abstractions/state.service';
|
import { StateService } from 'jslib-common/abstractions/state.service';
|
||||||
|
|
||||||
import { RegisterComponent as BaseRegisterComponent } from 'jslib-angular/components/register.component';
|
import { RegisterComponent as BaseRegisterComponent } from 'jslib-angular/components/register.component';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
selector: 'app-register',
|
selector: 'app-register',
|
||||||
@ -20,8 +21,9 @@ export class RegisterComponent extends BaseRegisterComponent {
|
|||||||
constructor(authService: AuthService, router: Router,
|
constructor(authService: AuthService, router: Router,
|
||||||
i18nService: I18nService, cryptoService: CryptoService,
|
i18nService: I18nService, cryptoService: CryptoService,
|
||||||
apiService: ApiService, stateService: StateService, platformUtilsService: PlatformUtilsService,
|
apiService: ApiService, stateService: StateService, platformUtilsService: PlatformUtilsService,
|
||||||
passwordGenerationService: PasswordGenerationService, environmentService: EnvironmentService) {
|
passwordGenerationService: PasswordGenerationService, environmentService: EnvironmentService,
|
||||||
|
logService: LogService) {
|
||||||
super(authService, router, i18nService, cryptoService, apiService, stateService, platformUtilsService,
|
super(authService, router, i18nService, cryptoService, apiService, stateService, platformUtilsService,
|
||||||
passwordGenerationService, environmentService);
|
passwordGenerationService, environmentService, logService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -10,6 +10,7 @@ import { AuthService } from 'jslib-common/abstractions/auth.service';
|
|||||||
import { CryptoFunctionService } from 'jslib-common/abstractions/cryptoFunction.service';
|
import { CryptoFunctionService } from 'jslib-common/abstractions/cryptoFunction.service';
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PasswordGenerationService } from 'jslib-common/abstractions/passwordGeneration.service';
|
import { PasswordGenerationService } from 'jslib-common/abstractions/passwordGeneration.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { StateService } from 'jslib-common/abstractions/state.service';
|
import { StateService } from 'jslib-common/abstractions/state.service';
|
||||||
@ -29,9 +30,9 @@ export class SsoComponent extends BaseSsoComponent {
|
|||||||
storageService: StorageService, stateService: StateService,
|
storageService: StorageService, stateService: StateService,
|
||||||
platformUtilsService: PlatformUtilsService, apiService: ApiService,
|
platformUtilsService: PlatformUtilsService, apiService: ApiService,
|
||||||
cryptoFunctionService: CryptoFunctionService, passwordGenerationService: PasswordGenerationService,
|
cryptoFunctionService: CryptoFunctionService, passwordGenerationService: PasswordGenerationService,
|
||||||
syncService: SyncService, environmentService: EnvironmentService) {
|
syncService: SyncService, environmentService: EnvironmentService, logService: LogService) {
|
||||||
super(authService, router, i18nService, route, storageService, stateService, platformUtilsService,
|
super(authService, router, i18nService, route, storageService, stateService, platformUtilsService,
|
||||||
apiService, cryptoFunctionService, environmentService, passwordGenerationService);
|
apiService, cryptoFunctionService, environmentService, passwordGenerationService, logService);
|
||||||
|
|
||||||
const url = this.environmentService.getWebVaultUrl();
|
const url = this.environmentService.getWebVaultUrl();
|
||||||
|
|
||||||
|
@ -1,14 +1,8 @@
|
|||||||
import {
|
import { Component } from '@angular/core';
|
||||||
ChangeDetectorRef,
|
|
||||||
Component,
|
|
||||||
NgZone,
|
|
||||||
} from '@angular/core';
|
|
||||||
|
|
||||||
import {
|
import {
|
||||||
ActivatedRoute,
|
ActivatedRoute,
|
||||||
Router,
|
Router,
|
||||||
} from '@angular/router';
|
} from '@angular/router';
|
||||||
|
|
||||||
import { first } from 'rxjs/operators';
|
import { first } from 'rxjs/operators';
|
||||||
|
|
||||||
import { TwoFactorProviderType } from 'jslib-common/enums/twoFactorProviderType';
|
import { TwoFactorProviderType } from 'jslib-common/enums/twoFactorProviderType';
|
||||||
@ -17,6 +11,7 @@ import { ApiService } from 'jslib-common/abstractions/api.service';
|
|||||||
import { AuthService } from 'jslib-common/abstractions/auth.service';
|
import { AuthService } from 'jslib-common/abstractions/auth.service';
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { StateService } from 'jslib-common/abstractions/state.service';
|
import { StateService } from 'jslib-common/abstractions/state.service';
|
||||||
@ -43,12 +38,12 @@ export class TwoFactorComponent extends BaseTwoFactorComponent {
|
|||||||
constructor(authService: AuthService, router: Router,
|
constructor(authService: AuthService, router: Router,
|
||||||
i18nService: I18nService, apiService: ApiService,
|
i18nService: I18nService, apiService: ApiService,
|
||||||
platformUtilsService: PlatformUtilsService, private syncService: SyncService,
|
platformUtilsService: PlatformUtilsService, private syncService: SyncService,
|
||||||
environmentService: EnvironmentService, private ngZone: NgZone,
|
environmentService: EnvironmentService, private broadcasterService: BroadcasterService,
|
||||||
private broadcasterService: BroadcasterService, private changeDetectorRef: ChangeDetectorRef,
|
|
||||||
private popupUtilsService: PopupUtilsService, stateService: StateService,
|
private popupUtilsService: PopupUtilsService, stateService: StateService,
|
||||||
storageService: StorageService, route: ActivatedRoute, private messagingService: MessagingService) {
|
storageService: StorageService, route: ActivatedRoute, private messagingService: MessagingService,
|
||||||
|
logService: LogService) {
|
||||||
super(authService, router, i18nService, apiService, platformUtilsService, window, environmentService,
|
super(authService, router, i18nService, apiService, platformUtilsService, window, environmentService,
|
||||||
stateService, storageService, route);
|
stateService, storageService, route, logService);
|
||||||
super.onSuccessfulLogin = () => {
|
super.onSuccessfulLogin = () => {
|
||||||
return syncService.fullSync(true);
|
return syncService.fullSync(true);
|
||||||
};
|
};
|
||||||
|
@ -3,6 +3,7 @@ import { Component } from '@angular/core';
|
|||||||
import { ApiService } from 'jslib-common/abstractions/api.service';
|
import { ApiService } from 'jslib-common/abstractions/api.service';
|
||||||
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { PasswordGenerationService } from 'jslib-common/abstractions/passwordGeneration.service';
|
import { PasswordGenerationService } from 'jslib-common/abstractions/passwordGeneration.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
@ -57,8 +58,8 @@ export class UpdateTempPasswordComponent extends BaseUpdateTempPasswordComponent
|
|||||||
passwordGenerationService: PasswordGenerationService, policyService: PolicyService,
|
passwordGenerationService: PasswordGenerationService, policyService: PolicyService,
|
||||||
cryptoService: CryptoService, userService: UserService,
|
cryptoService: CryptoService, userService: UserService,
|
||||||
messagingService: MessagingService, apiService: ApiService,
|
messagingService: MessagingService, apiService: ApiService,
|
||||||
syncService: SyncService) {
|
syncService: SyncService, logService: LogService) {
|
||||||
super(i18nService, platformUtilsService, passwordGenerationService, policyService, cryptoService,
|
super(i18nService, platformUtilsService, passwordGenerationService, policyService, cryptoService,
|
||||||
userService, messagingService, apiService, syncService);
|
userService, messagingService, apiService, syncService, logService);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<div class="modal fade" tabindex="-1" role="dialog" aria-modal="true">
|
<div class="modal fade" role="dialog" aria-modal="true">
|
||||||
<div class="modal-dialog modal-dialog-scrollable" role="document">
|
<div class="modal-dialog modal-dialog-scrollable" role="document">
|
||||||
<form class="modal-content" #form (ngSubmit)="submit()">
|
<form class="modal-content" #form (ngSubmit)="submit()">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
<div class="modal fade" tabindex="-1" role="dialog" aria-modal="true" cdkTrapFocus cdkTrapFocusAutoCapture>
|
<div class="modal fade" role="dialog" aria-modal="true">
|
||||||
<div class="modal-dialog modal-dialog-scrollable" role="document">
|
<div class="modal-dialog modal-dialog-scrollable" role="document">
|
||||||
<form class="modal-content" #form (ngSubmit)="submit()">
|
<form class="modal-content" #form (ngSubmit)="submit()">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
@ -11,7 +11,7 @@
|
|||||||
<div class="row-main">
|
<div class="row-main">
|
||||||
<label for="pin">{{'pin' | i18n}}</label>
|
<label for="pin">{{'pin' | i18n}}</label>
|
||||||
<input id="pin" type="{{showPin ? 'text' : 'password'}}" name="Pin"
|
<input id="pin" type="{{showPin ? 'text' : 'password'}}" name="Pin"
|
||||||
class="monospaced" [(ngModel)]="pin" required appInputVerbatim cdkFocusInitial>
|
class="monospaced" [(ngModel)]="pin" required appInputVerbatim>
|
||||||
</div>
|
</div>
|
||||||
<div class="action-buttons">
|
<div class="action-buttons">
|
||||||
<button type="button" class="row-btn" appStopClick appBlurClick appA11yTitle="{{'toggleVisibility' | i18n}}"
|
<button type="button" class="row-btn" appStopClick appBlurClick appA11yTitle="{{'toggleVisibility' | i18n}}"
|
||||||
|
@ -14,11 +14,11 @@ import { first } from 'rxjs/operators';
|
|||||||
|
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
||||||
import { SendService } from 'jslib-common/abstractions/send.service';
|
import { SendService } from 'jslib-common/abstractions/send.service';
|
||||||
import { TokenService } from 'jslib-common/abstractions/token.service';
|
|
||||||
import { UserService } from 'jslib-common/abstractions/user.service';
|
import { UserService } from 'jslib-common/abstractions/user.service';
|
||||||
|
|
||||||
import { PopupUtilsService } from '../services/popup-utils.service';
|
import { PopupUtilsService } from '../services/popup-utils.service';
|
||||||
@ -43,9 +43,9 @@ export class SendAddEditComponent extends BaseAddEditComponent {
|
|||||||
userService: UserService, messagingService: MessagingService, policyService: PolicyService,
|
userService: UserService, messagingService: MessagingService, policyService: PolicyService,
|
||||||
environmentService: EnvironmentService, datePipe: DatePipe, sendService: SendService,
|
environmentService: EnvironmentService, datePipe: DatePipe, sendService: SendService,
|
||||||
private route: ActivatedRoute, private router: Router, private location: Location,
|
private route: ActivatedRoute, private router: Router, private location: Location,
|
||||||
private popupUtilsService: PopupUtilsService) {
|
private popupUtilsService: PopupUtilsService, logService: LogService) {
|
||||||
super(i18nService, platformUtilsService, environmentService, datePipe, sendService, userService,
|
super(i18nService, platformUtilsService, environmentService, datePipe, sendService, userService,
|
||||||
messagingService, policyService);
|
messagingService, policyService, logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
get showFileSelector(): boolean {
|
get showFileSelector(): boolean {
|
||||||
|
@ -14,6 +14,7 @@ import { SendComponent as BaseSendComponent } from 'jslib-angular/components/sen
|
|||||||
|
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
||||||
import { SearchService } from 'jslib-common/abstractions/search.service';
|
import { SearchService } from 'jslib-common/abstractions/search.service';
|
||||||
@ -50,9 +51,10 @@ export class SendGroupingsComponent extends BaseSendComponent {
|
|||||||
policyService: PolicyService, userService: UserService, searchService: SearchService,
|
policyService: PolicyService, userService: UserService, searchService: SearchService,
|
||||||
private popupUtils: PopupUtilsService, private stateService: StateService,
|
private popupUtils: PopupUtilsService, private stateService: StateService,
|
||||||
private router: Router, private syncService: SyncService,
|
private router: Router, private syncService: SyncService,
|
||||||
private changeDetectorRef: ChangeDetectorRef, private broadcasterService: BroadcasterService) {
|
private changeDetectorRef: ChangeDetectorRef, private broadcasterService: BroadcasterService,
|
||||||
|
logService: LogService) {
|
||||||
super(sendService, i18nService, platformUtilsService, environmentService, ngZone, searchService,
|
super(sendService, i18nService, platformUtilsService, environmentService, ngZone, searchService,
|
||||||
policyService, userService);
|
policyService, userService, logService);
|
||||||
super.onSuccessfulLoad = async () => {
|
super.onSuccessfulLoad = async () => {
|
||||||
this.calculateTypeCounts();
|
this.calculateTypeCounts();
|
||||||
this.selectAll();
|
this.selectAll();
|
||||||
|
@ -19,6 +19,7 @@ import { SendComponent as BaseSendComponent } from 'jslib-angular/components/sen
|
|||||||
|
|
||||||
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
import { EnvironmentService } from 'jslib-common/abstractions/environment.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
||||||
import { SearchService } from 'jslib-common/abstractions/search.service';
|
import { SearchService } from 'jslib-common/abstractions/search.service';
|
||||||
@ -50,9 +51,9 @@ export class SendTypeComponent extends BaseSendComponent {
|
|||||||
policyService: PolicyService, userService: UserService, searchService: SearchService,
|
policyService: PolicyService, userService: UserService, searchService: SearchService,
|
||||||
private popupUtils: PopupUtilsService, private stateService: StateService,
|
private popupUtils: PopupUtilsService, private stateService: StateService,
|
||||||
private route: ActivatedRoute, private location: Location, private changeDetectorRef: ChangeDetectorRef,
|
private route: ActivatedRoute, private location: Location, private changeDetectorRef: ChangeDetectorRef,
|
||||||
private broadcasterService: BroadcasterService, private router: Router) {
|
private broadcasterService: BroadcasterService, private router: Router, logService: LogService) {
|
||||||
super(sendService, i18nService, platformUtilsService, environmentService, ngZone, searchService,
|
super(sendService, i18nService, platformUtilsService, environmentService, ngZone, searchService,
|
||||||
policyService, userService);
|
policyService, userService, logService);
|
||||||
super.onSuccessfulLoad = async () => {
|
super.onSuccessfulLoad = async () => {
|
||||||
this.selectType(this.type);
|
this.selectType(this.type);
|
||||||
};
|
};
|
||||||
|
@ -5,6 +5,7 @@ import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
|||||||
import { EventService } from 'jslib-common/abstractions/event.service';
|
import { EventService } from 'jslib-common/abstractions/event.service';
|
||||||
import { ExportService } from 'jslib-common/abstractions/export.service';
|
import { ExportService } from 'jslib-common/abstractions/export.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
||||||
|
|
||||||
@ -17,8 +18,10 @@ import { ExportComponent as BaseExportComponent } from 'jslib-angular/components
|
|||||||
export class ExportComponent extends BaseExportComponent {
|
export class ExportComponent extends BaseExportComponent {
|
||||||
constructor(cryptoService: CryptoService, i18nService: I18nService,
|
constructor(cryptoService: CryptoService, i18nService: I18nService,
|
||||||
platformUtilsService: PlatformUtilsService, exportService: ExportService,
|
platformUtilsService: PlatformUtilsService, exportService: ExportService,
|
||||||
eventService: EventService, policyService: PolicyService, private router: Router) {
|
eventService: EventService, policyService: PolicyService, private router: Router,
|
||||||
super(cryptoService, i18nService, platformUtilsService, exportService, eventService, policyService, window);
|
logService: LogService) {
|
||||||
|
super(cryptoService, i18nService, platformUtilsService, exportService, eventService, policyService, window,
|
||||||
|
logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
protected saved() {
|
protected saved() {
|
||||||
|
@ -8,6 +8,7 @@ import { first } from 'rxjs/operators';
|
|||||||
|
|
||||||
import { FolderService } from 'jslib-common/abstractions/folder.service';
|
import { FolderService } from 'jslib-common/abstractions/folder.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
|
|
||||||
import {
|
import {
|
||||||
@ -21,8 +22,8 @@ import {
|
|||||||
export class FolderAddEditComponent extends BaseFolderAddEditComponent {
|
export class FolderAddEditComponent extends BaseFolderAddEditComponent {
|
||||||
constructor(folderService: FolderService, i18nService: I18nService,
|
constructor(folderService: FolderService, i18nService: I18nService,
|
||||||
platformUtilsService: PlatformUtilsService, private router: Router,
|
platformUtilsService: PlatformUtilsService, private router: Router,
|
||||||
private route: ActivatedRoute) {
|
private route: ActivatedRoute, logService: LogService) {
|
||||||
super(folderService, i18nService, platformUtilsService);
|
super(folderService, i18nService, platformUtilsService, logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
|
@ -3,6 +3,7 @@ import { Component } from '@angular/core';
|
|||||||
|
|
||||||
import { ApiService } from 'jslib-common/abstractions/api.service';
|
import { ApiService } from 'jslib-common/abstractions/api.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { UserService } from 'jslib-common/abstractions/user.service';
|
import { UserService } from 'jslib-common/abstractions/user.service';
|
||||||
|
|
||||||
@ -17,8 +18,8 @@ export class PremiumComponent extends BasePremiumComponent {
|
|||||||
|
|
||||||
constructor(i18nService: I18nService, platformUtilsService: PlatformUtilsService,
|
constructor(i18nService: I18nService, platformUtilsService: PlatformUtilsService,
|
||||||
apiService: ApiService, userService: UserService,
|
apiService: ApiService, userService: UserService,
|
||||||
private currencyPipe: CurrencyPipe) {
|
private currencyPipe: CurrencyPipe, logService: LogService) {
|
||||||
super(i18nService, platformUtilsService, apiService, userService);
|
super(i18nService, platformUtilsService, apiService, userService, logService);
|
||||||
|
|
||||||
// Support old price string. Can be removed in future once all translations are properly updated.
|
// Support old price string. Can be removed in future once all translations are properly updated.
|
||||||
const thePrice = this.currencyPipe.transform(this.price, '$');
|
const thePrice = this.currencyPipe.transform(this.price, '$');
|
||||||
|
@ -15,6 +15,7 @@ import { CollectionService } from 'jslib-common/abstractions/collection.service'
|
|||||||
import { EventService } from 'jslib-common/abstractions/event.service';
|
import { EventService } from 'jslib-common/abstractions/event.service';
|
||||||
import { FolderService } from 'jslib-common/abstractions/folder.service';
|
import { FolderService } from 'jslib-common/abstractions/folder.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
import { PolicyService } from 'jslib-common/abstractions/policy.service';
|
||||||
@ -23,6 +24,7 @@ import { StorageService } from 'jslib-common/abstractions/storage.service';
|
|||||||
import { UserService } from 'jslib-common/abstractions/user.service';
|
import { UserService } from 'jslib-common/abstractions/user.service';
|
||||||
|
|
||||||
import { ConstantsService } from 'jslib-common/services/constants.service';
|
import { ConstantsService } from 'jslib-common/services/constants.service';
|
||||||
|
|
||||||
import { PopupUtilsService } from '../services/popup-utils.service';
|
import { PopupUtilsService } from '../services/popup-utils.service';
|
||||||
|
|
||||||
import { LoginUriView } from 'jslib-common/models/view/loginUriView';
|
import { LoginUriView } from 'jslib-common/models/view/loginUriView';
|
||||||
@ -48,9 +50,10 @@ export class AddEditComponent extends BaseAddEditComponent {
|
|||||||
messagingService: MessagingService, private route: ActivatedRoute,
|
messagingService: MessagingService, private route: ActivatedRoute,
|
||||||
private router: Router, private location: Location,
|
private router: Router, private location: Location,
|
||||||
eventService: EventService, policyService: PolicyService,
|
eventService: EventService, policyService: PolicyService,
|
||||||
private popupUtilsService: PopupUtilsService, private storageService: StorageService) {
|
private popupUtilsService: PopupUtilsService, private storageService: StorageService,
|
||||||
|
logService: LogService) {
|
||||||
super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,
|
super(cipherService, folderService, i18nService, platformUtilsService, auditService, stateService,
|
||||||
userService, collectionService, messagingService, eventService, policyService);
|
userService, collectionService, messagingService, eventService, policyService, logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
|
@ -8,6 +8,7 @@ import { ApiService } from 'jslib-common/abstractions/api.service';
|
|||||||
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
||||||
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { UserService } from 'jslib-common/abstractions/user.service';
|
import { UserService } from 'jslib-common/abstractions/user.service';
|
||||||
|
|
||||||
@ -23,8 +24,9 @@ export class AttachmentsComponent extends BaseAttachmentsComponent {
|
|||||||
constructor(cipherService: CipherService, i18nService: I18nService,
|
constructor(cipherService: CipherService, i18nService: I18nService,
|
||||||
cryptoService: CryptoService, userService: UserService,
|
cryptoService: CryptoService, userService: UserService,
|
||||||
platformUtilsService: PlatformUtilsService, apiService: ApiService, private location: Location,
|
platformUtilsService: PlatformUtilsService, apiService: ApiService, private location: Location,
|
||||||
private route: ActivatedRoute, private router: Router) {
|
private route: ActivatedRoute, logService: LogService) {
|
||||||
super(cipherService, i18nService, cryptoService, userService, platformUtilsService, apiService, window);
|
super(cipherService, i18nService, cryptoService, userService, platformUtilsService, apiService, window,
|
||||||
|
logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
import { Location } from '@angular/common';
|
import { Location } from '@angular/common';
|
||||||
import { Component } from '@angular/core';
|
import { Component } from '@angular/core';
|
||||||
import { ActivatedRoute } from '@angular/router';
|
import { ActivatedRoute } from '@angular/router';
|
||||||
|
|
||||||
import { first } from 'rxjs/operators';
|
import { first } from 'rxjs/operators';
|
||||||
|
|
||||||
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
||||||
import { CollectionService } from 'jslib-common/abstractions/collection.service';
|
import { CollectionService } from 'jslib-common/abstractions/collection.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
|
|
||||||
import { CollectionsComponent as BaseCollectionsComponent } from 'jslib-angular/components/collections.component';
|
import { CollectionsComponent as BaseCollectionsComponent } from 'jslib-angular/components/collections.component';
|
||||||
@ -18,8 +18,9 @@ import { CollectionsComponent as BaseCollectionsComponent } from 'jslib-angular/
|
|||||||
export class CollectionsComponent extends BaseCollectionsComponent {
|
export class CollectionsComponent extends BaseCollectionsComponent {
|
||||||
constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,
|
constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,
|
||||||
i18nService: I18nService, cipherService: CipherService,
|
i18nService: I18nService, cipherService: CipherService,
|
||||||
private route: ActivatedRoute, private location: Location) {
|
private route: ActivatedRoute, private location: Location,
|
||||||
super(collectionService, platformUtilsService, i18nService, cipherService);
|
logService: LogService) {
|
||||||
|
super(collectionService, platformUtilsService, i18nService, cipherService, logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
|
@ -10,6 +10,7 @@ import { first } from 'rxjs/operators';
|
|||||||
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
||||||
import { CollectionService } from 'jslib-common/abstractions/collection.service';
|
import { CollectionService } from 'jslib-common/abstractions/collection.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
import { UserService } from 'jslib-common/abstractions/user.service';
|
import { UserService } from 'jslib-common/abstractions/user.service';
|
||||||
|
|
||||||
@ -23,8 +24,9 @@ export class ShareComponent extends BaseShareComponent {
|
|||||||
constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,
|
constructor(collectionService: CollectionService, platformUtilsService: PlatformUtilsService,
|
||||||
i18nService: I18nService, userService: UserService,
|
i18nService: I18nService, userService: UserService,
|
||||||
cipherService: CipherService, private route: ActivatedRoute,
|
cipherService: CipherService, private route: ActivatedRoute,
|
||||||
private location: Location, private router: Router) {
|
private router: Router, logService: LogService) {
|
||||||
super(collectionService, platformUtilsService, i18nService, userService, cipherService);
|
super(collectionService, platformUtilsService, i18nService, userService, cipherService,
|
||||||
|
logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
async ngOnInit() {
|
async ngOnInit() {
|
||||||
|
@ -17,6 +17,7 @@ import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
|||||||
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
import { CryptoService } from 'jslib-common/abstractions/crypto.service';
|
||||||
import { EventService } from 'jslib-common/abstractions/event.service';
|
import { EventService } from 'jslib-common/abstractions/event.service';
|
||||||
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
import { I18nService } from 'jslib-common/abstractions/i18n.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
import { MessagingService } from 'jslib-common/abstractions/messaging.service';
|
||||||
import { PasswordRepromptService } from 'jslib-common/abstractions/passwordReprompt.service';
|
import { PasswordRepromptService } from 'jslib-common/abstractions/passwordReprompt.service';
|
||||||
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
import { PlatformUtilsService } from 'jslib-common/abstractions/platformUtils.service';
|
||||||
@ -59,10 +60,11 @@ export class ViewComponent extends BaseViewComponent {
|
|||||||
changeDetectorRef: ChangeDetectorRef, userService: UserService,
|
changeDetectorRef: ChangeDetectorRef, userService: UserService,
|
||||||
eventService: EventService, private autofillService: AutofillService,
|
eventService: EventService, private autofillService: AutofillService,
|
||||||
private messagingService: MessagingService, private popupUtilsService: PopupUtilsService,
|
private messagingService: MessagingService, private popupUtilsService: PopupUtilsService,
|
||||||
apiService: ApiService, passwordRepromptService: PasswordRepromptService) {
|
apiService: ApiService, passwordRepromptService: PasswordRepromptService,
|
||||||
|
logService: LogService) {
|
||||||
super(cipherService, totpService, tokenService, i18nService, cryptoService, platformUtilsService,
|
super(cipherService, totpService, tokenService, i18nService, cryptoService, platformUtilsService,
|
||||||
auditService, window, broadcasterService, ngZone, changeDetectorRef, userService, eventService,
|
auditService, window, broadcasterService, ngZone, changeDetectorRef, userService, eventService,
|
||||||
apiService, passwordRepromptService);
|
apiService, passwordRepromptService, logService);
|
||||||
}
|
}
|
||||||
|
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
import { CipherService } from 'jslib-common/abstractions/cipher.service';
|
||||||
import { EventService } from 'jslib-common/abstractions/event.service';
|
import { EventService } from 'jslib-common/abstractions/event.service';
|
||||||
|
import { LogService } from 'jslib-common/abstractions/log.service';
|
||||||
import { TotpService } from 'jslib-common/abstractions/totp.service';
|
import { TotpService } from 'jslib-common/abstractions/totp.service';
|
||||||
import { UserService } from 'jslib-common/abstractions/user.service';
|
import { UserService } from 'jslib-common/abstractions/user.service';
|
||||||
|
|
||||||
@ -131,7 +132,8 @@ var IsoProvinces: { [id: string]: string; } = {
|
|||||||
export default class AutofillService implements AutofillServiceInterface {
|
export default class AutofillService implements AutofillServiceInterface {
|
||||||
|
|
||||||
constructor(private cipherService: CipherService, private userService: UserService,
|
constructor(private cipherService: CipherService, private userService: UserService,
|
||||||
private totpService: TotpService, private eventService: EventService) { }
|
private totpService: TotpService, private eventService: EventService,
|
||||||
|
private logService: LogService) { }
|
||||||
|
|
||||||
getFormsWithPasswordFields(pageDetails: AutofillPageDetails): any[] {
|
getFormsWithPasswordFields(pageDetails: AutofillPageDetails): any[] {
|
||||||
const formData: any[] = [];
|
const formData: any[] = [];
|
||||||
@ -1079,7 +1081,9 @@ export default class AutofillService implements AutofillServiceInterface {
|
|||||||
const regex = new RegExp(regexParts[1], 'i');
|
const regex = new RegExp(regexParts[1], 'i');
|
||||||
return regex.test(fieldVal);
|
return regex.test(fieldVal);
|
||||||
}
|
}
|
||||||
} catch (e) { }
|
} catch (e) {
|
||||||
|
this.logService.error(e);
|
||||||
|
}
|
||||||
} else if (name.startsWith('csv=')) {
|
} else if (name.startsWith('csv=')) {
|
||||||
const csvParts = name.split('=', 2);
|
const csvParts = name.split('=', 2);
|
||||||
if (csvParts.length === 2) {
|
if (csvParts.length === 2) {
|
||||||
|
@ -34,7 +34,7 @@
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"no-empty": [ true, "allow-empty-catch" ],
|
"no-empty": [ true ],
|
||||||
"object-literal-sort-keys": false,
|
"object-literal-sort-keys": false,
|
||||||
"object-literal-shorthand": [ true, "never" ],
|
"object-literal-shorthand": [ true, "never" ],
|
||||||
"prefer-for-of": false,
|
"prefer-for-of": false,
|
||||||
|
Loading…
Reference in New Issue
Block a user