@hi-ui/table 4.0.0-beta.9 → 4.0.2
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.
- package/README.md +48 -45
- package/lib/cjs/BaseTable.js +29 -25
- package/lib/cjs/Table.js +44 -27
- package/lib/cjs/TableAdvancedFilter.js +38 -24
- package/lib/cjs/TableBody.js +12 -13
- package/lib/cjs/TableCell.js +10 -11
- package/lib/cjs/TableColumnMenu.js +27 -23
- package/lib/cjs/TableEmbedRow.js +4 -5
- package/lib/cjs/TableHeader.js +21 -13
- package/lib/cjs/TableRow.js +18 -18
- package/lib/cjs/TableSettingMenu.js +34 -42
- package/lib/cjs/context.js +1 -2
- package/lib/cjs/hooks/use-async-switch.js +5 -6
- package/lib/cjs/hooks/use-check.js +39 -17
- package/lib/cjs/hooks/use-col-hidden.js +1 -2
- package/lib/cjs/hooks/use-col-sorter.js +43 -18
- package/lib/cjs/hooks/use-col-width.js +7 -8
- package/lib/cjs/hooks/use-colgroup.js +10 -5
- package/lib/cjs/hooks/use-drag.js +8 -9
- package/lib/cjs/hooks/use-embed-expand.js +4 -5
- package/lib/cjs/hooks/use-expand.js +2 -5
- package/lib/cjs/hooks/use-pagination.js +4 -5
- package/lib/cjs/hooks/use-queue.js +1 -2
- package/lib/cjs/icons/index.js +5 -6
- package/lib/cjs/index.js +1 -2
- package/lib/cjs/styles/index.scss.js +3 -4
- package/lib/cjs/use-table.js +38 -29
- package/lib/cjs/utils/index.js +10 -8
- package/lib/esm/BaseTable.js +11 -7
- package/lib/esm/Table.js +36 -19
- package/lib/esm/TableAdvancedFilter.js +28 -14
- package/lib/esm/TableBody.js +1 -2
- package/lib/esm/TableCell.js +2 -3
- package/lib/esm/TableColumnMenu.js +12 -8
- package/lib/esm/TableEmbedRow.js +1 -2
- package/lib/esm/TableHeader.js +11 -4
- package/lib/esm/TableRow.js +8 -8
- package/lib/esm/TableSettingMenu.js +17 -25
- package/lib/esm/context.js +1 -2
- package/lib/esm/hooks/use-async-switch.js +1 -2
- package/lib/esm/hooks/use-check.js +36 -14
- package/lib/esm/hooks/use-col-hidden.js +1 -2
- package/lib/esm/hooks/use-col-sorter.js +42 -19
- package/lib/esm/hooks/use-col-width.js +1 -2
- package/lib/esm/hooks/use-colgroup.js +7 -2
- package/lib/esm/hooks/use-drag.js +7 -8
- package/lib/esm/hooks/use-embed-expand.js +1 -2
- package/lib/esm/hooks/use-expand.js +2 -5
- package/lib/esm/hooks/use-pagination.js +1 -2
- package/lib/esm/hooks/use-queue.js +1 -2
- package/lib/esm/icons/index.js +1 -2
- package/lib/esm/index.js +1 -2
- package/lib/esm/styles/index.scss.js +4 -6
- package/lib/esm/use-table.js +31 -22
- package/lib/esm/utils/index.js +10 -8
- package/lib/types/BaseTable.d.ts +12 -4
- package/lib/types/Table.d.ts +9 -5
- package/lib/types/TableAdvancedFilter.d.ts +4 -2
- package/lib/types/TableColumnMenu.d.ts +2 -0
- package/lib/types/context.d.ts +9 -7
- package/lib/types/hooks/use-col-sorter.d.ts +6 -7
- package/lib/types/hooks/use-drag.d.ts +2 -1
- package/lib/types/types.d.ts +108 -24
- package/lib/types/use-table.d.ts +20 -5
- package/lib/types/utils/index.d.ts +1 -1
- package/package.json +36 -31
- package/lib/cjs/BaseTable.js.map +0 -1
- package/lib/cjs/Table.js.map +0 -1
- package/lib/cjs/TableAdvancedFilter.js.map +0 -1
- package/lib/cjs/TableBody.js.map +0 -1
- package/lib/cjs/TableCell.js.map +0 -1
- package/lib/cjs/TableColumnMenu.js.map +0 -1
- package/lib/cjs/TableEmbedRow.js.map +0 -1
- package/lib/cjs/TableHeader.js.map +0 -1
- package/lib/cjs/TableRow.js.map +0 -1
- package/lib/cjs/TableSettingMenu.js.map +0 -1
- package/lib/cjs/context.js.map +0 -1
- package/lib/cjs/hooks/use-async-switch.js.map +0 -1
- package/lib/cjs/hooks/use-check.js.map +0 -1
- package/lib/cjs/hooks/use-col-hidden.js.map +0 -1
- package/lib/cjs/hooks/use-col-sorter.js.map +0 -1
- package/lib/cjs/hooks/use-col-width.js.map +0 -1
- package/lib/cjs/hooks/use-colgroup.js.map +0 -1
- package/lib/cjs/hooks/use-drag-sorter/lib/esm/index.js +0 -287
- package/lib/cjs/hooks/use-drag-sorter/lib/esm/index.js.map +0 -1
- package/lib/cjs/hooks/use-drag.js.map +0 -1
- package/lib/cjs/hooks/use-embed-expand.js.map +0 -1
- package/lib/cjs/hooks/use-expand.js.map +0 -1
- package/lib/cjs/hooks/use-pagination.js.map +0 -1
- package/lib/cjs/hooks/use-queue.js.map +0 -1
- package/lib/cjs/icons/index.js.map +0 -1
- package/lib/cjs/index.js.map +0 -1
- package/lib/cjs/styles/index.scss.js.map +0 -1
- package/lib/cjs/use-table.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js +0 -29
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js +0 -27
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js +0 -29
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js +0 -29
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/index.js +0 -62
- package/lib/cjs/utils/func-utils/lib/esm/index.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js +0 -37
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Map.js +0 -37
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Map.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js +0 -37
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Set.js +0 -37
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Set.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js +0 -34
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js +0 -37
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js +0 -60
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js +0 -49
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js +0 -80
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js +0 -63
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js +0 -34
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js +0 -33
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js +0 -36
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js +0 -48
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js +0 -77
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js +0 -96
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js +0 -40
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js +0 -50
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js +0 -28
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js +0 -58
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js +0 -49
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_root.js +0 -39
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_root.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js +0 -55
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js +0 -61
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js +0 -67
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js +0 -69
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObject.js +0 -72
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObject.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js +0 -69
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js.map +0 -1
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js +0 -45
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js.map +0 -1
- package/lib/cjs/utils/index.js.map +0 -1
- package/lib/esm/BaseTable.js.map +0 -1
- package/lib/esm/Table.js.map +0 -1
- package/lib/esm/TableAdvancedFilter.js.map +0 -1
- package/lib/esm/TableBody.js.map +0 -1
- package/lib/esm/TableCell.js.map +0 -1
- package/lib/esm/TableColumnMenu.js.map +0 -1
- package/lib/esm/TableEmbedRow.js.map +0 -1
- package/lib/esm/TableHeader.js.map +0 -1
- package/lib/esm/TableRow.js.map +0 -1
- package/lib/esm/TableSettingMenu.js.map +0 -1
- package/lib/esm/context.js.map +0 -1
- package/lib/esm/hooks/use-async-switch.js.map +0 -1
- package/lib/esm/hooks/use-check.js.map +0 -1
- package/lib/esm/hooks/use-col-hidden.js.map +0 -1
- package/lib/esm/hooks/use-col-sorter.js.map +0 -1
- package/lib/esm/hooks/use-col-width.js.map +0 -1
- package/lib/esm/hooks/use-colgroup.js.map +0 -1
- package/lib/esm/hooks/use-drag-sorter/lib/esm/index.js +0 -264
- package/lib/esm/hooks/use-drag-sorter/lib/esm/index.js.map +0 -1
- package/lib/esm/hooks/use-drag.js.map +0 -1
- package/lib/esm/hooks/use-embed-expand.js.map +0 -1
- package/lib/esm/hooks/use-expand.js.map +0 -1
- package/lib/esm/hooks/use-pagination.js.map +0 -1
- package/lib/esm/hooks/use-queue.js.map +0 -1
- package/lib/esm/icons/index.js.map +0 -1
- package/lib/esm/index.js.map +0 -1
- package/lib/esm/styles/index.scss.js.map +0 -1
- package/lib/esm/use-table.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js +0 -24
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js +0 -22
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js +0 -24
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js +0 -24
- package/lib/esm/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/index.js +0 -45
- package/lib/esm/utils/func-utils/lib/esm/index.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js +0 -29
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Map.js +0 -29
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Map.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js +0 -29
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Set.js +0 -29
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Set.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js +0 -27
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js +0 -29
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js +0 -51
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js +0 -41
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js +0 -70
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js +0 -59
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js +0 -27
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js +0 -30
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js +0 -17
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js +0 -40
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js +0 -70
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js +0 -87
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js +0 -35
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js +0 -43
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js +0 -25
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js +0 -54
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js +0 -44
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_root.js +0 -21
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_root.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js +0 -50
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js +0 -57
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js +0 -62
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js +0 -61
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObject.js +0 -55
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObject.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js +0 -52
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js.map +0 -1
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js +0 -40
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js.map +0 -1
- package/lib/esm/utils/index.js.map +0 -1
package/README.md
CHANGED
|
@@ -15,40 +15,40 @@
|
|
|
15
15
|
|
|
16
16
|
## Props
|
|
17
17
|
|
|
18
|
-
| 属性名 | 描述 | 类型 | 可选值
|
|
19
|
-
| --------------------- | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------- |
|
|
20
|
-
| data | 表格数据 | object[] | -
|
|
21
|
-
| fieldKey | 指定 data 表格数据中某一属性为 key | string | -
|
|
22
|
-
| columns | 表格列配置信息 | ColumnItem[] | -
|
|
23
|
-
| bordered | 是否显示边框(表头分组模式下,表格自带边框) | boolean | true \| false
|
|
24
|
-
| sticky | 是否支持表头吸顶 | boolean | true \| false
|
|
25
|
-
| stickyTop | 表头吸顶距离视口顶部距离 | number | -
|
|
26
|
-
| highlightedColKeys | 高亮列(受控) | string[] | -
|
|
27
|
-
| expandedRender | 表格展开项 | (record: dataItem, index: number) => ReactNode \| Promise | -
|
|
28
|
-
| rowExpandable | 设置是否允许行展开 | (record: dataItem ) => ReactNode \| Boolean | -
|
|
29
|
-
| onExpand | 表格展开时的回调函数 | (expanded, row: object) => void | -
|
|
30
|
-
| expandedRowKeys | 内嵌式表格以及树形表格展开的行 | number[] | -
|
|
31
|
-
| maxHeight | 表格最大高度,当穿过该高度时,展示滚动条且表头固定 | number | -
|
|
32
|
-
| fixedToColumn | 表格列冻结设置,为 string 时仅支持从左侧冻结至某一列 | string \| FixedOption | columns 中对应的 dataKey
|
|
33
|
-
| size | 配置表格尺寸 | string | '
|
|
34
|
-
| pagination | 表格分页配置项 | Pagination | -
|
|
35
|
-
| errorRowKeys | 错误列(受控) | string[] | -
|
|
36
|
-
| highlightedRowKeys | 高亮行(受控) | string[] | -
|
|
37
|
-
| rowSelection | 行可选(受控) | RowSelection | -
|
|
38
|
-
| dataSource | 异步数据源 | (current: number) => DataSource | -
|
|
39
|
-
| showColMenu | 是否支持列操作 | boolean | -
|
|
40
|
-
| striped | 是否展示为斑马纹效果 | boolean | -
|
|
41
|
-
| setting | 是否集成控制面板功能 | boolean | -
|
|
42
|
-
| emptyContent | 数据为空时的展示内容 | string \| () => ReactNode | -
|
|
43
|
-
| resizable | 是否能够动态控制列宽 | boolean | true \| false
|
|
44
|
-
| standard | 标准模式,默认集成 `showColMenu = true, sticky = true, bordered = true, setting = true, striped = true` | boolean | true \| false
|
|
45
|
-
| loading | 加载中状态 | boolean | true \| false
|
|
46
|
-
| scrollWidth | 表格滚动的宽度(当表格总设置宽度(含自适应列)大于表格父级容器宽度时需要设置)**3.7.0 版本以后,该属性不建议使用** | number | -
|
|
47
|
-
| showColHighlight | 表格某一列`hover`时,该列高亮 | boolean | true \| false
|
|
48
|
-
| draggable | 表格行可拖拽 | boolean | true \| false
|
|
49
|
-
| hiddenColKeys | 隐藏列(受控) (v3.9.0 新增) | string[] | -
|
|
50
|
-
| onHiddenColKeysChange | 列隐藏设置时回调 (v3.9.0 新增) | (hiddenColKeys: string[]) => void | -
|
|
51
|
-
| cellRender | 全局控制单元格自定义渲染,优先级低于 column 的 render 方法 | (text: DataItem[ColumnItem[dataKey]]) => ReactNode | -
|
|
18
|
+
| 属性名 | 描述 | 类型 | 可选值 | 默认值 |
|
|
19
|
+
| --------------------- | ------------------------------------------------------------------------------------------------------------------ | --------------------------------------------------------- | ------------------------ | ---------- |
|
|
20
|
+
| data | 表格数据 | object[] | - | - |
|
|
21
|
+
| fieldKey | 指定 data 表格数据中某一属性为 key | string | - | 'key' |
|
|
22
|
+
| columns | 表格列配置信息 | ColumnItem[] | - | - |
|
|
23
|
+
| bordered | 是否显示边框(表头分组模式下,表格自带边框) | boolean | true \| false | false |
|
|
24
|
+
| sticky | 是否支持表头吸顶 | boolean | true \| false | false |
|
|
25
|
+
| stickyTop | 表头吸顶距离视口顶部距离 | number | - | 0 |
|
|
26
|
+
| highlightedColKeys | 高亮列(受控) | string[] | - | [] |
|
|
27
|
+
| expandedRender | 表格展开项 | (record: dataItem, index: number) => ReactNode \| Promise | - | - |
|
|
28
|
+
| rowExpandable | 设置是否允许行展开 | (record: dataItem ) => ReactNode \| Boolean | - | true |
|
|
29
|
+
| onExpand | 表格展开时的回调函数 | (expanded, row: object) => void | - | - |
|
|
30
|
+
| expandedRowKeys | 内嵌式表格以及树形表格展开的行 | number[] | - | - |
|
|
31
|
+
| maxHeight | 表格最大高度,当穿过该高度时,展示滚动条且表头固定 | number | - | - |
|
|
32
|
+
| fixedToColumn | 表格列冻结设置,为 string 时仅支持从左侧冻结至某一列 | string \| FixedOption | columns 中对应的 dataKey | null |
|
|
33
|
+
| size | 配置表格尺寸 | string | 'lg' \| 'md' \| 'sm' | 'md' |
|
|
34
|
+
| pagination | 表格分页配置项 | Pagination | - | null |
|
|
35
|
+
| errorRowKeys | 错误列(受控) | string[] | - | [] |
|
|
36
|
+
| highlightedRowKeys | 高亮行(受控) | string[] | - | [] |
|
|
37
|
+
| rowSelection | 行可选(受控) | RowSelection | - | null |
|
|
38
|
+
| dataSource | 异步数据源 | (current: number) => DataSource | - | null |
|
|
39
|
+
| showColMenu | 是否支持列操作 | boolean | - | false |
|
|
40
|
+
| striped | 是否展示为斑马纹效果 | boolean | - | false |
|
|
41
|
+
| setting | 是否集成控制面板功能 | boolean | - | false |
|
|
42
|
+
| emptyContent | 数据为空时的展示内容 | string \| () => ReactNode | - | '暂无数据' |
|
|
43
|
+
| resizable | 是否能够动态控制列宽 | boolean | true \| false | false |
|
|
44
|
+
| standard | 标准模式,默认集成 `showColMenu = true, sticky = true, bordered = true, setting = true, striped = true` | boolean | true \| false | false |
|
|
45
|
+
| loading | 加载中状态 | boolean | true \| false | false |
|
|
46
|
+
| scrollWidth | 表格滚动的宽度(当表格总设置宽度(含自适应列)大于表格父级容器宽度时需要设置)**3.7.0 版本以后,该属性不建议使用** | number | - | - |
|
|
47
|
+
| showColHighlight | 表格某一列`hover`时,该列高亮 | boolean | true \| false | false |
|
|
48
|
+
| draggable | 表格行可拖拽 | boolean | true \| false | false |
|
|
49
|
+
| hiddenColKeys | 隐藏列(受控) (v3.9.0 新增) | string[] | - | - |
|
|
50
|
+
| onHiddenColKeysChange | 列隐藏设置时回调 (v3.9.0 新增) | (hiddenColKeys: string[]) => void | - | - |
|
|
51
|
+
| cellRender | 全局控制单元格自定义渲染,优先级低于 column 的 render 方法 | (text: DataItem[ColumnItem[dataKey]]) => ReactNode | - | - |
|
|
52
52
|
|
|
53
53
|
## Event
|
|
54
54
|
|
|
@@ -151,14 +151,17 @@
|
|
|
151
151
|
|
|
152
152
|
## CHANGELOG
|
|
153
153
|
|
|
154
|
-
| 参数
|
|
155
|
-
|
|
|
156
|
-
| selectFilters
|
|
157
|
-
| onLoadChildren
|
|
158
|
-
| expandedEmbedRowKeys
|
|
159
|
-
| onEmbedExpand
|
|
160
|
-
| stickyFooter
|
|
161
|
-
|
|
|
162
|
-
|
|
|
163
|
-
|
|
|
164
|
-
|
|
|
154
|
+
| 参数 | 变更类型 | 变更内容 | 解决的问题 |
|
|
155
|
+
| --------------------- | ---------- | ------------------------------------------- | ------------------------------------------- |
|
|
156
|
+
| selectFilters | deprecated | 取消内嵌 Select | - | 使用 filterDropdown 能替代满足场景 |
|
|
157
|
+
| onLoadChildren | feature | 必须返回数据 -> 返回 undefined 不做任何处理 | - | 强化功能:支持自定义控制更新 |
|
|
158
|
+
| expandedEmbedRowKeys | feature | - | 字段:expandRowKeys -> expandedEmbedRowKeys | 强化功能:支持内嵌面板独立控制 |
|
|
159
|
+
| onEmbedExpand | feature | 字段:onExpand -> onEmbedExpand | 强化功能:支持内嵌面板独立控制 |
|
|
160
|
+
| stickyFooter | feature | boolean | 强化功能:支持底部吸底 |
|
|
161
|
+
| stickyFooterBottom | feature | 底部吸底距离视口底部距离 | 强化功能 |
|
|
162
|
+
| defaultFixedToColumn | feature | 1. 定义:非受控;2. 类型:对象 | 强化功能持久化 |
|
|
163
|
+
| fixedToColumn | feature | 1. 定义:受控;2. 类型:对象 | 强化功能持久化 |
|
|
164
|
+
| onFixedToColumn | feature | 1. 定义:冻结列回调;2. 类型:对象 | 强化功能持久化 |
|
|
165
|
+
| showRowHighlight | feature | - | 强化功能受控化 |
|
|
166
|
+
| sortedColKeys | feature | 列排序受控 | 强化功能持久化 |
|
|
167
|
+
| onSortedColKeysChange | feature | 列排序设置回调 | 强化功能持久化 |
|
package/lib/cjs/BaseTable.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @hi-ui/table
|
|
3
3
|
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/table#readme
|
|
4
4
|
*
|
|
5
|
-
* Copyright (c)
|
|
5
|
+
* Copyright (c) HiUI <mi-hiui@xiaomi.com>.
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -23,6 +23,8 @@ var classname = require('@hi-ui/classname');
|
|
|
23
23
|
|
|
24
24
|
var env = require('@hi-ui/env');
|
|
25
25
|
|
|
26
|
+
var core = require('@hi-ui/core');
|
|
27
|
+
|
|
26
28
|
var iconButton = require('@hi-ui/icon-button');
|
|
27
29
|
|
|
28
30
|
var icons = require('@hi-ui/icons');
|
|
@@ -43,8 +45,6 @@ var useTable = require('./use-table.js');
|
|
|
43
45
|
|
|
44
46
|
var useEmbedExpand = require('./hooks/use-embed-expand.js');
|
|
45
47
|
|
|
46
|
-
var localeContext = require('@hi-ui/locale-context');
|
|
47
|
-
|
|
48
48
|
function _interopDefaultLegacy(e) {
|
|
49
49
|
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
50
50
|
'default': e
|
|
@@ -87,10 +87,12 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
87
87
|
extra = _a.extra,
|
|
88
88
|
onRow = _a.onRow,
|
|
89
89
|
stickyFooter = _a.stickyFooter,
|
|
90
|
+
_a$stickyFooterBottom = _a.stickyFooterBottom,
|
|
91
|
+
stickyFooterBottom = _a$stickyFooterBottom === void 0 ? 0 : _a$stickyFooterBottom,
|
|
90
92
|
_a$fixedColumnTrigger = _a.fixedColumnTrigger,
|
|
91
93
|
fixedColumnTrigger = _a$fixedColumnTrigger === void 0 ? 'auto' : _a$fixedColumnTrigger,
|
|
92
94
|
emptyContent = _a.emptyContent,
|
|
93
|
-
rest = tslib.__rest(_a, ["prefixCls", "role", "className", "columns", "data", "striped", "bordered", "rowExpandable", "defaultExpandedEmbedRowKeys", "expandedEmbedRowKeys", "onEmbedExpand", "expandedRender", "size", "extra", "onRow", "onHeaderRow", "stickyFooter", "fixedColumnTrigger", "emptyContent"]);
|
|
95
|
+
rest = tslib.__rest(_a, ["prefixCls", "role", "className", "columns", "data", "striped", "bordered", "rowExpandable", "defaultExpandedEmbedRowKeys", "expandedEmbedRowKeys", "onEmbedExpand", "expandedRender", "size", "extra", "onRow", "onHeaderRow", "stickyFooter", "stickyFooterBottom", "fixedColumnTrigger", "emptyContent"]);
|
|
94
96
|
|
|
95
97
|
var _useEmbedExpand = useEmbedExpand.useEmbedExpand({
|
|
96
98
|
defaultExpandedEmbedRowKeys: defaultExpandedEmbedRowKeys,
|
|
@@ -110,7 +112,7 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
110
112
|
*/
|
|
111
113
|
|
|
112
114
|
|
|
113
|
-
var getEmbedPanelColumn = React__default[
|
|
115
|
+
var getEmbedPanelColumn = React__default["default"].useCallback(function (embedExpandable) {
|
|
114
116
|
var embedPanelColumn = {
|
|
115
117
|
dataKey: EMBED_DATA_KEY,
|
|
116
118
|
title: '',
|
|
@@ -131,14 +133,14 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
131
133
|
onSwitch: function onSwitch(shouldExpanded) {
|
|
132
134
|
onExpandEmbedRowsChange(rowItem, shouldExpanded);
|
|
133
135
|
},
|
|
134
|
-
expandedIcon: /*#__PURE__*/React__default[
|
|
135
|
-
collapsedIcon: /*#__PURE__*/React__default[
|
|
136
|
+
expandedIcon: /*#__PURE__*/React__default["default"].createElement(icons.MinusSquareOutlined, null),
|
|
137
|
+
collapsedIcon: /*#__PURE__*/React__default["default"].createElement(icons.PlusSquareOutlined, null)
|
|
136
138
|
});
|
|
137
139
|
}
|
|
138
140
|
};
|
|
139
141
|
return embedPanelColumn;
|
|
140
142
|
}, [prefixCls, isExpandEmbedRows, onExpandEmbedRowsChange, isEmbedLoadingId]);
|
|
141
|
-
var mergedColumns = React__default[
|
|
143
|
+
var mergedColumns = React__default["default"].useMemo(function () {
|
|
142
144
|
if (embedExpandable) {
|
|
143
145
|
var embedColumn = getEmbedPanelColumn(embedExpandable);
|
|
144
146
|
return [embedColumn].concat(columns);
|
|
@@ -146,7 +148,7 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
146
148
|
|
|
147
149
|
return columns;
|
|
148
150
|
}, [embedExpandable, getEmbedPanelColumn, columns]);
|
|
149
|
-
var i18n =
|
|
151
|
+
var i18n = core.useLocaleContext(); // 确保包含 avg 属性,且值为数字类型的字符串
|
|
150
152
|
|
|
151
153
|
var avgRow = {
|
|
152
154
|
id: 'avg',
|
|
@@ -205,14 +207,15 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
205
207
|
var extraFooter = extra && extra.footer;
|
|
206
208
|
var alwaysFixedColumn = fixedColumnTrigger === 'always';
|
|
207
209
|
var cls = classname.cx(prefixCls, className, hasBorder && prefixCls + "--bordered", striped && prefixCls + "--striped", size && prefixCls + "--size-" + size);
|
|
208
|
-
return /*#__PURE__*/React__default[
|
|
210
|
+
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
209
211
|
ref: ref,
|
|
210
212
|
role: role,
|
|
211
213
|
className: cls
|
|
212
|
-
}, rootProps), /*#__PURE__*/React__default[
|
|
214
|
+
}, rootProps), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
213
215
|
className: prefixCls + "__wrapper"
|
|
214
|
-
}, /*#__PURE__*/React__default[
|
|
216
|
+
}, /*#__PURE__*/React__default["default"].createElement(context.TableProvider, {
|
|
215
217
|
value: Object.assign(Object.assign({}, providedValue), {
|
|
218
|
+
striped: striped,
|
|
216
219
|
onRow: onRow,
|
|
217
220
|
embedExpandable: embedExpandable,
|
|
218
221
|
onEmbedSwitch: onEmbedSwitch,
|
|
@@ -225,9 +228,9 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
225
228
|
sumRow: sumRow,
|
|
226
229
|
hasSumColumn: hasSumColumn
|
|
227
230
|
})
|
|
228
|
-
}, /*#__PURE__*/React__default[
|
|
231
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({}, getTableHeaderProps()), /*#__PURE__*/React__default["default"].createElement(TableHeader.TableHeader, {
|
|
229
232
|
prefixCls: prefixCls + "-header"
|
|
230
|
-
}), extraHeader ? /*#__PURE__*/React__default[
|
|
233
|
+
}), extraHeader ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
231
234
|
style: {
|
|
232
235
|
position: 'absolute',
|
|
233
236
|
right: 0,
|
|
@@ -235,24 +238,24 @@ var BaseTable = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
235
238
|
bottom: 0,
|
|
236
239
|
top: 0
|
|
237
240
|
}
|
|
238
|
-
}, extraHeader) : null), /*#__PURE__*/React__default[
|
|
241
|
+
}, extraHeader) : null), /*#__PURE__*/React__default["default"].createElement(TableBody.TableBody, {
|
|
239
242
|
prefixCls: prefixCls,
|
|
240
243
|
emptyContent: emptyContent
|
|
241
|
-
})), (alwaysFixedColumn || scrollSize.scrollLeft > 0) && leftFrozenColKeys.length > 0 ? /*#__PURE__*/React__default[
|
|
244
|
+
})), (alwaysFixedColumn || scrollSize.scrollLeft > 0) && leftFrozenColKeys.length > 0 ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
242
245
|
className: prefixCls + "-freeze-shadow " + prefixCls + "-freeze-shadow--left",
|
|
243
246
|
style: {
|
|
244
247
|
width: leftFixedColumnsWidth + 'px'
|
|
245
248
|
}
|
|
246
|
-
}) : null, (alwaysFixedColumn || scrollSize.scrollRight > 0) && rightFrozenColKeys.length > 0 ? /*#__PURE__*/React__default[
|
|
249
|
+
}) : null, (alwaysFixedColumn || scrollSize.scrollRight > 0) && rightFrozenColKeys.length > 0 ? /*#__PURE__*/React__default["default"].createElement("div", {
|
|
247
250
|
className: prefixCls + "-freeze-shadow " + prefixCls + "-freeze-shadow--right",
|
|
248
251
|
style: {
|
|
249
252
|
width: rightFixedColumnsWidth + 'px'
|
|
250
253
|
}
|
|
251
|
-
}) : null), /*#__PURE__*/React__default[
|
|
254
|
+
}) : null), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
252
255
|
className: prefixCls + "-footer",
|
|
253
256
|
style: stickyFooter ? {
|
|
254
257
|
position: 'sticky',
|
|
255
|
-
bottom:
|
|
258
|
+
bottom: stickyFooterBottom // boxShadow: '0 5px 15px 0 rgba(0, 0, 0, 0.1)'
|
|
256
259
|
|
|
257
260
|
} : undefined
|
|
258
261
|
}, extraFooter));
|
|
@@ -271,24 +274,26 @@ var renderSwitcher = function renderSwitcher(_ref) {
|
|
|
271
274
|
expandedIcon = _ref.expandedIcon,
|
|
272
275
|
collapsedIcon = _ref.collapsedIcon;
|
|
273
276
|
|
|
274
|
-
if ( /*#__PURE__*/React__default[
|
|
277
|
+
if ( /*#__PURE__*/React__default["default"].isValidElement(rowExpand)) {
|
|
275
278
|
return rowExpand;
|
|
276
279
|
}
|
|
277
280
|
|
|
278
281
|
if (rowExpand === true) {
|
|
279
282
|
if (loading) {
|
|
280
|
-
return /*#__PURE__*/React__default[
|
|
283
|
+
return /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
|
|
281
284
|
className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--loading"),
|
|
282
285
|
icon: index$1.defaultLoadingIcon
|
|
283
286
|
});
|
|
284
287
|
}
|
|
285
288
|
|
|
286
|
-
return /*#__PURE__*/React__default[
|
|
289
|
+
return /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
|
|
287
290
|
tabIndex: -1,
|
|
288
291
|
className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--" + (expanded ? 'expanded' : 'collapse')),
|
|
289
292
|
icon: expanded ? expandedIcon : collapsedIcon,
|
|
290
|
-
onClick: function onClick() {
|
|
291
|
-
|
|
293
|
+
onClick: function onClick(evt) {
|
|
294
|
+
// 阻止传递给 onRow 的 onClick 事件
|
|
295
|
+
evt.stopPropagation();
|
|
296
|
+
onSwitch(!expanded);
|
|
292
297
|
}
|
|
293
298
|
});
|
|
294
299
|
}
|
|
@@ -298,4 +303,3 @@ var renderSwitcher = function renderSwitcher(_ref) {
|
|
|
298
303
|
|
|
299
304
|
exports.BaseTable = BaseTable;
|
|
300
305
|
exports.EMBED_DATA_KEY = EMBED_DATA_KEY;
|
|
301
|
-
//# sourceMappingURL=BaseTable.js.map
|
package/lib/cjs/Table.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* @hi-ui/table
|
|
3
3
|
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/table#readme
|
|
4
4
|
*
|
|
5
|
-
* Copyright (c)
|
|
5
|
+
* Copyright (c) HiUI <mi-hiui@xiaomi.com>.
|
|
6
6
|
*
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
@@ -84,8 +84,6 @@ var DEFAULT_PAGINATION = {
|
|
|
84
84
|
|
|
85
85
|
var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
86
86
|
// ************************ 预置标准模式 ************************ //
|
|
87
|
-
var _b;
|
|
88
|
-
|
|
89
87
|
var _a$prefixCls = _a.prefixCls,
|
|
90
88
|
prefixCls = _a$prefixCls === void 0 ? _prefix : _a$prefixCls,
|
|
91
89
|
_a$standard = _a.standard,
|
|
@@ -98,28 +96,40 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
98
96
|
columnsProp = _a.columns,
|
|
99
97
|
hiddenColKeysProp = _a.hiddenColKeys,
|
|
100
98
|
onHiddenColKeysChange = _a.onHiddenColKeysChange,
|
|
99
|
+
sortedColKeysProp = _a.sortedColKeys,
|
|
100
|
+
onSortedColKeysChange = _a.onSortedColKeysChange,
|
|
101
101
|
rowSelection = _a.rowSelection,
|
|
102
102
|
_a$fieldKey = _a.fieldKey,
|
|
103
103
|
fieldKey = _a$fieldKey === void 0 ? 'key' : _a$fieldKey,
|
|
104
|
-
|
|
105
|
-
stickyFooter = _a$stickyFooter === void 0 ? false : _a$stickyFooter,
|
|
104
|
+
extra = _a.extra,
|
|
106
105
|
_a$data = _a.data,
|
|
107
106
|
data = _a$data === void 0 ? DEFAULT_DATA : _a$data,
|
|
108
|
-
rest = tslib.__rest(_a, ["prefixCls", "standard", "loading", "dataSource", "pagination", "uniqueId", "columns", "hiddenColKeys", "onHiddenColKeysChange", "rowSelection", "fieldKey", "
|
|
107
|
+
rest = tslib.__rest(_a, ["prefixCls", "standard", "loading", "dataSource", "pagination", "uniqueId", "columns", "hiddenColKeys", "onHiddenColKeysChange", "sortedColKeys", "onSortedColKeysChange", "rowSelection", "fieldKey", "extra", "data"]);
|
|
108
|
+
|
|
109
|
+
var tableProps = reactUtils.withDefaultProps(rest, standard ? STANDARD_PRESET : undefined);
|
|
109
110
|
|
|
110
|
-
var
|
|
111
|
-
|
|
111
|
+
var _tableProps$setting = tableProps.setting,
|
|
112
|
+
setting = _tableProps$setting === void 0 ? false : _tableProps$setting,
|
|
113
|
+
baseTableProps = tslib.__rest(tableProps // ************************ 高级功能 ************************ //
|
|
112
114
|
|
|
113
115
|
/**
|
|
114
116
|
* 列排序
|
|
115
117
|
*/
|
|
118
|
+
, ["setting"]); // ************************ 高级功能 ************************ //
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* 列排序
|
|
122
|
+
*/
|
|
123
|
+
|
|
116
124
|
|
|
117
125
|
var _useColSorter = useColSorter.useColSorter({
|
|
118
126
|
uniqueId: uniqueId,
|
|
119
|
-
columns: columnsProp
|
|
127
|
+
columns: columnsProp,
|
|
128
|
+
sortedColKeys: sortedColKeysProp,
|
|
129
|
+
onSortedColKeysChange: onSortedColKeysChange
|
|
120
130
|
}),
|
|
121
131
|
sortedCols = _useColSorter.sortedCols,
|
|
122
|
-
|
|
132
|
+
setSortColKeys = _useColSorter.setSortColKeys,
|
|
123
133
|
cacheSortedCols = _useColSorter.cacheSortedCols,
|
|
124
134
|
setCacheSortedCols = _useColSorter.setCacheSortedCols;
|
|
125
135
|
/**
|
|
@@ -155,7 +165,7 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
155
165
|
trySetCurrentPage = _useTablePagination.trySetCurrentPage; // 优化数据在第一页且数据一页内时,不展示 pagination 配置项
|
|
156
166
|
|
|
157
167
|
|
|
158
|
-
var hiddenPagination = !paginationProp || pagination.autoHide && currentPage === 1 && typeof pagination.pageSize === 'number' && data.length <= pagination.pageSize; // 获取 key 字段值
|
|
168
|
+
var hiddenPagination = !paginationProp || pagination.autoHide && currentPage === 1 && typeof pagination.pageSize === 'number' && typeof pagination.total === 'number' && pagination.total <= pagination.pageSize && data.length <= pagination.pageSize; // 获取 key 字段值
|
|
159
169
|
|
|
160
170
|
var getRowKeyField = React.useCallback(function (item) {
|
|
161
171
|
var val = item[fieldKey];
|
|
@@ -178,7 +188,7 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
178
188
|
}, [mergedData, getRowKeyField]); // ************************ 行多选 ************************ //
|
|
179
189
|
// 自定义设置 checkbox 列宽度
|
|
180
190
|
|
|
181
|
-
var checkboxColWidth = React__default[
|
|
191
|
+
var checkboxColWidth = React__default["default"].useMemo(function () {
|
|
182
192
|
return rowSelection && typeof rowSelection.checkboxColWidth === 'number' ? rowSelection.checkboxColWidth : 38;
|
|
183
193
|
}, [rowSelection]); // 预处理 column 支持 多选渲染
|
|
184
194
|
|
|
@@ -195,17 +205,20 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
195
205
|
checkRowIsDisabledCheckbox = _useTableCheck.checkRowIsDisabledCheckbox; // 表格列多选操作区
|
|
196
206
|
|
|
197
207
|
|
|
198
|
-
var getSelectionColumn = React__default[
|
|
208
|
+
var getSelectionColumn = React__default["default"].useCallback(function (rowSelection) {
|
|
199
209
|
var renderCell = function renderCell(_, rowItem, rowIndex) {
|
|
200
210
|
var rowKey = getRowKeyField(rowItem);
|
|
201
211
|
var checked = isCheckedRowKey(rowKey);
|
|
202
212
|
var disabledCheckbox = checkRowIsDisabledCheckbox(rowItem);
|
|
203
213
|
return {
|
|
204
|
-
node: /*#__PURE__*/React__default[
|
|
214
|
+
node: /*#__PURE__*/React__default["default"].createElement(Checkbox__default["default"], {
|
|
205
215
|
checked: isCheckedRowKey(rowKey),
|
|
206
216
|
disabled: disabledCheckbox,
|
|
207
217
|
onChange: function onChange(evt) {
|
|
208
218
|
onCheckedRowKeysChange(rowItem, evt.target.checked);
|
|
219
|
+
},
|
|
220
|
+
onClick: function onClick(evt) {
|
|
221
|
+
evt.stopPropagation();
|
|
209
222
|
}
|
|
210
223
|
}),
|
|
211
224
|
checked: checked
|
|
@@ -233,7 +246,7 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
233
246
|
|
|
234
247
|
var renderTitleCell = function renderTitleCell() {
|
|
235
248
|
return {
|
|
236
|
-
node: /*#__PURE__*/React__default[
|
|
249
|
+
node: /*#__PURE__*/React__default["default"].createElement(Checkbox__default["default"], {
|
|
237
250
|
checked: checkedAll,
|
|
238
251
|
indeterminate: semiChecked,
|
|
239
252
|
onChange: tryCheckAllRow
|
|
@@ -247,8 +260,14 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
247
260
|
var _renderTitleCell = renderTitleCell(),
|
|
248
261
|
node = _renderTitleCell.node;
|
|
249
262
|
|
|
250
|
-
if (rowSelection.checkAllOptions
|
|
251
|
-
|
|
263
|
+
if (rowSelection.checkAllOptions) {
|
|
264
|
+
if (rowSelection.checkAllOptions.render) {
|
|
265
|
+
return rowSelection.checkAllOptions.render(node);
|
|
266
|
+
}
|
|
267
|
+
|
|
268
|
+
if (rowSelection.checkAllOptions.filterIcon) {
|
|
269
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, node, rowSelection.checkAllOptions.filterIcon);
|
|
270
|
+
}
|
|
252
271
|
}
|
|
253
272
|
|
|
254
273
|
return node;
|
|
@@ -264,7 +283,7 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
264
283
|
};
|
|
265
284
|
return selectionColumn;
|
|
266
285
|
}, [getRowKeyField, checkedAll, semiChecked, tryCheckAllRow, checkboxColWidth, isCheckedRowKey, onCheckedRowKeysChange, checkRowIsDisabledCheckbox, prefixCls]);
|
|
267
|
-
var mergedColumns = React__default[
|
|
286
|
+
var mergedColumns = React__default["default"].useMemo(function () {
|
|
268
287
|
if (rowSelection) {
|
|
269
288
|
var selectionColumn = getSelectionColumn(rowSelection);
|
|
270
289
|
return [selectionColumn].concat(visibleCols);
|
|
@@ -273,21 +292,20 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
273
292
|
return visibleCols;
|
|
274
293
|
}, [rowSelection, getSelectionColumn, visibleCols]); // ************************ loading ************************ //
|
|
275
294
|
|
|
276
|
-
var TableWrapper = loading ? Loading__default[
|
|
277
|
-
return /*#__PURE__*/React__default[
|
|
295
|
+
var TableWrapper = loading ? Loading__default["default"] : React.Fragment;
|
|
296
|
+
return /*#__PURE__*/React__default["default"].createElement(TableWrapper, null, /*#__PURE__*/React__default["default"].createElement(BaseTable.BaseTable, Object.assign({
|
|
278
297
|
ref: ref
|
|
279
298
|
}, baseTableProps, {
|
|
280
|
-
stickyFooter: stickyFooter,
|
|
281
299
|
prefixCls: prefixCls,
|
|
282
300
|
columns: mergedColumns,
|
|
283
301
|
data: mergedData,
|
|
284
302
|
fieldKey: fieldKey,
|
|
285
|
-
extra: {
|
|
286
|
-
header: setting ? /*#__PURE__*/React__default[
|
|
303
|
+
extra: Object.assign({
|
|
304
|
+
header: setting ? /*#__PURE__*/React__default["default"].createElement(TableSettingMenu.TableSettingMenu, {
|
|
287
305
|
prefixCls: prefixCls + "-setting",
|
|
288
306
|
// sort
|
|
289
307
|
sortedCols: sortedCols,
|
|
290
|
-
|
|
308
|
+
setSortColKeys: setSortColKeys,
|
|
291
309
|
cacheSortedCols: cacheSortedCols,
|
|
292
310
|
setCacheSortedCols: setCacheSortedCols,
|
|
293
311
|
// hidden
|
|
@@ -296,13 +314,13 @@ var Table = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
296
314
|
cacheHiddenColKeys: cacheHiddenColKeys,
|
|
297
315
|
setCacheHiddenColKeys: setCacheHiddenColKeys
|
|
298
316
|
}) : null,
|
|
299
|
-
footer: hiddenPagination ? null : /*#__PURE__*/React__default[
|
|
317
|
+
footer: hiddenPagination ? null : /*#__PURE__*/React__default["default"].createElement(Pagination__default["default"], Object.assign({
|
|
300
318
|
className: classname.cx(prefixCls + "-pagination", pagination.placement && prefixCls + "-pagination--placement-" + pagination.placement)
|
|
301
319
|
}, pagination, {
|
|
302
320
|
current: currentPage,
|
|
303
321
|
onChange: trySetCurrentPage
|
|
304
322
|
}))
|
|
305
|
-
}
|
|
323
|
+
}, extra)
|
|
306
324
|
})));
|
|
307
325
|
});
|
|
308
326
|
|
|
@@ -312,4 +330,3 @@ if (env.__DEV__) {
|
|
|
312
330
|
|
|
313
331
|
exports.SELECTION_DATA_KEY = SELECTION_DATA_KEY;
|
|
314
332
|
exports.Table = Table;
|
|
315
|
-
//# sourceMappingURL=Table.js.map
|