pro-design-vue 1.3.20 → 1.3.22

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 (145) hide show
  1. package/dist/index.css +1 -1
  2. package/dist/index.full.js +1203 -1588
  3. package/dist/index.full.min.js +7 -9
  4. package/dist/index.full.min.js.map +1 -1
  5. package/dist/index.full.min.mjs +7 -9
  6. package/dist/index.full.min.mjs.map +1 -1
  7. package/dist/index.full.mjs +1204 -1589
  8. package/es/components/config-provider/src/typing.d.ts +3 -1
  9. package/es/components/table/src/components/Body/Body.vue.d.ts +270 -15
  10. package/es/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
  11. package/es/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
  12. package/es/components/table/src/components/Body/BodyExtraCell.vue.d.ts +6 -1
  13. package/es/components/table/src/components/Body/BodyRow.vue.d.ts +270 -15
  14. package/es/components/table/src/components/Body/BodyRows.vue.d.ts +270 -15
  15. package/es/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
  16. package/es/components/table/src/components/ExpandIcon.vue.d.ts +3 -0
  17. package/es/components/table/src/components/InteralTable.vue.d.ts +332 -19
  18. package/es/components/table/src/components/Table.d.ts +60 -0
  19. package/es/components/table/src/components/context/TableContext.d.ts +6 -1
  20. package/es/components/table/src/components/interface.d.ts +308 -23
  21. package/es/components/table/src/hooks/useCellProps.d.ts +5 -1
  22. package/es/components/table/src/hooks/useEdit.d.ts +24 -7
  23. package/es/components/table/src/utils/form-model.d.ts +25 -0
  24. package/es/components/table/src/utils/util.d.ts +1 -0
  25. package/es/index.d.ts +291 -5
  26. package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs +35 -0
  27. package/es/packages/components/table/src/components/Body/BodyCell.vue.mjs.map +1 -0
  28. package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs +129 -0
  29. package/es/packages/components/table/src/components/Body/BodyCell.vue2.mjs.map +1 -0
  30. package/es/packages/components/table/src/components/Body/BodyEditCell.mjs +256 -0
  31. package/es/packages/components/table/src/components/Body/BodyEditCell.mjs.map +1 -0
  32. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue.mjs +2 -1
  33. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue.mjs.map +1 -1
  34. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue2.mjs +1 -0
  35. package/es/packages/components/table/src/components/Body/BodyExtraCell.vue2.mjs.map +1 -1
  36. package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs +66 -9
  37. package/es/packages/components/table/src/components/Body/BodyRow.vue.mjs.map +1 -1
  38. package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs +26 -18
  39. package/es/packages/components/table/src/components/Body/BodyRow.vue2.mjs.map +1 -1
  40. package/es/packages/components/table/src/components/Body/{BodyCell.mjs → BodyTextCell.mjs} +25 -155
  41. package/es/packages/components/table/src/components/Body/BodyTextCell.mjs.map +1 -0
  42. package/es/packages/components/table/src/components/ExpandIcon.vue.mjs.map +1 -1
  43. package/es/packages/components/table/src/components/ExpandIcon.vue2.mjs +4 -2
  44. package/es/packages/components/table/src/components/ExpandIcon.vue2.mjs.map +1 -1
  45. package/es/packages/components/table/src/components/InteralTable.vue.mjs +24 -25
  46. package/es/packages/components/table/src/components/InteralTable.vue.mjs.map +1 -1
  47. package/es/packages/components/table/src/components/InteralTable.vue2.mjs +43 -97
  48. package/es/packages/components/table/src/components/InteralTable.vue2.mjs.map +1 -1
  49. package/es/packages/components/table/src/components/Table.mjs +24 -20
  50. package/es/packages/components/table/src/components/Table.mjs.map +1 -1
  51. package/es/packages/components/table/src/components/context/TableContext.mjs.map +1 -1
  52. package/es/packages/components/table/src/components/interface.mjs +28 -0
  53. package/es/packages/components/table/src/components/interface.mjs.map +1 -1
  54. package/es/packages/components/table/src/hooks/useCellProps.mjs +8 -0
  55. package/es/packages/components/table/src/hooks/useCellProps.mjs.map +1 -1
  56. package/es/packages/components/table/src/hooks/useEdit.mjs +293 -18
  57. package/es/packages/components/table/src/hooks/useEdit.mjs.map +1 -1
  58. package/es/packages/components/table/src/utils/form-model.mjs +98 -0
  59. package/es/packages/components/table/src/utils/form-model.mjs.map +1 -0
  60. package/es/packages/components/table/src/utils/util.mjs +4 -1
  61. package/es/packages/components/table/src/utils/util.mjs.map +1 -1
  62. package/es/packages/utils/dom.mjs +15 -1
  63. package/es/packages/utils/dom.mjs.map +1 -1
  64. package/es/packages/utils/index.mjs +1 -1
  65. package/es/utils/dom.d.ts +2 -0
  66. package/es/version.d.ts +1 -1
  67. package/es/version.mjs +1 -1
  68. package/es/version.mjs.map +1 -1
  69. package/lib/components/config-provider/src/typing.d.ts +3 -1
  70. package/lib/components/table/src/components/Body/Body.vue.d.ts +270 -15
  71. package/lib/components/table/src/components/Body/BodyCell.vue.d.ts +255 -0
  72. package/lib/components/table/src/components/Body/BodyEditCell.d.ts +60 -0
  73. package/lib/components/table/src/components/Body/BodyExtraCell.vue.d.ts +6 -1
  74. package/lib/components/table/src/components/Body/BodyRow.vue.d.ts +270 -15
  75. package/lib/components/table/src/components/Body/BodyRows.vue.d.ts +270 -15
  76. package/lib/components/table/src/components/Body/{BodyCell.d.ts → BodyTextCell.d.ts} +1 -7
  77. package/lib/components/table/src/components/ExpandIcon.vue.d.ts +3 -0
  78. package/lib/components/table/src/components/InteralTable.vue.d.ts +332 -19
  79. package/lib/components/table/src/components/Table.d.ts +60 -0
  80. package/lib/components/table/src/components/context/TableContext.d.ts +6 -1
  81. package/lib/components/table/src/components/interface.d.ts +308 -23
  82. package/lib/components/table/src/hooks/useCellProps.d.ts +5 -1
  83. package/lib/components/table/src/hooks/useEdit.d.ts +24 -7
  84. package/lib/components/table/src/utils/form-model.d.ts +25 -0
  85. package/lib/components/table/src/utils/util.d.ts +1 -0
  86. package/lib/index.d.ts +291 -5
  87. package/lib/packages/components/table/src/components/Body/BodyCell.vue.js +39 -0
  88. package/lib/packages/components/table/src/components/Body/BodyCell.vue.js.map +1 -0
  89. package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js +133 -0
  90. package/lib/packages/components/table/src/components/Body/BodyCell.vue2.js.map +1 -0
  91. package/lib/packages/components/table/src/components/Body/BodyEditCell.js +260 -0
  92. package/lib/packages/components/table/src/components/Body/BodyEditCell.js.map +1 -0
  93. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue.js +2 -1
  94. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue.js.map +1 -1
  95. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue2.js +1 -0
  96. package/lib/packages/components/table/src/components/Body/BodyExtraCell.vue2.js.map +1 -1
  97. package/lib/packages/components/table/src/components/Body/BodyRow.vue.js +66 -9
  98. package/lib/packages/components/table/src/components/Body/BodyRow.vue.js.map +1 -1
  99. package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js +24 -16
  100. package/lib/packages/components/table/src/components/Body/BodyRow.vue2.js.map +1 -1
  101. package/lib/packages/components/table/src/components/Body/{BodyCell.js → BodyTextCell.js} +24 -154
  102. package/lib/packages/components/table/src/components/Body/BodyTextCell.js.map +1 -0
  103. package/lib/packages/components/table/src/components/ExpandIcon.vue.js.map +1 -1
  104. package/lib/packages/components/table/src/components/ExpandIcon.vue2.js +4 -2
  105. package/lib/packages/components/table/src/components/ExpandIcon.vue2.js.map +1 -1
  106. package/lib/packages/components/table/src/components/InteralTable.vue.js +24 -25
  107. package/lib/packages/components/table/src/components/InteralTable.vue.js.map +1 -1
  108. package/lib/packages/components/table/src/components/InteralTable.vue2.js +43 -97
  109. package/lib/packages/components/table/src/components/InteralTable.vue2.js.map +1 -1
  110. package/lib/packages/components/table/src/components/Table.js +24 -20
  111. package/lib/packages/components/table/src/components/Table.js.map +1 -1
  112. package/lib/packages/components/table/src/components/context/TableContext.js.map +1 -1
  113. package/lib/packages/components/table/src/components/interface.js +28 -0
  114. package/lib/packages/components/table/src/components/interface.js.map +1 -1
  115. package/lib/packages/components/table/src/hooks/useCellProps.js +8 -0
  116. package/lib/packages/components/table/src/hooks/useCellProps.js.map +1 -1
  117. package/lib/packages/components/table/src/hooks/useEdit.js +292 -17
  118. package/lib/packages/components/table/src/hooks/useEdit.js.map +1 -1
  119. package/lib/packages/components/table/src/utils/form-model.js +102 -0
  120. package/lib/packages/components/table/src/utils/form-model.js.map +1 -0
  121. package/lib/packages/components/table/src/utils/util.js +4 -0
  122. package/lib/packages/components/table/src/utils/util.js.map +1 -1
  123. package/lib/packages/utils/dom.js +16 -0
  124. package/lib/packages/utils/dom.js.map +1 -1
  125. package/lib/packages/utils/index.js +2 -0
  126. package/lib/packages/utils/index.js.map +1 -1
  127. package/lib/utils/dom.d.ts +2 -0
  128. package/lib/version.d.ts +1 -1
  129. package/lib/version.js +1 -1
  130. package/lib/version.js.map +1 -1
  131. package/package.json +1 -1
  132. package/theme-chalk/index.css +1 -1
  133. package/theme-chalk/src/table/table.less +78 -25
  134. package/es/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
  135. package/es/packages/components/table/src/components/Body/BodyCell.mjs.map +0 -1
  136. package/es/packages/components/table/src/components/Body/EditInput.vue.mjs +0 -48
  137. package/es/packages/components/table/src/components/Body/EditInput.vue.mjs.map +0 -1
  138. package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs +0 -151
  139. package/es/packages/components/table/src/components/Body/EditInput.vue2.mjs.map +0 -1
  140. package/lib/components/table/src/components/Body/EditInput.vue.d.ts +0 -102
  141. package/lib/packages/components/table/src/components/Body/BodyCell.js.map +0 -1
  142. package/lib/packages/components/table/src/components/Body/EditInput.vue.js +0 -52
  143. package/lib/packages/components/table/src/components/Body/EditInput.vue.js.map +0 -1
  144. package/lib/packages/components/table/src/components/Body/EditInput.vue2.js +0 -155
  145. package/lib/packages/components/table/src/components/Body/EditInput.vue2.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Table.js","sources":["../../../../../../../../packages/components/table/src/components/Table.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-01 09:26:05\n * @LastEditors: shen\n * @LastEditTime: 2025-11-26 11:10:33\n * @Description:\n */\n\nimport { defineComponent, ref, computed, watch, unref, onMounted, nextTick } from 'vue'\nimport { Card } from 'ant-design-vue'\nimport { theme } from './config'\nimport { useProvideHover } from '../hooks/useHover'\nimport { useProvideLevel } from '../hooks/useLevel'\nimport { usePrefixCls, useState } from '@pro-design-vue/hooks'\nimport { convertChildrenToColumns, genColumnKey, isBordered } from '../utils/util'\nimport { tableProps } from './interface'\nimport { useFetchData } from '../hooks/useFetchData'\nimport { useContainer } from '../hooks/useContainer'\nimport { genProColumnToColumn } from '../utils/genProColumnToColumn'\nimport { columnSort } from '../utils/columnSort'\nimport { flatColumnsHandle } from '../utils/flatColumnsHandle'\nimport { merge, omit, omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\nimport { promiseTimeout } from '@vueuse/core'\nimport { isMacOsUserAgent, isIOSUserAgent } from '../utils/browser'\nimport useMergedState from '../hooks/useMergedState'\nimport InteralTable from './InteralTable.vue'\nimport ToolBar from './ToolBar/ToolBar.vue'\nimport Alert from './Alert.vue'\nimport FormRender from './Form/Form'\n\nimport type { ProFormItemType, ProFormActionType } from '@pro-design-vue/components/form'\nimport type {\n ColumnsType,\n GetRowKey,\n Key,\n OptionSearchProps,\n Position,\n RequestData,\n SorterResult,\n TableRowSelection,\n} from './interface'\nimport type { AppendCellRange } from '../hooks/RangeInterface'\nimport type { CustomSlotsType } from '../utils/type'\nimport type { ContextSlots } from './context/TableSlotsContext'\n\nexport default defineComponent({\n name: 'ProTable',\n inheritAttrs: false,\n props: tableProps(),\n slots: {} as CustomSlotsType<ContextSlots>,\n emits: ['keydown'],\n setup(props, { expose, slots, attrs, emit }) {\n const tableRef = ref()\n const { table, dark } = useProConfigInject()\n const prefixCls = usePrefixCls('table')\n const isApple = isMacOsUserAgent() || isIOSUserAgent()\n const { hoverRowKey } = useProvideHover({\n rowHoverDelay: computed(() => props.rowHoverDelay),\n rowHover: computed(() => props.rowHover ?? table?.value?.rowHover),\n })\n\n const mergedPrefixCls = computed(() => props.prefixCls ?? prefixCls)\n const mergeOptions = computed(() => {\n if (props.options === false) {\n return false\n }\n if (props.options === undefined) {\n return table?.value?.options\n }\n return { ...table?.value?.options, ...props.options }\n })\n\n useProvideLevel()\n\n watch(\n hoverRowKey,\n (newValue, oldValue) => {\n if (counter.rootDomRef.value) {\n counter.rootDomRef.value.style.removeProperty(\n `--${mergedPrefixCls.value}-row-bg-${oldValue}`,\n )\n counter.rootDomRef.value.style.setProperty(\n `--${mergedPrefixCls.value}-row-bg-${newValue}`,\n `hsl(var(--pro-accent))`,\n )\n }\n },\n { flush: 'post' },\n )\n\n const onKeydown = (ev: KeyboardEvent) => {\n ev.stopPropagation()\n emit('keydown', ev)\n }\n\n const fetchData = computed(() => {\n if (!props.request) return undefined\n\n return async (\n params?: Record<string, any>,\n sorters?: SorterResult<any>[],\n filter?: Record<string, (string | number)[] | null>,\n ) => {\n const actionParams = {\n ...(params || {}),\n ...(props.params || {}),\n }\n const response = await props.request!(actionParams, sorters, filter)\n return response as RequestData\n }\n })\n\n const actions = useFetchData(fetchData, props)\n const { dataSource, loading, pagination, pollingLoading, onTableChange, reload, reset } =\n actions\n const mergePagination = computed(() => {\n if (props.pagination === false) {\n return false\n }\n return pagination.value\n })\n\n const formSubmitLoading = computed(() => {\n if (typeof loading.value === 'boolean') {\n return loading.value\n } else if (typeof loading.value === 'object') {\n return loading.value.spinning\n } else {\n return undefined\n }\n })\n\n const onFormSearchSubmit = (values: any) => {\n // 判断search.onSearch返回值决定是否更新formSearch\n if (mergeOptions.value && mergeOptions.value.search) {\n const { name = 'keyword' } =\n mergeOptions.value.search === true ? {} : mergeOptions.value.search\n\n /** 如果传入的 onSearch 返回值为 false,则不要把options.search.name对应的值set到formSearch */\n const success = (mergeOptions.value.search as OptionSearchProps)?.onSearch?.(\n actions.keyword.value!,\n )\n\n if (success !== false) {\n actions.setFormSearch({\n ...values,\n [name]: actions.keyword.value,\n })\n return\n }\n }\n\n actions.setFormSearch(values)\n }\n\n const counter = useContainer(props)\n\n // ---------- 列计算相关 start -----------------\n const tableColumn = computed(() => {\n return genProColumnToColumn({\n columns: props.columns,\n counter,\n }).sort(columnSort(counter.columnsMap.value))\n })\n\n watch(\n tableColumn,\n () => {\n if (tableColumn.value && tableColumn.value.length > 0) {\n // 重新生成key的字符串用于排序\n const columnKeys = tableColumn.value.map((item) => genColumnKey(item.key, item.index))\n counter.setSortKeyColumns(columnKeys)\n }\n },\n {\n immediate: true,\n },\n )\n\n /** 需要遍历一下,不然不支持嵌套表格 */\n const columns = computed(() => {\n const loopFilter = (column: any[]): any[] => {\n return column\n .map((item) => {\n // 删掉不应该显示的\n const columnKey = genColumnKey(item.key, item.index)\n const config = counter.columnsMap.value[columnKey]\n if (config && config.show === false) {\n return false\n }\n if (item.children) {\n return {\n ...item,\n children: loopFilter(item.children),\n }\n }\n return item\n })\n .filter(Boolean)\n }\n return loopFilter(tableColumn.value)\n })\n\n const onColumnsChange = (rawColumns, action: 'resize' | 'drag') => {\n const newMap = { ...counter.columnsMap.value }\n const newColumns = rawColumns.map((item) => genColumnKey(item.key, item.index))\n if (action === 'resize') {\n const loopSetWidth = (rawColumns) => {\n rawColumns.forEach((item) => {\n const key = genColumnKey(item.key, item.index)\n const newSetting = { ...newMap[key] }\n if (item.children?.length) {\n loopSetWidth(item.children)\n } else {\n newSetting.width = item.width\n newMap[key] = newSetting\n }\n })\n }\n loopSetWidth(rawColumns)\n } else {\n newColumns.forEach((key, order) => {\n newMap[key] = { ...(newMap[key] || {}), order }\n })\n }\n counter.setColumnsMap(newMap)\n counter.setSortKeyColumns(newColumns)\n props['onUpdate:columns']?.(rawColumns as ColumnsType, action)\n }\n const formItems = computed(() => {\n if (props.search === false) {\n return []\n }\n if (props.search?.items?.length) {\n return props.search?.items\n }\n return flatColumnsHandle(props.columns)\n .filter((item) => {\n if (item.hideInSearch) {\n return false\n }\n return true\n })\n .map((item) => {\n const mergeItem = merge(\n {\n ...item,\n\n width: undefined,\n tooltip: item.headerTooltip,\n name: item.dataIndex,\n },\n item.search,\n )\n return omitKeysAndUndefined(mergeItem, [\n 'dataIndex',\n 'width',\n 'headerTooltip',\n 'search',\n ]) as ProFormItemType\n })\n })\n\n /** SelectedRowKeys受控处理selectRows */\n const preserveRecordsRef = ref(new Map<any, any>())\n // ============================ RowKey ============================\n const getRowKey = computed<GetRowKey>(() =>\n typeof props.rowKey == 'function'\n ? props.rowKey\n : (record: Record<string, any>) => {\n return record?.[(props.rowKey ?? (table?.value?.rowKey || 'id')) as string]\n },\n )\n\n watch([() => dataSource.value, getRowKey], () => {\n if (dataSource.value?.length) {\n dataSource.value.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n } else {\n onCleanSelected()\n }\n })\n\n /** 单选多选的相关逻辑 */\n const [selectedRowKeys, setSelectedRowKeys] = useMergedState<(string | number)[] | undefined>(\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection?.defaultSelectedRowKeys || [] : undefined),\n {\n value: computed(\n () =>\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection.selectedRowKeys : undefined),\n ),\n },\n )\n\n const rowSelection = computed<TableRowSelection>(() => ({\n selectedRowKeys: selectedRowKeys.value,\n preserveSelectedRowKeys: true,\n ...props.rowSelection,\n onChange: (selectedRowKeys: Key[], selectedRows: any[]) => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(selectedRowKeys, selectedRows)\n }\n props['onUpdate:selectedRowKeys']?.(selectedRowKeys, selectedRows)\n setSelectedRowKeys(selectedRowKeys)\n },\n }))\n\n const selectedRows = computed(() =>\n selectedRowKeys.value?.map((key) => preserveRecordsRef.value?.get(key)),\n )\n\n const onCleanSelected = (keys?: Key[]) => {\n let newSelectedRowKeys: Key[] = []\n if (keys?.length) {\n newSelectedRowKeys = selectedRowKeys.value?.filter((key) => !keys.includes(key)) ?? []\n }\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(newSelectedRowKeys, selectedRows.value ?? [])\n }\n props['onUpdate:selectedRowKeys']?.(newSelectedRowKeys, selectedRows.value ?? [])\n setSelectedRowKeys(newSelectedRowKeys)\n }\n\n const setRowSelected = (keys: Key[], rows?: []) => {\n if (keys?.length) {\n if (rows?.length) {\n rows.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n }\n const newKeys = Array.from(new Set([...(selectedRowKeys.value ?? []), ...keys]))\n setSelectedRowKeys(newKeys)\n }\n }\n\n const hideToolbar = computed(\n () =>\n mergeOptions.value === false &&\n !props.title &&\n !slots.title &&\n !slots.toolbar &&\n !slots.searchExtra &&\n !slots.toolbarActions,\n )\n\n /**\n * 是否需要 card 来包裹\n */\n const notNeedCardDom = computed(() => {\n if ((props.search === false || !formItems.value?.length) && props.toolBar === false) {\n return true\n }\n return false\n })\n\n const showTableCard = computed(() => {\n if (counter.hasFullScreen.value) {\n return false\n }\n return props.cardProps !== false && !notNeedCardDom.value\n })\n\n const cardBodyStyle = computed(() => {\n if (!showTableCard.value) return {}\n\n if (hideToolbar.value) {\n return {\n padding: 0,\n }\n }\n\n // if (props.toolBar) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n\n // if (props.toolBar && props.pagination === false) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n if (props.pagination !== false) {\n return {\n paddingBlockEnd: 0,\n }\n }\n return {}\n })\n\n const [formAction, setFormAction] = useState<ProFormActionType>()\n\n const [mergeShowAlert, setMergeShowAlert] = useMergedState<boolean>(\n !!selectedRowKeys.value?.length,\n {\n value: computed(() => props.showAlert!),\n onChange(val) {\n props['onUpdate:showAlert']?.(val)\n },\n },\n )\n\n watch(selectedRowKeys, (selectedKeys) => {\n if (selectedKeys?.length) {\n setMergeShowAlert(true)\n } else {\n setMergeShowAlert(false)\n }\n })\n\n const tableHeight = ref<number | undefined | string>(props.height)\n const calcTableHeight = async () => {\n if (props.autoHeight || counter.hasFullScreen.value) {\n await nextTick()\n const height =\n window.innerHeight -\n (tableRef.value?.rootRef?.getBoundingClientRect()?.top || 0) -\n (tableRef.value?.paginationRef?.getBoundingClientRect()?.height || 0) -\n (!isApple ? counter.scrollViewportHeight.value : 0)\n\n tableHeight.value =\n typeof props.autoHeight === 'function' && !counter.hasFullScreen.value\n ? props.autoHeight?.(height)\n : height\n } else {\n tableHeight.value = props.height\n }\n }\n\n watch([counter.tableSize, counter.scrollViewportHeight], () => {\n calcTableHeight()\n })\n\n onMounted(async () => {\n await promiseTimeout(0)\n calcTableHeight()\n })\n\n expose({\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => {\n tableRef.value?.scrollTo(pos, behavior)\n },\n scrollLeft: computed(() => {\n return unref(tableRef.value?.scrollLeft)\n }),\n scrollTop: computed(() => {\n return unref(tableRef.value?.scrollTop)\n }),\n bodyRef: computed(() => {\n return unref(tableRef.value?.bodyRef)\n }),\n rootRef: computed(() => {\n return unref(tableRef.value?.rootRef)\n }),\n paginationRef: computed(() => {\n return unref(tableRef.value?.paginationRef)\n }),\n copySelectedRange: () => {\n return tableRef.value?.copySelectedRange()\n },\n getSelectedRange: () => {\n return tableRef.value?.getSelectedRange()\n },\n clearAllSelectedRange: () => {\n return tableRef.value?.clearAllSelectedRange()\n },\n clearDataSource: () => {\n dataSource.value = []\n },\n cleanSelected: onCleanSelected,\n setSelected: setRowSelected,\n appendCellToSelectedRange: (params: AppendCellRange) => {\n return tableRef.value?.appendCellToSelectedRange(params)\n },\n openEditor: (cellInfos: any[]) => {\n return tableRef.value?.openEditor(cellInfos)\n },\n closeEditor: (cellInfos: any[]) => {\n return tableRef.value?.closeEditor(cellInfos)\n },\n reload,\n reset,\n calcTableHeight,\n formAction: computed(() => {\n return unref(formAction.value)\n }),\n formSearchSubmit: () => {\n const fieldValues = formAction.value?.getFieldsValue() ?? {}\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...fieldValues,\n })\n },\n getSearchParams: () => {\n return actions.searchParams.value ?? {}\n },\n })\n\n return () => {\n const { expandIcon = slots.expandIcon, expandedRowRender = slots.expandedRowRender } = props\n const mergeColumns = columns.value || convertChildrenToColumns(slots.default?.()) || []\n let tableDom = (\n <>\n {props.toolBar !== false && !hideToolbar.value && (\n <ToolBar\n title={props.title}\n subTitle={props.subTitle}\n tooltip={props.tooltip}\n prefixCls={mergedPrefixCls.value}\n options={mergeOptions.value}\n actionsRef={{\n ...actions,\n fullScreen: () => {\n counter.hasFullScreen.value = !counter.hasFullScreen.value\n calcTableHeight()\n },\n }}\n tableColumn={tableColumn.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n v-slots={{\n toolbar: slots.toolbar,\n title: slots.title,\n searchExtra: slots.searchExtra,\n actions: slots.toolbarActions,\n bottom: slots.toolbarBottom,\n top: slots.toolbarTop,\n }}\n onCleanSelected={onCleanSelected}\n onFormSearchSubmit={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {!!props.rowSelection &&\n props.rowSelection?.type !== 'radio' &&\n props.alwaysShowAlert !== false &&\n mergeShowAlert.value && (\n <Alert\n prefixCls={mergedPrefixCls.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n onCleanSelected={onCleanSelected}\n actionsRef={actions}\n v-slots={{ info: slots.alertInfo, actions: slots.alertActions, alert: slots.alert }}\n />\n )}\n <InteralTable\n ref={tableRef}\n {...omit(props, [\n 'onChange',\n 'onUpdate:pagination',\n 'onUpdate:selectedRowKeys',\n 'onUpdate:columns',\n ])}\n height={tableHeight.value}\n virtual={!!props.autoHeight || !!counter.hasFullScreen.value || props.virtual}\n prefixCls={mergedPrefixCls.value}\n columns={mergeColumns || []}\n size={counter.tableSize.value}\n dataSource={dataSource.value}\n loading={loading.value}\n rowSelection={props.rowSelection ? rowSelection.value : undefined}\n pagination={mergePagination.value}\n expandIcon={expandIcon}\n expandedRowRender={expandedRowRender}\n hasContextmenuPopup={!!slots.contextmenuPopup}\n onChange={onTableChange}\n onUpdate:columns={onColumnsChange}\n v-slots={{\n ...slots,\n footer: props.footer || slots.footer,\n }}\n />\n </>\n )\n\n if (showTableCard.value) {\n tableDom = (\n <Card\n bordered={isBordered(\n 'table',\n props.cardBordered ?? table?.value?.cardBordered ?? dark?.value,\n )}\n bodyStyle={cardBodyStyle.value}\n {...props.cardProps}\n >\n {tableDom}\n </Card>\n )\n }\n\n return (\n <div\n ref={counter.rootDomRef}\n {...attrs}\n class={[\n `${mergedPrefixCls.value}-wrapper ${props.bordered ? mergedPrefixCls.value + '-wrapper-bordered' : ''} ${\n 'dark' === theme.value ? mergedPrefixCls.value + '-wrapper-dark' : ''\n } ${pollingLoading.value ? mergedPrefixCls.value + '-wrapper-polling' : ''}`,\n {\n [`${mergedPrefixCls.value}-maximize`]: counter.hasFullScreen.value,\n },\n attrs.class,\n ]}\n onKeydown={onKeydown}\n >\n {props.search !== false && !!formItems.value?.length && (\n <FormRender\n prefixCls={mergedPrefixCls.value}\n items={formItems.value}\n cardBordered={props.cardBordered ?? table?.value?.cardBordered ?? dark?.value}\n search={props.search}\n tableShowCard={showTableCard.value}\n loading={formSubmitLoading.value}\n beforeSearchSubmit={props.beforeSearchSubmit}\n setFormAction={setFormAction}\n manual={props.manual || props.manualRequest}\n v-slots={slots}\n onReset={props.onReset}\n onSubmit={props.onSubmit}\n onFormSearchSubmit={onFormSearchSubmit}\n onSearchTabChange={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n onCollapse={calcTableHeight}\n />\n )}\n {tableDom}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","tableProps","slots","emits","setup","expose","attrs","emit","tableRef","ref","table","dark","useProConfigInject","prefixCls","usePrefixCls","isApple","isMacOsUserAgent","isIOSUserAgent","hoverRowKey","useProvideHover","rowHoverDelay","computed","rowHover","_a","_b","value","mergedPrefixCls","mergeOptions","options","undefined","useProvideLevel","watch","newValue","oldValue","counter","rootDomRef","style","removeProperty","setProperty","flush","onKeydown","ev","stopPropagation","fetchData","request","params","sorters","filter","actionParams","response","actions","useFetchData","dataSource","loading","pagination","pollingLoading","onTableChange","reload","reset","mergePagination","formSubmitLoading","spinning","onFormSearchSubmit","values","search","success","onSearch","keyword","setFormSearch","useContainer","tableColumn","genProColumnToColumn","columns","sort","columnSort","columnsMap","length","columnKeys","map","item","genColumnKey","key","index","setSortKeyColumns","immediate","loopFilter","column","columnKey","config","show","children","Boolean","onColumnsChange","rawColumns","action","newMap","newColumns","loopSetWidth","forEach","newSetting","width","order","setColumnsMap","formItems","items","flatColumnsHandle","hideInSearch","mergeItem","merge","tooltip","headerTooltip","dataIndex","omitKeysAndUndefined","preserveRecordsRef","Map","getRowKey","rowKey","record","data","dataRowKey","set","onCleanSelected","selectedRowKeys","setSelectedRowKeys","useMergedState","rowSelection","defaultSelectedRowKeys","preserveSelectedRowKeys","onChange","selectedRows","get","keys","newSelectedRowKeys","includes","setRowSelected","rows","newKeys","Array","from","Set","hideToolbar","title","toolbar","searchExtra","toolbarActions","notNeedCardDom","toolBar","showTableCard","hasFullScreen","cardProps","cardBodyStyle","padding","paddingBlockEnd","formAction","setFormAction","useState","mergeShowAlert","setMergeShowAlert","showAlert","val","selectedKeys","tableHeight","height","calcTableHeight","autoHeight","nextTick","window","innerHeight","rootRef","getBoundingClientRect","top","paginationRef","scrollViewportHeight","tableSize","onMounted","promiseTimeout","scrollTo","pos","behavior","scrollLeft","unref","scrollTop","bodyRef","copySelectedRange","getSelectedRange","clearAllSelectedRange","clearDataSource","cleanSelected","setSelected","appendCellToSelectedRange","openEditor","cellInfos","closeEditor","formSearchSubmit","fieldValues","getFieldsValue","formSearch","getSearchParams","searchParams","expandIcon","expandedRowRender","mergeColumns","convertChildrenToColumns","default","tableDom","_createVNode","_Fragment","ToolBar","subTitle","fullScreen","newValues","bottom","toolbarBottom","toolbarTop","type","alwaysShowAlert","Alert","info","alertInfo","alertActions","alert","InteralTable","_mergeProps","omit","virtual","contextmenuPopup","footer","_tableDom","Card","isBordered","cardBordered","bordered","theme","class","FormRender","beforeSearchSubmit","manual","manualRequest","onReset","onSubmit"],"mappings":"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"}
1
+ {"version":3,"file":"Table.js","sources":["../../../../../../../../packages/components/table/src/components/Table.tsx"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-01 09:26:05\n * @LastEditors: shen\n * @LastEditTime: 2025-12-02 17:08:47\n * @Description:\n */\n\nimport { defineComponent, ref, computed, watch, unref, onMounted, nextTick } from 'vue'\nimport { Card } from 'ant-design-vue'\nimport { theme } from './config'\nimport { useProvideHover } from '../hooks/useHover'\nimport { useProvideLevel } from '../hooks/useLevel'\nimport { usePrefixCls, useState } from '@pro-design-vue/hooks'\nimport { convertChildrenToColumns, genColumnKey, isBordered } from '../utils/util'\nimport { tableProps } from './interface'\nimport { useFetchData } from '../hooks/useFetchData'\nimport { useContainer } from '../hooks/useContainer'\nimport { genProColumnToColumn } from '../utils/genProColumnToColumn'\nimport { columnSort } from '../utils/columnSort'\nimport { flatColumnsHandle } from '../utils/flatColumnsHandle'\nimport { merge, omit, omitKeysAndUndefined } from '@pro-design-vue/utils'\nimport { useProConfigInject } from '@pro-design-vue/components/config-provider'\nimport { promiseTimeout } from '@vueuse/core'\nimport { isMacOsUserAgent, isIOSUserAgent } from '../utils/browser'\nimport useMergedState from '../hooks/useMergedState'\nimport InteralTable from './InteralTable.vue'\nimport ToolBar from './ToolBar/ToolBar.vue'\nimport Alert from './Alert.vue'\nimport FormRender from './Form/Form'\n\nimport type { ProFormItemType, ProFormActionType } from '@pro-design-vue/components/form'\nimport type {\n AddLineOptions,\n ColumnsType,\n GetRowKey,\n Key,\n OptionSearchProps,\n Position,\n RequestData,\n SorterResult,\n TableRowSelection,\n} from './interface'\nimport type { AppendCellRange } from '../hooks/RangeInterface'\nimport type { CustomSlotsType } from '../utils/type'\nimport type { ContextSlots } from './context/TableSlotsContext'\n\nexport default defineComponent({\n name: 'ProTable',\n inheritAttrs: false,\n props: tableProps(),\n slots: {} as CustomSlotsType<ContextSlots>,\n emits: ['keydown'],\n setup(props, { expose, slots, attrs, emit }) {\n const tableRef = ref()\n const { table, dark } = useProConfigInject()\n const prefixCls = usePrefixCls('table')\n const isApple = isMacOsUserAgent() || isIOSUserAgent()\n const { hoverRowKey } = useProvideHover({\n rowHoverDelay: computed(() => props.rowHoverDelay),\n rowHover: computed(() => props.rowHover ?? table?.value?.rowHover),\n })\n\n const mergedPrefixCls = computed(() => props.prefixCls ?? prefixCls)\n const mergeOptions = computed(() => {\n if (props.options === false) {\n return false\n }\n if (props.options === undefined) {\n return table?.value?.options\n }\n return { ...table?.value?.options, ...props.options }\n })\n\n useProvideLevel()\n\n watch(\n hoverRowKey,\n (newValue, oldValue) => {\n if (counter.rootDomRef.value) {\n counter.rootDomRef.value.style.removeProperty(\n `--${mergedPrefixCls.value}-row-bg-${oldValue}`,\n )\n counter.rootDomRef.value.style.setProperty(\n `--${mergedPrefixCls.value}-row-bg-${newValue}`,\n `hsl(var(--pro-accent))`,\n )\n }\n },\n { flush: 'post' },\n )\n\n const onKeydown = (ev: KeyboardEvent) => {\n ev.stopPropagation()\n emit('keydown', ev)\n }\n\n const fetchData = computed(() => {\n if (!props.request) return undefined\n\n return async (\n params?: Record<string, any>,\n sorters?: SorterResult<any>[],\n filter?: Record<string, (string | number)[] | null>,\n ) => {\n const actionParams = {\n ...(params || {}),\n ...(props.params || {}),\n }\n const response = await props.request!(actionParams, sorters, filter)\n return response as RequestData\n }\n })\n\n const actions = useFetchData(fetchData, props)\n const { dataSource, loading, pagination, pollingLoading, onTableChange, reload, reset } =\n actions\n const mergePagination = computed(() => {\n if (props.pagination === false) {\n return false\n }\n return pagination.value\n })\n\n const formSubmitLoading = computed(() => {\n if (typeof loading.value === 'boolean') {\n return loading.value\n } else if (typeof loading.value === 'object') {\n return loading.value.spinning\n } else {\n return undefined\n }\n })\n\n const onFormSearchSubmit = (values: any) => {\n // 判断search.onSearch返回值决定是否更新formSearch\n if (mergeOptions.value && mergeOptions.value.search) {\n const { name = 'keyword' } =\n mergeOptions.value.search === true ? {} : mergeOptions.value.search\n\n /** 如果传入的 onSearch 返回值为 false,则不要把options.search.name对应的值set到formSearch */\n const success = (mergeOptions.value.search as OptionSearchProps)?.onSearch?.(\n actions.keyword.value!,\n )\n\n if (success !== false) {\n actions.setFormSearch({\n ...values,\n [name]: actions.keyword.value,\n })\n return\n }\n }\n\n actions.setFormSearch(values)\n }\n\n const counter = useContainer(props)\n\n // ---------- 列计算相关 start -----------------\n const tableColumn = computed(() => {\n return genProColumnToColumn({\n columns: props.columns,\n counter,\n }).sort(columnSort(counter.columnsMap.value))\n })\n\n watch(\n tableColumn,\n () => {\n if (tableColumn.value && tableColumn.value.length > 0) {\n // 重新生成key的字符串用于排序\n const columnKeys = tableColumn.value.map((item) => genColumnKey(item.key, item.index))\n counter.setSortKeyColumns(columnKeys)\n }\n },\n {\n immediate: true,\n },\n )\n\n /** 需要遍历一下,不然不支持嵌套表格 */\n const columns = computed(() => {\n const loopFilter = (column: any[]): any[] => {\n return column\n .map((item) => {\n // 删掉不应该显示的\n const columnKey = genColumnKey(item.key, item.index)\n const config = counter.columnsMap.value[columnKey]\n if (config && config.show === false) {\n return false\n }\n if (item.children) {\n return {\n ...item,\n children: loopFilter(item.children),\n }\n }\n return item\n })\n .filter(Boolean)\n }\n return loopFilter(tableColumn.value)\n })\n\n const onColumnsChange = (rawColumns, action: 'resize' | 'drag') => {\n const newMap = { ...counter.columnsMap.value }\n const newColumns = rawColumns.map((item) => genColumnKey(item.key, item.index))\n if (action === 'resize') {\n const loopSetWidth = (rawColumns) => {\n rawColumns.forEach((item) => {\n const key = genColumnKey(item.key, item.index)\n const newSetting = { ...newMap[key] }\n if (item.children?.length) {\n loopSetWidth(item.children)\n } else {\n newSetting.width = item.width\n newMap[key] = newSetting\n }\n })\n }\n loopSetWidth(rawColumns)\n } else {\n newColumns.forEach((key, order) => {\n newMap[key] = { ...(newMap[key] || {}), order }\n })\n }\n counter.setColumnsMap(newMap)\n counter.setSortKeyColumns(newColumns)\n props['onUpdate:columns']?.(rawColumns as ColumnsType, action)\n }\n const formItems = computed(() => {\n if (props.search === false) {\n return []\n }\n if (props.search?.items?.length) {\n return props.search?.items\n }\n return flatColumnsHandle(props.columns)\n .filter((item) => {\n if (item.hideInSearch) {\n return false\n }\n return true\n })\n .map((item) => {\n const mergeItem = merge(\n {\n ...item,\n\n width: undefined,\n tooltip: item.headerTooltip,\n name: item.dataIndex,\n },\n item.search,\n )\n return omitKeysAndUndefined(mergeItem, [\n 'dataIndex',\n 'width',\n 'headerTooltip',\n 'search',\n ]) as ProFormItemType\n })\n })\n\n /** SelectedRowKeys受控处理selectRows */\n const preserveRecordsRef = ref(new Map<any, any>())\n // ============================ RowKey ============================\n const getRowKey = computed<GetRowKey>(() =>\n typeof props.rowKey == 'function'\n ? props.rowKey\n : (record: Record<string, any>) => {\n return record?.[(props.rowKey ?? (table?.value?.rowKey || 'id')) as string]\n },\n )\n\n watch([() => dataSource.value, getRowKey], () => {\n if (dataSource.value?.length) {\n dataSource.value.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n } else {\n onCleanSelected()\n }\n })\n\n /** 单选多选的相关逻辑 */\n const [selectedRowKeys, setSelectedRowKeys] = useMergedState<(string | number)[] | undefined>(\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection?.defaultSelectedRowKeys || [] : undefined),\n {\n value: computed(\n () =>\n props.selectedRowKeys ||\n (props.rowSelection ? props.rowSelection.selectedRowKeys : undefined),\n ),\n },\n )\n\n const rowSelection = computed<TableRowSelection>(() => ({\n selectedRowKeys: selectedRowKeys.value,\n preserveSelectedRowKeys: true,\n ...props.rowSelection,\n onChange: (selectedRowKeys: Key[], selectedRows: any[]) => {\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(selectedRowKeys, selectedRows)\n }\n props['onUpdate:selectedRowKeys']?.(selectedRowKeys, selectedRows)\n setSelectedRowKeys(selectedRowKeys)\n },\n }))\n\n const selectedRows = computed(() =>\n selectedRowKeys.value?.map((key) => preserveRecordsRef.value?.get(key)),\n )\n\n const onCleanSelected = (keys?: Key[]) => {\n let newSelectedRowKeys: Key[] = []\n if (keys?.length) {\n newSelectedRowKeys = selectedRowKeys.value?.filter((key) => !keys.includes(key)) ?? []\n }\n if (props.rowSelection && props.rowSelection.onChange) {\n props.rowSelection.onChange(newSelectedRowKeys, selectedRows.value ?? [])\n }\n props['onUpdate:selectedRowKeys']?.(newSelectedRowKeys, selectedRows.value ?? [])\n setSelectedRowKeys(newSelectedRowKeys)\n }\n\n const setRowSelected = (keys: Key[], rows?: []) => {\n if (keys?.length) {\n if (rows?.length) {\n rows.forEach((data) => {\n const dataRowKey = getRowKey.value(data, -1)\n preserveRecordsRef.value.set(dataRowKey, data)\n })\n }\n const newKeys = Array.from(new Set([...(selectedRowKeys.value ?? []), ...keys]))\n setSelectedRowKeys(newKeys)\n }\n }\n\n const hideToolbar = computed(\n () =>\n mergeOptions.value === false &&\n !props.title &&\n !slots.title &&\n !slots.toolbar &&\n !slots.searchExtra &&\n !slots.toolbarActions,\n )\n\n /**\n * 是否需要 card 来包裹\n */\n const notNeedCardDom = computed(() => {\n if ((props.search === false || !formItems.value?.length) && props.toolBar === false) {\n return true\n }\n return false\n })\n\n const showTableCard = computed(() => {\n if (counter.hasFullScreen.value) {\n return false\n }\n return props.cardProps !== false && !notNeedCardDom.value\n })\n\n const cardBodyStyle = computed(() => {\n if (!showTableCard.value) return {}\n\n if (hideToolbar.value) {\n return {\n padding: 0,\n }\n }\n\n // if (props.toolBar) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n\n // if (props.toolBar && props.pagination === false) {\n // return {\n // paddingBlockStart: 0,\n // }\n // }\n if (props.pagination !== false) {\n return {\n paddingBlockEnd: 0,\n }\n }\n return {}\n })\n\n const [formAction, setFormAction] = useState<ProFormActionType>()\n\n const [mergeShowAlert, setMergeShowAlert] = useMergedState<boolean>(\n !!selectedRowKeys.value?.length,\n {\n value: computed(() => props.showAlert!),\n onChange(val) {\n props['onUpdate:showAlert']?.(val)\n },\n },\n )\n\n watch(selectedRowKeys, (selectedKeys) => {\n if (selectedKeys?.length) {\n setMergeShowAlert(true)\n } else {\n setMergeShowAlert(false)\n }\n })\n\n const tableHeight = ref<number | undefined | string>(props.height)\n const calcTableHeight = async () => {\n if (props.autoHeight || counter.hasFullScreen.value) {\n await nextTick()\n const height =\n window.innerHeight -\n (tableRef.value?.rootRef?.getBoundingClientRect()?.top || 0) -\n (tableRef.value?.paginationRef?.getBoundingClientRect()?.height || 0) -\n (!isApple ? counter.scrollViewportHeight.value : 0)\n\n tableHeight.value =\n typeof props.autoHeight === 'function' && !counter.hasFullScreen.value\n ? props.autoHeight?.(height)\n : height\n } else {\n tableHeight.value = props.height\n }\n }\n\n watch([counter.tableSize, counter.scrollViewportHeight], () => {\n calcTableHeight()\n })\n\n onMounted(async () => {\n await promiseTimeout(0)\n calcTableHeight()\n })\n\n expose({\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => {\n tableRef.value?.scrollTo(pos, behavior)\n },\n validateRowData: (recordKey: any) => {\n return tableRef.value?.validateRowData(recordKey)\n },\n validateTableData: () => {\n return tableRef.value?.validateTableData()\n },\n\n addEditRecord: (recordValue?: any, options?: AddLineOptions) => {\n return tableRef.value?.addEditRecord(recordValue, options)\n },\n startEditable: (recordKey: Key, recordValue?: any) => {\n return tableRef.value?.startEditable(recordKey, recordValue)\n },\n cancelEditable: (recordValue?: any, options?: AddLineOptions) => {\n return tableRef.value?.cancelEditable(recordValue, options)\n },\n saveEditable: (recordKey: Key) => {\n return tableRef.value?.saveEditable(recordKey)\n },\n scrollLeft: computed(() => {\n return unref(tableRef.value?.scrollLeft)\n }),\n scrollTop: computed(() => {\n return unref(tableRef.value?.scrollTop)\n }),\n\n bodyRef: computed(() => {\n return unref(tableRef.value?.bodyRef)\n }),\n rootRef: computed(() => {\n return unref(tableRef.value?.rootRef)\n }),\n paginationRef: computed(() => {\n return unref(tableRef.value?.paginationRef)\n }),\n clearDataSource: () => {\n dataSource.value = []\n },\n cleanSelected: onCleanSelected,\n setSelected: setRowSelected,\n appendCellToSelectedRange: (params: AppendCellRange) => {\n return tableRef.value?.appendCellToSelectedRange(params)\n },\n reload,\n reset,\n calcTableHeight,\n formAction: computed(() => {\n return unref(formAction.value)\n }),\n formSearchSubmit: () => {\n const fieldValues = formAction.value?.getFieldsValue() ?? {}\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...fieldValues,\n })\n },\n getSearchParams: () => {\n return actions.searchParams.value ?? {}\n },\n })\n\n return () => {\n const { expandIcon = slots.expandIcon, expandedRowRender = slots.expandedRowRender } = props\n const mergeColumns = columns.value || convertChildrenToColumns(slots.default?.()) || []\n let tableDom = (\n <>\n {props.toolBar !== false && !hideToolbar.value && (\n <ToolBar\n title={props.title}\n subTitle={props.subTitle}\n tooltip={props.tooltip}\n prefixCls={mergedPrefixCls.value}\n options={mergeOptions.value}\n actionsRef={{\n ...actions,\n fullScreen: () => {\n counter.hasFullScreen.value = !counter.hasFullScreen.value\n calcTableHeight()\n },\n }}\n tableColumn={tableColumn.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n v-slots={{\n toolbar: slots.toolbar,\n title: slots.title,\n searchExtra: slots.searchExtra,\n actions: slots.toolbarActions,\n bottom: slots.toolbarBottom,\n top: slots.toolbarTop,\n }}\n onCleanSelected={onCleanSelected}\n onFormSearchSubmit={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n />\n )}\n {!!props.rowSelection &&\n props.rowSelection?.type !== 'radio' &&\n props.alwaysShowAlert !== false &&\n mergeShowAlert.value && (\n <Alert\n prefixCls={mergedPrefixCls.value}\n selectedRowKeys={selectedRowKeys.value!}\n selectedRows={selectedRows.value}\n onCleanSelected={onCleanSelected}\n actionsRef={actions}\n v-slots={{ info: slots.alertInfo, actions: slots.alertActions, alert: slots.alert }}\n />\n )}\n <InteralTable\n ref={tableRef}\n {...omit(props, [\n 'onChange',\n 'onUpdate:pagination',\n 'onUpdate:selectedRowKeys',\n 'onUpdate:columns',\n ])}\n height={tableHeight.value}\n virtual={!!props.autoHeight || !!counter.hasFullScreen.value || props.virtual}\n prefixCls={mergedPrefixCls.value}\n columns={mergeColumns || []}\n size={counter.tableSize.value}\n dataSource={dataSource.value}\n loading={loading.value}\n rowSelection={props.rowSelection ? rowSelection.value : undefined}\n pagination={mergePagination.value}\n expandIcon={expandIcon}\n expandedRowRender={expandedRowRender}\n hasContextmenuPopup={!!slots.contextmenuPopup}\n onChange={onTableChange}\n onUpdate:columns={onColumnsChange}\n v-slots={{\n ...slots,\n footer: props.footer || slots.footer,\n }}\n />\n </>\n )\n\n if (showTableCard.value) {\n tableDom = (\n <Card\n bordered={isBordered(\n 'table',\n props.cardBordered ?? table?.value?.cardBordered ?? dark?.value,\n )}\n bodyStyle={cardBodyStyle.value}\n {...props.cardProps}\n >\n {tableDom}\n </Card>\n )\n }\n\n return (\n <div\n ref={counter.rootDomRef}\n {...attrs}\n class={[\n `${mergedPrefixCls.value}-wrapper ${props.bordered ? mergedPrefixCls.value + '-wrapper-bordered' : ''} ${\n 'dark' === theme.value ? mergedPrefixCls.value + '-wrapper-dark' : ''\n } ${pollingLoading.value ? mergedPrefixCls.value + '-wrapper-polling' : ''}`,\n {\n [`${mergedPrefixCls.value}-maximize`]: counter.hasFullScreen.value,\n },\n attrs.class,\n ]}\n onKeydown={onKeydown}\n >\n {props.search !== false && !!formItems.value?.length && (\n <FormRender\n prefixCls={mergedPrefixCls.value}\n items={formItems.value}\n cardBordered={props.cardBordered ?? table?.value?.cardBordered ?? dark?.value}\n search={props.search}\n tableShowCard={showTableCard.value}\n loading={formSubmitLoading.value}\n beforeSearchSubmit={props.beforeSearchSubmit}\n setFormAction={setFormAction}\n manual={props.manual || props.manualRequest}\n v-slots={slots}\n onReset={props.onReset}\n onSubmit={props.onSubmit}\n onFormSearchSubmit={onFormSearchSubmit}\n onSearchTabChange={(newValues) => {\n actions.setFormSearch({\n ...actions.formSearch.value,\n ...newValues,\n })\n }}\n onCollapse={calcTableHeight}\n />\n )}\n {tableDom}\n </div>\n )\n }\n },\n})\n"],"names":["_isSlot","s","Object","prototype","toString","call","_isVNode","name","inheritAttrs","props","tableProps","slots","emits","setup","expose","attrs","emit","tableRef","ref","table","dark","useProConfigInject","prefixCls","usePrefixCls","isApple","isMacOsUserAgent","isIOSUserAgent","hoverRowKey","useProvideHover","rowHoverDelay","computed","rowHover","_a","_b","value","mergedPrefixCls","mergeOptions","options","undefined","useProvideLevel","watch","newValue","oldValue","counter","rootDomRef","style","removeProperty","setProperty","flush","onKeydown","ev","stopPropagation","fetchData","request","params","sorters","filter","actionParams","response","actions","useFetchData","dataSource","loading","pagination","pollingLoading","onTableChange","reload","reset","mergePagination","formSubmitLoading","spinning","onFormSearchSubmit","values","search","success","onSearch","keyword","setFormSearch","useContainer","tableColumn","genProColumnToColumn","columns","sort","columnSort","columnsMap","length","columnKeys","map","item","genColumnKey","key","index","setSortKeyColumns","immediate","loopFilter","column","columnKey","config","show","children","Boolean","onColumnsChange","rawColumns","action","newMap","newColumns","loopSetWidth","forEach","newSetting","width","order","setColumnsMap","formItems","items","flatColumnsHandle","hideInSearch","mergeItem","merge","tooltip","headerTooltip","dataIndex","omitKeysAndUndefined","preserveRecordsRef","Map","getRowKey","rowKey","record","data","dataRowKey","set","onCleanSelected","selectedRowKeys","setSelectedRowKeys","useMergedState","rowSelection","defaultSelectedRowKeys","preserveSelectedRowKeys","onChange","selectedRows","get","keys","newSelectedRowKeys","includes","setRowSelected","rows","newKeys","Array","from","Set","hideToolbar","title","toolbar","searchExtra","toolbarActions","notNeedCardDom","toolBar","showTableCard","hasFullScreen","cardProps","cardBodyStyle","padding","paddingBlockEnd","formAction","setFormAction","useState","mergeShowAlert","setMergeShowAlert","showAlert","val","selectedKeys","tableHeight","height","calcTableHeight","autoHeight","nextTick","window","innerHeight","rootRef","getBoundingClientRect","top","paginationRef","scrollViewportHeight","tableSize","onMounted","promiseTimeout","scrollTo","pos","behavior","validateRowData","recordKey","validateTableData","addEditRecord","recordValue","startEditable","cancelEditable","saveEditable","scrollLeft","unref","scrollTop","bodyRef","clearDataSource","cleanSelected","setSelected","appendCellToSelectedRange","formSearchSubmit","fieldValues","getFieldsValue","formSearch","getSearchParams","searchParams","expandIcon","expandedRowRender","mergeColumns","convertChildrenToColumns","default","tableDom","_createVNode","_Fragment","ToolBar","subTitle","fullScreen","newValues","bottom","toolbarBottom","toolbarTop","type","alwaysShowAlert","Alert","info","alertInfo","alertActions","alert","InteralTable","_mergeProps","omit","virtual","contextmenuPopup","footer","_tableDom","Card","isBordered","cardBordered","bordered","theme","class","FormRender","beforeSearchSubmit","manual","manualRequest","onReset","onSubmit"],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"TableContext.js","sources":["../../../../../../../../../packages/components/table/src/components/context/TableContext.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-05 12:12:38\n * @LastEditors: shen\n * @LastEditTime: 2024-01-11 18:05:16\n * @Description:\n */\nimport { inject, provide } from 'vue'\n\nimport type { ComputedRef, InjectionKey, Ref, ShallowRef } from 'vue'\nimport type { CalType } from '../../hooks/useCal'\nimport type { UseCellPropsRes } from '../../hooks/useCellProps'\nimport type { UseColumnsType } from '../../hooks/useColumns'\nimport type { FilterState } from '../../hooks/useFilter'\nimport type { FlattenRecordsType } from '../../hooks/useFlattenRecords'\nimport type { FlattenAllRecordsType } from '../../hooks/useKVMap'\nimport type { SelectionsRes } from '../../hooks/useRowSelection'\nimport type { SortState } from '../../hooks/useSorter'\nimport type {\n ColumnsType,\n DragColumnEventInfo,\n DragRowEventInfo,\n ExpandType,\n GetPopupContainer,\n GetRowKey,\n Key,\n Position,\n SummaryFixed,\n ProTableProps,\n TableLocale,\n TableRowSelection,\n TriggerEventHandler,\n} from '../interface'\n\ntype PaginationPos = {\n bottom?: 'left' | 'right'\n top?: 'left' | 'right'\n}\n\nexport interface TableContextProps\n extends CalType,\n UseColumnsType,\n FlattenRecordsType,\n FlattenAllRecordsType,\n UseCellPropsRes {\n rawColumns: Ref<ColumnsType>\n bodyHeight: Ref<number>\n scrollTop: Ref<number>\n scrollLeft: Ref<number>\n rowPosition: Ref<number[]>\n dataRowPosition: Ref<number[]>\n startIndex: Ref<number>\n data: Ref<any[]>\n rawData: ShallowRef<any[]>\n pageData: Ref<any[]>\n props: ProTableProps\n bodyWidth: Ref<number>\n bodyScrollWidth: Ref<number>\n scrollBarSize: Ref<number>\n scrollTo: (pos: number | Position, behavior?: 'auto' | 'smooth', skipAnimate?: boolean) => void\n leftWidth: Ref<number>\n centerWidth: Ref<number>\n rightWidth: Ref<number>\n showVerticalScrollbar: ComputedRef<boolean>\n showHorizontalScrollbar: Ref<boolean>\n getRowKey: ComputedRef<GetRowKey<any>>\n selection: SelectionsRes\n locale: ComputedRef<TableLocale>\n sorterStates: Ref<SortState<any>[]>\n changeSorter: (sortState: SortState<any>) => void\n changeFilter: (filterState: FilterState<any>) => void\n filterStates: Ref<FilterState<any>[]>\n updateSelectedRowKeys: (keys: Key[]) => void\n baseHeight: Ref<number>\n expandedRowKeys: Ref<Set<Key>>\n indentSize: Ref<number>\n onTriggerExpand: TriggerEventHandler<any>\n childrenColumnName: Ref<string>\n expandType: Ref<ExpandType>\n supportSticky: boolean\n mergedRowSelection: Ref<TableRowSelection>\n getPopupContainer: Ref<GetPopupContainer>\n virtual: Ref<boolean>\n xVirtual: Ref<boolean>\n onResizeColumn: ProTableProps['onResizeColumn']\n onRowDragEnd: (opt: DragRowEventInfo) => void\n status: Ref<{\n code: number\n }>\n watermarkMsg: Ref<string>\n useAnimate: Ref<boolean>\n animateRows: ComputedRef<boolean>\n dragRowsHandle: Map<Key, Set<HTMLSpanElement>>\n draggingRowKey: Ref<Key | null>\n insertToRowKey: Ref<Key | null>\n dragColumnsHandle: Map<Key, Set<HTMLDivElement>>\n draggingColumnKey: Ref<Key>\n onColumnDragEnd: (arg: DragColumnEventInfo) => void\n onColumnDrag: (arg: DragColumnEventInfo) => void\n prefixCls: ComputedRef<string>\n columnDrag: ComputedRef<boolean>\n summaryFixed: ComputedRef<SummaryFixed>\n realHeaderHeight: Ref<number>\n bottomPaginationHeight: Ref<number>\n pos: ComputedRef<PaginationPos>\n rootRef: Ref<HTMLDivElement | undefined>\n}\n\nexport const TableContextKey: InjectionKey<TableContextProps> = Symbol('TableContextProps')\n\nexport const useProvideTable = (props: TableContextProps) => {\n provide(TableContextKey, props)\n}\n\nexport const useInjectTable = () => {\n return inject(TableContextKey, {} as TableContextProps)\n}\n"],"names":["provide","inject"],"mappings":";;;;AA4GO,MAAM,eAAA,GAAmD,OAAO,mBAAmB;AAEnF,MAAM,eAAA,GAAkB,CAAC,KAAA,KAA6B;AAC3D,EAAAA,WAAA,CAAQ,iBAAiB,KAAK,CAAA;AAChC;AAEO,MAAM,iBAAiB,MAAM;AAClC,EAAA,OAAOC,UAAA,CAAO,eAAA,EAAiB,EAAuB,CAAA;AACxD;;;;;;"}
1
+ {"version":3,"file":"TableContext.js","sources":["../../../../../../../../../packages/components/table/src/components/context/TableContext.ts"],"sourcesContent":["/*\n * @Author: shen\n * @Date: 2023-11-05 12:12:38\n * @LastEditors: shen\n * @LastEditTime: 2025-12-01 14:33:01\n * @Description:\n */\nimport { inject, provide } from 'vue'\n\nimport type { ComputedRef, InjectionKey, Ref, ShallowRef } from 'vue'\nimport type { CalType } from '../../hooks/useCal'\nimport type { UseCellPropsRes } from '../../hooks/useCellProps'\nimport type { UseColumnsType } from '../../hooks/useColumns'\nimport type { FilterState } from '../../hooks/useFilter'\nimport type { FlattenRecordsType } from '../../hooks/useFlattenRecords'\nimport type { FlattenAllRecordsType } from '../../hooks/useKVMap'\nimport type { SelectionsRes } from '../../hooks/useRowSelection'\nimport type { SortState } from '../../hooks/useSorter'\nimport type {\n ColumnsType,\n DragColumnEventInfo,\n DragRowEventInfo,\n ExpandType,\n GetPopupContainer,\n GetRowKey,\n Key,\n Position,\n SummaryFixed,\n ProTableProps,\n TableLocale,\n TableRowSelection,\n TriggerEventHandler,\n ExpandIconType,\n} from '../interface'\n\ntype PaginationPos = {\n bottom?: 'left' | 'right'\n top?: 'left' | 'right'\n}\n\nexport interface TableContextProps\n extends CalType,\n UseColumnsType,\n FlattenRecordsType,\n FlattenAllRecordsType,\n UseCellPropsRes {\n rawColumns: Ref<ColumnsType>\n bodyHeight: Ref<number>\n scrollTop: Ref<number>\n scrollLeft: Ref<number>\n rowPosition: Ref<number[]>\n dataRowPosition: Ref<number[]>\n startIndex: Ref<number>\n data: Ref<any[]>\n rawData: ShallowRef<any[]>\n pageData: Ref<any[]>\n props: ProTableProps\n bodyWidth: Ref<number>\n bodyScrollWidth: Ref<number>\n scrollBarSize: Ref<number>\n scrollTo: (pos: number | Position, behavior?: 'auto' | 'smooth', skipAnimate?: boolean) => void\n leftWidth: Ref<number>\n centerWidth: Ref<number>\n rightWidth: Ref<number>\n showVerticalScrollbar: ComputedRef<boolean>\n showHorizontalScrollbar: Ref<boolean>\n getRowKey: ComputedRef<GetRowKey<any>>\n selection: SelectionsRes\n locale: ComputedRef<TableLocale>\n sorterStates: Ref<SortState<any>[]>\n changeSorter: (sortState: SortState<any>) => void\n changeFilter: (filterState: FilterState<any>) => void\n filterStates: Ref<FilterState<any>[]>\n updateSelectedRowKeys: (keys: Key[]) => void\n baseHeight: Ref<number>\n expandedRowKeys: Ref<Set<Key>>\n indentSize: Ref<number>\n onTriggerExpand: TriggerEventHandler<any>\n childrenColumnName: Ref<string>\n expandType: Ref<ExpandType>\n expandIconType: ComputedRef<ExpandIconType>\n supportSticky: boolean\n mergedRowSelection: Ref<TableRowSelection>\n getPopupContainer: Ref<GetPopupContainer>\n virtual: Ref<boolean>\n xVirtual: Ref<boolean>\n onResizeColumn: ProTableProps['onResizeColumn']\n onRowDragEnd: (opt: DragRowEventInfo) => void\n status: Ref<{\n code: number\n }>\n watermarkMsg: Ref<string>\n useAnimate: Ref<boolean>\n animateRows: ComputedRef<boolean>\n dragRowsHandle: Map<Key, Set<HTMLSpanElement>>\n draggingRowKey: Ref<Key | null>\n insertToRowKey: Ref<Key | null>\n dragColumnsHandle: Map<Key, Set<HTMLDivElement>>\n draggingColumnKey: Ref<Key>\n onColumnDragEnd: (arg: DragColumnEventInfo) => void\n onColumnDrag: (arg: DragColumnEventInfo) => void\n prefixCls: ComputedRef<string>\n columnDrag: ComputedRef<boolean>\n summaryFixed: ComputedRef<SummaryFixed>\n realHeaderHeight: Ref<number>\n bottomPaginationHeight: Ref<number>\n pos: ComputedRef<PaginationPos>\n rootRef: Ref<HTMLDivElement | undefined>\n cancelEditable: (recordKey: Key) => boolean\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n isEditable: (recordKey: Key) => boolean\n}\n\nexport const TableContextKey: InjectionKey<TableContextProps> = Symbol('TableContextProps')\n\nexport const useProvideTable = (props: TableContextProps) => {\n provide(TableContextKey, props)\n}\n\nexport const useInjectTable = () => {\n return inject(TableContextKey, {} as TableContextProps)\n}\n"],"names":["provide","inject"],"mappings":";;;;AAkHO,MAAM,eAAA,GAAmD,OAAO,mBAAmB;AAEnF,MAAM,eAAA,GAAkB,CAAC,KAAA,KAA6B;AAC3D,EAAAA,WAAA,CAAQ,iBAAiB,KAAK,CAAA;AAChC;AAEO,MAAM,iBAAiB,MAAM;AAClC,EAAA,OAAOC,UAAA,CAAO,eAAA,EAAiB,EAAuB,CAAA;AACxD;;;;;;"}
@@ -130,10 +130,18 @@ const baseTableProps = () => ({
130
130
  type: Boolean,
131
131
  default: void 0
132
132
  },
133
+ selectRowByClick: {
134
+ type: Boolean,
135
+ default: void 0
136
+ },
133
137
  expandIcon: {
134
138
  type: Function,
135
139
  default: void 0
136
140
  },
141
+ expandIconType: {
142
+ type: String,
143
+ default: void 0
144
+ },
137
145
  onExpand: {
138
146
  type: Function,
139
147
  default: void 0
@@ -188,6 +196,14 @@ const baseTableProps = () => ({
188
196
  type: Function,
189
197
  default: () => ({})
190
198
  },
199
+ editableKeys: {
200
+ type: Array,
201
+ default: void 0
202
+ },
203
+ rowEditable: {
204
+ type: Object,
205
+ default: void 0
206
+ },
191
207
  showHeader: {
192
208
  type: Boolean,
193
209
  default: true
@@ -286,6 +302,9 @@ const baseTableProps = () => ({
286
302
  type: Boolean,
287
303
  default: void 0
288
304
  },
305
+ editableCellState: {
306
+ type: Function
307
+ },
289
308
  paginationSticky: {
290
309
  type: [Boolean, Object],
291
310
  default: true
@@ -339,6 +358,15 @@ const baseTableProps = () => ({
339
358
  type: Function,
340
359
  default: void 0
341
360
  },
361
+ onDataChange: {
362
+ type: Function
363
+ },
364
+ onRowValidate: {
365
+ type: Function
366
+ },
367
+ onValidate: {
368
+ type: Function
369
+ },
342
370
  "onUpdate:pagination": {
343
371
  type: Function
344
372
  },
@@ -1 +1 @@
1
- {"version":3,"file":"interface.js","sources":["../../../../../../../../packages/components/table/src/components/interface.ts"],"sourcesContent":["import type { TooltipProps } from 'ant-design-vue/es/tooltip'\nimport type { SpinProps } from 'ant-design-vue/es/spin'\nimport type { CSSProperties, ExtractPropTypes, HTMLAttributes, PropType, Ref, VNode } from 'vue'\nimport type {\n AppendCellRange,\n FormatRangeCellTextParams,\n KeydownPayload,\n SelectedRangeItem,\n} from '../hooks/RangeInterface'\nimport type { INTERNAL_SELECTION_ITEM } from '../hooks/useRowSelection'\nimport type { DOWN, LEFT, RIGHT, UP } from './Drag/constant'\nimport type { TablePaginationConfig, TablePaginationPosition } from './PaginationConfig'\nimport type { InputProps } from 'ant-design-vue/es/input'\nimport type { UseFetchDataAction } from '../hooks/useFetchData'\nimport type { CardProps, PopoverProps } from 'ant-design-vue'\nimport type {\n ProFormActionType,\n ProFormItemType,\n ProQueryFilterProps,\n} from '@pro-design-vue/components/form'\nexport type DefaultRecordType = Record<string, any>\nexport interface TooltipAlignConfig {\n points?: [string, string]\n offset?: [number | string, number | string]\n targetOffset?: [number | string, number | string]\n overflow?: {\n adjustX: boolean\n adjustY: boolean\n }\n useCssRight?: boolean\n useCssBottom?: boolean\n useCssTransform?: boolean\n}\nexport type RowType = 'left' | 'center' | 'right'\nexport type ValueStatus = 'success' | 'processing' | 'error' | 'warning' | string | undefined\nexport type Key = string | number\nexport interface Position {\n left?: number\n top?: number\n columnIndex?: number\n columnKey?: Key\n rowKey?: Key\n}\nexport type { TablePaginationPosition, TablePaginationConfig }\nexport type DataIndex = string | number | readonly (string | number)[]\nexport type CellEllipsisType =\n | {\n showTitle?: boolean\n line?: number\n }\n | boolean\nexport type FixedType = 'left' | 'right' | boolean\nexport type RowHeight =\n | ((p: Record<any, any>, isExpandRow: boolean, baseHeight: number) => number | undefined)\n | number\nexport type HeaderHeight = number[] | number\nexport interface RowsRefsItem {\n left?: any\n right?: any\n conter?: any\n}\n// const SpinSizes = ['small', 'default', 'large']\nexport type SpinSize = 'small' | 'default' | 'large'\n// const TableActions = ['paginate', 'sort', 'filter']\nexport type TableAction = 'paginate' | 'sort' | 'filter'\nexport interface StickyOffsets {\n left: readonly number[]\n right: readonly number[]\n isSticky?: boolean\n}\nexport interface CellEditorArgs {\n modelValue: Ref<any>\n save: () => void\n onInput: (event: Event, value: any) => void\n closeEditor: () => void\n column: ColumnType\n editorRef: Ref<any>\n getPopupContainer: () => HTMLElement\n recordIndexs: number[]\n record: any\n}\n\nexport const checkboxProps = () => ({\n prefixCls: String as PropType<string>,\n disabled: Boolean as PropType<boolean>,\n tabindex: [String, Number],\n name: String as PropType<string>,\n id: String as PropType<string>,\n style: {\n type: Object as PropType<CSSProperties>,\n default: () => ({}),\n },\n class: String as PropType<string>,\n checked: Boolean as PropType<boolean>,\n indeterminate: Boolean as PropType<boolean>,\n ariaLabel: String as PropType<string>,\n})\n\nexport type CheckboxProps = Partial<ExtractPropTypes<ReturnType<typeof checkboxProps>>>\nexport type RowSelectionType = 'checkbox' | 'radio'\nexport type GetRowKey<RecordType = DefaultRecordType> = (record: RecordType, index?: number) => Key\nexport interface HeaderSticky {\n offsetHeader?: number\n topSummary?: boolean\n}\n\nexport interface BottomSticky {\n offsetBottom?: number\n}\n\nexport type FlatRecord<T = DefaultRecordType> = {\n record: T\n indent: number\n rowKey: Key\n isExpandRow?: boolean\n rowIndex: number\n pos: string\n flattenIndex: number\n level: number\n}\nexport type GetPopupContainer = (triggerNode: HTMLElement) => HTMLElement\nexport interface SorterResult<RecordType> {\n column?: ColumnType<RecordType>\n order?: SortOrder\n field?: Key | readonly Key[]\n columnKey?: Key\n}\nexport interface TableCurrentDataSource<RecordType = DefaultRecordType> {\n currentDataSource: RecordType[]\n action: TableAction\n}\ntype ChangeEvent<RecordType> = (\n pagination: TablePaginationConfig,\n filters: Record<string, FilterValue | null>,\n sorter: SorterResult<RecordType> | SorterResult<RecordType>[],\n extra: TableCurrentDataSource<RecordType>,\n) => void\ntype Scroll = {\n x?: number | string\n y?: number | string\n scrollToFirstRowOnChange?: boolean\n}\nexport type RowClassName<RecordType> = (\n record: RecordType,\n index: number,\n indent?: number,\n) => string\nexport type ExpandType = null | 'row' | 'nest'\nexport type ExpandedRowRender<ValueType> = (opt: {\n record: ValueType\n index: number\n indent: number\n expanded: boolean\n}) => any\nexport type TriggerEventHandler<RecordType> = (\n record: RecordType,\n key: Key,\n event: MouseEvent,\n) => void\nexport interface RenderExpandIconProps<RecordType> {\n prefixCls: string\n expanded: boolean\n record: RecordType\n expandable: boolean\n onExpand: TriggerEventHandler<RecordType>\n}\nexport type RenderExpandIcon<RecordType> = (props: RenderExpandIconProps<RecordType>) => any\nexport type SelectionItemSelectFn = (currentRowKeys: Key[]) => void\nexport interface SelectionItem {\n key: string\n text: any\n onSelect?: SelectionItemSelectFn\n}\nexport type SelectionSelectFn<T> = (\n record: T,\n selected: boolean,\n selectedRows: T[],\n nativeEvent: Event,\n) => void\nexport interface TableRowSelection<T = DefaultRecordType> {\n /** Keep the selection keys in list even the key not exist in `dataSource` anymore */\n preserveSelectedRowKeys?: boolean\n type?: RowSelectionType\n allowCancelRadio?: boolean\n selectedRowKeys?: Key[]\n defaultSelectedRowKeys?: Key[]\n onChange?: (selectedRowKeys: Key[], selectedRows: T[]) => void\n getCheckboxProps?: (record: T) => Partial<Omit<CheckboxProps, 'checked' | 'defaultChecked'>>\n onSelect?: SelectionSelectFn<T>\n onSelectMultiple?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectAll?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectInvert?: (selectedRowKeys: Key[]) => void\n onSelectNone?: () => void\n selections?: INTERNAL_SELECTION_ITEM[] | boolean\n hideSelectAll?: boolean\n fixed?: boolean\n columnWidth?: string | number\n columnTitle?: any\n checkStrictly?: boolean\n renderCell?: (value: boolean, record: T, index: number, originNode: any) => any\n}\ntype GetComponentProps<DataType> = (\n data: DataType,\n index?: number,\n) => Omit<HTMLAttributes, 'style'> & {\n style?: CSSProperties\n}\nexport type ResizeActionType = 'start' | 'move' | 'end'\nexport type SummaryFixed = boolean | 'top' | 'bottom'\nexport const baseTableProps = <T = DefaultRecordType>() => ({\n ignoreCellKey: Boolean,\n showHeaderScrollbar: Boolean,\n deepWatchDataSource: Boolean,\n deepWatchColumns: Boolean,\n prefixCls: String,\n columnDrag: {\n type: Boolean,\n default: false,\n },\n animateRows: {\n type: Boolean,\n default: undefined,\n },\n dropdownPrefixCls: { type: String },\n columns: {\n type: Array as PropType<ColumnsType<T>>,\n default: () => [],\n },\n dataSource: {\n type: Array as PropType<T[]>,\n default: () => [],\n },\n virtual: {\n type: Boolean,\n default: false,\n },\n xVirtual: {\n type: Boolean,\n default: undefined,\n },\n rowHeight: {\n type: [Number, Function] as PropType<RowHeight>,\n default: undefined,\n },\n autoHeaderHeight: {\n type: Boolean,\n default: false,\n },\n headerHeight: {\n type: [Number, Array] as PropType<HeaderHeight>,\n },\n height: {\n type: [Number, String],\n },\n maxHeight: {\n type: [Number, String],\n },\n minHeight: {\n type: [Number, String],\n },\n size: {\n type: String as PropType<DensitySize>,\n default: undefined,\n },\n bordered: {\n type: Boolean,\n default: undefined,\n },\n wrapText: {\n type: Boolean,\n default: false,\n },\n loading: {\n type: [Boolean, Object] as PropType<boolean | SpinProps>,\n default: undefined,\n },\n pagination: {\n type: [Boolean, Object] as PropType<false | TablePaginationConfig>,\n default: () => ({}),\n },\n direction: {\n type: String as PropType<'rtl'>,\n default: undefined,\n },\n stripe: {\n type: Boolean,\n default: false,\n },\n rowClassName: {\n type: [String, Function] as PropType<string | RowClassName<T>>,\n default: undefined,\n },\n sticky: {\n type: [Boolean, Object] as PropType<boolean | HeaderSticky>,\n default: true,\n },\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandFixed: {\n type: [Boolean, String] as PropType<FixedType>,\n default: undefined,\n },\n expandColumnWidth: {\n type: Number,\n default: undefined,\n },\n expandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n defaultExpandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandedRowRender: {\n type: Function as PropType<ExpandedRowRender<T>>,\n default: undefined,\n },\n expandRowByClick: {\n type: Boolean,\n default: undefined,\n },\n expandIcon: {\n type: Function as PropType<RenderExpandIcon<T>>,\n default: undefined,\n },\n onExpand: {\n type: Function as PropType<(expanded: boolean, record: T) => void>,\n default: undefined,\n },\n onExpandedRowsChange: {\n type: Function as PropType<(expandedKeys: Key[]) => void>,\n default: undefined,\n },\n defaultExpandAllRows: {\n type: Boolean,\n default: undefined,\n },\n indentSize: Number,\n expandIconColumnIndex: Number,\n childrenColumnName: {\n type: String,\n default: undefined,\n },\n rowExpandable: {\n type: Function as PropType<(record: T) => boolean>,\n default: () => true,\n },\n rowSelection: {\n type: Object as PropType<TableRowSelection<DefaultRecordType>>,\n default: undefined,\n },\n rowHoverDelay: {\n type: Number,\n default: 59,\n },\n rowHover: {\n type: Boolean,\n default: undefined,\n },\n rowKey: {\n type: [Function, String] as PropType<string | GetRowKey<T>>,\n default: undefined,\n },\n customRow: {\n type: Function as PropType<GetComponentProps<T>>,\n default: () => ({}),\n },\n customCell: {\n type: Function as PropType<\n (obj: { record: T; rowIndex: number; column: ColumnType<T> }) => Record<string, any>\n >,\n default: () => ({}),\n },\n customHeaderCell: {\n type: Function as PropType<(column: ColumnType<T>) => Record<string, any>>,\n default: () => ({}),\n },\n customSummaryCellProps: {\n type: Function as PropType<\n (obj: {\n record: T\n rowIndex: number\n column: ColumnType<T>\n columnIndex: number\n }) => Record<string, any>\n >,\n default: () => ({}),\n },\n showHeader: {\n type: Boolean,\n default: true,\n },\n showSorterTooltip: {\n type: [Boolean, Object] as PropType<boolean | TooltipProps>,\n default: true,\n },\n getPopupContainer: {\n type: Function as PropType<GetPopupContainer>,\n },\n locale: {\n type: Object as PropType<TableLocale>,\n default: undefined,\n },\n scrollX: {\n type: [Number, String] as PropType<string | number>,\n },\n scroll: {\n type: Object as PropType<Scroll>,\n default: undefined,\n },\n autoHeight: {\n type: [Boolean, Function] as PropType<boolean | ((autoHeight: number) => number)>,\n default: false,\n },\n rangeSelection: {\n type: [String, Boolean] as PropType<boolean | 'single'>,\n default: false,\n },\n copyDelimiter: {\n type: String,\n default: '',\n },\n rowDrag: {\n type: [Boolean],\n },\n onChange: {\n type: Function as PropType<ChangeEvent<T>>,\n },\n summaryFixed: {\n type: [Boolean, String] as PropType<SummaryFixed>,\n default: undefined,\n },\n hasContextmenuPopup: Boolean,\n formatRangeCellText: {\n type: Function as PropType<(params: FormatRangeCellTextParams) => string>,\n },\n\n columnEmptyText: {\n type: [String, Boolean] as PropType<string | false>,\n default: undefined,\n },\n toolBar: { type: Boolean, default: undefined },\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n alwaysShowAlert: { type: Boolean, default: undefined },\n showAlert: { type: Boolean, default: undefined },\n // requst 相关配置\n request: Function as PropType<Request>,\n params: Object as PropType<Record<string, any>>,\n defaultData: Array as PropType<T[]>,\n manual: Boolean,\n manualRequest: Boolean,\n polling: [Number, Function] as PropType<number | ((dataSource: any[]) => number)>,\n debounceTime: Number,\n onLoad: {\n type: Function as PropType<(dataSource: T[], extra: any) => void>,\n default: undefined,\n },\n onLoadingChange: {\n type: Function as PropType<(loading: boolean | SpinProps | undefined) => void>,\n default: undefined,\n },\n onRequestError: {\n type: Function as PropType<(e: Error) => void>,\n default: undefined,\n },\n onSizeChange: {\n type: Function as PropType<(size: DensitySize) => void>,\n default: undefined,\n },\n onSubmit: {\n type: Function as PropType<ProQueryFilterProps['onFinish']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<ProQueryFilterProps['onReset']>,\n default: undefined,\n },\n /** @name 列状态的配置,可以用来操作列功能 */\n columnsState: {\n type: Object as PropType<ColumnStateType>,\n default: undefined,\n },\n /** @name 是否要高亮选择行\t */\n highlightSelectRow: {\n type: Boolean,\n default: undefined,\n },\n\n paginationSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n horizontalScrollSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n 'onUpdate:selectedRowKeys': {\n type: Function as PropType<(selectedRowKeys: Key[], selectedRows: T[]) => void>,\n },\n onScroll: {\n type: Function as PropType<(e: UIEvent) => void>,\n },\n 'onUpdate:expandedRowKeys': {\n type: Function as PropType<(info: Key[]) => void>,\n },\n onResizeColumn: {\n type: Function as PropType<\n (w: number, col: ColumnType, action: ResizeActionType) => boolean | void\n >,\n default: undefined,\n },\n onRowDragEnd: {\n type: Function as PropType<(opt: DragRowEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onColumnDragEnd: {\n type: Function as PropType<(opt: DragColumnEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onCellKeydown: {\n type: Function as PropType<(e: KeyboardEvent, opt: KeydownPayload) => boolean | void>,\n default: undefined,\n },\n onCellClick: {\n type: Function as PropType<(e: MouseEvent, opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n 'onUpdate:pagination': {\n type: Function as PropType<(info: TablePaginationConfig) => void>,\n },\n 'onUpdate:dataSource': {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n 'onUpdate:columns': {\n type: Function as PropType<(columns: ColumnsType<T>, action: 'resize' | 'drag') => void>,\n },\n 'onUpdate:showAlert': {\n type: Function as PropType<(show: boolean) => void>,\n },\n})\n\nexport const tableProps = <T = DefaultRecordType>() => ({\n ...baseTableProps<T>(),\n title: String,\n subTitle: String,\n footer: Function,\n tooltip: String,\n cardProps: {\n type: [Object, Boolean] as PropType<CardProps | false>,\n default: undefined,\n },\n search: {\n type: [Object, Boolean] as PropType<SearchConfig | false>,\n default: undefined,\n },\n beforeSearchSubmit: {\n type: Function as PropType<(params: Partial<T>) => any>,\n default: undefined,\n },\n cardBordered: {\n type: [Boolean, Object] as PropType<Bordered>,\n default: undefined,\n },\n})\nclass Helper<T extends DefaultRecordType> {\n Return = tableProps<T>()\n}\nexport type ProTableProps<T extends DefaultRecordType = DefaultRecordType> = Partial<\n ExtractPropTypes<Helper<T>['Return']>\n>\nexport interface TableLocale {\n filterTitle?: string\n filterConfirm?: any\n filterReset?: any\n filterEmptyText?: any\n emptyText?: any | (() => any)\n selectAll?: any\n selectNone?: any\n selectInvert?: any\n selectionAll?: any\n sortTitle?: string\n expand?: string\n collapse?: string\n triggerDesc?: string\n triggerAsc?: string\n cancelSort?: string\n}\nexport interface ColumnTitleProps<RecordType> {\n /** @deprecated Please use `sorterColumns` instead. */\n sortOrder?: SortOrder\n /** @deprecated Please use `sorterColumns` instead. */\n sortColumn?: ColumnType<RecordType>\n column: ColumnType<RecordType>\n sortColumns?: {\n column: ColumnType<RecordType>\n order: SortOrder\n }[]\n filters?: Record<string, string[]>\n}\nexport type ColumnTitle<RecordType = DefaultRecordType> =\n | string\n | number\n | object\n | ((props: ColumnTitleProps<RecordType>) => any)\ninterface ColumnSharedType {\n title?: ColumnTitle\n key?: Key\n className?: string\n class?: string\n fixed?: FixedType\n ellipsis?: CellEllipsisType\n align?: AlignType\n wrapText?: boolean\n dataIndex?: DataIndex\n}\nexport interface FilterConfirmProps {\n closeDropdown: boolean\n}\nexport type AlignType = 'left' | 'center' | 'right'\nexport interface ColumnFilterItem {\n text: string | number\n value: string | number | boolean\n children?: ColumnFilterItem[]\n}\nexport type SortOrder = 'desc' | 'asc' | null\nexport type CompareFn<T> = (a: T, b: T, sortOrder?: SortOrder) => number\nexport type FilterValue = (Key | boolean)[]\nexport type FilterKey = Key[] | null\nexport interface FilterDropdownProps {\n prefixCls: string\n confirm: (param?: FilterConfirmProps) => void\n clearFilters?: () => void\n filters?: ColumnFilterItem[]\n /** @deprecated Please use `open` instead */\n visible: boolean\n open: boolean\n}\nexport interface CellType {\n key?: Key\n class?: string\n style?: CSSProperties\n colSpan?: number\n rowSpan?: number\n}\nexport interface HeaderCellType {\n key?: Key\n class?: string\n style?: CSSProperties\n column?: FinallyColumnType\n colSpan?: number\n rowSpan?: number\n hasSubColumns?: boolean\n colStart?: number\n colEnd?: number\n}\nexport interface RenderedCell {\n props?: CellType\n children?: any\n}\nexport type CellRenderArgs = {\n record: any\n column: ColumnType<DefaultRecordType> | ColumnGroupType<DefaultRecordType>\n text: any\n value: any\n index: number\n oldValue?: any\n recordIndexs: number[]\n openEditor: () => void\n closeEditor: () => void\n}\nexport interface ContextmenuPopupArg<RecordT, ColumnT>\n extends Omit<Partial<CellRenderArgs>, 'column' | 'record'> {\n column?: ColumnT\n record?: RecordT\n event: MouseEvent\n isExpand?: boolean\n hidePopup: () => void\n}\nexport type MenuFilterProps = {\n prefixCls: string\n setSelectedKeys: (selectedKeys: Key[]) => void\n selectedKeysRef: Ref<Key[]>\n confirm: () => void\n clearFilters: () => void\n filters: ColumnFilterItem[]\n}\nexport interface MenuPopupArg<ColumnT> {\n column: ColumnT\n event: MouseEvent\n hidePopup: () => void\n filter: MenuFilterProps\n}\nexport interface CellTooltip {\n placement?:\n | 'top'\n | 'left'\n | 'right'\n | 'bottom'\n | 'topLeft'\n | 'topRight'\n | 'bottomLeft'\n | 'bottomRight'\n | 'leftTop'\n | 'leftBottom'\n | 'rightTop'\n | 'rightBottom'\n color?: string\n overlayStyle?: CSSProperties\n overlayClassName?: string\n openClassName?: string\n title?: (args: CellRenderArgs) => any\n align?: TooltipAlignConfig\n shouldOpen?: (isEllipsis: boolean, args: CellRenderArgs) => boolean\n allowEnter?: boolean\n}\nexport interface ValueParserParams<RecordType = DefaultRecordType, TValue = any> {\n newValue: TValue\n oldValue: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n}\nexport interface EditableValueParams<RecordType = DefaultRecordType, TValue = any> {\n value: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n}\nexport interface ValueParserFunc<T = any, TValue = any> {\n (params: ValueParserParams<T, TValue>): TValue | null | undefined\n}\nexport interface ValueGetterFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): string | null | undefined\n}\ntype CellEditorSlot = 'cellEditorSlot'\nexport type EditableTrigger = 'click' | 'dblClick' | 'contextmenu'\nexport interface ColumnType<RecordType = DefaultRecordType>\n extends ColumnSharedType,\n Omit<\n ProFormItemType,\n | 'key'\n | 'originKey'\n | 'tooltip'\n | 'hidden'\n | 'grid'\n | 'title'\n | 'spaceProps'\n | 'children'\n | 'width'\n | 'ignoreWidth'\n | 'name'\n | 'originName'\n | 'rowProps'\n | 'colProps'\n | 'valueEnum'\n > {\n search?: ProFormItemType\n colSpan?: number\n dataIndex?: DataIndex\n key?: Key\n rowSpan?: number\n width?: number\n minWidth?: number\n maxWidth?: number\n resizable?: boolean\n flex?: number\n autoHeight?: boolean\n tooltip?: true | CellTooltip\n headerTooltip?: string | true\n hidden?: boolean\n sorter?:\n | boolean\n | CompareFn<RecordType>\n | {\n compare?: CompareFn<RecordType>\n /** Config multiple sorter order priority */\n multiple?: number\n }\n showCellPopover?: boolean | PopoverProps\n sortOrder?: SortOrder\n defaultSortOrder?: SortOrder\n sortDirections?: SortOrder[]\n showSorterTooltip?: boolean | TooltipProps\n filtered?: boolean\n filters?: ColumnFilterItem[]\n filterIcon?: ({ filtered }: { filtered: boolean }) => any\n filterDropdown?: (props: FilterDropdownProps) => any\n filterMultiple?: boolean\n filteredValue?: FilterValue | null\n defaultFilteredValue?: FilterValue | null\n onFilter?: (value: string | number | boolean, record: RecordType) => boolean\n showFilter?: boolean\n showMenu?: boolean | 'hover'\n /** @deprecated Please use `filterDropdownOpen` instead */\n filterDropdownVisible?: boolean\n /** @deprecated Please use `onFilterDropdownOpenChange` instead */\n onFilterDropdownVisibleChange?: (open: boolean) => void\n filterDropdownOpen?: boolean\n onFilterDropdownOpenChange?: (open: boolean) => void\n customFilterDropdown?: boolean\n getPopupContainer?: GetPopupContainer\n customCell?: (obj: {\n record: any\n rowIndex: number\n column: ColumnType<RecordType>\n }) => Record<string, any>\n customHeaderCell?: (column: ColumnType<RecordType>) => Record<string, any>\n customRender?: (opt: {\n value: any\n text: any\n record: RecordType\n index: number\n column: ColumnType<RecordType>\n }) => any | RenderedCell\n editable?:\n | boolean\n | CellEditorSlot\n | ((params: EditableValueParams<RecordType>) => boolean | CellEditorSlot)\n editableTrigger?: EditableTrigger | EditableTrigger[]\n valueParser?: ValueParserFunc<RecordType>\n valueGetter?: ValueGetterFunc<RecordType>\n valueSetter?: (params: ValueParserParams<RecordType>) => boolean | Promise<any>\n valueChange?: (e: Event, params: ValueParserParams<RecordType>) => void\n rowDrag?: boolean | ((arg: { record: RecordType; column: ColumnType<RecordType> }) => boolean)\n drag?: boolean\n /** @deprecated Please use `v-slot:customFilterIcon` `v-slot:bodyCell` `v-slot:headerCell` instead */\n slots?: {\n filterIcon?: string\n filterDropdown?: string\n customRender?: string\n title?: string\n }\n valueEnum?: ((row: RecordType) => Record<string, ValueEnumType>) | Record<string, ValueEnumType>\n valueStatus?: ((value: any, row: RecordType) => ValueStatus) | ValueStatus\n renderText?: (text: any, record: RecordType, rowIndex: number) => string | number\n /** @name 列设置的 disabled */\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n /** @name 在 table 中隐藏 */\n hideInTable?: boolean\n\n /** @name 在 search 中隐藏 */\n hideInSearch?: boolean\n\n /** @name 不在配置工具中显示 */\n hideInSetting?: boolean\n\n children?: ColumnType<RecordType>[]\n}\nexport interface ColumnGroupType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n children?: ColumnsType<RecordType>\n}\nexport type ColumnsType<RecordType = DefaultRecordType> = (\n | ColumnGroupType<RecordType>\n | ColumnType<RecordType>\n)[]\nexport interface FinallyColumnType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n finallyWidth?: number\n rowSpan?: number\n height?: number\n left?: number\n top?: number\n type?: 'checkbox' | 'expand' | 'rowIndex' | 'draggable'\n columnKey: Key\n columnIndex: number\n children?: FinallyColumnType<RecordType>[]\n originColumn?: ColumnsType[number]\n __Internal__Column__?: boolean\n showTitle: boolean\n fixed?: 'left' | 'right'\n}\ntype CellInfo = {\n columnKey: Key\n rowKey: Key\n}\nexport interface TableExposeType {\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => void\n scrollLeft?: number\n scrollTop?: number\n bodyRef: HTMLDivElement\n rootRef: HTMLDivElement\n paginationRef: HTMLDivElement\n formAction: ProFormActionType\n getSelectedRange: () => SelectedRangeItem[]\n clearAllSelectedRange: () => void\n clearDataSource: () => void\n copySelectedRange: () => void\n appendCellToSelectedRange: (cell: AppendCellRange) => void\n openEditor: (cellInfos: CellInfo[]) => void\n closeEditor: (cellInfos?: CellInfo[]) => void\n reload: (resetPageIndex?: boolean) => Promise<void>\n reset: () => void\n calcTableHeight: () => Promise<void>\n formSearchSubmit: () => void\n getSearchParams: () => Record<string, any>\n}\nexport interface DragRowsHandleInfo {\n y: number\n top: number\n height: number\n rowKey: Key\n centerY: number\n record: DefaultRecordType\n indexs: number[]\n}\nexport interface DragColumnHandleInfo {\n x: number\n left: number\n width: number\n columnKey: Key\n centerX: number\n indexs: number[]\n}\nexport interface DragRowEventInfo {\n top: number\n height: number\n dir: typeof DOWN | typeof UP\n rowKey: Key\n record: DefaultRecordType\n event: MouseEvent | Touch\n column: ColumnType\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n fromIndexs: number[]\n insertToRowKey: Key\n}\nexport interface RowDragGhostArg<RecordT, ColumnT> {\n record: RecordT\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n}\nexport interface DragColumnEventInfo {\n event: MouseEvent | Touch\n column: ColumnType\n targetColumn: ColumnType\n dir: typeof LEFT | typeof RIGHT\n}\nexport interface ColumnDragGhostArg<ColumnT> {\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n targetColumn: ColumnT\n}\n\nexport type DensitySize = 'small' | 'middle' | 'large' | undefined\nexport type Request<T = DefaultRecordType, U = Record<string, any>> = (\n params: U & {\n pageSize?: number\n current?: number\n keyword?: string\n },\n sorters?: SorterResult<T>[],\n filter?: Record<string, (string | number)[] | null>,\n) => Promise<Partial<RequestData<T>>>\n\nexport type RequestData<T = DefaultRecordType> = {\n data: T[] | undefined\n success?: boolean\n total?: number\n} & Record<string, any>\n\nexport type OptionsFunctionType = (e: any, action?: UseFetchDataAction<any>) => void\nexport type OptionsType = OptionsFunctionType | boolean\n\nexport type SettingOptionType = {\n draggable?: boolean\n checkable?: boolean\n checkedReset?: boolean\n listsHeight?: number\n}\n\nexport type OptionSearchProps = Omit<InputProps, 'onSearch'> & {\n /** 如果 onSearch 返回一个false,直接拦截请求 */\n onSearch?: (keyword: string) => Promise<boolean | undefined> | boolean | undefined\n}\n\nexport type OptionConfig = {\n density?: boolean\n filter?: boolean\n fullScreen?: OptionsType\n reload?: OptionsType\n setting?: boolean | SettingOptionType\n search?: (OptionSearchProps & { name?: string }) | boolean\n}\n\nexport type ValueEnumType = {\n text: string | number\n label?: string | number\n status?: string\n color?: string\n disabled?: boolean\n value?: string | number | boolean\n children?: ValueEnumType[]\n}\n\nexport type ColumnsState = {\n show?: boolean\n fixed?: true | 'right' | 'left' | undefined\n order?: number\n width?: number\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n}\n\nexport type ColumnStateType = {\n /**\n * 持久化的类型,支持 localStorage 和 sessionStorage\n *\n * @param localStorage 设置在关闭浏览器后也是存在的\n * @param sessionStorage 关闭浏览器后会丢失\n */\n persistenceType?: 'localStorage' | 'sessionStorage'\n /** 持久化的key,用于存储到 storage 中 */\n persistenceKey?: string\n /** ColumnsState 的值 */\n defaultValue?: Record<string, ColumnsState>\n /** ColumnsState 的值 */\n value?: Record<string, ColumnsState>\n onChange?: (map: Record<string, ColumnsState>) => void\n}\n\nexport type SearchConfig = ProQueryFilterProps & {\n cardProps?: CardProps | false\n tabName?: string\n style?: CSSProperties\n}\n\nexport type BorderedType = 'search' | 'table'\n\nexport type Bordered =\n | boolean\n | {\n search?: boolean\n table?: boolean\n }\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interface.js","sources":["../../../../../../../../packages/components/table/src/components/interface.ts"],"sourcesContent":["import type { TooltipProps } from 'ant-design-vue/es/tooltip'\nimport type { SpinProps } from 'ant-design-vue/es/spin'\nimport type { CSSProperties, ExtractPropTypes, HTMLAttributes, PropType, Ref, VNode } from 'vue'\nimport type {\n AppendCellRange,\n FormatRangeCellTextParams,\n KeydownPayload,\n SelectedRangeItem,\n} from '../hooks/RangeInterface'\nimport type { INTERNAL_SELECTION_ITEM } from '../hooks/useRowSelection'\nimport type { DOWN, LEFT, RIGHT, UP } from './Drag/constant'\nimport type { TablePaginationConfig, TablePaginationPosition } from './PaginationConfig'\nimport type { InputProps } from 'ant-design-vue/es/input'\nimport type { UseFetchDataAction } from '../hooks/useFetchData'\nimport type { CardProps, PopoverProps } from 'ant-design-vue'\nimport type {\n ProFormActionType,\n ProFormItemType,\n ProQueryFilterProps,\n} from '@pro-design-vue/components/form'\nexport type DefaultRecordType = Record<string, any>\nexport interface TooltipAlignConfig {\n points?: [string, string]\n offset?: [number | string, number | string]\n targetOffset?: [number | string, number | string]\n overflow?: {\n adjustX: boolean\n adjustY: boolean\n }\n useCssRight?: boolean\n useCssBottom?: boolean\n useCssTransform?: boolean\n}\nexport type RowType = 'left' | 'center' | 'right'\nexport type ValueStatus = 'success' | 'processing' | 'error' | 'warning' | string | undefined\nexport type Key = string | number\nexport interface Position {\n left?: number\n top?: number\n columnIndex?: number\n columnKey?: Key\n rowKey?: Key\n}\nexport type { TablePaginationPosition, TablePaginationConfig }\nexport type DataIndex = string | number | readonly (string | number)[]\nexport type CellEllipsisType =\n | {\n showTitle?: boolean\n line?: number\n }\n | boolean\nexport type FixedType = 'left' | 'right' | boolean\nexport type RowHeight =\n | ((p: Record<any, any>, isExpandRow: boolean, baseHeight: number) => number | undefined)\n | number\nexport type HeaderHeight = number[] | number\nexport interface RowsRefsItem {\n left?: any\n right?: any\n conter?: any\n}\n// const SpinSizes = ['small', 'default', 'large']\nexport type SpinSize = 'small' | 'default' | 'large'\n// const TableActions = ['paginate', 'sort', 'filter']\nexport type TableAction = 'paginate' | 'sort' | 'filter'\nexport interface StickyOffsets {\n left: readonly number[]\n right: readonly number[]\n isSticky?: boolean\n}\nexport interface CellEditorArgs {\n modelValue: Ref<any>\n save: () => void\n onInput: (event: Event, value: any) => void\n closeEditor: () => void\n column: ColumnType\n editorRef: Ref<any>\n getPopupContainer: () => HTMLElement\n recordIndexs: number[]\n record: any\n}\n\nexport const checkboxProps = () => ({\n prefixCls: String as PropType<string>,\n disabled: Boolean as PropType<boolean>,\n tabindex: [String, Number],\n name: String as PropType<string>,\n id: String as PropType<string>,\n style: {\n type: Object as PropType<CSSProperties>,\n default: () => ({}),\n },\n class: String as PropType<string>,\n checked: Boolean as PropType<boolean>,\n indeterminate: Boolean as PropType<boolean>,\n ariaLabel: String as PropType<string>,\n})\n\nexport type CheckboxProps = Partial<ExtractPropTypes<ReturnType<typeof checkboxProps>>>\nexport type RowSelectionType = 'checkbox' | 'radio'\nexport type GetRowKey<RecordType = DefaultRecordType> = (record: RecordType, index?: number) => Key\nexport interface HeaderSticky {\n offsetHeader?: number\n topSummary?: boolean\n}\n\nexport interface BottomSticky {\n offsetBottom?: number\n}\n\nexport type FlatRecord<T = DefaultRecordType> = {\n record: T\n indent: number\n rowKey: Key\n isExpandRow?: boolean\n rowIndex: number\n pos: string\n flattenIndex: number\n level: number\n}\nexport type GetPopupContainer = (triggerNode: HTMLElement) => HTMLElement\nexport interface SorterResult<RecordType> {\n column?: ColumnType<RecordType>\n order?: SortOrder\n field?: Key | readonly Key[]\n columnKey?: Key\n}\nexport interface TableCurrentDataSource<RecordType = DefaultRecordType> {\n currentDataSource: RecordType[]\n action: TableAction\n}\ntype ChangeEvent<RecordType> = (\n pagination: TablePaginationConfig,\n filters: Record<string, FilterValue | null>,\n sorter: SorterResult<RecordType> | SorterResult<RecordType>[],\n extra: TableCurrentDataSource<RecordType>,\n) => void\ntype Scroll = {\n x?: number | string\n y?: number | string\n scrollToFirstRowOnChange?: boolean\n}\nexport type RowClassName<RecordType> = (\n record: RecordType,\n index: number,\n indent?: number,\n) => string\nexport type ExpandType = null | 'row' | 'nest'\nexport type ExpandedRowRender<ValueType> = (opt: {\n record: ValueType\n index: number\n indent: number\n expanded: boolean\n}) => any\nexport type TriggerEventHandler<RecordType> = (\n record: RecordType,\n key: Key,\n event: MouseEvent,\n) => void\nexport interface RenderExpandIconProps<RecordType> {\n prefixCls: string\n expanded: boolean\n record: RecordType\n expandable: boolean\n onExpand: TriggerEventHandler<RecordType>\n}\nexport type RenderExpandIcon<RecordType> = (props: RenderExpandIconProps<RecordType>) => any\nexport type ExpandIconType = 'default' | 'arrow'\nexport type SelectionItemSelectFn = (currentRowKeys: Key[]) => void\nexport interface SelectionItem {\n key: string\n text: any\n onSelect?: SelectionItemSelectFn\n}\nexport type SelectionSelectFn<T> = (\n record: T,\n selected: boolean,\n selectedRows: T[],\n nativeEvent: Event,\n) => void\nexport interface TableRowSelection<T = DefaultRecordType> {\n /** Keep the selection keys in list even the key not exist in `dataSource` anymore */\n preserveSelectedRowKeys?: boolean\n type?: RowSelectionType\n allowCancelRadio?: boolean\n selectedRowKeys?: Key[]\n defaultSelectedRowKeys?: Key[]\n onChange?: (selectedRowKeys: Key[], selectedRows: T[]) => void\n getCheckboxProps?: (record: T) => Partial<Omit<CheckboxProps, 'checked' | 'defaultChecked'>>\n onSelect?: SelectionSelectFn<T>\n onSelectMultiple?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectAll?: (selected: boolean, selectedRows: T[], changeRows: T[]) => void\n /** @deprecated This function is meaningless and should use `onChange` instead */\n onSelectInvert?: (selectedRowKeys: Key[]) => void\n onSelectNone?: () => void\n selections?: INTERNAL_SELECTION_ITEM[] | boolean\n hideSelectAll?: boolean\n fixed?: boolean\n columnWidth?: string | number\n columnTitle?: any\n checkStrictly?: boolean\n renderCell?: (value: boolean, record: T, index: number, originNode: any) => any\n}\ntype GetComponentProps<DataType> = (\n data: DataType,\n index?: number,\n) => Omit<HTMLAttributes, 'style'> & {\n style?: CSSProperties\n}\nexport type ResizeActionType = 'start' | 'move' | 'end'\nexport type SummaryFixed = boolean | 'top' | 'bottom'\nexport interface ValueParserParams<RecordType = DefaultRecordType, TValue = any> {\n newValue: TValue\n oldValue: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n}\nexport interface EditableValueParams<RecordType = DefaultRecordType, TValue = any> {\n value: TValue\n record: RecordType\n recordIndexs: number[]\n column: ColumnType<RecordType>\n}\n\nexport interface ValueParserFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): TValue | null | undefined\n}\nexport interface ValueGetterFunc<T = any, TValue = any> {\n (params: EditableValueParams<T, TValue>): string | null | undefined\n}\nexport type EditableTrigger = 'click' | 'dblClick' | 'contextmenu'\n\nexport interface PlainObject {\n [key: string]: any\n}\nexport type EditableCellProps<T> = PlainObject | ((params: EditableValueParams<T>) => PlainObject)\n\nexport type EditableCellRules<T> = EditRule[] | ((params: EditableValueParams<T>) => EditRule[])\n\nexport type EditableCellType<T> = (params: EditableValueParams<T>) => boolean\n\nexport type RowEditableType = 'single' | 'multiple'\nexport type RowEditableConfig<DataType> = {\n /**\n * @type single | multiple\n * @name 编辑的类型,支持单选和多选\n */\n type?: RowEditableType\n /** @name 正在编辑的列 */\n editableKeys?: Key[]\n /** 只能编辑一行的的提示 */\n onlyOneLineEditorAlertMessage?: string\n /** 同时只能新增一行的提示 */\n onlyAddOneLineAlertMessage?: string | false\n /** 正在编辑的列修改的时候 */\n onChange?: (editableKeys: Key[], editableRows: DataType[] | DataType) => void\n // /** 正在编辑的列修改的时候 */\n // onValuesChange?: (record: DataType, dataSource: DataType[]) => void\n /** 行保存的时候 */\n onSave?: (\n /** 行 id,一般是唯一id */\n key: Key,\n /** 当前修改的行的值 */\n record: DataType & { index?: number },\n /** 原始值,可以用于判断是否修改 */\n originRow: DataType & { index?: number },\n ) => Promise<any | void> | any | void\n}\n\nexport const baseTableProps = <T = DefaultRecordType>() => ({\n ignoreCellKey: Boolean,\n showHeaderScrollbar: Boolean,\n deepWatchDataSource: Boolean,\n deepWatchColumns: Boolean,\n prefixCls: String,\n columnDrag: {\n type: Boolean,\n default: false,\n },\n animateRows: {\n type: Boolean,\n default: undefined,\n },\n dropdownPrefixCls: { type: String },\n columns: {\n type: Array as PropType<ColumnsType<T>>,\n default: () => [],\n },\n dataSource: {\n type: Array as PropType<T[]>,\n default: () => [],\n },\n virtual: {\n type: Boolean,\n default: false,\n },\n xVirtual: {\n type: Boolean,\n default: undefined,\n },\n rowHeight: {\n type: [Number, Function] as PropType<RowHeight>,\n default: undefined,\n },\n autoHeaderHeight: {\n type: Boolean,\n default: false,\n },\n headerHeight: {\n type: [Number, Array] as PropType<HeaderHeight>,\n },\n height: {\n type: [Number, String],\n },\n maxHeight: {\n type: [Number, String],\n },\n minHeight: {\n type: [Number, String],\n },\n size: {\n type: String as PropType<DensitySize>,\n default: undefined,\n },\n bordered: {\n type: Boolean,\n default: undefined,\n },\n wrapText: {\n type: Boolean,\n default: false,\n },\n loading: {\n type: [Boolean, Object] as PropType<boolean | SpinProps>,\n default: undefined,\n },\n pagination: {\n type: [Boolean, Object] as PropType<false | TablePaginationConfig>,\n default: () => ({}),\n },\n direction: {\n type: String as PropType<'rtl'>,\n default: undefined,\n },\n stripe: {\n type: Boolean,\n default: false,\n },\n rowClassName: {\n type: [String, Function] as PropType<string | RowClassName<T>>,\n default: undefined,\n },\n sticky: {\n type: [Boolean, Object] as PropType<boolean | HeaderSticky>,\n default: true,\n },\n selectedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandFixed: {\n type: [Boolean, String] as PropType<FixedType>,\n default: undefined,\n },\n expandColumnWidth: {\n type: Number,\n default: undefined,\n },\n expandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n defaultExpandedRowKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n expandedRowRender: {\n type: Function as PropType<ExpandedRowRender<T>>,\n default: undefined,\n },\n expandRowByClick: {\n type: Boolean,\n default: undefined,\n },\n selectRowByClick: {\n type: Boolean,\n default: undefined,\n },\n expandIcon: {\n type: Function as PropType<RenderExpandIcon<T>>,\n default: undefined,\n },\n expandIconType: {\n type: String as PropType<ExpandIconType>,\n default: undefined,\n },\n onExpand: {\n type: Function as PropType<(expanded: boolean, record: T) => void>,\n default: undefined,\n },\n onExpandedRowsChange: {\n type: Function as PropType<(expandedKeys: Key[]) => void>,\n default: undefined,\n },\n defaultExpandAllRows: {\n type: Boolean,\n default: undefined,\n },\n indentSize: Number,\n expandIconColumnIndex: Number,\n childrenColumnName: {\n type: String,\n default: undefined,\n },\n rowExpandable: {\n type: Function as PropType<(record: T) => boolean>,\n default: () => true,\n },\n rowSelection: {\n type: Object as PropType<TableRowSelection<DefaultRecordType>>,\n default: undefined,\n },\n rowHoverDelay: {\n type: Number,\n default: 59,\n },\n rowHover: {\n type: Boolean,\n default: undefined,\n },\n rowKey: {\n type: [Function, String] as PropType<string | GetRowKey<T>>,\n default: undefined,\n },\n customRow: {\n type: Function as PropType<GetComponentProps<T>>,\n default: () => ({}),\n },\n customCell: {\n type: Function as PropType<\n (obj: { record: T; rowIndex: number; column: ColumnType<T> }) => Record<string, any>\n >,\n default: () => ({}),\n },\n customHeaderCell: {\n type: Function as PropType<(column: ColumnType<T>) => Record<string, any>>,\n default: () => ({}),\n },\n customSummaryCellProps: {\n type: Function as PropType<\n (obj: {\n record: T\n rowIndex: number\n column: ColumnType<T>\n columnIndex: number\n }) => Record<string, any>\n >,\n default: () => ({}),\n },\n editableKeys: {\n type: Array as PropType<Key[]>,\n default: undefined,\n },\n rowEditable: {\n type: Object as PropType<RowEditableConfig<T>>,\n default: undefined,\n },\n showHeader: {\n type: Boolean,\n default: true,\n },\n showSorterTooltip: {\n type: [Boolean, Object] as PropType<boolean | TooltipProps>,\n default: true,\n },\n getPopupContainer: {\n type: Function as PropType<GetPopupContainer>,\n },\n locale: {\n type: Object as PropType<TableLocale>,\n default: undefined,\n },\n scrollX: {\n type: [Number, String] as PropType<string | number>,\n },\n scroll: {\n type: Object as PropType<Scroll>,\n default: undefined,\n },\n autoHeight: {\n type: [Boolean, Function] as PropType<boolean | ((autoHeight: number) => number)>,\n default: false,\n },\n rangeSelection: {\n type: [String, Boolean] as PropType<boolean | 'single'>,\n default: false,\n },\n copyDelimiter: {\n type: String,\n default: '',\n },\n rowDrag: {\n type: [Boolean],\n },\n onChange: {\n type: Function as PropType<ChangeEvent<T>>,\n },\n summaryFixed: {\n type: [Boolean, String] as PropType<SummaryFixed>,\n default: undefined,\n },\n hasContextmenuPopup: Boolean,\n formatRangeCellText: {\n type: Function as PropType<(params: FormatRangeCellTextParams) => string>,\n },\n\n columnEmptyText: {\n type: [String, Boolean] as PropType<string | false>,\n default: undefined,\n },\n toolBar: { type: Boolean, default: undefined },\n options: { type: [Object, Boolean] as PropType<OptionConfig | false>, default: undefined },\n alwaysShowAlert: { type: Boolean, default: undefined },\n showAlert: { type: Boolean, default: undefined },\n // requst 相关配置\n request: Function as PropType<Request>,\n params: Object as PropType<Record<string, any>>,\n defaultData: Array as PropType<T[]>,\n manual: Boolean,\n manualRequest: Boolean,\n polling: [Number, Function] as PropType<number | ((dataSource: any[]) => number)>,\n debounceTime: Number,\n onLoad: {\n type: Function as PropType<(dataSource: T[], extra: any) => void>,\n default: undefined,\n },\n onLoadingChange: {\n type: Function as PropType<(loading: boolean | SpinProps | undefined) => void>,\n default: undefined,\n },\n onRequestError: {\n type: Function as PropType<(e: Error) => void>,\n default: undefined,\n },\n onSizeChange: {\n type: Function as PropType<(size: DensitySize) => void>,\n default: undefined,\n },\n onSubmit: {\n type: Function as PropType<ProQueryFilterProps['onFinish']>,\n default: undefined,\n },\n onReset: {\n type: Function as PropType<ProQueryFilterProps['onReset']>,\n default: undefined,\n },\n /** @name 列状态的配置,可以用来操作列功能 */\n columnsState: {\n type: Object as PropType<ColumnStateType>,\n default: undefined,\n },\n /** @name 是否要高亮选择行\t */\n highlightSelectRow: {\n type: Boolean,\n default: undefined,\n },\n editableCellState: {\n type: Function as PropType<EditableCellType<T>>,\n },\n\n paginationSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n horizontalScrollSticky: {\n type: [Boolean, Object] as PropType<boolean | BottomSticky>,\n default: true,\n },\n 'onUpdate:selectedRowKeys': {\n type: Function as PropType<(selectedRowKeys: Key[], selectedRows: T[]) => void>,\n },\n onScroll: {\n type: Function as PropType<(e: UIEvent) => void>,\n },\n 'onUpdate:expandedRowKeys': {\n type: Function as PropType<(info: Key[]) => void>,\n },\n onResizeColumn: {\n type: Function as PropType<\n (w: number, col: ColumnType, action: ResizeActionType) => boolean | void\n >,\n default: undefined,\n },\n onRowDragEnd: {\n type: Function as PropType<(opt: DragRowEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onColumnDragEnd: {\n type: Function as PropType<(opt: DragColumnEventInfo) => boolean | Promise<any> | void>,\n default: undefined,\n },\n onCellKeydown: {\n type: Function as PropType<(e: KeyboardEvent, opt: KeydownPayload) => boolean | void>,\n default: undefined,\n },\n onCellClick: {\n type: Function as PropType<(e: MouseEvent, opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onOpenEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onBeforeCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => boolean | Promise<boolean> | void>,\n default: undefined,\n },\n onCloseEditor: {\n type: Function as PropType<(opt: CellRenderArgs) => void>,\n default: undefined,\n },\n onDataChange: {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n onRowValidate: {\n type: Function as PropType<(TablePromiseErrorData) => void>,\n },\n onValidate: {\n type: Function as PropType<(TablePromiseErrorData) => void>,\n },\n 'onUpdate:pagination': {\n type: Function as PropType<(info: TablePaginationConfig) => void>,\n },\n 'onUpdate:dataSource': {\n type: Function as PropType<(dataSource: T[]) => void>,\n },\n 'onUpdate:columns': {\n type: Function as PropType<(columns: ColumnsType<T>, action: 'resize' | 'drag') => void>,\n },\n 'onUpdate:showAlert': {\n type: Function as PropType<(show: boolean) => void>,\n },\n})\n\nexport const tableProps = <T = DefaultRecordType>() => ({\n ...baseTableProps<T>(),\n title: String,\n subTitle: String,\n footer: Function,\n tooltip: String,\n cardProps: {\n type: [Object, Boolean] as PropType<CardProps | false>,\n default: undefined,\n },\n search: {\n type: [Object, Boolean] as PropType<SearchConfig | false>,\n default: undefined,\n },\n beforeSearchSubmit: {\n type: Function as PropType<(params: Partial<T>) => any>,\n default: undefined,\n },\n cardBordered: {\n type: [Boolean, Object] as PropType<Bordered>,\n default: undefined,\n },\n})\nclass Helper<T extends DefaultRecordType> {\n Return = tableProps<T>()\n}\nexport type ProTableProps<T extends DefaultRecordType = DefaultRecordType> = Partial<\n ExtractPropTypes<Helper<T>['Return']>\n>\nexport interface TableLocale {\n filterTitle?: string\n filterConfirm?: any\n filterReset?: any\n filterEmptyText?: any\n emptyText?: any | (() => any)\n selectAll?: any\n selectNone?: any\n selectInvert?: any\n selectionAll?: any\n sortTitle?: string\n expand?: string\n collapse?: string\n triggerDesc?: string\n triggerAsc?: string\n cancelSort?: string\n}\nexport interface ColumnTitleProps<RecordType> {\n /** @deprecated Please use `sorterColumns` instead. */\n sortOrder?: SortOrder\n /** @deprecated Please use `sorterColumns` instead. */\n sortColumn?: ColumnType<RecordType>\n column: ColumnType<RecordType>\n sortColumns?: {\n column: ColumnType<RecordType>\n order: SortOrder\n }[]\n filters?: Record<string, string[]>\n}\nexport type ColumnTitle<RecordType = DefaultRecordType> =\n | string\n | number\n | object\n | ((props: ColumnTitleProps<RecordType>) => any)\ninterface ColumnSharedType {\n title?: ColumnTitle\n key?: Key\n className?: string\n class?: string\n fixed?: FixedType\n ellipsis?: CellEllipsisType\n align?: AlignType\n wrapText?: boolean\n dataIndex?: DataIndex\n}\nexport interface FilterConfirmProps {\n closeDropdown: boolean\n}\nexport type AlignType = 'left' | 'center' | 'right'\nexport interface ColumnFilterItem {\n text: string | number\n value: string | number | boolean\n children?: ColumnFilterItem[]\n}\nexport type SortOrder = 'desc' | 'asc' | null\nexport type CompareFn<T> = (a: T, b: T, sortOrder?: SortOrder) => number\nexport type FilterValue = (Key | boolean)[]\nexport type FilterKey = Key[] | null\nexport interface FilterDropdownProps {\n prefixCls: string\n confirm: (param?: FilterConfirmProps) => void\n clearFilters?: () => void\n filters?: ColumnFilterItem[]\n /** @deprecated Please use `open` instead */\n visible: boolean\n open: boolean\n}\nexport interface CellType {\n key?: Key\n class?: string\n style?: CSSProperties\n colSpan?: number\n rowSpan?: number\n}\nexport interface HeaderCellType {\n key?: Key\n class?: string\n style?: CSSProperties\n column?: FinallyColumnType\n colSpan?: number\n rowSpan?: number\n hasSubColumns?: boolean\n colStart?: number\n colEnd?: number\n}\nexport interface RenderedCell {\n props?: CellType\n children?: any\n}\nexport type CellRenderArgs = {\n record: any\n column: ColumnType<DefaultRecordType> | ColumnGroupType<DefaultRecordType>\n text: any\n value: any\n index: number\n oldValue?: any\n recordIndexs: number[]\n openEditor: () => void\n closeEditor: () => void\n}\nexport interface ContextmenuPopupArg<RecordT, ColumnT>\n extends Omit<Partial<CellRenderArgs>, 'column' | 'record'> {\n column?: ColumnT\n record?: RecordT\n event: MouseEvent\n isExpand?: boolean\n hidePopup: () => void\n}\nexport type MenuFilterProps = {\n prefixCls: string\n setSelectedKeys: (selectedKeys: Key[]) => void\n selectedKeysRef: Ref<Key[]>\n confirm: () => void\n clearFilters: () => void\n filters: ColumnFilterItem[]\n}\nexport interface MenuPopupArg<ColumnT> {\n column: ColumnT\n event: MouseEvent\n hidePopup: () => void\n filter: MenuFilterProps\n}\nexport interface CellTooltip {\n placement?:\n | 'top'\n | 'left'\n | 'right'\n | 'bottom'\n | 'topLeft'\n | 'topRight'\n | 'bottomLeft'\n | 'bottomRight'\n | 'leftTop'\n | 'leftBottom'\n | 'rightTop'\n | 'rightBottom'\n color?: string\n overlayStyle?: CSSProperties\n overlayClassName?: string\n openClassName?: string\n title?: (args: CellRenderArgs) => any\n align?: TooltipAlignConfig\n shouldOpen?: (isEllipsis: boolean, args: CellRenderArgs) => boolean\n allowEnter?: boolean\n}\n\nexport interface EditableCellConfig<T = DefaultRecordType> {\n /**\n * 除了点击非自身元素退出编辑态之外,还有哪些事件退出编辑态。示例:`abortEditOnEvent: ['onChange']`\n */\n abortEditOnEvent?: string[]\n editableTrigger?: EditableTrigger | EditableTrigger[]\n /**\n * 组件定义,如:`Input` `Select`。对于完全自定义的组件(非组件库内的组件),组件需要支持 `value` 和 `onChange` ;如果还需要支持校验规则,则组件还需实现 `tips` 和 `status` 两个 API,实现规则可参考 `Input` 组件\n */\n component?: any\n /**\n * 单元格默认状态是否为编辑态\n * @default false\n */\n defaultEditable?: boolean\n /**\n * 设置当前列的单元格始终保持为编辑态\n * @default false\n */\n keepEditMode?: boolean\n\n /**\n * 是否可以编辑\n */\n editable?: (context: EditableValueParams<T>) => boolean\n valueParser?: ValueParserFunc<T>\n valueGetter?: ValueGetterFunc<T>\n valueSetter?: (params: EditableValueParams<T>) => boolean | Promise<any>\n /**\n * 透传给编辑组件的事件,参数有({ row, rowIndex, col, colIndex, editedRow, updateEditedCellValue })。可以使用参数 `updateEditedCellValue` 更新当前单元格(或当前行任意编辑状态单元格)的值。<br/>更新当前单元格数据示例:`updateEditedCellValue(value)`;<br/>更新当前行编辑态数据示例:`updateEditedCellValue({ isUpdateCurrentRow: true, column_key: 'test' })`;<br/>更新其他行编辑态数据示例:`updateEditedCellValue({ rowValue: '124', column_key: 'test' })`\n */\n on?: (context: EditableValueParams<T>) => { [eventName: string]: Function }\n /**\n * 编辑完成后,退出编辑模式时触发\n */\n onEdited?: (context: EditableValueParams<T>) => void\n /**\n * 透传给组件 `edit.component` 的属性,可以使用 `updateEditedCellValue` 更新当前行任意编辑状态单元格的值\n */\n props?: EditableCellProps<T>\n /**\n * 校验规则\n */\n rules?: EditableCellRules<T>\n /**\n * 是否显示编辑图标\n * @default true\n */\n // showEditIcon?: boolean\n /**\n * 触发校验的时机,有 2 种:退出编辑时和数据变化时\n * @default 'exit'\n */\n validateTrigger?: 'exit' | 'change'\n}\n\nexport interface ColumnType<RecordType = DefaultRecordType>\n extends ColumnSharedType,\n Omit<\n ProFormItemType,\n | 'key'\n | 'originKey'\n | 'tooltip'\n | 'hidden'\n | 'grid'\n | 'title'\n | 'spaceProps'\n | 'children'\n | 'width'\n | 'ignoreWidth'\n | 'name'\n | 'originName'\n | 'rowProps'\n | 'colProps'\n | 'valueEnum'\n > {\n search?: ProFormItemType\n colSpan?: number\n dataIndex?: DataIndex\n key?: Key\n rowSpan?: number\n width?: number\n minWidth?: number\n maxWidth?: number\n resizable?: boolean\n flex?: number\n autoHeight?: boolean\n tooltip?: true | CellTooltip\n headerTooltip?: string | true\n hidden?: boolean\n sorter?:\n | boolean\n | CompareFn<RecordType>\n | {\n compare?: CompareFn<RecordType>\n /** Config multiple sorter order priority */\n multiple?: number\n }\n showCellPopover?: boolean | PopoverProps\n sortOrder?: SortOrder\n defaultSortOrder?: SortOrder\n sortDirections?: SortOrder[]\n showSorterTooltip?: boolean | TooltipProps\n filtered?: boolean\n filters?: ColumnFilterItem[]\n filterIcon?: ({ filtered }: { filtered: boolean }) => any\n filterDropdown?: (props: FilterDropdownProps) => any\n filterMultiple?: boolean\n filteredValue?: FilterValue | null\n defaultFilteredValue?: FilterValue | null\n onFilter?: (value: string | number | boolean, record: RecordType) => boolean\n showFilter?: boolean\n showMenu?: boolean | 'hover'\n /** @deprecated Please use `filterDropdownOpen` instead */\n filterDropdownVisible?: boolean\n /** @deprecated Please use `onFilterDropdownOpenChange` instead */\n onFilterDropdownVisibleChange?: (open: boolean) => void\n filterDropdownOpen?: boolean\n onFilterDropdownOpenChange?: (open: boolean) => void\n customFilterDropdown?: boolean\n getPopupContainer?: GetPopupContainer\n customCell?: (obj: {\n record: any\n rowIndex: number\n column: ColumnType<RecordType>\n }) => Record<string, any>\n customHeaderCell?: (column: ColumnType<RecordType>) => Record<string, any>\n customRender?: (opt: {\n value: any\n text: any\n record: RecordType\n index: number\n column: ColumnType<RecordType>\n cancelEditable: (recordKey: Key) => boolean\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n isEditable: (recordKey: Key) => boolean\n }) => any | RenderedCell\n /**\n * 可编辑单元格配置项,具体属性参考文档 `EditableCellConfig` 描述\n */\n edit?: EditableCellConfig<RecordType>\n\n valueParser?: ValueParserFunc<RecordType>\n valueGetter?: ValueGetterFunc<RecordType>\n valueSetter?: (params: ValueParserParams<RecordType>) => boolean | Promise<any>\n valueChange?: (e: Event, params: ValueParserParams<RecordType>) => void\n rowDrag?: boolean | ((arg: { record: RecordType; column: ColumnType<RecordType> }) => boolean)\n drag?: boolean\n /** @deprecated Please use `v-slot:customFilterIcon` `v-slot:bodyCell` `v-slot:headerCell` instead */\n slots?: {\n filterIcon?: string\n filterDropdown?: string\n customRender?: string\n title?: string\n }\n valueEnum?: ((row: RecordType) => Record<string, ValueEnumType>) | Record<string, ValueEnumType>\n valueStatus?:\n | ((value: any, row: RecordType, valueEnum?: ValueEnumType) => ValueStatus)\n | ValueStatus\n renderText?: (text: any, record: RecordType, rowIndex: number) => string | number\n /** @name 列设置的 disabled */\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n /** @name 在 table 中隐藏 */\n hideInTable?: boolean\n\n /** @name 在 search 中隐藏 */\n hideInSearch?: boolean\n\n /** @name 不在配置工具中显示 */\n hideInSetting?: boolean\n\n children?: ColumnType<RecordType>[]\n}\nexport interface ColumnGroupType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n children?: ColumnsType<RecordType>\n}\nexport type ColumnsType<RecordType = DefaultRecordType> = (\n | ColumnGroupType<RecordType>\n | ColumnType<RecordType>\n)[]\nexport interface FinallyColumnType<RecordType = DefaultRecordType> extends ColumnType<RecordType> {\n finallyWidth?: number\n rowSpan?: number\n height?: number\n left?: number\n top?: number\n type?: 'checkbox' | 'expand' | 'rowIndex' | 'draggable'\n columnKey: Key\n columnIndex: number\n children?: FinallyColumnType<RecordType>[]\n originColumn?: ColumnsType[number]\n __Internal__Column__?: boolean\n showTitle: boolean\n fixed?: 'left' | 'right'\n}\ntype CellInfo = {\n columnKey: Key\n rowKey: Key\n}\nexport interface TableExposeType {\n scrollTo: (pos: string | Position, behavior: 'auto' | 'smooth') => void\n scrollLeft?: number\n scrollTop?: number\n bodyRef: HTMLDivElement\n rootRef: HTMLDivElement\n paginationRef: HTMLDivElement\n formAction: ProFormActionType\n getSelectedRange: () => SelectedRangeItem[]\n clearAllSelectedRange: () => void\n clearDataSource: () => void\n copySelectedRange: () => void\n appendCellToSelectedRange: (cell: AppendCellRange) => void\n openEditor: (cellInfos: CellInfo[]) => void\n closeEditor: (cellInfos?: CellInfo[]) => void\n reload: (resetPageIndex?: boolean) => Promise<void>\n reset: () => void\n calcTableHeight: () => Promise<void>\n formSearchSubmit: () => void\n getSearchParams: () => Record<string, any>\n validateRowData: (rowValue: any) => Promise<TablePromiseErrorData>\n validateTableData: () => Promise<TablePromiseErrorData>\n addEditRecord: (recordValue?: any, options?: AddLineOptions) => false | undefined\n startEditable: (recordKey: Key, recordValue?: any) => boolean\n cancelEditable: (recordKey: Key) => boolean\n saveEditable: (recordKey: Key) => Promise<boolean>\n}\nexport interface DragRowsHandleInfo {\n y: number\n top: number\n height: number\n rowKey: Key\n centerY: number\n record: DefaultRecordType\n indexs: number[]\n}\nexport interface DragColumnHandleInfo {\n x: number\n left: number\n width: number\n columnKey: Key\n centerX: number\n indexs: number[]\n}\nexport interface DragRowEventInfo {\n top: number\n height: number\n dir: typeof DOWN | typeof UP\n rowKey: Key\n record: DefaultRecordType\n event: MouseEvent | Touch\n column: ColumnType\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n fromIndexs: number[]\n insertToRowKey: Key\n}\nexport interface RowDragGhostArg<RecordT, ColumnT> {\n record: RecordT\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n preTargetInfo: DragRowsHandleInfo | null\n nextTargetInfo: DragRowsHandleInfo | null\n}\nexport interface DragColumnEventInfo {\n event: MouseEvent | Touch\n column: ColumnType\n targetColumn: ColumnType\n dir: typeof LEFT | typeof RIGHT\n}\nexport interface ColumnDragGhostArg<ColumnT> {\n column: ColumnT\n icon: VNode\n allowed: boolean\n dragging: boolean\n event: MouseEvent | Touch\n targetColumn: ColumnT\n}\n\nexport type DensitySize = 'small' | 'middle' | 'large' | undefined\nexport type Request<T = DefaultRecordType, U = Record<string, any>> = (\n params: U & {\n pageSize?: number\n current?: number\n keyword?: string\n },\n sorters?: SorterResult<T>[],\n filter?: Record<string, (string | number)[] | null>,\n) => Promise<Partial<RequestData<T>>>\n\nexport type RequestData<T = DefaultRecordType> = {\n data: T[] | undefined\n success?: boolean\n total?: number\n} & Record<string, any>\n\nexport type OptionsFunctionType = (e: any, action?: UseFetchDataAction<any>) => void\nexport type OptionsType = OptionsFunctionType | boolean\n\nexport type SettingOptionType = {\n draggable?: boolean\n checkable?: boolean\n checkedReset?: boolean\n listsHeight?: number\n}\n\nexport type OptionSearchProps = Omit<InputProps, 'onSearch'> & {\n /** 如果 onSearch 返回一个false,直接拦截请求 */\n onSearch?: (keyword: string) => Promise<boolean | undefined> | boolean | undefined\n}\n\nexport type OptionConfig = {\n density?: boolean\n filter?: boolean\n fullScreen?: OptionsType\n reload?: OptionsType\n setting?: boolean | SettingOptionType\n search?: (OptionSearchProps & { name?: string }) | boolean\n}\n\nexport type ValueEnumType = {\n text: string | number\n label?: string | number\n status?: string\n color?: string\n disabled?: boolean\n value?: string | number | boolean\n children?: ValueEnumType[]\n}\n\nexport type ColumnsState = {\n show?: boolean\n fixed?: true | 'right' | 'left' | undefined\n order?: number\n width?: number\n disable?:\n | boolean\n | {\n checkbox: boolean\n }\n}\n\nexport type ColumnStateType = {\n /**\n * 持久化的类型,支持 localStorage 和 sessionStorage\n *\n * @param localStorage 设置在关闭浏览器后也是存在的\n * @param sessionStorage 关闭浏览器后会丢失\n */\n persistenceType?: 'localStorage' | 'sessionStorage'\n /** 持久化的key,用于存储到 storage 中 */\n persistenceKey?: string\n /** ColumnsState 的值 */\n defaultValue?: Record<string, ColumnsState>\n /** ColumnsState 的值 */\n value?: Record<string, ColumnsState>\n onChange?: (map: Record<string, ColumnsState>) => void\n}\n\nexport type SearchConfig = ProQueryFilterProps & {\n cardProps?: CardProps | false\n tabName?: string\n style?: CSSProperties\n}\n\nexport type BorderedType = 'search' | 'table'\n\nexport type Bordered =\n | boolean\n | {\n search?: boolean\n table?: boolean\n }\n\nexport interface IsDateOptions {\n format: string\n strictMode: boolean\n delimiters: string[]\n}\n\nexport type CustomValidator = (\n val: any,\n) => CustomValidateResolveType | Promise<CustomValidateResolveType>\n\nexport type CustomValidateResolveType = boolean | CustomValidateObj\n\nexport interface CustomValidateObj {\n result: boolean\n message: string\n type?: 'error' | 'warning' | 'success'\n}\n\nexport type AddLineOptions = {\n position?: 'top' | 'bottom'\n newRecordType?: 'dataSource' | 'cache'\n}\n\nexport type TableEditingCell<RecordType = DefaultRecordType> = {\n recordIndexs: number[]\n column: ColumnType<RecordType>\n rowKey: Key\n originRecord: RecordType\n rowIndex: number\n columnKey: Key\n validateEdit: () => Promise<true | AllValidateResult[]>\n}\nexport type AllValidateResult = CustomValidateObj | ValidateResultType\n\nexport type TableErrorListMap = { [key: string]: AllValidateResult[] }\nexport type ErrorListObjectType = TableEditingCell & { errorList: AllValidateResult[] }\n\nexport interface TablePromiseErrorData {\n errors: ErrorListObjectType[]\n errorMap: TableErrorListMap\n data?: DefaultRecordType[]\n}\nexport interface ValidateResultType extends EditRule {\n result: boolean\n}\nexport interface EditRule {\n /**\n * 内置校验方法,校验值类型是否为布尔类型,示例:`{ boolean: true, message: '数据类型必须是布尔类型' }`\n */\n boolean?: boolean\n /**\n * 内置校验方法,校验值是否属于枚举值中的值。示例:`{ enum: ['primary', 'info', 'warning'], message: '值只能是 primary/info/warning 中的一种' }`\n */\n enum?: Array<string>\n /**\n * 内置校验方法,校验值是否为身份证号码,组件校验正则为 `/^(\\\\d{18,18}|\\\\d{15,15}|\\\\d{17,17}x)$/i`,示例:`{ idcard: true, message: '请输入正确的身份证号码' }`\n */\n idcard?: boolean\n /**\n * 内置校验方法,校验值固定长度,如:len: 10 表示值的字符长度只能等于 10 ,中文表示 2 个字符,英文为 1 个字符。示例:`{ len: 10, message: '内容长度不对' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length === 10, message: '内容文本长度只能是 10 个字' }`\n */\n len?: number | boolean\n /**\n * 内置校验方法,校验值最大长度,如:max: 100 表示值最多不能超过 100 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ max: 10, message: '内容超出' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length <= 10, message: '内容文本长度不能超过 10 个字' }`<br />如果数据类型数字(Number),则自动变为数字大小的比对\n */\n max?: number | boolean\n /**\n * 校验未通过时呈现的错误信息,值为空则不显示\n * @default ''\n */\n message?: string\n /**\n * 内置校验方法,校验值最小长度,如:min: 10 表示值最多不能少于 10 个字符,中文表示 2 个字符,英文为 1 个字符。示例:`{ min: 10, message: '内容长度不够' }`。<br />如果希望字母和中文都是同样的长度,示例:`{ validator: (val) => val.length >= 10, message: '内容文本长度至少为 10 个字' }`。<br />如果数据类型数字(Number),则自动变为数字大小的比对\n */\n min?: number | boolean\n /**\n * 内置校验方法,校验值是否为数字(1.2 、 1e5 都算数字),示例:`{ number: true, message: '请输入数字' }`\n */\n number?: boolean\n /**\n * 内置校验方法,校验值是否符合正则表达式匹配结果,示例:`{ pattern: /@qq.com/, message: '请输入 QQ 邮箱' }`\n */\n pattern?: RegExp\n /**\n * 内置校验方法,校验值是否已经填写。该值为 true,默认显示必填标记,可通过设置 `requiredMark: false` 隐藏必填标记\n */\n required?: boolean\n /**\n * 内置校验方法,校验值是否为手机号码,校验正则为 `/^1[3-9]\\d{9}$/`,示例:`{ telnumber: true, message: '请输入正确的手机号码' }`\n */\n telnumber?: boolean\n /**\n * 校验未通过时呈现的错误信息类型,有 告警信息提示 和 错误信息提示 等两种\n * @default error\n */\n type?: 'error' | 'warning'\n /**\n * 自定义校验规则,示例:`{ validator: (val) => val.length > 0, message: '请输入内容'}`\n */\n validator?: CustomValidator\n /**\n * 内置校验方法,校验值是否为空格。示例:`{ whitespace: true, message: '值不能为空' }`\n */\n whitespace?: boolean\n}\n"],"names":[],"mappings":"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"}
@@ -19,6 +19,10 @@ const useCellProps = ({
19
19
  leftWidth,
20
20
  centerWidth,
21
21
  getRowHeight,
22
+ cancelEditable,
23
+ startEditable,
24
+ saveEditable,
25
+ isEditable,
22
26
  customCell: contextCustomCell
23
27
  }) => {
24
28
  const allCellProps = vue.shallowRef({});
@@ -41,6 +45,10 @@ const useCellProps = ({
41
45
  value,
42
46
  record,
43
47
  index: rowIndex,
48
+ cancelEditable,
49
+ startEditable,
50
+ saveEditable,
51
+ isEditable,
44
52
  column: originColumn
45
53
  });
46
54
  if (customCellRender && validate.isObject(customCellRender) && !validate.isArray(customCellRender) && !vue.isVNode(customCellRender)) {