Skip to main content

TabStateManager

FitFileViewer - API Documentation v30.0.1


FitFileViewer - API Documentation / utils/ui/tabs/tabStateManager / TabStateManager

Class: TabStateManager

Defined in: utils/ui/tabs/tabStateManager.ts:135

Tab State Manager - handles tab switching and content management

Constructors​

Constructor​

new TabStateManager(): TabStateManager

Defined in: utils/ui/tabs/tabStateManager.ts:145

Returns​

TabStateManager

Properties​

isInitialized​

isInitialized: boolean = false

Defined in: utils/ui/tabs/tabStateManager.ts:136


previousTab​

previousTab: string | null = null

Defined in: utils/ui/tabs/tabStateManager.ts:138


_electronApiScope​

private _electronApiScope: RendererElectronApiScope | undefined

Defined in: utils/ui/tabs/tabStateManager.ts:140


_setupHandlersFn​

private _setupHandlersFn: (() => void) | null = null

Defined in: utils/ui/tabs/tabStateManager.ts:141


_buttonClickHandler​

private readonly _buttonClickHandler: EventListener

Defined in: utils/ui/tabs/tabStateManager.ts:142


_unsubscribes​

private readonly _unsubscribes: () => void[] = []

Defined in: utils/ui/tabs/tabStateManager.ts:143

Returns​

void

Methods​

cleanup()​

cleanup(): void

Defined in: utils/ui/tabs/tabStateManager.ts:171

Cleanup resources (placeholder for future unsubscribe logic)

Returns​

void


extractTabName()​

extractTabName(buttonId: string): string | null

Defined in: utils/ui/tabs/tabStateManager.ts:221

Extract tab name from button ID

Parameters​

buttonId​

string

Button element ID.

Returns​

string | null

Tab name or null.


getActiveTabInfo()​

getActiveTabInfo(): ActiveTabInfo

Defined in: utils/ui/tabs/tabStateManager.ts:230

Get current active tab information

Returns​

ActiveTabInfo

Active tab information.


handleAltFitTab()​

handleAltFitTab(): void

Defined in: utils/ui/tabs/tabStateManager.ts:250

Handle Alt Fit tab activation.

Returns​

void


handleBrowserTab()​

handleBrowserTab(): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:257

Handle browser tab activation.

Returns​

Promise<void>


handleChartTab()​

handleChartTab(rawFitData: ActivityData | null | undefined): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:266

Handle chart tab activation.

Parameters​

rawFitData​

ActivityData | null | undefined

Current activity data.

Returns​

Promise<void>


handleDataTab()​

handleDataTab(rawFitData: ActivityData | null | undefined): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:275

Handle data tab activation.

Parameters​

rawFitData​

ActivityData | null | undefined

Current activity data.

Returns​

Promise<void>


handleMapTab()​

handleMapTab(rawFitData: ActivityData | null | undefined): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:284

Handle map tab activation.

Parameters​

rawFitData​

ActivityData | null | undefined

Current activity data.

Returns​

Promise<void>


handleSummaryTab()​

handleSummaryTab(rawFitData: ActivityData | null | undefined): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:293

Handle summary tab activation.

Parameters​

rawFitData​

ActivityData | null | undefined

Current activity data.

Returns​

Promise<void>


handleZwiftTab()​

handleZwiftTab(): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:303

Handle Zwift tab activation.

Returns​

Promise<void>


handleTabButtonClick()​

handleTabButtonClick(event: Event): void

Defined in: utils/ui/tabs/tabStateManager.ts:313

Handle tab button click events

Parameters​

event​

Event

Click event.

Returns​

void


handleTabChange()​

handleTabChange(newTab: string, oldTab: string | null): void

Defined in: utils/ui/tabs/tabStateManager.ts:370

Handle tab change through state management

Parameters​

newTab​

string

New active tab name.

oldTab​

string | null

Previous active tab name.

Returns​

void


handleTabSpecificLogic()​

handleTabSpecificLogic(tabName: string): Promise<void>

Defined in: utils/ui/tabs/tabStateManager.ts:395

Handle tab-specific initialization and rendering logic

Parameters​

tabName​

string

Name of the active tab.

Returns​

Promise<void>


hashData()​

hashData(data: ActivityData | null | undefined): string

Defined in: utils/ui/tabs/tabStateManager.ts:492

Generate a simple hash for data comparison.

Parameters​

data​

ActivityData | null | undefined

Activity data to summarize.

Returns​

string

Stable summary hash.


setElectronApiScope()​

setElectronApiScope(electronApiScope: RendererElectronApiScope | undefined): void

Defined in: utils/ui/tabs/tabStateManager.ts:507

Parameters​

electronApiScope​

RendererElectronApiScope | undefined

Returns​

void


initializeSubscriptions()​

initializeSubscriptions(): void

Defined in: utils/ui/tabs/tabStateManager.ts:516

Initialize state subscriptions for reactive tab management

Returns​

void


setupTabButtonHandlers()​

setupTabButtonHandlers(): void

Defined in: utils/ui/tabs/tabStateManager.ts:559

Set up click handlers for all tab buttons

Returns​

void


switchToTab()​

switchToTab(tabName: string): boolean

Defined in: utils/ui/tabs/tabStateManager.ts:605

Manually switch to a specific tab

Parameters​

tabName​

string

Name of tab to switch to.

Returns​

boolean


updateContentVisibility()​

updateContentVisibility(activeTab: string): void

Defined in: utils/ui/tabs/tabStateManager.ts:622

Update content area visibility

Parameters​

activeTab​

string

Currently active tab name.

Returns​

void


updateTabAvailability()​

updateTabAvailability(rawFitData: ActivityData | null | undefined): void

Defined in: utils/ui/tabs/tabStateManager.ts:654

Update tab availability based on data availability

Parameters​

rawFitData​

ActivityData | null | undefined

Current activity data.

Returns​

void


updateTabButtonStates()​

updateTabButtonStates(activeTab: string): void

Defined in: utils/ui/tabs/tabStateManager.ts:683

Update tab button visual states

Parameters​

activeTab​

string

Currently active tab name.

Returns​

void