Skip to main content

ChartStateManager

FitFileViewer - API Documentation v30.0.1


FitFileViewer - API Documentation / utils/charts/core/chartStateManager / ChartStateManager

Class: ChartStateManager

Defined in: utils/charts/core/chartStateManager.ts:61

Chart state manager handles chart-related state, lifecycle, and reactive updates.

Constructors​

Constructor​

new ChartStateManager(runtime?: ChartStateManagerRuntime): ChartStateManager

Defined in: utils/charts/core/chartStateManager.ts:68

Parameters​

runtime?​

ChartStateManagerRuntime = ...

Returns​

ChartStateManager

Properties​

isInitialized​

isInitialized: boolean = false

Defined in: utils/charts/core/chartStateManager.ts:62


isRendering​

isRendering: boolean = false

Defined in: utils/charts/core/chartStateManager.ts:63


pendingRenderReason​

pendingRenderReason: string | null = null

Defined in: utils/charts/core/chartStateManager.ts:64


renderDebounceTime​

renderDebounceTime: number = 250

Defined in: utils/charts/core/chartStateManager.ts:65


renderTimeout​

renderTimeout: Timeout | null = null

Defined in: utils/charts/core/chartStateManager.ts:66


runtime​

private readonly runtime: ChartStateManagerRuntime

Defined in: utils/charts/core/chartStateManager.ts:68

Methods​

clearChartState()​

clearChartState(): void

Defined in: utils/charts/core/chartStateManager.ts:77

Clears chart state when new data is loaded or charts are unloaded.

Returns​

void


debouncedRender()​

debouncedRender(reason?: string): void

Defined in: utils/charts/core/chartStateManager.ts:91

Debounced chart rendering to prevent excessive re-renders.

Parameters​

reason?​

string = "State change"

Reason for the render request.

Returns​

void


destroy()​

destroy(): void

Defined in: utils/charts/core/chartStateManager.ts:109

Cleanup method for removing subscriptions and clearing timers.

Returns​

void


destroyExistingCharts()​

destroyExistingCharts(): void

Defined in: utils/charts/core/chartStateManager.ts:120

Properly destroys existing chart instances.

Returns​

void


forceRender()​

forceRender(reason?: string): void

Defined in: utils/charts/core/chartStateManager.ts:134

Forces an immediate chart re-render.

Parameters​

reason?​

string = "Manual trigger"

Reason for the render.

Returns​

void


getChartInfo()​

getChartInfo(): ChartInfo

Defined in: utils/charts/core/chartStateManager.ts:144

Gets current chart state information.

Returns​

ChartInfo


handleDataChange()​

handleDataChange(newData: unknown): void

Defined in: utils/charts/core/chartStateManager.ts:167

Handles new data being loaded.

Parameters​

newData​

unknown

The new raw FIT data.

Returns​

void


handleTabActivation()​

handleTabActivation(): void

Defined in: utils/charts/core/chartStateManager.ts:182

Handles chart tab activation.

Returns​

void


handleThemeChange()​

handleThemeChange(newTheme?: string): void

Defined in: utils/charts/core/chartStateManager.ts:215

Handles theme changes with proper chart re-rendering.

Parameters​

newTheme?​

string

Optional new theme name for render reasons.

Returns​

void


initializeSubscriptions()​

initializeSubscriptions(): void

Defined in: utils/charts/core/chartStateManager.ts:231

Initializes reactive subscriptions for chart updates.

Returns​

void


isChartTabActive()​

isChartTabActive(): boolean

Defined in: utils/charts/core/chartStateManager.ts:293

Checks if the chart tab is currently active.

Returns​

boolean


performChartRender()​

performChartRender(reason: string): Promise<void>

Defined in: utils/charts/core/chartStateManager.ts:302

Performs actual chart rendering.

Parameters​

reason​

string

Reason for rendering.

Returns​

Promise<void>


updateControlsVisibility()​

updateControlsVisibility(visible: boolean): void

Defined in: utils/charts/core/chartStateManager.ts:365

Updates chart controls visibility.

Parameters​

visible​

boolean

Whether controls should be visible.

Returns​

void


reportSkippedOrFailedRender()​

private reportSkippedOrFailedRender(reason: string): void

Defined in: utils/charts/core/chartStateManager.ts:372

Parameters​

reason​

string

Returns​

void


renderPendingFollowUp()​

private renderPendingFollowUp(): void

Defined in: utils/charts/core/chartStateManager.ts:395

Returns​

void