@nova-ui/bits
Version:
SolarWinds Nova Framework
63 lines (62 loc) • 2.94 kB
TypeScript
import { OverlayConfig } from "@angular/cdk/overlay";
import { AfterViewInit, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, Renderer2, SimpleChanges } from "@angular/core";
import { Subject } from "rxjs";
import { ISorterChanges } from "./public-api";
import { SorterKeyboardService } from "./sorter-keyboard.service";
import { IFilter, IFilterPub, ISorterFilter } from "../../services/data-source/public-api";
import { LoggerService } from "../../services/log-service";
import { MenuPopupComponent } from "../menu";
import { IMenuGroup, IMenuItem } from "../menu/public-api";
import { OverlayComponent } from "../overlay/overlay-component/overlay.component";
import * as i0 from "@angular/core";
export declare class SorterComponent implements OnChanges, OnInit, OnDestroy, AfterViewInit, IFilterPub {
private logger;
private sorterKeyboardService;
private elRef;
private renderer;
appendToBody: boolean;
caption: string;
/**
* The string[] type for itemsSource is the legacy non-i18n-friendly type
* and it should be removed as an option in scope of NUI-5801
*/
itemsSource: string[] | IMenuItem[];
selectedItem: string;
sortDirection: any;
sorterAction: EventEmitter<ISorterChanges>;
popupArea: ElementRef;
overlay: OverlayComponent;
menuPopup: MenuPopupComponent;
detectFilterChanges: boolean;
customContainer: ElementRef | undefined;
onDestroy$: Subject<void>;
items: IMenuGroup[];
overlayConfig: OverlayConfig;
private toggleRef;
private sortConfig;
private sortIcons;
private menuKeyControlListeners;
constructor(logger: LoggerService, sorterKeyboardService: SorterKeyboardService, elRef: ElementRef, renderer: Renderer2);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
ngAfterViewInit(): void;
select(item: IMenuItem): void;
toggleSortDirection(): void;
getSelectedItem(): any;
getSelectedItemTitle(): string;
getSortIcon(): string;
getFilters(): IFilter<ISorterFilter>;
updateOverlayWidth(): void;
getAriaLabelForSortingButton(): string;
ngOnDestroy(): void;
toggleSorterMenu(): void;
private initSelectedItem;
private initPopupItems;
private initSortDirection;
private setPopupSelection;
private triggerSorterAction;
private onAppendToBodyChange;
private initKeyboardService;
static ɵfac: i0.ɵɵFactoryDeclaration<SorterComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<SorterComponent, "nui-sorter", never, { "appendToBody": { "alias": "appendToBody"; "required": false; }; "caption": { "alias": "caption"; "required": false; }; "itemsSource": { "alias": "itemsSource"; "required": false; }; "selectedItem": { "alias": "selectedItem"; "required": false; }; "sortDirection": { "alias": "sortDirection"; "required": false; }; }, { "sorterAction": "sorterAction"; }, never, never, false, never>;
}