@aloudata/aloudata-design 0.2.0-beta.8 → 0.2.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.
Files changed (306) hide show
  1. package/README.md +188 -51
  2. package/es/Alert/index.d.ts +4 -0
  3. package/es/Alert/index.js +3 -0
  4. package/es/Alert/style/index.d.ts +2 -0
  5. package/es/Alert/style/index.js +2 -0
  6. package/es/Alert/style/index.less +1 -0
  7. package/es/Button/style/index.less +90 -50
  8. package/es/Checkbox/index.d.ts +11 -0
  9. package/es/Checkbox/index.js +38 -0
  10. package/es/Checkbox/style/index.d.ts +2 -0
  11. package/es/Checkbox/style/index.js +2 -0
  12. package/es/Checkbox/style/index.less +79 -0
  13. package/es/Col/index.d.ts +4 -0
  14. package/es/Col/index.js +3 -0
  15. package/es/Col/style/index.d.ts +2 -0
  16. package/es/Col/style/index.js +2 -0
  17. package/es/Col/style/index.less +1 -0
  18. package/es/ConfigProvider/index.d.ts +3 -0
  19. package/es/ConfigProvider/index.js +3 -0
  20. package/es/ConfigProvider/style/index.d.ts +2 -0
  21. package/es/ConfigProvider/style/index.js +2 -0
  22. package/es/ConfigProvider/style/index.less +1 -0
  23. package/es/DatePicker/index.d.ts +4 -0
  24. package/es/DatePicker/index.js +3 -0
  25. package/es/DatePicker/style/index.d.ts +2 -0
  26. package/es/DatePicker/style/index.js +2 -0
  27. package/es/DatePicker/style/index.less +1 -0
  28. package/es/Divider/index.d.ts +3 -0
  29. package/es/Divider/index.js +3 -0
  30. package/es/Divider/style/index.d.ts +2 -0
  31. package/es/Divider/style/index.js +2 -0
  32. package/es/Divider/style/index.less +1 -0
  33. package/es/Dropdown/Button.d.ts +1 -0
  34. package/es/Dropdown/Button.js +2 -1
  35. package/es/Dropdown/index.d.ts +27 -0
  36. package/es/Dropdown/style/index.d.ts +1 -0
  37. package/es/Dropdown/style/index.js +1 -0
  38. package/es/Empty/style/index.less +6 -6
  39. package/es/Form/index.d.ts +8 -0
  40. package/es/Form/index.js +3 -0
  41. package/es/Form/style/index.d.ts +2 -0
  42. package/es/Form/style/index.js +2 -0
  43. package/es/Form/style/index.less +1 -0
  44. package/es/Icon/index.d.ts +3 -0
  45. package/es/Icon/index.js +2 -1
  46. package/es/Input/components/Group/index.d.ts +1 -2
  47. package/es/Input/components/Input/index.d.ts +67 -0
  48. package/es/Input/components/Input/index.js +38 -0
  49. package/es/Input/components/Password/index.d.ts +5 -5
  50. package/es/Input/components/Password/index.js +5 -4
  51. package/es/Input/components/TextArea/index.d.ts +10 -4
  52. package/es/Input/components/TextArea/index.js +16 -6
  53. package/es/Input/index.d.ts +14 -62
  54. package/es/Input/index.js +4 -40
  55. package/es/Input/style/index.d.ts +1 -0
  56. package/es/Input/style/index.js +1 -0
  57. package/es/Input/style/index.less +40 -10
  58. package/es/Layout/index.d.ts +4 -0
  59. package/es/Layout/index.js +3 -0
  60. package/es/Layout/style/index.d.ts +2 -0
  61. package/es/Layout/style/index.js +2 -0
  62. package/es/Layout/style/index.less +1 -0
  63. package/es/Menu/MenuItem.d.ts +7 -1
  64. package/es/Menu/style/index.d.ts +1 -0
  65. package/es/Menu/style/index.js +1 -0
  66. package/es/Menu/style/index.less +9 -5
  67. package/es/Message/index.d.ts +4 -0
  68. package/es/Message/index.js +3 -0
  69. package/es/Message/style/index.d.ts +2 -0
  70. package/es/Message/style/index.js +2 -0
  71. package/es/Message/style/index.less +1 -0
  72. package/es/Navigator/components/Menu/index.js +2 -2
  73. package/es/Notification/index.d.ts +3 -0
  74. package/es/Notification/index.js +3 -0
  75. package/es/Notification/style/index.d.ts +2 -0
  76. package/es/Notification/style/index.js +2 -0
  77. package/es/Notification/style/index.less +1 -0
  78. package/es/Radio/index.d.ts +4 -0
  79. package/es/Radio/index.js +3 -0
  80. package/es/Radio/style/index.d.ts +2 -0
  81. package/es/Radio/style/index.js +2 -0
  82. package/es/Radio/style/index.less +1 -0
  83. package/es/Row/index.d.ts +3 -0
  84. package/es/Row/index.js +3 -0
  85. package/es/Row/style/index.d.ts +2 -0
  86. package/es/Row/style/index.js +2 -0
  87. package/es/Row/style/index.less +1 -0
  88. package/es/Select/BaseSelect.js +18 -5
  89. package/es/Select/OptionsList/OptionItem/RenderLabelIcon.d.ts +2 -1
  90. package/es/Select/OptionsList/OptionItem/RenderLabelIcon.js +1 -0
  91. package/es/Select/OptionsList/index.js +13 -20
  92. package/es/Select/Selector/index.js +13 -9
  93. package/es/Select/interface.d.ts +10 -2
  94. package/es/Select/style/index.less +63 -30
  95. package/es/Skeleton/index.d.ts +3 -0
  96. package/es/Skeleton/index.js +2 -0
  97. package/es/Skeleton/style/index.d.ts +2 -0
  98. package/es/Skeleton/style/index.js +2 -0
  99. package/es/Skeleton/style/index.less +1 -0
  100. package/es/Space/index.d.ts +4 -0
  101. package/es/Space/index.js +3 -0
  102. package/es/Space/style/index.d.ts +2 -0
  103. package/es/Space/style/index.js +2 -0
  104. package/es/Space/style/index.less +1 -0
  105. package/es/Spin/index.d.ts +4 -0
  106. package/es/Spin/index.js +2 -0
  107. package/es/Spin/style/index.d.ts +2 -0
  108. package/es/Spin/style/index.js +2 -0
  109. package/es/Spin/style/index.less +1 -0
  110. package/es/Steps/index.d.ts +3 -0
  111. package/es/Steps/index.js +2 -0
  112. package/es/Steps/style/index.d.ts +2 -0
  113. package/es/Steps/style/index.js +2 -0
  114. package/es/Steps/style/index.less +1 -0
  115. package/es/Switch/index.d.ts +4 -0
  116. package/es/Switch/index.js +2 -0
  117. package/es/Switch/style/index.d.ts +2 -0
  118. package/es/Switch/style/index.js +2 -0
  119. package/es/Switch/style/index.less +1 -0
  120. package/es/Table/index.d.ts +3 -3
  121. package/es/Table/index.js +286 -157
  122. package/es/Table/interface.d.ts +12 -4
  123. package/es/Table/react-table-config.d.ts +45 -45
  124. package/es/Table/style/index.less +89 -39
  125. package/es/Tabs/index.d.ts +5 -0
  126. package/es/Tabs/index.js +7 -4
  127. package/es/Tabs/style/index.d.ts +1 -0
  128. package/es/Tabs/style/index.js +1 -0
  129. package/es/Tabs/style/index.less +9 -2
  130. package/es/Tooltip/style/index.less +1 -1
  131. package/es/Tree/index.d.ts +5 -0
  132. package/es/Tree/index.js +2 -0
  133. package/es/Tree/style/index.d.ts +2 -0
  134. package/es/Tree/style/index.js +2 -0
  135. package/es/Tree/style/index.less +1 -0
  136. package/es/Typography/index.d.ts +3 -0
  137. package/es/Typography/index.js +3 -0
  138. package/es/Typography/style/index.d.ts +2 -0
  139. package/es/Typography/style/index.js +2 -0
  140. package/es/Typography/style/index.less +1 -0
  141. package/es/Upload/index.d.ts +4 -0
  142. package/es/Upload/index.js +3 -0
  143. package/es/Upload/style/index.d.ts +2 -0
  144. package/es/Upload/style/index.js +2 -0
  145. package/es/Upload/style/index.less +1 -0
  146. package/es/_utils/hooks/useControlledState.d.ts +1 -1
  147. package/es/_utils/hooks/useControlledState.js +11 -11
  148. package/es/index.d.ts +39 -1
  149. package/es/index.js +21 -1
  150. package/es/locale/zh_CN.d.ts +2 -0
  151. package/es/locale/zh_CN.js +2 -0
  152. package/es/style/index.d.ts +1 -1
  153. package/es/style/index.js +1 -1
  154. package/lib/Alert/index.d.ts +4 -0
  155. package/lib/Alert/index.js +15 -0
  156. package/lib/Alert/style/index.d.ts +2 -0
  157. package/lib/Alert/style/index.js +5 -0
  158. package/lib/Alert/style/index.less +1 -0
  159. package/lib/Button/style/index.less +90 -50
  160. package/lib/Checkbox/index.d.ts +11 -0
  161. package/lib/Checkbox/index.js +52 -0
  162. package/lib/Checkbox/style/index.d.ts +2 -0
  163. package/lib/Checkbox/style/index.js +5 -0
  164. package/lib/Checkbox/style/index.less +79 -0
  165. package/lib/Col/index.d.ts +4 -0
  166. package/lib/Col/index.js +15 -0
  167. package/lib/Col/style/index.d.ts +2 -0
  168. package/lib/Col/style/index.js +5 -0
  169. package/lib/Col/style/index.less +1 -0
  170. package/lib/ConfigProvider/index.d.ts +3 -0
  171. package/lib/ConfigProvider/index.js +15 -0
  172. package/lib/ConfigProvider/style/index.d.ts +2 -0
  173. package/lib/ConfigProvider/style/index.js +5 -0
  174. package/lib/ConfigProvider/style/index.less +1 -0
  175. package/lib/DatePicker/index.d.ts +4 -0
  176. package/lib/DatePicker/index.js +15 -0
  177. package/lib/DatePicker/style/index.d.ts +2 -0
  178. package/lib/DatePicker/style/index.js +5 -0
  179. package/lib/DatePicker/style/index.less +1 -0
  180. package/lib/Divider/index.d.ts +3 -0
  181. package/lib/Divider/index.js +15 -0
  182. package/lib/Divider/style/index.d.ts +2 -0
  183. package/lib/Divider/style/index.js +5 -0
  184. package/lib/Divider/style/index.less +1 -0
  185. package/lib/Dropdown/Button.d.ts +1 -0
  186. package/lib/Dropdown/Button.js +2 -0
  187. package/lib/Dropdown/index.d.ts +27 -0
  188. package/lib/Dropdown/style/index.d.ts +1 -0
  189. package/lib/Dropdown/style/index.js +2 -0
  190. package/lib/Empty/style/index.less +6 -6
  191. package/lib/Form/index.d.ts +8 -0
  192. package/lib/Form/index.js +15 -0
  193. package/lib/Form/style/index.d.ts +2 -0
  194. package/lib/Form/style/index.js +5 -0
  195. package/lib/Form/style/index.less +1 -0
  196. package/lib/Icon/index.d.ts +3 -0
  197. package/lib/Icon/index.js +6 -0
  198. package/lib/Input/components/Group/index.d.ts +1 -2
  199. package/lib/Input/components/Input/index.d.ts +67 -0
  200. package/lib/Input/components/Input/index.js +51 -0
  201. package/lib/Input/components/Password/index.d.ts +5 -5
  202. package/lib/Input/components/Password/index.js +10 -8
  203. package/lib/Input/components/TextArea/index.d.ts +10 -4
  204. package/lib/Input/components/TextArea/index.js +18 -7
  205. package/lib/Input/index.d.ts +14 -62
  206. package/lib/Input/index.js +4 -42
  207. package/lib/Input/style/index.d.ts +1 -0
  208. package/lib/Input/style/index.js +2 -0
  209. package/lib/Input/style/index.less +40 -10
  210. package/lib/Layout/index.d.ts +4 -0
  211. package/lib/Layout/index.js +15 -0
  212. package/lib/Layout/style/index.d.ts +2 -0
  213. package/lib/Layout/style/index.js +5 -0
  214. package/lib/Layout/style/index.less +1 -0
  215. package/lib/Menu/MenuItem.d.ts +7 -1
  216. package/lib/Menu/style/index.d.ts +1 -0
  217. package/lib/Menu/style/index.js +2 -0
  218. package/lib/Menu/style/index.less +9 -5
  219. package/lib/Message/index.d.ts +4 -0
  220. package/lib/Message/index.js +15 -0
  221. package/lib/Message/style/index.d.ts +2 -0
  222. package/lib/Message/style/index.js +5 -0
  223. package/lib/Message/style/index.less +1 -0
  224. package/lib/Navigator/components/Menu/index.js +2 -2
  225. package/lib/Notification/index.d.ts +3 -0
  226. package/lib/Notification/index.js +15 -0
  227. package/lib/Notification/style/index.d.ts +2 -0
  228. package/lib/Notification/style/index.js +5 -0
  229. package/lib/Notification/style/index.less +1 -0
  230. package/lib/Radio/index.d.ts +4 -0
  231. package/lib/Radio/index.js +15 -0
  232. package/lib/Radio/style/index.d.ts +2 -0
  233. package/lib/Radio/style/index.js +5 -0
  234. package/lib/Radio/style/index.less +1 -0
  235. package/lib/Row/index.d.ts +3 -0
  236. package/lib/Row/index.js +15 -0
  237. package/lib/Row/style/index.d.ts +2 -0
  238. package/lib/Row/style/index.js +5 -0
  239. package/lib/Row/style/index.less +1 -0
  240. package/lib/Select/BaseSelect.js +18 -5
  241. package/lib/Select/OptionsList/OptionItem/RenderLabelIcon.d.ts +2 -1
  242. package/lib/Select/OptionsList/OptionItem/RenderLabelIcon.js +2 -0
  243. package/lib/Select/OptionsList/index.js +12 -20
  244. package/lib/Select/Selector/index.js +13 -9
  245. package/lib/Select/interface.d.ts +10 -2
  246. package/lib/Select/style/index.less +63 -30
  247. package/lib/Skeleton/index.d.ts +3 -0
  248. package/lib/Skeleton/index.js +13 -0
  249. package/lib/Skeleton/style/index.d.ts +2 -0
  250. package/lib/Skeleton/style/index.js +5 -0
  251. package/lib/Skeleton/style/index.less +1 -0
  252. package/lib/Space/index.d.ts +4 -0
  253. package/lib/Space/index.js +23 -0
  254. package/lib/Space/style/index.d.ts +2 -0
  255. package/lib/Space/style/index.js +5 -0
  256. package/lib/Space/style/index.less +1 -0
  257. package/lib/Spin/index.d.ts +4 -0
  258. package/lib/Spin/index.js +13 -0
  259. package/lib/Spin/style/index.d.ts +2 -0
  260. package/lib/Spin/style/index.js +5 -0
  261. package/lib/Spin/style/index.less +1 -0
  262. package/lib/Steps/index.d.ts +3 -0
  263. package/lib/Steps/index.js +13 -0
  264. package/lib/Steps/style/index.d.ts +2 -0
  265. package/lib/Steps/style/index.js +5 -0
  266. package/lib/Steps/style/index.less +1 -0
  267. package/lib/Switch/index.d.ts +4 -0
  268. package/lib/Switch/index.js +13 -0
  269. package/lib/Switch/style/index.d.ts +2 -0
  270. package/lib/Switch/style/index.js +5 -0
  271. package/lib/Switch/style/index.less +1 -0
  272. package/lib/Table/index.d.ts +3 -3
  273. package/lib/Table/index.js +295 -165
  274. package/lib/Table/interface.d.ts +12 -4
  275. package/lib/Table/react-table-config.d.ts +45 -45
  276. package/lib/Table/style/index.less +89 -39
  277. package/lib/Tabs/index.d.ts +5 -0
  278. package/lib/Tabs/index.js +6 -3
  279. package/lib/Tabs/style/index.d.ts +1 -0
  280. package/lib/Tabs/style/index.js +2 -0
  281. package/lib/Tabs/style/index.less +9 -2
  282. package/lib/Tooltip/style/index.less +1 -1
  283. package/lib/Tree/index.d.ts +5 -0
  284. package/lib/Tree/index.js +13 -0
  285. package/lib/Tree/style/index.d.ts +2 -0
  286. package/lib/Tree/style/index.js +5 -0
  287. package/lib/Tree/style/index.less +1 -0
  288. package/lib/Typography/index.d.ts +3 -0
  289. package/lib/Typography/index.js +15 -0
  290. package/lib/Typography/style/index.d.ts +2 -0
  291. package/lib/Typography/style/index.js +5 -0
  292. package/lib/Typography/style/index.less +1 -0
  293. package/lib/Upload/index.d.ts +4 -0
  294. package/lib/Upload/index.js +15 -0
  295. package/lib/Upload/style/index.d.ts +2 -0
  296. package/lib/Upload/style/index.js +5 -0
  297. package/lib/Upload/style/index.less +1 -0
  298. package/lib/_utils/hooks/useControlledState.d.ts +1 -1
  299. package/lib/_utils/hooks/useControlledState.js +11 -11
  300. package/lib/index.d.ts +39 -1
  301. package/lib/index.js +160 -0
  302. package/lib/locale/zh_CN.d.ts +2 -0
  303. package/lib/locale/zh_CN.js +13 -0
  304. package/lib/style/index.d.ts +1 -1
  305. package/lib/style/index.js +1 -1
  306. package/package.json +15 -4
