UNPKG

@cds/core

Version:

Clarity Design System - common components, themes, and utilties

29 lines (28 loc) 936 B
import { ReactiveController, ReactiveElement } from 'lit'; declare type GridRange = { grid: HTMLElement; cells: NodeListOf<HTMLElement>; rows: NodeListOf<HTMLElement>; rangeSelection?: boolean; }; /** * Given a 2d array grid structure provide a highlight/range selection of given cells */ export declare function gridRangeSelection<T extends ReactiveElement & GridRange>(): ClassDecorator; export declare class GridRangeSelectionController<T extends ReactiveElement & GridRange> implements ReactiveController { private host; private selectionActive; private firstCell; private activeCell; private get enabled(); constructor(host: T); hostConnected(): Promise<void>; private setupMouseEvents; private setupKeyboardListeners; private setFirstCell; private setActiveCell; private stopSelection; private resetAllActiveCells; private calculateSelection; } export {};