@delon/form
Version:
Angular form generation based on JSON-Schema.
139 lines (133 loc) • 4.52 kB
TypeScript
import * as i2 from '@delon/form';
import { SFUISchemaItem, ControlUIWidget, SFSchemaEnum, SFValue, WidgetRegistry, SFWidgetProvideConfig } from '@delon/form';
import * as i0 from '@angular/core';
import { OnInit } from '@angular/core';
import * as i3 from 'ng-zorro-antd/cascader';
import { NzCascaderOption, NzCascaderPlacement, NzShowSearchOptions, NzCascaderExpandTrigger } from 'ng-zorro-antd/cascader';
import { NzSafeAny, NgStyleInterface } from 'ng-zorro-antd/core/types';
import * as i1 from '@angular/forms';
interface SFCascaderWidgetSchema extends SFUISchemaItem {
/**
* 异步静态数据源
*/
asyncData?: (node: NzCascaderOption, index: number, me?: CascaderWidget) => PromiseLike<void>;
/**
* 在文字框中显示提示讯息
*/
placeholder?: string;
placement?: NzCascaderPlacement;
/**
* 是否支持搜索,默认:`false`
*/
showSearch?: boolean | NzShowSearchOptions;
/**
* 是否显示清除按钮,默认:`true`
*/
allowClear?: boolean;
/**
* 清空时默认值,默认:`undefined`
*/
clearValue?: NzSafeAny;
/**
* 清除按钮的标题,默认:`清除`
*/
clearText?: string;
/**
* 是否显示箭头,默认:`true`
*/
showArrow?: boolean;
/**
* 是否显示箭头,默认:`true`
*/
showInput?: boolean;
/**
* 自定义浮层类名
*/
menuClassName?: string;
/**
* 自定义浮层样式
*/
menuStyle?: NgStyleInterface;
/**
* 当下拉列表为空时显示的内容
*/
notFoundContent?: string;
/**
* 弹出菜单中数据列的自定义样式
*/
columnClassName?: string;
/**
* 是否缓存异步加载的数据,若每次异步加载的数据都是变化的,需将该值设置为 `false`,默认:`true`
*/
enableCache?: boolean;
/**
* 次级菜单的展开方式,默认:`click`
*/
expandTrigger?: NzCascaderExpandTrigger;
/**
* 当此项为 `true` 时,点选每级菜单选项值都会发生变化,具体见上面的演示,默认:`false`
*/
changeOnSelect?: boolean;
/**
* 可通过自定义的函数来判断点击菜单选项是否应该发生变化,当函数返回 `true` 时,将发生变化
*/
changeOn?: (option: NzCascaderOption, level: number) => boolean;
/**
* 触发菜单出现的行为,默认:`['click']`
*/
triggerAction?: Array<'click' | 'hover'>;
/**
* 值 `value` 的属性名称,默认:`value`
*/
valueProperty?: string;
/**
* 值 `label` 的属性名称,默认:`label`
*/
labelProperty?: string;
/**
* 是否多选,默认:`false`
*/
multiple?: boolean;
/**
* 异步加载事件
*/
visibleChange?: (value: boolean) => void;
/**
* 选项值变更事件
*/
change?: (values: NzSafeAny[] | null) => void;
/**
* 选项变更事件
*/
selectionChange?: (values: NzCascaderOption[]) => void;
/**
* 内容被清空事件
*/
clear?: () => void;
}
declare class CascaderWidget extends ControlUIWidget<SFCascaderWidgetSchema> implements OnInit {
static readonly KEY = "cascader";
clearText: string;
showArrow: boolean;
showInput: boolean;
triggerAction: string[];
data: SFSchemaEnum[];
loadData?: (node: NzCascaderOption, index: number) => PromiseLike<NzSafeAny>;
ngOnInit(): void;
reset(value: SFValue): void;
_visibleChange(status: boolean): void;
_change(value: NzSafeAny[] | null): void;
_selectionChange(options: NzCascaderOption[]): void;
_clear(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<CascaderWidget, never>;
static ɵcmp: i0.ɵɵComponentDeclaration<CascaderWidget, "sf-cascader", never, {}, {}, never, never, true, never>;
}
declare class CascaderWidgetModule {
constructor(widgetRegistry: WidgetRegistry);
static ɵfac: i0.ɵɵFactoryDeclaration<CascaderWidgetModule, never>;
static ɵmod: i0.ɵɵNgModuleDeclaration<CascaderWidgetModule, never, [typeof i1.FormsModule, typeof i2.DelonFormModule, typeof i3.NzCascaderModule, typeof CascaderWidget], never>;
static ɵinj: i0.ɵɵInjectorDeclaration<CascaderWidgetModule>;
}
declare function withCascaderWidget(): SFWidgetProvideConfig;
export { CascaderWidget, CascaderWidgetModule, withCascaderWidget };
export type { SFCascaderWidgetSchema };