@@ -5,13 +5,14 @@ import { injectTabsRepository } from "./repository/inject-tabs-repository";
55import { isInBlackList } from "./compositions/black-list" ;
66import { useBadge } from "./compositions/set-badge" ;
77import { BadgeColor } from "./compositions/types" ;
8- import { INTERVAL_INACTIVITY_DEFAULT , StorageParams , } from "./storage/storage-params" ;
8+ import { INTERVAL_INACTIVITY_DEFAULT , StorageParams , VIEW_TIME_IN_BADGE_DEFAULT , } from "./storage/storage-params" ;
99import { injecStorage } from "./storage/inject-storage" ;
1010import { closeInterval } from "./compositions/daily-intervals" ;
1111import { ActiveTab } from "./compositions/activeTab" ;
1212import { isLimitExceeded } from "./compositions/limit-list" ;
1313import { Tab } from "./entity/tab" ;
1414import { useBlockPage } from "./compositions/block-page" ;
15+ import { convertSummaryTimeToBadgeString } from "./common/utility" ;
1516
1617async function trackTime ( ) {
1718 const activeTabInstance = ActiveTab . getInstance ( ) ;
@@ -64,6 +65,25 @@ async function mainTracker(state: Browser.Idle.IdleState, activeTab: Browser.Tab
6465 }
6566
6667 tab . incSummaryTime ( ) ;
68+
69+ const storage = injecStorage ( ) ;
70+ const viewInBadge = ( await storage . getValue (
71+ StorageParams . VIEW_TIME_IN_BADGE ,
72+ VIEW_TIME_IN_BADGE_DEFAULT
73+ ) ) as boolean ;
74+
75+ if ( viewInBadge )
76+ useBadge ( {
77+ tabId : activeTab ! . id ! ,
78+ text : convertSummaryTimeToBadgeString ( tab . days . at ( - 1 ) ! . summary ) ,
79+ color : BadgeColor . green ,
80+ } ) ;
81+ else
82+ useBadge ( {
83+ tabId : activeTab ! . id ! ,
84+ text : "" ,
85+ color : BadgeColor . red ,
86+ } ) ;
6787 }
6888}
6989
0 commit comments