UNPKG

@hashicorp/design-system-components

Version:
42 lines (41 loc) 1.7 kB
/** * Copyright IBM Corp. 2021, 2025 * SPDX-License-Identifier: MPL-2.0 */ import Component from '@glimmer/component'; import type { HdsAdvancedTableNormalizedColumn, HdsAdvancedTableColumnReorderSide } from './types.ts'; import type { HdsAdvancedTableSignature } from './index'; export interface HdsAdvancedTableThReorderDropTargetSignature { Args: { column?: HdsAdvancedTableNormalizedColumn; draggedColumnKey?: HdsAdvancedTableNormalizedColumn['key'] | null; isFirstColumn: boolean; isLastColumn: boolean; hasSelectableRows?: HdsAdvancedTableSignature['Args']['isSelectable']; reorderHoveredColumnKey?: HdsAdvancedTableNormalizedColumn['key'] | null; draggedColumnSiblingColumnKeys?: { previous?: HdsAdvancedTableNormalizedColumn['key']; next?: HdsAdvancedTableNormalizedColumn['key']; }; tableHeight?: number; onReorderDrop?: (columnKey: HdsAdvancedTableNormalizedColumn['key'], side: HdsAdvancedTableColumnReorderSide) => void; onSetReorderHoveredColumnKey?: (key: HdsAdvancedTableNormalizedColumn['key'] | null) => void; }; Blocks: { default?: []; }; Element: HTMLDivElement; } export default class HdsAdvancedTableThReorderDropTarget extends Component<HdsAdvancedTableThReorderDropTargetSignature> { private _dragSide; private _isUpdateQueued; private _element; private _registerElement; private _getDragSide; get isBeingDragged(): boolean; get isDraggingOver(): boolean; get classNames(): string; get height(): string | undefined; handleDragOver(event: DragEvent): void; handleDrop(event: DragEvent): void; }