UNPKG

@freezesoul/nz-formly

Version:

基于ng-zorro-antd UI 扩展的ngx-formly组件库

172 lines (171 loc) 5.24 kB
import { TemplateRef } from '@angular/core'; import { ControlOptions, NzFormlyFieldConfig } from '@freezesoul/nz-formly/common'; import { NzTreeComponent, NzTreeNode } from 'ng-zorro-antd/tree'; import { NzFormatBeforeDropEvent, NzTreeNodeOptions, NzFormatEmitEvent } from 'ng-zorro-antd/tree'; import { Observable } from 'rxjs'; import { FieldWrapperOptions } from '@freezesoul/nz-formly/field-wrapper'; /** * 多行文本模板配置 */ export interface TreeOptions extends ControlOptions { /** * 元数据 */ nzData?: NzTreeNodeOptions[] | NzTreeNode[]; /** * 是否节点占据一行 */ nzBlockNode?: boolean; /** * 节点前添加 Checkbox 复选框 */ nzCheckable?: boolean; /** * 节点前添加展开图标 */ nzShowExpand?: boolean; /** * 是否展示连接线 */ nzShowLine?: boolean; /** * 自定义展开图标 */ nzExpandedIcon?: TemplateRef<{ $implicit: NzTreeNode; }>; nzExpandedIconName?: string; /** * 是否展示 TreeNode title 前的图标,没有默认样式 */ nzShowIcon?: boolean; /** * 是否异步加载(显示加载状态) */ nzAsyncData?: boolean; /** * 设置节点可拖拽 */ nzDraggable?: boolean; /** * 支持点选多个节点(节点本身) */ nzMultiple?: boolean; /** * 搜索隐藏未匹配的节点 */ nzHideUnMatched?: boolean; /** * checkable 状态下节点选择完全受控(父子节点选中状态不再关联) */ nzCheckStrictly?: boolean; /** * 自定义节点 */ nzTreeTemplate?: TemplateRef<{ $implicit: NzTreeNode; }>; nzTreeTemplateName?: string; /** * 默认展开所有树节点 */ nzExpandAll?: boolean; /** * 展开指定的树节点 */ nzExpandedKeys?: string[]; /** * 指定选中复选框的树节点 */ nzCheckedKeys?: string[]; /** * 指定选中的树节点 */ nzSelectedKeys?: string[]; /** * 是否是选择模式 */ nzSelectMode?: boolean; /** * 按需筛选树高亮节点(参考可搜索的树),双向绑定 */ nzSearchValue?: string; /** * 自定义匹配方法,配合 nzSearchValue 使用 */ nzSearchFunc?: (node: NzTreeNodeOptions) => boolean; /** * drop前二次校验,允许用户自行决定是否允许放置 */ nzBeforeDrop?: (confirm: NzFormatBeforeDropEvent) => Observable<boolean>; /** * 虚拟滚动的总高度 */ nzVirtualHeight?: string; /** * 虚拟滚动时每一列的高度,与 cdk itemSize 相同 */ nzVirtualItemSize?: number; /** * 缓冲区最大像素高度,与 cdk maxBufferPx 相同 */ nzVirtualMaxBufferPx?: number; /** * 缓冲区最小像素高度,低于该值时将加载新结构,与 cdk minBufferPx 相同 */ nzVirtualMinBufferPx?: number; /** * 点击树节点触发 */ nzClick?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * 双击树节点触发 */ nzDblClick?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * 右键树节点触发 */ nzContextMenu?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * 点击树节点 Checkbox 触发 */ nzCheckBoxChange?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * 点击展开树节点图标触发 */ nzExpandChange?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * 搜索节点时调用(与nzSearchValue配合使用) */ nzSearchValueChange?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * 开始拖拽时调用 */ nzOnDragStart?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * dragenter 触发时调用 */ nzOnDragEnter?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * dragover 触发时调用 */ nzOnDragOver?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * dragleave 触发时调用 */ nzOnDragLeave?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * drop 触发时调用 */ nzOnDrop?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; /** * dragend 触发时调用 */ nzOnDragEnd?: (evt: NzFormatEmitEvent, field: NzFormlyFieldConfig<TreeOptions>, instance: NzTreeComponent) => void; } /** * grid配置 */ export interface TreeFieldConfig extends NzFormlyFieldConfig<TreeOptions & FieldWrapperOptions> { type: 'tree'; }