@kdcloudjs/table 1.0.0

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 (572) hide show
  1. package/LICENSE +568 -0
  2. package/README.md +111 -0
  3. package/dist/@kdcloudjs/table.css +422 -0
  4. package/dist/@kdcloudjs/table.css.map +1 -0
  5. package/dist/@kdcloudjs/table.js +38578 -0
  6. package/dist/@kdcloudjs/table.js.map +1 -0
  7. package/dist/@kdcloudjs/table.min.css +9 -0
  8. package/dist/@kdcloudjs/table.min.js +208 -0
  9. package/dist/@kdcloudjs/table.min.js.map +1 -0
  10. package/dist/default-theme.js +344 -0
  11. package/dist/kd-table.css +422 -0
  12. package/dist/kd-table.css.map +1 -0
  13. package/dist/kd-table.js +38578 -0
  14. package/dist/kd-table.js.map +1 -0
  15. package/dist/kd-table.min.css +9 -0
  16. package/dist/kd-table.min.js +208 -0
  17. package/dist/kd-table.min.js.map +1 -0
  18. package/dist/kd-ui-complete.less +779 -0
  19. package/dist/kd-ui.less +2 -0
  20. package/dist/theme.js +13 -0
  21. package/es/_utils/arrayUtil.d.ts +5 -0
  22. package/es/_utils/arrayUtil.js +17 -0
  23. package/es/_utils/devwarning.d.ts +1 -0
  24. package/es/_utils/devwarning.js +10 -0
  25. package/es/_utils/formatUtil.d.ts +46 -0
  26. package/es/_utils/formatUtil.js +346 -0
  27. package/es/_utils/hooks.d.ts +51 -0
  28. package/es/_utils/hooks.js +165 -0
  29. package/es/_utils/index.d.ts +8 -0
  30. package/es/_utils/index.js +15 -0
  31. package/es/_utils/numberUtil.d.ts +34 -0
  32. package/es/_utils/numberUtil.js +181 -0
  33. package/es/_utils/omit.d.ts +1 -0
  34. package/es/_utils/omit.js +11 -0
  35. package/es/_utils/react-children.d.ts +2 -0
  36. package/es/_utils/react-children.js +8 -0
  37. package/es/_utils/type.d.ts +12 -0
  38. package/es/_utils/type.js +15 -0
  39. package/es/_utils/usePopper.d.ts +29 -0
  40. package/es/_utils/usePopper.js +546 -0
  41. package/es/config-provider/ConfigContext.d.ts +22 -0
  42. package/es/config-provider/ConfigContext.js +7 -0
  43. package/es/config-provider/compDefaultProps.d.ts +8 -0
  44. package/es/config-provider/compDefaultProps.js +10 -0
  45. package/es/config-provider/configProvider.d.ts +11 -0
  46. package/es/config-provider/configProvider.js +40 -0
  47. package/es/config-provider/defaultConfig.d.ts +10 -0
  48. package/es/config-provider/defaultConfig.js +18 -0
  49. package/es/config-provider/index.d.ts +6 -0
  50. package/es/config-provider/index.js +6 -0
  51. package/es/index.d.ts +2 -0
  52. package/es/index.js +4 -0
  53. package/es/locale/index.d.ts +3 -0
  54. package/es/locale/index.js +3 -0
  55. package/es/locale/locale.d.ts +50 -0
  56. package/es/locale/locale.js +251 -0
  57. package/es/locale/zh-CN.d.ts +8 -0
  58. package/es/locale/zh-CN.js +8 -0
  59. package/es/style/color/colors.less +2 -0
  60. package/es/style/core/index.less +2 -0
  61. package/es/style/core/motion/other.less +28 -0
  62. package/es/style/core/motion/slide.less +53 -0
  63. package/es/style/core/motion.less +2 -0
  64. package/es/style/core/reset.less +186 -0
  65. package/es/style/css.js +1 -0
  66. package/es/style/index.css +410 -0
  67. package/es/style/index.d.ts +1 -0
  68. package/es/style/index.js +1 -0
  69. package/es/style/index.less +2 -0
  70. package/es/style/mixins/index.less +19 -0
  71. package/es/style/mixins/overlay.less +22 -0
  72. package/es/style/mixins/reset.less +13 -0
  73. package/es/style/themes/default.less +445 -0
  74. package/es/style/themes/index.less +1 -0
  75. package/es/table/base/calculations.d.ts +5 -0
  76. package/es/table/base/calculations.js +364 -0
  77. package/es/table/base/colgroup.d.ts +5 -0
  78. package/es/table/base/colgroup.js +22 -0
  79. package/es/table/base/empty.d.ts +9 -0
  80. package/es/table/base/empty.js +38 -0
  81. package/es/table/base/header.d.ts +5 -0
  82. package/es/table/base/header.js +324 -0
  83. package/es/table/base/helpers/SpanManager.d.ts +9 -0
  84. package/es/table/base/helpers/SpanManager.js +50 -0
  85. package/es/table/base/helpers/TableDOMUtils.d.ts +18 -0
  86. package/es/table/base/helpers/TableDOMUtils.js +104 -0
  87. package/es/table/base/helpers/__test__/SpanManager.test.d.ts +1 -0
  88. package/es/table/base/helpers/__test__/SpanManager.test.js +18 -0
  89. package/es/table/base/helpers/__test__/TableDOMUtils.test.d.ts +1 -0
  90. package/es/table/base/helpers/__test__/TableDOMUtils.test.js +34 -0
  91. package/es/table/base/helpers/__test__/rowHeightManager.test.d.ts +1 -0
  92. package/es/table/base/helpers/__test__/rowHeightManager.test.js +30 -0
  93. package/es/table/base/helpers/__test__/visible-part.test.d.ts +1 -0
  94. package/es/table/base/helpers/__test__/visible-part.test.js +28 -0
  95. package/es/table/base/helpers/rowHeightManager.d.ts +7 -0
  96. package/es/table/base/helpers/rowHeightManager.js +157 -0
  97. package/es/table/base/helpers/visible-part.d.ts +23 -0
  98. package/es/table/base/helpers/visible-part.js +58 -0
  99. package/es/table/base/html-table.d.ts +15 -0
  100. package/es/table/base/html-table.js +132 -0
  101. package/es/table/base/index.d.ts +3 -0
  102. package/es/table/base/index.js +2 -0
  103. package/es/table/base/interfaces.d.ts +54 -0
  104. package/es/table/base/interfaces.js +0 -0
  105. package/es/table/base/loading.d.ts +13 -0
  106. package/es/table/base/loading.js +60 -0
  107. package/es/table/base/styles.d.ts +132 -0
  108. package/es/table/base/styles.js +112 -0
  109. package/es/table/base/table.d.ts +150 -0
  110. package/es/table/base/table.js +733 -0
  111. package/es/table/base/utils.d.ts +36 -0
  112. package/es/table/base/utils.js +193 -0
  113. package/es/table/common-views.d.ts +24 -0
  114. package/es/table/common-views.js +70 -0
  115. package/es/table/index.d.ts +6 -0
  116. package/es/table/index.js +6 -0
  117. package/es/table/interfaces.d.ts +98 -0
  118. package/es/table/interfaces.js +0 -0
  119. package/es/table/internals.d.ts +14 -0
  120. package/es/table/internals.js +56 -0
  121. package/es/table/pipeline/features/__test__/multiSelect.test.d.ts +1 -0
  122. package/es/table/pipeline/features/__test__/multiSelect.test.js +152 -0
  123. package/es/table/pipeline/features/__test__/rowDetail.test.d.ts +1 -0
  124. package/es/table/pipeline/features/__test__/rowDetail.test.js +223 -0
  125. package/es/table/pipeline/features/__test__/rowGrouping.test.d.ts +1 -0
  126. package/es/table/pipeline/features/__test__/rowGrouping.test.js +120 -0
  127. package/es/table/pipeline/features/__test__/singleSelect.test.d.ts +1 -0
  128. package/es/table/pipeline/features/__test__/singleSelect.test.js +191 -0
  129. package/es/table/pipeline/features/__test__/sort.test.d.ts +1 -0
  130. package/es/table/pipeline/features/__test__/sort.test.js +213 -0
  131. package/es/table/pipeline/features/__test__/tips.test.d.ts +1 -0
  132. package/es/table/pipeline/features/__test__/tips.test.js +123 -0
  133. package/es/table/pipeline/features/__test__/treeMode.test.d.ts +1 -0
  134. package/es/table/pipeline/features/__test__/treeMode.test.js +202 -0
  135. package/es/table/pipeline/features/autoFill.d.ts +4 -0
  136. package/es/table/pipeline/features/autoFill.js +63 -0
  137. package/es/table/pipeline/features/autoRowSpan.d.ts +2 -0
  138. package/es/table/pipeline/features/autoRowSpan.js +72 -0
  139. package/es/table/pipeline/features/buildTree.d.ts +2 -0
  140. package/es/table/pipeline/features/buildTree.js +8 -0
  141. package/es/table/pipeline/features/columnDrag.d.ts +6 -0
  142. package/es/table/pipeline/features/columnDrag.js +265 -0
  143. package/es/table/pipeline/features/columnFilter.d.ts +20 -0
  144. package/es/table/pipeline/features/columnFilter.js +173 -0
  145. package/es/table/pipeline/features/columnHover.d.ts +12 -0
  146. package/es/table/pipeline/features/columnHover.js +51 -0
  147. package/es/table/pipeline/features/columnRangeHover.d.ts +15 -0
  148. package/es/table/pipeline/features/columnRangeHover.js +83 -0
  149. package/es/table/pipeline/features/columnResizeWidth.d.ts +21 -0
  150. package/es/table/pipeline/features/columnResizeWidth.js +173 -0
  151. package/es/table/pipeline/features/contextMenu.d.ts +14 -0
  152. package/es/table/pipeline/features/contextMenu.js +370 -0
  153. package/es/table/pipeline/features/filter/DefaultFilterContent.d.ts +4 -0
  154. package/es/table/pipeline/features/filter/DefaultFilterContent.js +91 -0
  155. package/es/table/pipeline/features/filter/Filter.d.ts +17 -0
  156. package/es/table/pipeline/features/filter/Filter.js +111 -0
  157. package/es/table/pipeline/features/filter/FilterPanel.d.ts +20 -0
  158. package/es/table/pipeline/features/filter/FilterPanel.js +81 -0
  159. package/es/table/pipeline/features/filter/__test__/Filter.test.d.ts +1 -0
  160. package/es/table/pipeline/features/filter/__test__/Filter.test.js +29 -0
  161. package/es/table/pipeline/features/filter/index.d.ts +4 -0
  162. package/es/table/pipeline/features/filter/index.js +4 -0
  163. package/es/table/pipeline/features/filter/util.d.ts +10 -0
  164. package/es/table/pipeline/features/filter/util.js +67 -0
  165. package/es/table/pipeline/features/index.d.ts +16 -0
  166. package/es/table/pipeline/features/index.js +16 -0
  167. package/es/table/pipeline/features/multiSelect.d.ts +27 -0
  168. package/es/table/pipeline/features/multiSelect.js +208 -0
  169. package/es/table/pipeline/features/rowDetail.d.ts +35 -0
  170. package/es/table/pipeline/features/rowDetail.js +254 -0
  171. package/es/table/pipeline/features/rowGrouping.d.ts +14 -0
  172. package/es/table/pipeline/features/rowGrouping.js +200 -0
  173. package/es/table/pipeline/features/singleSelect.d.ts +23 -0
  174. package/es/table/pipeline/features/singleSelect.js +122 -0
  175. package/es/table/pipeline/features/sort.d.ts +40 -0
  176. package/es/table/pipeline/features/sort.js +332 -0
  177. package/es/table/pipeline/features/tips.d.ts +2 -0
  178. package/es/table/pipeline/features/tips.js +57 -0
  179. package/es/table/pipeline/features/treeMode.d.ts +37 -0
  180. package/es/table/pipeline/features/treeMode.js +234 -0
  181. package/es/table/pipeline/features/treeSelect.d.ts +38 -0
  182. package/es/table/pipeline/features/treeSelect.js +154 -0
  183. package/es/table/pipeline/index.d.ts +3 -0
  184. package/es/table/pipeline/index.js +3 -0
  185. package/es/table/pipeline/pipeline.d.ts +85 -0
  186. package/es/table/pipeline/pipeline.js +272 -0
  187. package/es/table/pivot/cross-table/buildCrossTable.d.ts +14 -0
  188. package/es/table/pivot/cross-table/buildCrossTable.js +294 -0
  189. package/es/table/pivot/cross-table/constants.d.ts +1 -0
  190. package/es/table/pivot/cross-table/constants.js +1 -0
  191. package/es/table/pivot/cross-table/cross-table.d.ts +18 -0
  192. package/es/table/pivot/cross-table/cross-table.js +55 -0
  193. package/es/table/pivot/cross-table/index.d.ts +4 -0
  194. package/es/table/pivot/cross-table/index.js +3 -0
  195. package/es/table/pivot/cross-table/interfaces.d.ts +29 -0
  196. package/es/table/pivot/cross-table/interfaces.js +0 -0
  197. package/es/table/pivot/cross-table/internals.d.ts +13 -0
  198. package/es/table/pivot/cross-table/internals.js +0 -0
  199. package/es/table/pivot/cross-tree-table/buildCrossTreeTable.d.ts +14 -0
  200. package/es/table/pivot/cross-tree-table/buildCrossTreeTable.js +219 -0
  201. package/es/table/pivot/cross-tree-table/cross-tree-table.d.ts +38 -0
  202. package/es/table/pivot/cross-tree-table/cross-tree-table.js +127 -0
  203. package/es/table/pivot/cross-tree-table/index.d.ts +2 -0
  204. package/es/table/pivot/cross-tree-table/index.js +2 -0
  205. package/es/table/pivot/pivot-utils/buildDrillTree.d.ts +16 -0
  206. package/es/table/pivot/pivot-utils/buildDrillTree.js +93 -0
  207. package/es/table/pivot/pivot-utils/builders.d.ts +26 -0
  208. package/es/table/pivot/pivot-utils/builders.js +252 -0
  209. package/es/table/pivot/pivot-utils/convert-utils.d.ts +31 -0
  210. package/es/table/pivot/pivot-utils/convert-utils.js +180 -0
  211. package/es/table/pivot/pivot-utils/index.d.ts +5 -0
  212. package/es/table/pivot/pivot-utils/index.js +4 -0
  213. package/es/table/pivot/pivot-utils/interfaces.d.ts +12 -0
  214. package/es/table/pivot/pivot-utils/interfaces.js +0 -0
  215. package/es/table/pivot/pivot-utils/simpleEncode.d.ts +1 -0
  216. package/es/table/pivot/pivot-utils/simpleEncode.js +7 -0
  217. package/es/table/style/css.js +2 -0
  218. package/es/table/style/index.css +0 -0
  219. package/es/table/style/index.d.ts +2 -0
  220. package/es/table/style/index.js +2 -0
  221. package/es/table/style/index.less +1 -0
  222. package/es/table/transforms/autoRowSpan.d.ts +3 -0
  223. package/es/table/transforms/autoRowSpan.js +73 -0
  224. package/es/table/transforms/autoWidth.d.ts +25 -0
  225. package/es/table/transforms/autoWidth.js +160 -0
  226. package/es/table/transforms/buildTree.d.ts +3 -0
  227. package/es/table/transforms/buildTree.js +15 -0
  228. package/es/table/transforms/columnHover.d.ts +17 -0
  229. package/es/table/transforms/columnHover.js +59 -0
  230. package/es/table/transforms/columnRangeHover.d.ts +17 -0
  231. package/es/table/transforms/columnRangeHover.js +94 -0
  232. package/es/table/transforms/columnResize.d.ts +27 -0
  233. package/es/table/transforms/columnResize.js +152 -0
  234. package/es/table/transforms/flatten.d.ts +3 -0
  235. package/es/table/transforms/flatten.js +16 -0
  236. package/es/table/transforms/index.d.ts +12 -0
  237. package/es/table/transforms/index.js +12 -0
  238. package/es/table/transforms/orderField.d.ts +3 -0
  239. package/es/table/transforms/orderField.js +22 -0
  240. package/es/table/transforms/sort.d.ts +43 -0
  241. package/es/table/transforms/sort.js +338 -0
  242. package/es/table/transforms/tips.d.ts +8 -0
  243. package/es/table/transforms/tips.js +54 -0
  244. package/es/table/transforms/treeMode.d.ts +30 -0
  245. package/es/table/transforms/treeMode.js +252 -0
  246. package/es/table/transforms/visible.d.ts +5 -0
  247. package/es/table/transforms/visible.js +19 -0
  248. package/es/table/transforms/warnTransformsDeprecated.d.ts +1 -0
  249. package/es/table/transforms/warnTransformsDeprecated.js +8 -0
  250. package/es/table/use/useResizeObserver.d.ts +2 -0
  251. package/es/table/use/useResizeObserver.js +20 -0
  252. package/es/table/utils/applyTransforms.d.ts +6 -0
  253. package/es/table/utils/applyTransforms.js +15 -0
  254. package/es/table/utils/buildTree.d.ts +36 -0
  255. package/es/table/utils/buildTree.js +119 -0
  256. package/es/table/utils/collectNodes.d.ts +8 -0
  257. package/es/table/utils/collectNodes.js +59 -0
  258. package/es/table/utils/console.d.ts +11 -0
  259. package/es/table/utils/console.js +58 -0
  260. package/es/table/utils/copyToClipboard.d.ts +3 -0
  261. package/es/table/utils/copyToClipboard.js +30 -0
  262. package/es/table/utils/element.d.ts +42 -0
  263. package/es/table/utils/element.js +228 -0
  264. package/es/table/utils/exportTableAsExcel.d.ts +4 -0
  265. package/es/table/utils/exportTableAsExcel.js +188 -0
  266. package/es/table/utils/getTreeDepth.d.ts +3 -0
  267. package/es/table/utils/getTreeDepth.js +41 -0
  268. package/es/table/utils/groupBy.d.ts +1 -0
  269. package/es/table/utils/groupBy.js +37 -0
  270. package/es/table/utils/index.d.ts +18 -0
  271. package/es/table/utils/index.js +18 -0
  272. package/es/table/utils/isGroupColumn.d.ts +2 -0
  273. package/es/table/utils/isGroupColumn.js +7 -0
  274. package/es/table/utils/isLeafNode.d.ts +2 -0
  275. package/es/table/utils/isLeafNode.js +4 -0
  276. package/es/table/utils/layeredFilter.d.ts +2 -0
  277. package/es/table/utils/layeredFilter.js +25 -0
  278. package/es/table/utils/layeredSort.d.ts +5 -0
  279. package/es/table/utils/layeredSort.js +26 -0
  280. package/es/table/utils/makeRecursiveMapper.d.ts +9 -0
  281. package/es/table/utils/makeRecursiveMapper.js +76 -0
  282. package/es/table/utils/mergeCellProps.d.ts +8 -0
  283. package/es/table/utils/mergeCellProps.js +67 -0
  284. package/es/table/utils/others.d.ts +16 -0
  285. package/es/table/utils/others.js +80 -0
  286. package/es/table/utils/proto.d.ts +21 -0
  287. package/es/table/utils/proto.js +106 -0
  288. package/es/table/utils/smartCompare.d.ts +9 -0
  289. package/es/table/utils/smartCompare.js +51 -0
  290. package/es/table/utils/traverseColumn.d.ts +11 -0
  291. package/es/table/utils/traverseColumn.js +88 -0
  292. package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.d.ts +22 -0
  293. package/es/table/utils/tree-data-helpers/StrictTreeDataHelper.js +138 -0
  294. package/es/table/utils/tree-data-helpers/TreeDataHelper.d.ts +26 -0
  295. package/es/table/utils/tree-data-helpers/TreeDataHelper.js +337 -0
  296. package/lib/_utils/arrayUtil.d.ts +5 -0
  297. package/lib/_utils/arrayUtil.js +26 -0
  298. package/lib/_utils/devwarning.d.ts +1 -0
  299. package/lib/_utils/devwarning.js +21 -0
  300. package/lib/_utils/formatUtil.d.ts +46 -0
  301. package/lib/_utils/formatUtil.js +358 -0
  302. package/lib/_utils/hooks.d.ts +51 -0
  303. package/lib/_utils/hooks.js +187 -0
  304. package/lib/_utils/index.d.ts +8 -0
  305. package/lib/_utils/index.js +28 -0
  306. package/lib/_utils/numberUtil.d.ts +34 -0
  307. package/lib/_utils/numberUtil.js +202 -0
  308. package/lib/_utils/omit.d.ts +1 -0
  309. package/lib/_utils/omit.js +21 -0
  310. package/lib/_utils/react-children.d.ts +2 -0
  311. package/lib/_utils/react-children.js +20 -0
  312. package/lib/_utils/type.d.ts +12 -0
  313. package/lib/_utils/type.js +27 -0
  314. package/lib/_utils/usePopper.d.ts +29 -0
  315. package/lib/_utils/usePopper.js +574 -0
  316. package/lib/config-provider/ConfigContext.d.ts +22 -0
  317. package/lib/config-provider/ConfigContext.js +19 -0
  318. package/lib/config-provider/compDefaultProps.d.ts +8 -0
  319. package/lib/config-provider/compDefaultProps.js +17 -0
  320. package/lib/config-provider/configProvider.d.ts +11 -0
  321. package/lib/config-provider/configProvider.js +56 -0
  322. package/lib/config-provider/defaultConfig.d.ts +10 -0
  323. package/lib/config-provider/defaultConfig.js +30 -0
  324. package/lib/config-provider/index.d.ts +6 -0
  325. package/lib/config-provider/index.js +37 -0
  326. package/lib/index.d.ts +2 -0
  327. package/lib/index.js +45 -0
  328. package/lib/locale/index.d.ts +3 -0
  329. package/lib/locale/index.js +25 -0
  330. package/lib/locale/locale.d.ts +50 -0
  331. package/lib/locale/locale.js +277 -0
  332. package/lib/locale/zh-CN.d.ts +8 -0
  333. package/lib/locale/zh-CN.js +15 -0
  334. package/lib/style/color/colors.less +2 -0
  335. package/lib/style/components.less +1 -0
  336. package/lib/style/core/index.less +2 -0
  337. package/lib/style/core/motion/other.less +28 -0
  338. package/lib/style/core/motion/slide.less +53 -0
  339. package/lib/style/core/motion.less +2 -0
  340. package/lib/style/core/reset.less +186 -0
  341. package/lib/style/css.js +3 -0
  342. package/lib/style/index.css +410 -0
  343. package/lib/style/index.d.ts +1 -0
  344. package/lib/style/index.js +3 -0
  345. package/lib/style/index.less +2 -0
  346. package/lib/style/mixins/index.less +19 -0
  347. package/lib/style/mixins/overlay.less +22 -0
  348. package/lib/style/mixins/reset.less +13 -0
  349. package/lib/style/themes/default.less +445 -0
  350. package/lib/style/themes/index.less +1 -0
  351. package/lib/table/base/calculations.d.ts +5 -0
  352. package/lib/table/base/calculations.js +385 -0
  353. package/lib/table/base/colgroup.d.ts +5 -0
  354. package/lib/table/base/colgroup.js +33 -0
  355. package/lib/table/base/empty.d.ts +9 -0
  356. package/lib/table/base/empty.js +54 -0
  357. package/lib/table/base/header.d.ts +5 -0
  358. package/lib/table/base/header.js +340 -0
  359. package/lib/table/base/helpers/SpanManager.d.ts +9 -0
  360. package/lib/table/base/helpers/SpanManager.js +59 -0
  361. package/lib/table/base/helpers/TableDOMUtils.d.ts +18 -0
  362. package/lib/table/base/helpers/TableDOMUtils.js +113 -0
  363. package/lib/table/base/helpers/__test__/SpanManager.test.d.ts +1 -0
  364. package/lib/table/base/helpers/__test__/SpanManager.test.js +23 -0
  365. package/lib/table/base/helpers/__test__/TableDOMUtils.test.d.ts +1 -0
  366. package/lib/table/base/helpers/__test__/TableDOMUtils.test.js +41 -0
  367. package/lib/table/base/helpers/__test__/rowHeightManager.test.d.ts +1 -0
  368. package/lib/table/base/helpers/__test__/rowHeightManager.test.js +33 -0
  369. package/lib/table/base/helpers/__test__/visible-part.test.d.ts +1 -0
  370. package/lib/table/base/helpers/__test__/visible-part.test.js +31 -0
  371. package/lib/table/base/helpers/rowHeightManager.d.ts +7 -0
  372. package/lib/table/base/helpers/rowHeightManager.js +170 -0
  373. package/lib/table/base/helpers/visible-part.d.ts +23 -0
  374. package/lib/table/base/helpers/visible-part.js +72 -0
  375. package/lib/table/base/html-table.d.ts +15 -0
  376. package/lib/table/base/html-table.js +149 -0
  377. package/lib/table/base/index.d.ts +3 -0
  378. package/lib/table/base/index.js +21 -0
  379. package/lib/table/base/interfaces.d.ts +54 -0
  380. package/lib/table/base/interfaces.js +0 -0
  381. package/lib/table/base/loading.d.ts +13 -0
  382. package/lib/table/base/loading.js +71 -0
  383. package/lib/table/base/styles.d.ts +132 -0
  384. package/lib/table/base/styles.js +136 -0
  385. package/lib/table/base/table.d.ts +150 -0
  386. package/lib/table/base/table.js +773 -0
  387. package/lib/table/base/utils.d.ts +36 -0
  388. package/lib/table/base/utils.js +234 -0
  389. package/lib/table/common-views.d.ts +24 -0
  390. package/lib/table/common-views.js +90 -0
  391. package/lib/table/index.d.ts +6 -0
  392. package/lib/table/index.js +85 -0
  393. package/lib/table/interfaces.d.ts +98 -0
  394. package/lib/table/interfaces.js +0 -0
  395. package/lib/table/internals.d.ts +14 -0
  396. package/lib/table/internals.js +64 -0
  397. package/lib/table/pipeline/features/__test__/multiSelect.test.d.ts +1 -0
  398. package/lib/table/pipeline/features/__test__/multiSelect.test.js +163 -0
  399. package/lib/table/pipeline/features/__test__/rowDetail.test.d.ts +1 -0
  400. package/lib/table/pipeline/features/__test__/rowDetail.test.js +230 -0
  401. package/lib/table/pipeline/features/__test__/rowGrouping.test.d.ts +1 -0
  402. package/lib/table/pipeline/features/__test__/rowGrouping.test.js +129 -0
  403. package/lib/table/pipeline/features/__test__/singleSelect.test.d.ts +1 -0
  404. package/lib/table/pipeline/features/__test__/singleSelect.test.js +201 -0
  405. package/lib/table/pipeline/features/__test__/sort.test.d.ts +1 -0
  406. package/lib/table/pipeline/features/__test__/sort.test.js +218 -0
  407. package/lib/table/pipeline/features/__test__/tips.test.d.ts +1 -0
  408. package/lib/table/pipeline/features/__test__/tips.test.js +133 -0
  409. package/lib/table/pipeline/features/__test__/treeMode.test.d.ts +1 -0
  410. package/lib/table/pipeline/features/__test__/treeMode.test.js +206 -0
  411. package/lib/table/pipeline/features/autoFill.d.ts +4 -0
  412. package/lib/table/pipeline/features/autoFill.js +80 -0
  413. package/lib/table/pipeline/features/autoRowSpan.d.ts +2 -0
  414. package/lib/table/pipeline/features/autoRowSpan.js +84 -0
  415. package/lib/table/pipeline/features/buildTree.d.ts +2 -0
  416. package/lib/table/pipeline/features/buildTree.js +16 -0
  417. package/lib/table/pipeline/features/columnDrag.d.ts +6 -0
  418. package/lib/table/pipeline/features/columnDrag.js +278 -0
  419. package/lib/table/pipeline/features/columnFilter.d.ts +20 -0
  420. package/lib/table/pipeline/features/columnFilter.js +197 -0
  421. package/lib/table/pipeline/features/columnHover.d.ts +12 -0
  422. package/lib/table/pipeline/features/columnHover.js +62 -0
  423. package/lib/table/pipeline/features/columnRangeHover.d.ts +15 -0
  424. package/lib/table/pipeline/features/columnRangeHover.js +95 -0
  425. package/lib/table/pipeline/features/columnResizeWidth.d.ts +21 -0
  426. package/lib/table/pipeline/features/columnResizeWidth.js +192 -0
  427. package/lib/table/pipeline/features/contextMenu.d.ts +14 -0
  428. package/lib/table/pipeline/features/contextMenu.js +397 -0
  429. package/lib/table/pipeline/features/filter/DefaultFilterContent.d.ts +4 -0
  430. package/lib/table/pipeline/features/filter/DefaultFilterContent.js +112 -0
  431. package/lib/table/pipeline/features/filter/Filter.d.ts +17 -0
  432. package/lib/table/pipeline/features/filter/Filter.js +129 -0
  433. package/lib/table/pipeline/features/filter/FilterPanel.d.ts +20 -0
  434. package/lib/table/pipeline/features/filter/FilterPanel.js +98 -0
  435. package/lib/table/pipeline/features/filter/__test__/Filter.test.d.ts +1 -0
  436. package/lib/table/pipeline/features/filter/__test__/Filter.test.js +36 -0
  437. package/lib/table/pipeline/features/filter/index.d.ts +4 -0
  438. package/lib/table/pipeline/features/filter/index.js +39 -0
  439. package/lib/table/pipeline/features/filter/util.d.ts +10 -0
  440. package/lib/table/pipeline/features/filter/util.js +77 -0
  441. package/lib/table/pipeline/features/index.d.ts +16 -0
  442. package/lib/table/pipeline/features/index.js +141 -0
  443. package/lib/table/pipeline/features/multiSelect.d.ts +27 -0
  444. package/lib/table/pipeline/features/multiSelect.js +227 -0
  445. package/lib/table/pipeline/features/rowDetail.d.ts +35 -0
  446. package/lib/table/pipeline/features/rowDetail.js +283 -0
  447. package/lib/table/pipeline/features/rowGrouping.d.ts +14 -0
  448. package/lib/table/pipeline/features/rowGrouping.js +227 -0
  449. package/lib/table/pipeline/features/singleSelect.d.ts +23 -0
  450. package/lib/table/pipeline/features/singleSelect.js +138 -0
  451. package/lib/table/pipeline/features/sort.d.ts +40 -0
  452. package/lib/table/pipeline/features/sort.js +361 -0
  453. package/lib/table/pipeline/features/tips.d.ts +2 -0
  454. package/lib/table/pipeline/features/tips.js +73 -0
  455. package/lib/table/pipeline/features/treeMode.d.ts +37 -0
  456. package/lib/table/pipeline/features/treeMode.js +266 -0
  457. package/lib/table/pipeline/features/treeSelect.d.ts +38 -0
  458. package/lib/table/pipeline/features/treeSelect.js +169 -0
  459. package/lib/table/pipeline/index.d.ts +3 -0
  460. package/lib/table/pipeline/index.js +26 -0
  461. package/lib/table/pipeline/pipeline.d.ts +85 -0
  462. package/lib/table/pipeline/pipeline.js +291 -0
  463. package/lib/table/pivot/cross-table/buildCrossTable.d.ts +14 -0
  464. package/lib/table/pivot/cross-table/buildCrossTable.js +313 -0
  465. package/lib/table/pivot/cross-table/constants.d.ts +1 -0
  466. package/lib/table/pivot/cross-table/constants.js +8 -0
  467. package/lib/table/pivot/cross-table/cross-table.d.ts +18 -0
  468. package/lib/table/pivot/cross-table/cross-table.js +71 -0
  469. package/lib/table/pivot/cross-table/index.d.ts +4 -0
  470. package/lib/table/pivot/cross-table/index.js +31 -0
  471. package/lib/table/pivot/cross-table/interfaces.d.ts +29 -0
  472. package/lib/table/pivot/cross-table/interfaces.js +0 -0
  473. package/lib/table/pivot/cross-table/internals.d.ts +13 -0
  474. package/lib/table/pivot/cross-table/internals.js +0 -0
  475. package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.d.ts +14 -0
  476. package/lib/table/pivot/cross-tree-table/buildCrossTreeTable.js +240 -0
  477. package/lib/table/pivot/cross-tree-table/cross-tree-table.d.ts +38 -0
  478. package/lib/table/pivot/cross-tree-table/cross-tree-table.js +144 -0
  479. package/lib/table/pivot/cross-tree-table/index.d.ts +2 -0
  480. package/lib/table/pivot/cross-tree-table/index.js +23 -0
  481. package/lib/table/pivot/pivot-utils/buildDrillTree.d.ts +16 -0
  482. package/lib/table/pivot/pivot-utils/buildDrillTree.js +106 -0
  483. package/lib/table/pivot/pivot-utils/builders.d.ts +26 -0
  484. package/lib/table/pivot/pivot-utils/builders.js +272 -0
  485. package/lib/table/pivot/pivot-utils/convert-utils.d.ts +31 -0
  486. package/lib/table/pivot/pivot-utils/convert-utils.js +204 -0
  487. package/lib/table/pivot/pivot-utils/index.d.ts +5 -0
  488. package/lib/table/pivot/pivot-utils/index.js +59 -0
  489. package/lib/table/pivot/pivot-utils/interfaces.d.ts +12 -0
  490. package/lib/table/pivot/pivot-utils/interfaces.js +0 -0
  491. package/lib/table/pivot/pivot-utils/simpleEncode.d.ts +1 -0
  492. package/lib/table/pivot/pivot-utils/simpleEncode.js +14 -0
  493. package/lib/table/style/css.js +5 -0
  494. package/lib/table/style/index.css +0 -0
  495. package/lib/table/style/index.d.ts +2 -0
  496. package/lib/table/style/index.js +5 -0
  497. package/lib/table/style/index.less +1 -0
  498. package/lib/table/transforms/autoRowSpan.d.ts +3 -0
  499. package/lib/table/transforms/autoRowSpan.js +86 -0
  500. package/lib/table/transforms/autoWidth.d.ts +25 -0
  501. package/lib/table/transforms/autoWidth.js +187 -0
  502. package/lib/table/transforms/buildTree.d.ts +3 -0
  503. package/lib/table/transforms/buildTree.js +23 -0
  504. package/lib/table/transforms/columnHover.d.ts +17 -0
  505. package/lib/table/transforms/columnHover.js +74 -0
  506. package/lib/table/transforms/columnRangeHover.d.ts +17 -0
  507. package/lib/table/transforms/columnRangeHover.js +110 -0
  508. package/lib/table/transforms/columnResize.d.ts +27 -0
  509. package/lib/table/transforms/columnResize.js +176 -0
  510. package/lib/table/transforms/flatten.d.ts +3 -0
  511. package/lib/table/transforms/flatten.js +24 -0
  512. package/lib/table/transforms/index.d.ts +12 -0
  513. package/lib/table/transforms/index.js +131 -0
  514. package/lib/table/transforms/orderField.d.ts +3 -0
  515. package/lib/table/transforms/orderField.js +33 -0
  516. package/lib/table/transforms/sort.d.ts +43 -0
  517. package/lib/table/transforms/sort.js +369 -0
  518. package/lib/table/transforms/tips.d.ts +8 -0
  519. package/lib/table/transforms/tips.js +71 -0
  520. package/lib/table/transforms/treeMode.d.ts +30 -0
  521. package/lib/table/transforms/treeMode.js +286 -0
  522. package/lib/table/transforms/visible.d.ts +5 -0
  523. package/lib/table/transforms/visible.js +31 -0
  524. package/lib/table/transforms/warnTransformsDeprecated.d.ts +1 -0
  525. package/lib/table/transforms/warnTransformsDeprecated.js +19 -0
  526. package/lib/table/use/useResizeObserver.d.ts +2 -0
  527. package/lib/table/use/useResizeObserver.js +32 -0
  528. package/lib/table/utils/applyTransforms.d.ts +6 -0
  529. package/lib/table/utils/applyTransforms.js +24 -0
  530. package/lib/table/utils/buildTree.d.ts +36 -0
  531. package/lib/table/utils/buildTree.js +140 -0
  532. package/lib/table/utils/collectNodes.d.ts +8 -0
  533. package/lib/table/utils/collectNodes.js +72 -0
  534. package/lib/table/utils/console.d.ts +11 -0
  535. package/lib/table/utils/console.js +68 -0
  536. package/lib/table/utils/copyToClipboard.d.ts +3 -0
  537. package/lib/table/utils/copyToClipboard.js +40 -0
  538. package/lib/table/utils/element.d.ts +42 -0
  539. package/lib/table/utils/element.js +243 -0
  540. package/lib/table/utils/exportTableAsExcel.d.ts +4 -0
  541. package/lib/table/utils/exportTableAsExcel.js +205 -0
  542. package/lib/table/utils/getTreeDepth.d.ts +3 -0
  543. package/lib/table/utils/getTreeDepth.js +54 -0
  544. package/lib/table/utils/groupBy.d.ts +1 -0
  545. package/lib/table/utils/groupBy.js +48 -0
  546. package/lib/table/utils/index.d.ts +18 -0
  547. package/lib/table/utils/index.js +187 -0
  548. package/lib/table/utils/isGroupColumn.d.ts +2 -0
  549. package/lib/table/utils/isGroupColumn.js +17 -0
  550. package/lib/table/utils/isLeafNode.d.ts +2 -0
  551. package/lib/table/utils/isLeafNode.js +11 -0
  552. package/lib/table/utils/layeredFilter.d.ts +2 -0
  553. package/lib/table/utils/layeredFilter.js +38 -0
  554. package/lib/table/utils/layeredSort.d.ts +5 -0
  555. package/lib/table/utils/layeredSort.js +37 -0
  556. package/lib/table/utils/makeRecursiveMapper.d.ts +9 -0
  557. package/lib/table/utils/makeRecursiveMapper.js +94 -0
  558. package/lib/table/utils/mergeCellProps.d.ts +8 -0
  559. package/lib/table/utils/mergeCellProps.js +78 -0
  560. package/lib/table/utils/others.d.ts +16 -0
  561. package/lib/table/utils/others.js +108 -0
  562. package/lib/table/utils/proto.d.ts +21 -0
  563. package/lib/table/utils/proto.js +117 -0
  564. package/lib/table/utils/smartCompare.d.ts +9 -0
  565. package/lib/table/utils/smartCompare.js +58 -0
  566. package/lib/table/utils/traverseColumn.d.ts +11 -0
  567. package/lib/table/utils/traverseColumn.js +103 -0
  568. package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.d.ts +22 -0
  569. package/lib/table/utils/tree-data-helpers/StrictTreeDataHelper.js +154 -0
  570. package/lib/table/utils/tree-data-helpers/TreeDataHelper.d.ts +26 -0
  571. package/lib/table/utils/tree-data-helpers/TreeDataHelper.js +358 -0
  572. package/package.json +213 -0
