ng-devui
Version:
DevUI components based on Angular
144 lines (143 loc) • 6.57 kB
TypeScript
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { ChangeDetectorRef, ElementRef, EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
import { I18nInterface, I18nService } from 'ng-devui/i18n';
import { Subscription } from 'rxjs';
import { ToggleMenuListItem } from './toggle-menu.type';
import * as i0 from "@angular/core";
export declare class ToggleMenuListComponent implements OnInit, OnChanges, OnDestroy {
private changeDetectorRef;
private i18n;
/**
* 【必选】下拉选项资源,支持Array<string>, Array<{key: value}>
*/
options: Array<ToggleMenuListItem>;
/**
* 【当传入资源(options)类型为Array<{key: value},必选】针对传入资源options的每项对应字段做禁用操作的key
*/
optionDisabledKey: string;
/**
* 【当传入资源(options)类型为Array<{key: value},必选】针对传入资源options的每项对应字段禁止变更的key
*/
optionImmutableKey: string;
/**
* 【当传入资源(options)类型为Array<{key: value},可选】如使用分组需设置
*/
optionGroupKey: string;
/**
* 【可选】下拉选框尺寸
*/
size: '' | 'sm' | 'lg';
keyword: string;
/**
* 【可选】是否在搜索过滤状态中
*/
isFiltering: boolean;
/**
* 【可选】启用数据懒加载,默认不启用
*/
enableLazyLoad: boolean;
/**
* 【可选】是否虚拟滚动
*/
virtualScroll: boolean;
/**
* 【必选】下拉列表单项模板
*/
listItemTemplate: TemplateRef<any>;
/**
* 【可选】自定义 loading 模板
*/
loadingTemplateRef: TemplateRef<any>;
/**
* 【可选】配置无数据展示
*/
noResultItemTemplate: TemplateRef<any>;
/**
* 【可选】支持自定义区域显示内容
*/
customViewTemplate: TemplateRef<any>;
/**
* customViewTemplate的方向,支持下方和右方
*/
customViewDirection: 'top' | 'bottom' | 'right' | 'left';
/**
* 【可选】模板高度
*/
templateItemSize: number;
/**
* 【可选】下拉菜单高度,建议使用px作为高度单位
*/
set scrollHeight(value: string);
get scrollHeight(): string;
selectIndex: number;
/**
* 【可选】是否允许单选状态下无选中值时高亮某项
*/
hasSelectIndex: boolean;
/**
* 【可选】是否支持多选
*/
multiple: boolean;
multiItems: any[];
value: ToggleMenuListItem | Array<ToggleMenuListItem>;
/**
* 【可选】是否支持全选
*/
isSelectAll: boolean;
/**
* 【可选】配置多选的时候是否维持原数组排序还是用户选择的顺序排序,默认是用户顺序
*/
keepMultipleOrder: 'origin' | 'user-select';
eventHandle: any;
closeScope: 'all' | 'blank' | 'none';
/**
* select下拉toggle事件,值为true或false
*/
toggleChange: EventEmitter<any>;
valueChange: EventEmitter<any>;
loadMore: EventEmitter<any>;
dropdownUl: ElementRef;
virtualScrollViewport: CdkVirtualScrollViewport;
get realVirtualScrollItemSize(): any;
_scrollHeight: string;
i18nCommonText: I18nInterface['common'];
i18nSubscription: Subscription;
availableOptions: any[];
activeIndex: number;
allChecked: boolean;
halfChecked: boolean;
showLoading: boolean;
scrollHeightNum: number;
minBuffer: number;
maxBuffer: number;
virtualScrollViewportSizeMightChange: boolean;
virtualScrollItemSize: any;
CONTAINER_MARGINS: number;
constructor(changeDetectorRef: ChangeDetectorRef, i18n: I18nService);
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
setI18nText(): void;
setAvailableOptions(): void;
setChecked(selectedItem: any): void;
selectAll(): void;
trackByFn(index: any, item: any): any;
onEscKeyup(event?: Event): void;
handleKeyUpEvent(event?: Event): void;
handleKeyDownEvent(event?: Event): void;
handleKeyEnterEvent(event?: Event): void;
scrollToActive(): void;
resetIndex(resetSelectIndex?: boolean): void;
choose: ({ option, index, event }: {
option: any;
index: any;
event: any;
}) => void;
showSelectAll(): boolean;
getVirtualScrollHeight(len: any, size: any): string;
loadMoreEvent(event: any): void;
loadStart(): void;
loadFinish(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<ToggleMenuListComponent, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<ToggleMenuListComponent, "d-toggle-menu-list", never, { "options": { "alias": "options"; "required": false; }; "optionDisabledKey": { "alias": "optionDisabledKey"; "required": false; }; "optionImmutableKey": { "alias": "optionImmutableKey"; "required": false; }; "optionGroupKey": { "alias": "optionGroupKey"; "required": false; }; "size": { "alias": "size"; "required": false; }; "keyword": { "alias": "keyword"; "required": false; }; "isFiltering": { "alias": "isFiltering"; "required": false; }; "enableLazyLoad": { "alias": "enableLazyLoad"; "required": false; }; "virtualScroll": { "alias": "virtualScroll"; "required": false; }; "listItemTemplate": { "alias": "listItemTemplate"; "required": false; }; "loadingTemplateRef": { "alias": "loadingTemplateRef"; "required": false; }; "noResultItemTemplate": { "alias": "noResultItemTemplate"; "required": false; }; "customViewTemplate": { "alias": "customViewTemplate"; "required": false; }; "customViewDirection": { "alias": "customViewDirection"; "required": false; }; "templateItemSize": { "alias": "templateItemSize"; "required": false; }; "scrollHeight": { "alias": "scrollHeight"; "required": false; }; "selectIndex": { "alias": "selectIndex"; "required": false; }; "hasSelectIndex": { "alias": "hasSelectIndex"; "required": false; }; "multiple": { "alias": "multiple"; "required": false; }; "multiItems": { "alias": "multiItems"; "required": false; }; "value": { "alias": "value"; "required": false; }; "isSelectAll": { "alias": "isSelectAll"; "required": false; }; "keepMultipleOrder": { "alias": "keepMultipleOrder"; "required": false; }; "eventHandle": { "alias": "eventHandle"; "required": false; }; "closeScope": { "alias": "closeScope"; "required": false; }; }, { "toggleChange": "toggleChange"; "valueChange": "valueChange"; "loadMore": "loadMore"; }, never, ["*"], false, never>;
}