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