package/es/Table/index.js CHANGED
@@ -5,6 +5,12 @@ function _objectWithoutProperties(source, excluded) { if (source == null) return
5
5
 
6
6
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
7
7
 
8
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
9
+
10
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
11
+
12
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
13
+
8
14
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
9
15
 
10
16
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
@@ -17,50 +23,116 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
17
23
 
18
24
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
25
 
20
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
21
-
22
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
23
-
24
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
25
-
26
+ /* eslint-disable no-unneeded-ternary */
26
27
  /// <reference types ='./react-table-config' />
27
- import React, { useCallback, useMemo } from 'react';
28
- import { useTable, useBlockLayout, useRowSelect, useSortBy, useResizeColumns } from 'react-table';
29
- import usePrefixCls from '../_utils/hooks/usePrefixCls';
30
- import { FixedSizeList } from 'react-window';
31
- import InfiniteLoader from 'react-window-infinite-loader';
28
+ import _ from 'lodash';
32
29
  import classnames from 'classnames';
33
30
  import Icon from '../Icon';
31
+ import React, { useCallback, useEffect, useMemo, useRef, useState } from 'react';
32
+ import usePrefixCls from '../_utils/hooks/usePrefixCls';
33
+ import InfiniteScroll from 'react-infinite-scroll-component';
34
34
  import Empty from '../Empty';
35
- import _ from 'lodash';
36
- var DEFAULT_ROW_HEIGHT = 40;
35
+ import ResizeObserver from 'rc-resize-observer';
36
+ import { useTable, useBlockLayout, useRowSelect, useSortBy, useResizeColumns } from 'react-table';
37
37
  var ARRAY_FIRST_INDEX = 0;
38
38
  var DEFAULT_ROW_WIDTH = 0;
39
+ var DEFAULT_BODY_HEIGHT = 0;
39
40
 
40
- function Table(_ref) {
41
+ function Table(_ref, ref) {
41
42
  var columns = _ref.columns,
42
43
  data = _ref.data,
43
44
  total = _ref.total,
44
45
  renderHeaderLeft = _ref.renderHeaderLeft,
45
46
  renderHeaderRight = _ref.renderHeaderRight,
46
- scrollY = _ref.scrollY,
47
47
  onRowSelected = _ref.onRowSelected,
48
- _ref$loadMore = _ref.loadMore,
49
- loadMore = _ref$loadMore === void 0 ? function () {} : _ref$loadMore,
50
- hasNextPage = _ref.hasNextPage,
48
+ loadMore = _ref.loadMore,
51
49
  loading = _ref.loading,
50
+ hasNextPage = _ref.hasNextPage,
52
51
  _ref$sortable = _ref.sortable,
53
52
  sortable = _ref$sortable === void 0 ? false : _ref$sortable,
54
53
  defaultSort = _ref.defaultSort,
55
54
  _ref$resizeColumn = _ref.resizeColumn,
56
55
  resizeColumn = _ref$resizeColumn === void 0 ? false : _ref$resizeColumn,
57
56
  allSortDirections = _ref.sortDirections,
57
+ _ref$showHeader = _ref.showHeader,
58
+ showHeader = _ref$showHeader === void 0 ? true : _ref$showHeader,
58
59
  _ref$onChange = _ref.onChange,
59
- onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange;
60
+ onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
61
+ _ref$innerScroll = _ref.innerScroll,
62
+ innerScroll = _ref$innerScroll === void 0 ? false : _ref$innerScroll,
63
+ _ref$scrollThreshold = _ref.scrollThreshold,
64
+ scrollThreshold = _ref$scrollThreshold === void 0 ? '150px' : _ref$scrollThreshold,
65
+ _ref$rowClassName = _ref.rowClassName,
66
+ rowClassName = _ref$rowClassName === void 0 ? '' : _ref$rowClassName,
67
+ _ref$ellipsis = _ref.ellipsis,
68
+ ellipsis = _ref$ellipsis === void 0 ? true : _ref$ellipsis,
69
+ renderEmpty = _ref.renderEmpty,
70
+ rowKey = _ref.rowKey;
71
+
72
+ var _React$useState = React.useState(null),
73
+ _React$useState2 = _slicedToArray(_React$useState, 2),
74
+ selectedRowId = _React$useState2[0],
75
+ setSelectedRowId = _React$useState2[1];
76
+
77
+ var tableBodyListRef = useRef(null);
78
+ var tableRef = useRef(null);
79
+
80
+ var _useState = useState(DEFAULT_BODY_HEIGHT),
81
+ _useState2 = _slicedToArray(_useState, 2),
82
+ tableClientWidth = _useState2[0],
83
+ setTableClientWidth = _useState2[1];
84
+
85
+ var RANDOM_ID = "INNER_SCROLL_ID_".concat(Math.random());
86
+
87
+ var _useState3 = useState(DEFAULT_ROW_WIDTH),
88
+ _useState4 = _slicedToArray(_useState3, 2),
89
+ width = _useState4[0],
90
+ setWidth = _useState4[1]; // 如果页面整体宽度变化则重新计算
91
+
92
+
93
+ useEffect(function () {
94
+ if (tableRef.current) {
95
+ setTableClientWidth(tableRef.current.clientWidth);
96
+ }
97
+ }, [width]);
98
+ var initialColumnsWidthMap = useMemo(function () {
99
+ var map = new Map();
100
+
101
+ if (tableClientWidth !== DEFAULT_BODY_HEIGHT) {
102
+ var noGivenColumns = 0;
103
+ var givenColumnsTotalWidth = 0;
104
+ columns.forEach(function (column) {
105
+ if (column.width) {
106
+ map.set(column.dataIndex, column.width);
107
+ givenColumnsTotalWidth += column.width;
108
+ } else {
109
+ noGivenColumns += 1;
110
+ }
111
+ });
112
+ var averageWidth = (tableClientWidth - givenColumnsTotalWidth) / noGivenColumns;
113
+ return {
114
+ columnMap: map,
115
+ averageWidth: averageWidth
116
+ };
117
+ }
118
+
119
+ columns.forEach(function (column) {
120
+ if (column.width) {
121
+ map.set(column.dataIndex, column.width);
122
+ }
123
+ });
124
+ return {
125
+ columnMap: map,
126
+ averageWidth: DEFAULT_ROW_WIDTH
127
+ };
128
+ }, [columns, tableClientWidth]);
60
129
  var newColumns = useMemo(function () {
61
130
  return columns.map(function (column) {
62
131
  return _objectSpread(_objectSpread({}, column), {}, {
63
- Header: column.title,
132
+ width: initialColumnsWidthMap.columnMap.get(column.dataIndex) || initialColumnsWidthMap.averageWidth,
133
+ Header: column.title ? column.title : function () {
134
+ return null;
135
+ },
64
136
  disableSortBy: !sortable || typeof column.sorter === 'boolean',
65
137
  accessor: column.dataIndex,
66
138
  Cell: function Cell(_ref2) {
@@ -70,26 +142,57 @@ function Table(_ref) {
70
142
  }
71
143
  });
72
144
  });
73
- }, [columns, sortable]);
145
+ }, [columns, sortable, initialColumnsWidthMap]); // 默认排序的对象
74
146
 
75
- var _React$useState = React.useState({
76
- id: (defaultSort === null || defaultSort === void 0 ? void 0 : defaultSort.id) || sortable ? newColumns[ARRAY_FIRST_INDEX].dataIndex : '',
77
- desc: (defaultSort === null || defaultSort === void 0 ? void 0 : defaultSort.desc) || false
78
- }),
79
- _React$useState2 = _slicedToArray(_React$useState, 2),
80
- sortDirection = _React$useState2[0],
81
- setSortDirection = _React$useState2[1];
147
+ var defaultSortObject = {
148
+ id: newColumns[ARRAY_FIRST_INDEX].accessor,
149
+ desc: newColumns[ARRAY_FIRST_INDEX].sortOrder && newColumns[ARRAY_FIRST_INDEX].sortOrder === 'descend' ? true : false
150
+ }; // 如果支持排序 但是没有默认排序 则默认按第一列倒叙排序
151
+
152
+ var getInitialSortDirection = function getInitialSortDirection() {
153
+ if (defaultSort && defaultSort.id) {
154
+ return defaultSort;
155
+ }
156
+
157
+ if (sortable) {
158
+ return defaultSortObject;
159
+ }
160
+
161
+ return {
162
+ id: '',
163
+ desc: false
164
+ };
165
+ };
166
+
167
+ var _React$useState3 = React.useState(getInitialSortDirection()),
168
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
169
+ sortDirection = _React$useState4[0],
170
+ setSortDirection = _React$useState4[1];
171
+
172
+ var getInitSortBy = function getInitSortBy() {
173
+ if (!(sortDirection === null || sortDirection === void 0 ? void 0 : sortDirection.id)) {
174
+ return [];
175
+ }
176
+
177
+ var sortColumn = newColumns.find(function (column) {
178
+ return column.accessor === sortDirection.id;
179
+ });
180
+
181
+ if (sortColumn === null || sortColumn === void 0 ? void 0 : sortColumn.sorter) {
182
+ return [];
183
+ }
184
+
185
+ return [sortDirection];
186
+ };
82
187
 
83
188
  var _useTable = useTable({
84
189
  columns: newColumns,
85
190
  data: data,
86
191
  disableMultiSort: true,
87
192
  disableSortBy: !sortable,
193
+ getRowId: rowKey,
88
194
  initialState: {
89
- sortBy: [{
90
- id: sortDirection.id,
91
- desc: sortDirection.desc
92
- }]
195
+ sortBy: getInitSortBy()
93
196
  }
94
197
  }, useBlockLayout, useSortBy, useRowSelect, useResizeColumns),
95
198
  getTableProps = _useTable.getTableProps,
@@ -97,26 +200,11 @@ function Table(_ref) {
97
200
  headerGroups = _useTable.headerGroups,
98
201
  rows = _useTable.rows,
99
202
  prepareRow = _useTable.prepareRow,
100
- setSortBy = _useTable.setSortBy;
101
-
102
- var _React$useState3 = React.useState(null),
103
- _React$useState4 = _slicedToArray(_React$useState3, 2),
104
- selectedRowId = _React$useState4[0],
105
- setSelectedRowId = _React$useState4[1];
203
+ setSortBy = _useTable.setSortBy,
204
+ totalColumnsWidth = _useTable.totalColumnsWidth;
106
205
 
107
206
  var theadRowWidthRef = React.useRef(DEFAULT_ROW_WIDTH);
108
207
  var prefixCls = usePrefixCls('block-table');
109
-
110
- function getTbodyStyle() {
111
- if (scrollY) {
112
- return {
113
- height: "".concat(scrollY, "px")
114
- };
115
- }
116
-
117
- return {};
118
- }
119
-
120
208
  var onRowClick = useCallback(function (row) {
121
209
  if (!onRowSelected) {
122
210
  return;
@@ -125,48 +213,6 @@ function Table(_ref) {
125
213
  setSelectedRowId(row.id);
126
214
  onRowSelected(row.original);
127
215
  }, [onRowSelected]);
128
- var itemCount = hasNextPage ? data.length + 1 : data.length;
129
- var loadMoreItems = loading ? function () {} : loadMore;
130
-
131
- var isItemLoaded = function isItemLoaded(index) {
132
- return !hasNextPage || index < data.length;
133
- };
134
-
135
- var RenderRow = function RenderRow(_ref3) {
136
- var index = _ref3.index,
137
- style = _ref3.style;
138
-
139
- if (!isItemLoaded(index)) {
140
- return /*#__PURE__*/React.createElement("div", {
141
- style: style,
142
- className: classnames("".concat(prefixCls, "-loading"))
143
- }, /*#__PURE__*/React.createElement(Icon, {
144
- type: "waiting",
145
- size: 16
146
- }), "Loading");
147
- }
148
-
149
- var row = rows[index];
150
- prepareRow(row);
151
-
152
- var _row$getRowProps = row.getRowProps(),
153
- rowStyle = _row$getRowProps.style,
154
- rowProps = _objectWithoutProperties(_row$getRowProps, _excluded);
155
-
156
- return /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, rowProps), {}, {
157
- style: _objectSpread(_objectSpread(_objectSpread({}, style), rowStyle), {}, {
158
- width: resizeColumn ? style === null || style === void 0 ? void 0 : style.width : '100%'
159
- }),
160
- className: classnames("".concat(prefixCls, "-row"), _defineProperty({}, "".concat(prefixCls, "-row-selected"), row.id === selectedRowId)),
161
- onClick: function onClick() {
162
- return onRowClick(row);
163
- }
164
- }), row.cells.map(function (cell) {
165
- return /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, cell.getCellProps()), {}, {
166
- className: classnames("".concat(prefixCls, "-cell"))
167
- }), cell.render('Cell'));
168
- }));
169
- };
170
216
 
