amis 1.2.4-beta.10 → 1.2.4-beta.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (99) hide show
  1. package/lib/components/Radios.d.ts +21 -21
  2. package/lib/components/Select.d.ts +239 -238
  3. package/lib/components/Select.js +6 -2
  4. package/lib/components/Select.js.map +2 -2
  5. package/lib/components/Tree.d.ts +352 -84
  6. package/lib/components/Tree.js +71 -12
  7. package/lib/components/Tree.js.map +2 -2
  8. package/lib/components/icons.js +3 -0
  9. package/lib/components/icons.js.map +2 -2
  10. package/lib/helper.css.map +1 -1
  11. package/lib/index.js +1 -1
  12. package/lib/locale/de-DE.js +2 -0
  13. package/lib/locale/de-DE.js.map +2 -2
  14. package/lib/locale/en-US.js +2 -0
  15. package/lib/locale/en-US.js.map +2 -2
  16. package/lib/locale/zh-CN.js +2 -0
  17. package/lib/locale/zh-CN.js.map +2 -2
  18. package/lib/renderers/Form/DiffEditor.d.ts +108 -90
  19. package/lib/renderers/Form/Editor.d.ts +108 -90
  20. package/lib/renderers/Form/InputImage.d.ts +1 -1
  21. package/lib/renderers/Form/InputImage.js +6 -5
  22. package/lib/renderers/Form/InputImage.js.map +2 -2
  23. package/lib/renderers/Form/InputTree.d.ts +14 -0
  24. package/lib/renderers/Form/InputTree.js +5 -3
  25. package/lib/renderers/Form/InputTree.js.map +2 -2
  26. package/lib/renderers/Form/NestedSelect.d.ts +6 -1
  27. package/lib/renderers/Form/NestedSelect.js +7 -3
  28. package/lib/renderers/Form/NestedSelect.js.map +2 -2
  29. package/lib/renderers/Form/Options.d.ts +1 -0
  30. package/lib/renderers/Form/Options.js +21 -3
  31. package/lib/renderers/Form/Options.js.map +2 -2
  32. package/lib/renderers/Form/TreeSelect.d.ts +19 -1
  33. package/lib/renderers/Form/TreeSelect.js +10 -4
  34. package/lib/renderers/Form/TreeSelect.js.map +2 -2
  35. package/lib/renderers/Table/index.js +24 -16
  36. package/lib/renderers/Table/index.js.map +2 -2
  37. package/lib/store/app.js +4 -7
  38. package/lib/store/app.js.map +2 -2
  39. package/lib/store/combo.d.ts +120 -100
  40. package/lib/store/form.d.ts +48 -40
  41. package/lib/store/formItem.d.ts +2 -1
  42. package/lib/store/formItem.js +83 -6
  43. package/lib/store/formItem.js.map +2 -2
  44. package/lib/store/table.d.ts +96 -80
  45. package/lib/themes/ang.css.map +1 -1
  46. package/lib/themes/antd.css.map +1 -1
  47. package/lib/themes/cxd-ie11.css +8 -2
  48. package/lib/themes/cxd.css +8 -2
  49. package/lib/themes/cxd.css.map +1 -1
  50. package/lib/themes/dark.css.map +1 -1
  51. package/lib/themes/default.css +8 -2
  52. package/lib/themes/default.css.map +1 -1
  53. package/lib/utils/helper.d.ts +15 -0
  54. package/lib/utils/helper.js +58 -4
  55. package/lib/utils/helper.js.map +2 -2
  56. package/lib/utils/markdown.js +3 -0
  57. package/lib/utils/markdown.js.map +2 -2
  58. package/package.json +5 -4
  59. package/schema.json +49 -21
  60. package/scss/_functions.scss +3 -1
  61. package/scss/components/_images.scss +4 -2
  62. package/scss/components/form/_form.scss +3 -2
  63. package/scss/components/form/_group.scss +4 -2
  64. package/scss/layout/_grid.scss +12 -10
  65. package/scss/themes/_cxd-variables.scss +8 -2
  66. package/sdk/charts.js +13 -13
  67. package/sdk/color-picker.js +67 -67
  68. package/sdk/cropperjs.js +2 -2
  69. package/sdk/cxd-ie11.css +8 -8
  70. package/sdk/cxd.css +8 -2
  71. package/sdk/exceljs.js +1 -1
  72. package/sdk/helper.css.map +1 -0
  73. package/sdk/markdown.js +70 -68
  74. package/sdk/papaparse.js +1 -1
  75. package/sdk/renderers/Form/CityDB.js +1 -1
  76. package/sdk/rest.js +19 -19
  77. package/sdk/rich-text.js +68 -68
  78. package/sdk/sdk-ie11.css +8 -8
  79. package/sdk/sdk.css +8 -2
  80. package/sdk/sdk.js +1132 -1130
  81. package/sdk/thirds/hls.js/hls.js +1 -1
  82. package/sdk/thirds/mpegts.js/mpegts.js +2 -2
  83. package/sdk/tinymce.js +59 -59
  84. package/src/components/Select.tsx +30 -5
  85. package/src/components/Tree.tsx +115 -20
  86. package/src/components/icons.tsx +4 -0
  87. package/src/locale/de-DE.ts +2 -0
  88. package/src/locale/en-US.ts +2 -0
  89. package/src/locale/zh-CN.ts +2 -0
  90. package/src/renderers/Form/InputImage.tsx +12 -6
  91. package/src/renderers/Form/InputTree.tsx +30 -2
  92. package/src/renderers/Form/NestedSelect.tsx +15 -3
  93. package/src/renderers/Form/Options.tsx +46 -4
  94. package/src/renderers/Form/TreeSelect.tsx +36 -3
  95. package/src/renderers/Table/index.tsx +48 -44
  96. package/src/store/app.ts +4 -7
  97. package/src/store/formItem.ts +107 -3
  98. package/src/utils/helper.ts +68 -7
  99. package/src/utils/markdown.ts +4 -0
