[PM-3020] Change initialization of EnvironmentService to default to uninitialized (#5830)
* Set initialized to false on construction of the EnvironmentService * Add initialization on browser and desktop. * Added comments.
This commit is contained in:
parent
79ed4ff83f
commit
b2374acc7f
|
@ -676,6 +676,9 @@ export default class MainBackground {
|
||||||
return new Promise<void>((resolve) => {
|
return new Promise<void>((resolve) => {
|
||||||
setTimeout(async () => {
|
setTimeout(async () => {
|
||||||
await this.environmentService.setUrlsFromStorage();
|
await this.environmentService.setUrlsFromStorage();
|
||||||
|
// Workaround to ignore stateService.activeAccount until URLs are set
|
||||||
|
// TODO: Remove this when implementing ticket PM-2637
|
||||||
|
this.environmentService.initialized = true;
|
||||||
if (!this.isPrivateMode) {
|
if (!this.isPrivateMode) {
|
||||||
await this.refreshBadge();
|
await this.refreshBadge();
|
||||||
}
|
}
|
||||||
|
|
|
@ -44,6 +44,9 @@ export class InitService {
|
||||||
this.nativeMessagingService.init();
|
this.nativeMessagingService.init();
|
||||||
await this.stateService.init();
|
await this.stateService.init();
|
||||||
await this.environmentService.setUrlsFromStorage();
|
await this.environmentService.setUrlsFromStorage();
|
||||||
|
// Workaround to ignore stateService.activeAccount until URLs are set
|
||||||
|
// TODO: Remove this when implementing ticket PM-2637
|
||||||
|
this.environmentService.initialized = true;
|
||||||
this.syncService.fullSync(true);
|
this.syncService.fullSync(true);
|
||||||
(this.vaultTimeoutService as VaultTimeoutService).init(true);
|
(this.vaultTimeoutService as VaultTimeoutService).init(true);
|
||||||
const locale = await this.stateService.getLocale();
|
const locale = await this.stateService.getLocale();
|
||||||
|
|
|
@ -38,14 +38,13 @@ export class InitService {
|
||||||
|
|
||||||
init() {
|
init() {
|
||||||
return async () => {
|
return async () => {
|
||||||
// Workaround to ignore stateService.activeAccount until process.env.URLS are set
|
|
||||||
// TODO: Remove this when implementing ticket PM-2637
|
|
||||||
this.environmentService.initialized = false;
|
|
||||||
await this.stateService.init();
|
await this.stateService.init();
|
||||||
|
|
||||||
const urls = process.env.URLS as Urls;
|
const urls = process.env.URLS as Urls;
|
||||||
urls.base ??= this.win.location.origin;
|
urls.base ??= this.win.location.origin;
|
||||||
await this.environmentService.setUrls(urls);
|
await this.environmentService.setUrls(urls);
|
||||||
|
// Workaround to ignore stateService.activeAccount until process.env.URLS are set
|
||||||
|
// TODO: Remove this when implementing ticket PM-2637
|
||||||
this.environmentService.initialized = true;
|
this.environmentService.initialized = true;
|
||||||
|
|
||||||
setTimeout(() => this.notificationsService.init(), 3000);
|
setTimeout(() => this.notificationsService.init(), 3000);
|
||||||
|
|
|
@ -12,7 +12,7 @@ export class EnvironmentService implements EnvironmentServiceAbstraction {
|
||||||
private readonly urlsSubject = new Subject<void>();
|
private readonly urlsSubject = new Subject<void>();
|
||||||
urls: Observable<void> = this.urlsSubject.asObservable();
|
urls: Observable<void> = this.urlsSubject.asObservable();
|
||||||
selectedRegion?: Region;
|
selectedRegion?: Region;
|
||||||
initialized = true;
|
initialized = false;
|
||||||
|
|
||||||
protected baseUrl: string;
|
protected baseUrl: string;
|
||||||
protected webVaultUrl: string;
|
protected webVaultUrl: string;
|
||||||
|
@ -286,6 +286,7 @@ export class EnvironmentService implements EnvironmentServiceAbstraction {
|
||||||
async setRegion(region: Region) {
|
async setRegion(region: Region) {
|
||||||
this.selectedRegion = region;
|
this.selectedRegion = region;
|
||||||
await this.stateService.setRegion(region);
|
await this.stateService.setRegion(region);
|
||||||
|
|
||||||
if (region === Region.SelfHosted) {
|
if (region === Region.SelfHosted) {
|
||||||
// If user saves a self-hosted region with empty fields, default to US
|
// If user saves a self-hosted region with empty fields, default to US
|
||||||
if (this.isEmpty()) {
|
if (this.isEmpty()) {
|
||||||
|
|
Loading…
Reference in New Issue