@@ -0,0 +1,36 @@
1
+ import { Subscription } from 'rxjs';
2
+ import ResizeObserver from 'resize-observer-polyfill';
3
+ /** styled-components 类库的版本,ali-react-table 同时支持 v3 和 v5 */
4
+ export declare const STYLED_VERSION: string;
5
+ export declare const STYLED_REF_PROP: string;
6
+ export declare const OVERSCAN_SIZE = 100;
7
+ export declare const AUTO_VIRTUAL_THRESHOLD = 100;
8
+ export declare function sum(arr: number[]): number;
9
+ export declare const throttledWindowResize$: import("rxjs").Observable<Event>;
10
+ interface ContentRectType {
11
+ hide: boolean;
12
+ bottom: number;
13
+ height: number;
14
+ left: number;
15
+ right: number;
16
+ top: number;
17
+ width: number;
18
+ x: number;
19
+ y: number;
20
+ }
21
+ export declare const addResizeObserver: (element: HTMLElement | null, handler?: (react: ContentRectType) => void) => ResizeObserver;
22
+ export declare function getScrollbarSize(): {
23
+ width: number;
24
+ height: number;
25
+ };
26
+ /** 同步多个元素之间的 scrollLeft, 每当 scrollLeft 发生变化时 callback 会被调用 */
27
+ export declare function syncScrollLeft(elements: HTMLElement[], callback: (scrollLeft: number) => void): Subscription;
28
+ /**
29
+ * Performs equality by iterating through keys on an object and returning false
30
+ * when any key has values which are not strictly equal between the arguments.
31
+ * Returns true when the values of all keys are strictly equal.
32
+ *
33
+ * 这个函数是从 facebook 某个官方库中复制过来的
34
+ */
35
+ export declare function shallowEqual(objA: any, objB: any): boolean;
36
+ export {};
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+
3
+ var _mapInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/map");
4
+
5
+ var _sliceInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/slice");
6
+
7
+ var _Array$from = require("@babel/runtime-corejs3/core-js-stable/array/from");
8
+
9
+ var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
10
+
11
+ var _getIteratorMethod = require("@babel/runtime-corejs3/core-js/get-iterator-method");
12
+
13
+ var _getIterator = require("@babel/runtime-corejs3/core-js/get-iterator");
14
+
15
+ var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard");
16
+
17
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
18
+
19
+ Object.defineProperty(exports, "__esModule", {
20
+ value: true
21
+ });
22
+ exports.sum = sum;
23
+ exports.getScrollbarSize = getScrollbarSize;
24
+ exports.syncScrollLeft = syncScrollLeft;
25
+ exports.shallowEqual = shallowEqual;
26
+ exports.addResizeObserver = exports.throttledWindowResize$ = exports.AUTO_VIRTUAL_THRESHOLD = exports.OVERSCAN_SIZE = exports.STYLED_REF_PROP = exports.STYLED_VERSION = void 0;
27
+
28
+ var _set = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/set"));
29
+
30
+ var _is = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/is"));
31
+
32
+ var _keys = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/keys"));
33
+
34
+ var _typeof2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/typeof"));
35
+
36
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
37
+
38
+ var _rxjs = require("rxjs");
39
+
40
+ var _operators = require("rxjs/operators");
41
+
42
+ var _resizeObserverPolyfill = _interopRequireDefault(require("resize-observer-polyfill"));
43
+
44
+ var styledComponents = _interopRequireWildcard(require("styled-components"));
45
+
46
+ function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof _Symbol === "undefined" || _getIteratorMethod(o) == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = _getIterator(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
47
+
48
+ function _unsupportedIterableToArray(o, minLen) { var _context; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context = Object.prototype.toString.call(o)).call(_context, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
49
+
50
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
51
+
52
+ /** styled-components 类库的版本,ali-react-table 同时支持 v3 和 v5 */
53
+ var STYLED_VERSION = styledComponents.createGlobalStyle != null ? 'v5' : 'v3';
54
+ exports.STYLED_VERSION = STYLED_VERSION;
55
+ var STYLED_REF_PROP = STYLED_VERSION === 'v3' ? 'innerRef' : 'ref';
56
+ exports.STYLED_REF_PROP = STYLED_REF_PROP;
57
+ var OVERSCAN_SIZE = 100;
58
+ exports.OVERSCAN_SIZE = OVERSCAN_SIZE;
59
+ var AUTO_VIRTUAL_THRESHOLD = 100;
60
+ exports.AUTO_VIRTUAL_THRESHOLD = AUTO_VIRTUAL_THRESHOLD;
61
+
62
+ function sum(arr) {
63
+ var result = 0;
64
+ arr.forEach(function (x) {
65
+ result += x;
66
+ });
67
+ return result;
68
+ } // 使用 defer 避免过早引用 window,导致在 SSR 场景下报错
69
+
70
+
71
+ var throttledWindowResize$ = (0, _rxjs.defer)(function () {
72
+ return (0, _rxjs.fromEvent)(window, 'resize').pipe((0, _operators.throttleTime)(150, _rxjs.asyncScheduler, {
73
+ leading: true,
74
+ trailing: true
75
+ }));
76
+ });
77
+ exports.throttledWindowResize$ = throttledWindowResize$;
78
+
79
+ var addResizeObserver = function addResizeObserver(element, handler) {
80
+ var measure = function measure(entries) {
81
+ if (!entries[0] || !entries[0].contentRect) {
82
+ return;
83
+ }
84
+
85
+ var contentRect = entries[0].contentRect;
86
+ var hide = contentRect.width === 0 && contentRect.height === 0; // 隐藏条件:高宽都为0
87
+
88
+ var rect = (0, _extends2.default)({
89
+ hide: hide
90
+ }, contentRect);
91
+ handler && handler(rect);
92
+ };
93
+
94
+ var resizeObserver = new _resizeObserverPolyfill.default(measure);
95
+ resizeObserver && resizeObserver.observe(element);
96
+ return resizeObserver;
97
+ };
98
+ /** 获取默认的滚动条大小 */
99
+
100
+
101
+ exports.addResizeObserver = addResizeObserver;
102
+
103
+ function getScrollbarSizeImpl() {
104
+ var scrollDiv = document.createElement('div');
105
+ scrollDiv.style.position = 'absolute';
106
+ scrollDiv.style.width = '100px';
107
+ scrollDiv.style.height = '100px';
108
+ scrollDiv.style.overflow = 'scroll';
109
+ scrollDiv.style.top = '-9999px';
110
+ document.body.appendChild(scrollDiv);
111
+ var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;
112
+ var scrollbarHeight = scrollDiv.offsetHeight - scrollDiv.clientHeight;
113
+ document.body.removeChild(scrollDiv);
114
+ return {
115
+ width: scrollbarWidth,
116
+ height: scrollbarHeight
117
+ };
118
+ }
119
+
120
+ var scrollBarSize$;
121
+
122
+ function getScrollbarSize() {
123
+ if (scrollBarSize$ == null) {
124
+ scrollBarSize$ = new _rxjs.BehaviorSubject(getScrollbarSizeImpl());
125
+ throttledWindowResize$.pipe((0, _mapInstanceProperty(_operators))(function () {
126
+ return getScrollbarSizeImpl();
127
+ })).subscribe(scrollBarSize$);
128
+ }
129
+
130
+ return scrollBarSize$.value;
131
+ }
132
+ /** 同步多个元素之间的 scrollLeft, 每当 scrollLeft 发生变化时 callback 会被调用 */
133
+
134
+
135
+ function syncScrollLeft(elements, callback) {
136
+ var bypassSet = new _set.default();
137
+
138
+ function publishScrollLeft(origin, scrollLeft) {
139
+ bypassSet.clear();
140
+
141
+ var _iterator = _createForOfIteratorHelper(elements),
142
+ _step;
143
+
144
+ try {
145
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
146
+ var elem = _step.value;
147
+
148
+ if (elem === origin) {
149
+ continue;
150
+ }
151
+
152
+ elem.scrollLeft = scrollLeft;
153
+ bypassSet.add(elem);
154
+ }
155
+ } catch (err) {
156
+ _iterator.e(err);
157
+ } finally {
158
+ _iterator.f();
159
+ }
160
+ }
161
+
162
+ var subscription = new _rxjs.Subscription();
163
+
164
+ var _iterator2 = _createForOfIteratorHelper(elements),
165
+ _step2;
166
+
167
+ try {
168
+ var _loop = function _loop() {
169
+ var ele = _step2.value;
170
+
171
+ var listener = function listener() {
172
+ if (bypassSet.has(ele)) {
173
+ bypassSet.delete(ele);
174
+ return;
175
+ }
176
+
177
+ var scrollLeft = ele.scrollLeft;
178
+ publishScrollLeft(ele, scrollLeft);
179
+ callback(scrollLeft);
180
+ };
181
+
182
+ ele.addEventListener('scroll', listener, {
183
+ passive: true
184
+ });
185
+ subscription.add(function () {
186
+ return ele.removeEventListener('scroll', listener);
187
+ });
188
+ };
189
+
190
+ for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
191
+ _loop();
192
+ }
193
+ } catch (err) {
194
+ _iterator2.e(err);
195
+ } finally {
196
+ _iterator2.f();
197
+ }
198
+
199
+ return subscription;
200
+ }
201
+ /**
202
+ * Performs equality by iterating through keys on an object and returning false
203
+ * when any key has values which are not strictly equal between the arguments.
204
+ * Returns true when the values of all keys are strictly equal.
205
+ *
206
+ * 这个函数是从 facebook 某个官方库中复制过来的
207
+ */
208
+
209
+
210
+ function shallowEqual(objA, objB) {
211
+ if ((0, _is.default)(objA, objB)) {
212
+ return true;
213
+ }
214
+
215
+ if ((0, _typeof2.default)(objA) !== 'object' || objA === null || (0, _typeof2.default)(objB) !== 'object' || objB === null) {
216
+ return false;
217
+ }
218
+
219
+ var keysA = (0, _keys.default)(objA);
220
+ var keysB = (0, _keys.default)(objB);
221
+
222
+ if (keysA.length !== keysB.length) {
223
+ return false;
224
+ } // Test for A's keys different from B.
225
+
226
+
227
+ for (var i = 0; i < keysA.length; i++) {
228
+ if (!Object.prototype.hasOwnProperty.call(objB, keysA[i]) || !(0, _is.default)(objA[keysA[i]], objB[keysA[i]])) {
229
+ return false;
230
+ }
231
+ }
232
+
233
+ return true;
234
+ }
@@ -0,0 +1,24 @@
1
+ import React from 'react';
2
+ export declare const InlineFlexCell: any;
3
+ export declare const ExpansionCell: any;
4
+ interface IconProps extends React.SVGProps<SVGElement> {
5
+ height?: number;
6
+ preserveAspectRatio?: string;
7
+ title?: string;
8
+ viewBox?: string;
9
+ width?: number;
10
+ xmlns?: string;
11
+ ref?: any;
12
+ }
13
+ declare function CaretDownIcon(props: IconProps): JSX.Element;
14
+ declare function InfoIcon(props: IconProps): JSX.Element;
15
+ declare function CaretRightIcon(props: IconProps): JSX.Element;
16
+ declare function LoadingIcon(props: IconProps): JSX.Element;
17
+ export declare const icons: {
18
+ Loading: typeof LoadingIcon;
19
+ CaretDown: typeof CaretDownIcon;
20
+ CaretRight: typeof CaretRightIcon;
21
+ Info: typeof InfoIcon;
22
+ };
23
+ export declare const ContextMenuStyleWrap: any;
24
+ export {};
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.ContextMenuStyleWrap = exports.icons = exports.ExpansionCell = exports.InlineFlexCell = void 0;
9
+
10
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
11
+
12
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/taggedTemplateLiteral"));
13
+
14
+ var _react = _interopRequireDefault(require("react"));
15
+
16
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
17
+
18
+ var _styles = require("./base/styles");
19
+
20
+ var _templateObject, _templateObject2, _templateObject3;
21
+
22
+ var InlineFlexCell = _styledComponents.default.div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2.default)(["\n display: inline-flex;\n align-items: center;\n"])));
23
+
24
+ exports.InlineFlexCell = InlineFlexCell;
25
+ var ExpansionCell = (0, _styledComponents.default)(InlineFlexCell)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2.default)(["\n &.leaf {\n cursor: default;\n }\n\n .expansion-icon {\n fill: #999;\n flex: 0 0 16px;\n transition: transform 200ms;\n\n &.expanded {\n transform-origin: center center;\n transform: rotate(90deg);\n }\n }\n"])));
26
+ exports.ExpansionCell = ExpansionCell;
27
+
28
+ function CaretDownIcon(props) {
29
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
30
+ focusable: "false",
31
+ preserveAspectRatio: "xMidYMid meet",
32
+ fill: "currentColor",
33
+ width: "16",
34
+ height: "16",
35
+ viewBox: "0 0 32 32"
36
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
37
+ d: "M24 12L16 22 8 12z"
38
+ }));
39
+ }
40
+
41
+ function InfoIcon(props) {
42
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
43
+ focusable: "false",
44
+ preserveAspectRatio: "xMidYMid meet",
45
+ fill: "currentColor",
46
+ width: "16",
47
+ height: "16",
48
+ viewBox: "0 0 16 16"
49
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
50
+ d: "M8.5 11L8.5 6.5 6.5 6.5 6.5 7.5 7.5 7.5 7.5 11 6 11 6 12 10 12 10 11zM8 3.5c-.4 0-.8.3-.8.8S7.6 5 8 5c.4 0 .8-.3.8-.8S8.4 3.5 8 3.5z"
51
+ }), /*#__PURE__*/_react.default.createElement("path", {
52
+ d: "M8,15c-3.9,0-7-3.1-7-7s3.1-7,7-7s7,3.1,7,7S11.9,15,8,15z M8,2C4.7,2,2,4.7,2,8s2.7,6,6,6s6-2.7,6-6S11.3,2,8,2z"
53
+ }));
54
+ }
55
+
56
+ function CaretRightIcon(props) {
57
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
58
+ focusable: "false",
59
+ preserveAspectRatio: "xMidYMid meet",
60
+ fill: "currentColor",
61
+ width: "16",
62
+ height: "16",
63
+ viewBox: "0 0 32 32"
64
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
65
+ d: "M12 8L22 16 12 24z"
66
+ }));
67
+ }
68
+
69
+ function LoadingIcon(props) {
70
+ return /*#__PURE__*/_react.default.createElement("svg", (0, _extends2.default)({
71
+ width: "16",
72
+ height: "16",
73
+ fill: "currentColor",
74
+ viewBox: "0 0 1024 1024"
75
+ }, props), /*#__PURE__*/_react.default.createElement("path", {
76
+ d: "M512 74.667c-17.067 0-32 14.933-32 32V256c0 17.067 14.933 32 32 32s32-14.933 32-32V106.667c0-17.067-14.933-32-32-32zm181.333 288c8.534 0 17.067-2.134 23.467-8.534L821.333 249.6c12.8-12.8 12.8-32 0-44.8-12.8-12.8-32-12.8-44.8 0L672 309.333c-12.8 12.8-12.8 32 0 44.8 4.267 6.4 12.8 8.534 21.333 8.534zm224 117.333H768c-17.067 0-32 14.933-32 32s14.933 32 32 32h149.333c17.067 0 32-14.933 32-32s-14.933-32-32-32zM714.667 669.867c-12.8-12.8-32-12.8-44.8 0s-12.8 32 0 44.8L774.4 819.2c6.4 6.4 14.933 8.533 23.467 8.533s17.066-2.133 23.466-8.533c12.8-12.8 12.8-32 0-44.8L714.667 669.867zM512 736c-17.067 0-32 14.933-32 32v149.333c0 17.067 14.933 32 32 32s32-14.933 32-32V768c0-17.067-14.933-32-32-32zm-202.667-66.133L204.8 774.4c-12.8 12.8-12.8 32 0 44.8 6.4 6.4 14.933 8.533 23.467 8.533s17.066-2.133 23.466-8.533l104.534-104.533c12.8-12.8 12.8-32 0-44.8s-36.267-12.8-46.934 0zM288 512c0-17.067-14.933-32-32-32H106.667c-17.067 0-32 14.933-32 32s14.933 32 32 32H256c17.067 0 32-14.933 32-32zm-40.533-309.333c-12.8-12.8-32-12.8-44.8 0-12.8 12.8-12.8 32 0 44.8L307.2 352c6.4 6.4 14.933 8.533 23.467 8.533s17.066-2.133 23.466-8.533c12.8-12.8 12.8-32 0-44.8L247.467 202.667z"
77
+ }));
78
+ }
79
+
80
+ var icons = {
81
+ Loading: LoadingIcon,
82
+ CaretDown: CaretDownIcon,
83
+ CaretRight: CaretRightIcon,
84
+ Info: InfoIcon
85
+ };
86
+ exports.icons = icons;
87
+
88
+ var ContextMenuStyleWrap = _styledComponents.default.div(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteral2.default)(["\n &.", "{\n border: 1px solid #e9ecf1;\n border-radius: 2px;\n background-color: #Fff;\n box-shadow: 0px 0px 5px 0px rgb(154 154 154 / 50%);\n cursor: default;\n font-size: 13px;\n position:absolute;\n z-index: 1050;\n width:120px;\n }\n\n .", "{\n width:100%;\n display: table;\n }\n\n .", " .", "{\n display: table-row;\n }\n\n .", " .", "{\n background-color: #f5f5f5;\n }\n\n .", " .", " .", "{\n display: table-cell;\n padding: 5px 8px;\n color: #666666;\n }\n\n"])), _styles.MenuClasses.menu, _styles.MenuClasses.menuList, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOption, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOptionActive, _styles.MenuClasses.menuList, _styles.MenuClasses.menuOption, _styles.MenuClasses.menuOptionText);
89
+
90
+ exports.ContextMenuStyleWrap = ContextMenuStyleWrap;
@@ -0,0 +1,6 @@
1
+ export * from './base';
2
+ export * from './interfaces';
3
+ export * from './utils';
4
+ export * from './transforms';
5
+ export * from './pipeline';
6
+ export * from './internals';
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+
3
+ var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+
9
+ var _base = require("./base");
10
+
11
+ _Object$keys(_base).forEach(function (key) {
12
+ if (key === "default" || key === "__esModule") return;
13
+ if (key in exports && exports[key] === _base[key]) return;
14
+ Object.defineProperty(exports, key, {
15
+ enumerable: true,
16
+ get: function get() {
17
+ return _base[key];
18
+ }
19
+ });
20
+ });
21
+
22
+ var _interfaces = require("./interfaces");
23
+
24
+ _Object$keys(_interfaces).forEach(function (key) {
25
+ if (key === "default" || key === "__esModule") return;
26
+ if (key in exports && exports[key] === _interfaces[key]) return;
27
+ Object.defineProperty(exports, key, {
28
+ enumerable: true,
29
+ get: function get() {
30
+ return _interfaces[key];
31
+ }
32
+ });
33
+ });
34
+
35
+ var _utils = require("./utils");
36
+
37
+ _Object$keys(_utils).forEach(function (key) {
38
+ if (key === "default" || key === "__esModule") return;
39
+ if (key in exports && exports[key] === _utils[key]) return;
40
+ Object.defineProperty(exports, key, {
41
+ enumerable: true,
42
+ get: function get() {
43
+ return _utils[key];
44
+ }
45
+ });
46
+ });
47
+
48
+ var _transforms = require("./transforms");
49
+
50
+ _Object$keys(_transforms).forEach(function (key) {
51
+ if (key === "default" || key === "__esModule") return;
52
+ if (key in exports && exports[key] === _transforms[key]) return;
53
+ Object.defineProperty(exports, key, {
54
+ enumerable: true,
55
+ get: function get() {
56
+ return _transforms[key];
57
+ }
58
+ });
59
+ });
60
+
61
+ var _pipeline = require("./pipeline");
62
+
63
+ _Object$keys(_pipeline).forEach(function (key) {
64
+ if (key === "default" || key === "__esModule") return;
65
+ if (key in exports && exports[key] === _pipeline[key]) return;
66
+ Object.defineProperty(exports, key, {
67
+ enumerable: true,
68
+ get: function get() {
69
+ return _pipeline[key];
70
+ }
71
+ });
72
+ });
73
+
74
+ var _internals = require("./internals");
75
+
76
+ _Object$keys(_internals).forEach(function (key) {
77
+ if (key === "default" || key === "__esModule") return;
78
+ if (key in exports && exports[key] === _internals[key]) return;
79
+ Object.defineProperty(exports, key, {
80
+ enumerable: true,
81
+ get: function get() {
82
+ return _internals[key];
83
+ }
84
+ });
85
+ });
@@ -0,0 +1,98 @@
1
+ import React, { ReactNode } from 'react';
2
+ export declare type ArtColumnAlign = 'left' | 'center' | 'right';
3
+ export declare type ArtColumnVerticalAlign = 'top' | 'bottom' | 'middle';
4
+ export declare type CellProps = React.TdHTMLAttributes<HTMLTableCellElement>;
5
+ export interface ArtColumnStaticPart {
6
+ /** 列的名称 */
7
+ name: string;
8
+ /** 列的唯一标识 */
9
+ /** 在数据中的字段 code */
10
+ code?: string;
11
+ /** 列标题的展示名称;在页面中进行展示时,该字段将覆盖 name 字段 */
12
+ title?: ReactNode[] | ReactNode;
13
+ /** 列的宽度,如果该列是锁定的,则宽度为必传项 */
14
+ width?: number;
15
+ /** 单元格中的文本或内容的 对其方向 */
16
+ align?: ArtColumnAlign;
17
+ /** 单元格中的文本或内容的 垂直水平轴对其方向 */
18
+ verticalAlign?: ArtColumnVerticalAlign;
19
+ /** @deprecated 是否隐藏 */
20
+ hidden?: boolean;
21
+ /** 是否锁列 */
22
+ lock?: boolean;
23
+ /** 是否允许拖拽 */
24
+ /** 表头单元格的 props */
25
+ headerCellProps?: CellProps;
26
+ /** 功能开关 */
27
+ features?: {
28
+ [key: string]: any;
29
+ };
30
+ }
31
+ export interface Features {
32
+ /** 是否开启排序功能 */
33
+ sortable?: boolean;
34
+ /** 是否开启过滤功能 */
35
+ filterable?: boolean;
36
+ }
37
+ export interface ArtColumnDynamicPart {
38
+ /** 自定义取数方法 */
39
+ getValue?(row: any, rowIndex: number): any;
40
+ /** 自定义渲染方法 */
41
+ render?(value: any, row: any, rowIndex: number): ReactNode;
42
+ /** 自定义的获取单元格 props 的方法 */
43
+ getCellProps?(value: any, row: any, rowIndex: number): CellProps;
44
+ /** 自定义的获取单元格 SpanRect 方法 */
45
+ getSpanRect?(value: any, row: any, rowIndex: number): SpanRect;
46
+ }
47
+ export interface ArtColumn extends ArtColumnStaticPart, ArtColumnDynamicPart {
48
+ /** 该列的子节点 */
49
+ children?: ArtColumn[];
50
+ }
51
+ /** SpanRect 用于描述合并单元格的边界
52
+ * 注意 top/left 为 inclusive,而 bottom/right 为 exclusive */
53
+ export interface SpanRect {
54
+ top: number;
55
+ bottom: number;
56
+ left: number;
57
+ right: number;
58
+ }
59
+ export interface AbstractTreeNode {
60
+ children?: AbstractTreeNode[];
61
+ }
62
+ export declare type SortOrder = 'desc' | 'asc' | 'none';
63
+ export declare type SortItem = {
64
+ code: string;
65
+ order: SortOrder;
66
+ };
67
+ export interface FilterItem {
68
+ filter: any[];
69
+ code?: string;
70
+ filterCondition?: string;
71
+ }
72
+ export declare type Filters = FilterItem[];
73
+ export declare type Transform<T> = (input: T) => T;
74
+ export declare type TableTransform = Transform<{
75
+ columns: ArtColumn[];
76
+ dataSource: any[];
77
+ }>;
78
+ export interface HoverRange {
79
+ start: number;
80
+ end: number;
81
+ }
82
+ export interface ColumnResizeItem {
83
+ width: number;
84
+ index: number;
85
+ }
86
+ export interface FilterPanelProps {
87
+ isFilterActive: boolean;
88
+ hidePanel(): void;
89
+ }
90
+ export interface DefaultFilterPanelProps extends FilterPanelProps {
91
+ setFilterModel(filterItem?: Pick<FilterItem, 'filter' | 'filterCondition'>): void;
92
+ filterModel: FilterItem;
93
+ }
94
+ export interface CustomeFilterPanelProps extends FilterPanelProps {
95
+ setFilter(filter?: any[]): void;
96
+ filterModel: FilterItem;
97
+ }
98
+ export declare type FilterPanel = React.ComponentType<DefaultFilterPanelProps | CustomeFilterPanelProps>;
File without changes
@@ -0,0 +1,14 @@
1
+ import { ArtColumn } from './interfaces';
2
+ declare function safeRenderHeader(column: ArtColumn): {};
3
+ declare function safeGetValue(column: ArtColumn, record: any, rowIndex: number): any;
4
+ declare function safeGetRowKey(primaryKey: string | ((record: any) => string), record: any, rowIndex: number): string;
5
+ declare function safeGetCellProps(column: ArtColumn, record: any, rowIndex: number): import("./interfaces").CellProps;
6
+ declare function safeRender(column: ArtColumn, record: any, rowIndex: number): any;
7
+ export declare const internals: {
8
+ readonly safeRenderHeader: typeof safeRenderHeader;
9
+ readonly safeGetValue: typeof safeGetValue;
10
+ readonly safeGetRowKey: typeof safeGetRowKey;
11
+ readonly safeGetCellProps: typeof safeGetCellProps;
12
+ readonly safeRender: typeof safeRender;
13
+ };
14
+ export {};
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.internals = void 0;
7
+
8
+ function safeRenderHeader(column) {
9
+ var _a;
10
+
11
+ return (_a = column.title) !== null && _a !== void 0 ? _a : column.name;
12
+ }
13
+
14
+ function safeGetValue(column, record, rowIndex) {
15
+ if (column.getValue) {
16
+ return column.getValue(record, rowIndex);
17
+ }
18
+
19
+ return record[column.code];
20
+ }
21
+
22
+ function safeGetRowKey(primaryKey, record, rowIndex) {
23
+ var key;
24
+
25
+ if (typeof primaryKey === 'string') {
26
+ key = record[primaryKey];
27
+ } else if (typeof primaryKey === 'function') {
28
+ key = primaryKey(record);
29
+ }
30
+
31
+ if (key == null) {
32
+ key = String(rowIndex);
33
+ }
34
+
35
+ return key;
36
+ }
37
+
38
+ function safeGetCellProps(column, record, rowIndex) {
39
+ if (column.getCellProps) {
40
+ var value = safeGetValue(column, record, rowIndex);
41
+ return column.getCellProps(value, record, rowIndex) || {};
42
+ }
43
+
44
+ return {};
45
+ }
46
+
47
+ function safeRender(column, record, rowIndex) {
48
+ var value = safeGetValue(column, record, rowIndex);
49
+
50
+ if (column.render) {
51
+ return column.render(value, record, rowIndex);
52
+ }
53
+
54
+ return value;
55
+ }
56
+
57
+ var internals = {
58
+ safeRenderHeader: safeRenderHeader,
59
+ safeGetValue: safeGetValue,
60
+ safeGetRowKey: safeGetRowKey,
61
+ safeGetCellProps: safeGetCellProps,
62
+ safeRender: safeRender
63
+ };
64
+ exports.internals = internals;