@@ -6,8 +6,8 @@
6
6
  "/src/renderers/Table/index.tsx"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {Renderer, RendererProps} from '../../factory';\nimport {SchemaNode, Action, Schema} from '../../types';\nimport forEach from 'lodash/forEach';\nimport {filter} from '../../utils/tpl';\nimport DropDownButton from '../DropDownButton';\nimport Checkbox from '../../components/Checkbox';\nimport Button from '../../components/Button';\nimport {TableStore, ITableStore, IColumn, IRow} from '../../store/table';\nimport {\n anyChanged,\n getScrollParent,\n difference,\n noop,\n autobind,\n isArrayChildrenModified,\n getVariable,\n removeHTMLTag\n} from '../../utils/helper';\nimport {\n isPureVariable,\n resolveVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\nimport debounce from 'lodash/debounce';\nimport Sortable from 'sortablejs';\nimport {resizeSensor} from '../../utils/resize-sensor';\nimport find from 'lodash/find';\nimport {Icon} from '../../components/icons';\nimport {TableCell} from './TableCell';\nimport {TableRow} from './TableRow';\nimport {HeadCellFilterDropDown} from './HeadCellFilterDropdown';\nimport {HeadCellSearchDropDown} from './HeadCellSearchDropdown';\nimport {TableContent} from './TableContent';\nimport {\n BaseSchema,\n SchemaClassName,\n SchemaObject,\n SchemaTokenizeableString,\n SchemaType\n} from '../../Schema';\nimport {SchemaPopOver} from '../PopOver';\nimport {SchemaQuickEdit} from '../QuickEdit';\nimport {SchemaCopyable} from '../Copyable';\nimport {SchemaRemark} from '../Remark';\nimport {toDataURL, getImageDimensions} from '../../utils/image';\nimport {TableBody} from './TableBody';\nimport {TplSchema} from '../Tpl';\nimport {MappingSchema} from '../Mapping';\nimport {isAlive, getSnapshot} from 'mobx-state-tree';\n\n/**\n * 表格列,不指定类型时默认为文本类型。\n */\nexport type TableColumnObject = {\n /**\n * 列标题\n */\n label: string;\n\n /**\n * 配置是否固定当前列\n */\n fixed?: 'left' | 'right' | 'none';\n\n /**\n * 绑定字段名\n */\n name?: string;\n\n /**\n * 配置查看详情功能\n */\n popOver?: SchemaPopOver;\n\n /**\n * 配置快速编辑功能\n */\n quickEdit?: SchemaQuickEdit;\n\n /**\n * 作为表单项时,可以单独配置编辑时的快速编辑面板。\n */\n quickEditOnUpdate?: SchemaQuickEdit;\n\n /**\n * 配置点击复制功能\n */\n copyable?: SchemaCopyable;\n\n /**\n * 配置是否可以排序\n */\n sortable?: boolean;\n\n /**\n * 是否可快速搜索\n */\n searchable?: boolean;\n\n /**\n * 配置是否默认展示\n */\n toggled?: boolean;\n\n /**\n * 列宽度\n */\n width?: number | string;\n\n /**\n * todo\n */\n filterable?:\n | boolean\n | {\n source?: string;\n options?: Array<any>;\n };\n\n /**\n * 结合表格的 footable 一起使用。\n * 填写 *、xs、sm、md、lg指定 footable 的触发条件,可以填写多个用空格隔开\n */\n breakpoint?: '*' | 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 提示信息\n */\n remark?: SchemaRemark;\n};\n\nexport type TableColumnWithType = SchemaObject & TableColumnObject;\nexport type TableColumn = TableColumnWithType | TableColumnObject;\n\n/**\n * Table 表格渲染器。\n * 文档:https://baidu.gitee.io/amis/docs/components/table\n */\nexport interface TableSchema extends BaseSchema {\n /**\n * 指定为表格渲染器。\n */\n type: 'table' | 'static-table';\n\n /**\n * 是否固定表头\n */\n affixHeader?: boolean;\n\n /**\n * 表格的列信息\n */\n columns?: Array<TableColumn>;\n\n /**\n * 展示列显示开关,自动即:列数量大于或等于5个时自动开启\n */\n columnsTogglable?: boolean | 'auto';\n\n /**\n * 是否开启底部展示功能,适合移动端展示\n */\n footable?:\n | boolean\n | {\n expand?: 'first' | 'all' | 'none';\n\n /**\n * 是否为手风琴模式\n */\n accordion?: boolean;\n };\n\n /**\n * 底部外层 CSS 类名\n */\n footerClassName?: SchemaClassName;\n\n /**\n * 顶部外层 CSS 类名\n */\n headerClassName?: SchemaClassName;\n\n /**\n * 占位符\n */\n placeholder?: string;\n\n /**\n * 是否显示底部\n */\n showFooter?: boolean;\n\n /**\n * 是否显示头部\n */\n showHeader?: boolean;\n\n /**\n * 数据源:绑定当前环境变量\n */\n source?: SchemaTokenizeableString;\n\n /**\n * 表格 CSS 类名\n */\n tableClassName?: SchemaClassName;\n\n /**\n * 标题\n */\n title?: string;\n\n /**\n * 工具栏 CSS 类名\n */\n toolbarClassName?: SchemaClassName;\n\n /**\n * 合并单元格配置,配置数字表示从左到右的多少列自动合并单元格。\n */\n combineNum?: number;\n\n /**\n * 合并单元格配置,配置从第几列开始合并。\n */\n combineFromIndex?: number;\n\n /**\n * 顶部总结行\n */\n prefixRow?: Array<SchemaObject>;\n\n /**\n * 底部总结行\n */\n affixRow?: Array<SchemaObject>;\n}\n\nexport interface TableProps extends RendererProps {\n title?: string; // 标题\n header?: SchemaNode;\n footer?: SchemaNode;\n actions?: Action[];\n className?: string;\n headerClassName?: string;\n footerClassName?: string;\n store: ITableStore;\n columns?: Array<any>;\n headingClassName?: string;\n toolbarClassName?: string;\n headerToolbarClassName?: string;\n footerToolbarClassName?: string;\n tableClassName?: string;\n source?: string;\n selectable?: boolean;\n selected?: Array<any>;\n maxKeepItemSelectionLength?: number;\n valueField?: string;\n draggable?: boolean;\n columnsTogglable?: boolean | 'auto';\n affixHeader?: boolean;\n affixColumns?: boolean;\n combineNum?: number | string;\n combineFromIndex?: number;\n footable?:\n | boolean\n | {\n expand?: 'first' | 'all' | 'none';\n expandAll?: boolean;\n accordion?: boolean;\n };\n expandConfig?: {\n expand?: 'first' | 'all' | 'none';\n expandAll?: boolean;\n accordion?: boolean;\n };\n itemCheckableOn?: string;\n itemDraggableOn?: string;\n itemActions?: Array<Action>;\n onSelect: (\n selectedItems: Array<object>,\n unSelectedItems: Array<object>\n ) => void;\n onPristineChange?: (data: object, rowIndexe: string) => void;\n onSave?: (\n items: Array<object> | object,\n diff: Array<object> | object,\n rowIndexes: Array<string> | string,\n unModifiedItems?: Array<object>,\n rowOrigins?: Array<object> | object,\n resetOnFailed?: boolean\n ) => void;\n onSaveOrder?: (moved: Array<object>, items: Array<object>) => void;\n onQuery: (values: object) => void;\n onImageEnlarge?: (data: any, target: any) => void;\n buildItemProps?: (item: any, index: number) => any;\n checkOnItemClick?: boolean;\n hideCheckToggler?: boolean;\n rowClassName?: string;\n rowClassNameExpr?: string;\n popOverContainer?: any;\n canAccessSuperData?: boolean;\n reUseRow?: boolean;\n}\n\n/**\n * 将 url 转成绝对地址\n */\nconst getAbsoluteUrl = (function () {\n let link: HTMLAnchorElement;\n return function (url: string) {\n if (!link) link = document.createElement('a');\n link.href = url;\n return link.href;\n };\n})();\n\nexport default class Table extends React.Component<TableProps, object> {\n static propsList: Array<string> = [\n 'header',\n 'headerToolbarRender',\n 'footer',\n 'footerToolbarRender',\n 'footable',\n 'expandConfig',\n 'placeholder',\n 'tableClassName',\n 'headingClassName',\n 'source',\n 'selectable',\n 'columnsTogglable',\n 'affixHeader',\n 'affixColumns',\n 'headerClassName',\n 'footerClassName',\n 'selected',\n 'multiple',\n 'primaryField',\n 'hideQuickSaveBtn',\n 'itemCheckableOn',\n 'itemDraggableOn',\n 'checkOnItemClick',\n 'hideCheckToggler',\n 'itemActions',\n 'combineNum',\n 'combineFromIndex',\n 'items',\n 'columns',\n 'valueField',\n 'saveImmediately',\n 'rowClassName',\n 'rowClassNameExpr',\n 'popOverContainer',\n 'headerToolbarClassName',\n 'toolbarClassName',\n 'footerToolbarClassName'\n ];\n static defaultProps: Partial<TableProps> = {\n className: '',\n placeholder: 'placeholder.noData',\n tableClassName: '',\n source: '$items',\n selectable: false,\n columnsTogglable: 'auto',\n affixHeader: true,\n headerClassName: '',\n footerClassName: '',\n toolbarClassName: '',\n headerToolbarClassName: '',\n footerToolbarClassName: '',\n primaryField: 'id',\n itemCheckableOn: '',\n itemDraggableOn: '',\n hideCheckToggler: false,\n canAccessSuperData: false\n };\n\n table?: HTMLTableElement;\n sortable?: Sortable;\n dragTip?: HTMLElement;\n affixedTable?: HTMLTableElement;\n parentNode?: HTMLElement | Window;\n lastScrollLeft: number = -1;\n totalWidth: number = 0;\n totalHeight: number = 0;\n outterWidth: number = 0;\n outterHeight: number = 0;\n unSensor?: Function;\n updateTableInfoLazy: () => void;\n widths: {\n [propName: string]: number;\n } = {};\n heights: {\n [propName: string]: number;\n } = {};\n renderedToolbars: Array<string> = [];\n subForms: any = {};\n\n constructor(props: TableProps) {\n super(props);\n\n this.handleOutterScroll = this.handleOutterScroll.bind(this);\n this.affixDetect = this.affixDetect.bind(this);\n this.updateTableInfoLazy = debounce(this.updateTableInfo.bind(this), 250, {\n trailing: true,\n leading: true\n });\n this.tableRef = this.tableRef.bind(this);\n this.affixedTableRef = this.affixedTableRef.bind(this);\n this.handleAction = this.handleAction.bind(this);\n this.handleCheck = this.handleCheck.bind(this);\n this.handleCheckAll = this.handleCheckAll.bind(this);\n this.handleQuickChange = this.handleQuickChange.bind(this);\n this.handleSave = this.handleSave.bind(this);\n this.handleSaveOrder = this.handleSaveOrder.bind(this);\n this.reset = this.reset.bind(this);\n this.dragTipRef = this.dragTipRef.bind(this);\n this.getPopOverContainer = this.getPopOverContainer.bind(this);\n this.renderCell = this.renderCell.bind(this);\n this.renderHeadCell = this.renderHeadCell.bind(this);\n this.renderToolbar = this.renderToolbar.bind(this);\n this.handleMouseMove = this.handleMouseMove.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.subFormRef = this.subFormRef.bind(this);\n\n const {\n store,\n columns,\n selectable,\n columnsTogglable,\n draggable,\n orderBy,\n orderDir,\n multiple,\n footable,\n primaryField,\n itemCheckableOn,\n itemDraggableOn,\n hideCheckToggler,\n combineFromIndex,\n expandConfig,\n formItem,\n keepItemSelectionOnPageChange,\n maxKeepItemSelectionLength\n } = props;\n\n let combineNum = props.combineNum;\n if (typeof combineNum === 'string') {\n combineNum = parseInt(\n resolveVariableAndFilter(combineNum, props.data, '| raw'),\n 10\n );\n }\n\n store.update({\n selectable,\n draggable,\n columns,\n columnsTogglable,\n orderBy,\n orderDir,\n multiple,\n footable,\n expandConfig,\n primaryField,\n itemCheckableOn,\n itemDraggableOn,\n hideCheckToggler,\n combineNum,\n combineFromIndex,\n keepItemSelectionOnPageChange,\n maxKeepItemSelectionLength\n });\n\n formItem && isAlive(formItem) && formItem.setSubStore(store);\n Table.syncRows(store, this.props, undefined) && this.syncSelected();\n }\n\n static syncRows(\n store: ITableStore,\n props: TableProps,\n prevProps?: TableProps\n ) {\n const source = props.source;\n const value = props.value || props.items;\n let rows: Array<object> = [];\n let updateRows = false;\n\n if (\n Array.isArray(value) &&\n (!prevProps || (prevProps.value || prevProps.items) !== value)\n ) {\n updateRows = true;\n rows = value;\n } else if (typeof source === 'string') {\n const resolved = resolveVariableAndFilter(source, props.data, '| raw');\n const prev = prevProps\n ? resolveVariableAndFilter(source, prevProps.data, '| raw')\n : null;\n\n if (prev && prev === resolved) {\n updateRows = false;\n } else if (Array.isArray(resolved)) {\n updateRows = true;\n rows = resolved;\n }\n }\n\n updateRows && store.initRows(rows, props.getEntryId, props.reUseRow);\n typeof props.selected !== 'undefined' &&\n store.updateSelected(props.selected, props.valueField);\n return updateRows;\n }\n\n componentDidMount() {\n let parent: HTMLElement | Window | null = getScrollParent(\n findDOMNode(this) as HTMLElement\n );\n\n if (!parent || parent === document.body) {\n parent = window;\n }\n\n this.parentNode = parent;\n this.updateTableInfo();\n\n const dom = findDOMNode(this) as HTMLElement;\n if (dom.closest('.modal-body')) {\n return;\n }\n\n this.affixDetect();\n parent.addEventListener('scroll', this.affixDetect);\n window.addEventListener('resize', this.affixDetect);\n }\n\n componentDidUpdate(prevProps: TableProps) {\n const props = this.props;\n const store = props.store;\n\n if (\n anyChanged(\n [\n 'selectable',\n 'columnsTogglable',\n 'draggable',\n 'orderBy',\n 'orderDir',\n 'multiple',\n 'footable',\n 'primaryField',\n 'itemCheckableOn',\n 'itemDraggableOn',\n 'hideCheckToggler',\n 'combineNum',\n 'combineFromIndex',\n 'expandConfig'\n ],\n prevProps,\n props\n )\n ) {\n let combineNum = props.combineNum;\n if (typeof combineNum === 'string') {\n combineNum = parseInt(\n resolveVariableAndFilter(combineNum, props.data, '| raw'),\n 10\n );\n }\n store.update({\n selectable: props.selectable,\n columnsTogglable: props.columnsTogglable,\n draggable: props.draggable,\n orderBy: props.orderBy,\n orderDir: props.orderDir,\n multiple: props.multiple,\n primaryField: props.primaryField,\n footable: props.footable,\n itemCheckableOn: props.itemCheckableOn,\n itemDraggableOn: props.itemDraggableOn,\n hideCheckToggler: props.hideCheckToggler,\n combineNum: combineNum,\n combineFromIndex: props.combineFromIndex,\n expandConfig: props.expandConfig\n });\n }\n\n if (prevProps.columns !== props.columns) {\n store.update({\n columns: props.columns\n });\n }\n\n if (\n anyChanged(['source', 'value', 'items'], prevProps, props) ||\n (!props.value &&\n !props.items &&\n (props.data !== prevProps.data ||\n (typeof props.source === 'string' && isPureVariable(props.source))))\n ) {\n Table.syncRows(store, props, prevProps) && this.syncSelected();\n } else if (isArrayChildrenModified(prevProps.selected!, props.selected!)) {\n store.updateSelected(props.selected || [], props.valueField);\n this.syncSelected();\n }\n\n this.updateTableInfoLazy();\n }\n\n componentWillUnmount() {\n const {formItem} = this.props;\n\n const parent = this.parentNode;\n parent && parent.removeEventListener('scroll', this.affixDetect);\n window.removeEventListener('resize', this.affixDetect);\n (this.updateTableInfoLazy as any).cancel();\n this.unSensor && this.unSensor();\n\n formItem && isAlive(formItem) && formItem.setSubStore(null);\n }\n\n subFormRef(form: any, x: number, y: number) {\n const {quickEditFormRef} = this.props;\n\n quickEditFormRef && quickEditFormRef(form, x, y);\n this.subForms[`${x}-${y}`] = form;\n form && this.props.store.addForm(form.props.store, y);\n }\n\n handleAction(e: React.UIEvent<any>, action: Action, ctx: object) {\n const {onAction} = this.props;\n\n // todo\n onAction(e, action, ctx);\n }\n\n handleCheck(item: IRow) {\n item.toggle();\n this.syncSelected();\n }\n\n handleCheckAll() {\n const {store} = this.props;\n\n store.toggleAll();\n this.syncSelected();\n }\n\n handleQuickChange(\n item: IRow,\n values: object,\n saveImmediately?: boolean | any,\n savePristine?: boolean,\n resetOnFailed?: boolean\n ) {\n if (!isAlive(item)) {\n return;\n }\n\n const {\n onSave,\n onPristineChange,\n saveImmediately: propsSaveImmediately,\n primaryField\n } = this.props;\n\n item.change(values, savePristine);\n\n // 值发生变化了,需要通过 onSelect 通知到外面,否则会出现数据不同步的问题\n item.modified && this.syncSelected();\n\n if (savePristine) {\n onPristineChange?.(item.data, item.path);\n return;\n } else if (!saveImmediately && !propsSaveImmediately) {\n return;\n }\n\n if (saveImmediately && saveImmediately.api) {\n this.props.onAction(\n null,\n {\n actionType: 'ajax',\n api: saveImmediately.api\n },\n values\n );\n return;\n }\n\n if (!onSave) {\n return;\n }\n\n onSave(\n item.data,\n difference(item.data, item.pristine, ['id', primaryField]),\n item.path,\n undefined,\n item.pristine,\n resetOnFailed\n );\n }\n\n async handleSave() {\n const {store, onSave, primaryField} = this.props;\n\n if (!onSave || !store.modifiedRows.length) {\n return;\n }\n\n // 验证所有表单项,没有错误才继续\n const subForms: Array<any> = [];\n Object.keys(this.subForms).forEach(\n key => this.subForms[key] && subForms.push(this.subForms[key])\n );\n if (subForms.length) {\n const result = await Promise.all(subForms.map(item => item.validate()));\n if (~result.indexOf(false)) {\n return;\n }\n }\n\n const rows = store.modifiedRows.map(item => item.data);\n const rowIndexes = store.modifiedRows.map(item => item.path);\n const diff = store.modifiedRows.map(item =>\n difference(item.data, item.pristine, ['id', primaryField])\n );\n const unModifiedRows = store.rows\n .filter(item => !item.modified)\n .map(item => item.data);\n onSave(\n rows,\n diff,\n rowIndexes,\n unModifiedRows,\n store.modifiedRows.map(item => item.pristine)\n );\n }\n\n handleSaveOrder() {\n const {store, onSaveOrder} = this.props;\n\n if (!onSaveOrder || !store.movedRows.length) {\n return;\n }\n\n onSaveOrder(\n store.movedRows.map(item => item.data),\n store.rows.map(item => item.getDataWithModifiedChilden())\n );\n }\n\n syncSelected() {\n const {store, onSelect} = this.props;\n\n onSelect &&\n onSelect(\n store.selectedRows.map(item => item.data),\n store.unSelectedRows.map(item => item.data)\n );\n }\n\n reset() {\n const {store} = this.props;\n\n store.reset();\n\n const subForms: Array<any> = [];\n Object.keys(this.subForms).forEach(\n key => this.subForms[key] && subForms.push(this.subForms[key])\n );\n subForms.forEach(item => item.clearErrors());\n }\n\n bulkUpdate(value: any, items: Array<object>) {\n const {store, primaryField} = this.props;\n\n if (primaryField && value.ids) {\n const ids = value.ids.split(',');\n const rows = store.rows.filter(item =>\n find(ids, (id: any) => id && id == item.data[primaryField])\n );\n const newValue = {...value, ids: undefined};\n rows.forEach(row => row.change(newValue));\n } else {\n const rows = store.rows.filter(item => ~items.indexOf(item.pristine));\n rows.forEach(row => row.change(value));\n }\n }\n\n getSelected() {\n const {store} = this.props;\n\n return store.selectedRows.map(item => item.data);\n }\n\n affixDetect() {\n if (!this.props.affixHeader || !this.table) {\n return;\n }\n\n const ns = this.props.classPrefix;\n const dom = findDOMNode(this) as HTMLElement;\n const clip = (this.table as HTMLElement).getBoundingClientRect();\n const offsetY =\n this.props.affixOffsetTop ?? this.props.env.affixOffsetTop ?? 0;\n const headingHeight =\n dom.querySelector(`.${ns}Table-heading`)?.getBoundingClientRect()\n .height || 0;\n const headerHeight =\n dom.querySelector(`.${ns}Table-headToolbar`)?.getBoundingClientRect()\n .height || 0;\n\n const affixed =\n clip.top - headerHeight - headingHeight < offsetY &&\n clip.top + clip.height - 40 > offsetY;\n const affixedDom = dom.querySelector(`.${ns}Table-fixedTop`) as HTMLElement;\n\n affixedDom.style.cssText += `top: ${offsetY}px;width: ${\n (this.table.parentNode as HTMLElement).offsetWidth\n }px`;\n affixed\n ? affixedDom.classList.add('in')\n : affixedDom.classList.remove('in');\n // store.markHeaderAffix(clip.top < offsetY && (clip.top + clip.height - 40) > offsetY);\n }\n\n updateTableInfo() {\n if (!this.table) {\n return;\n }\n\n const table = this.table;\n const outter = table.parentNode as HTMLElement;\n const affixHeader = this.props.affixHeader;\n const ns = this.props.classPrefix;\n\n // 完成宽高都没有变化就直接跳过了。\n // if (this.totalWidth === table.scrollWidth && this.totalHeight === table.scrollHeight) {\n // return;\n // }\n\n this.totalWidth = table.scrollWidth;\n this.totalHeight = table.scrollHeight;\n this.outterWidth = outter.offsetWidth;\n this.outterHeight = outter.offsetHeight;\n\n let widths: {\n [propName: string]: number;\n } = (this.widths = {});\n let heights: {\n [propName: string]: number;\n } = (this.heights = {});\n\n heights.header ||\n (heights.header = table\n .querySelector('thead')!\n .getBoundingClientRect().height);\n\n forEach(\n table.querySelectorAll('thead>tr:last-child>th'),\n (item: HTMLElement) => {\n widths[item.getAttribute('data-index') as string] =\n item.getBoundingClientRect().width;\n }\n );\n forEach(\n table.querySelectorAll('tbody>tr>*:last-child'),\n (item: HTMLElement, index: number) =>\n (heights[index] = item.getBoundingClientRect().height)\n );\n\n // 让 react 去更新非常慢,还是手动更新吧。\n const dom = findDOMNode(this) as HTMLElement;\n\n forEach(\n // 折叠 footTable 不需要改变\n dom.querySelectorAll(\n `.${ns}Table-fixedTop table, .${ns}Table-fixedLeft>table, .${ns}Table-fixedRight>table`\n ),\n (table: HTMLTableElement) => {\n let totalWidth = 0;\n forEach(\n table.querySelectorAll('thead>tr:last-child>th'),\n (item: HTMLElement) => {\n const width = widths[item.getAttribute('data-index') as string];\n item.style.cssText += `width: ${width}px; height: ${heights.header}px`;\n totalWidth += width;\n }\n );\n forEach(table.querySelectorAll('colgroup>col'), (item: HTMLElement) => {\n const width = widths[item.getAttribute('data-index') as string];\n item.setAttribute('width', `${width}`);\n });\n forEach(\n table.querySelectorAll('tbody>tr'),\n (item: HTMLElement, index) => {\n item.style.cssText += `height: ${heights[index]}px`;\n }\n );\n\n table.style.cssText += `width: ${totalWidth}px;table-layout: fixed;`;\n }\n );\n\n if (affixHeader) {\n (\n dom.querySelector(\n `.${ns}Table-fixedTop>.${ns}Table-wrapper`\n ) as HTMLElement\n ).style.cssText += `width: ${this.outterWidth}px`;\n }\n\n this.lastScrollLeft = -1;\n this.handleOutterScroll();\n }\n\n handleOutterScroll() {\n const outter = (this.table as HTMLElement).parentNode as HTMLElement;\n const scrollLeft = outter.scrollLeft;\n\n if (scrollLeft === this.lastScrollLeft) {\n return;\n }\n\n this.lastScrollLeft = scrollLeft;\n let leading = scrollLeft === 0;\n let trailing = Math.ceil(scrollLeft) + this.outterWidth >= this.totalWidth;\n // console.log(scrollLeft, store.outterWidth, store.totalWidth, (scrollLeft + store.outterWidth) === store.totalWidth);\n // store.setLeading(leading);\n // store.setTrailing(trailing);\n\n const ns = this.props.classPrefix;\n const dom = findDOMNode(this) as HTMLElement;\n\n const fixedLeft = dom.querySelectorAll(`.${ns}Table-fixedLeft`);\n if (fixedLeft && fixedLeft.length) {\n for (let i = 0, len = fixedLeft.length; i < len; i++) {\n let node = fixedLeft[i];\n leading ? node.classList.remove('in') : node.classList.add('in');\n }\n }\n\n const fixedRight = dom.querySelectorAll(`.${ns}Table-fixedRight`);\n if (fixedRight && fixedRight.length) {\n for (let i = 0, len = fixedRight.length; i < len; i++) {\n let node = fixedRight[i];\n trailing ? node.classList.remove('in') : node.classList.add('in');\n }\n }\n const table = this.affixedTable;\n if (table) {\n table.style.cssText += `transform: translateX(-${scrollLeft}px)`;\n }\n }\n\n tableRef(ref: HTMLTableElement) {\n this.table = ref;\n\n if (ref) {\n this.unSensor = resizeSensor(\n ref.parentNode as HTMLElement,\n this.updateTableInfoLazy\n );\n } else {\n this.unSensor && this.unSensor();\n delete this.unSensor;\n }\n }\n\n dragTipRef(ref: any) {\n if (!this.dragTip && ref) {\n this.initDragging();\n } else if (this.dragTip && !ref) {\n this.destroyDragging();\n }\n\n this.dragTip = ref;\n }\n\n affixedTableRef(ref: HTMLTableElement) {\n this.affixedTable = ref;\n }\n\n initDragging() {\n const store = this.props.store;\n const ns = this.props.classPrefix;\n this.sortable = new Sortable(\n (this.table as HTMLElement).querySelector('tbody') as HTMLElement,\n {\n group: 'table',\n animation: 150,\n handle: `.${ns}Table-dragCell`,\n ghostClass: 'is-dragging',\n onEnd: (e: any) => {\n // 没有移动\n if (e.newIndex === e.oldIndex) {\n return;\n }\n\n const parent = e.to as HTMLElement;\n if (e.oldIndex < parent.childNodes.length - 1) {\n parent.insertBefore(e.item, parent.childNodes[e.oldIndex]);\n } else {\n parent.appendChild(e.item);\n }\n\n store.exchange(e.oldIndex, e.newIndex);\n }\n }\n );\n }\n\n destroyDragging() {\n this.sortable && this.sortable.destroy();\n }\n\n getPopOverContainer() {\n return findDOMNode(this);\n }\n\n handleMouseMove(e: React.MouseEvent<any>) {\n const tr: HTMLElement = (e.target as HTMLElement).closest(\n 'tr[data-index]'\n ) as HTMLElement;\n\n if (!tr) {\n return;\n }\n\n const {store, affixColumns, itemActions} = this.props;\n\n if (\n (affixColumns === false ||\n (store.leftFixedColumns.length === 0 &&\n store.rightFixedColumns.length === 0)) &&\n (!itemActions || !itemActions.filter(item => !item.hiddenOnHover).length)\n ) {\n return;\n }\n\n const index = parseInt(tr.getAttribute('data-index') as string, 10);\n\n if (store.hoverIndex === index) {\n return;\n }\n store.rows.forEach((item, key) => item.setIsHover(index === key));\n }\n\n handleMouseLeave() {\n const store = this.props.store;\n\n if (~store.hoverIndex) {\n store.rows[store.hoverIndex].setIsHover(false);\n }\n }\n\n draggingTr: HTMLTableRowElement;\n originIndex: number;\n draggingSibling: Array<HTMLTableRowElement>;\n\n @autobind\n handleDragStart(e: React.DragEvent) {\n const store = this.props.store;\n const target = e.currentTarget;\n const tr = (this.draggingTr = target.closest('tr')!);\n const id = tr.getAttribute('data-id')!;\n const tbody = tr.parentNode!;\n this.originIndex = Array.prototype.indexOf.call(tbody.childNodes, tr);\n\n tr.classList.add('is-dragging');\n\n e.dataTransfer.effectAllowed = 'move';\n e.dataTransfer.setData('text/plain', id);\n\n e.dataTransfer.setDragImage(tr, 0, 0);\n const item = store.getRowById(id)!;\n store.collapseAllAtDepth(item.depth);\n\n let siblings: Array<IRow> = store.rows;\n if (item.parentId) {\n const parent = store.getRowById(item.parentId)!;\n siblings = parent.children as any;\n }\n siblings = siblings.filter(sibling => sibling !== item);\n\n tbody.addEventListener('dragover', this.handleDragOver);\n tbody.addEventListener('drop', this.handleDrop);\n\n this.draggingSibling = siblings.map(item => {\n let tr: HTMLTableRowElement = tbody.querySelector(\n `tr[data-id=\"${item.id}\"]`\n ) as HTMLTableRowElement;\n\n tr.classList.add('is-drop-allowed');\n\n return tr;\n });\n tr.addEventListener('dragend', this.handleDragEnd);\n }\n\n @autobind\n handleDragOver(e: any) {\n if (!e.target) {\n return;\n }\n e.preventDefault();\n e.dataTransfer!.dropEffect = 'move';\n\n const overTr: HTMLElement = (e.target as HTMLElement).closest('tr')!;\n if (\n !overTr ||\n !~overTr.className.indexOf('is-drop-allowed') ||\n overTr === this.draggingTr\n ) {\n return;\n }\n\n const tbody = overTr.parentElement!;\n const dRect = this.draggingTr.getBoundingClientRect();\n const tRect = overTr.getBoundingClientRect();\n let ratio = dRect.top < tRect.top ? 0.1 : 0.9;\n\n const next = (e.clientY - tRect.top) / (tRect.bottom - tRect.top) > ratio;\n tbody.insertBefore(this.draggingTr, (next && overTr.nextSibling) || overTr);\n }\n\n @autobind\n handleDrop() {\n const store = this.props.store;\n const tr = this.draggingTr;\n const tbody = tr.parentElement!;\n const index = Array.prototype.indexOf.call(tbody.childNodes, tr);\n const item: IRow = store.getRowById(tr.getAttribute('data-id')!) as any;\n\n // destroy\n this.handleDragEnd();\n\n store.exchange(this.originIndex, index, item);\n }\n\n @autobind\n handleDragEnd() {\n const tr = this.draggingTr;\n const tbody = tr.parentElement!;\n const index = Array.prototype.indexOf.call(tbody.childNodes, tr);\n tbody.insertBefore(\n tr,\n tbody.childNodes[\n index < this.originIndex ? this.originIndex + 1 : this.originIndex\n ]\n );\n\n tr.classList.remove('is-dragging');\n tr.removeEventListener('dragend', this.handleDragEnd);\n tbody.removeEventListener('dragover', this.handleDragOver);\n tbody.removeEventListener('drop', this.handleDrop);\n this.draggingSibling.forEach(item =>\n item.classList.remove('is-drop-allowed')\n );\n }\n\n @autobind\n handleImageEnlarge(info: any, target: {rowIndex: number; colIndex: number}) {\n const onImageEnlarge = this.props.onImageEnlarge;\n\n // 如果已经是多张了,直接跳过\n if (Array.isArray(info.list)) {\n return onImageEnlarge && onImageEnlarge(info, target);\n }\n\n // 从列表中收集所有图片,然后作为一个图片集合派送出去。\n const store = this.props.store;\n const column = store.columns[target.colIndex].pristine;\n\n let index = target.rowIndex;\n const list: Array<any> = [];\n store.rows.forEach((row, i) => {\n const src = resolveVariable(column.name, row.data);\n\n if (!src) {\n if (i < target.rowIndex) {\n index--;\n }\n return;\n }\n\n list.push({\n src,\n originalSrc: column.originalSrc\n ? filter(column.originalSrc, row.data)\n : src,\n title: column.enlargeTitle\n ? filter(column.enlargeTitle, row.data)\n : column.title\n ? filter(column.title, row.data)\n : undefined,\n caption: column.enlargeCaption\n ? filter(column.enlargeCaption, row.data)\n : column.caption\n ? filter(column.caption, row.data)\n : undefined\n });\n });\n\n if (list.length > 1) {\n onImageEnlarge &&\n onImageEnlarge(\n {\n ...info,\n list,\n index\n },\n target\n );\n } else {\n onImageEnlarge && onImageEnlarge(info, target);\n }\n }\n\n renderHeading() {\n let {\n title,\n store,\n hideQuickSaveBtn,\n data,\n classnames: cx,\n saveImmediately,\n headingClassName,\n translate: __\n } = this.props;\n\n if (\n title ||\n (!saveImmediately && store.modified && !hideQuickSaveBtn) ||\n store.moved\n ) {\n return (\n <div className={cx('Table-heading', headingClassName)} key=\"heading\">\n {!saveImmediately && store.modified && !hideQuickSaveBtn ? (\n <span>\n {__('Table.modified', {\n modified: store.modified\n })}\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--success m-l-sm')}\n onClick={this.handleSave}\n >\n <Icon icon=\"check\" className=\"icon m-r-xs\" />\n {__('Form.submit')}\n </button>\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--danger m-l-sm')}\n onClick={this.reset}\n >\n <Icon icon=\"close\" className=\"icon m-r-xs\" />\n {__('Table.discard')}\n </button>\n </span>\n ) : store.moved ? (\n <span>\n {__('Table.moved', {\n moved: store.moved\n })}\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--success m-l-sm')}\n onClick={this.handleSaveOrder}\n >\n <Icon icon=\"check\" className=\"icon m-r-xs\" />\n {__('Form.submit')}\n </button>\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--danger m-l-sm')}\n onClick={this.reset}\n >\n <Icon icon=\"close\" className=\"icon m-r-xs\" />\n {__('Table.discard')}\n </button>\n </span>\n ) : title ? (\n filter(title, data)\n ) : (\n ''\n )}\n </div>\n );\n }\n\n return null;\n }\n\n renderHeadCell(column: IColumn, props?: any) {\n const {\n store,\n query,\n onQuery,\n multiple,\n env,\n render,\n classPrefix: ns,\n classnames: cx\n } = this.props;\n\n if (column.type === '__checkme') {\n return (\n <th {...props} className={cx(column.pristine.className)}>\n {store.rows.length && multiple ? (\n <Checkbox\n classPrefix={ns}\n partial={!store.allChecked}\n checked={store.someChecked}\n disabled={store.disabledHeadCheckbox}\n onChange={this.handleCheckAll}\n />\n ) : (\n '\\u00A0'\n )}\n </th>\n );\n } else if (column.type === '__dragme') {\n return <th {...props} className={cx(column.pristine.className)} />;\n } else if (column.type === '__expandme') {\n return (\n <th {...props} className={cx(column.pristine.className)}>\n {(store.footable &&\n (store.footable.expandAll === false || store.footable.accordion)) ||\n (store.expandConfig &&\n (store.expandConfig.expandAll === false ||\n store.expandConfig.accordion)) ? null : (\n <a\n className={cx(\n 'Table-expandBtn',\n store.allExpanded ? 'is-active' : ''\n )}\n // data-tooltip=\"展开/收起全部\"\n // data-position=\"top\"\n onClick={store.toggleExpandAll}\n >\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </a>\n )}\n </th>\n );\n }\n\n let affix = null;\n\n if (column.searchable && column.name) {\n affix = (\n <HeadCellSearchDropDown\n {...this.props}\n onQuery={onQuery}\n name={column.name}\n searchable={column.searchable}\n sortable={column.sortable}\n type={column.type}\n data={query}\n orderBy={store.orderBy}\n orderDir={store.orderDir}\n popOverContainer={this.getPopOverContainer}\n />\n );\n } else if (column.sortable && column.name) {\n affix = (\n <span\n className={cx('TableCell-sortBtn')}\n onClick={() => {\n if (column.name === store.orderBy) {\n if (store.orderDir === 'desc') {\n // 降序之后取消排序\n store.setOrderByInfo('', 'asc');\n } else {\n // 升序之后降序\n store.setOrderByInfo(column.name, 'desc');\n }\n } else {\n store.setOrderByInfo(column.name as string, 'asc');\n }\n\n onQuery &&\n onQuery({\n orderBy: store.orderBy,\n orderDir: store.orderDir\n });\n }}\n >\n <i\n className={cx(\n 'TableCell-sortBtn--down',\n store.orderBy === column.name && store.orderDir === 'desc'\n ? 'is-active'\n : ''\n )}\n >\n <Icon icon=\"sort-desc\" className=\"icon\" />\n </i>\n <i\n className={cx(\n 'TableCell-sortBtn--up',\n store.orderBy === column.name && store.orderDir === 'asc'\n ? 'is-active'\n : ''\n )}\n >\n <Icon icon=\"sort-asc\" className=\"icon\" />\n </i>\n <i\n className={cx(\n 'TableCell-sortBtn--default',\n store.orderBy === column.name ? '' : 'is-active'\n )}\n >\n <Icon icon=\"sort-default\" className=\"icon\" />\n </i>\n </span>\n );\n } else if (column.filterable && column.name) {\n affix = (\n <HeadCellFilterDropDown\n {...this.props}\n onQuery={onQuery}\n name={column.name}\n type={column.type}\n data={query}\n filterable={column.filterable}\n popOverContainer={this.getPopOverContainer}\n />\n );\n }\n\n if (column.pristine.width) {\n props.style = props.style || {};\n props.style.width = column.pristine.width;\n }\n\n return (\n <th\n {...props}\n className={cx(\n props ? (props as any).className : '',\n column.pristine.className,\n {\n 'TableCell--sortable': column.sortable,\n 'TableCell--searchable': column.searchable,\n 'TableCell--filterable': column.filterable,\n 'Table-operationCell': column.type === 'operation'\n }\n )}\n >\n <div className={cx(`${ns}TableCell--title`)}>\n {column.label ? render('tpl', column.label) : null}\n\n {column.remark\n ? render('remark', {\n type: 'remark',\n tooltip: column.remark,\n container:\n env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n })\n : null}\n </div>\n\n {affix}\n </th>\n );\n }\n\n renderCell(\n region: string,\n column: IColumn,\n item: IRow,\n props: any,\n ignoreDrag = false\n ) {\n const {\n render,\n store,\n multiple,\n classPrefix: ns,\n classnames: cx,\n checkOnItemClick,\n popOverContainer,\n canAccessSuperData\n } = this.props;\n\n if (column.name && item.rowSpans[column.name] === 0) {\n return null;\n }\n\n if (column.type === '__checkme') {\n return (\n <td key={props.key} className={cx(column.pristine.className)}>\n <Checkbox\n classPrefix={ns}\n type={multiple ? 'checkbox' : 'radio'}\n checked={item.checked}\n disabled={item.checkdisable}\n onChange={\n checkOnItemClick ? noop : this.handleCheck.bind(this, item)\n }\n />\n </td>\n );\n } else if (column.type === '__dragme') {\n return (\n <td key={props.key} className={cx(column.pristine.className)}>\n {item.draggable ? <Icon icon=\"drag-bar\" className=\"icon\" /> : null}\n </td>\n );\n } else if (column.type === '__expandme') {\n return (\n <td key={props.key} className={cx(column.pristine.className)}>\n {item.depth > 2\n ? Array.from({length: item.depth - 2}).map((_, index) => (\n <i key={index} className={cx('Table-divider-' + (index + 1))} />\n ))\n : null}\n\n {item.expandable ? (\n <a\n className={cx(\n 'Table-expandBtn',\n item.expanded ? 'is-active' : ''\n )}\n // data-tooltip=\"展开/收起\"\n // data-position=\"top\"\n onClick={item.toggleExpanded}\n >\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </a>\n ) : null}\n </td>\n );\n }\n\n let prefix: React.ReactNode = null;\n\n if (\n !ignoreDrag &&\n column.isPrimary &&\n store.isNested &&\n store.draggable &&\n item.draggable\n ) {\n prefix = (\n <a\n draggable\n onDragStart={this.handleDragStart}\n className={cx('Table-dragBtn')}\n >\n <Icon icon=\"drag-bar\" className=\"icon\" />\n </a>\n );\n }\n\n const subProps: any = {\n ...props,\n btnDisabled: store.dragging,\n data: item.locals,\n value: column.name\n ? resolveVariable(\n column.name,\n canAccessSuperData ? item.locals : item.data\n )\n : column.value,\n popOverContainer: popOverContainer || this.getPopOverContainer,\n rowSpan: item.rowSpans[column.name as string],\n quickEditFormRef: this.subFormRef,\n prefix,\n onImageEnlarge: this.handleImageEnlarge,\n canAccessSuperData\n };\n delete subProps.label;\n\n return render(\n region,\n {\n ...column.pristine,\n column: column.pristine,\n type: 'cell'\n },\n subProps\n );\n }\n\n renderAffixHeader(tableClassName: string) {\n const {store, affixHeader, render, classnames: cx} = this.props;\n const hideHeader = store.filteredColumns.every(column => !column.label);\n\n return affixHeader ? (\n <div\n className={cx('Table-fixedTop', {\n 'is-fakeHide': hideHeader\n })}\n >\n {this.renderHeader(false)}\n {this.renderHeading()}\n <div className={cx('Table-fixedLeft')}>\n {store.leftFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.leftFixedColumns,\n true,\n tableClassName\n )\n : null}\n </div>\n <div className={cx('Table-fixedRight')}>\n {store.rightFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.rightFixedColumns,\n true,\n tableClassName\n )\n : null}\n </div>\n <div className={cx('Table-wrapper')}>\n <table ref={this.affixedTableRef} className={tableClassName}>\n <colgroup>\n {store.filteredColumns.map(column => (\n <col key={column.index} data-index={column.index} />\n ))}\n </colgroup>\n <thead>\n {store.columnGroup.length ? (\n <tr>\n {store.columnGroup.map((item, index) => (\n <th\n key={index}\n data-index={item.index}\n colSpan={item.colSpan}\n >\n {item.label ? render('tpl', item.label) : null}\n </th>\n ))}\n </tr>\n ) : null}\n <tr>\n {store.filteredColumns.map(column =>\n this.renderHeadCell(column, {\n 'key': column.index,\n 'data-index': column.index\n })\n )}\n </tr>\n </thead>\n </table>\n </div>\n </div>\n ) : null;\n }\n\n renderFixedColumns(\n rows: Array<any>,\n columns: Array<IColumn>,\n headerOnly: boolean = false,\n tableClassName: string = ''\n ) {\n const {\n placeholder,\n store,\n classnames: cx,\n render,\n data,\n translate,\n locale,\n checkOnItemClick,\n buildItemProps,\n rowClassNameExpr,\n rowClassName\n } = this.props;\n const hideHeader = store.filteredColumns.every(column => !column.label);\n return (\n <table\n className={cx(\n 'Table-table',\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n tableClassName\n )}\n >\n <thead>\n {store.columnGroup.length ? (\n <tr>\n {store.columnGroup.map((item, index) => {\n const renderColumns = columns.filter(a => ~item.has.indexOf(a));\n\n return renderColumns.length ? (\n <th\n key={index}\n data-index={item.index}\n colSpan={renderColumns.length}\n >\n {'\\u00A0'}\n </th>\n ) : null;\n })}\n </tr>\n ) : null}\n <tr className={hideHeader ? 'fake-hide' : ''}>\n {columns.map(column =>\n this.renderHeadCell(column, {\n 'key': column.index,\n 'data-index': column.index\n })\n )}\n </tr>\n </thead>\n\n {headerOnly ? null : !rows.length ? (\n <tbody>\n <tr className={cx('Table-placeholder')}>\n <td colSpan={columns.length}>\n {render(\n 'placeholder',\n translate(placeholder || 'placeholder.noData')\n )}\n </td>\n </tr>\n </tbody>\n ) : (\n <TableBody\n tableClassName={cx(\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n tableClassName\n )}\n classnames={cx}\n render={render}\n renderCell={this.renderCell}\n onCheck={this.handleCheck}\n onQuickChange={store.dragging ? undefined : this.handleQuickChange}\n footable={store.footable}\n ignoreFootableContent\n footableColumns={store.footableColumns}\n checkOnItemClick={checkOnItemClick}\n buildItemProps={buildItemProps}\n onAction={this.handleAction}\n rowClassNameExpr={rowClassNameExpr}\n rowClassName={rowClassName}\n columns={columns}\n rows={rows}\n locale={locale}\n translate={translate}\n rowsProps={{\n regionPrefix: 'fixed/',\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => this.renderCell(region, column, item, props, true)\n }}\n />\n )}\n </table>\n );\n }\n\n renderToolbar(toolbar: SchemaNode) {\n const type = (toolbar as Schema).type || (toolbar as string);\n\n if (type === 'columns-toggler') {\n this.renderedToolbars.push(type);\n return this.renderColumnsToggler(toolbar as any);\n } else if (type === 'drag-toggler') {\n this.renderedToolbars.push(type);\n return this.renderDragToggler();\n } else if (type === 'export-excel') {\n this.renderedToolbars.push(type);\n return this.renderExportExcel(toolbar);\n }\n\n return void 0;\n }\n\n renderColumnsToggler(config?: any) {\n const {\n className,\n store,\n classPrefix: ns,\n classnames: cx,\n ...rest\n } = this.props;\n const __ = rest.translate;\n const env = rest.env;\n\n const render = this.props.render;\n\n if (!store.columnsTogglable) {\n return null;\n }\n\n return (\n <DropDownButton\n {...rest}\n tooltip={__('Table.columnsVisibility')}\n tooltipContainer={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n align={config ? config.align : 'left'}\n isActived={store.hasColumnHidden()}\n classnames={cx}\n classPrefix={ns}\n key=\"columns-toggable\"\n size=\"sm\"\n label={<Icon icon=\"columns\" className=\"icon m-r-none\" />}\n >\n {store.toggableColumns.map(column => (\n <li\n className={cx('DropDown-menuItem')}\n key={column.index}\n onClick={column.toggleToggle}\n >\n <Checkbox size=\"sm\" classPrefix={ns} checked={column.toggled}>\n {column.label ? render('tpl', column.label) : null}\n </Checkbox>\n </li>\n ))}\n </DropDownButton>\n );\n }\n\n renderDragToggler() {\n const {store, env, draggable, classPrefix: ns, translate: __} = this.props;\n\n if (!draggable || store.isNested) {\n return null;\n }\n\n return (\n <Button\n disabled={!!store.modified}\n classPrefix={ns}\n key=\"dragging-toggle\"\n tooltip={__('Table.startSort')}\n tooltipContainer={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n size=\"sm\"\n active={store.dragging}\n onClick={(e: React.MouseEvent<any>) => {\n e.preventDefault();\n store.toggleDragging();\n store.dragging && store.clear();\n }}\n iconOnly\n >\n <Icon icon=\"exchange\" className=\"icon\" />\n </Button>\n );\n }\n\n renderExportExcel(toolbar: SchemaNode) {\n const {\n store,\n env,\n classPrefix: ns,\n classnames: cx,\n translate: __,\n columns,\n data\n } = this.props;\n\n if (!columns) {\n return null;\n }\n\n return (\n <Button\n classPrefix={ns}\n onClick={() => {\n import('exceljs').then(async (ExcelJS: any) => {\n let rows = [];\n let tmpStore;\n let filename = 'data';\n // 支持配置 api 远程获取\n if (typeof toolbar === 'object' && (toolbar as Schema).api) {\n const res = await env.fetcher((toolbar as Schema).api, data);\n if (!res.data) {\n env.notify('warning', __('placeholder.noData'));\n return;\n }\n if (Array.isArray(res.data)) {\n rows = res.data;\n } else {\n rows = res.data.rows || res.data.items;\n }\n // 因为很多方法是 store 里的,所以需要构建 store 来处理\n tmpStore = TableStore.create(getSnapshot(store));\n tmpStore.initRows(rows);\n rows = tmpStore.rows;\n } else {\n rows = store.rows;\n }\n\n if (typeof toolbar === 'object' && (toolbar as Schema).filename) {\n filename = filter((toolbar as Schema).filename, data, '| raw');\n }\n\n if (rows.length === 0) {\n env.notify('warning', __('placeholder.noData'));\n return;\n }\n\n const workbook = new ExcelJS.Workbook();\n const worksheet = workbook.addWorksheet('sheet', {\n properties: {defaultColWidth: 15}\n });\n worksheet.views = [{state: 'frozen', xSplit: 0, ySplit: 1}];\n\n const firstRowLabels = columns.map(column => {\n return column.label;\n });\n const firstRow = worksheet.getRow(1);\n firstRow.values = firstRowLabels;\n worksheet.autoFilter = {\n from: {\n row: 1,\n column: 1\n },\n to: {\n row: 1,\n column: firstRowLabels.length\n }\n };\n // 数据从第二行开始\n let rowIndex = 1;\n for (const row of rows) {\n rowIndex += 1;\n const sheetRow = worksheet.getRow(rowIndex);\n let columIndex = 0;\n const cols = columns as any[]; // 为啥 ts 4.4 得这么做?\n for (const column of cols) {\n columIndex += 1;\n const name = column.name!;\n const value = getVariable(row.data, name);\n if (\n typeof value === 'undefined' &&\n !(column as TplSchema).tpl\n ) {\n continue;\n }\n // 处理合并单元格\n if (name in row.rowSpans) {\n if (row.rowSpans[name] === 0) {\n continue;\n } else {\n // start row, start column, end row, end column\n worksheet.mergeCells(\n rowIndex,\n columIndex,\n rowIndex + row.rowSpans[name] - 1,\n columIndex\n );\n }\n }\n\n const type = (column as BaseSchema).type || 'plain';\n if (type === 'image') {\n const imageData = await toDataURL(value);\n const imageDimensions = await getImageDimensions(imageData);\n let imageWidth = imageDimensions.width;\n let imageHeight = imageDimensions.height;\n // 限制一下图片高宽\n const imageMaxSize = 100;\n if (imageWidth > imageHeight) {\n if (imageWidth > imageMaxSize) {\n imageHeight = (imageMaxSize * imageHeight) / imageWidth;\n imageWidth = imageMaxSize;\n }\n } else {\n if (imageHeight > imageMaxSize) {\n imageWidth = (imageMaxSize * imageWidth) / imageHeight;\n imageHeight = imageMaxSize;\n }\n }\n const imageMatch = imageData.match(/data:image\\/(.*);/);\n let imageExt = 'png';\n if (imageMatch) {\n imageExt = imageMatch[1];\n }\n // 目前 excel 只支持这些格式,所以其它格式直接输出 url\n if (\n imageExt != 'png' &&\n imageExt != 'jpeg' &&\n imageExt != 'gif'\n ) {\n sheetRow.getCell(columIndex).value = value;\n continue;\n }\n const imageId = workbook.addImage({\n base64: imageData,\n extension: imageExt\n });\n const linkURL = getAbsoluteUrl(value);\n worksheet.addImage(imageId, {\n // 这里坐标位置是从 0 开始的,所以要减一\n tl: {col: columIndex - 1, row: rowIndex - 1},\n ext: {\n width: imageWidth,\n height: imageHeight\n },\n hyperlinks: {\n tooltip: linkURL\n }\n });\n } else if (type == 'link') {\n const linkURL = getAbsoluteUrl(value);\n sheetRow.getCell(columIndex).value = {\n text: value,\n hyperlink: linkURL\n };\n } else if (type === 'mapping') {\n // 拷贝自 Mapping.tsx\n const map = (column as MappingSchema).map;\n if (\n typeof value !== 'undefined' &&\n map &&\n (map[value] ?? map['*'])\n ) {\n const viewValue =\n map[value] ??\n (value === true && map['1']\n ? map['1']\n : value === false && map['0']\n ? map['0']\n : map['*']); // 兼容平台旧用法:即 value 为 true 时映射 1 ,为 false 时映射 0\n sheetRow.getCell(columIndex).value = viewValue;\n } else {\n sheetRow.getCell(columIndex).value = value;\n }\n } else {\n if ((column as TplSchema).tpl) {\n sheetRow.getCell(columIndex).value = removeHTMLTag(\n filter((column as TplSchema).tpl, row.data)\n );\n } else {\n sheetRow.getCell(columIndex).value = value;\n }\n }\n }\n }\n\n const buffer = await workbook.xlsx.writeBuffer();\n\n if (buffer) {\n var blob = new Blob([buffer], {\n type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\n });\n saveAs(blob, filename + '.xlsx');\n }\n });\n }}\n size=\"sm\"\n >\n {(toolbar as Schema).label || __('CRUD.exportExcel')}\n </Button>\n );\n }\n\n renderActions(region: string) {\n let {actions, render, store, classnames: cx, data} = this.props;\n\n actions = Array.isArray(actions) ? actions.concat() : [];\n\n if (\n store.toggable &&\n region === 'header' &&\n !~this.renderedToolbars.indexOf('columns-toggler')\n ) {\n actions.push({\n type: 'button',\n children: this.renderColumnsToggler()\n });\n }\n\n if (\n store.draggable &&\n !store.isNested &&\n region === 'header' &&\n store.rows.length > 1 &&\n !~this.renderedToolbars.indexOf('drag-toggler')\n ) {\n actions.push({\n type: 'button',\n children: this.renderDragToggler()\n });\n }\n\n return Array.isArray(actions) && actions.length ? (\n <div className={cx('Table-actions')}>\n {actions.map((action, key) =>\n render(\n `action/${key}`,\n {\n type: 'button',\n ...(action as any)\n },\n {\n onAction: this.handleAction,\n key,\n btnDisabled: store.dragging,\n data: store.getData(data)\n }\n )\n )}\n </div>\n ) : null;\n }\n\n renderHeader(editable?: boolean) {\n const {\n header,\n headerClassName,\n toolbarClassName,\n headerToolbarClassName,\n headerToolbarRender,\n render,\n showHeader,\n store,\n classnames: cx,\n data,\n translate: __\n } = this.props;\n\n if (showHeader === false) {\n return null;\n }\n\n const otherProps: any = {};\n // editable === false && (otherProps.$$editable = false);\n\n const child = headerToolbarRender\n ? headerToolbarRender(\n {\n ...this.props,\n selectedItems: store.selectedRows.map(item => item.data),\n items: store.rows.map(item => item.data),\n unSelectedItems: store.unSelectedRows.map(item => item.data),\n ...otherProps\n },\n this.renderToolbar\n )\n : null;\n const actions = this.renderActions('header');\n\n const toolbarNode =\n actions || child || store.dragging ? (\n <div\n className={cx(\n 'Table-toolbar Table-headToolbar',\n toolbarClassName,\n headerToolbarClassName\n )}\n key=\"header-toolbar\"\n >\n {actions}\n {child}\n {store.dragging ? (\n <div className={cx('Table-dragTip')} ref={this.dragTipRef}>\n {__('Table.dragTip')}\n </div>\n ) : null}\n </div>\n ) : null;\n const headerNode =\n header && (!Array.isArray(header) || header.length) ? (\n <div className={cx('Table-header', headerClassName)} key=\"header\">\n {render('header', header, {\n ...(editable === false ? otherProps : null),\n data: store.getData(data)\n })}\n </div>\n ) : null;\n\n return headerNode && toolbarNode\n ? [headerNode, toolbarNode]\n : headerNode || toolbarNode || null;\n }\n\n renderFooter() {\n const {\n footer,\n toolbarClassName,\n footerToolbarClassName,\n footerClassName,\n footerToolbarRender,\n render,\n showFooter,\n store,\n data,\n classnames: cx\n } = this.props;\n\n if (showFooter === false) {\n return null;\n }\n\n const child = footerToolbarRender\n ? footerToolbarRender(\n {\n ...this.props,\n selectedItems: store.selectedRows.map(item => item.data),\n items: store.rows.map(item => item.data)\n },\n this.renderToolbar\n )\n : null;\n const actions = this.renderActions('footer');\n\n const toolbarNode =\n actions || child ? (\n <div\n className={cx(\n 'Table-toolbar Table-footToolbar',\n toolbarClassName,\n footerToolbarClassName\n )}\n key=\"footer-toolbar\"\n >\n {actions}\n {child}\n </div>\n ) : null;\n const footerNode =\n footer && (!Array.isArray(footer) || footer.length) ? (\n <div className={cx('Table-footer', footerClassName)} key=\"footer\">\n {render('footer', footer, {\n data: store.getData(data)\n })}\n </div>\n ) : null;\n return footerNode && toolbarNode\n ? [toolbarNode, footerNode]\n : footerNode || toolbarNode || null;\n }\n\n renderItemActions() {\n const {itemActions, render, store, classnames: cx} = this.props;\n const finalActions = Array.isArray(itemActions)\n ? itemActions.filter(action => !action.hiddenOnHover)\n : [];\n\n if (!finalActions.length) {\n return null;\n }\n const rowIndex = store.hoverIndex;\n const heights = this.heights;\n let height = 40;\n let top = 0;\n\n if (heights && heights[rowIndex]) {\n height = heights[rowIndex];\n top += heights.header;\n for (let i = rowIndex - 1; i >= 0; i--) {\n top += heights[i];\n }\n }\n\n return (\n <div\n className={cx('Table-itemActions-wrap')}\n style={{\n top,\n height\n }}\n >\n <div className={cx('Table-itemActions')}>\n {finalActions.map((action, index) =>\n render(\n `itemAction/${index}`,\n {\n ...(action as any),\n isMenuItem: true\n },\n {\n key: index,\n item: store.rows[rowIndex],\n data: store.rows[rowIndex].locals,\n rowIndex\n }\n )\n )}\n </div>\n </div>\n );\n }\n\n renderTableContent() {\n const {\n classnames: cx,\n tableClassName,\n store,\n placeholder,\n render,\n checkOnItemClick,\n buildItemProps,\n rowClassNameExpr,\n rowClassName,\n prefixRow,\n locale,\n affixRow,\n translate\n } = this.props;\n\n // 理论上来说 store.rows 应该也行啊\n // 不过目前看来只有这样写它才会重新更新视图\n store.rows.length;\n\n return (\n <TableContent\n tableClassName={cx(\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n tableClassName\n )}\n classnames={cx}\n columns={store.filteredColumns}\n columnsGroup={store.columnGroup}\n rows={store.rows}\n placeholder={placeholder}\n render={render}\n onMouseMove={this.handleMouseMove}\n onScroll={this.handleOutterScroll}\n tableRef={this.tableRef}\n renderHeadCell={this.renderHeadCell}\n renderCell={this.renderCell}\n onCheck={this.handleCheck}\n onQuickChange={store.dragging ? undefined : this.handleQuickChange}\n footable={store.footable}\n footableColumns={store.footableColumns}\n checkOnItemClick={checkOnItemClick}\n buildItemProps={buildItemProps}\n onAction={this.handleAction}\n rowClassNameExpr={rowClassNameExpr}\n rowClassName={rowClassName}\n data={store.data}\n prefixRow={prefixRow}\n affixRow={affixRow}\n locale={locale}\n translate={translate}\n />\n );\n }\n\n render() {\n const {className, store, classnames: cx, affixColumns} = this.props;\n\n this.renderedToolbars = []; // 用来记录哪些 toolbar 已经渲染了,已经渲染了就不重复渲染了。\n const heading = this.renderHeading();\n const header = this.renderHeader();\n const footer = this.renderFooter();\n const tableClassName = cx(\n 'Table-table',\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n this.props.tableClassName\n );\n\n return (\n <div\n className={cx('Table', className, {\n 'Table--unsaved': !!store.modified || !!store.moved\n })}\n >\n {header}\n {heading}\n <div\n className={cx('Table-contentWrap')}\n onMouseLeave={this.handleMouseLeave}\n >\n <div\n className={cx('Table-fixedLeft')}\n onMouseMove={this.handleMouseMove}\n >\n {affixColumns !== false && store.leftFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.leftFixedColumns,\n false,\n tableClassName\n )\n : null}\n </div>\n <div\n className={cx('Table-fixedRight')}\n onMouseMove={this.handleMouseMove}\n >\n {affixColumns !== false && store.rightFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.rightFixedColumns,\n false,\n tableClassName\n )\n : null}\n </div>\n {this.renderTableContent()}\n {~store.hoverIndex ? this.renderItemActions() : null}\n </div>\n {this.renderAffixHeader(tableClassName)}\n {footer}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'table',\n storeType: TableStore.name,\n name: 'table'\n})\nexport class TableRenderer extends Table {}\n\nexport {TableCell};\n"
11
+ "import React from 'react';\nimport {findDOMNode} from 'react-dom';\nimport {Renderer, RendererProps} from '../../factory';\nimport {SchemaNode, Action, Schema} from '../../types';\nimport forEach from 'lodash/forEach';\nimport {filter} from '../../utils/tpl';\nimport DropDownButton from '../DropDownButton';\nimport Checkbox from '../../components/Checkbox';\nimport Button from '../../components/Button';\nimport {TableStore, ITableStore, IColumn, IRow} from '../../store/table';\nimport {\n anyChanged,\n getScrollParent,\n difference,\n noop,\n autobind,\n isArrayChildrenModified,\n getVariable,\n removeHTMLTag\n} from '../../utils/helper';\nimport {\n isPureVariable,\n resolveVariable,\n resolveVariableAndFilter\n} from '../../utils/tpl-builtin';\nimport debounce from 'lodash/debounce';\nimport Sortable from 'sortablejs';\nimport {resizeSensor} from '../../utils/resize-sensor';\nimport find from 'lodash/find';\nimport {Icon} from '../../components/icons';\nimport {TableCell} from './TableCell';\nimport {TableRow} from './TableRow';\nimport {HeadCellFilterDropDown} from './HeadCellFilterDropdown';\nimport {HeadCellSearchDropDown} from './HeadCellSearchDropdown';\nimport {TableContent} from './TableContent';\nimport {\n BaseSchema,\n SchemaClassName,\n SchemaObject,\n SchemaTokenizeableString,\n SchemaType\n} from '../../Schema';\nimport {SchemaPopOver} from '../PopOver';\nimport {SchemaQuickEdit} from '../QuickEdit';\nimport {SchemaCopyable} from '../Copyable';\nimport {SchemaRemark} from '../Remark';\nimport {toDataURL, getImageDimensions} from '../../utils/image';\nimport {TableBody} from './TableBody';\nimport {TplSchema} from '../Tpl';\nimport {MappingSchema} from '../Mapping';\nimport {isAlive, getSnapshot} from 'mobx-state-tree';\n\n/**\n * 表格列,不指定类型时默认为文本类型。\n */\nexport type TableColumnObject = {\n /**\n * 列标题\n */\n label: string;\n\n /**\n * 配置是否固定当前列\n */\n fixed?: 'left' | 'right' | 'none';\n\n /**\n * 绑定字段名\n */\n name?: string;\n\n /**\n * 配置查看详情功能\n */\n popOver?: SchemaPopOver;\n\n /**\n * 配置快速编辑功能\n */\n quickEdit?: SchemaQuickEdit;\n\n /**\n * 作为表单项时,可以单独配置编辑时的快速编辑面板。\n */\n quickEditOnUpdate?: SchemaQuickEdit;\n\n /**\n * 配置点击复制功能\n */\n copyable?: SchemaCopyable;\n\n /**\n * 配置是否可以排序\n */\n sortable?: boolean;\n\n /**\n * 是否可快速搜索\n */\n searchable?: boolean;\n\n /**\n * 配置是否默认展示\n */\n toggled?: boolean;\n\n /**\n * 列宽度\n */\n width?: number | string;\n\n /**\n * todo\n */\n filterable?:\n | boolean\n | {\n source?: string;\n options?: Array<any>;\n };\n\n /**\n * 结合表格的 footable 一起使用。\n * 填写 *、xs、sm、md、lg指定 footable 的触发条件,可以填写多个用空格隔开\n */\n breakpoint?: '*' | 'xs' | 'sm' | 'md' | 'lg';\n\n /**\n * 提示信息\n */\n remark?: SchemaRemark;\n};\n\nexport type TableColumnWithType = SchemaObject & TableColumnObject;\nexport type TableColumn = TableColumnWithType | TableColumnObject;\n\n/**\n * Table 表格渲染器。\n * 文档:https://baidu.gitee.io/amis/docs/components/table\n */\nexport interface TableSchema extends BaseSchema {\n /**\n * 指定为表格渲染器。\n */\n type: 'table' | 'static-table';\n\n /**\n * 是否固定表头\n */\n affixHeader?: boolean;\n\n /**\n * 表格的列信息\n */\n columns?: Array<TableColumn>;\n\n /**\n * 展示列显示开关,自动即:列数量大于或等于5个时自动开启\n */\n columnsTogglable?: boolean | 'auto';\n\n /**\n * 是否开启底部展示功能,适合移动端展示\n */\n footable?:\n | boolean\n | {\n expand?: 'first' | 'all' | 'none';\n\n /**\n * 是否为手风琴模式\n */\n accordion?: boolean;\n };\n\n /**\n * 底部外层 CSS 类名\n */\n footerClassName?: SchemaClassName;\n\n /**\n * 顶部外层 CSS 类名\n */\n headerClassName?: SchemaClassName;\n\n /**\n * 占位符\n */\n placeholder?: string;\n\n /**\n * 是否显示底部\n */\n showFooter?: boolean;\n\n /**\n * 是否显示头部\n */\n showHeader?: boolean;\n\n /**\n * 数据源:绑定当前环境变量\n */\n source?: SchemaTokenizeableString;\n\n /**\n * 表格 CSS 类名\n */\n tableClassName?: SchemaClassName;\n\n /**\n * 标题\n */\n title?: string;\n\n /**\n * 工具栏 CSS 类名\n */\n toolbarClassName?: SchemaClassName;\n\n /**\n * 合并单元格配置,配置数字表示从左到右的多少列自动合并单元格。\n */\n combineNum?: number;\n\n /**\n * 合并单元格配置,配置从第几列开始合并。\n */\n combineFromIndex?: number;\n\n /**\n * 顶部总结行\n */\n prefixRow?: Array<SchemaObject>;\n\n /**\n * 底部总结行\n */\n affixRow?: Array<SchemaObject>;\n}\n\nexport interface TableProps extends RendererProps {\n title?: string; // 标题\n header?: SchemaNode;\n footer?: SchemaNode;\n actions?: Action[];\n className?: string;\n headerClassName?: string;\n footerClassName?: string;\n store: ITableStore;\n columns?: Array<any>;\n headingClassName?: string;\n toolbarClassName?: string;\n headerToolbarClassName?: string;\n footerToolbarClassName?: string;\n tableClassName?: string;\n source?: string;\n selectable?: boolean;\n selected?: Array<any>;\n maxKeepItemSelectionLength?: number;\n valueField?: string;\n draggable?: boolean;\n columnsTogglable?: boolean | 'auto';\n affixHeader?: boolean;\n affixColumns?: boolean;\n combineNum?: number | string;\n combineFromIndex?: number;\n footable?:\n | boolean\n | {\n expand?: 'first' | 'all' | 'none';\n expandAll?: boolean;\n accordion?: boolean;\n };\n expandConfig?: {\n expand?: 'first' | 'all' | 'none';\n expandAll?: boolean;\n accordion?: boolean;\n };\n itemCheckableOn?: string;\n itemDraggableOn?: string;\n itemActions?: Array<Action>;\n onSelect: (\n selectedItems: Array<object>,\n unSelectedItems: Array<object>\n ) => void;\n onPristineChange?: (data: object, rowIndexe: string) => void;\n onSave?: (\n items: Array<object> | object,\n diff: Array<object> | object,\n rowIndexes: Array<string> | string,\n unModifiedItems?: Array<object>,\n rowOrigins?: Array<object> | object,\n resetOnFailed?: boolean\n ) => void;\n onSaveOrder?: (moved: Array<object>, items: Array<object>) => void;\n onQuery: (values: object) => void;\n onImageEnlarge?: (data: any, target: any) => void;\n buildItemProps?: (item: any, index: number) => any;\n checkOnItemClick?: boolean;\n hideCheckToggler?: boolean;\n rowClassName?: string;\n rowClassNameExpr?: string;\n popOverContainer?: any;\n canAccessSuperData?: boolean;\n reUseRow?: boolean;\n}\n\n/**\n * 将 url 转成绝对地址\n */\nconst getAbsoluteUrl = (function () {\n let link: HTMLAnchorElement;\n return function (url: string) {\n if (!link) link = document.createElement('a');\n link.href = url;\n return link.href;\n };\n})();\n\nexport default class Table extends React.Component<TableProps, object> {\n static propsList: Array<string> = [\n 'header',\n 'headerToolbarRender',\n 'footer',\n 'footerToolbarRender',\n 'footable',\n 'expandConfig',\n 'placeholder',\n 'tableClassName',\n 'headingClassName',\n 'source',\n 'selectable',\n 'columnsTogglable',\n 'affixHeader',\n 'affixColumns',\n 'headerClassName',\n 'footerClassName',\n 'selected',\n 'multiple',\n 'primaryField',\n 'hideQuickSaveBtn',\n 'itemCheckableOn',\n 'itemDraggableOn',\n 'checkOnItemClick',\n 'hideCheckToggler',\n 'itemActions',\n 'combineNum',\n 'combineFromIndex',\n 'items',\n 'columns',\n 'valueField',\n 'saveImmediately',\n 'rowClassName',\n 'rowClassNameExpr',\n 'popOverContainer',\n 'headerToolbarClassName',\n 'toolbarClassName',\n 'footerToolbarClassName'\n ];\n static defaultProps: Partial<TableProps> = {\n className: '',\n placeholder: 'placeholder.noData',\n tableClassName: '',\n source: '$items',\n selectable: false,\n columnsTogglable: 'auto',\n affixHeader: true,\n headerClassName: '',\n footerClassName: '',\n toolbarClassName: '',\n headerToolbarClassName: '',\n footerToolbarClassName: '',\n primaryField: 'id',\n itemCheckableOn: '',\n itemDraggableOn: '',\n hideCheckToggler: false,\n canAccessSuperData: false\n };\n\n table?: HTMLTableElement;\n sortable?: Sortable;\n dragTip?: HTMLElement;\n affixedTable?: HTMLTableElement;\n parentNode?: HTMLElement | Window;\n lastScrollLeft: number = -1;\n totalWidth: number = 0;\n totalHeight: number = 0;\n outterWidth: number = 0;\n outterHeight: number = 0;\n unSensor?: Function;\n updateTableInfoLazy: () => void;\n widths: {\n [propName: string]: number;\n } = {};\n heights: {\n [propName: string]: number;\n } = {};\n renderedToolbars: Array<string> = [];\n subForms: any = {};\n\n constructor(props: TableProps) {\n super(props);\n\n this.handleOutterScroll = this.handleOutterScroll.bind(this);\n this.affixDetect = this.affixDetect.bind(this);\n this.updateTableInfoLazy = debounce(this.updateTableInfo.bind(this), 250, {\n trailing: true,\n leading: true\n });\n this.tableRef = this.tableRef.bind(this);\n this.affixedTableRef = this.affixedTableRef.bind(this);\n this.handleAction = this.handleAction.bind(this);\n this.handleCheck = this.handleCheck.bind(this);\n this.handleCheckAll = this.handleCheckAll.bind(this);\n this.handleQuickChange = this.handleQuickChange.bind(this);\n this.handleSave = this.handleSave.bind(this);\n this.handleSaveOrder = this.handleSaveOrder.bind(this);\n this.reset = this.reset.bind(this);\n this.dragTipRef = this.dragTipRef.bind(this);\n this.getPopOverContainer = this.getPopOverContainer.bind(this);\n this.renderCell = this.renderCell.bind(this);\n this.renderHeadCell = this.renderHeadCell.bind(this);\n this.renderToolbar = this.renderToolbar.bind(this);\n this.handleMouseMove = this.handleMouseMove.bind(this);\n this.handleMouseLeave = this.handleMouseLeave.bind(this);\n this.subFormRef = this.subFormRef.bind(this);\n\n const {\n store,\n columns,\n selectable,\n columnsTogglable,\n draggable,\n orderBy,\n orderDir,\n multiple,\n footable,\n primaryField,\n itemCheckableOn,\n itemDraggableOn,\n hideCheckToggler,\n combineFromIndex,\n expandConfig,\n formItem,\n keepItemSelectionOnPageChange,\n maxKeepItemSelectionLength\n } = props;\n\n let combineNum = props.combineNum;\n if (typeof combineNum === 'string') {\n combineNum = parseInt(\n resolveVariableAndFilter(combineNum, props.data, '| raw'),\n 10\n );\n }\n\n store.update({\n selectable,\n draggable,\n columns,\n columnsTogglable,\n orderBy,\n orderDir,\n multiple,\n footable,\n expandConfig,\n primaryField,\n itemCheckableOn,\n itemDraggableOn,\n hideCheckToggler,\n combineNum,\n combineFromIndex,\n keepItemSelectionOnPageChange,\n maxKeepItemSelectionLength\n });\n\n formItem && isAlive(formItem) && formItem.setSubStore(store);\n Table.syncRows(store, this.props, undefined) && this.syncSelected();\n }\n\n static syncRows(\n store: ITableStore,\n props: TableProps,\n prevProps?: TableProps\n ) {\n const source = props.source;\n const value = props.value || props.items;\n let rows: Array<object> = [];\n let updateRows = false;\n\n if (\n Array.isArray(value) &&\n (!prevProps || (prevProps.value || prevProps.items) !== value)\n ) {\n updateRows = true;\n rows = value;\n } else if (typeof source === 'string') {\n const resolved = resolveVariableAndFilter(source, props.data, '| raw');\n const prev = prevProps\n ? resolveVariableAndFilter(source, prevProps.data, '| raw')\n : null;\n\n if (prev && prev === resolved) {\n updateRows = false;\n } else if (Array.isArray(resolved)) {\n updateRows = true;\n rows = resolved;\n }\n }\n\n updateRows && store.initRows(rows, props.getEntryId, props.reUseRow);\n typeof props.selected !== 'undefined' &&\n store.updateSelected(props.selected, props.valueField);\n return updateRows;\n }\n\n componentDidMount() {\n let parent: HTMLElement | Window | null = getScrollParent(\n findDOMNode(this) as HTMLElement\n );\n\n if (!parent || parent === document.body) {\n parent = window;\n }\n\n this.parentNode = parent;\n this.updateTableInfo();\n\n const dom = findDOMNode(this) as HTMLElement;\n if (dom.closest('.modal-body')) {\n return;\n }\n\n this.affixDetect();\n parent.addEventListener('scroll', this.affixDetect);\n window.addEventListener('resize', this.affixDetect);\n }\n\n componentDidUpdate(prevProps: TableProps) {\n const props = this.props;\n const store = props.store;\n\n if (\n anyChanged(\n [\n 'selectable',\n 'columnsTogglable',\n 'draggable',\n 'orderBy',\n 'orderDir',\n 'multiple',\n 'footable',\n 'primaryField',\n 'itemCheckableOn',\n 'itemDraggableOn',\n 'hideCheckToggler',\n 'combineNum',\n 'combineFromIndex',\n 'expandConfig'\n ],\n prevProps,\n props\n )\n ) {\n let combineNum = props.combineNum;\n if (typeof combineNum === 'string') {\n combineNum = parseInt(\n resolveVariableAndFilter(combineNum, props.data, '| raw'),\n 10\n );\n }\n store.update({\n selectable: props.selectable,\n columnsTogglable: props.columnsTogglable,\n draggable: props.draggable,\n orderBy: props.orderBy,\n orderDir: props.orderDir,\n multiple: props.multiple,\n primaryField: props.primaryField,\n footable: props.footable,\n itemCheckableOn: props.itemCheckableOn,\n itemDraggableOn: props.itemDraggableOn,\n hideCheckToggler: props.hideCheckToggler,\n combineNum: combineNum,\n combineFromIndex: props.combineFromIndex,\n expandConfig: props.expandConfig\n });\n }\n\n if (prevProps.columns !== props.columns) {\n store.update({\n columns: props.columns\n });\n }\n\n if (\n anyChanged(['source', 'value', 'items'], prevProps, props) ||\n (!props.value &&\n !props.items &&\n (props.data !== prevProps.data ||\n (typeof props.source === 'string' && isPureVariable(props.source))))\n ) {\n Table.syncRows(store, props, prevProps) && this.syncSelected();\n } else if (isArrayChildrenModified(prevProps.selected!, props.selected!)) {\n store.updateSelected(props.selected || [], props.valueField);\n this.syncSelected();\n }\n\n this.updateTableInfoLazy();\n }\n\n componentWillUnmount() {\n const {formItem} = this.props;\n\n const parent = this.parentNode;\n parent && parent.removeEventListener('scroll', this.affixDetect);\n window.removeEventListener('resize', this.affixDetect);\n (this.updateTableInfoLazy as any).cancel();\n this.unSensor && this.unSensor();\n\n formItem && isAlive(formItem) && formItem.setSubStore(null);\n }\n\n subFormRef(form: any, x: number, y: number) {\n const {quickEditFormRef} = this.props;\n\n quickEditFormRef && quickEditFormRef(form, x, y);\n this.subForms[`${x}-${y}`] = form;\n form && this.props.store.addForm(form.props.store, y);\n }\n\n handleAction(e: React.UIEvent<any>, action: Action, ctx: object) {\n const {onAction} = this.props;\n\n // todo\n onAction(e, action, ctx);\n }\n\n handleCheck(item: IRow) {\n item.toggle();\n this.syncSelected();\n }\n\n handleCheckAll() {\n const {store} = this.props;\n\n store.toggleAll();\n this.syncSelected();\n }\n\n handleQuickChange(\n item: IRow,\n values: object,\n saveImmediately?: boolean | any,\n savePristine?: boolean,\n resetOnFailed?: boolean\n ) {\n if (!isAlive(item)) {\n return;\n }\n\n const {\n onSave,\n onPristineChange,\n saveImmediately: propsSaveImmediately,\n primaryField\n } = this.props;\n\n item.change(values, savePristine);\n\n // 值发生变化了,需要通过 onSelect 通知到外面,否则会出现数据不同步的问题\n item.modified && this.syncSelected();\n\n if (savePristine) {\n onPristineChange?.(item.data, item.path);\n return;\n } else if (!saveImmediately && !propsSaveImmediately) {\n return;\n }\n\n if (saveImmediately && saveImmediately.api) {\n this.props.onAction(\n null,\n {\n actionType: 'ajax',\n api: saveImmediately.api\n },\n values\n );\n return;\n }\n\n if (!onSave) {\n return;\n }\n\n onSave(\n item.data,\n difference(item.data, item.pristine, ['id', primaryField]),\n item.path,\n undefined,\n item.pristine,\n resetOnFailed\n );\n }\n\n async handleSave() {\n const {store, onSave, primaryField} = this.props;\n\n if (!onSave || !store.modifiedRows.length) {\n return;\n }\n\n // 验证所有表单项,没有错误才继续\n const subForms: Array<any> = [];\n Object.keys(this.subForms).forEach(\n key => this.subForms[key] && subForms.push(this.subForms[key])\n );\n if (subForms.length) {\n const result = await Promise.all(subForms.map(item => item.validate()));\n if (~result.indexOf(false)) {\n return;\n }\n }\n\n const rows = store.modifiedRows.map(item => item.data);\n const rowIndexes = store.modifiedRows.map(item => item.path);\n const diff = store.modifiedRows.map(item =>\n difference(item.data, item.pristine, ['id', primaryField])\n );\n const unModifiedRows = store.rows\n .filter(item => !item.modified)\n .map(item => item.data);\n onSave(\n rows,\n diff,\n rowIndexes,\n unModifiedRows,\n store.modifiedRows.map(item => item.pristine)\n );\n }\n\n handleSaveOrder() {\n const {store, onSaveOrder} = this.props;\n\n if (!onSaveOrder || !store.movedRows.length) {\n return;\n }\n\n onSaveOrder(\n store.movedRows.map(item => item.data),\n store.rows.map(item => item.getDataWithModifiedChilden())\n );\n }\n\n syncSelected() {\n const {store, onSelect} = this.props;\n\n onSelect &&\n onSelect(\n store.selectedRows.map(item => item.data),\n store.unSelectedRows.map(item => item.data)\n );\n }\n\n reset() {\n const {store} = this.props;\n\n store.reset();\n\n const subForms: Array<any> = [];\n Object.keys(this.subForms).forEach(\n key => this.subForms[key] && subForms.push(this.subForms[key])\n );\n subForms.forEach(item => item.clearErrors());\n }\n\n bulkUpdate(value: any, items: Array<object>) {\n const {store, primaryField} = this.props;\n\n if (primaryField && value.ids) {\n const ids = value.ids.split(',');\n const rows = store.rows.filter(item =>\n find(ids, (id: any) => id && id == item.data[primaryField])\n );\n const newValue = {...value, ids: undefined};\n rows.forEach(row => row.change(newValue));\n } else {\n const rows = store.rows.filter(item => ~items.indexOf(item.pristine));\n rows.forEach(row => row.change(value));\n }\n }\n\n getSelected() {\n const {store} = this.props;\n\n return store.selectedRows.map(item => item.data);\n }\n\n affixDetect() {\n if (!this.props.affixHeader || !this.table) {\n return;\n }\n\n const ns = this.props.classPrefix;\n const dom = findDOMNode(this) as HTMLElement;\n const clip = (this.table as HTMLElement).getBoundingClientRect();\n const offsetY =\n this.props.affixOffsetTop ?? this.props.env.affixOffsetTop ?? 0;\n const headingHeight =\n dom.querySelector(`.${ns}Table-heading`)?.getBoundingClientRect()\n .height || 0;\n const headerHeight =\n dom.querySelector(`.${ns}Table-headToolbar`)?.getBoundingClientRect()\n .height || 0;\n\n const affixed =\n clip.top - headerHeight - headingHeight < offsetY &&\n clip.top + clip.height - 40 > offsetY;\n const affixedDom = dom.querySelector(`.${ns}Table-fixedTop`) as HTMLElement;\n\n affixedDom.style.cssText += `top: ${offsetY}px;width: ${\n (this.table.parentNode as HTMLElement).offsetWidth\n }px`;\n affixed\n ? affixedDom.classList.add('in')\n : affixedDom.classList.remove('in');\n // store.markHeaderAffix(clip.top < offsetY && (clip.top + clip.height - 40) > offsetY);\n }\n\n updateTableInfo() {\n if (!this.table) {\n return;\n }\n\n const table = this.table;\n const outter = table.parentNode as HTMLElement;\n const affixHeader = this.props.affixHeader;\n const ns = this.props.classPrefix;\n\n // 完成宽高都没有变化就直接跳过了。\n // if (this.totalWidth === table.scrollWidth && this.totalHeight === table.scrollHeight) {\n // return;\n // }\n\n this.totalWidth = table.scrollWidth;\n this.totalHeight = table.scrollHeight;\n this.outterWidth = outter.offsetWidth;\n this.outterHeight = outter.offsetHeight;\n\n let widths: {\n [propName: string]: number;\n } = (this.widths = {});\n let heights: {\n [propName: string]: number;\n } = (this.heights = {});\n\n heights.header ||\n (heights.header = table\n .querySelector('thead')!\n .getBoundingClientRect().height);\n\n forEach(\n table.querySelectorAll('thead>tr:last-child>th'),\n (item: HTMLElement) => {\n widths[item.getAttribute('data-index') as string] =\n item.getBoundingClientRect().width;\n }\n );\n forEach(\n table.querySelectorAll('tbody>tr>*:last-child'),\n (item: HTMLElement, index: number) =>\n (heights[index] = item.getBoundingClientRect().height)\n );\n\n // 让 react 去更新非常慢,还是手动更新吧。\n const dom = findDOMNode(this) as HTMLElement;\n\n forEach(\n // 折叠 footTable 不需要改变\n dom.querySelectorAll(\n `.${ns}Table-fixedTop table, .${ns}Table-fixedLeft>table, .${ns}Table-fixedRight>table`\n ),\n (table: HTMLTableElement) => {\n let totalWidth = 0;\n forEach(\n table.querySelectorAll('thead>tr:last-child>th'),\n (item: HTMLElement) => {\n const width = widths[item.getAttribute('data-index') as string];\n item.style.cssText += `width: ${width}px; height: ${heights.header}px`;\n totalWidth += width;\n }\n );\n forEach(table.querySelectorAll('colgroup>col'), (item: HTMLElement) => {\n const width = widths[item.getAttribute('data-index') as string];\n item.setAttribute('width', `${width}`);\n });\n forEach(\n table.querySelectorAll('tbody>tr'),\n (item: HTMLElement, index) => {\n item.style.cssText += `height: ${heights[index]}px`;\n }\n );\n\n table.style.cssText += `width: ${totalWidth}px;table-layout: fixed;`;\n }\n );\n\n if (affixHeader) {\n (\n dom.querySelector(\n `.${ns}Table-fixedTop>.${ns}Table-wrapper`\n ) as HTMLElement\n ).style.cssText += `width: ${this.outterWidth}px`;\n }\n\n this.lastScrollLeft = -1;\n this.handleOutterScroll();\n }\n\n handleOutterScroll() {\n const outter = (this.table as HTMLElement).parentNode as HTMLElement;\n const scrollLeft = outter.scrollLeft;\n\n if (scrollLeft === this.lastScrollLeft) {\n return;\n }\n\n this.lastScrollLeft = scrollLeft;\n let leading = scrollLeft === 0;\n let trailing = Math.ceil(scrollLeft) + this.outterWidth >= this.totalWidth;\n // console.log(scrollLeft, store.outterWidth, store.totalWidth, (scrollLeft + store.outterWidth) === store.totalWidth);\n // store.setLeading(leading);\n // store.setTrailing(trailing);\n\n const ns = this.props.classPrefix;\n const dom = findDOMNode(this) as HTMLElement;\n\n const fixedLeft = dom.querySelectorAll(`.${ns}Table-fixedLeft`);\n if (fixedLeft && fixedLeft.length) {\n for (let i = 0, len = fixedLeft.length; i < len; i++) {\n let node = fixedLeft[i];\n leading ? node.classList.remove('in') : node.classList.add('in');\n }\n }\n\n const fixedRight = dom.querySelectorAll(`.${ns}Table-fixedRight`);\n if (fixedRight && fixedRight.length) {\n for (let i = 0, len = fixedRight.length; i < len; i++) {\n let node = fixedRight[i];\n trailing ? node.classList.remove('in') : node.classList.add('in');\n }\n }\n const table = this.affixedTable;\n if (table) {\n table.style.cssText += `transform: translateX(-${scrollLeft}px)`;\n }\n }\n\n tableRef(ref: HTMLTableElement) {\n this.table = ref;\n\n if (ref) {\n this.unSensor = resizeSensor(\n ref.parentNode as HTMLElement,\n this.updateTableInfoLazy\n );\n } else {\n this.unSensor && this.unSensor();\n delete this.unSensor;\n }\n }\n\n dragTipRef(ref: any) {\n if (!this.dragTip && ref) {\n this.initDragging();\n } else if (this.dragTip && !ref) {\n this.destroyDragging();\n }\n\n this.dragTip = ref;\n }\n\n affixedTableRef(ref: HTMLTableElement) {\n this.affixedTable = ref;\n }\n\n initDragging() {\n const store = this.props.store;\n const ns = this.props.classPrefix;\n this.sortable = new Sortable(\n (this.table as HTMLElement).querySelector('tbody') as HTMLElement,\n {\n group: 'table',\n animation: 150,\n handle: `.${ns}Table-dragCell`,\n ghostClass: 'is-dragging',\n onEnd: (e: any) => {\n // 没有移动\n if (e.newIndex === e.oldIndex) {\n return;\n }\n\n const parent = e.to as HTMLElement;\n if (e.oldIndex < parent.childNodes.length - 1) {\n parent.insertBefore(e.item, parent.childNodes[e.oldIndex]);\n } else {\n parent.appendChild(e.item);\n }\n\n store.exchange(e.oldIndex, e.newIndex);\n }\n }\n );\n }\n\n destroyDragging() {\n this.sortable && this.sortable.destroy();\n }\n\n getPopOverContainer() {\n return findDOMNode(this);\n }\n\n handleMouseMove(e: React.MouseEvent<any>) {\n const tr: HTMLElement = (e.target as HTMLElement).closest(\n 'tr[data-index]'\n ) as HTMLElement;\n\n if (!tr) {\n return;\n }\n\n const {store, affixColumns, itemActions} = this.props;\n\n if (\n (affixColumns === false ||\n (store.leftFixedColumns.length === 0 &&\n store.rightFixedColumns.length === 0)) &&\n (!itemActions || !itemActions.filter(item => !item.hiddenOnHover).length)\n ) {\n return;\n }\n\n const index = parseInt(tr.getAttribute('data-index') as string, 10);\n\n if (store.hoverIndex === index) {\n return;\n }\n store.rows.forEach((item, key) => item.setIsHover(index === key));\n }\n\n handleMouseLeave() {\n const store = this.props.store;\n\n if (~store.hoverIndex) {\n store.rows[store.hoverIndex].setIsHover(false);\n }\n }\n\n draggingTr: HTMLTableRowElement;\n originIndex: number;\n draggingSibling: Array<HTMLTableRowElement>;\n\n @autobind\n handleDragStart(e: React.DragEvent) {\n const store = this.props.store;\n const target = e.currentTarget;\n const tr = (this.draggingTr = target.closest('tr')!);\n const id = tr.getAttribute('data-id')!;\n const tbody = tr.parentNode!;\n this.originIndex = Array.prototype.indexOf.call(tbody.childNodes, tr);\n\n tr.classList.add('is-dragging');\n\n e.dataTransfer.effectAllowed = 'move';\n e.dataTransfer.setData('text/plain', id);\n\n e.dataTransfer.setDragImage(tr, 0, 0);\n const item = store.getRowById(id)!;\n store.collapseAllAtDepth(item.depth);\n\n let siblings: Array<IRow> = store.rows;\n if (item.parentId) {\n const parent = store.getRowById(item.parentId)!;\n siblings = parent.children as any;\n }\n siblings = siblings.filter(sibling => sibling !== item);\n\n tbody.addEventListener('dragover', this.handleDragOver);\n tbody.addEventListener('drop', this.handleDrop);\n\n this.draggingSibling = siblings.map(item => {\n let tr: HTMLTableRowElement = tbody.querySelector(\n `tr[data-id=\"${item.id}\"]`\n ) as HTMLTableRowElement;\n\n tr.classList.add('is-drop-allowed');\n\n return tr;\n });\n tr.addEventListener('dragend', this.handleDragEnd);\n }\n\n @autobind\n handleDragOver(e: any) {\n if (!e.target) {\n return;\n }\n e.preventDefault();\n e.dataTransfer!.dropEffect = 'move';\n\n const overTr: HTMLElement = (e.target as HTMLElement).closest('tr')!;\n if (\n !overTr ||\n !~overTr.className.indexOf('is-drop-allowed') ||\n overTr === this.draggingTr\n ) {\n return;\n }\n\n const tbody = overTr.parentElement!;\n const dRect = this.draggingTr.getBoundingClientRect();\n const tRect = overTr.getBoundingClientRect();\n let ratio = dRect.top < tRect.top ? 0.1 : 0.9;\n\n const next = (e.clientY - tRect.top) / (tRect.bottom - tRect.top) > ratio;\n tbody.insertBefore(this.draggingTr, (next && overTr.nextSibling) || overTr);\n }\n\n @autobind\n handleDrop() {\n const store = this.props.store;\n const tr = this.draggingTr;\n const tbody = tr.parentElement!;\n const index = Array.prototype.indexOf.call(tbody.childNodes, tr);\n const item: IRow = store.getRowById(tr.getAttribute('data-id')!) as any;\n\n // destroy\n this.handleDragEnd();\n\n store.exchange(this.originIndex, index, item);\n }\n\n @autobind\n handleDragEnd() {\n const tr = this.draggingTr;\n const tbody = tr.parentElement!;\n const index = Array.prototype.indexOf.call(tbody.childNodes, tr);\n tbody.insertBefore(\n tr,\n tbody.childNodes[\n index < this.originIndex ? this.originIndex + 1 : this.originIndex\n ]\n );\n\n tr.classList.remove('is-dragging');\n tr.removeEventListener('dragend', this.handleDragEnd);\n tbody.removeEventListener('dragover', this.handleDragOver);\n tbody.removeEventListener('drop', this.handleDrop);\n this.draggingSibling.forEach(item =>\n item.classList.remove('is-drop-allowed')\n );\n }\n\n @autobind\n handleImageEnlarge(info: any, target: {rowIndex: number; colIndex: number}) {\n const onImageEnlarge = this.props.onImageEnlarge;\n\n // 如果已经是多张了,直接跳过\n if (Array.isArray(info.list)) {\n return onImageEnlarge && onImageEnlarge(info, target);\n }\n\n // 从列表中收集所有图片,然后作为一个图片集合派送出去。\n const store = this.props.store;\n const column = store.columns[target.colIndex].pristine;\n\n let index = target.rowIndex;\n const list: Array<any> = [];\n store.rows.forEach((row, i) => {\n const src = resolveVariable(column.name, row.data);\n\n if (!src) {\n if (i < target.rowIndex) {\n index--;\n }\n return;\n }\n\n list.push({\n src,\n originalSrc: column.originalSrc\n ? filter(column.originalSrc, row.data)\n : src,\n title: column.enlargeTitle\n ? filter(column.enlargeTitle, row.data)\n : column.title\n ? filter(column.title, row.data)\n : undefined,\n caption: column.enlargeCaption\n ? filter(column.enlargeCaption, row.data)\n : column.caption\n ? filter(column.caption, row.data)\n : undefined\n });\n });\n\n if (list.length > 1) {\n onImageEnlarge &&\n onImageEnlarge(\n {\n ...info,\n list,\n index\n },\n target\n );\n } else {\n onImageEnlarge && onImageEnlarge(info, target);\n }\n }\n\n renderHeading() {\n let {\n title,\n store,\n hideQuickSaveBtn,\n data,\n classnames: cx,\n saveImmediately,\n headingClassName,\n translate: __\n } = this.props;\n\n if (\n title ||\n (!saveImmediately && store.modified && !hideQuickSaveBtn) ||\n store.moved\n ) {\n return (\n <div className={cx('Table-heading', headingClassName)} key=\"heading\">\n {!saveImmediately && store.modified && !hideQuickSaveBtn ? (\n <span>\n {__('Table.modified', {\n modified: store.modified\n })}\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--success m-l-sm')}\n onClick={this.handleSave}\n >\n <Icon icon=\"check\" className=\"icon m-r-xs\" />\n {__('Form.submit')}\n </button>\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--danger m-l-sm')}\n onClick={this.reset}\n >\n <Icon icon=\"close\" className=\"icon m-r-xs\" />\n {__('Table.discard')}\n </button>\n </span>\n ) : store.moved ? (\n <span>\n {__('Table.moved', {\n moved: store.moved\n })}\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--success m-l-sm')}\n onClick={this.handleSaveOrder}\n >\n <Icon icon=\"check\" className=\"icon m-r-xs\" />\n {__('Form.submit')}\n </button>\n <button\n type=\"button\"\n className={cx('Button Button--xs Button--danger m-l-sm')}\n onClick={this.reset}\n >\n <Icon icon=\"close\" className=\"icon m-r-xs\" />\n {__('Table.discard')}\n </button>\n </span>\n ) : title ? (\n filter(title, data)\n ) : (\n ''\n )}\n </div>\n );\n }\n\n return null;\n }\n\n renderHeadCell(column: IColumn, props?: any) {\n const {\n store,\n query,\n onQuery,\n multiple,\n env,\n render,\n classPrefix: ns,\n classnames: cx\n } = this.props;\n\n if (column.type === '__checkme') {\n return (\n <th {...props} className={cx(column.pristine.className)}>\n {store.rows.length && multiple ? (\n <Checkbox\n classPrefix={ns}\n partial={!store.allChecked}\n checked={store.someChecked}\n disabled={store.disabledHeadCheckbox}\n onChange={this.handleCheckAll}\n />\n ) : (\n '\\u00A0'\n )}\n </th>\n );\n } else if (column.type === '__dragme') {\n return <th {...props} className={cx(column.pristine.className)} />;\n } else if (column.type === '__expandme') {\n return (\n <th {...props} className={cx(column.pristine.className)}>\n {(store.footable &&\n (store.footable.expandAll === false || store.footable.accordion)) ||\n (store.expandConfig &&\n (store.expandConfig.expandAll === false ||\n store.expandConfig.accordion)) ? null : (\n <a\n className={cx(\n 'Table-expandBtn',\n store.allExpanded ? 'is-active' : ''\n )}\n // data-tooltip=\"展开/收起全部\"\n // data-position=\"top\"\n onClick={store.toggleExpandAll}\n >\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </a>\n )}\n </th>\n );\n }\n\n let affix = null;\n\n if (column.searchable && column.name) {\n affix = (\n <HeadCellSearchDropDown\n {...this.props}\n onQuery={onQuery}\n name={column.name}\n searchable={column.searchable}\n sortable={column.sortable}\n type={column.type}\n data={query}\n orderBy={store.orderBy}\n orderDir={store.orderDir}\n popOverContainer={this.getPopOverContainer}\n />\n );\n } else if (column.sortable && column.name) {\n affix = (\n <span\n className={cx('TableCell-sortBtn')}\n onClick={() => {\n if (column.name === store.orderBy) {\n if (store.orderDir === 'desc') {\n // 降序之后取消排序\n store.setOrderByInfo('', 'asc');\n } else {\n // 升序之后降序\n store.setOrderByInfo(column.name, 'desc');\n }\n } else {\n store.setOrderByInfo(column.name as string, 'asc');\n }\n\n onQuery &&\n onQuery({\n orderBy: store.orderBy,\n orderDir: store.orderDir\n });\n }}\n >\n <i\n className={cx(\n 'TableCell-sortBtn--down',\n store.orderBy === column.name && store.orderDir === 'desc'\n ? 'is-active'\n : ''\n )}\n >\n <Icon icon=\"sort-desc\" className=\"icon\" />\n </i>\n <i\n className={cx(\n 'TableCell-sortBtn--up',\n store.orderBy === column.name && store.orderDir === 'asc'\n ? 'is-active'\n : ''\n )}\n >\n <Icon icon=\"sort-asc\" className=\"icon\" />\n </i>\n <i\n className={cx(\n 'TableCell-sortBtn--default',\n store.orderBy === column.name ? '' : 'is-active'\n )}\n >\n <Icon icon=\"sort-default\" className=\"icon\" />\n </i>\n </span>\n );\n } else if (column.filterable && column.name) {\n affix = (\n <HeadCellFilterDropDown\n {...this.props}\n onQuery={onQuery}\n name={column.name}\n type={column.type}\n data={query}\n filterable={column.filterable}\n popOverContainer={this.getPopOverContainer}\n />\n );\n }\n\n if (column.pristine.width) {\n props.style = props.style || {};\n props.style.width = column.pristine.width;\n }\n\n return (\n <th\n {...props}\n className={cx(\n props ? (props as any).className : '',\n column.pristine.className,\n {\n 'TableCell--sortable': column.sortable,\n 'TableCell--searchable': column.searchable,\n 'TableCell--filterable': column.filterable,\n 'Table-operationCell': column.type === 'operation'\n }\n )}\n >\n <div className={cx(`${ns}TableCell--title`)}>\n {column.label ? render('tpl', column.label) : null}\n\n {column.remark\n ? render('remark', {\n type: 'remark',\n tooltip: column.remark,\n container:\n env && env.getModalContainer\n ? env.getModalContainer\n : undefined\n })\n : null}\n </div>\n\n {affix}\n </th>\n );\n }\n\n renderCell(\n region: string,\n column: IColumn,\n item: IRow,\n props: any,\n ignoreDrag = false\n ) {\n const {\n render,\n store,\n multiple,\n classPrefix: ns,\n classnames: cx,\n checkOnItemClick,\n popOverContainer,\n canAccessSuperData\n } = this.props;\n\n if (column.name && item.rowSpans[column.name] === 0) {\n return null;\n }\n\n if (column.type === '__checkme') {\n return (\n <td key={props.key} className={cx(column.pristine.className)}>\n <Checkbox\n classPrefix={ns}\n type={multiple ? 'checkbox' : 'radio'}\n checked={item.checked}\n disabled={item.checkdisable}\n onChange={\n checkOnItemClick ? noop : this.handleCheck.bind(this, item)\n }\n />\n </td>\n );\n } else if (column.type === '__dragme') {\n return (\n <td key={props.key} className={cx(column.pristine.className)}>\n {item.draggable ? <Icon icon=\"drag-bar\" className=\"icon\" /> : null}\n </td>\n );\n } else if (column.type === '__expandme') {\n return (\n <td key={props.key} className={cx(column.pristine.className)}>\n {item.depth > 2\n ? Array.from({length: item.depth - 2}).map((_, index) => (\n <i key={index} className={cx('Table-divider-' + (index + 1))} />\n ))\n : null}\n\n {item.expandable ? (\n <a\n className={cx(\n 'Table-expandBtn',\n item.expanded ? 'is-active' : ''\n )}\n // data-tooltip=\"展开/收起\"\n // data-position=\"top\"\n onClick={item.toggleExpanded}\n >\n <Icon icon=\"right-arrow-bold\" className=\"icon\" />\n </a>\n ) : null}\n </td>\n );\n }\n\n let prefix: React.ReactNode = null;\n\n if (\n !ignoreDrag &&\n column.isPrimary &&\n store.isNested &&\n store.draggable &&\n item.draggable\n ) {\n prefix = (\n <a\n draggable\n onDragStart={this.handleDragStart}\n className={cx('Table-dragBtn')}\n >\n <Icon icon=\"drag-bar\" className=\"icon\" />\n </a>\n );\n }\n\n const subProps: any = {\n ...props,\n btnDisabled: store.dragging,\n data: item.locals,\n value: column.name\n ? resolveVariable(\n column.name,\n canAccessSuperData ? item.locals : item.data\n )\n : column.value,\n popOverContainer: popOverContainer || this.getPopOverContainer,\n rowSpan: item.rowSpans[column.name as string],\n quickEditFormRef: this.subFormRef,\n prefix,\n onImageEnlarge: this.handleImageEnlarge,\n canAccessSuperData\n };\n delete subProps.label;\n\n return render(\n region,\n {\n ...column.pristine,\n column: column.pristine,\n type: 'cell'\n },\n subProps\n );\n }\n\n renderAffixHeader(tableClassName: string) {\n const {store, affixHeader, render, classnames: cx} = this.props;\n const hideHeader = store.filteredColumns.every(column => !column.label);\n\n return affixHeader ? (\n <div\n className={cx('Table-fixedTop', {\n 'is-fakeHide': hideHeader\n })}\n >\n {this.renderHeader(false)}\n {this.renderHeading()}\n <div className={cx('Table-fixedLeft')}>\n {store.leftFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.leftFixedColumns,\n true,\n tableClassName\n )\n : null}\n </div>\n <div className={cx('Table-fixedRight')}>\n {store.rightFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.rightFixedColumns,\n true,\n tableClassName\n )\n : null}\n </div>\n <div className={cx('Table-wrapper')}>\n <table ref={this.affixedTableRef} className={tableClassName}>\n <colgroup>\n {store.filteredColumns.map(column => (\n <col key={column.index} data-index={column.index} />\n ))}\n </colgroup>\n <thead>\n {store.columnGroup.length ? (\n <tr>\n {store.columnGroup.map((item, index) => (\n <th\n key={index}\n data-index={item.index}\n colSpan={item.colSpan}\n >\n {item.label ? render('tpl', item.label) : null}\n </th>\n ))}\n </tr>\n ) : null}\n <tr>\n {store.filteredColumns.map(column =>\n this.renderHeadCell(column, {\n 'key': column.index,\n 'data-index': column.index\n })\n )}\n </tr>\n </thead>\n </table>\n </div>\n </div>\n ) : null;\n }\n\n renderFixedColumns(\n rows: Array<any>,\n columns: Array<IColumn>,\n headerOnly: boolean = false,\n tableClassName: string = ''\n ) {\n const {\n placeholder,\n store,\n classnames: cx,\n render,\n data,\n translate,\n locale,\n checkOnItemClick,\n buildItemProps,\n rowClassNameExpr,\n rowClassName\n } = this.props;\n const hideHeader = store.filteredColumns.every(column => !column.label);\n return (\n <table\n className={cx(\n 'Table-table',\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n tableClassName\n )}\n >\n <thead>\n {store.columnGroup.length ? (\n <tr>\n {store.columnGroup.map((item, index) => {\n const renderColumns = columns.filter(a => ~item.has.indexOf(a));\n\n return renderColumns.length ? (\n <th\n key={index}\n data-index={item.index}\n colSpan={renderColumns.length}\n >\n {'\\u00A0'}\n </th>\n ) : null;\n })}\n </tr>\n ) : null}\n <tr className={hideHeader ? 'fake-hide' : ''}>\n {columns.map(column =>\n this.renderHeadCell(column, {\n 'key': column.index,\n 'data-index': column.index\n })\n )}\n </tr>\n </thead>\n\n {headerOnly ? null : !rows.length ? (\n <tbody>\n <tr className={cx('Table-placeholder')}>\n <td colSpan={columns.length}>\n {render(\n 'placeholder',\n translate(placeholder || 'placeholder.noData')\n )}\n </td>\n </tr>\n </tbody>\n ) : (\n <TableBody\n tableClassName={cx(\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n tableClassName\n )}\n classnames={cx}\n render={render}\n renderCell={this.renderCell}\n onCheck={this.handleCheck}\n onQuickChange={store.dragging ? undefined : this.handleQuickChange}\n footable={store.footable}\n ignoreFootableContent\n footableColumns={store.footableColumns}\n checkOnItemClick={checkOnItemClick}\n buildItemProps={buildItemProps}\n onAction={this.handleAction}\n rowClassNameExpr={rowClassNameExpr}\n rowClassName={rowClassName}\n columns={columns}\n rows={rows}\n locale={locale}\n translate={translate}\n rowsProps={{\n regionPrefix: 'fixed/',\n renderCell: (\n region: string,\n column: IColumn,\n item: IRow,\n props: any\n ) => this.renderCell(region, column, item, props, true)\n }}\n />\n )}\n </table>\n );\n }\n\n renderToolbar(toolbar: SchemaNode) {\n const type = (toolbar as Schema).type || (toolbar as string);\n\n if (type === 'columns-toggler') {\n this.renderedToolbars.push(type);\n return this.renderColumnsToggler(toolbar as any);\n } else if (type === 'drag-toggler') {\n this.renderedToolbars.push(type);\n return this.renderDragToggler();\n } else if (type === 'export-excel') {\n this.renderedToolbars.push(type);\n return this.renderExportExcel(toolbar);\n }\n\n return void 0;\n }\n\n renderColumnsToggler(config?: any) {\n const {\n className,\n store,\n classPrefix: ns,\n classnames: cx,\n ...rest\n } = this.props;\n const __ = rest.translate;\n const env = rest.env;\n\n const render = this.props.render;\n\n if (!store.columnsTogglable) {\n return null;\n }\n\n return (\n <DropDownButton\n {...rest}\n tooltip={__('Table.columnsVisibility')}\n tooltipContainer={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n align={config ? config.align : 'left'}\n isActived={store.hasColumnHidden()}\n classnames={cx}\n classPrefix={ns}\n key=\"columns-toggable\"\n size=\"sm\"\n label={<Icon icon=\"columns\" className=\"icon m-r-none\" />}\n >\n {store.toggableColumns.map(column => (\n <li\n className={cx('DropDown-menuItem')}\n key={column.index}\n onClick={column.toggleToggle}\n >\n <Checkbox size=\"sm\" classPrefix={ns} checked={column.toggled}>\n {column.label ? render('tpl', column.label) : null}\n </Checkbox>\n </li>\n ))}\n </DropDownButton>\n );\n }\n\n renderDragToggler() {\n const {store, env, draggable, classPrefix: ns, translate: __} = this.props;\n\n if (!draggable || store.isNested) {\n return null;\n }\n\n return (\n <Button\n disabled={!!store.modified}\n classPrefix={ns}\n key=\"dragging-toggle\"\n tooltip={__('Table.startSort')}\n tooltipContainer={\n env && env.getModalContainer ? env.getModalContainer : undefined\n }\n size=\"sm\"\n active={store.dragging}\n onClick={(e: React.MouseEvent<any>) => {\n e.preventDefault();\n store.toggleDragging();\n store.dragging && store.clear();\n }}\n iconOnly\n >\n <Icon icon=\"exchange\" className=\"icon\" />\n </Button>\n );\n }\n\n renderExportExcel(toolbar: SchemaNode) {\n const {\n store,\n env,\n classPrefix: ns,\n classnames: cx,\n translate: __,\n columns,\n data\n } = this.props;\n\n if (!columns) {\n return null;\n }\n\n return (\n <Button\n classPrefix={ns}\n onClick={() => {\n import('exceljs').then(async (ExcelJS: any) => {\n let rows = [];\n let tmpStore;\n let filename = 'data';\n // 支持配置 api 远程获取\n if (typeof toolbar === 'object' && (toolbar as Schema).api) {\n const res = await env.fetcher((toolbar as Schema).api, data);\n if (!res.data) {\n env.notify('warning', __('placeholder.noData'));\n return;\n }\n if (Array.isArray(res.data)) {\n rows = res.data;\n } else {\n rows = res.data.rows || res.data.items;\n }\n // 因为很多方法是 store 里的,所以需要构建 store 来处理\n tmpStore = TableStore.create(getSnapshot(store));\n tmpStore.initRows(rows);\n rows = tmpStore.rows;\n } else {\n rows = store.rows;\n }\n\n if (typeof toolbar === 'object' && (toolbar as Schema).filename) {\n filename = filter((toolbar as Schema).filename, data, '| raw');\n }\n\n if (rows.length === 0) {\n env.notify('warning', __('placeholder.noData'));\n return;\n }\n\n const workbook = new ExcelJS.Workbook();\n const worksheet = workbook.addWorksheet('sheet', {\n properties: {defaultColWidth: 15}\n });\n worksheet.views = [{state: 'frozen', xSplit: 0, ySplit: 1}];\n\n const firstRowLabels = columns.map(column => {\n return column.label;\n });\n const firstRow = worksheet.getRow(1);\n firstRow.values = firstRowLabels;\n worksheet.autoFilter = {\n from: {\n row: 1,\n column: 1\n },\n to: {\n row: 1,\n column: firstRowLabels.length\n }\n };\n // 数据从第二行开始\n let rowIndex = 1;\n for (const row of rows) {\n rowIndex += 1;\n const sheetRow = worksheet.getRow(rowIndex);\n let columIndex = 0;\n const cols = columns as any[]; // 为啥 ts 4.4 得这么做?\n for (const column of cols) {\n columIndex += 1;\n const name = column.name!;\n const value = getVariable(row.data, name);\n if (\n typeof value === 'undefined' &&\n !(column as TplSchema).tpl\n ) {\n continue;\n }\n // 处理合并单元格\n if (name in row.rowSpans) {\n if (row.rowSpans[name] === 0) {\n continue;\n } else {\n // start row, start column, end row, end column\n worksheet.mergeCells(\n rowIndex,\n columIndex,\n rowIndex + row.rowSpans[name] - 1,\n columIndex\n );\n }\n }\n\n const type = (column as BaseSchema).type || 'plain';\n if (type === 'image') {\n try {\n const imageData = await toDataURL(value);\n const imageDimensions = await getImageDimensions(imageData);\n let imageWidth = imageDimensions.width;\n let imageHeight = imageDimensions.height;\n // 限制一下图片高宽\n const imageMaxSize = 100;\n if (imageWidth > imageHeight) {\n if (imageWidth > imageMaxSize) {\n imageHeight = (imageMaxSize * imageHeight) / imageWidth;\n imageWidth = imageMaxSize;\n }\n } else {\n if (imageHeight > imageMaxSize) {\n imageWidth = (imageMaxSize * imageWidth) / imageHeight;\n imageHeight = imageMaxSize;\n }\n }\n const imageMatch = imageData.match(/data:image\\/(.*);/);\n let imageExt = 'png';\n if (imageMatch) {\n imageExt = imageMatch[1];\n }\n // 目前 excel 只支持这些格式,所以其它格式直接输出 url\n if (\n imageExt != 'png' &&\n imageExt != 'jpeg' &&\n imageExt != 'gif'\n ) {\n sheetRow.getCell(columIndex).value = value;\n continue;\n }\n const imageId = workbook.addImage({\n base64: imageData,\n extension: imageExt\n });\n const linkURL = getAbsoluteUrl(value);\n worksheet.addImage(imageId, {\n // 这里坐标位置是从 0 开始的,所以要减一\n tl: {col: columIndex - 1, row: rowIndex - 1},\n ext: {\n width: imageWidth,\n height: imageHeight\n },\n hyperlinks: {\n tooltip: linkURL\n }\n });\n } catch (e) {\n console.warn(e.stack);\n }\n } else if (type == 'link') {\n const linkURL = getAbsoluteUrl(value);\n sheetRow.getCell(columIndex).value = {\n text: value,\n hyperlink: linkURL\n };\n } else if (type === 'mapping') {\n // 拷贝自 Mapping.tsx\n const map = (column as MappingSchema).map;\n if (\n typeof value !== 'undefined' &&\n map &&\n (map[value] ?? map['*'])\n ) {\n const viewValue =\n map[value] ??\n (value === true && map['1']\n ? map['1']\n : value === false && map['0']\n ? map['0']\n : map['*']); // 兼容平台旧用法:即 value 为 true 时映射 1 ,为 false 时映射 0\n sheetRow.getCell(columIndex).value = viewValue;\n } else {\n sheetRow.getCell(columIndex).value = value;\n }\n } else {\n if ((column as TplSchema).tpl) {\n sheetRow.getCell(columIndex).value = removeHTMLTag(\n filter((column as TplSchema).tpl, row.data)\n );\n } else {\n sheetRow.getCell(columIndex).value = value;\n }\n }\n }\n }\n\n const buffer = await workbook.xlsx.writeBuffer();\n\n if (buffer) {\n var blob = new Blob([buffer], {\n type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'\n });\n saveAs(blob, filename + '.xlsx');\n }\n });\n }}\n size=\"sm\"\n >\n {(toolbar as Schema).label || __('CRUD.exportExcel')}\n </Button>\n );\n }\n\n renderActions(region: string) {\n let {actions, render, store, classnames: cx, data} = this.props;\n\n actions = Array.isArray(actions) ? actions.concat() : [];\n\n if (\n store.toggable &&\n region === 'header' &&\n !~this.renderedToolbars.indexOf('columns-toggler')\n ) {\n actions.push({\n type: 'button',\n children: this.renderColumnsToggler()\n });\n }\n\n if (\n store.draggable &&\n !store.isNested &&\n region === 'header' &&\n store.rows.length > 1 &&\n !~this.renderedToolbars.indexOf('drag-toggler')\n ) {\n actions.push({\n type: 'button',\n children: this.renderDragToggler()\n });\n }\n\n return Array.isArray(actions) && actions.length ? (\n <div className={cx('Table-actions')}>\n {actions.map((action, key) =>\n render(\n `action/${key}`,\n {\n type: 'button',\n ...(action as any)\n },\n {\n onAction: this.handleAction,\n key,\n btnDisabled: store.dragging,\n data: store.getData(data)\n }\n )\n )}\n </div>\n ) : null;\n }\n\n renderHeader(editable?: boolean) {\n const {\n header,\n headerClassName,\n toolbarClassName,\n headerToolbarClassName,\n headerToolbarRender,\n render,\n showHeader,\n store,\n classnames: cx,\n data,\n translate: __\n } = this.props;\n\n if (showHeader === false) {\n return null;\n }\n\n const otherProps: any = {};\n // editable === false && (otherProps.$$editable = false);\n\n const child = headerToolbarRender\n ? headerToolbarRender(\n {\n ...this.props,\n selectedItems: store.selectedRows.map(item => item.data),\n items: store.rows.map(item => item.data),\n unSelectedItems: store.unSelectedRows.map(item => item.data),\n ...otherProps\n },\n this.renderToolbar\n )\n : null;\n const actions = this.renderActions('header');\n\n const toolbarNode =\n actions || child || store.dragging ? (\n <div\n className={cx(\n 'Table-toolbar Table-headToolbar',\n toolbarClassName,\n headerToolbarClassName\n )}\n key=\"header-toolbar\"\n >\n {actions}\n {child}\n {store.dragging ? (\n <div className={cx('Table-dragTip')} ref={this.dragTipRef}>\n {__('Table.dragTip')}\n </div>\n ) : null}\n </div>\n ) : null;\n const headerNode =\n header && (!Array.isArray(header) || header.length) ? (\n <div className={cx('Table-header', headerClassName)} key=\"header\">\n {render('header', header, {\n ...(editable === false ? otherProps : null),\n data: store.getData(data)\n })}\n </div>\n ) : null;\n\n return headerNode && toolbarNode\n ? [headerNode, toolbarNode]\n : headerNode || toolbarNode || null;\n }\n\n renderFooter() {\n const {\n footer,\n toolbarClassName,\n footerToolbarClassName,\n footerClassName,\n footerToolbarRender,\n render,\n showFooter,\n store,\n data,\n classnames: cx\n } = this.props;\n\n if (showFooter === false) {\n return null;\n }\n\n const child = footerToolbarRender\n ? footerToolbarRender(\n {\n ...this.props,\n selectedItems: store.selectedRows.map(item => item.data),\n items: store.rows.map(item => item.data)\n },\n this.renderToolbar\n )\n : null;\n const actions = this.renderActions('footer');\n\n const toolbarNode =\n actions || child ? (\n <div\n className={cx(\n 'Table-toolbar Table-footToolbar',\n toolbarClassName,\n footerToolbarClassName\n )}\n key=\"footer-toolbar\"\n >\n {actions}\n {child}\n </div>\n ) : null;\n const footerNode =\n footer && (!Array.isArray(footer) || footer.length) ? (\n <div className={cx('Table-footer', footerClassName)} key=\"footer\">\n {render('footer', footer, {\n data: store.getData(data)\n })}\n </div>\n ) : null;\n return footerNode && toolbarNode\n ? [toolbarNode, footerNode]\n : footerNode || toolbarNode || null;\n }\n\n renderItemActions() {\n const {itemActions, render, store, classnames: cx} = this.props;\n const finalActions = Array.isArray(itemActions)\n ? itemActions.filter(action => !action.hiddenOnHover)\n : [];\n\n if (!finalActions.length) {\n return null;\n }\n const rowIndex = store.hoverIndex;\n const heights = this.heights;\n let height = 40;\n let top = 0;\n\n if (heights && heights[rowIndex]) {\n height = heights[rowIndex];\n top += heights.header;\n for (let i = rowIndex - 1; i >= 0; i--) {\n top += heights[i];\n }\n }\n\n return (\n <div\n className={cx('Table-itemActions-wrap')}\n style={{\n top,\n height\n }}\n >\n <div className={cx('Table-itemActions')}>\n {finalActions.map((action, index) =>\n render(\n `itemAction/${index}`,\n {\n ...(action as any),\n isMenuItem: true\n },\n {\n key: index,\n item: store.rows[rowIndex],\n data: store.rows[rowIndex].locals,\n rowIndex\n }\n )\n )}\n </div>\n </div>\n );\n }\n\n renderTableContent() {\n const {\n classnames: cx,\n tableClassName,\n store,\n placeholder,\n render,\n checkOnItemClick,\n buildItemProps,\n rowClassNameExpr,\n rowClassName,\n prefixRow,\n locale,\n affixRow,\n translate\n } = this.props;\n\n // 理论上来说 store.rows 应该也行啊\n // 不过目前看来只有这样写它才会重新更新视图\n store.rows.length;\n\n return (\n <TableContent\n tableClassName={cx(\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n tableClassName\n )}\n classnames={cx}\n columns={store.filteredColumns}\n columnsGroup={store.columnGroup}\n rows={store.rows}\n placeholder={placeholder}\n render={render}\n onMouseMove={this.handleMouseMove}\n onScroll={this.handleOutterScroll}\n tableRef={this.tableRef}\n renderHeadCell={this.renderHeadCell}\n renderCell={this.renderCell}\n onCheck={this.handleCheck}\n onQuickChange={store.dragging ? undefined : this.handleQuickChange}\n footable={store.footable}\n footableColumns={store.footableColumns}\n checkOnItemClick={checkOnItemClick}\n buildItemProps={buildItemProps}\n onAction={this.handleAction}\n rowClassNameExpr={rowClassNameExpr}\n rowClassName={rowClassName}\n data={store.data}\n prefixRow={prefixRow}\n affixRow={affixRow}\n locale={locale}\n translate={translate}\n />\n );\n }\n\n render() {\n const {className, store, classnames: cx, affixColumns} = this.props;\n\n this.renderedToolbars = []; // 用来记录哪些 toolbar 已经渲染了,已经渲染了就不重复渲染了。\n const heading = this.renderHeading();\n const header = this.renderHeader();\n const footer = this.renderFooter();\n const tableClassName = cx(\n 'Table-table',\n store.combineNum > 0 ? 'Table-table--withCombine' : '',\n this.props.tableClassName\n );\n\n return (\n <div\n className={cx('Table', className, {\n 'Table--unsaved': !!store.modified || !!store.moved\n })}\n >\n {header}\n {heading}\n <div\n className={cx('Table-contentWrap')}\n onMouseLeave={this.handleMouseLeave}\n >\n <div\n className={cx('Table-fixedLeft')}\n onMouseMove={this.handleMouseMove}\n >\n {affixColumns !== false && store.leftFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.leftFixedColumns,\n false,\n tableClassName\n )\n : null}\n </div>\n <div\n className={cx('Table-fixedRight')}\n onMouseMove={this.handleMouseMove}\n >\n {affixColumns !== false && store.rightFixedColumns.length\n ? this.renderFixedColumns(\n store.rows,\n store.rightFixedColumns,\n false,\n tableClassName\n )\n : null}\n </div>\n {this.renderTableContent()}\n {~store.hoverIndex ? this.renderItemActions() : null}\n </div>\n {this.renderAffixHeader(tableClassName)}\n {footer}\n </div>\n );\n }\n}\n\n@Renderer({\n type: 'table',\n storeType: TableStore.name,\n name: 'table'\n})\nexport class TableRenderer extends Table {}\n\nexport {TableCell};\n"
12
12
  ]
13
13
  }
