UNPKG

@hashicorp/design-system-components

Version:
69 lines (68 loc) 3.98 kB
import Component from '@glimmer/component'; import { TrackedMap } from 'tracked-built-ins'; import type { HdsAdvancedTableColumnReorderCallback, HdsAdvancedTableColumnReorderSide, HdsAdvancedTableNormalizedColumn } from '../types.ts'; import type { ModifierLike } from '@glint/template'; export interface HdsAdvancedTableSyncColumnOrderSignature { Element: HTMLDivElement; Args: { Positional: [HdsAdvancedTableNormalizedColumn[], string[] | undefined]; }; } interface HdsAdvancedTableColumnManagerOrderSignature { Args: { columns: HdsAdvancedTableNormalizedColumn[]; columnOrder: string[] | undefined; hasReorderableColumns?: boolean; hasStickyFirstColumn?: boolean; onColumnReorder: HdsAdvancedTableColumnReorderCallback | undefined; getColumnByKey: (key: string) => HdsAdvancedTableNormalizedColumn | undefined; thElements: TrackedMap<string, HTMLDivElement>; }; Blocks: { default: [ { orderedColumns: HdsAdvancedTableNormalizedColumn[]; columnOrder: string[]; draggedColumnKey: string | null; reorderHoveredColumnKey: string | null; firstColumnKey: string | undefined; firstNonStickyColumnKey: string | undefined; lastColumnKey: string | undefined; syncColumnOrder: ModifierLike<HdsAdvancedTableSyncColumnOrderSignature>; moveColumnToDropTarget: (columnKey: HdsAdvancedTableNormalizedColumn['key'], side: HdsAdvancedTableColumnReorderSide) => void; moveColumnToTarget: (columnKey: HdsAdvancedTableNormalizedColumn['key'], targetColumnKey: HdsAdvancedTableNormalizedColumn['key'], side: HdsAdvancedTableColumnReorderSide) => void; moveColumnToTerminalPosition: (columnKey: HdsAdvancedTableNormalizedColumn['key'], position: 'start' | 'end') => void; stepColumn: (columnKey: HdsAdvancedTableNormalizedColumn['key'], step: number) => void; setDraggedColumnKey: (columnKey: HdsAdvancedTableNormalizedColumn['key'] | null) => void; setReorderHoveredColumnKey: (key: HdsAdvancedTableNormalizedColumn['key'] | null) => void; } ]; }; } export default class HdsAdvancedTableColumnManagerOrder extends Component<HdsAdvancedTableColumnManagerOrderSignature> { draggedColumnKey: HdsAdvancedTableNormalizedColumn['key'] | null; reorderHoveredColumnKey: HdsAdvancedTableNormalizedColumn['key'] | null; private _columnOrder; syncColumnOrder: import("ember-modifier").FunctionBasedModifier<{ Element: HTMLDivElement; Args: { Named: import("ember-modifier/-private/signature").EmptyObject; Positional: [HdsAdvancedTableNormalizedColumn[], string[] | undefined]; }; }>; get columnOrder(): string[]; set columnOrder(value: string[]); get visibleColumnOrder(): string[]; get orderedColumns(): HdsAdvancedTableNormalizedColumn[]; get firstColumnKey(): HdsAdvancedTableNormalizedColumn['key'] | undefined; get firstNonStickyColumnIndex(): number; get firstNonStickyColumnKey(): HdsAdvancedTableNormalizedColumn['key'] | undefined; get lastColumnKey(): HdsAdvancedTableNormalizedColumn['key'] | undefined; moveColumnToTerminalPosition: (columnKey: HdsAdvancedTableNormalizedColumn["key"], position: "start" | "end") => void; stepColumn: (columnKey: HdsAdvancedTableNormalizedColumn["key"], step: number) => void; moveColumnToDropTarget: (targetColumnKey: HdsAdvancedTableNormalizedColumn["key"], side: HdsAdvancedTableColumnReorderSide) => void; moveColumnToTarget: (sourceColumnKey: HdsAdvancedTableNormalizedColumn["key"], targetColumnKey: HdsAdvancedTableNormalizedColumn["key"], side: HdsAdvancedTableColumnReorderSide) => void; setColumnOrder: HdsAdvancedTableColumnReorderCallback; private _getColumnKey; } export {};