@hi-ui/table 4.0.0-alpha.7 → 4.0.0-beta.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 +159 -6
- package/lib/cjs/BaseTable.js +298 -0
- package/lib/cjs/BaseTable.js.map +1 -0
- package/lib/cjs/Table.js +315 -0
- package/lib/cjs/Table.js.map +1 -0
- package/lib/cjs/TableAdvancedFilter.js +164 -0
- package/lib/cjs/TableAdvancedFilter.js.map +1 -0
- package/lib/cjs/TableBody.js +150 -0
- package/lib/cjs/TableBody.js.map +1 -0
- package/lib/cjs/TableCell.js +226 -0
- package/lib/cjs/TableCell.js.map +1 -0
- package/lib/cjs/TableColumnMenu.js +172 -0
- package/lib/cjs/TableColumnMenu.js.map +1 -0
- package/lib/cjs/TableEmbedRow.js +81 -0
- package/lib/cjs/TableEmbedRow.js.map +1 -0
- package/lib/cjs/TableHeader.js +129 -0
- package/lib/cjs/TableHeader.js.map +1 -0
- package/lib/cjs/TableRow.js +216 -0
- package/lib/cjs/TableRow.js.map +1 -0
- package/lib/cjs/TableSettingMenu.js +222 -0
- package/lib/cjs/TableSettingMenu.js.map +1 -0
- package/lib/cjs/context.js +33 -0
- package/lib/cjs/context.js.map +1 -0
- package/lib/cjs/hooks/use-async-switch.js +145 -0
- package/lib/cjs/hooks/use-async-switch.js.map +1 -0
- package/lib/cjs/hooks/use-check.js +106 -0
- package/lib/cjs/hooks/use-check.js.map +1 -0
- package/lib/cjs/hooks/use-col-hidden.js +76 -0
- package/lib/cjs/hooks/use-col-hidden.js.map +1 -0
- package/lib/cjs/hooks/use-col-sorter.js +64 -0
- package/lib/cjs/hooks/use-col-sorter.js.map +1 -0
- package/lib/cjs/hooks/use-col-width.js +134 -0
- package/lib/cjs/hooks/use-col-width.js.map +1 -0
- package/lib/cjs/hooks/use-colgroup.js +111 -0
- package/lib/cjs/hooks/use-colgroup.js.map +1 -0
- package/lib/cjs/hooks/use-drag-sorter/lib/esm/index.js +287 -0
- package/lib/cjs/hooks/use-drag-sorter/lib/esm/index.js.map +1 -0
- package/lib/cjs/hooks/use-drag.js +110 -0
- package/lib/cjs/hooks/use-drag.js.map +1 -0
- package/lib/cjs/hooks/use-embed-expand.js +185 -0
- package/lib/cjs/hooks/use-embed-expand.js.map +1 -0
- package/lib/cjs/hooks/use-expand.js +183 -0
- package/lib/cjs/hooks/use-expand.js.map +1 -0
- package/lib/cjs/hooks/use-pagination.js +66 -0
- package/lib/cjs/hooks/use-pagination.js.map +1 -0
- package/lib/cjs/hooks/use-queue.js +55 -0
- package/lib/cjs/hooks/use-queue.js.map +1 -0
- package/lib/cjs/icons/index.js +55 -0
- package/lib/cjs/icons/index.js.map +1 -0
- package/lib/cjs/index.js +23 -0
- package/lib/cjs/index.js.map +1 -0
- package/lib/cjs/styles/index.scss.js +22 -0
- package/lib/cjs/styles/index.scss.js.map +1 -0
- package/lib/cjs/use-table.js +599 -0
- package/lib/cjs/use-table.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js +29 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js +27 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js +29 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js +29 -0
- package/lib/cjs/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/index.js +62 -0
- package/lib/cjs/utils/func-utils/lib/esm/index.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js +37 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Map.js +37 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Map.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js +37 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Set.js +37 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Set.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js +34 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js +37 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js +60 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js +49 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js +80 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js +63 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js +34 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js +33 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js +36 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js +48 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js +77 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js +96 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js +40 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js +50 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js +28 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js +58 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js +49 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_root.js +39 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_root.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js +55 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js +61 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js +67 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js +69 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObject.js +72 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObject.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js +69 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js.map +1 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js +45 -0
- package/lib/cjs/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js.map +1 -0
- package/lib/cjs/utils/index.js +190 -0
- package/lib/cjs/utils/index.js.map +1 -0
- package/lib/esm/BaseTable.js +266 -0
- package/lib/esm/BaseTable.js.map +1 -0
- package/lib/esm/Table.js +276 -0
- package/lib/esm/Table.js.map +1 -0
- package/lib/esm/TableAdvancedFilter.js +134 -0
- package/lib/esm/TableAdvancedFilter.js.map +1 -0
- package/lib/esm/TableBody.js +126 -0
- package/lib/esm/TableBody.js.map +1 -0
- package/lib/esm/TableCell.js +202 -0
- package/lib/esm/TableCell.js.map +1 -0
- package/lib/esm/TableColumnMenu.js +145 -0
- package/lib/esm/TableColumnMenu.js.map +1 -0
- package/lib/esm/TableEmbedRow.js +59 -0
- package/lib/esm/TableEmbedRow.js.map +1 -0
- package/lib/esm/TableHeader.js +107 -0
- package/lib/esm/TableHeader.js.map +1 -0
- package/lib/esm/TableRow.js +189 -0
- package/lib/esm/TableRow.js.map +1 -0
- package/lib/esm/TableSettingMenu.js +190 -0
- package/lib/esm/TableSettingMenu.js.map +1 -0
- package/lib/esm/context.js +25 -0
- package/lib/esm/context.js.map +1 -0
- package/lib/esm/hooks/use-async-switch.js +124 -0
- package/lib/esm/hooks/use-async-switch.js.map +1 -0
- package/lib/esm/hooks/use-check.js +87 -0
- package/lib/esm/hooks/use-check.js.map +1 -0
- package/lib/esm/hooks/use-col-hidden.js +67 -0
- package/lib/esm/hooks/use-col-hidden.js.map +1 -0
- package/lib/esm/hooks/use-col-sorter.js +55 -0
- package/lib/esm/hooks/use-col-sorter.js.map +1 -0
- package/lib/esm/hooks/use-col-width.js +116 -0
- package/lib/esm/hooks/use-col-width.js.map +1 -0
- package/lib/esm/hooks/use-colgroup.js +93 -0
- package/lib/esm/hooks/use-colgroup.js.map +1 -0
- package/lib/esm/hooks/use-drag-sorter/lib/esm/index.js +264 -0
- package/lib/esm/hooks/use-drag-sorter/lib/esm/index.js.map +1 -0
- package/lib/esm/hooks/use-drag.js +91 -0
- package/lib/esm/hooks/use-drag.js.map +1 -0
- package/lib/esm/hooks/use-embed-expand.js +160 -0
- package/lib/esm/hooks/use-embed-expand.js.map +1 -0
- package/lib/esm/hooks/use-expand.js +172 -0
- package/lib/esm/hooks/use-expand.js.map +1 -0
- package/lib/esm/hooks/use-pagination.js +46 -0
- package/lib/esm/hooks/use-pagination.js.map +1 -0
- package/lib/esm/hooks/use-queue.js +49 -0
- package/lib/esm/hooks/use-queue.js.map +1 -0
- package/lib/esm/icons/index.js +33 -0
- package/lib/esm/icons/index.js.map +1 -0
- package/lib/esm/index.js +12 -0
- package/lib/esm/index.js.map +1 -0
- package/lib/esm/styles/index.scss.js +17 -0
- package/lib/esm/styles/index.scss.js.map +1 -0
- package/lib/esm/use-table.js +567 -0
- package/lib/esm/use-table.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js +24 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_cloneBuffer.js_commonjs-module.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js +22 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_commonjsHelpers.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js +24 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/_nodeUtil.js_commonjs-module.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js +24 -0
- package/lib/esm/utils/func-utils/lib/esm/_virtual/isBuffer.js_commonjs-module.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/index.js +45 -0
- package/lib/esm/utils/func-utils/lib/esm/index.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js +29 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_DataView.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Map.js +29 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Map.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js +29 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Promise.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Set.js +29 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Set.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js +27 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_Symbol.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js +29 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_WeakMap.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js +51 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseGetTag.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js +41 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsArguments.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js +70 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_baseIsNative.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js +59 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_cloneBuffer.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js +27 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_coreJsData.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js +30 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_defineProperty.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js +17 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_freeGlobal.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js +40 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getNative.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js +70 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getRawTag.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js +87 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getTag.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js +35 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_getValue.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js +43 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_isMasked.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js +25 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nativeCreate.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js +54 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_nodeUtil.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js +44 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_objectToString.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_root.js +21 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_root.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js +50 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/_toSource.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js +57 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isArguments.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js +62 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isBuffer.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js +61 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isFunction.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObject.js +55 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObject.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js +52 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/isObjectLike.js.map +1 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js +40 -0
- package/lib/esm/utils/func-utils/lib/esm/node_modules/lodash/stubFalse.js.map +1 -0
- package/lib/esm/utils/index.js +178 -0
- package/lib/esm/utils/index.js.map +1 -0
- package/lib/types/BaseTable.d.ts +41 -0
- package/lib/types/Table.d.ts +18 -16
- package/lib/types/TableAdvancedFilter.d.ts +9 -0
- package/lib/types/TableBody.d.ts +11 -0
- package/lib/types/TableCell.d.ts +41 -0
- package/lib/types/TableColumnMenu.d.ts +18 -5
- package/lib/types/TableEmbedRow.d.ts +26 -0
- package/lib/types/TableHeader.d.ts +1 -7
- package/lib/types/TableRow.d.ts +32 -0
- package/lib/types/TableSettingMenu.d.ts +1 -2
- package/lib/types/context.d.ts +110 -85
- package/lib/types/hooks/use-async-switch.d.ts +2 -1
- package/lib/types/hooks/use-check.d.ts +4 -8
- package/lib/types/hooks/use-col-frozen.d.ts +1 -1
- package/lib/types/hooks/use-col-hidden.d.ts +1 -1
- package/lib/types/hooks/use-col-width.d.ts +5 -8
- package/lib/types/hooks/use-colgroup.d.ts +2 -1
- package/lib/types/hooks/use-drag.d.ts +13 -0
- package/lib/types/hooks/use-embed-expand.d.ts +39 -0
- package/lib/types/hooks/use-expand.d.ts +1 -1
- package/lib/types/hooks/use-pagination.d.ts +5 -6
- package/lib/types/index.d.ts +1 -0
- package/lib/types/types.d.ts +33 -32
- package/lib/types/use-table.d.ts +242 -0
- package/lib/types/utils/index.d.ts +11 -4
- package/package.json +35 -8
- package/lib/types/TableExpandedRow.d.ts +0 -28
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
/** @LICENSE
|
|
2
|
+
* @hi-ui/table
|
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/table#readme
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/
|
|
10
|
+
'use strict';
|
|
11
|
+
|
|
12
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
13
|
+
|
|
14
|
+
Object.defineProperty(exports, '__esModule', {
|
|
15
|
+
value: true
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
var React = require('react');
|
|
19
|
+
|
|
20
|
+
var classname = require('@hi-ui/classname');
|
|
21
|
+
|
|
22
|
+
var env = require('@hi-ui/env');
|
|
23
|
+
|
|
24
|
+
var times = require('@hi-ui/times');
|
|
25
|
+
|
|
26
|
+
var typeAssertion = require('@hi-ui/type-assertion');
|
|
27
|
+
|
|
28
|
+
var iconButton = require('@hi-ui/icon-button');
|
|
29
|
+
|
|
30
|
+
var context = require('./context.js');
|
|
31
|
+
|
|
32
|
+
var index = require('./icons/index.js');
|
|
33
|
+
|
|
34
|
+
var BaseTable = require('./BaseTable.js');
|
|
35
|
+
|
|
36
|
+
function _interopDefaultLegacy(e) {
|
|
37
|
+
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
38
|
+
'default': e
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
43
|
+
|
|
44
|
+
var _prefix = classname.getPrefixCls('table-cell');
|
|
45
|
+
/**
|
|
46
|
+
* 表格 body 单元格渲染
|
|
47
|
+
*/
|
|
48
|
+
|
|
49
|
+
|
|
50
|
+
var TableCell = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
51
|
+
var _ref$prefixCls = _ref.prefixCls,
|
|
52
|
+
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
53
|
+
className = _ref.className,
|
|
54
|
+
column = _ref.column,
|
|
55
|
+
rowData = _ref.rowData,
|
|
56
|
+
rowIndex = _ref.rowIndex,
|
|
57
|
+
_ref$isSwitcherCol = _ref.isSwitcherCol,
|
|
58
|
+
isSwitcherCol = _ref$isSwitcherCol === void 0 ? false : _ref$isSwitcherCol,
|
|
59
|
+
_ref$expandedTree = _ref.expandedTree,
|
|
60
|
+
expandedTree = _ref$expandedTree === void 0 ? false : _ref$expandedTree,
|
|
61
|
+
_ref$expandedIcon = _ref.expandedIcon,
|
|
62
|
+
expandedIcon = _ref$expandedIcon === void 0 ? index.defaultExpandIcon : _ref$expandedIcon,
|
|
63
|
+
_ref$collapsedIcon = _ref.collapsedIcon,
|
|
64
|
+
collapsedIcon = _ref$collapsedIcon === void 0 ? index.defaultCollapseIcon : _ref$collapsedIcon,
|
|
65
|
+
_ref$leafIcon = _ref.leafIcon,
|
|
66
|
+
leafIcon = _ref$leafIcon === void 0 ? index.defaultLeafIcon : _ref$leafIcon;
|
|
67
|
+
|
|
68
|
+
var _useTableContext = context.useTableContext(),
|
|
69
|
+
isHighlightedCol = _useTableContext.isHighlightedCol,
|
|
70
|
+
onLoadChildren = _useTableContext.onLoadChildren,
|
|
71
|
+
isHoveredHighlightCol = _useTableContext.isHoveredHighlightCol,
|
|
72
|
+
showColHighlight = _useTableContext.showColHighlight,
|
|
73
|
+
onHoveredColChange = _useTableContext.onHoveredColChange,
|
|
74
|
+
onTreeNodeSwitch = _useTableContext.onTreeNodeSwitch,
|
|
75
|
+
getStickyColProps = _useTableContext.getStickyColProps,
|
|
76
|
+
canScroll = _useTableContext.canScroll,
|
|
77
|
+
isTree = _useTableContext.isTree,
|
|
78
|
+
cellRender = _useTableContext.cellRender,
|
|
79
|
+
isLoadingTreeNodeId = _useTableContext.isLoadingTreeNodeId;
|
|
80
|
+
|
|
81
|
+
var dataKey = column.id,
|
|
82
|
+
leftStickyWidth = column.leftStickyWidth,
|
|
83
|
+
rightStickyWidth = column.rightStickyWidth,
|
|
84
|
+
rawRender = column.render;
|
|
85
|
+
var depth = rowData.depth,
|
|
86
|
+
rowId = rowData.id;
|
|
87
|
+
/**
|
|
88
|
+
* normalize 单元格渲染内容,支持自定义 render
|
|
89
|
+
*/
|
|
90
|
+
|
|
91
|
+
var cellContent = React__default['default'].useMemo(function () {
|
|
92
|
+
var row = rowData.raw;
|
|
93
|
+
var content = row[dataKey];
|
|
94
|
+
|
|
95
|
+
if (typeAssertion.isFunction(rawRender)) {
|
|
96
|
+
content = rawRender(content, BaseTable.EMBED_DATA_KEY === dataKey ? rowData : row, rowIndex, dataKey);
|
|
97
|
+
} else if (typeAssertion.isFunction(cellRender)) {
|
|
98
|
+
content = cellRender(content);
|
|
99
|
+
} // 处理单元格内容,重载支持配置式合并单元格
|
|
100
|
+
|
|
101
|
+
|
|
102
|
+
var childrenMaybePropsReturn = typeAssertion.isObject(content) && ! /*#__PURE__*/React__default['default'].isValidElement(content);
|
|
103
|
+
|
|
104
|
+
if (childrenMaybePropsReturn) {
|
|
105
|
+
return content;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
return {
|
|
109
|
+
children: content,
|
|
110
|
+
props: {
|
|
111
|
+
colSpan: undefined,
|
|
112
|
+
rowSpan: undefined
|
|
113
|
+
}
|
|
114
|
+
};
|
|
115
|
+
}, [rawRender, dataKey, rowData, rowIndex, cellRender]); // 将被其它单元格(用户配置)合并,不进行渲染
|
|
116
|
+
|
|
117
|
+
if (cellContent.props.colSpan === 0 || cellContent.props.rowSpan === 0) {
|
|
118
|
+
return null;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
var loading = isLoadingTreeNodeId(rowId);
|
|
122
|
+
var sticky = typeof rightStickyWidth !== 'undefined' || typeof leftStickyWidth !== 'undefined';
|
|
123
|
+
var cls = classname.cx(prefixCls, className, canScroll && sticky && prefixCls + "__col--sticky", isHighlightedCol(dataKey) && prefixCls + "__col--highlight", isHoveredHighlightCol(dataKey) && prefixCls + "__col--hovered-highlight");
|
|
124
|
+
return /*#__PURE__*/React__default['default'].createElement("td", Object.assign({
|
|
125
|
+
ref: ref,
|
|
126
|
+
key: dataKey,
|
|
127
|
+
className: cls
|
|
128
|
+
}, getStickyColProps(column), {
|
|
129
|
+
colSpan: cellContent.props.colSpan,
|
|
130
|
+
rowSpan: cellContent.props.rowSpan,
|
|
131
|
+
// 按需绑定函数,避免频繁调用 setState 特别消耗性能
|
|
132
|
+
onMouseEnter: showColHighlight ? function () {
|
|
133
|
+
return onHoveredColChange(column, true);
|
|
134
|
+
} : undefined,
|
|
135
|
+
onMouseLeave: showColHighlight ? function () {
|
|
136
|
+
return onHoveredColChange(column, false);
|
|
137
|
+
} : undefined
|
|
138
|
+
}), isSwitcherCol && depth > 0 ? renderIndent({
|
|
139
|
+
depth: depth,
|
|
140
|
+
prefixCls: prefixCls
|
|
141
|
+
}) : null, isSwitcherCol ? renderSwitcher({
|
|
142
|
+
prefixCls: prefixCls,
|
|
143
|
+
node: rowData,
|
|
144
|
+
loading: loading,
|
|
145
|
+
expanded: expandedTree,
|
|
146
|
+
expandedIcon: expandedIcon,
|
|
147
|
+
collapsedIcon: collapsedIcon,
|
|
148
|
+
leafIcon: leafIcon,
|
|
149
|
+
onLoadChildren: onLoadChildren,
|
|
150
|
+
isTree: isTree,
|
|
151
|
+
onNodeExpand: function onNodeExpand(shouldExpanded) {
|
|
152
|
+
return onTreeNodeSwitch(rowData, shouldExpanded);
|
|
153
|
+
}
|
|
154
|
+
}) : null, cellContent.children);
|
|
155
|
+
});
|
|
156
|
+
|
|
157
|
+
if (env.__DEV__) {
|
|
158
|
+
TableCell.displayName = 'TableCell';
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* 渲染空白占位
|
|
162
|
+
*/
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
var renderIndent = function renderIndent(_ref2) {
|
|
166
|
+
var prefixCls = _ref2.prefixCls,
|
|
167
|
+
depth = _ref2.depth;
|
|
168
|
+
return times.times(depth, function (index) {
|
|
169
|
+
return /*#__PURE__*/React__default['default'].createElement("span", {
|
|
170
|
+
className: prefixCls + "__indent",
|
|
171
|
+
key: index
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
};
|
|
175
|
+
/**
|
|
176
|
+
* 渲染子树折叠切换器
|
|
177
|
+
*/
|
|
178
|
+
|
|
179
|
+
|
|
180
|
+
var renderSwitcher = function renderSwitcher(_ref3) {
|
|
181
|
+
var prefixCls = _ref3.prefixCls,
|
|
182
|
+
node = _ref3.node,
|
|
183
|
+
loading = _ref3.loading,
|
|
184
|
+
expanded = _ref3.expanded,
|
|
185
|
+
expandedIcon = _ref3.expandedIcon,
|
|
186
|
+
collapsedIcon = _ref3.collapsedIcon,
|
|
187
|
+
leafIcon = _ref3.leafIcon,
|
|
188
|
+
onNodeExpand = _ref3.onNodeExpand,
|
|
189
|
+
onLoadChildren = _ref3.onLoadChildren,
|
|
190
|
+
isTree = _ref3.isTree;
|
|
191
|
+
|
|
192
|
+
if (loading) {
|
|
193
|
+
return /*#__PURE__*/React__default['default'].createElement(iconButton.IconButton, {
|
|
194
|
+
className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--loading"),
|
|
195
|
+
icon: index.defaultLoadingIcon
|
|
196
|
+
});
|
|
197
|
+
}
|
|
198
|
+
|
|
199
|
+
var hasChildren = node.children && node.children.length > 0;
|
|
200
|
+
var canLoadChildren = onLoadChildren && !node.children && !node.isLeaf;
|
|
201
|
+
|
|
202
|
+
if (hasChildren || canLoadChildren) {
|
|
203
|
+
return /*#__PURE__*/React__default['default'].createElement(iconButton.IconButton, {
|
|
204
|
+
tabIndex: -1,
|
|
205
|
+
className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--" + (expanded ? 'expanded' : 'collapse')),
|
|
206
|
+
icon: expanded ? expandedIcon : collapsedIcon,
|
|
207
|
+
onClick: function onClick() {
|
|
208
|
+
var shouldExpanded = !expanded;
|
|
209
|
+
onNodeExpand(shouldExpanded);
|
|
210
|
+
}
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
if (isTree) {
|
|
215
|
+
return /*#__PURE__*/React__default['default'].createElement(iconButton.IconButton, {
|
|
216
|
+
tabIndex: -1,
|
|
217
|
+
className: classname.cx(prefixCls + "__switcher", prefixCls + "__switcher--noop"),
|
|
218
|
+
icon: leafIcon
|
|
219
|
+
});
|
|
220
|
+
}
|
|
221
|
+
|
|
222
|
+
return null;
|
|
223
|
+
};
|
|
224
|
+
|
|
225
|
+
exports.TableCell = TableCell;
|
|
226
|
+
//# sourceMappingURL=TableCell.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableCell.js","sources":["../../src/TableCell.tsx"],"sourcesContent":[null],"names":["_prefix","getPrefixCls","TableCell","forwardRef","ref","prefixCls","className","column","rowData","rowIndex","isSwitcherCol","expandedTree","expandedIcon","defaultExpandIcon","collapsedIcon","defaultCollapseIcon","leafIcon","defaultLeafIcon","useTableContext","isHighlightedCol","onLoadChildren","isHoveredHighlightCol","showColHighlight","onHoveredColChange","onTreeNodeSwitch","getStickyColProps","canScroll","isTree","cellRender","isLoadingTreeNodeId","dataKey","id","leftStickyWidth","rightStickyWidth","rawRender","render","depth","rowId","cellContent","React","useMemo","row","raw","content","isFunction","EMBED_DATA_KEY","childrenMaybePropsReturn","isObject","isValidElement","children","props","colSpan","undefined","rowSpan","loading","sticky","cls","cx","key","onMouseEnter","onMouseLeave","renderIndent","renderSwitcher","node","expanded","onNodeExpand","shouldExpanded","__DEV__","displayName","times","index","IconButton","icon","defaultLoadingIcon","hasChildren","length","canLoadChildren","isLeaf","tabIndex","onClick"],"mappings":"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"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
/** @LICENSE
|
|
2
|
+
* @hi-ui/table
|
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/table#readme
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/
|
|
10
|
+
'use strict';
|
|
11
|
+
|
|
12
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
13
|
+
|
|
14
|
+
Object.defineProperty(exports, '__esModule', {
|
|
15
|
+
value: true
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
var React = require('react');
|
|
19
|
+
|
|
20
|
+
var classname = require('@hi-ui/classname');
|
|
21
|
+
|
|
22
|
+
var env = require('@hi-ui/env');
|
|
23
|
+
|
|
24
|
+
var icons = require('@hi-ui/icons');
|
|
25
|
+
|
|
26
|
+
var iconButton = require('@hi-ui/icon-button');
|
|
27
|
+
|
|
28
|
+
var Popper = require('@hi-ui/popper');
|
|
29
|
+
|
|
30
|
+
var useToggle = require('@hi-ui/use-toggle');
|
|
31
|
+
|
|
32
|
+
var context = require('./context.js');
|
|
33
|
+
|
|
34
|
+
var localeContext = require('@hi-ui/locale-context');
|
|
35
|
+
|
|
36
|
+
function _interopDefaultLegacy(e) {
|
|
37
|
+
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
38
|
+
'default': e
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
43
|
+
|
|
44
|
+
var Popper__default = /*#__PURE__*/_interopDefaultLegacy(Popper);
|
|
45
|
+
|
|
46
|
+
var _prefix = classname.getPrefixCls('table-column-menu');
|
|
47
|
+
/**
|
|
48
|
+
* 表头每列下拉式菜单,包含冻结、高亮、递增、递减操作
|
|
49
|
+
*/
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
var TableColumnMenu = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
53
|
+
var _ref$prefixCls = _ref.prefixCls,
|
|
54
|
+
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
55
|
+
column = _ref.column;
|
|
56
|
+
var i18n = localeContext.useLocaleContext();
|
|
57
|
+
|
|
58
|
+
var _useTableContext = context.useTableContext(),
|
|
59
|
+
activeSorterType = _useTableContext.activeSorterType,
|
|
60
|
+
activeSorterColumn = _useTableContext.activeSorterColumn,
|
|
61
|
+
setActiveSorterType = _useTableContext.setActiveSorterType,
|
|
62
|
+
setActiveSorterColumn = _useTableContext.setActiveSorterColumn,
|
|
63
|
+
leftFreezeColumn = _useTableContext.leftFreezeColumn,
|
|
64
|
+
setLeftFreezeColumn = _useTableContext.setLeftFreezeColumn,
|
|
65
|
+
isHighlightedCol = _useTableContext.isHighlightedCol,
|
|
66
|
+
onHighlightedColChange = _useTableContext.onHighlightedColChange;
|
|
67
|
+
|
|
68
|
+
var dataKey = column.id,
|
|
69
|
+
columnRaw = column.raw;
|
|
70
|
+
var canSort = !!columnRaw.sorter;
|
|
71
|
+
|
|
72
|
+
var _useToggle = useToggle.useToggle(),
|
|
73
|
+
menuVisible = _useToggle[0],
|
|
74
|
+
menuVisibleAction = _useToggle[1];
|
|
75
|
+
|
|
76
|
+
var _React$useState = React__default['default'].useState(null),
|
|
77
|
+
menuTrigger = _React$useState[0],
|
|
78
|
+
setMenuTrigger = _React$useState[1];
|
|
79
|
+
|
|
80
|
+
return /*#__PURE__*/React__default['default'].createElement(React__default['default'].Fragment, null, /*#__PURE__*/React__default['default'].createElement(iconButton.IconButton, {
|
|
81
|
+
className: prefixCls + "__trigger",
|
|
82
|
+
ref: setMenuTrigger,
|
|
83
|
+
onClick: menuVisibleAction.not,
|
|
84
|
+
icon: /*#__PURE__*/React__default['default'].createElement(icons.DownOutlined, null)
|
|
85
|
+
}), /*#__PURE__*/React__default['default'].createElement(Popper__default['default'], {
|
|
86
|
+
className: prefixCls + "__popper",
|
|
87
|
+
visible: menuVisible,
|
|
88
|
+
attachEl: menuTrigger,
|
|
89
|
+
onClose: menuVisibleAction.off,
|
|
90
|
+
// @DesignToken zIndex: `overlay`
|
|
91
|
+
zIndex: 1050
|
|
92
|
+
}, /*#__PURE__*/React__default['default'].createElement("div", {
|
|
93
|
+
className: prefixCls + "__content"
|
|
94
|
+
}, canSort ? /*#__PURE__*/React__default['default'].createElement(TableColumnMenuItem, {
|
|
95
|
+
prefixCls: prefixCls,
|
|
96
|
+
active: activeSorterType === 'ascend' && activeSorterColumn === dataKey,
|
|
97
|
+
content: i18n.get('table.ascend'),
|
|
98
|
+
icon: /*#__PURE__*/React__default['default'].createElement(icons.SortAscendingOutlined, null),
|
|
99
|
+
onSwitch: function onSwitch(shouldActive) {
|
|
100
|
+
if (shouldActive) {
|
|
101
|
+
setActiveSorterType('ascend');
|
|
102
|
+
setActiveSorterColumn(dataKey);
|
|
103
|
+
} else {
|
|
104
|
+
setActiveSorterType(null);
|
|
105
|
+
setActiveSorterColumn(null);
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
menuVisibleAction.off();
|
|
109
|
+
}
|
|
110
|
+
}) : null, canSort ? /*#__PURE__*/React__default['default'].createElement(TableColumnMenuItem, {
|
|
111
|
+
prefixCls: prefixCls,
|
|
112
|
+
active: activeSorterType === 'descend' && activeSorterColumn === dataKey,
|
|
113
|
+
content: i18n.get('table.descend'),
|
|
114
|
+
icon: /*#__PURE__*/React__default['default'].createElement(icons.SortDescendingOutlined, null),
|
|
115
|
+
onSwitch: function onSwitch(shouldActive) {
|
|
116
|
+
if (shouldActive) {
|
|
117
|
+
setActiveSorterType('descend');
|
|
118
|
+
setActiveSorterColumn(dataKey);
|
|
119
|
+
} else {
|
|
120
|
+
setActiveSorterType(null);
|
|
121
|
+
setActiveSorterColumn(null);
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
menuVisibleAction.off();
|
|
125
|
+
}
|
|
126
|
+
}) : null, /*#__PURE__*/React__default['default'].createElement(TableColumnMenuItem, {
|
|
127
|
+
prefixCls: prefixCls,
|
|
128
|
+
active: isHighlightedCol(dataKey),
|
|
129
|
+
content: i18n.get('table.highlight'),
|
|
130
|
+
icon: /*#__PURE__*/React__default['default'].createElement(icons.ColumnHeightOutlined, null),
|
|
131
|
+
onSwitch: function onSwitch(shouldActive) {
|
|
132
|
+
onHighlightedColChange(column, shouldActive);
|
|
133
|
+
menuVisibleAction.off();
|
|
134
|
+
}
|
|
135
|
+
}), /*#__PURE__*/React__default['default'].createElement(TableColumnMenuItem, {
|
|
136
|
+
prefixCls: prefixCls,
|
|
137
|
+
active: leftFreezeColumn === dataKey,
|
|
138
|
+
content: i18n.get('table.freeze'),
|
|
139
|
+
icon: /*#__PURE__*/React__default['default'].createElement(icons.LockOutlined, null),
|
|
140
|
+
onSwitch: function onSwitch(shouldActive) {
|
|
141
|
+
if (shouldActive) {
|
|
142
|
+
setLeftFreezeColumn(dataKey);
|
|
143
|
+
} else {
|
|
144
|
+
setLeftFreezeColumn('');
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
menuVisibleAction.off();
|
|
148
|
+
}
|
|
149
|
+
}))));
|
|
150
|
+
});
|
|
151
|
+
|
|
152
|
+
if (env.__DEV__) {
|
|
153
|
+
TableColumnMenu.displayName = 'TableColumnMenu';
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
var TableColumnMenuItem = function TableColumnMenuItem(_ref2) {
|
|
157
|
+
var prefixCls = _ref2.prefixCls,
|
|
158
|
+
active = _ref2.active,
|
|
159
|
+
onSwitch = _ref2.onSwitch,
|
|
160
|
+
content = _ref2.content,
|
|
161
|
+
icon = _ref2.icon;
|
|
162
|
+
return /*#__PURE__*/React__default['default'].createElement("div", {
|
|
163
|
+
className: classname.cx(prefixCls + "__item", active && prefixCls + "__item--active"),
|
|
164
|
+
onClick: function onClick() {
|
|
165
|
+
return onSwitch(!active);
|
|
166
|
+
}
|
|
167
|
+
}, /*#__PURE__*/React__default['default'].createElement("span", null, content), icon);
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
exports.TableColumnMenu = TableColumnMenu;
|
|
171
|
+
exports.TableColumnMenuItem = TableColumnMenuItem;
|
|
172
|
+
//# sourceMappingURL=TableColumnMenu.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableColumnMenu.js","sources":["../../src/TableColumnMenu.tsx"],"sourcesContent":[null],"names":["_prefix","getPrefixCls","TableColumnMenu","forwardRef","ref","prefixCls","column","i18n","useLocaleContext","useTableContext","activeSorterType","activeSorterColumn","setActiveSorterType","setActiveSorterColumn","leftFreezeColumn","setLeftFreezeColumn","isHighlightedCol","onHighlightedColChange","dataKey","id","columnRaw","raw","canSort","sorter","useToggle","menuVisible","menuVisibleAction","React","useState","menuTrigger","setMenuTrigger","IconButton","className","onClick","not","icon","DownOutlined","Popper","visible","attachEl","onClose","off","zIndex","TableColumnMenuItem","active","content","get","SortAscendingOutlined","onSwitch","shouldActive","SortDescendingOutlined","ColumnHeightOutlined","LockOutlined","__DEV__","displayName","cx"],"mappings":"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"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
/** @LICENSE
|
|
2
|
+
* @hi-ui/table
|
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/table#readme
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/
|
|
10
|
+
'use strict';
|
|
11
|
+
|
|
12
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
13
|
+
|
|
14
|
+
Object.defineProperty(exports, '__esModule', {
|
|
15
|
+
value: true
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
var React = require('react');
|
|
19
|
+
|
|
20
|
+
var classname = require('@hi-ui/classname');
|
|
21
|
+
|
|
22
|
+
var env = require('@hi-ui/env');
|
|
23
|
+
|
|
24
|
+
var context = require('./context.js');
|
|
25
|
+
|
|
26
|
+
var Loading = require('@hi-ui/loading');
|
|
27
|
+
|
|
28
|
+
function _interopDefaultLegacy(e) {
|
|
29
|
+
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
30
|
+
'default': e
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
35
|
+
|
|
36
|
+
var Loading__default = /*#__PURE__*/_interopDefaultLegacy(Loading);
|
|
37
|
+
|
|
38
|
+
var _prefix = classname.getPrefixCls('table-embed-row');
|
|
39
|
+
/**
|
|
40
|
+
* 可展开的内嵌面板
|
|
41
|
+
*/
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
var TableEmbedRow = function TableEmbedRow(_ref) {
|
|
45
|
+
var _ref$prefixCls = _ref.prefixCls,
|
|
46
|
+
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
47
|
+
colSpan = _ref.colSpan,
|
|
48
|
+
rowIndex = _ref.rowIndex,
|
|
49
|
+
rowData = _ref.rowData;
|
|
50
|
+
|
|
51
|
+
var _useTableContext = context.useTableContext(),
|
|
52
|
+
isExpandEmbedRows = _useTableContext.isExpandEmbedRows,
|
|
53
|
+
getEmbedPanelById = _useTableContext.getEmbedPanelById,
|
|
54
|
+
isEmbedLoadingId = _useTableContext.isEmbedLoadingId,
|
|
55
|
+
onEmbedSwitch = _useTableContext.onEmbedSwitch;
|
|
56
|
+
|
|
57
|
+
var loading = isEmbedLoadingId(rowData.id);
|
|
58
|
+
var expanded = isExpandEmbedRows(rowData.id);
|
|
59
|
+
React.useEffect(function () {
|
|
60
|
+
// 每次展开都执行,由于异步渲染原因,放在 Effect 中
|
|
61
|
+
if (expanded) {
|
|
62
|
+
onEmbedSwitch(rowData, rowIndex);
|
|
63
|
+
}
|
|
64
|
+
}, [onEmbedSwitch, expanded, rowData, rowIndex]);
|
|
65
|
+
return expanded ? /*#__PURE__*/React__default['default'].createElement("tr", {
|
|
66
|
+
key: "expanded-row",
|
|
67
|
+
className: prefixCls
|
|
68
|
+
}, /*#__PURE__*/React__default['default'].createElement("td", {
|
|
69
|
+
colSpan: colSpan
|
|
70
|
+
}, /*#__PURE__*/React__default['default'].createElement(Loading__default['default'], {
|
|
71
|
+
size: "sm",
|
|
72
|
+
visible: loading
|
|
73
|
+
}, getEmbedPanelById(rowData.id)))) : null;
|
|
74
|
+
};
|
|
75
|
+
|
|
76
|
+
if (env.__DEV__) {
|
|
77
|
+
TableEmbedRow.displayName = 'TableEmbedRow';
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
exports.TableEmbedRow = TableEmbedRow;
|
|
81
|
+
//# sourceMappingURL=TableEmbedRow.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableEmbedRow.js","sources":["../../src/TableEmbedRow.tsx"],"sourcesContent":[null],"names":["_prefix","getPrefixCls","TableEmbedRow","prefixCls","colSpan","rowIndex","rowData","useTableContext","isExpandEmbedRows","getEmbedPanelById","isEmbedLoadingId","onEmbedSwitch","loading","id","expanded","useEffect","React","key","className","Loading","size","visible","__DEV__","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,OAAO,GAAGC,sBAAAA,CAAa,iBAAbA,CAAhB;AAEA;;;;;IAGaC,aAAa,GAAG,SAAhBA,aAAgB,KAAA;4BAC3BC;MAAAA,wCAAYH;MACZI,eAAAA;MACAC,gBAAAA;MACAC,eAAAA;;yBAOIC,uBAAAA;MAJFC,iBADF,oBACEA;MACAC,iBAFF,oBAEEA;MACAC,gBAHF,oBAGEA;MACAC,aAJF,oBAIEA;;MAGIC,OAAO,GAAGF,gBAAgB,CAACJ,OAAO,CAACO,EAAT;MAC1BC,QAAQ,GAAGN,iBAAiB,CAACF,OAAO,CAACO,EAAT;AAElCE,EAAAA,eAAAA,CAAU;;QAEJD,UAAU;AACZH,MAAAA,aAAa,CAACL,OAAD,EAAUD,QAAV,CAAbM;;AAHK,GAATI,EAKG,CAACJ,aAAD,EAAgBG,QAAhB,EAA0BR,OAA1B,EAAmCD,QAAnC,CALHU;SAOOD,QAAQ,gBACbE,yBAAAA,cAAAA,KAAAA;AAAIC,IAAAA,GAAG,EAAC;AAAeC,IAAAA,SAAS,EAAEf;GAAlCa,eACEA,yBAAAA,cAAAA,KAAAA;AAAIZ,IAAAA,OAAO,EAAEA;GAAbY,eAEEA,yBAAAA,cAAAA,CAACG,2BAADH;AAASI,IAAAA,IAAI,EAAC;AAAKC,IAAAA,OAAO,EAAET;GAA5BI,EACGP,iBAAiB,CAACH,OAAO,CAACO,EAAT,CADpBG,CAFFA,CADFA,CADa,GASX;;;AAsBN,IAAIM,WAAJ,EAAa;AACXpB,EAAAA,aAAa,CAACqB,WAAdrB,GAA4B,eAA5BA;;;"}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/** @LICENSE
|
|
2
|
+
* @hi-ui/table
|
|
3
|
+
* https://github.com/XiaoMi/hiui/tree/master/packages/ui/table#readme
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) HIUI <mi-hiui@xiaomi.com>.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/
|
|
10
|
+
'use strict';
|
|
11
|
+
|
|
12
|
+
var _typeof = require("@babel/runtime/helpers/typeof");
|
|
13
|
+
|
|
14
|
+
Object.defineProperty(exports, '__esModule', {
|
|
15
|
+
value: true
|
|
16
|
+
});
|
|
17
|
+
|
|
18
|
+
var React = require('react');
|
|
19
|
+
|
|
20
|
+
var reactResizable = require('react-resizable');
|
|
21
|
+
|
|
22
|
+
var classname = require('@hi-ui/classname');
|
|
23
|
+
|
|
24
|
+
var env = require('@hi-ui/env');
|
|
25
|
+
|
|
26
|
+
var typeAssertion = require('@hi-ui/type-assertion');
|
|
27
|
+
|
|
28
|
+
var context = require('./context.js');
|
|
29
|
+
|
|
30
|
+
var TableAdvancedFilter = require('./TableAdvancedFilter.js');
|
|
31
|
+
|
|
32
|
+
function _interopDefaultLegacy(e) {
|
|
33
|
+
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
34
|
+
'default': e
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
39
|
+
|
|
40
|
+
var _prefix = classname.getPrefixCls('table-header');
|
|
41
|
+
/**
|
|
42
|
+
* TODO: What is TableHeader
|
|
43
|
+
*/
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
var TableHeader = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
47
|
+
var _ref$prefixCls = _ref.prefixCls,
|
|
48
|
+
prefixCls = _ref$prefixCls === void 0 ? _prefix : _ref$prefixCls,
|
|
49
|
+
className = _ref.className;
|
|
50
|
+
|
|
51
|
+
var _useTableContext = context.useTableContext(),
|
|
52
|
+
groupedColumns = _useTableContext.groupedColumns,
|
|
53
|
+
resizable = _useTableContext.resizable,
|
|
54
|
+
colWidths = _useTableContext.colWidths,
|
|
55
|
+
isHoveredHighlightCol = _useTableContext.isHoveredHighlightCol,
|
|
56
|
+
isHighlightedCol = _useTableContext.isHighlightedCol,
|
|
57
|
+
getColgroupProps = _useTableContext.getColgroupProps,
|
|
58
|
+
onColumnResizable = _useTableContext.onColumnResizable,
|
|
59
|
+
getStickyColProps = _useTableContext.getStickyColProps,
|
|
60
|
+
onTableBodyScrollMock = _useTableContext.onTableBodyScrollMock,
|
|
61
|
+
scrollHeaderElementRef = _useTableContext.scrollHeaderElementRef,
|
|
62
|
+
leafColumns = _useTableContext.leafColumns,
|
|
63
|
+
getTableHeaderProps = _useTableContext.getTableHeaderProps,
|
|
64
|
+
showColMenu = _useTableContext.showColMenu;
|
|
65
|
+
|
|
66
|
+
var cls = classname.cx(prefixCls, className);
|
|
67
|
+
return /*#__PURE__*/React__default['default'].createElement("div", Object.assign({
|
|
68
|
+
className: cls,
|
|
69
|
+
ref: scrollHeaderElementRef
|
|
70
|
+
}, getTableHeaderProps()), /*#__PURE__*/React__default['default'].createElement("table", {
|
|
71
|
+
style: {
|
|
72
|
+
width: '100%',
|
|
73
|
+
position: 'relative'
|
|
74
|
+
}
|
|
75
|
+
}, /*#__PURE__*/React__default['default'].createElement("colgroup", null, leafColumns.map(function (col, idx) {
|
|
76
|
+
return /*#__PURE__*/React__default['default'].createElement("col", Object.assign({
|
|
77
|
+
key: idx,
|
|
78
|
+
className: prefixCls + "-col"
|
|
79
|
+
}, getColgroupProps(col, idx)));
|
|
80
|
+
})), /*#__PURE__*/React__default['default'].createElement("thead", {
|
|
81
|
+
onWheel: onTableBodyScrollMock
|
|
82
|
+
}, groupedColumns.map(function (cols, colsIndex) {
|
|
83
|
+
return /*#__PURE__*/React__default['default'].createElement("tr", {
|
|
84
|
+
key: colsIndex
|
|
85
|
+
}, cols.map(function (col, colIndex) {
|
|
86
|
+
var _ref2 = col || {},
|
|
87
|
+
dataKey = _ref2.dataKey,
|
|
88
|
+
title = _ref2.title;
|
|
89
|
+
|
|
90
|
+
var titleContent = typeAssertion.isFunction(title) ? title(col) : title;
|
|
91
|
+
var cell = /*#__PURE__*/React__default['default'].createElement("th", Object.assign({
|
|
92
|
+
key: dataKey
|
|
93
|
+
}, getStickyColProps(col), {
|
|
94
|
+
className: classname.cx(isHighlightedCol(dataKey) && prefixCls + "-th__col--highlight", isHoveredHighlightCol(dataKey) && prefixCls + "__col--hovered-highlight"),
|
|
95
|
+
// @ts-ignore
|
|
96
|
+
colSpan: col.colSpan,
|
|
97
|
+
// @ts-ignore
|
|
98
|
+
rowSpan: col.rowSpan
|
|
99
|
+
}), titleContent, TableAdvancedFilter.renderFilter({
|
|
100
|
+
prefixCls: prefixCls + "-filter",
|
|
101
|
+
columnKey: dataKey,
|
|
102
|
+
showColMenu: showColMenu,
|
|
103
|
+
column: col
|
|
104
|
+
}));
|
|
105
|
+
return resizable && colIndex !== colWidths.length - 1 ? /*#__PURE__*/React__default['default'].createElement(reactResizable.Resizable, {
|
|
106
|
+
key: colIndex,
|
|
107
|
+
className: prefixCls + "__resizable",
|
|
108
|
+
draggableOpts: {
|
|
109
|
+
enableUserSelectHack: false
|
|
110
|
+
},
|
|
111
|
+
handle: /*#__PURE__*/React__default['default'].createElement("span", {
|
|
112
|
+
className: prefixCls + "__resizable-handle"
|
|
113
|
+
}),
|
|
114
|
+
height: 0,
|
|
115
|
+
width: colWidths[colIndex],
|
|
116
|
+
onResize: function onResize(evt, options) {
|
|
117
|
+
onColumnResizable(evt, options, colIndex);
|
|
118
|
+
}
|
|
119
|
+
}, cell) : cell;
|
|
120
|
+
}));
|
|
121
|
+
}))));
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
if (env.__DEV__) {
|
|
125
|
+
TableHeader.displayName = 'TableHeader';
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
exports.TableHeader = TableHeader;
|
|
129
|
+
//# sourceMappingURL=TableHeader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TableHeader.js","sources":["../../src/TableHeader.tsx"],"sourcesContent":[null],"names":["_prefix","getPrefixCls","TableHeader","forwardRef","ref","prefixCls","className","useTableContext","groupedColumns","resizable","colWidths","isHoveredHighlightCol","isHighlightedCol","getColgroupProps","onColumnResizable","getStickyColProps","onTableBodyScrollMock","scrollHeaderElementRef","leafColumns","getTableHeaderProps","showColMenu","cls","cx","React","style","width","position","map","col","idx","key","onWheel","cols","colsIndex","colIndex","dataKey","title","titleContent","isFunction","cell","colSpan","rowSpan","renderFilter","columnKey","column","length","Resizable","draggableOpts","enableUserSelectHack","handle","height","onResize","evt","options","__DEV__","displayName"],"mappings":"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"}
|