package/lib/store/app.js CHANGED
@@ -35,12 +35,8 @@ exports.AppStore = service_1.ServiceStore.named('AppStore')
35
35
  }
36
36
  return [
37
37
  {
38
- label: '导航',
39
- children: [
40
- {
41
- label: '暂无页面'
42
- }
43
- ]
38
+ label: self.__('App.navigation'),
39
+ children: []
44
40
  }
45
41
  ];
46
42
  },
@@ -119,9 +115,10 @@ exports.AppStore = service_1.ServiceStore.named('AppStore')
119
115
  if (item.id === page.id) {
120
116
  bcn = paths.filter(function (item) { return item.path && item.label; });
121
117
  bcn.push((0, tslib_1.__assign)((0, tslib_1.__assign)({}, item), { path: '' }));
118
+ self.__;
122
119
  if (bcn[0].path !== '/') {
123
120
  bcn.unshift({
124
- label: '首页',
121
+ label: self.__('App.home'),
125
122
  path: '/'
126
123
  });
127
124
  }
@@ -6,8 +6,8 @@
6
6
  "/src/store/app.ts"
7
7
  ],
8
8
  "names": [],
9
- "mappings": "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",
9
+ "mappings": "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",
10
10
  "sourcesContent": [
11
- "import {Instance, SnapshotIn, types} from 'mobx-state-tree';\nimport {Navigation} from '../components/AsideNav';\nimport {RendererEnv} from '../factory';\nimport {\n createObject,\n filterTree,\n findTree,\n guid,\n mapTree\n} from '../utils/helper';\nimport {ServiceStore} from './service';\n\nexport const AppStore = ServiceStore.named('AppStore')\n .props({\n pages: types.frozen(),\n activePage: types.frozen(),\n folded: false,\n offScreen: false\n })\n .views(self => ({\n get navigations(): Array<Navigation> {\n if (Array.isArray(self.pages)) {\n return mapTree(self.pages, item => {\n let visible = item.visible;\n\n if (\n visible !== false &&\n item.path &&\n !~item.path.indexOf('http') &&\n ~item.path.indexOf(':')\n ) {\n visible = false;\n }\n\n return {\n label: item.label,\n icon: item.icon,\n path: item.path,\n children: item.children,\n className: item.className,\n visible\n };\n });\n }\n\n return [\n {\n label: '导航',\n children: [\n {\n label: '暂无页面'\n }\n ]\n }\n ];\n },\n get bcn() {\n return self.activePage?.bcn || [];\n },\n\n get pageData() {\n return createObject(self.data, {\n params: self.activePage?.params || {}\n });\n }\n }))\n .actions(self => ({\n toggleFolded() {\n self.folded = !self.folded;\n },\n toggleOffScreen() {\n self.offScreen = !self.offScreen;\n },\n\n setPages(pages: any) {\n if (pages && !Array.isArray(pages)) {\n pages = [pages];\n } else if (!Array.isArray(pages)) {\n return;\n }\n\n pages = mapTree(pages, (item, index, level, paths) => {\n let path = item.link || item.url;\n\n if (item.schema || item.schemaApi) {\n path =\n item.url ||\n `/${paths\n .map(item => item.index)\n .concat(index)\n .map(index => `page-${index + 1}`)\n .join('/')}`;\n\n if (path && path[0] !== '/') {\n let parentPath = '/';\n let index = paths.length;\n while (index > 0) {\n const item = paths[index - 1];\n\n if (item?.path) {\n parentPath = item.path + '/';\n break;\n }\n index--;\n }\n\n path = parentPath + path;\n }\n }\n\n return {\n ...item,\n index,\n id: item.id || guid(),\n label: item.label,\n icon: item.icon,\n path\n };\n });\n self.pages = pages;\n },\n\n rewrite(to: string, env: RendererEnv) {\n let page = findTree(self.pages, item => {\n if (item.path === to) {\n return true;\n }\n return false;\n });\n\n if (page) {\n this.setActivePage(page, env);\n }\n },\n\n setActivePage(page: any, env: RendererEnv, params?: any) {\n // 同一个页面直接返回。\n if (self.activePage?.id === page.id) {\n return;\n }\n\n let bcn: Array<any> = [];\n\n findTree(self.pages, (item, index, level, paths) => {\n if (item.id === page.id) {\n bcn = paths.filter(item => item.path && item.label);\n bcn.push({\n ...item,\n path: ''\n });\n if (bcn[0].path !== '/') {\n bcn.unshift({\n label: '首页',\n path: '/'\n });\n }\n return true;\n }\n return false;\n });\n\n self.activePage = {\n ...page,\n params: params || {},\n bcn\n };\n\n if (page.label) {\n document.title = page.label;\n }\n\n if (page.schema) {\n self.schema = page.schema;\n self.schemaKey = '' + Date.now();\n } else if (page.schemaApi) {\n self.schema = null;\n self.fetchSchema(page.schemaApi, self.activePage, {method: 'get'});\n } else if (page.redirect) {\n env.jumpTo(page.redirect);\n return;\n } else if (page.rewrite) {\n this.rewrite(page.rewrite, env);\n } else {\n self.schema = null;\n self.schemaKey = '';\n }\n },\n\n updateActivePage(env: RendererEnv) {\n if (!Array.isArray(self.pages)) {\n return;\n }\n let matched: any;\n\n let page = findTree(self.pages, item => {\n if (item.path) {\n matched = env.isCurrentUrl(item.path, item);\n\n if (matched) {\n return true;\n }\n }\n return false;\n });\n\n if (page) {\n this.setActivePage(\n page,\n env,\n typeof matched === 'object' ? matched.params : undefined\n );\n } else {\n const page = findTree(self.pages, item => item.isDefaultPage);\n\n if (page) {\n this.setActivePage(page, env);\n } else {\n self.activePage = null;\n }\n }\n }\n }));\n\nexport type IAppStore = Instance<typeof AppStore>;\nexport type SAppStore = SnapshotIn<typeof AppStore>;\n"
11
+ "import {Instance, SnapshotIn, types} from 'mobx-state-tree';\nimport {Navigation} from '../components/AsideNav';\nimport {RendererEnv} from '../factory';\nimport {\n createObject,\n filterTree,\n findTree,\n guid,\n mapTree\n} from '../utils/helper';\nimport {ServiceStore} from './service';\n\nexport const AppStore = ServiceStore.named('AppStore')\n .props({\n pages: types.frozen(),\n activePage: types.frozen(),\n folded: false,\n offScreen: false\n })\n .views(self => ({\n get navigations(): Array<Navigation> {\n if (Array.isArray(self.pages)) {\n return mapTree(self.pages, item => {\n let visible = item.visible;\n\n if (\n visible !== false &&\n item.path &&\n !~item.path.indexOf('http') &&\n ~item.path.indexOf(':')\n ) {\n visible = false;\n }\n\n return {\n label: item.label,\n icon: item.icon,\n path: item.path,\n children: item.children,\n className: item.className,\n visible\n };\n });\n }\n\n return [\n {\n label: self.__('App.navigation'),\n children: []\n }\n ];\n },\n get bcn() {\n return self.activePage?.bcn || [];\n },\n\n get pageData() {\n return createObject(self.data, {\n params: self.activePage?.params || {}\n });\n }\n }))\n .actions(self => ({\n toggleFolded() {\n self.folded = !self.folded;\n },\n toggleOffScreen() {\n self.offScreen = !self.offScreen;\n },\n\n setPages(pages: any) {\n if (pages && !Array.isArray(pages)) {\n pages = [pages];\n } else if (!Array.isArray(pages)) {\n return;\n }\n\n pages = mapTree(pages, (item, index, level, paths) => {\n let path = item.link || item.url;\n\n if (item.schema || item.schemaApi) {\n path =\n item.url ||\n `/${paths\n .map(item => item.index)\n .concat(index)\n .map(index => `page-${index + 1}`)\n .join('/')}`;\n\n if (path && path[0] !== '/') {\n let parentPath = '/';\n let index = paths.length;\n while (index > 0) {\n const item = paths[index - 1];\n\n if (item?.path) {\n parentPath = item.path + '/';\n break;\n }\n index--;\n }\n\n path = parentPath + path;\n }\n }\n\n return {\n ...item,\n index,\n id: item.id || guid(),\n label: item.label,\n icon: item.icon,\n path\n };\n });\n self.pages = pages;\n },\n\n rewrite(to: string, env: RendererEnv) {\n let page = findTree(self.pages, item => {\n if (item.path === to) {\n return true;\n }\n return false;\n });\n\n if (page) {\n this.setActivePage(page, env);\n }\n },\n\n setActivePage(page: any, env: RendererEnv, params?: any) {\n // 同一个页面直接返回。\n if (self.activePage?.id === page.id) {\n return;\n }\n\n let bcn: Array<any> = [];\n\n findTree(self.pages, (item, index, level, paths) => {\n if (item.id === page.id) {\n bcn = paths.filter(item => item.path && item.label);\n bcn.push({\n ...item,\n path: ''\n });\n self.__;\n if (bcn[0].path !== '/') {\n bcn.unshift({\n label: self.__('App.home'),\n path: '/'\n });\n }\n return true;\n }\n return false;\n });\n\n self.activePage = {\n ...page,\n params: params || {},\n bcn\n };\n\n if (page.label) {\n document.title = page.label;\n }\n\n if (page.schema) {\n self.schema = page.schema;\n self.schemaKey = '' + Date.now();\n } else if (page.schemaApi) {\n self.schema = null;\n self.fetchSchema(page.schemaApi, self.activePage, {method: 'get'});\n } else if (page.redirect) {\n env.jumpTo(page.redirect);\n return;\n } else if (page.rewrite) {\n this.rewrite(page.rewrite, env);\n } else {\n self.schema = null;\n self.schemaKey = '';\n }\n },\n\n updateActivePage(env: RendererEnv) {\n if (!Array.isArray(self.pages)) {\n return;\n }\n let matched: any;\n\n let page = findTree(self.pages, item => {\n if (item.path) {\n matched = env.isCurrentUrl(item.path, item);\n\n if (matched) {\n return true;\n }\n }\n return false;\n });\n\n if (page) {\n this.setActivePage(\n page,\n env,\n typeof matched === 'object' ? matched.params : undefined\n );\n } else {\n const page = findTree(self.pages, item => item.isDefaultPage);\n\n if (page) {\n this.setActivePage(page, env);\n } else {\n self.activePage = null;\n }\n }\n }\n }));\n\nexport type IAppStore = Instance<typeof AppStore>;\nexport type SAppStore = SnapshotIn<typeof AppStore>;\n"
12
12
  ]
