@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/lib/cjs/TableRow.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.
|
|
@@ -48,11 +48,12 @@ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
|
48
48
|
var _role = 'table';
|
|
49
49
|
|
|
50
50
|
var _prefix = classname.getPrefixCls(_role);
|
|
51
|
+
|
|
52
|
+
var EMBED_ON_ROW_PROPS = {};
|
|
51
53
|
/**
|
|
52
54
|
* TODO: What is TableRow
|
|
53
55
|
*/
|
|
54
56
|
|
|
55
|
-
|
|
56
57
|
var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
57
58
|
var _ref$prefixCls = _ref.prefixCls,
|
|
58
59
|
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
@@ -63,13 +64,14 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
63
64
|
isAvgRow = _ref.isAvgRow;
|
|
64
65
|
|
|
65
66
|
var _useTableContext = context.useTableContext(),
|
|
67
|
+
striped = _useTableContext.striped,
|
|
68
|
+
showRowHighlight = _useTableContext.showRowHighlight,
|
|
66
69
|
onHighlightedRowChange = _useTableContext.onHighlightedRowChange,
|
|
67
70
|
isHighlightedRow = _useTableContext.isHighlightedRow,
|
|
68
71
|
flattedColumnsWithoutChildren = _useTableContext.flattedColumnsWithoutChildren,
|
|
69
72
|
isErrorRow = _useTableContext.isErrorRow,
|
|
70
73
|
columns = _useTableContext.columns,
|
|
71
74
|
embedExpandable = _useTableContext.embedExpandable,
|
|
72
|
-
hoverRow = _useTableContext.hoverRow,
|
|
73
75
|
draggable = _useTableContext.draggable,
|
|
74
76
|
onDragStartContext = _useTableContext.onDragStart,
|
|
75
77
|
onDragLeaveContext = _useTableContext.onDragLeave,
|
|
@@ -81,16 +83,16 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
81
83
|
var rowData = rowDataProp.raw,
|
|
82
84
|
rowId = rowDataProp.id; // ** ************** 拖拽管理 *************** *//
|
|
83
85
|
|
|
84
|
-
var _React$useState = React__default[
|
|
86
|
+
var _React$useState = React__default["default"].useState(false),
|
|
85
87
|
dragging = _React$useState[0],
|
|
86
88
|
setDragging = _React$useState[1];
|
|
87
89
|
|
|
88
|
-
var _React$useState2 = React__default[
|
|
90
|
+
var _React$useState2 = React__default["default"].useState(),
|
|
89
91
|
dragDirection = _React$useState2[0],
|
|
90
92
|
setDragDirection = _React$useState2[1];
|
|
91
93
|
|
|
92
94
|
var onDragStartContextLatest = useLatest.useLatestCallback(onDragStartContext);
|
|
93
|
-
var onDragStart = React__default[
|
|
95
|
+
var onDragStart = React__default["default"].useCallback(function (evt) {
|
|
94
96
|
if (!draggable) return;
|
|
95
97
|
evt.stopPropagation();
|
|
96
98
|
var clientY = evt.clientY;
|
|
@@ -107,7 +109,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
107
109
|
dragNode: rowData
|
|
108
110
|
});
|
|
109
111
|
}, [draggable, dragRowRef, onDragStartContextLatest, rowData, rowId]);
|
|
110
|
-
var onDragOver = React__default[
|
|
112
|
+
var onDragOver = React__default["default"].useCallback(function (evt) {
|
|
111
113
|
if (!draggable) return;
|
|
112
114
|
evt.preventDefault();
|
|
113
115
|
evt.stopPropagation();
|
|
@@ -125,7 +127,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
125
127
|
}
|
|
126
128
|
}, [draggable, dragRowRef, rowId]);
|
|
127
129
|
var onDragLeaveContextLatest = useLatest.useLatestCallback(onDragLeaveContext);
|
|
128
|
-
var onDragLeave = React__default[
|
|
130
|
+
var onDragLeave = React__default["default"].useCallback(function (evt) {
|
|
129
131
|
if (!draggable) return;
|
|
130
132
|
evt.preventDefault();
|
|
131
133
|
evt.stopPropagation();
|
|
@@ -133,7 +135,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
133
135
|
onDragLeaveContextLatest(evt);
|
|
134
136
|
}, [draggable, onDragLeaveContextLatest]);
|
|
135
137
|
var onDragEndContextLatest = useLatest.useLatestCallback(onDragEndContext);
|
|
136
|
-
var onDragEnd = React__default[
|
|
138
|
+
var onDragEnd = React__default["default"].useCallback(function (evt) {
|
|
137
139
|
if (!draggable) return;
|
|
138
140
|
evt.preventDefault();
|
|
139
141
|
evt.stopPropagation();
|
|
@@ -145,7 +147,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
145
147
|
}, [draggable, dragRowRef, onDragEndContextLatest]);
|
|
146
148
|
var onDropContextLatest = useLatest.useLatestCallback(onDropContext); // 放置目标元素时触发事件
|
|
147
149
|
|
|
148
|
-
var onDrop = React__default[
|
|
150
|
+
var onDrop = React__default["default"].useCallback(function (evt) {
|
|
149
151
|
if (!draggable) return;
|
|
150
152
|
if (!dragRowRef.current) return;
|
|
151
153
|
var dragId = dragRowRef.current.dragId;
|
|
@@ -167,14 +169,13 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
167
169
|
}, [draggable, dragRowRef, onDropContextLatest, dragDirection, rowId]); // ** ************** 行状态管理 *************** *//
|
|
168
170
|
|
|
169
171
|
var highlighted = isHighlightedRow(rowId);
|
|
170
|
-
var hovered = hoverRow === rowId;
|
|
171
172
|
var hasError = isErrorRow(rowId);
|
|
172
|
-
var cls = classname.cx(prefixCls + "-row",
|
|
173
|
+
var cls = classname.cx(prefixCls + "-row", showRowHighlight && prefixCls + "-row--hover", striped && (rowIndex & 1) === 1 && prefixCls + "-row--striped", hasError && prefixCls + "-row--error", highlighted && prefixCls + "-row--highlight", draggable && prefixCls + "-row--draggable", draggable && dragging && prefixCls + "-row--dragging", draggable && dragDirection && prefixCls + "-row--drag-" + dragDirection, isSumRow && prefixCls + "-row--total", isAvgRow && prefixCls + "-row--avg");
|
|
173
174
|
var firstColumn = flattedColumnsWithoutChildren.find(function (item) {
|
|
174
175
|
return item.dataKey !== Table.SELECTION_DATA_KEY && item.dataKey !== BaseTable.EMBED_DATA_KEY;
|
|
175
176
|
});
|
|
176
|
-
var rowExtraProps = typeAssertion.isFunction(onRow) ? onRow() :
|
|
177
|
-
return /*#__PURE__*/React__default[
|
|
177
|
+
var rowExtraProps = typeAssertion.isFunction(onRow) ? onRow(isSumRow || isAvgRow ? null : rowData, rowIndex) : EMBED_ON_ROW_PROPS;
|
|
178
|
+
return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("tr", Object.assign({
|
|
178
179
|
ref: ref,
|
|
179
180
|
className: cls,
|
|
180
181
|
key: "row"
|
|
@@ -184,7 +185,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
184
185
|
rowExtraProps.onDoubleClick(evt);
|
|
185
186
|
}
|
|
186
187
|
|
|
187
|
-
onHighlightedRowChange(
|
|
188
|
+
onHighlightedRowChange(rowDataProp, !highlighted);
|
|
188
189
|
},
|
|
189
190
|
draggable: domUtils.setAttrAria(draggable),
|
|
190
191
|
onDragStart: onDragStart,
|
|
@@ -193,7 +194,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
193
194
|
onDragLeave: onDragLeave,
|
|
194
195
|
onDrop: onDrop
|
|
195
196
|
}), flattedColumnsWithoutChildren.map(function (column, idx) {
|
|
196
|
-
return /*#__PURE__*/React__default[
|
|
197
|
+
return /*#__PURE__*/React__default["default"].createElement(TableCell.TableCell, {
|
|
197
198
|
key: idx,
|
|
198
199
|
column: column,
|
|
199
200
|
isSwitcherCol: firstColumn ? firstColumn.id === column.id : false,
|
|
@@ -201,7 +202,7 @@ var TableRow = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
201
202
|
rowIndex: rowIndex,
|
|
202
203
|
expandedTree: expandedTree
|
|
203
204
|
});
|
|
204
|
-
})), embedExpandable ? /*#__PURE__*/React__default[
|
|
205
|
+
})), embedExpandable ? /*#__PURE__*/React__default["default"].createElement(TableEmbedRow.TableEmbedRow, {
|
|
205
206
|
colSpan: columns.length,
|
|
206
207
|
rowData: rowDataProp,
|
|
207
208
|
rowIndex: rowIndex
|
|
@@ -213,4 +214,3 @@ if (env.__DEV__) {
|
|
|
213
214
|
}
|
|
214
215
|
|
|
215
216
|
exports.TableRow = TableRow;
|
|
216
|
-
//# sourceMappingURL=TableRow.js.map
|
|
@@ -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.
|
|
@@ -33,11 +33,11 @@ var useToggle = require('@hi-ui/use-toggle');
|
|
|
33
33
|
|
|
34
34
|
var useLatest = require('@hi-ui/use-latest');
|
|
35
35
|
|
|
36
|
-
var
|
|
36
|
+
var core = require('@hi-ui/core');
|
|
37
37
|
|
|
38
|
-
var
|
|
38
|
+
var funcUtils = require('@hi-ui/func-utils');
|
|
39
39
|
|
|
40
|
-
var
|
|
40
|
+
var useDragSorter = require('@hi-ui/use-drag-sorter');
|
|
41
41
|
|
|
42
42
|
var drawer = require('@hi-ui/drawer');
|
|
43
43
|
|
|
@@ -65,31 +65,31 @@ var TableSettingMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
65
65
|
var _ref$prefixCls = _ref.prefixCls,
|
|
66
66
|
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
67
67
|
sortedCols = _ref.sortedCols,
|
|
68
|
-
|
|
68
|
+
setSortColKeys = _ref.setSortColKeys,
|
|
69
69
|
cacheSortedCols = _ref.cacheSortedCols,
|
|
70
70
|
setCacheSortedCols = _ref.setCacheSortedCols,
|
|
71
71
|
hiddenColKeys = _ref.hiddenColKeys,
|
|
72
72
|
setHiddenColKeys = _ref.setHiddenColKeys,
|
|
73
73
|
cacheHiddenColKeys = _ref.cacheHiddenColKeys,
|
|
74
74
|
setCacheHiddenColKeys = _ref.setCacheHiddenColKeys;
|
|
75
|
-
var i18n =
|
|
76
|
-
var dropProps =
|
|
75
|
+
var i18n = core.useLocaleContext();
|
|
76
|
+
var dropProps = useDragSorter.useDrop({
|
|
77
77
|
draggable: true,
|
|
78
78
|
idFieldName: 'dataKey',
|
|
79
79
|
onSwap: function onSwap(dragItem, dropItem, direction, info) {
|
|
80
|
-
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime__default[
|
|
81
|
-
return _regeneratorRuntime__default[
|
|
80
|
+
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee() {
|
|
81
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
|
|
82
82
|
while (1) {
|
|
83
83
|
switch (_context.prev = _context.next) {
|
|
84
84
|
case 0:
|
|
85
85
|
setCacheSortedCols(function (prev) {
|
|
86
|
-
var
|
|
86
|
+
var nextCacheSortCols = [].concat(prev);
|
|
87
87
|
|
|
88
|
-
var
|
|
89
|
-
removed =
|
|
88
|
+
var _nextCacheSortCols$sp = nextCacheSortCols.splice(info.dragIndex, 1),
|
|
89
|
+
removed = _nextCacheSortCols$sp[0];
|
|
90
90
|
|
|
91
|
-
|
|
92
|
-
return
|
|
91
|
+
nextCacheSortCols.splice(info.dropIndex, 0, removed);
|
|
92
|
+
return nextCacheSortCols;
|
|
93
93
|
});
|
|
94
94
|
return _context.abrupt("return", true);
|
|
95
95
|
|
|
@@ -124,38 +124,41 @@ var TableSettingMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
124
124
|
var onConfirm = function onConfirm() {
|
|
125
125
|
// 触发 table 更新列显隐及排序
|
|
126
126
|
setHiddenColKeys(cacheHiddenColKeys);
|
|
127
|
-
|
|
127
|
+
setSortColKeys(cacheSortedCols.map(function (col) {
|
|
128
|
+
return col.dataKey;
|
|
129
|
+
}));
|
|
128
130
|
menuVisibleAction.off();
|
|
129
131
|
};
|
|
130
132
|
|
|
131
133
|
var cls = classname.cx(prefixCls);
|
|
132
|
-
return /*#__PURE__*/React__default[
|
|
134
|
+
return /*#__PURE__*/React__default["default"].createElement("div", {
|
|
133
135
|
ref: ref,
|
|
134
136
|
className: cls
|
|
135
|
-
}, /*#__PURE__*/React__default[
|
|
136
|
-
icon: /*#__PURE__*/React__default[
|
|
137
|
+
}, /*#__PURE__*/React__default["default"].createElement(iconButton.IconButton, {
|
|
138
|
+
icon: /*#__PURE__*/React__default["default"].createElement(icons.EllipsisVerticalOutlined, null),
|
|
137
139
|
onClick: menuVisibleAction.not
|
|
138
|
-
}), /*#__PURE__*/React__default[
|
|
140
|
+
}), /*#__PURE__*/React__default["default"].createElement(drawer.Drawer, {
|
|
139
141
|
className: prefixCls + "__drawer",
|
|
140
142
|
title: i18n.get('table.fieldExplorer'),
|
|
141
143
|
visible: menuVisible,
|
|
142
144
|
onClose: menuVisibleAction.off,
|
|
143
|
-
|
|
145
|
+
width: 304,
|
|
146
|
+
footer: /*#__PURE__*/React__default["default"].createElement("div", {
|
|
144
147
|
className: prefixCls + "__btn-group"
|
|
145
|
-
}, /*#__PURE__*/React__default[
|
|
148
|
+
}, /*#__PURE__*/React__default["default"].createElement(button.Button, {
|
|
146
149
|
key: 0,
|
|
147
150
|
className: prefixCls + "__btn-cancel",
|
|
148
151
|
onClick: resetLatest
|
|
149
|
-
}, i18n.get('table.reset')), /*#__PURE__*/React__default[
|
|
152
|
+
}, i18n.get('table.reset')), /*#__PURE__*/React__default["default"].createElement(button.Button, {
|
|
150
153
|
key: 1,
|
|
151
154
|
className: prefixCls + "__btn-confirm",
|
|
152
155
|
onClick: onConfirm,
|
|
153
156
|
type: "primary"
|
|
154
157
|
}, i18n.get('table.confirm')))
|
|
155
|
-
}, /*#__PURE__*/React__default[
|
|
158
|
+
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
156
159
|
className: prefixCls + "__content"
|
|
157
160
|
}, cacheSortedCols.map(function (col, index) {
|
|
158
|
-
return /*#__PURE__*/React__default[
|
|
161
|
+
return /*#__PURE__*/React__default["default"].createElement(TableSettingMenuItem, {
|
|
159
162
|
key: col.dataKey,
|
|
160
163
|
prefixCls: prefixCls,
|
|
161
164
|
column: col,
|
|
@@ -177,13 +180,13 @@ function TableSettingMenuItem(_ref2) {
|
|
|
177
180
|
cacheHiddenColKeys = _ref2.cacheHiddenColKeys,
|
|
178
181
|
setCacheHiddenColKeys = _ref2.setCacheHiddenColKeys,
|
|
179
182
|
dropProps = _ref2.dropProps,
|
|
180
|
-
index
|
|
183
|
+
index = _ref2.index;
|
|
181
184
|
var dataKey = column.dataKey,
|
|
182
185
|
title = column.title;
|
|
183
186
|
|
|
184
|
-
var _useDrag =
|
|
187
|
+
var _useDrag = useDragSorter.useDrag(Object.assign(Object.assign({}, dropProps), {
|
|
185
188
|
item: column,
|
|
186
|
-
index: index
|
|
189
|
+
index: index,
|
|
187
190
|
idFieldName: 'dataKey',
|
|
188
191
|
dataTransferKey: 'table-setting-data'
|
|
189
192
|
})),
|
|
@@ -192,16 +195,11 @@ function TableSettingMenuItem(_ref2) {
|
|
|
192
195
|
getDragTriggerProps = _useDrag.getDragTriggerProps,
|
|
193
196
|
getDropTriggerProps = _useDrag.getDropTriggerProps;
|
|
194
197
|
|
|
195
|
-
return /*#__PURE__*/React__default[
|
|
198
|
+
return /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
196
199
|
className: classname.cx(prefixCls + "-item", dragging && prefixCls + "-item--dragging", direction && prefixCls + "-item--direction-" + direction)
|
|
197
|
-
}, getDragTriggerProps(), getDropTriggerProps()), /*#__PURE__*/React__default[
|
|
200
|
+
}, getDragTriggerProps(), getDropTriggerProps()), /*#__PURE__*/React__default["default"].createElement("div", {
|
|
198
201
|
className: prefixCls + "-item__wrap"
|
|
199
|
-
}, /*#__PURE__*/React__default[
|
|
200
|
-
style: {
|
|
201
|
-
display: 'flex',
|
|
202
|
-
alignItems: 'center'
|
|
203
|
-
}
|
|
204
|
-
}, /*#__PURE__*/React__default['default'].createElement(Checkbox.Checkbox, {
|
|
202
|
+
}, /*#__PURE__*/React__default["default"].createElement(Checkbox.Checkbox, {
|
|
205
203
|
checked: !cacheHiddenColKeys.includes(dataKey),
|
|
206
204
|
onChange: function onChange(evt) {
|
|
207
205
|
var shouldChecked = evt.target.checked;
|
|
@@ -210,13 +208,7 @@ function TableSettingMenuItem(_ref2) {
|
|
|
210
208
|
}) : cacheHiddenColKeys.concat(dataKey);
|
|
211
209
|
setCacheHiddenColKeys(nextCacheHiddenColKeys);
|
|
212
210
|
}
|
|
213
|
-
}
|
|
214
|
-
style: {
|
|
215
|
-
display: 'inline-block',
|
|
216
|
-
marginLeft: 9
|
|
217
|
-
}
|
|
218
|
-
}, index$1.runIfFunc(title))), /*#__PURE__*/React__default['default'].createElement(icons.MenuOutlined, null)));
|
|
211
|
+
}, /*#__PURE__*/React__default["default"].createElement("span", null, funcUtils.runIfFunc(title))), /*#__PURE__*/React__default["default"].createElement(icons.MoveOutlined, null)));
|
|
219
212
|
}
|
|
220
213
|
|
|
221
214
|
exports.TableSettingMenu = TableSettingMenu;
|
|
222
|
-
//# sourceMappingURL=TableSettingMenu.js.map
|
package/lib/cjs/context.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.
|
|
@@ -30,4 +30,3 @@ var useTableContext = function useTableContext() {
|
|
|
30
30
|
|
|
31
31
|
exports.TableProvider = TableProvider;
|
|
32
32
|
exports.useTableContext = useTableContext;
|
|
33
|
-
//# sourceMappingURL=context.js.map
|
|
@@ -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.
|
|
@@ -39,9 +39,9 @@ var useAsyncSwitch = function useAsyncSwitch(setCascaderData, onExpand, onLoadCh
|
|
|
39
39
|
var onLoadChildrenLatest = useLatest.useLatestCallback(onLoadChildren); // 加载节点
|
|
40
40
|
|
|
41
41
|
var loadChildren = React.useCallback(function (node) {
|
|
42
|
-
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime__default[
|
|
42
|
+
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee() {
|
|
43
43
|
var childrenNodes;
|
|
44
|
-
return _regeneratorRuntime__default[
|
|
44
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
|
|
45
45
|
while (1) {
|
|
46
46
|
switch (_context.prev = _context.next) {
|
|
47
47
|
case 0:
|
|
@@ -79,9 +79,9 @@ var useAsyncSwitch = function useAsyncSwitch(setCascaderData, onExpand, onLoadCh
|
|
|
79
79
|
onlyExpand = false;
|
|
80
80
|
}
|
|
81
81
|
|
|
82
|
-
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime__default[
|
|
82
|
+
return tslib.__awaiter(void 0, void 0, void 0, /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee2() {
|
|
83
83
|
var id, children, isLeaf;
|
|
84
|
-
return _regeneratorRuntime__default[
|
|
84
|
+
return _regeneratorRuntime__default["default"].wrap(function _callee2$(_context2) {
|
|
85
85
|
while (1) {
|
|
86
86
|
switch (_context2.prev = _context2.next) {
|
|
87
87
|
case 0:
|
|
@@ -142,4 +142,3 @@ var useAsyncSwitch = function useAsyncSwitch(setCascaderData, onExpand, onLoadCh
|
|
|
142
142
|
};
|
|
143
143
|
|
|
144
144
|
exports.useAsyncSwitch = useAsyncSwitch;
|
|
145
|
-
//# sourceMappingURL=use-async-switch.js.map
|
|
@@ -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.
|
|
@@ -35,7 +35,7 @@ var useTableCheck = function useTableCheck(_ref) {
|
|
|
35
35
|
var rowSelection = _ref.rowSelection,
|
|
36
36
|
flattedData = _ref.flattedData,
|
|
37
37
|
fieldKey = _ref.fieldKey;
|
|
38
|
-
var checkRowIsDisabledCheckbox = React__default[
|
|
38
|
+
var checkRowIsDisabledCheckbox = React__default["default"].useCallback(function (rowItem) {
|
|
39
39
|
var checkboxConfig = rowSelection && rowSelection.getCheckboxConfig && rowSelection.getCheckboxConfig(rowItem);
|
|
40
40
|
return checkboxConfig && checkboxConfig.disabled || false;
|
|
41
41
|
}, [rowSelection]);
|
|
@@ -54,21 +54,28 @@ var useTableCheck = function useTableCheck(_ref) {
|
|
|
54
54
|
isCheckedRowKey = _useCheck[1]; // 判断是否全选
|
|
55
55
|
|
|
56
56
|
|
|
57
|
-
var _React$useMemo = React__default[
|
|
57
|
+
var _React$useMemo = React__default["default"].useMemo(function () {
|
|
58
58
|
if (rowSelection) {
|
|
59
59
|
if (flattedData.length === 0 || checkedRowKeys.length === 0) {
|
|
60
60
|
return [false, false];
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
-
var
|
|
63
|
+
var idsCanBeChecked = flattedData.filter(function (item) {
|
|
64
64
|
return !checkRowIsDisabledCheckbox(item.raw);
|
|
65
|
-
})
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
}).map(function (item) {
|
|
66
|
+
return item.id;
|
|
67
|
+
}); // TODO: 数组项完全匹配工具函数
|
|
68
|
+
// TODO: 数组项完全匹配工具函数
|
|
69
|
+
|
|
70
|
+
var _checkedAll = idsCanBeChecked.every(function (id) {
|
|
71
|
+
return isCheckedRowKey(id);
|
|
72
|
+
});
|
|
73
|
+
|
|
74
|
+
var _semiChecked = _checkedAll ? false : checkedRowKeys.length > 0 && idsCanBeChecked.some(function (id) {
|
|
75
|
+
return isCheckedRowKey(id);
|
|
69
76
|
});
|
|
70
77
|
|
|
71
|
-
return [_checkedAll,
|
|
78
|
+
return [_checkedAll, _semiChecked];
|
|
72
79
|
}
|
|
73
80
|
|
|
74
81
|
return [false, false];
|
|
@@ -76,19 +83,35 @@ var useTableCheck = function useTableCheck(_ref) {
|
|
|
76
83
|
checkedAll = _React$useMemo[0],
|
|
77
84
|
semiChecked = _React$useMemo[1];
|
|
78
85
|
|
|
79
|
-
var tryCheckAllRow = React__default[
|
|
80
|
-
if (checkedAll) {
|
|
81
|
-
trySetCheckedRowKeys([], [], false);
|
|
82
|
-
return;
|
|
83
|
-
}
|
|
84
|
-
|
|
86
|
+
var tryCheckAllRow = React__default["default"].useCallback(function () {
|
|
85
87
|
var targetItems = flattedData.filter(function (item) {
|
|
86
88
|
return !checkRowIsDisabledCheckbox(item.raw);
|
|
87
89
|
});
|
|
88
90
|
var checkedRowKeys = targetItems.map(function (item) {
|
|
89
91
|
return item.id;
|
|
90
92
|
});
|
|
91
|
-
|
|
93
|
+
var targetRowItems = targetItems.map(function (item) {
|
|
94
|
+
return item.raw;
|
|
95
|
+
});
|
|
96
|
+
var checkedRowKeysSet = new Set(checkedRowKeys);
|
|
97
|
+
|
|
98
|
+
if (checkedAll) {
|
|
99
|
+
// 移除当前页所有行 ids
|
|
100
|
+
trySetCheckedRowKeys(function (prev) {
|
|
101
|
+
return prev.filter(function (id) {
|
|
102
|
+
return !checkedRowKeysSet.has(id);
|
|
103
|
+
});
|
|
104
|
+
}, targetRowItems, false);
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
trySetCheckedRowKeys( // 添加当前页所有行 ids
|
|
109
|
+
function (prev) {
|
|
110
|
+
prev.forEach(function (id) {
|
|
111
|
+
return checkedRowKeysSet.add(id);
|
|
112
|
+
});
|
|
113
|
+
return Array.from(checkedRowKeysSet);
|
|
114
|
+
}, targetRowItems, true);
|
|
92
115
|
}, [trySetCheckedRowKeys, flattedData, checkRowIsDisabledCheckbox, checkedAll]);
|
|
93
116
|
return {
|
|
94
117
|
tryCheckAllRow: tryCheckAllRow,
|
|
@@ -103,4 +126,3 @@ var useTableCheck = function useTableCheck(_ref) {
|
|
|
103
126
|
};
|
|
104
127
|
|
|
105
128
|
exports.useTableCheck = useTableCheck;
|
|
106
|
-
//# sourceMappingURL=use-check.js.map
|
|
@@ -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.
|
|
@@ -73,4 +73,3 @@ var useColHidden = function useColHidden(_ref) {
|
|
|
73
73
|
};
|
|
74
74
|
|
|
75
75
|
exports.useColHidden = useColHidden;
|
|
76
|
-
//# sourceMappingURL=use-col-hidden.js.map
|
|
@@ -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.
|
|
@@ -17,6 +17,10 @@ var React = require('react');
|
|
|
17
17
|
|
|
18
18
|
var useUpdateEffect = require('@hi-ui/use-update-effect');
|
|
19
19
|
|
|
20
|
+
var useUncontrolledState = require('@hi-ui/use-uncontrolled-state');
|
|
21
|
+
|
|
22
|
+
var useLatest = require('@hi-ui/use-latest');
|
|
23
|
+
|
|
20
24
|
var index = require('../utils/index.js');
|
|
21
25
|
|
|
22
26
|
var DEFAULT_COLUMNS = [];
|
|
@@ -27,38 +31,59 @@ var DEFAULT_COLUMNS = [];
|
|
|
27
31
|
var useColSorter = function useColSorter(_ref) {
|
|
28
32
|
var uniqueId = _ref.uniqueId,
|
|
29
33
|
_ref$columns = _ref.columns,
|
|
30
|
-
columns = _ref$columns === void 0 ? DEFAULT_COLUMNS : _ref$columns
|
|
34
|
+
columns = _ref$columns === void 0 ? DEFAULT_COLUMNS : _ref$columns,
|
|
35
|
+
sortedColKeysProp = _ref.sortedColKeys,
|
|
36
|
+
onSortedColKeysChange = _ref.onSortedColKeysChange;
|
|
31
37
|
var cacheKey = uniqueId ? uniqueId + "_sortCols" : '';
|
|
32
38
|
|
|
33
|
-
var
|
|
39
|
+
var _useUncontrolledState = useUncontrolledState.useUncontrolledState(function () {
|
|
34
40
|
return index.parseLocalArray({
|
|
35
41
|
key: cacheKey,
|
|
36
|
-
defaultValue: columns
|
|
42
|
+
defaultValue: columns.map(function (column) {
|
|
43
|
+
return column.dataKey;
|
|
44
|
+
})
|
|
37
45
|
});
|
|
38
|
-
}),
|
|
39
|
-
|
|
40
|
-
|
|
46
|
+
}, sortedColKeysProp, onSortedColKeysChange),
|
|
47
|
+
sortedColKeys = _useUncontrolledState[0],
|
|
48
|
+
setSortColKeys = _useUncontrolledState[1];
|
|
41
49
|
|
|
50
|
+
useUpdateEffect.useUpdateEffect(function () {
|
|
51
|
+
// 当column发生改变的时候,同步 setting 的 sortedCols 设置
|
|
52
|
+
setSortColKeys(columns.map(function (column) {
|
|
53
|
+
return column.dataKey;
|
|
54
|
+
}));
|
|
55
|
+
}, [columns]);
|
|
56
|
+
var columnsLatestRef = useLatest.useLatestRef(columns);
|
|
57
|
+
var sortedCols = React.useMemo(function () {
|
|
58
|
+
var columnsMap = columnsLatestRef.current.reduce(function (prev, cur) {
|
|
59
|
+
prev[cur.dataKey] = cur;
|
|
60
|
+
return prev;
|
|
61
|
+
}, {});
|
|
62
|
+
return sortedColKeys.map(function (colKey) {
|
|
63
|
+
return columnsMap[colKey];
|
|
64
|
+
}).filter(Boolean);
|
|
65
|
+
}, [sortedColKeys, columnsLatestRef]);
|
|
42
66
|
React.useEffect(function () {
|
|
43
67
|
if (!cacheKey) return;
|
|
44
|
-
window.localStorage.setItem(cacheKey, JSON.stringify(
|
|
45
|
-
}, [cacheKey,
|
|
68
|
+
window.localStorage.setItem(cacheKey, JSON.stringify(sortedColKeys));
|
|
69
|
+
}, [cacheKey, sortedColKeys]); // 用于维护列操作时排序临时状态((未确认保存时))
|
|
46
70
|
|
|
47
|
-
var
|
|
48
|
-
|
|
49
|
-
setCacheSortedCols =
|
|
71
|
+
var _useState = React.useState(sortedCols),
|
|
72
|
+
_cacheSortedCols = _useState[0],
|
|
73
|
+
setCacheSortedCols = _useState[1]; // 保证排序的 column,是有效的可展示的列
|
|
50
74
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
75
|
+
|
|
76
|
+
var cacheSortedCols = React.useMemo(function () {
|
|
77
|
+
return _cacheSortedCols.filter(function (col) {
|
|
78
|
+
return col && typeof col.dataKey === 'string' && col.dataKey !== '';
|
|
79
|
+
});
|
|
80
|
+
}, [_cacheSortedCols]);
|
|
55
81
|
return {
|
|
56
82
|
sortedCols: sortedCols,
|
|
57
|
-
|
|
83
|
+
setSortColKeys: setSortColKeys,
|
|
58
84
|
cacheSortedCols: cacheSortedCols,
|
|
59
85
|
setCacheSortedCols: setCacheSortedCols
|
|
60
86
|
};
|
|
61
87
|
};
|
|
62
88
|
|
|
63
89
|
exports.useColSorter = useColSorter;
|
|
64
|
-
//# sourceMappingURL=use-col-sorter.js.map
|
|
@@ -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.
|
|
@@ -33,7 +33,7 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
33
33
|
var columns = _ref.columns;
|
|
34
34
|
var measureRowElementRef = React.useRef(null);
|
|
35
35
|
|
|
36
|
-
var _React$useState = React__default[
|
|
36
|
+
var _React$useState = React__default["default"].useState(function () {
|
|
37
37
|
return index.getGroupItemWidth(columns);
|
|
38
38
|
}),
|
|
39
39
|
colWidths = _React$useState[0],
|
|
@@ -46,7 +46,7 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
46
46
|
* 根据实际内容区(table 的第一行)渲染,再次精确收集并设置每列宽度
|
|
47
47
|
*/
|
|
48
48
|
|
|
49
|
-
React__default[
|
|
49
|
+
React__default["default"].useEffect(function () {
|
|
50
50
|
var measureRowElement = measureRowElementRef.current;
|
|
51
51
|
|
|
52
52
|
if (measureRowElement) {
|
|
@@ -70,7 +70,7 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
70
70
|
return function () {};
|
|
71
71
|
}, []);
|
|
72
72
|
|
|
73
|
-
var _React$useState2 = React__default[
|
|
73
|
+
var _React$useState2 = React__default["default"].useState(null),
|
|
74
74
|
headerTableElement = _React$useState2[0],
|
|
75
75
|
setHeaderTableElement = _React$useState2[1];
|
|
76
76
|
/**
|
|
@@ -78,7 +78,7 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
78
78
|
*/
|
|
79
79
|
|
|
80
80
|
|
|
81
|
-
var minColWidth = React__default[
|
|
81
|
+
var minColWidth = React__default["default"].useMemo(function () {
|
|
82
82
|
if (headerTableElement && headerTableElement.childNodes && headerTableElement.childNodes[1].childNodes[0]) {
|
|
83
83
|
var _minColWidth = Array.from(headerTableElement.childNodes[1].childNodes[0].childNodes).map(function (th) {
|
|
84
84
|
// @ts-ignore
|
|
@@ -95,7 +95,7 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
95
95
|
* 列宽拖拽 resize,只处理拖拽线两边的列宽度
|
|
96
96
|
*/
|
|
97
97
|
|
|
98
|
-
var onColumnResizable = React__default[
|
|
98
|
+
var onColumnResizable = React__default["default"].useCallback(function (_, _ref2, index) {
|
|
99
99
|
var size = _ref2.size;
|
|
100
100
|
var minWidth = minColWidth[index] + 31;
|
|
101
101
|
var anotherMinWidth = minColWidth[index + 1] + 31;
|
|
@@ -114,7 +114,7 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
114
114
|
return nextColWidths;
|
|
115
115
|
});
|
|
116
116
|
}, [minColWidth]);
|
|
117
|
-
var getColgroupProps = React__default[
|
|
117
|
+
var getColgroupProps = React__default["default"].useCallback(function (column, index) {
|
|
118
118
|
var width = colWidths[index] || undefined;
|
|
119
119
|
return {
|
|
120
120
|
style: {
|
|
@@ -135,4 +135,3 @@ var useColWidth = function useColWidth(_ref) {
|
|
|
135
135
|
};
|
|
136
136
|
|
|
137
137
|
exports.useColWidth = useColWidth;
|
|
138
|
-
//# sourceMappingURL=use-col-width.js.map
|