171
217
  var renderHeader = function renderHeader(len) {
172
218
  return /*#__PURE__*/React.createElement("div", {
@@ -176,41 +222,65 @@ function Table(_ref) {
176
222
  }, "\u5171\u8BA1", total || len, "\u6761"), /*#__PURE__*/React.createElement("div", {
177
223
  className: classnames("".concat(prefixCls, "-header-right"))
178
224
  }, renderHeaderRight ? renderHeaderRight() : null));
179
- };
225
+ }; // 排序的方向 倒叙{ id: 'xx', desc: true }、正序{ id: 'xx', desc: false }、无序 { id: '', desc: undefined }
226
+ // 获取排序方向以及排序的id
180
227
 
181
- var getNextSortDesc = function getNextSortDesc(currentDesc) {
228
+
229
+ var getSortBy = function getSortBy(id) {
182
230
  var sortDirections = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ['ascend', 'descend'];
183
- var sortOrder = arguments.length > 2 ? arguments[2] : undefined;
231
+ var // 如果传了sortDirections,则使用传入的,否则使用默认的
232
+ sortOrder = arguments.length > 2 ? arguments[2] : undefined;
233
+ var res = {
234
+ id: id,
235
+ desc: undefined // 给个默认的排序
236
+
237
+ };
238
+ var isSameCol = sortDirection.id === id;
184
239
  var descMap = new Map([['ascend', false], ['descend', true]]);
185
- var directions = allSortDirections || sortDirections;
240
+ var directions = allSortDirections || sortDirections; // 如果不是同一列 则返回默认排序 或者排序顺序的第一个
241
+
242
+ if (!isSameCol) {
243
+ if (sortOrder === 'ascend' || sortOrder === 'descend') {
244
+ res.desc = descMap.get(sortOrder);
245
+ } else {
246
+ res.desc = sortOrder ? sortOrder : descMap.get(directions[ARRAY_FIRST_INDEX]);
247
+ }
248
+
249
+ return res;
250
+ } // 如果是同一列
251
+ // 如果列给了默认的sortOrder则不在变化
252
+
186
253
 
187
254
  if (sortOrder === 'ascend' || sortOrder === 'descend') {
188
- return descMap.get(sortOrder);
189
- }
255
+ res.desc = descMap.get(sortOrder);
256
+ return res;
257
+ } // 在所有方向上 往后取一个
190
258
 
191
- if (typeof currentDesc === 'undefined') {
192
- return descMap.get(directions[ARRAY_FIRST_INDEX]);
193
- }
194
259
 
195
- var direction = currentDesc ? 'descend' : 'ascend';
260
+ var lastSortDirection = sortDirection.desc ? 'descend' : 'ascend';
196
261
 
197
262
  var index = _.findIndex(directions, function (item) {
198
- return item === direction;
263
+ return item === lastSortDirection;
199
264
  });
200
265
 
201
266
  var nextIndex = index + 1;
202
- return descMap.get(directions[nextIndex]);
267
+ res.desc = descMap.get(directions[nextIndex]); // 如果没有排序方向,则返回默认排序对象
268
+
269
+ if (res.desc === undefined) {
270
+ res.id = '';
271
+ }
272
+
273
+ return res;
203
274
  };