13
13
  }
@@ -74,7 +74,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
74
74
  readonly valid: boolean;
75
75
  readonly errClassNames: string;
76
76
  readonly lastSelectValue: string;
77
- getSelectedOptions: (value?: any) => any[];
77
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
78
78
  } & {
79
79
  focus: () => void;
80
80
  blur: () => void;
@@ -115,6 +115,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
115
115
  extendsOptions?: boolean | undefined;
116
116
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
117
117
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
118
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
118
119
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
119
120
  setLoading: (value: boolean) => void;
120
121
  setSubStore: (store: any) => void;
@@ -193,7 +194,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
193
194
  readonly valid: boolean;
194
195
  readonly errClassNames: string;
195
196
  readonly lastSelectValue: string;
196
- getSelectedOptions: (value?: any) => any[];
197
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
197
198
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
198
199
  id: import("mobx-state-tree").ISimpleType<string>;
199
200
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -260,7 +261,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
260
261
  readonly valid: boolean;
261
262
  readonly errClassNames: string;
262
263
  readonly lastSelectValue: string;
263
- getSelectedOptions: (value?: any) => any[];
264
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
264
265
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
265
266
  removeSubFormItem: (item: {
266
267
  id: string;
@@ -331,7 +332,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
331
332
  readonly valid: boolean;
332
333
  readonly errClassNames: string;
333
334
  readonly lastSelectValue: string;
334
- getSelectedOptions: (value?: any) => any[];
335
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
335
336
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
336
337
  id: import("mobx-state-tree").ISimpleType<string>;
337
338
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -398,7 +399,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
398
399
  readonly valid: boolean;
399
400
  readonly errClassNames: string;
400
401
  readonly lastSelectValue: string;
401
- getSelectedOptions: (value?: any) => any[];
402
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
402
403
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
403
404
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
404
405
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -466,7 +467,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
466
467
  readonly valid: boolean;
467
468
  readonly errClassNames: string;
468
469
  readonly lastSelectValue: string;
469
- getSelectedOptions: (value?: any) => any[];
470
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
470
471
  } & {
471
472
  focus: () => void;
472
473
  blur: () => void;
@@ -507,6 +508,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
507
508
  extendsOptions?: boolean | undefined;
508
509
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
509
510
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
511
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
510
512
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
511
513
  setLoading: (value: boolean) => void;
512
514
  setSubStore: (store: any) => void;
@@ -585,7 +587,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
585
587
  readonly valid: boolean;
586
588
  readonly errClassNames: string;
587
589
  readonly lastSelectValue: string;
588
- getSelectedOptions: (value?: any) => any[];
590
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
589
591
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
590
592
  id: import("mobx-state-tree").ISimpleType<string>;
591
593
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -652,7 +654,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
652
654
  readonly valid: boolean;
653
655
  readonly errClassNames: string;
654
656
  readonly lastSelectValue: string;
655
- getSelectedOptions: (value?: any) => any[];
657
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
656
658
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
657
659
  removeSubFormItem: (item: {
658
660
  id: string;
@@ -723,7 +725,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
723
725
  readonly valid: boolean;
724
726
  readonly errClassNames: string;
725
727
  readonly lastSelectValue: string;
726
- getSelectedOptions: (value?: any) => any[];
728
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
727
729
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
728
730
  id: import("mobx-state-tree").ISimpleType<string>;
729
731
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -790,7 +792,7 @@ export declare const UniqueGroup: import("mobx-state-tree").IModelType<{
790
792
  readonly valid: boolean;
791
793
  readonly errClassNames: string;
792
794
  readonly lastSelectValue: string;
793
- getSelectedOptions: (value?: any) => any[];
795
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
794
796
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
795
797
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>)[];
796
798
  } & {
@@ -890,7 +892,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
890
892
  readonly valid: boolean;
891
893
  readonly errClassNames: string;
892
894
  readonly lastSelectValue: string;
893
- getSelectedOptions: (value?: any) => any[];
895
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
894
896
  } & {
895
897
  focus: () => void;
896
898
  blur: () => void;
@@ -931,6 +933,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
931
933
  extendsOptions?: boolean | undefined;
932
934
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
933
935
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
936
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
934
937
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
935
938
  setLoading: (value: boolean) => void;
936
939
  setSubStore: (store: any) => void;
@@ -1009,7 +1012,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1009
1012
  readonly valid: boolean;
1010
1013
  readonly errClassNames: string;
1011
1014
  readonly lastSelectValue: string;
1012
- getSelectedOptions: (value?: any) => any[];
1015
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1013
1016
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1014
1017
  id: import("mobx-state-tree").ISimpleType<string>;
1015
1018
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -1076,7 +1079,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1076
1079
  readonly valid: boolean;
1077
1080
  readonly errClassNames: string;
1078
1081
  readonly lastSelectValue: string;
1079
- getSelectedOptions: (value?: any) => any[];
1082
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1080
1083
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
1081
1084
  removeSubFormItem: (item: {
1082
1085
  id: string;
@@ -1147,7 +1150,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1147
1150
  readonly valid: boolean;
1148
1151
  readonly errClassNames: string;
1149
1152
  readonly lastSelectValue: string;
1150
- getSelectedOptions: (value?: any) => any[];
1153
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1151
1154
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1152
1155
  id: import("mobx-state-tree").ISimpleType<string>;
1153
1156
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -1214,7 +1217,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1214
1217
  readonly valid: boolean;
1215
1218
  readonly errClassNames: string;
1216
1219
  readonly lastSelectValue: string;
1217
- getSelectedOptions: (value?: any) => any[];
1220
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1218
1221
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
1219
1222
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1220
1223
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -1282,7 +1285,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1282
1285
  readonly valid: boolean;
1283
1286
  readonly errClassNames: string;
1284
1287
  readonly lastSelectValue: string;
1285
- getSelectedOptions: (value?: any) => any[];
1288
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1286
1289
  } & {
1287
1290
  focus: () => void;
1288
1291
  blur: () => void;
@@ -1323,6 +1326,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1323
1326
  extendsOptions?: boolean | undefined;
1324
1327
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
1325
1328
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
1329
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
1326
1330
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
1327
1331
  setLoading: (value: boolean) => void;
1328
1332
  setSubStore: (store: any) => void;
@@ -1401,7 +1405,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1401
1405
  readonly valid: boolean;
1402
1406
  readonly errClassNames: string;
1403
1407
  readonly lastSelectValue: string;
1404
- getSelectedOptions: (value?: any) => any[];
1408
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1405
1409
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1406
1410
  id: import("mobx-state-tree").ISimpleType<string>;
1407
1411
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -1468,7 +1472,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1468
1472
  readonly valid: boolean;
1469
1473
  readonly errClassNames: string;
1470
1474
  readonly lastSelectValue: string;
1471
- getSelectedOptions: (value?: any) => any[];
1475
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1472
1476
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
1473
1477
  removeSubFormItem: (item: {
1474
1478
  id: string;
@@ -1539,7 +1543,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1539
1543
  readonly valid: boolean;
1540
1544
  readonly errClassNames: string;
1541
1545
  readonly lastSelectValue: string;
1542
- getSelectedOptions: (value?: any) => any[];
1546
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1543
1547
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1544
1548
  id: import("mobx-state-tree").ISimpleType<string>;
1545
1549
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -1606,7 +1610,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1606
1610
  readonly valid: boolean;
1607
1611
  readonly errClassNames: string;
1608
1612
  readonly lastSelectValue: string;
1609
- getSelectedOptions: (value?: any) => any[];
1613
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1610
1614
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
1611
1615
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>)[];
1612
1616
  } & {
@@ -1789,7 +1793,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1789
1793
  readonly valid: boolean;
1790
1794
  readonly errClassNames: string;
1791
1795
  readonly lastSelectValue: string;
1792
- getSelectedOptions: (value?: any) => any[];
1796
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1793
1797
  } & {
1794
1798
  focus: () => void;
1795
1799
  blur: () => void;
@@ -1830,6 +1834,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1830
1834
  extendsOptions?: boolean | undefined;
1831
1835
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
1832
1836
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
1837
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
1833
1838
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
1834
1839
  setLoading: (value: boolean) => void;
1835
1840
  setSubStore: (store: any) => void;
@@ -1908,7 +1913,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1908
1913
  readonly valid: boolean;
1909
1914
  readonly errClassNames: string;
1910
1915
  readonly lastSelectValue: string;
1911
- getSelectedOptions: (value?: any) => any[];
1916
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1912
1917
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
1913
1918
  id: import("mobx-state-tree").ISimpleType<string>;
1914
1919
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -1975,7 +1980,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
1975
1980
  readonly valid: boolean;
1976
1981
  readonly errClassNames: string;
1977
1982
  readonly lastSelectValue: string;
1978
- getSelectedOptions: (value?: any) => any[];
1983
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
1979
1984
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
1980
1985
  removeSubFormItem: (item: {
1981
1986
  id: string;
@@ -2046,7 +2051,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2046
2051
  readonly valid: boolean;
2047
2052
  readonly errClassNames: string;
2048
2053
  readonly lastSelectValue: string;
2049
- getSelectedOptions: (value?: any) => any[];
2054
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2050
2055
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2051
2056
  id: import("mobx-state-tree").ISimpleType<string>;
2052
2057
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -2113,7 +2118,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2113
2118
  readonly valid: boolean;
2114
2119
  readonly errClassNames: string;
2115
2120
  readonly lastSelectValue: string;
2116
- getSelectedOptions: (value?: any) => any[];
2121
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2117
2122
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
2118
2123
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2119
2124
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -2181,7 +2186,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2181
2186
  readonly valid: boolean;
2182
2187
  readonly errClassNames: string;
2183
2188
  readonly lastSelectValue: string;
2184
- getSelectedOptions: (value?: any) => any[];
2189
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2185
2190
  } & {
2186
2191
  focus: () => void;
2187
2192
  blur: () => void;
@@ -2222,6 +2227,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2222
2227
  extendsOptions?: boolean | undefined;
2223
2228
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
2224
2229
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
2230
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
2225
2231
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
2226
2232
  setLoading: (value: boolean) => void;
2227
2233
  setSubStore: (store: any) => void;
@@ -2300,7 +2306,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2300
2306
  readonly valid: boolean;
2301
2307
  readonly errClassNames: string;
2302
2308
  readonly lastSelectValue: string;
2303
- getSelectedOptions: (value?: any) => any[];
2309
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2304
2310
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2305
2311
  id: import("mobx-state-tree").ISimpleType<string>;
2306
2312
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -2367,7 +2373,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2367
2373
  readonly valid: boolean;
2368
2374
  readonly errClassNames: string;
2369
2375
  readonly lastSelectValue: string;
2370
- getSelectedOptions: (value?: any) => any[];
2376
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2371
2377
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
2372
2378
  removeSubFormItem: (item: {
2373
2379
  id: string;
@@ -2438,7 +2444,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2438
2444
  readonly valid: boolean;
2439
2445
  readonly errClassNames: string;
2440
2446
  readonly lastSelectValue: string;
2441
- getSelectedOptions: (value?: any) => any[];
2447
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2442
2448
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2443
2449
  id: import("mobx-state-tree").ISimpleType<string>;
2444
2450
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -2505,7 +2511,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2505
2511
  readonly valid: boolean;
2506
2512
  readonly errClassNames: string;
2507
2513
  readonly lastSelectValue: string;
2508
- getSelectedOptions: (value?: any) => any[];
2514
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2509
2515
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
2510
2516
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>)[];
2511
2517
  readonly errors: {
@@ -2589,7 +2595,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2589
2595
  readonly valid: boolean;
2590
2596
  readonly errClassNames: string;
2591
2597
  readonly lastSelectValue: string;
2592
- getSelectedOptions: (value?: any) => any[];
2598
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2593
2599
  } & {
2594
2600
  focus: () => void;
2595
2601
  blur: () => void;
@@ -2630,6 +2636,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2630
2636
  extendsOptions?: boolean | undefined;
2631
2637
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
2632
2638
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
2639
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
2633
2640
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
2634
2641
  setLoading: (value: boolean) => void;
2635
2642
  setSubStore: (store: any) => void;
@@ -2708,7 +2715,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2708
2715
  readonly valid: boolean;
2709
2716
  readonly errClassNames: string;
2710
2717
  readonly lastSelectValue: string;
2711
- getSelectedOptions: (value?: any) => any[];
2718
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2712
2719
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2713
2720
  id: import("mobx-state-tree").ISimpleType<string>;
2714
2721
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -2775,7 +2782,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2775
2782
  readonly valid: boolean;
2776
2783
  readonly errClassNames: string;
2777
2784
  readonly lastSelectValue: string;
2778
- getSelectedOptions: (value?: any) => any[];
2785
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2779
2786
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
2780
2787
  removeSubFormItem: (item: {
2781
2788
  id: string;
@@ -2846,7 +2853,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2846
2853
  readonly valid: boolean;
2847
2854
  readonly errClassNames: string;
2848
2855
  readonly lastSelectValue: string;
2849
- getSelectedOptions: (value?: any) => any[];
2856
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2850
2857
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2851
2858
  id: import("mobx-state-tree").ISimpleType<string>;
2852
2859
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -2913,7 +2920,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2913
2920
  readonly valid: boolean;
2914
2921
  readonly errClassNames: string;
2915
2922
  readonly lastSelectValue: string;
2916
- getSelectedOptions: (value?: any) => any[];
2923
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2917
2924
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
2918
2925
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
2919
2926
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -2981,7 +2988,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
2981
2988
  readonly valid: boolean;
2982
2989
  readonly errClassNames: string;
2983
2990
  readonly lastSelectValue: string;
2984
- getSelectedOptions: (value?: any) => any[];
2991
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
2985
2992
  } & {
2986
2993
  focus: () => void;
2987
2994
  blur: () => void;
@@ -3022,6 +3029,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3022
3029
  extendsOptions?: boolean | undefined;
3023
3030
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
3024
3031
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
3032
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
3025
3033
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
3026
3034
  setLoading: (value: boolean) => void;
3027
3035
  setSubStore: (store: any) => void;
@@ -3100,7 +3108,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3100
3108
  readonly valid: boolean;
3101
3109
  readonly errClassNames: string;
3102
3110
  readonly lastSelectValue: string;
3103
- getSelectedOptions: (value?: any) => any[];
3111
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3104
3112
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
3105
3113
  id: import("mobx-state-tree").ISimpleType<string>;
3106
3114
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -3167,7 +3175,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3167
3175
  readonly valid: boolean;
3168
3176
  readonly errClassNames: string;
3169
3177
  readonly lastSelectValue: string;
3170
- getSelectedOptions: (value?: any) => any[];
3178
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3171
3179
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
3172
3180
  removeSubFormItem: (item: {
3173
3181
  id: string;
@@ -3238,7 +3246,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3238
3246
  readonly valid: boolean;
3239
3247
  readonly errClassNames: string;
3240
3248
  readonly lastSelectValue: string;
3241
- getSelectedOptions: (value?: any) => any[];
3249
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3242
3250
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
3243
3251
  id: import("mobx-state-tree").ISimpleType<string>;
3244
3252
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -3305,7 +3313,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3305
3313
  readonly valid: boolean;
3306
3314
  readonly errClassNames: string;
3307
3315
  readonly lastSelectValue: string;
3308
- getSelectedOptions: (value?: any) => any[];
3316
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3309
3317
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
3310
3318
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
3311
3319
  getItemByName(name: string): ({
@@ -3377,7 +3385,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3377
3385
  readonly valid: boolean;
3378
3386
  readonly errClassNames: string;
3379
3387
  readonly lastSelectValue: string;
3380
- getSelectedOptions: (value?: any) => any[];
3388
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3381
3389
  } & {
3382
3390
  focus: () => void;
3383
3391
  blur: () => void;
@@ -3418,6 +3426,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3418
3426
  extendsOptions?: boolean | undefined;
3419
3427
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
3420
3428
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
3429
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
3421
3430
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
3422
3431
  setLoading: (value: boolean) => void;
3423
3432
  setSubStore: (store: any) => void;
@@ -3496,7 +3505,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3496
3505
  readonly valid: boolean;
3497
3506
  readonly errClassNames: string;
3498
3507
  readonly lastSelectValue: string;
3499
- getSelectedOptions: (value?: any) => any[];
3508
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3500
3509
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
3501
3510
  id: import("mobx-state-tree").ISimpleType<string>;
3502
3511
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -3563,7 +3572,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3563
3572
  readonly valid: boolean;
3564
3573
  readonly errClassNames: string;
3565
3574
  readonly lastSelectValue: string;
3566
- getSelectedOptions: (value?: any) => any[];
3575
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3567
3576
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
3568
3577
  removeSubFormItem: (item: {
3569
3578
  id: string;
@@ -3634,7 +3643,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3634
3643
  readonly valid: boolean;
3635
3644
  readonly errClassNames: string;
3636
3645
  readonly lastSelectValue: string;
3637
- getSelectedOptions: (value?: any) => any[];
3646
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3638
3647
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
3639
3648
  id: import("mobx-state-tree").ISimpleType<string>;
3640
3649
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -3701,7 +3710,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3701
3710
  readonly valid: boolean;
3702
3711
  readonly errClassNames: string;
3703
3712
  readonly lastSelectValue: string;
3704
- getSelectedOptions: (value?: any) => any[];
3713
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3705
3714
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
3706
3715
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
3707
3716
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -3769,7 +3778,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3769
3778
  readonly valid: boolean;
3770
3779
  readonly errClassNames: string;
3771
3780
  readonly lastSelectValue: string;
3772
- getSelectedOptions: (value?: any) => any[];
3781
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3773
3782
  } & {
3774
3783
  focus: () => void;
3775
3784
  blur: () => void;
@@ -3810,6 +3819,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3810
3819
  extendsOptions?: boolean | undefined;
3811
3820
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
3812
3821
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
3822
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
3813
3823
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
3814
3824
  setLoading: (value: boolean) => void;
3815
3825
  setSubStore: (store: any) => void;
@@ -3888,7 +3898,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3888
3898
  readonly valid: boolean;
3889
3899
  readonly errClassNames: string;
3890
3900
  readonly lastSelectValue: string;
3891
- getSelectedOptions: (value?: any) => any[];
3901
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3892
3902
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
3893
3903
  id: import("mobx-state-tree").ISimpleType<string>;
3894
3904
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -3955,7 +3965,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
3955
3965
  readonly valid: boolean;
3956
3966
  readonly errClassNames: string;
3957
3967
  readonly lastSelectValue: string;
3958
- getSelectedOptions: (value?: any) => any[];
3968
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
3959
3969
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
3960
3970
  removeSubFormItem: (item: {
3961
3971
  id: string;
@@ -4026,7 +4036,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4026
4036
  readonly valid: boolean;
4027
4037
  readonly errClassNames: string;
4028
4038
  readonly lastSelectValue: string;
4029
- getSelectedOptions: (value?: any) => any[];
4039
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4030
4040
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
4031
4041
  id: import("mobx-state-tree").ISimpleType<string>;
4032
4042
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -4093,7 +4103,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4093
4103
  readonly valid: boolean;
4094
4104
  readonly errClassNames: string;
4095
4105
  readonly lastSelectValue: string;
4096
- getSelectedOptions: (value?: any) => any[];
4106
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4097
4107
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
4098
4108
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
4099
4109
  getItemsByName(name: string): ({
@@ -4165,7 +4175,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4165
4175
  readonly valid: boolean;
4166
4176
  readonly errClassNames: string;
4167
4177
  readonly lastSelectValue: string;
4168
- getSelectedOptions: (value?: any) => any[];
4178
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4169
4179
  } & {
4170
4180
  focus: () => void;
4171
4181
  blur: () => void;
@@ -4206,6 +4216,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4206
4216
  extendsOptions?: boolean | undefined;
4207
4217
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
4208
4218
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
4219
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
4209
4220
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
4210
4221
  setLoading: (value: boolean) => void;
4211
4222
  setSubStore: (store: any) => void;
@@ -4284,7 +4295,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4284
4295
  readonly valid: boolean;
4285
4296
  readonly errClassNames: string;
4286
4297
  readonly lastSelectValue: string;
4287
- getSelectedOptions: (value?: any) => any[];
4298
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4288
4299
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
4289
4300
  id: import("mobx-state-tree").ISimpleType<string>;
4290
4301
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -4351,7 +4362,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4351
4362
  readonly valid: boolean;
4352
4363
  readonly errClassNames: string;
4353
4364
  readonly lastSelectValue: string;
4354
- getSelectedOptions: (value?: any) => any[];
4365
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4355
4366
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
4356
4367
  removeSubFormItem: (item: {
4357
4368
  id: string;
@@ -4422,7 +4433,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4422
4433
  readonly valid: boolean;
4423
4434
  readonly errClassNames: string;
4424
4435
  readonly lastSelectValue: string;
4425
- getSelectedOptions: (value?: any) => any[];
4436
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4426
4437
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
4427
4438
  id: import("mobx-state-tree").ISimpleType<string>;
4428
4439
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -4489,7 +4500,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4489
4500
  readonly valid: boolean;
4490
4501
  readonly errClassNames: string;
4491
4502
  readonly lastSelectValue: string;
4492
- getSelectedOptions: (value?: any) => any[];
4503
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4493
4504
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
4494
4505
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
4495
4506
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -4557,7 +4568,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4557
4568
  readonly valid: boolean;
4558
4569
  readonly errClassNames: string;
4559
4570
  readonly lastSelectValue: string;
4560
- getSelectedOptions: (value?: any) => any[];
4571
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4561
4572
  } & {
4562
4573
  focus: () => void;
4563
4574
  blur: () => void;
@@ -4598,6 +4609,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4598
4609
  extendsOptions?: boolean | undefined;
4599
4610
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
4600
4611
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
4612
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
4601
4613
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
4602
4614
  setLoading: (value: boolean) => void;
4603
4615
  setSubStore: (store: any) => void;
@@ -4676,7 +4688,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4676
4688
  readonly valid: boolean;
4677
4689
  readonly errClassNames: string;
4678
4690
  readonly lastSelectValue: string;
4679
- getSelectedOptions: (value?: any) => any[];
4691
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4680
4692
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
4681
4693
  id: import("mobx-state-tree").ISimpleType<string>;
4682
4694
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -4743,7 +4755,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4743
4755
  readonly valid: boolean;
4744
4756
  readonly errClassNames: string;
4745
4757
  readonly lastSelectValue: string;
4746
- getSelectedOptions: (value?: any) => any[];
4758
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4747
4759
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
4748
4760
  removeSubFormItem: (item: {
4749
4761
  id: string;
@@ -4814,7 +4826,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4814
4826
  readonly valid: boolean;
4815
4827
  readonly errClassNames: string;
4816
4828
  readonly lastSelectValue: string;
4817
- getSelectedOptions: (value?: any) => any[];
4829
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4818
4830
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
4819
4831
  id: import("mobx-state-tree").ISimpleType<string>;
4820
4832
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -4881,7 +4893,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
4881
4893
  readonly valid: boolean;
4882
4894
  readonly errClassNames: string;
4883
4895
  readonly lastSelectValue: string;
4884
- getSelectedOptions: (value?: any) => any[];
4896
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
4885
4897
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
4886
4898
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>)[];
4887
4899
  readonly valid: boolean;
@@ -5065,7 +5077,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5065
5077
  readonly valid: boolean;
5066
5078
  readonly errClassNames: string;
5067
5079
  readonly lastSelectValue: string;
5068
- getSelectedOptions: (value?: any) => any[];
5080
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5069
5081
  } & {
5070
5082
  focus: () => void;
5071
5083
  blur: () => void;
@@ -5106,6 +5118,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5106
5118
  extendsOptions?: boolean | undefined;
5107
5119
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
5108
5120
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
5121
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
5109
5122
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
5110
5123
  setLoading: (value: boolean) => void;
5111
5124
  setSubStore: (store: any) => void;
@@ -5184,7 +5197,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5184
5197
  readonly valid: boolean;
5185
5198
  readonly errClassNames: string;
5186
5199
  readonly lastSelectValue: string;
5187
- getSelectedOptions: (value?: any) => any[];
5200
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5188
5201
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
5189
5202
  id: import("mobx-state-tree").ISimpleType<string>;
5190
5203
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -5251,7 +5264,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5251
5264
  readonly valid: boolean;
5252
5265
  readonly errClassNames: string;
5253
5266
  readonly lastSelectValue: string;
5254
- getSelectedOptions: (value?: any) => any[];
5267
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5255
5268
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
5256
5269
  removeSubFormItem: (item: {
5257
5270
  id: string;
@@ -5322,7 +5335,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5322
5335
  readonly valid: boolean;
5323
5336
  readonly errClassNames: string;
5324
5337
  readonly lastSelectValue: string;
5325
- getSelectedOptions: (value?: any) => any[];
5338
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5326
5339
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
5327
5340
  id: import("mobx-state-tree").ISimpleType<string>;
5328
5341
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -5389,7 +5402,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5389
5402
  readonly valid: boolean;
5390
5403
  readonly errClassNames: string;
5391
5404
  readonly lastSelectValue: string;
5392
- getSelectedOptions: (value?: any) => any[];
5405
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5393
5406
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
5394
5407
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
5395
5408
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -5457,7 +5470,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5457
5470
  readonly valid: boolean;
5458
5471
  readonly errClassNames: string;
5459
5472
  readonly lastSelectValue: string;
5460
- getSelectedOptions: (value?: any) => any[];
5473
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5461
5474
  } & {
5462
5475
  focus: () => void;
5463
5476
  blur: () => void;
@@ -5498,6 +5511,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5498
5511
  extendsOptions?: boolean | undefined;
5499
5512
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
5500
5513
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
5514
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
5501
5515
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
5502
5516
  setLoading: (value: boolean) => void;
5503
5517
  setSubStore: (store: any) => void;
@@ -5576,7 +5590,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5576
5590
  readonly valid: boolean;
5577
5591
  readonly errClassNames: string;
5578
5592
  readonly lastSelectValue: string;
5579
- getSelectedOptions: (value?: any) => any[];
5593
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5580
5594
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
5581
5595
  id: import("mobx-state-tree").ISimpleType<string>;
5582
5596
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -5643,7 +5657,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5643
5657
  readonly valid: boolean;
5644
5658
  readonly errClassNames: string;
5645
5659
  readonly lastSelectValue: string;
5646
- getSelectedOptions: (value?: any) => any[];
5660
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5647
5661
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
5648
5662
  removeSubFormItem: (item: {
5649
5663
  id: string;
@@ -5714,7 +5728,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5714
5728
  readonly valid: boolean;
5715
5729
  readonly errClassNames: string;
5716
5730
  readonly lastSelectValue: string;
5717
- getSelectedOptions: (value?: any) => any[];
5731
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5718
5732
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
5719
5733
  id: import("mobx-state-tree").ISimpleType<string>;
5720
5734
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -5781,7 +5795,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5781
5795
  readonly valid: boolean;
5782
5796
  readonly errClassNames: string;
5783
5797
  readonly lastSelectValue: string;
5784
- getSelectedOptions: (value?: any) => any[];
5798
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5785
5799
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
5786
5800
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>)[];
5787
5801
  readonly errors: {
@@ -5865,7 +5879,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5865
5879
  readonly valid: boolean;
5866
5880
  readonly errClassNames: string;
5867
5881
  readonly lastSelectValue: string;
5868
- getSelectedOptions: (value?: any) => any[];
5882
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5869
5883
  } & {
5870
5884
  focus: () => void;
5871
5885
  blur: () => void;
@@ -5906,6 +5920,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5906
5920
  extendsOptions?: boolean | undefined;
5907
5921
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
5908
5922
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
5923
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
5909
5924
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
5910
5925
  setLoading: (value: boolean) => void;
5911
5926
  setSubStore: (store: any) => void;
@@ -5984,7 +5999,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
5984
5999
  readonly valid: boolean;
5985
6000
  readonly errClassNames: string;
5986
6001
  readonly lastSelectValue: string;
5987
- getSelectedOptions: (value?: any) => any[];
6002
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
5988
6003
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
5989
6004
  id: import("mobx-state-tree").ISimpleType<string>;
5990
6005
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -6051,7 +6066,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6051
6066
  readonly valid: boolean;
6052
6067
  readonly errClassNames: string;
6053
6068
  readonly lastSelectValue: string;
6054
- getSelectedOptions: (value?: any) => any[];
6069
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6055
6070
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
6056
6071
  removeSubFormItem: (item: {
6057
6072
  id: string;
@@ -6122,7 +6137,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6122
6137
  readonly valid: boolean;
6123
6138
  readonly errClassNames: string;
6124
6139
  readonly lastSelectValue: string;
6125
- getSelectedOptions: (value?: any) => any[];
6140
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6126
6141
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6127
6142
  id: import("mobx-state-tree").ISimpleType<string>;
6128
6143
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -6189,7 +6204,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6189
6204
  readonly valid: boolean;
6190
6205
  readonly errClassNames: string;
6191
6206
  readonly lastSelectValue: string;
6192
- getSelectedOptions: (value?: any) => any[];
6207
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6193
6208
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
6194
6209
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6195
6210
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -6257,7 +6272,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6257
6272
  readonly valid: boolean;
6258
6273
  readonly errClassNames: string;
6259
6274
  readonly lastSelectValue: string;
6260
- getSelectedOptions: (value?: any) => any[];
6275
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6261
6276
  } & {
6262
6277
  focus: () => void;
6263
6278
  blur: () => void;
@@ -6298,6 +6313,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6298
6313
  extendsOptions?: boolean | undefined;
6299
6314
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
6300
6315
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
6316
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
6301
6317
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
6302
6318
  setLoading: (value: boolean) => void;
6303
6319
  setSubStore: (store: any) => void;
@@ -6376,7 +6392,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6376
6392
  readonly valid: boolean;
6377
6393
  readonly errClassNames: string;
6378
6394
  readonly lastSelectValue: string;
6379
- getSelectedOptions: (value?: any) => any[];
6395
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6380
6396
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6381
6397
  id: import("mobx-state-tree").ISimpleType<string>;
6382
6398
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -6443,7 +6459,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6443
6459
  readonly valid: boolean;
6444
6460
  readonly errClassNames: string;
6445
6461
  readonly lastSelectValue: string;
6446
- getSelectedOptions: (value?: any) => any[];
6462
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6447
6463
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
6448
6464
  removeSubFormItem: (item: {
6449
6465
  id: string;
@@ -6514,7 +6530,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6514
6530
  readonly valid: boolean;
6515
6531
  readonly errClassNames: string;
6516
6532
  readonly lastSelectValue: string;
6517
- getSelectedOptions: (value?: any) => any[];
6533
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6518
6534
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6519
6535
  id: import("mobx-state-tree").ISimpleType<string>;
6520
6536
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -6581,7 +6597,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6581
6597
  readonly valid: boolean;
6582
6598
  readonly errClassNames: string;
6583
6599
  readonly lastSelectValue: string;
6584
- getSelectedOptions: (value?: any) => any[];
6600
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6585
6601
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
6586
6602
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
6587
6603
  getItemByName(name: string): ({
@@ -6653,7 +6669,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6653
6669
  readonly valid: boolean;
6654
6670
  readonly errClassNames: string;
6655
6671
  readonly lastSelectValue: string;
6656
- getSelectedOptions: (value?: any) => any[];
6672
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6657
6673
  } & {
6658
6674
  focus: () => void;
6659
6675
  blur: () => void;
@@ -6694,6 +6710,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6694
6710
  extendsOptions?: boolean | undefined;
6695
6711
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
6696
6712
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
6713
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
6697
6714
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
6698
6715
  setLoading: (value: boolean) => void;
6699
6716
  setSubStore: (store: any) => void;
@@ -6772,7 +6789,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6772
6789
  readonly valid: boolean;
6773
6790
  readonly errClassNames: string;
6774
6791
  readonly lastSelectValue: string;
6775
- getSelectedOptions: (value?: any) => any[];
6792
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6776
6793
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6777
6794
  id: import("mobx-state-tree").ISimpleType<string>;
6778
6795
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -6839,7 +6856,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6839
6856
  readonly valid: boolean;
6840
6857
  readonly errClassNames: string;
6841
6858
  readonly lastSelectValue: string;
6842
- getSelectedOptions: (value?: any) => any[];
6859
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6843
6860
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
6844
6861
  removeSubFormItem: (item: {
6845
6862
  id: string;
@@ -6910,7 +6927,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6910
6927
  readonly valid: boolean;
6911
6928
  readonly errClassNames: string;
6912
6929
  readonly lastSelectValue: string;
6913
- getSelectedOptions: (value?: any) => any[];
6930
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6914
6931
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6915
6932
  id: import("mobx-state-tree").ISimpleType<string>;
6916
6933
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -6977,7 +6994,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
6977
6994
  readonly valid: boolean;
6978
6995
  readonly errClassNames: string;
6979
6996
  readonly lastSelectValue: string;
6980
- getSelectedOptions: (value?: any) => any[];
6997
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
6981
6998
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
6982
6999
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
6983
7000
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -7045,7 +7062,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7045
7062
  readonly valid: boolean;
7046
7063
  readonly errClassNames: string;
7047
7064
  readonly lastSelectValue: string;
7048
- getSelectedOptions: (value?: any) => any[];
7065
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7049
7066
  } & {
7050
7067
  focus: () => void;
7051
7068
  blur: () => void;
@@ -7086,6 +7103,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7086
7103
  extendsOptions?: boolean | undefined;
7087
7104
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
7088
7105
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
7106
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
7089
7107
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
7090
7108
  setLoading: (value: boolean) => void;
7091
7109
  setSubStore: (store: any) => void;
@@ -7164,7 +7182,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7164
7182
  readonly valid: boolean;
7165
7183
  readonly errClassNames: string;
7166
7184
  readonly lastSelectValue: string;
7167
- getSelectedOptions: (value?: any) => any[];
7185
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7168
7186
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
7169
7187
  id: import("mobx-state-tree").ISimpleType<string>;
7170
7188
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -7231,7 +7249,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7231
7249
  readonly valid: boolean;
7232
7250
  readonly errClassNames: string;
7233
7251
  readonly lastSelectValue: string;
7234
- getSelectedOptions: (value?: any) => any[];
7252
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7235
7253
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
7236
7254
  removeSubFormItem: (item: {
7237
7255
  id: string;
@@ -7302,7 +7320,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7302
7320
  readonly valid: boolean;
7303
7321
  readonly errClassNames: string;
7304
7322
  readonly lastSelectValue: string;
7305
- getSelectedOptions: (value?: any) => any[];
7323
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7306
7324
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
7307
7325
  id: import("mobx-state-tree").ISimpleType<string>;
7308
7326
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -7369,7 +7387,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7369
7387
  readonly valid: boolean;
7370
7388
  readonly errClassNames: string;
7371
7389
  readonly lastSelectValue: string;
7372
- getSelectedOptions: (value?: any) => any[];
7390
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7373
7391
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
7374
7392
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) | undefined;
7375
7393
  getItemsByName(name: string): ({
@@ -7441,7 +7459,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7441
7459
  readonly valid: boolean;
7442
7460
  readonly errClassNames: string;
7443
7461
  readonly lastSelectValue: string;
7444
- getSelectedOptions: (value?: any) => any[];
7462
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7445
7463
  } & {
7446
7464
  focus: () => void;
7447
7465
  blur: () => void;
@@ -7482,6 +7500,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7482
7500
  extendsOptions?: boolean | undefined;
7483
7501
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
7484
7502
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
7503
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
7485
7504
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
7486
7505
  setLoading: (value: boolean) => void;
7487
7506
  setSubStore: (store: any) => void;
@@ -7560,7 +7579,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7560
7579
  readonly valid: boolean;
7561
7580
  readonly errClassNames: string;
7562
7581
  readonly lastSelectValue: string;
7563
- getSelectedOptions: (value?: any) => any[];
7582
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7564
7583
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
7565
7584
  id: import("mobx-state-tree").ISimpleType<string>;
7566
7585
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -7627,7 +7646,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7627
7646
  readonly valid: boolean;
7628
7647
  readonly errClassNames: string;
7629
7648
  readonly lastSelectValue: string;
7630
- getSelectedOptions: (value?: any) => any[];
7649
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7631
7650
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
7632
7651
  removeSubFormItem: (item: {
7633
7652
  id: string;
@@ -7698,7 +7717,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7698
7717
  readonly valid: boolean;
7699
7718
  readonly errClassNames: string;
7700
7719
  readonly lastSelectValue: string;
7701
- getSelectedOptions: (value?: any) => any[];
7720
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7702
7721
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
7703
7722
  id: import("mobx-state-tree").ISimpleType<string>;
7704
7723
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -7765,7 +7784,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7765
7784
  readonly valid: boolean;
7766
7785
  readonly errClassNames: string;
7767
7786
  readonly lastSelectValue: string;
7768
- getSelectedOptions: (value?: any) => any[];
7787
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7769
7788
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
7770
7789
  } & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
7771
7790
  id: import("mobx-state-tree").ISimpleType<string>;
@@ -7833,7 +7852,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7833
7852
  readonly valid: boolean;
7834
7853
  readonly errClassNames: string;
7835
7854
  readonly lastSelectValue: string;
7836
- getSelectedOptions: (value?: any) => any[];
7855
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7837
7856
  } & {
7838
7857
  focus: () => void;
7839
7858
  blur: () => void;
@@ -7874,6 +7893,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7874
7893
  extendsOptions?: boolean | undefined;
7875
7894
  }) | undefined, clearValue?: boolean | undefined, onChange?: ((value: any) => void) | undefined, setErrorFlag?: boolean | undefined) => Promise<import("../types").Payload | null>;
7876
7895
  deferLoadOptions: (option: any, api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<import("../types").Payload | null>;
7896
+ expandTreeOptions: (nodePathArr: any[], api: import("../types").Api, data?: object | undefined, config?: import("../types").fetchOptions | undefined) => Promise<void | import("../types").Payload | null>;
7877
7897
  syncOptions: (originOptions?: any[] | undefined, data?: Object | undefined) => void;
7878
7898
  setLoading: (value: boolean) => void;
7879
7899
  setSubStore: (store: any) => void;
@@ -7952,7 +7972,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
7952
7972
  readonly valid: boolean;
7953
7973
  readonly errClassNames: string;
7954
7974
  readonly lastSelectValue: string;
7955
- getSelectedOptions: (value?: any) => any[];
7975
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
7956
7976
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
7957
7977
  id: import("mobx-state-tree").ISimpleType<string>;
7958
7978
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -8019,7 +8039,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
8019
8039
  readonly valid: boolean;
8020
8040
  readonly errClassNames: string;
8021
8041
  readonly lastSelectValue: string;
8022
- getSelectedOptions: (value?: any) => any[];
8042
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
8023
8043
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
8024
8044
  removeSubFormItem: (item: {
8025
8045
  id: string;
@@ -8090,7 +8110,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
8090
8110
  readonly valid: boolean;
8091
8111
  readonly errClassNames: string;
8092
8112
  readonly lastSelectValue: string;
8093
- getSelectedOptions: (value?: any) => any[];
8113
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
8094
8114
  } & any & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IModelType<{
8095
8115
  id: import("mobx-state-tree").ISimpleType<string>;
8096
8116
  path: import("mobx-state-tree").IType<string | undefined, string, string>;
@@ -8157,7 +8177,7 @@ export declare const ComboStore: import("mobx-state-tree").IModelType<{
8157
8177
  readonly valid: boolean;
8158
8178
  readonly errClassNames: string;
8159
8179
  readonly lastSelectValue: string;
8160
- getSelectedOptions: (value?: any) => any[];
8180
+ getSelectedOptions: (value?: any, nodeValueArray?: any[] | undefined) => any[];
8161
8181
  } & any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void;
8162
8182
  }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>)[];
8163
8183
  readonly valid: boolean;