UNPKG

@hashicorp/design-system-components

Version:
47 lines (46 loc) 1.53 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import Component from '@glimmer/component'; import type Owner from '@ember/owner'; import type HdsAdvancedTableColumn from './models/column.ts'; import type { HdsAdvancedTableSignature } from './index.ts'; export interface HdsAdvancedTableThResizeHandleSignature { Args: { column: HdsAdvancedTableColumn; tableHeight?: number; onColumnResize?: HdsAdvancedTableSignature['Args']['onColumnResize']; }; Blocks: { default?: []; }; Element: HTMLDivElement; } export default class HdsAdvancedTableThResizeHandle extends Component<HdsAdvancedTableThResizeHandleSignature> { resizing: { startX: number; startColumnPxWidth: number; startNextColumnPxWidth?: number; } | null; private _transientDelta; private _isUpdateQueued; private _lastPointerEvent; private _handleElement; private _boundResize; private _boundStopResize; private _registerHandleElement; constructor(owner: Owner, args: HdsAdvancedTableThResizeHandleSignature['Args']); get height(): string | undefined; get classNames(): string; private _applyTransientWidths; onColumnResize(key?: string, width?: string): void; handleKeydown(event: KeyboardEvent): void; startResize(event: PointerEvent): void; private _setColumnWidth; private _applyResizeDelta; private _resize; private _stopResize; private _addDebt; private _setWidthDebts; }