UNPKG

@hashicorp/design-system-components

Version:
76 lines (75 loc) 3.68 kB
import Component from '@glimmer/component'; import { TrackedMap } from 'tracked-built-ins'; import type { HdsAdvancedTableNormalizedColumn } from '../types.ts'; import type { ModifierLike } from '@glint/template'; export declare const DEFAULT_WIDTH = "1fr"; export declare const DEFAULT_MIN_WIDTH = "150px"; export declare const DEFAULT_MAX_WIDTH = "800px"; export interface HdsAdvancedTableSyncWidthValuesSignature { Element: HTMLDivElement; } interface HdsAdvancedTableColumnManagerWidthSignature { Args: { columnOrder: string[]; columns: HdsAdvancedTableNormalizedColumn[]; orderedColumns: HdsAdvancedTableNormalizedColumn[]; thElements: TrackedMap<string, HTMLDivElement>; isSelectable?: boolean; getColumnByKey: (key: string) => HdsAdvancedTableNormalizedColumn | undefined; }; Blocks: { default: [ { gridTemplateColumns: string; syncWidthValues: ModifierLike<HdsAdvancedTableSyncWidthValuesSignature>; applyTransientWidth: (columnKey: HdsAdvancedTableNormalizedColumn['key']) => void; getAppliedWidth: (columnKey: HdsAdvancedTableNormalizedColumn['key']) => HdsAdvancedTableNormalizedColumn['width']; getSiblingColumnKeys: (columnKey: HdsAdvancedTableNormalizedColumn['key'] | null) => { previous?: HdsAdvancedTableNormalizedColumn['key']; next?: HdsAdvancedTableNormalizedColumn['key']; }; resetTransientColumnWidths: () => void; restoreColumnWidth: (columnKey: HdsAdvancedTableNormalizedColumn['key']) => void; setTransientColumnWidth: (columnKey: HdsAdvancedTableNormalizedColumn['key'], width: `${number}px`, clamped?: boolean) => void; setTransientColumnWidths: (options: { roundValues?: boolean; }) => void; updateResizeDebt: (columnKey: HdsAdvancedTableNormalizedColumn['key'], delta: number) => void; } ]; }; } export default class HdsAdvancedTableColumnManagerWidth extends Component<HdsAdvancedTableColumnManagerWidthSignature> { private _columnWidths; private _originalColumnWidths; private _transientColumnWidths; private _columnDebts; syncWidthValues: import("ember-modifier").FunctionBasedModifier<{ Element: HTMLDivElement; Args: { Named: import("ember-modifier/-private/signature").EmptyObject; Positional: []; }; }>; get gridTemplateColumns(): string; getAppliedWidth: (columnKey: HdsAdvancedTableNormalizedColumn["key"]) => HdsAdvancedTableNormalizedColumn["width"]; getSiblingColumnKeys: (columnKey: HdsAdvancedTableNormalizedColumn["key"] | null) => { previous?: HdsAdvancedTableNormalizedColumn["key"]; next?: HdsAdvancedTableNormalizedColumn["key"]; }; private _getPxWidth; private _getPxMinWidth; applyTransientWidth: (columnKey: HdsAdvancedTableNormalizedColumn["key"]) => void; setTransientColumnWidths: (options?: { roundValues?: boolean; }) => void; resetTransientColumnWidths: () => void; setTransientColumnWidth: (columnKey: HdsAdvancedTableNormalizedColumn["key"], width: `${number}px`, clamped?: boolean) => void; updateResizeDebt: (columnKey: HdsAdvancedTableNormalizedColumn["key"], delta: number) => void; restoreColumnWidth: (columnKey: HdsAdvancedTableNormalizedColumn["key"]) => void; private _settleWidthDebts; private _collectWidthDebts; private _payWidthDebts; private _sourceFundsForPayment; } export {};