204
275
 
205
276
  var getHeaderProps = function getHeaderProps(column) {
206
277
  // @ts-ignore
207
278
  var id = column.id,
208
- isSortedDesc = column.isSortedDesc,
209
279
  canSort = column.canSort,
210
280
  sorter = column.sorter,
211
281
  sortOrder = column.sortOrder,
212
282
  sortDirections = column.sortDirections;
213
- var toggleProps = column.getSortByToggleProps();
283
+ var toggleProps = column.getSortByToggleProps(); // 仅在Table设置sortable时,所有列的canSort为true,此时为前端排序
214
284
 
215
285
  if (canSort) {
216
286
  // client sort
@@ -219,19 +289,16 @@ function Table(_ref) {
219
289
  e.stopPropagation();
220
290
 
221
291
  if (typeof toggleProps.onClick === 'function') {
222
- // toggleProps.onClick(e);
223
- var desc = getNextSortDesc(isSortedDesc, sortDirections, sortOrder);
224
- var sortBy = {
225
- id: typeof desc === 'undefined' ? '' : id,
226
- desc: desc
227
- };
228
- setSortBy([sortBy]);
292
+ var sortBy = getSortBy(id, sortDirections, sortOrder);
293
+ setSortBy(sortBy.desc === undefined ? [defaultSortObject] : [sortBy]); // 客户端排序时 需要重新设置排序
294
+
229
295
  setSortDirection(sortBy);
230
296
  onChange(sortBy);
231
297
  }
232
298
  }
233
299
  });
