Skip to content

Commit 2d4d8da

Browse files
committed
Fix error for loading on popup
1 parent c2f5717 commit 2d4d8da

File tree

3 files changed

+21
-19
lines changed

3 files changed

+21
-19
lines changed

src/repository/inject-tabs-repository.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,13 @@ async function createAndInitInstance() {
99
return repo;
1010
}
1111

12-
export async function injectTabsRepository(): Promise<ITabsRepository> {
12+
export async function injectTabsRepositorySingleton(): Promise<ITabsRepository> {
1313
if (instanse == null) {
1414
instanse = await createAndInitInstance();
1515
}
1616
return instanse;
1717
}
18+
19+
export async function injectTabsRepository(): Promise<ITabsRepository> {
20+
return createAndInitInstance();
21+
}

src/repository/tabs-repository.ts

Lines changed: 13 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1-
import { ITabsRepository } from "./tabs-repository-interface";
2-
import { Tab } from "../entity/tab";
3-
import { injecStorage } from "../storage/inject-storage";
4-
import { isInBlackList } from "../compositions/black-list";
5-
import { StorageDeserializeParam } from "../storage/storage-params";
6-
import { todayLocalDate } from "../utils/today";
1+
import { ITabsRepository } from './tabs-repository-interface';
2+
import { Tab } from '../entity/tab';
3+
import { injecStorage } from '../storage/inject-storage';
4+
import { isInBlackList } from '../compositions/black-list';
5+
import { StorageDeserializeParam } from '../storage/storage-params';
6+
import { todayLocalDate } from '../utils/today';
77

88
export class TabsRepository implements ITabsRepository {
99
private tabs: Tab[];
@@ -13,32 +13,30 @@ export class TabsRepository implements ITabsRepository {
1313
}
1414

1515
async initAsync() {
16-
this.tabs = (await injecStorage().getDeserializeList(
17-
StorageDeserializeParam.TABS
18-
)) as Tab[];
16+
this.tabs = (await injecStorage().getDeserializeList(StorageDeserializeParam.TABS)) as Tab[];
1917
}
2018

2119
getTabs(): Tab[] {
2220
return this.tabs;
2321
}
2422

25-
getTodayTabs(): Tab[]{
23+
getTodayTabs(): Tab[] {
2624
return this.tabs.filter(x => x.days.find(s => s.date === todayLocalDate()));
2725
}
2826

2927
getTab(domain: string): Tab | undefined {
30-
return this.tabs?.find((x) => x.url === domain);
28+
return this.tabs?.find(x => x.url === domain);
3129
}
3230

3331
async addTab(domain: string, favicon: string | undefined): Promise<Tab | undefined> {
3432
const tabFromStorage = this.getTab(domain);
3533
const isInBlackListFlag = await isInBlackList(domain);
3634

3735
if (!isInBlackListFlag && !tabFromStorage) {
38-
const newTab = new Tab();
39-
newTab.init(domain);
40-
this.tabs.push(newTab);
41-
return newTab;
36+
const newTab = new Tab();
37+
newTab.init(domain);
38+
this.tabs.push(newTab);
39+
return newTab;
4240
}
4341

4442
return undefined;

src/tracker.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import Browser from 'webextension-polyfill';
22
import { isValidPage } from './compositions/valid-page';
33
import { extractHostname } from './compositions/extract-hostname';
4-
import { injectTabsRepository } from './repository/inject-tabs-repository';
4+
import { injectTabsRepositorySingleton } from './repository/inject-tabs-repository';
55
import { isInBlackList } from './compositions/black-list';
66
import { useBadge } from './compositions/set-badge';
77
import {
@@ -28,7 +28,7 @@ export async function initTracker() {
2828
}
2929

3030
async function trackTime() {
31-
const repo = await injectTabsRepository();
31+
const repo = await injectTabsRepositorySingleton();
3232
const window = await Browser.windows.getLastFocused({ populate: true });
3333
if (window.focused) {
3434
const activeTab = window.tabs?.find(t => t.active === true);
@@ -118,7 +118,7 @@ async function mainTracker(
118118

119119
async function saveTabs() {
120120
const storage = injecStorage();
121-
const repo = await injectTabsRepository();
121+
const repo = await injectTabsRepositorySingleton();
122122
const tabs = repo.getTabs();
123123
await storage.saveTabs(tabs);
124124
}

0 commit comments

Comments
 (0)