Skip to main content

Class: TabRenderingManager

Defined in: utils/ui/tabs/tabRenderingManager.ts:35

Tab rendering manager with performance optimizations

Constructors​

Constructor​

new TabRenderingManager(): TabRenderingManager;

Returns​

TabRenderingManager

Properties​

_activeOperations​

private readonly _activeOperations: Map<string, CancellationTokenSource>;

Defined in: utils/ui/tabs/tabRenderingManager.ts:36


_lastRenderTime​

private readonly _lastRenderTime: Map<string, number>;

Defined in: utils/ui/tabs/tabRenderingManager.ts:40


_currentTab​

private _currentTab: string | null = null;

Defined in: utils/ui/tabs/tabRenderingManager.ts:41


MIN_RENDER_INTERVAL_MS​

private readonly MIN_RENDER_INTERVAL_MS: 100 = 100;

Defined in: utils/ui/tabs/tabRenderingManager.ts:42


TAB_SWITCH_DEBOUNCE_MS​

private readonly TAB_SWITCH_DEBOUNCE_MS: 50 = 50;

Defined in: utils/ui/tabs/tabRenderingManager.ts:43

Methods​

cancelAllOperations()​

cancelAllOperations(): void;

Defined in: utils/ui/tabs/tabRenderingManager.ts:48

Cancel all active rendering operations

Returns​

void


completeRenderOperation()​

private completeRenderOperation<Result>(
tabName: string,
startTime: number,
result: Result
): Result | null;

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

Type Parameters​

Result​

Result

Parameters​

tabName​

string

startTime​

number

result​

Result

Returns​

Result | null


cancelOperation()​

cancelOperation(tabName: string): void;

Defined in: utils/ui/tabs/tabRenderingManager.ts:63

Cancel operation for a specific tab

Parameters​

tabName​

string

Name of tab.

Returns​

void


executeRenderOperation()​

executeRenderOperation<Result = unknown>(
tabName: string,
operation: TabRenderOperation<Result>,
options?: TabRenderOperationOptions
): Promise<Result | null>;

Defined in: utils/ui/tabs/tabRenderingManager.ts:85

Execute a rendering operation with cancellation support

Type Parameters​

Result​

Result = unknown

Parameters​

tabName​

string

Name of tab being rendered.

operation​

TabRenderOperation<Result>

Async operation to execute.

options?​

TabRenderOperationOptions = {}

Render scheduling options.

Returns​

Promise<Result | null>

Operation result, or null when skipped/cancelled/stale.

Throws​

Rethrows non-cancellation errors from the render operation.


getCurrentTab()​

getCurrentTab(): string | null;

Defined in: utils/ui/tabs/tabRenderingManager.ts:174

Get current active tab

Returns​

string | null


isOperationActive()​

isOperationActive(tabName: string): boolean;

Defined in: utils/ui/tabs/tabRenderingManager.ts:183

Check if a tab rendering operation is active

Parameters​

tabName​

string

Name of tab.

Returns​

boolean


notifyTabSwitch()​

notifyTabSwitch(oldTab: string | null, newTab: string): void;

Defined in: utils/ui/tabs/tabRenderingManager.ts:194

Notify that tab has been switched away from This cancels any active operations for the previous tab

Parameters​

oldTab​

string | null

Previous tab name.

newTab​

string

New tab name.

Returns​

void


resetRenderTime()​

resetRenderTime(tabName: string): void;

Defined in: utils/ui/tabs/tabRenderingManager.ts:208

Reset render timing for a tab (forces next render to execute)

Parameters​

tabName​

string

Name of tab.

Returns​

void


setCurrentTab()​

setCurrentTab(tabName: string): void;

Defined in: utils/ui/tabs/tabRenderingManager.ts:217

Set current tab

Parameters​

tabName​

string

Name of tab.

Returns​

void