234
- }
300
+ } // 当列设置sorter属性时,则为服务端排序
301
+
235
302
 
236
303
  if (sorter) {
237
304
  // server sort
@@ -241,14 +308,8 @@ function Table(_ref) {
241
308
  }
242
309
  })), {}, {
243
310
  onClick: function onClick(e) {
244
- e.stopPropagation(); // 需要触发onChange
245
- // debugger;
246
-
247
- var desc = getNextSortDesc(sortDirection.desc, sortDirections, sortOrder);
248
- var sortBy = {
249
- id: typeof desc === 'boolean' ? id : '',
250
- desc: desc
251
- };
311
+ e.stopPropagation();
312
+ var sortBy = getSortBy(id, sortDirections, sortOrder);
252
313
  setSortDirection(sortBy);
253
314
  onChange(sortBy);
254
315
  }
@@ -258,8 +319,8 @@ function Table(_ref) {
258
319
  return column.getHeaderProps();
259
320
  };
260
321
 
261
- var SortIcons = function SortIcons(_ref4) {
262
- var id = _ref4.id;
322
+ var SortIcons = function SortIcons(_ref3) {
323
+ var id = _ref3.id;
263
324
  var currentSortId = sortDirection.id,
264
325
  desc = sortDirection.desc;
265
326
 
@@ -278,10 +339,89 @@ function Table(_ref) {
278
339
  });
279
340
  };
280
341
 
281
- return /*#__PURE__*/React.createElement("div", {
282
- className: prefixCls
283
- }, renderHeader(data.length), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
284
- className: classnames(_defineProperty({}, "".concat(prefixCls, "-column-resizable"), resizeColumn))
342
+ var scrollToTop = function scrollToTop() {
343
+ var INITIAL_OFFSET_TOP = 0;
344
+
345
+ if (tableBodyListRef && tableBodyListRef.current) {
346
+ tableBodyListRef.current.scrollTop = INITIAL_OFFSET_TOP;
347
+ }
348
+ };
349
+
350
+ React.useImperativeHandle(ref, function () {
351
+ return {
352
+ backToTop: function backToTop() {
353
+ scrollToTop();
354
+ }
355
+ };
356
+ });
357
+ var LoadingNode = /*#__PURE__*/React.createElement("div", {
358
+ className: classnames("".concat(prefixCls, "-loading"))
359
+ }, /*#__PURE__*/React.createElement(Icon, {
360
+ type: "waiting",
361
+ size: 16
362
+ }), "Loading");
363
+
364
+ var renderTableBody = function renderTableBody() {
365
+ if (loading && !rows.length) {
366
+ return LoadingNode;
367
+ }
368
+
369
+ if (!loading && !rows.length) {
370
+ return renderEmpty ? renderEmpty() : /*#__PURE__*/React.createElement(Empty, {
371
+ description: "\u5F53\u524D\u65E0\u6570\u636E"
372
+ });
373
+ }
374
+
375
+ var renderRowList = function renderRowList() {
376
+ return data.map(function (item, index) {
377
+ var _classnames;
378
+
379
+ var row = rows[index];
380
+ prepareRow(row);
381
+
382
+ var _row$getRowProps = row.getRowProps(),
383
+ rowStyle = _row$getRowProps.style,
384
+ rowProps = _objectWithoutProperties(_row$getRowProps, _excluded);
385
+
386
+ return /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, rowProps), {}, {
387
+ style: _objectSpread({}, rowStyle),
388
+ className: classnames("".concat(prefixCls, "-row"), (_classnames = {}, _defineProperty(_classnames, "".concat(prefixCls, "-row-selected"), row.id === selectedRowId), _defineProperty(_classnames, rowClassName, rowClassName), _defineProperty(_classnames, "".concat(prefixCls, "-row-ellipsis"), ellipsis), _classnames)),
389
+ onClick: function onClick() {
390
+ return onRowClick(row);
391
+ },
392
+ key: row.id
393
+ }), row.cells.map(function (cell) {
394
+ return /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, cell.getCellProps()), {}, {
395
+ className: classnames("".concat(prefixCls, "-cell"))
396
+ }), cell.render('Cell'));
397
+ }));
398
+ });
399
+ };
400
+
401
+ return /*#__PURE__*/React.createElement("div", {
402
+ className: classnames("".concat(prefixCls, "-list"), _defineProperty({}, "".concat(prefixCls, "-innerScroll"), innerScroll)),
403
+ id: RANDOM_ID,
404
+ ref: tableBodyListRef
405
+ }, innerScroll ? /*#__PURE__*/React.createElement(InfiniteScroll, {
406
+ dataLength: rows.length,
407
+ next: loadMore,
408
+ hasMore: !!hasNextPage,
409
+ loader: LoadingNode,
410
+ scrollableTarget: RANDOM_ID,
411
+ scrollThreshold: scrollThreshold
412
+ }, renderRowList()) : renderRowList());
413
+ };
414
+
415
+ return /*#__PURE__*/React.createElement(ResizeObserver, {
416
+ onResize: function onResize(_ref4) {
417
+ var domWidth = _ref4.width;
418
+ setWidth(domWidth);
419
+ }
420
+ }, /*#__PURE__*/React.createElement("div", {
421
+ className: prefixCls,
422
+ ref: tableRef
423
+ }, showHeader && renderHeader(data.length), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, getTableProps()), {}, {
424
+ className: classnames("".concat(prefixCls, "-table-wrap"), _defineProperty({}, "".concat(prefixCls, "-column-resizable"), resizeColumn))
285
425
  }), /*#__PURE__*/React.createElement("div", {
286
426
  className: "".concat(prefixCls, "-thead")
287
427
  }, headerGroups.map(function (headerGroup) {
@@ -297,39 +437,28 @@ function Table(_ref) {
297
437
  className: "".concat(prefixCls, "-row")
298
438
  }), headerGroup.headers.map(function (column) {
299
439
  var barPorps = resizeColumn ? column.getResizerProps() : {};
300
- return /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({
301
- // {...column.getHeaderProps(column.getSortByToggleProps())}
302
- className: classnames(_defineProperty({}, "".concat(prefixCls, "-cell-sorting"), column.id === sortDirection.id), "".concat(prefixCls, "-cell"))
303
- }, getHeaderProps(column)), {}, {
440
+ return /*#__PURE__*/React.createElement("div", {
441
+ className: classnames(_defineProperty({}, "".concat(prefixCls, "-cell-sorting"), column.id === sortDirection.id), "".concat(prefixCls, "-cell")),
442
+ style: getHeaderProps(column).style,
304
443
  key: column.id
305
- }), column.render('Header'), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, barPorps), {}, {
306
- className: classnames(_defineProperty({}, "".concat(prefixCls, "-dragBar"), resizeColumn), "".concat(prefixCls, "-bar"))
307
- })), /*#__PURE__*/React.createElement(SortIcons, {
444
+ }, /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({
445
+ className: "".concat(prefixCls, "-cell-content")
446
+ }, getHeaderProps(column)), {}, {
447
+ style: {
448
+ width: '100%'
449
+ }
450
+ }), column.render('Header'), /*#__PURE__*/React.createElement(SortIcons, {
308
451
  id: column.id
309
- }));
452
+ })), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, barPorps), {}, {
453
+ className: classnames(_defineProperty({}, "".concat(prefixCls, "-dragBar"), resizeColumn), "".concat(prefixCls, "-bar"))
454
+ })));
310
455
  }));
