UNPKG

ngx-drag-to-select

Version:

A lightweight, fast, configurable and reactive drag-to-select component for Angular 8 and beyond

83 lines (82 loc) 3.63 kB
import { ElementRef, EventEmitter, OnDestroy, Renderer2, NgZone, AfterViewInit, AfterContentInit } from '@angular/core'; import { Observable } from 'rxjs'; import { ShortcutService } from './shortcut.service'; import { SelectBox, SelectContainerHost, PredicateFn } from './models'; import { KeyboardEventsService } from './keyboard-events.service'; import * as i0 from "@angular/core"; export declare class SelectContainerComponent implements AfterViewInit, OnDestroy, AfterContentInit { private platformId; private shortcuts; private keyboardEvents; private hostElementRef; private renderer; private ngZone; host: SelectContainerHost; selectBoxStyles$: Observable<SelectBox<string>>; selectBoxClasses$: Observable<{ [key: string]: boolean; }>; private $selectBox; private $selectableItems; selectedItems: any; selectOnDrag: boolean; disabled: boolean; disableDrag: boolean; selectOnClick: boolean; dragOverItems: boolean; disableRangeSelection: boolean; selectMode: boolean; selectWithShortcut: boolean; custom: boolean; readonly hostClass = true; selectedItemsChange: EventEmitter<any>; select: EventEmitter<any>; itemSelected: EventEmitter<any>; itemDeselected: EventEmitter<any>; selectionStarted: EventEmitter<void>; selectionEnded: EventEmitter<any[]>; private _tmpItems; private _selectedItems$; private _selectableItems; private updateItems$; private destroy$; private _lastRange; private _lastStartIndex; private _newRangeStart; private _lastRangeSelection; constructor(platformId: Record<string, unknown>, shortcuts: ShortcutService, keyboardEvents: KeyboardEventsService, hostElementRef: ElementRef, renderer: Renderer2, ngZone: NgZone); ngAfterViewInit(): void; ngAfterContentInit(): void; selectAll(): void; toggleItems<T>(predicate: PredicateFn<T>): void; selectItems<T>(predicate: PredicateFn<T>): void; deselectItems<T>(predicate: PredicateFn<T>): void; clearSelection(): void; update(): void; ngOnDestroy(): void; private _filterSelectableItems; private _initSelectedItemsChange; private _observeSelectableItems; private _observeBoundingRectChanges; private _initSelectionOutputs; private _calculateBoundingClientRect; private _cursorWithinHost; private _onMouseUp; private _onMouseDown; private _selectItems; private _isExtendedSelection; private _normalSelectionMode; private _extendedSelectionMode; private _flushItems; private _addItem; private _removeItem; private _toggleItem; private _selectItem; private _deselectItem; private _hasItem; private _getClosestSelectItem; private _resetRangeStart; private _getLastRangeSelection; static ɵfac: i0.ɵɵFactoryDeclaration<SelectContainerComponent, never>; static ɵcmp: i0.ɵɵComponentDeclaration<SelectContainerComponent, "dts-select-container", ["dts-select-container"], { "selectedItems": "selectedItems"; "selectOnDrag": "selectOnDrag"; "disabled": "disabled"; "disableDrag": "disableDrag"; "selectOnClick": "selectOnClick"; "dragOverItems": "dragOverItems"; "disableRangeSelection": "disableRangeSelection"; "selectMode": "selectMode"; "selectWithShortcut": "selectWithShortcut"; "custom": "custom"; }, { "selectedItemsChange": "selectedItemsChange"; "select": "select"; "itemSelected": "itemSelected"; "itemDeselected": "itemDeselected"; "selectionStarted": "selectionStarted"; "selectionEnded": "selectionEnded"; }, ["$selectableItems"], ["*"]>; }