UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

192 lines (191 loc) 9.95 kB
import React, { Key, ReactNode } from 'react'; import PropTypes from 'prop-types'; import TreeNode from './TreeNode'; import { Select, SelectProps } from '../select/Select'; import DataSet from '../data-set/DataSet'; import Record from '../data-set/Record'; import { CheckedStrategy } from '../data-set/enum'; export interface TreeSelectProps extends SelectProps { treeCheckable?: boolean; treeDefaultExpandAll?: boolean; treeDefaultExpandedKeys?: Key[]; async?: boolean; loadData?: (node: any) => Promise<any>; showCheckedStrategy?: CheckedStrategy; } export default class TreeSelect extends Select<TreeSelectProps> { static displayName: string; static propTypes: { id: PropTypes.Requireable<string>; size: PropTypes.Requireable<import("../core/enum").Size>; suffixCls: PropTypes.Requireable<string>; prefixCls: PropTypes.Requireable<string>; title: PropTypes.Requireable<PropTypes.ReactNodeLike>; disabled: PropTypes.Requireable<boolean>; hidden: PropTypes.Requireable<boolean>; autoFocus: PropTypes.Requireable<boolean>; accessKey: PropTypes.Requireable<string | boolean>; dir: PropTypes.Requireable<string>; contentEditable: PropTypes.Requireable<string | boolean>; draggable: PropTypes.Requireable<string | boolean>; style: PropTypes.Requireable<object>; className: PropTypes.Requireable<string>; tabIndex: PropTypes.Requireable<number>; lang: PropTypes.Requireable<string>; spellCheck: PropTypes.Requireable<boolean>; onFocus: PropTypes.Requireable<(...args: any[]) => any>; onBlur: PropTypes.Requireable<(...args: any[]) => any>; onClick: PropTypes.Requireable<(...args: any[]) => any>; onDoubleClick: PropTypes.Requireable<(...args: any[]) => any>; onMouseUp: PropTypes.Requireable<(...args: any[]) => any>; onMouseDown: PropTypes.Requireable<(...args: any[]) => any>; onMouseMove: PropTypes.Requireable<(...args: any[]) => any>; onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>; onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>; onMouseOver: PropTypes.Requireable<(...args: any[]) => any>; onMouseOut: PropTypes.Requireable<(...args: any[]) => any>; onContextMenu: PropTypes.Requireable<(...args: any[]) => any>; onKeyDown: PropTypes.Requireable<(...args: any[]) => any>; onKeyUp: PropTypes.Requireable<(...args: any[]) => any>; onKeyPress: PropTypes.Requireable<(...args: any[]) => any>; dataSet: PropTypes.Requireable<object>; _inTable: PropTypes.Requireable<boolean>; type: PropTypes.Requireable<string>; name: PropTypes.Requireable<string>; value: PropTypes.Requireable<any>; defaultValue: PropTypes.Requireable<any>; required: PropTypes.Requireable<boolean>; readOnly: PropTypes.Requireable<boolean>; form: PropTypes.Requireable<string>; dataIndex: PropTypes.Requireable<number>; multiple: PropTypes.Requireable<boolean>; range: PropTypes.Requireable<boolean | (string | null | undefined)[]>; rowSpan: PropTypes.Requireable<number>; newLine: PropTypes.Requireable<boolean>; colSpan: PropTypes.Requireable<number>; validator: PropTypes.Requireable<(...args: any[]) => any>; onInvalid: PropTypes.Requireable<(...args: any[]) => any>; help: PropTypes.Requireable<string>; showHelp: PropTypes.Requireable<import("../field/enum").ShowHelp>; renderer: PropTypes.Requireable<(...args: any[]) => any>; validationRenderer: PropTypes.Requireable<(...args: any[]) => any>; maxTagPlaceholder: PropTypes.Requireable<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>; maxTagCount: PropTypes.Requireable<number>; maxTagTextLength: PropTypes.Requireable<number>; pristine: PropTypes.Requireable<boolean>; trim: PropTypes.Requireable<import("../data-set/enum").FieldTrim>; onBeforeChange: PropTypes.Requireable<(...args: any[]) => any>; onChange: PropTypes.Requireable<(...args: any[]) => any>; onInput: PropTypes.Requireable<(...args: any[]) => any>; onEnterDown: PropTypes.Requireable<(...args: any[]) => any>; fieldClassName: PropTypes.Requireable<string>; highlight: PropTypes.Requireable<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>; highlightRenderer: PropTypes.Requireable<(...args: any[]) => any>; useColon: PropTypes.Requireable<boolean>; showValidation: PropTypes.Requireable<string>; placeholder: PropTypes.Requireable<string | (string | null | undefined)[]>; minLength: PropTypes.Requireable<number>; maxLength: PropTypes.Requireable<number>; pattern: PropTypes.Requireable<string | object>; autoComplete: PropTypes.Requireable<string>; prefix: PropTypes.Requireable<PropTypes.ReactNodeLike>; suffix: PropTypes.Requireable<PropTypes.ReactNodeLike>; clearButton: PropTypes.Requireable<boolean>; addonBefore: PropTypes.Requireable<PropTypes.ReactNodeLike>; addonBeforeStyle: PropTypes.Requireable<object>; addonAfter: PropTypes.Requireable<PropTypes.ReactNodeLike>; addonAfterStyle: PropTypes.Requireable<object>; restrict: PropTypes.Requireable<string | object>; isFlat: PropTypes.Requireable<boolean>; valueChangeAction: PropTypes.Requireable<import("../text-field/enum").ValueChangeAction>; wait: PropTypes.Requireable<number>; waitType: PropTypes.Requireable<import("../core/enum").WaitType>; groupClassName: PropTypes.Requireable<string>; showLengthInfo: PropTypes.Requireable<boolean>; border: PropTypes.Requireable<boolean>; popupContent: PropTypes.Requireable<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>; popupCls: PropTypes.Requireable<string>; popupStyle: PropTypes.Requireable<object>; popupPlacement: PropTypes.Requireable<string>; trigger: React.Requireable<any>; triggerShowDelay: PropTypes.Requireable<number>; triggerHiddenDelay: PropTypes.Requireable<number>; onPopupHiddenChange: PropTypes.Requireable<(...args: any[]) => any>; getPopupContainer: PropTypes.Requireable<(...args: any[]) => any>; getPopupAlignTarget: PropTypes.Requireable<(...args: any[]) => any>; tabIntoPopupContent: PropTypes.Requireable<boolean>; viewMode: PropTypes.Requireable<string>; combo: PropTypes.Requireable<boolean>; commonItem: PropTypes.Requireable<any[]>; maxCommonTagPlaceholder: PropTypes.Requireable<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>; maxCommonTagCount: PropTypes.Requireable<number>; maxCommonTagTextLength: PropTypes.Requireable<number>; searchable: PropTypes.Requireable<boolean>; searchMatcher: PropTypes.Requireable<string | ((...args: any[]) => any)>; paramMatcher: PropTypes.Requireable<string | ((...args: any[]) => any)>; primitiveValue: PropTypes.Requireable<boolean>; optionRenderer: PropTypes.Requireable<(...args: any[]) => any>; notFoundContent: PropTypes.Requireable<PropTypes.ReactNodeLike>; pagingOptionContent: PropTypes.Requireable<PropTypes.ReactNodeLike>; onOption: PropTypes.Requireable<(...args: any[]) => any>; noCache: PropTypes.Requireable<boolean>; dropdownMatchSelectWidth: PropTypes.Requireable<boolean>; selectAllButton: PropTypes.Requireable<boolean | ((...args: any[]) => any)>; reverse: PropTypes.Requireable<boolean>; optionTooltip: PropTypes.Requireable<string>; defaultActiveFirstOption: PropTypes.Requireable<boolean>; /** * fixed when ie the scroll width would cover the item width */ treeCheckable: PropTypes.Requireable<boolean>; showCheckedStrategy: PropTypes.Requireable<string>; treeDefaultExpandAll: PropTypes.Requireable<boolean>; treeDefaultExpandedKeys: PropTypes.Requireable<(string | number | null | undefined)[]>; }; static defaultProps: { suffixCls: string; dropdownMatchSelectWidth: boolean; showCheckedStrategy: string; reverse: boolean; combo: boolean; checkValueOnOptionsChange: boolean; onOption: ({ record }: { record: any; }) => { disabled: any; }; selectAllButton: boolean; clearButton: boolean; popupPlacement: string; triggerShowDelay: number; triggerHiddenDelay: number; viewMode: string; multiple: boolean; border: boolean; valueChangeAction: import("../text-field/enum").ValueChangeAction; waitType: import("../core/enum").WaitType; readOnly: boolean; disabled: boolean; noValidate: boolean; trim: import("../data-set/enum").FieldTrim; }; static TreeNode: typeof TreeNode; expandedKeys: string[] | undefined; get parentField(): string; get idField(): string; get options(): DataSet; get treeData(): Record[]; get selectedKeys(): Key[]; handleSearch(text?: string | string[] | undefined): void; handleExpand(keys: any): void; get multiple(): boolean; handleTreeSelect(_e: any, { node }: { node: any; }): void; handleTreeCheck(_e: any, { node }: { node: any; }): void; handleTreeNode(e: any): import("../option/Option").OptionProps; handleLoadData(event: any): Promise<any>; renderSelectAll(): void; getMenu(menuProps?: object): ReactNode; }