311
456
  })), /*#__PURE__*/React.createElement("div", _objectSpread(_objectSpread({}, getTableBodyProps()), {}, {
312
- className: classnames("".concat(prefixCls, "-tbody"), _defineProperty({}, "".concat(prefixCls, "-tbody-scroll"), !loadMoreItems)),
313
- style: getTbodyStyle()
314
- }), !loading && !rows.length && /*#__PURE__*/React.createElement(Empty, {
315
- description: "\u5F53\u524D\u65E0\u6570\u636E"
316
- }), /*#__PURE__*/React.createElement(InfiniteLoader, {
317
- isItemLoaded: isItemLoaded,
318
- itemCount: itemCount,
319
- loadMoreItems: loadMoreItems
320
- }, function (_ref5) {
321
- var onItemsRendered = _ref5.onItemsRendered,
322
- ref = _ref5.ref;
323
- return /*#__PURE__*/React.createElement(FixedSizeList, {
324
- itemCount: itemCount,
325
- onItemsRendered: onItemsRendered,
326
- height: scrollY || data.length * DEFAULT_ROW_HEIGHT,
327
- itemSize: DEFAULT_ROW_HEIGHT,
328
- width: resizeColumn ? theadRowWidthRef.current : '100%',
329
- ref: ref,
330
- className: "".concat(prefixCls, "-list")
331
- }, RenderRow);
332
- }))));
457
+ className: classnames("".concat(prefixCls, "-tbody"), _defineProperty({}, "".concat(prefixCls, "-innerScroll"), innerScroll)),
458
+ style: {
459
+ width: totalColumnsWidth
460
+ }
461
+ }), renderTableBody()))));
333
462
  }
