@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,180 @@
1
+ import _sliceInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/slice";
2
+ import _Array$from from "@babel/runtime-corejs3/core-js-stable/array/from";
3
+ import _Symbol from "@babel/runtime-corejs3/core-js-stable/symbol";
4
+ import _getIteratorMethod from "@babel/runtime-corejs3/core-js/get-iterator-method";
5
+ import _getIterator from "@babel/runtime-corejs3/core-js/get-iterator";
6
+ import _extends from "@babel/runtime-corejs3/helpers/extends";
7
+ import _taggedTemplateLiteral from "@babel/runtime-corejs3/helpers/taggedTemplateLiteral";
8
+
9
+ var _templateObject;
10
+
11
+ 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; } } }; }
12
+
13
+ function _unsupportedIterableToArray(o, minLen) { var _context3; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context3 = Object.prototype.toString.call(o)).call(_context3, 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); }
14
+
15
+ 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; }
16
+
17
+ import _Set from "@babel/runtime-corejs3/core-js-stable/set";
18
+ import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
19
+ import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
20
+ import _filterInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/filter";
21
+ import React from 'react';
22
+ import { noop } from 'rxjs';
23
+ import styled from 'styled-components';
24
+ import { icons } from '../../common-views';
25
+ import { isLeafNode } from '../../utils';
26
+ import simpleEncode from './simpleEncode';
27
+ var ExpandSpan = styled.span(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: inline-flex;\n align-items: center;\n padding: 2px 8px 2px 0;\n cursor: pointer;\n\n .icon {\n fill: #999;\n margin-right: 4px;\n\n &.expanded {\n transform-origin: center center;\n transform: rotate(90deg);\n }\n }\n"])));
28
+ export function convertDrillTreeToCrossTree(drillTree) {
29
+ var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
30
+ indicators = _ref.indicators,
31
+ _ref$encode = _ref.encode,
32
+ encode = _ref$encode === void 0 ? simpleEncode : _ref$encode,
33
+ generateSubtotalNode = _ref.generateSubtotalNode,
34
+ _ref$enforceExpandTot = _ref.enforceExpandTotalNode,
35
+ enforceExpandTotalNode = _ref$enforceExpandTot === void 0 ? true : _ref$enforceExpandTot,
36
+ expandKeys = _ref.expandKeys,
37
+ _ref$onChangeExpandKe = _ref.onChangeExpandKeys,
38
+ onChangeExpandKeys = _ref$onChangeExpandKe === void 0 ? noop : _ref$onChangeExpandKe,
39
+ supportsExpand = _ref.supportsExpand;
40
+
41
+ var totalKey = encode([]);
42
+
43
+ if (supportsExpand && expandKeys == null) {
44
+ throw new Error('[ali-react-table] convertDrillTreeToCrossTree(...) 设置 supportsExpand=true 时,expandKeys 不能为 null/undefined.');
45
+ }
46
+
47
+ var expandKeySet = new _Set(expandKeys);
48
+ return dfs(drillTree, 0);
49
+ /** 在 indicators 非空的情况下获取指标对应的 CrossTreeNode */
50
+
51
+ function getIndicators(node, nodeData) {
52
+ return _mapInstanceProperty(indicators).call(indicators, function (indicator) {
53
+ var _context;
54
+
55
+ return _extends({
56
+ key: encode(_concatInstanceProperty(_context = node.path).call(_context, [indicator.code])),
57
+ value: indicator.name,
58
+ data: _extends(_extends({}, nodeData), {
59
+ indicator: indicator
60
+ })
61
+ }, indicator);
62
+ });
63
+ }
64
+
65
+ function drillNodeToTreeNode(node, nodeData) {
66
+ if (indicators != null) {
67
+ return {
68
+ key: node.key,
69
+ value: node.value,
70
+ data: nodeData,
71
+ children: getIndicators(node, nodeData)
72
+ };
73
+ } else {
74
+ return {
75
+ key: node.key,
76
+ value: node.value,
77
+ data: nodeData
78
+ };
79
+ }
80
+ }
81
+
82
+ function dfs(drillNodes, depth) {
83
+ var result = [];
84
+
85
+ var _iterator = _createForOfIteratorHelper(drillNodes),
86
+ _step;
87
+
88
+ try {
89
+ var _loop = function _loop() {
90
+ var node = _step.value;
91
+ var nodeData = {
92
+ dataKey: node.key,
93
+ dataPath: node.path
94
+ };
95
+
96
+ if (isLeafNode(node) && !node.hasChild) {
97
+ result.push(drillNodeToTreeNode(node, nodeData));
98
+ } else {
99
+ var needProcessChildren = true;
100
+ var crossTreeNode = {
101
+ key: node.key,
102
+ value: node.value,
103
+ data: nodeData
104
+ };
105
+
106
+ if (!supportsExpand || enforceExpandTotalNode && node.key === totalKey) {
107
+ // 不支持展开功能 或是强制展开
108
+ crossTreeNode.children = dfs(node.children, depth + 1);
109
+ } else if (expandKeySet.has(node.key)) {
110
+ // 展开的父节点
111
+ // @ts-ignore
112
+ crossTreeNode.title = /*#__PURE__*/React.createElement(ExpandSpan, {
113
+ onClick: function onClick() {
114
+ onChangeExpandKeys(_filterInstanceProperty(expandKeys).call(expandKeys, function (k) {
115
+ return k !== node.key;
116
+ }), node, 'collapse');
117
+ }
118
+ }, /*#__PURE__*/React.createElement(icons.CaretRight, {
119
+ className: "icon expanded"
120
+ }), node.value);
121
+ crossTreeNode.children = dfs(node.children, depth + 1);
122
+ } else {
123
+ // 收拢的父节点
124
+ needProcessChildren = false;
125
+ crossTreeNode.title = /*#__PURE__*/React.createElement(ExpandSpan, {
126
+ onClick: function onClick() {
127
+ onChangeExpandKeys(_concatInstanceProperty(expandKeys).call(expandKeys, [node.key]), node, 'expand');
128
+ }
129
+ }, /*#__PURE__*/React.createElement(icons.CaretRight, {
130
+ className: "icon collapsed"
131
+ }), node.value);
132
+
133
+ if (indicators != null) {
134
+ crossTreeNode.children = getIndicators(node, nodeData);
135
+ }
136
+ }
137
+
138
+ if (needProcessChildren) {
139
+ var subtotalNodeData = generateSubtotalNode === null || generateSubtotalNode === void 0 ? void 0 : generateSubtotalNode(node);
140
+
141
+ if (subtotalNodeData) {
142
+ var _context2;
143
+
144
+ var _subtotalNodeData$pos = subtotalNodeData.position,
145
+ position = _subtotalNodeData$pos === void 0 ? 'start' : _subtotalNodeData$pos,
146
+ value = subtotalNodeData.value;
147
+
148
+ var subtotalPath = _concatInstanceProperty(_context2 = node.path).call(_context2, [value]);
149
+
150
+ var subtotalDrillNode = {
151
+ key: encode(subtotalPath),
152
+ path: subtotalPath,
153
+ value: value
154
+ };
155
+ var subtotalTreeNode = drillNodeToTreeNode(subtotalDrillNode, nodeData);
156
+
157
+ if (position === 'start') {
158
+ crossTreeNode.children.unshift(subtotalTreeNode);
159
+ } else {
160
+ crossTreeNode.children.push(subtotalTreeNode);
161
+ }
162
+ }
163
+ }
164
+
165
+ result.push(crossTreeNode);
166
+ }
167
+ };
168
+
169
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
170
+ _loop();
171
+ }
172
+ } catch (err) {
173
+ _iterator.e(err);
174
+ } finally {
175
+ _iterator.f();
176
+ }
177
+
178
+ return result;
179
+ }
180
+ }
@@ -0,0 +1,5 @@
1
+ export { buildRecordMatrix, BuildRecordMatrixConfig, buildRecordMap } from './builders';
2
+ export { default as buildDrillTree, BuildDrillTreeOptions } from './buildDrillTree';
3
+ export { default as simpleEncode } from './simpleEncode';
4
+ export { RecordMatrix, DrillNode } from './interfaces';
5
+ export * from './convert-utils';
@@ -0,0 +1,4 @@
1
+ export { buildRecordMatrix, buildRecordMap } from './builders';
2
+ export { default as buildDrillTree } from './buildDrillTree';
3
+ export { default as simpleEncode } from './simpleEncode';
4
+ export * from './convert-utils';
@@ -0,0 +1,12 @@
1
+ /** 数据立方.
2
+ * RecordMatrix 是一个二维的 map,CrossTable 会以下列方式使用 matrix 中的数据:
3
+ * `matrix.get(leftPK).get(topPK)[indicatorCode]` */
4
+ export declare type RecordMatrix<R = any> = Map<string, Map<string, R>>;
5
+ /** 普通的下钻树节点 */
6
+ export interface DrillNode {
7
+ key: string;
8
+ value: string;
9
+ path: string[];
10
+ children?: DrillNode[];
11
+ hasChild?: boolean;
12
+ }
File without changes
@@ -0,0 +1 @@
1
+ export default function simpleEncode(path: string[]): string;
@@ -0,0 +1,7 @@
1
+ export default function simpleEncode(path) {
2
+ if (path.length === 0) {
3
+ return 'key:@total@';
4
+ }
5
+
6
+ return "key:".concat(path.join(' '));
7
+ }
@@ -0,0 +1,2 @@
1
+ import '../../style/index.css';
2
+ import './index.css';
File without changes
@@ -0,0 +1,2 @@
1
+ import '../../style/index.less';
2
+ import './index.less';
@@ -0,0 +1,2 @@
1
+ import '../../style/index.less';
2
+ import './index.less';
@@ -0,0 +1 @@
1
+
@@ -0,0 +1,3 @@
1
+ import { TableTransform } from '../interfaces';
2
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
3
+ export declare function makeAutoRowSpanTransform(): TableTransform;
@@ -0,0 +1,73 @@
1
+ import _extends from "@babel/runtime-corejs3/helpers/extends";
2
+ import { internals } from '../internals';
3
+ import { isLeafNode, traverseColumn } from '../utils';
4
+ import { warnTransformsDeprecated } from './warnTransformsDeprecated';
5
+
6
+ function isIdentity(x, y) {
7
+ return x === y;
8
+ }
9
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
10
+
11
+
12
+ export function makeAutoRowSpanTransform() {
13
+ warnTransformsDeprecated('makeAutoRowSpanTransform');
14
+ return traverseColumn(function (col, _ref) {
15
+ var dataSource = _ref.dataSource,
16
+ range = _ref.range;
17
+
18
+ var _a;
19
+
20
+ if (!((_a = col.features) === null || _a === void 0 ? void 0 : _a.autoRowSpan)) {
21
+ return col;
22
+ }
23
+
24
+ if (!isLeafNode(col)) {
25
+ return col;
26
+ }
27
+
28
+ var isFunc = typeof col.features.autoRowSpan === 'function';
29
+ var shouldMergeCell = isFunc ? col.features.autoRowSpan : isIdentity;
30
+ var spanRects = [];
31
+ var lastBottom = 0;
32
+ var prevValue = null;
33
+ var prevRow = null;
34
+
35
+ for (var rowIndex = 0; rowIndex < dataSource.length; rowIndex++) {
36
+ var row = dataSource[rowIndex];
37
+ var value = internals.safeGetValue(col, row, rowIndex);
38
+
39
+ if (rowIndex === 0 || !shouldMergeCell(prevValue, value, prevRow, row)) {
40
+ var spanRect = {
41
+ top: lastBottom,
42
+ bottom: rowIndex,
43
+ left: range.start,
44
+ right: range.end
45
+ };
46
+
47
+ for (var i = lastBottom; i < rowIndex; i++) {
48
+ spanRects.push(spanRect);
49
+ }
50
+
51
+ lastBottom = rowIndex;
52
+ }
53
+
54
+ prevValue = value;
55
+ prevRow = row;
56
+ }
57
+
58
+ for (var _i = lastBottom; _i < dataSource.length; _i++) {
59
+ spanRects.push({
60
+ top: lastBottom,
61
+ bottom: dataSource.length,
62
+ left: range.start,
63
+ right: range.end
64
+ });
65
+ }
66
+
67
+ return _extends(_extends({}, col), {
68
+ getSpanRect: function getSpanRect(value, row, rowIndex) {
69
+ return spanRects[rowIndex];
70
+ }
71
+ });
72
+ });
73
+ }
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { Table } from '../base';
3
+ import { TableTransform } from '../interfaces';
4
+ /** 自适应列宽
5
+ *
6
+ * @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展
7
+ *
8
+ * @param tableRef BaseTable 的 ref
9
+ * @param options 参数
10
+ * @param deps 重新调整列宽的依赖数组,每当依赖数组发生变化时, useAutoWidthTransform 会根据单元格内容的实际渲染宽度 设置单元格的宽度
11
+ *
12
+ * options 说明:
13
+ * - options.appendExpander 是否在列的末尾追加可伸缩列
14
+ * - options.expanderVisibility 设置为 `'hidden'` 可以隐藏可伸缩列
15
+ * - options.wrapperStyle 单元格中 div.auto-width-wrapper 的样式
16
+ * - options.initColumnWidth 自适应的初始列宽
17
+ *
18
+ * 注意 useAutoWidthTransform 是一个 React hooks,要遵循 hooks 的用法规范
19
+ * */
20
+ export declare function useAutoWidthTransform(tableRef: React.MutableRefObject<Table>, options?: {
21
+ wrapperStyle?: React.CSSProperties;
22
+ initColumnWidth?: number;
23
+ appendExpander?: boolean;
24
+ expanderVisibility?: 'visible' | 'hidden';
25
+ }, deps?: any[]): TableTransform;
@@ -0,0 +1,160 @@
1
+ import _sliceInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/slice";
2
+ import _Symbol from "@babel/runtime-corejs3/core-js-stable/symbol";
3
+ import _getIteratorMethod from "@babel/runtime-corejs3/core-js/get-iterator-method";
4
+ import _getIterator from "@babel/runtime-corejs3/core-js/get-iterator";
5
+ import _extends from "@babel/runtime-corejs3/helpers/extends";
6
+ import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
7
+ import _taggedTemplateLiteral from "@babel/runtime-corejs3/helpers/taggedTemplateLiteral";
8
+
9
+ var _templateObject;
10
+
11
+ 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; } } }; }
12
+
13
+ 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); }
14
+
15
+ 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; }
16
+
17
+ import _Array$from from "@babel/runtime-corejs3/core-js-stable/array/from";
18
+ import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
19
+ import React, { useEffect, useState } from 'react';
20
+ import styled from 'styled-components';
21
+ import { Classes } from '../base';
22
+ import { internals } from '../internals';
23
+ import { isLeafNode, mergeCellProps, traverseColumn } from '../utils';
24
+ import { warnTransformsDeprecated } from './warnTransformsDeprecated';
25
+ var AUTO_WIDTH_WRAPPER_CLS = 'auto-width-wrapper';
26
+ var AUTO_WIDTH_EXPANDER_CLS = 'auto-width-expander';
27
+ var AutoWidthWrapper = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n height: 100%;\n display: inline-flex;\n align-items: center;\n white-space: nowrap;\n padding: 8px 12px;\n"])));
28
+
29
+ function isSameArray(arr1, arr2) {
30
+ return arr1.length === arr2.length && arr1.every(function (x, i) {
31
+ return x === arr2[i];
32
+ });
33
+ }
34
+ /** 自适应列宽
35
+ *
36
+ * @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展
37
+ *
38
+ * @param tableRef BaseTable 的 ref
39
+ * @param options 参数
40
+ * @param deps 重新调整列宽的依赖数组,每当依赖数组发生变化时, useAutoWidthTransform 会根据单元格内容的实际渲染宽度 设置单元格的宽度
41
+ *
42
+ * options 说明:
43
+ * - options.appendExpander 是否在列的末尾追加可伸缩列
44
+ * - options.expanderVisibility 设置为 `'hidden'` 可以隐藏可伸缩列
45
+ * - options.wrapperStyle 单元格中 div.auto-width-wrapper 的样式
46
+ * - options.initColumnWidth 自适应的初始列宽
47
+ *
48
+ * 注意 useAutoWidthTransform 是一个 React hooks,要遵循 hooks 的用法规范
49
+ * */
50
+
51
+
52
+ export function useAutoWidthTransform(tableRef, options, deps) {
53
+ warnTransformsDeprecated('useAutoWidthTransform');
54
+
55
+ var _useState = useState([]),
56
+ _useState2 = _slicedToArray(_useState, 2),
57
+ widthList = _useState2[0],
58
+ setWidthList = _useState2[1];
59
+
60
+ useEffect(function () {
61
+ var artTable = tableRef.current.getDoms().artTable;
62
+
63
+ var rows = _Array$from(artTable.querySelectorAll(".".concat(Classes.tableRow)));
64
+
65
+ if (rows.length === 0) {
66
+ return;
67
+ }
68
+
69
+ var preferredWidthList = [];
70
+
71
+ var _iterator = _createForOfIteratorHelper(rows),
72
+ _step;
73
+
74
+ try {
75
+ for (_iterator.s(); !(_step = _iterator.n()).done;) {
76
+ var row = _step.value;
77
+ var autoWidthDivList = row.querySelectorAll(".".concat(AUTO_WIDTH_WRAPPER_CLS));
78
+ autoWidthDivList.forEach(function (div, i) {
79
+ var _a;
80
+
81
+ preferredWidthList[i] = Math.max((_a = preferredWidthList[i]) !== null && _a !== void 0 ? _a : 0, div.scrollWidth);
82
+ });
83
+ }
84
+ } catch (err) {
85
+ _iterator.e(err);
86
+ } finally {
87
+ _iterator.f();
88
+ }
89
+
90
+ if (!isSameArray(preferredWidthList, widthList)) {
91
+ setWidthList(preferredWidthList);
92
+ }
93
+ }, deps);
94
+ var i = 0;
95
+ var innerTransform = traverseColumn(function (col) {
96
+ var _a, _b, _c;
97
+
98
+ if (!isLeafNode(col)) {
99
+ return col;
100
+ }
101
+
102
+ if (!((_a = col.features) === null || _a === void 0 ? void 0 : _a.autoWidth)) {
103
+ return col;
104
+ }
105
+
106
+ var _col$features$autoWid = col.features.autoWidth,
107
+ _col$features$autoWid2 = _col$features$autoWid.max,
108
+ max = _col$features$autoWid2 === void 0 ? Infinity : _col$features$autoWid2,
109
+ _col$features$autoWid3 = _col$features$autoWid.min,
110
+ min = _col$features$autoWid3 === void 0 ? -Infinity : _col$features$autoWid3;
111
+ var width = (_c = (_b = widthList[i++]) !== null && _b !== void 0 ? _b : col.width) !== null && _c !== void 0 ? _c : options === null || options === void 0 ? void 0 : options.initColumnWidth;
112
+ var clampedWidth = Math.max(min, Math.min(max, width));
113
+ return _extends(_extends({}, col), {
114
+ width: clampedWidth,
115
+ getCellProps: function getCellProps(_, record, rowIndex) {
116
+ return mergeCellProps(internals.safeGetCellProps(col, record, rowIndex), {
117
+ style: {
118
+ padding: 0
119
+ }
120
+ });
121
+ },
122
+ render: function render(_, record, rowIndex) {
123
+ return /*#__PURE__*/React.createElement(AutoWidthWrapper, {
124
+ className: AUTO_WIDTH_WRAPPER_CLS,
125
+ style: options === null || options === void 0 ? void 0 : options.wrapperStyle
126
+ }, internals.safeRender(col, record, rowIndex));
127
+ }
128
+ });
129
+ });
130
+ return function (input) {
131
+ var _a;
132
+
133
+ var _innerTransform = innerTransform(input),
134
+ columns = _innerTransform.columns,
135
+ dataSource = _innerTransform.dataSource;
136
+
137
+ var expanderVisibility = (_a = options === null || options === void 0 ? void 0 : options.expanderVisibility) !== null && _a !== void 0 ? _a : 'visible';
138
+ return {
139
+ columns: (options === null || options === void 0 ? void 0 : options.appendExpander) ? _concatInstanceProperty(columns).call(columns, [{
140
+ name: '',
141
+ headerCellProps: {
142
+ className: AUTO_WIDTH_EXPANDER_CLS,
143
+ style: {
144
+ background: expanderVisibility === 'hidden' ? 'var(--bgcolor)' : undefined,
145
+ border: expanderVisibility === 'hidden' ? 'none' : undefined
146
+ }
147
+ },
148
+ getCellProps: function getCellProps() {
149
+ return {
150
+ className: AUTO_WIDTH_EXPANDER_CLS,
151
+ style: {
152
+ visibility: expanderVisibility
153
+ }
154
+ };
155
+ }
156
+ }]) : columns,
157
+ dataSource: dataSource
158
+ };
159
+ };
160
+ }
@@ -0,0 +1,3 @@
1
+ import { TableTransform } from '../interfaces';
2
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
3
+ export declare function makeBuildTreeTransform(idProp: string, parentIdProp: string): TableTransform;
@@ -0,0 +1,15 @@
1
+ import { buildTree as _buildTree } from '../utils';
2
+ import { warnTransformsDeprecated } from './warnTransformsDeprecated';
3
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
4
+
5
+ export function makeBuildTreeTransform(idProp, parentIdProp) {
6
+ warnTransformsDeprecated('makeBuildTreeTransform');
7
+ return function (_ref) {
8
+ var columns = _ref.columns,
9
+ dataSource = _ref.dataSource;
10
+ return {
11
+ columns: columns,
12
+ dataSource: _buildTree(idProp, parentIdProp, dataSource)
13
+ };
14
+ };
15
+ }
@@ -0,0 +1,17 @@
1
+ import { TableTransform } from '../interfaces';
2
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
3
+ export interface ColumnHoverOptions {
4
+ hoverColor?: string;
5
+ hoverColIndex: number;
6
+ onChangeHoverColIndex(nextColIndex: number): void;
7
+ }
8
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
9
+ export declare function makeColumnHoverTransform({ hoverColor, hoverColIndex, onChangeHoverColIndex, }: ColumnHoverOptions): TableTransform;
10
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
11
+ export declare function useColumnHoverTransform({ hoverColor, defaultHoverColIndex, }?: {
12
+ hoverColor?: string;
13
+ defaultHoverColIndex?: number;
14
+ }): import("../interfaces").Transform<{
15
+ columns: import("../interfaces").ArtColumn[];
16
+ dataSource: any[];
17
+ }>;
@@ -0,0 +1,59 @@
1
+ import _slicedToArray from "@babel/runtime-corejs3/helpers/slicedToArray";
2
+ import _extends from "@babel/runtime-corejs3/helpers/extends";
3
+ import { useState } from 'react';
4
+ import { isLeafNode, mergeCellProps, traverseColumn } from '../utils';
5
+ import { warnTransformsDeprecated } from './warnTransformsDeprecated';
6
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
7
+
8
+ export function makeColumnHoverTransform(_ref) {
9
+ var _ref$hoverColor = _ref.hoverColor,
10
+ hoverColor = _ref$hoverColor === void 0 ? 'var(--hover-bgcolor)' : _ref$hoverColor,
11
+ hoverColIndex = _ref.hoverColIndex,
12
+ onChangeHoverColIndex = _ref.onChangeHoverColIndex;
13
+ warnTransformsDeprecated('makeColumnHoverTransform');
14
+ return traverseColumn(function (col, _ref2) {
15
+ var range = _ref2.range;
16
+
17
+ if (!isLeafNode(col)) {
18
+ return col;
19
+ }
20
+
21
+ var colIndexMatched = range.start <= hoverColIndex && hoverColIndex < range.end;
22
+ var prevGetCellProps = col.getCellProps;
23
+ return _extends(_extends({}, col), {
24
+ getCellProps: function getCellProps(value, record, rowIndex) {
25
+ var prevCellProps = prevGetCellProps === null || prevGetCellProps === void 0 ? void 0 : prevGetCellProps(value, record, rowIndex);
26
+ return mergeCellProps(prevCellProps, {
27
+ style: {
28
+ '--bgcolor': colIndexMatched ? hoverColor : undefined
29
+ },
30
+ onMouseEnter: function onMouseEnter() {
31
+ onChangeHoverColIndex(range.start);
32
+ },
33
+ onMouseLeave: function onMouseLeave() {
34
+ onChangeHoverColIndex(-1);
35
+ }
36
+ });
37
+ }
38
+ });
39
+ });
40
+ }
41
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
42
+
43
+ export function useColumnHoverTransform() {
44
+ var _ref3 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
45
+ hoverColor = _ref3.hoverColor,
46
+ _ref3$defaultHoverCol = _ref3.defaultHoverColIndex,
47
+ defaultHoverColIndex = _ref3$defaultHoverCol === void 0 ? -1 : _ref3$defaultHoverCol;
48
+
49
+ var _useState = useState(defaultHoverColIndex),
50
+ _useState2 = _slicedToArray(_useState, 2),
51
+ hoverColIndex = _useState2[0],
52
+ onChangeHoverColIndex = _useState2[1];
53
+
54
+ return makeColumnHoverTransform({
55
+ hoverColor: hoverColor,
56
+ hoverColIndex: hoverColIndex,
57
+ onChangeHoverColIndex: onChangeHoverColIndex
58
+ });
59
+ }
@@ -0,0 +1,17 @@
1
+ import { HoverRange, TableTransform } from '../interfaces';
2
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
3
+ export interface ColumnRangeHoverOptions {
4
+ hoverColor?: string;
5
+ headerHoverColor?: string;
6
+ hoverRange: HoverRange;
7
+ onChangeHoverRange(nextColIndexRange: HoverRange): void;
8
+ }
9
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
10
+ export declare function makeColumnRangeHoverTransform({ hoverColor, headerHoverColor, hoverRange, onChangeHoverRange, }: ColumnRangeHoverOptions): TableTransform;
11
+ /** @deprecated transform 用法已经过时,请使用 pipeline 来对表格进行拓展 */
12
+ export declare function useColumnHoverRangeTransform({ hoverColor, headerHoverColor, defaultHoverRange, }?: Omit<ColumnRangeHoverOptions, 'hoverRange' | 'onChangeHoverRange'> & {
13
+ defaultHoverRange?: HoverRange;
14
+ }): import("../interfaces").Transform<{
15
+ columns: import("../interfaces").ArtColumn[];
16
+ dataSource: any[];
17
+ }>;