334
463
 
335
- export default Table;
464
+ export default /*#__PURE__*/React.forwardRef(Table);
@@ -6,22 +6,22 @@ export interface ISort<T> {
6
6
  desc?: boolean;
7
7
  }
8
8
  export interface IColumn<T extends object> {
9
- title: string;
9
+ title: string | null;
10
10
  dataIndex: string;
11
- render?: (value: unknown, row: Record<string, T>, index: number) => React.ReactNode;
11
+ render?: (value: any, row: any, index: number) => React.ReactNode;
12
12
  width?: number;
13
13
  minWidth?: number;
14
14
  sorter?: boolean | 'string' | 'number' | 'basic' | 'datetime' | 'alphanumeric' | ((rowA: Row<T>, rowB: Row<T>, columnId: IdType<T>, desc?: boolean) => number);
15
15
  sortOrder?: TSortOrder;
16
16
  sortDirections?: Array<'ascend' | 'descend'>;
17
+ selected?: boolean;
17
18
  }
18
19
  export interface ITableProps<T extends object> {
19
20
  columns: IColumn<T>[];
20
21
  data: T[];
21
22
  total?: number;
22
- scrollY?: number;
23
23
  onRowSelected?: (row: T) => void;
24
- loadMore?: (startIndex: number, stopIndex: number) => void | Promise<void>;
24
+ loadMore?: () => void | Promise<void>;
25
25
  hasNextPage?: boolean;
26
26
  loading?: boolean;
27
27
  renderHeaderLeft?: () => React.ReactNode;
@@ -31,4 +31,12 @@ export interface ITableProps<T extends object> {
31
31
  defaultSort?: ISort<T>;
32
32
  sortDirections?: Array<'ascend' | 'descend'>;
33
33
  resizeColumn?: boolean;
34
+ showHeader?: boolean;
35
+ innerScroll?: boolean;
36
+ ref?: React.RefObject<unknown>;
37
+ scrollThreshold?: string | number;
38
+ rowKey?: (row: any) => string;
39
+ rowClassName?: string;
40
+ ellipsis?: boolean;
41
+ renderEmpty?: () => React.ReactNode;
34
42
  }