@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,574 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard");
4
+
5
+ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault");
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.default = exports.Triggers = exports.Placements = void 0;
11
+
12
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
13
+
14
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
15
+
16
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
17
+
18
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
19
+
20
+ var _includes = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/includes"));
21
+
22
+ var _promise = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/promise"));
23
+
24
+ var _react = _interopRequireWildcard(require("react"));
25
+
26
+ var _reactDom = _interopRequireDefault(require("react-dom"));
27
+
28
+ var _type = require("../_utils/type");
29
+
30
+ var _debounce = _interopRequireDefault(require("lodash/debounce"));
31
+
32
+ var _classnames = _interopRequireDefault(require("classnames"));
33
+
34
+ var _devwarning = _interopRequireDefault(require("../_utils/devwarning"));
35
+
36
+ var _hooks = require("../_utils/hooks");
37
+
38
+ var Placements = (0, _type.tuple)('top', 'left', 'right', 'bottom', 'topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'leftTop', 'leftBottom', 'rightTop', 'rightBottom');
39
+ exports.Placements = Placements;
40
+ var Triggers = (0, _type.tuple)('hover', 'focus', 'click', 'contextMenu');
41
+ exports.Triggers = Triggers;
42
+
43
+ var getOffsetPos = function getOffsetPos(el) {
44
+ var elPos = {
45
+ top: el.offsetTop,
46
+ left: el.offsetLeft
47
+ };
48
+
49
+ if (el.offsetParent) {
50
+ var parentPos = getOffsetPos(el.offsetParent);
51
+ elPos.top += parentPos.top;
52
+ elPos.left += parentPos.left;
53
+ }
54
+
55
+ return elPos;
56
+ };
57
+
58
+ var getScrollDist = function getScrollDist(el) {
59
+ var elScroll = {
60
+ top: el.scrollTop,
61
+ left: el.scrollLeft
62
+ };
63
+
64
+ if (el.parentElement && el.parentElement !== document.body) {
65
+ var parentScroll = getScrollDist(el.parentElement);
66
+ elScroll.top += parentScroll.top;
67
+ elScroll.left += parentScroll.left;
68
+ }
69
+
70
+ return elScroll;
71
+ };
72
+
73
+ function usePopper(locatorElement, popperElement, props) {
74
+ var _context, _context2;
75
+
76
+ var prefixCls = props.prefixCls,
77
+ onTrigger = props.onTrigger,
78
+ popperStyle = props.popperStyle,
79
+ _props$arrow = props.arrow,
80
+ arrow = _props$arrow === void 0 ? false : _props$arrow,
81
+ onVisibleChange = props.onVisibleChange,
82
+ popperClassName = props.popperClassName,
83
+ _props$arrowOffset = props.arrowOffset,
84
+ arrowOffset = _props$arrowOffset === void 0 ? 12 : _props$arrowOffset,
85
+ _props$arrowSize = props.arrowSize,
86
+ arrowSize = _props$arrowSize === void 0 ? 4.25 : _props$arrowSize,
87
+ locatorClassName = props.locatorClassName,
88
+ _props$disabled = props.disabled,
89
+ disabled = _props$disabled === void 0 ? false : _props$disabled,
90
+ _props$trigger = props.trigger,
91
+ trigger = _props$trigger === void 0 ? 'click' : _props$trigger,
92
+ _props$placement = props.placement,
93
+ placement = _props$placement === void 0 ? 'top' : _props$placement,
94
+ _props$gap = props.gap,
95
+ defalutGap = _props$gap === void 0 ? 4 : _props$gap,
96
+ _props$scrollHidden = props.scrollHidden,
97
+ scrollHidden = _props$scrollHidden === void 0 ? false : _props$scrollHidden,
98
+ _props$mouseEnterDela = props.mouseEnterDelay,
99
+ mouseEnterDelay = _props$mouseEnterDela === void 0 ? 0.1 : _props$mouseEnterDela,
100
+ _props$mouseLeaveDela = props.mouseLeaveDelay,
101
+ mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,
102
+ _props$defaultVisible = props.defaultVisible,
103
+ defaultVisible = _props$defaultVisible === void 0 ? false : _props$defaultVisible,
104
+ _props$getTriggerElem = props.getTriggerElement,
105
+ getTriggerElement = _props$getTriggerElem === void 0 ? function (locatorNode) {
106
+ return locatorNode;
107
+ } : _props$getTriggerElem,
108
+ _props$getPopupContai = props.getPopupContainer,
109
+ getPopupContainer = _props$getPopupContai === void 0 ? function () {
110
+ return document.body;
111
+ } : _props$getPopupContai;
112
+ var arrowWidth = Math.sqrt(2 * Math.pow(arrowSize, 2));
113
+ var componentName = (prefixCls === null || prefixCls === void 0 ? void 0 : prefixCls.split('-')[1]) || '';
114
+ (0, _devwarning.default)(Placements.indexOf(placement) === -1, componentName, (0, _concat.default)(_context = "cannot found ".concat(componentName, " placement '")).call(_context, placement, "'"));
115
+ var isWrongTrigger = Array.isArray(trigger) ? trigger.some(function (v) {
116
+ return !(0, _includes.default)(Triggers).call(Triggers, v);
117
+ }) : Triggers.indexOf(trigger) === -1;
118
+ (0, _devwarning.default)(isWrongTrigger, componentName, (0, _concat.default)(_context2 = "cannot found ".concat(componentName, " trigger '")).call(_context2, trigger, "'"));
119
+ var locatorEl = (0, _react.useRef)();
120
+ var popperEl = (0, _react.useRef)();
121
+ var locatorRef = locatorElement.ref || locatorEl;
122
+ var popperRef = popperElement.ref || popperEl;
123
+ var container = getPopupContainer(locatorRef.current);
124
+
125
+ _promise.default.resolve().then(function () {
126
+ var triggerNode = getTriggerElement(locatorRef.current);
127
+ var container = getPopupContainer(locatorRef.current);
128
+ (0, _devwarning.default)(!triggerNode, componentName, 'getTriggerElement() must return a HTMLElement, but now it does not return anything');
129
+ (0, _devwarning.default)(!container, componentName, 'getPopupContainer() must return a HTMLElement, but now it does not return anything');
130
+ });
131
+
132
+ var initPos = {
133
+ top: 0,
134
+ left: 0,
135
+ right: 0,
136
+ bottom: 0,
137
+ x: 0,
138
+ y: 0,
139
+ height: 0,
140
+ width: 0
141
+ };
142
+ var initAlign = {
143
+ top: 0,
144
+ left: 0
145
+ };
146
+ var gap = defalutGap + (arrow ? 10 : 0);
147
+
148
+ var _useState = (0, _react.useState)(initPos),
149
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
150
+ mousePos = _useState2[0],
151
+ setMousePos = _useState2[1];
152
+
153
+ var _useState3 = (0, _react.useState)(initAlign),
154
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
155
+ arrowPos = _useState4[0],
156
+ setArrowPos = _useState4[1];
157
+
158
+ var _useState5 = (0, _react.useState)(!!props.visible || defaultVisible),
159
+ _useState6 = (0, _slicedToArray2.default)(_useState5, 2),
160
+ exist = _useState6[0],
161
+ setExist = _useState6[1];
162
+
163
+ var _useState7 = (0, _react.useState)(false),
164
+ _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
165
+ visible = _useState8[0],
166
+ setVisible = _useState8[1];
167
+
168
+ (0, _react.useEffect)(function () {
169
+ setVisible(!!props.visible);
170
+ }, [props.visible]);
171
+
172
+ var _useState9 = (0, _react.useState)(''),
173
+ _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
174
+ evType = _useState10[0],
175
+ setEvType = _useState10[1];
176
+
177
+ var _useState11 = (0, _react.useState)(!!props.visible || defaultVisible),
178
+ _useState12 = (0, _slicedToArray2.default)(_useState11, 2),
179
+ canAlign = _useState12[0],
180
+ setCanAlign = _useState12[1];
181
+
182
+ var _useState13 = (0, _react.useState)(initAlign),
183
+ _useState14 = (0, _slicedToArray2.default)(_useState13, 2),
184
+ align = _useState14[0],
185
+ setAlign = _useState14[1];
186
+
187
+ var _useState15 = (0, _react.useState)(placement),
188
+ _useState16 = (0, _slicedToArray2.default)(_useState15, 2),
189
+ currentPlacement = _useState16[0],
190
+ setCurrentPlacement = _useState16[1];
191
+
192
+ var alignPopper = (0, _react.useCallback)(function () {
193
+ if ((locatorRef === null || locatorRef === void 0 ? void 0 : locatorRef.current) && (popperRef === null || popperRef === void 0 ? void 0 : popperRef.current) && evType) {
194
+ var _popperRef$current$ge = popperRef.current.getBoundingClientRect(),
195
+ popperWidth = _popperRef$current$ge.width,
196
+ popperHeight = _popperRef$current$ge.height;
197
+
198
+ var _locatorRef$current$g = locatorRef.current.getBoundingClientRect(),
199
+ top = _locatorRef$current$g.top,
200
+ bottom = _locatorRef$current$g.bottom,
201
+ left = _locatorRef$current$g.left,
202
+ right = _locatorRef$current$g.right,
203
+ height = _locatorRef$current$g.height,
204
+ width = _locatorRef$current$g.width;
205
+
206
+ var _getOffsetPos = getOffsetPos(container),
207
+ containerTop = _getOffsetPos.top,
208
+ containerLeft = _getOffsetPos.left;
209
+
210
+ var _getOffsetPos2 = getOffsetPos(locatorRef.current),
211
+ locatorTop = _getOffsetPos2.top,
212
+ locatorLeft = _getOffsetPos2.left;
213
+
214
+ var _getScrollDist = getScrollDist(locatorRef.current),
215
+ scrollTop = _getScrollDist.top,
216
+ scrollLeft = _getScrollDist.left;
217
+
218
+ var locatorPos = {
219
+ width: width,
220
+ height: height,
221
+ y: locatorTop - containerTop - scrollTop,
222
+ x: locatorLeft - containerLeft - scrollLeft,
223
+ top: locatorTop - containerTop - scrollTop,
224
+ left: locatorLeft - containerLeft - scrollLeft,
225
+ right: locatorLeft + width - containerLeft - scrollLeft,
226
+ bottom: locatorTop + height - containerTop - scrollTop
227
+ };
228
+ var currentPos = evType === 'contextmenu' ? mousePos : locatorPos;
229
+ var _currentPlacement = placement;
230
+
231
+ if (top - gap - popperHeight < 0) {
232
+ _currentPlacement = _currentPlacement.replace('top', 'bottom');
233
+ }
234
+
235
+ if (bottom + gap + popperHeight > document.body.clientHeight) {
236
+ _currentPlacement = _currentPlacement.replace('bottom', 'top');
237
+ }
238
+
239
+ if (left + popperWidth > document.body.clientWidth) {
240
+ _currentPlacement = _currentPlacement.replace('Left', 'Right');
241
+ }
242
+
243
+ if (right - popperWidth < 0) {
244
+ _currentPlacement = _currentPlacement.replace('Right', 'Left');
245
+ }
246
+
247
+ if (top + popperHeight > document.body.clientHeight) {
248
+ _currentPlacement = _currentPlacement.replace('Top', 'Bottom');
249
+ }
250
+
251
+ if (bottom - popperHeight < 0) {
252
+ _currentPlacement = _currentPlacement.replace('Bottom', 'Top');
253
+ }
254
+
255
+ if (left - gap - popperWidth < 0) {
256
+ _currentPlacement = _currentPlacement.replace('left', 'right');
257
+ }
258
+
259
+ if (right + gap + popperWidth > document.body.clientWidth) {
260
+ _currentPlacement = _currentPlacement.replace('right', 'left');
261
+ }
262
+
263
+ var leftLeft = currentPos.left - popperWidth - gap;
264
+ var topTop = currentPos.top - gap - popperHeight;
265
+ var bottomTop = currentPos.top + currentPos.height + gap;
266
+ var rightLeft = currentPos.left + currentPos.width - popperWidth;
267
+ var centerLeft = currentPos.left + (currentPos.width - popperWidth) / 2;
268
+ var centerTop = currentPos.top - (popperHeight - currentPos.height) / 2;
269
+ var topBottom = currentPos.bottom - popperHeight;
270
+ var leftRight = currentPos.right + gap;
271
+ var mapAlign = {
272
+ topLeft: {
273
+ left: currentPos.left,
274
+ top: topTop
275
+ },
276
+ top: {
277
+ left: centerLeft,
278
+ top: topTop
279
+ },
280
+ topRight: {
281
+ left: rightLeft,
282
+ top: topTop
283
+ },
284
+ bottomLeft: {
285
+ left: currentPos.left,
286
+ top: bottomTop
287
+ },
288
+ bottom: {
289
+ left: centerLeft,
290
+ top: bottomTop
291
+ },
292
+ bottomRight: {
293
+ left: rightLeft,
294
+ top: bottomTop
295
+ },
296
+ leftTop: {
297
+ left: leftLeft,
298
+ top: currentPos.top
299
+ },
300
+ left: {
301
+ left: leftLeft,
302
+ top: centerTop
303
+ },
304
+ leftBottom: {
305
+ left: leftLeft,
306
+ top: topBottom
307
+ },
308
+ rightTop: {
309
+ left: leftRight,
310
+ top: currentPos.top
311
+ },
312
+ right: {
313
+ left: leftRight,
314
+ top: centerTop
315
+ },
316
+ rightBottom: {
317
+ left: leftRight,
318
+ top: topBottom
319
+ }
320
+ };
321
+ var alignPos = mapAlign[_currentPlacement];
322
+ var _arrowPos = {
323
+ top: 0,
324
+ left: 0
325
+ };
326
+
327
+ if (/left/.test(_currentPlacement) || /right/.test(_currentPlacement)) {
328
+ if (/Top/.test(_currentPlacement)) {
329
+ _arrowPos.top = arrowOffset;
330
+ } else if (/Bottom/.test(_currentPlacement)) {
331
+ _arrowPos.top = popperHeight - arrowOffset - 2 * arrowSize;
332
+ } else {
333
+ _arrowPos.top = (popperHeight - arrowWidth) / 2;
334
+ }
335
+
336
+ if (top <= 0) {
337
+ alignPos.top = locatorPos.top;
338
+ _arrowPos.top = arrowOffset;
339
+ } else if (bottom - height / 4 >= document.body.clientHeight) {
340
+ alignPos.top = locatorPos.bottom - popperHeight;
341
+ _arrowPos.top = popperHeight - arrowOffset - 2 * arrowSize;
342
+ } else {
343
+ var _scrollTop = alignPos.top - window.pageYOffset;
344
+
345
+ var scrollBottom = alignPos.top + popperHeight - 5 - window.pageYOffset;
346
+
347
+ if (_scrollTop < 0) {
348
+ alignPos.top -= _scrollTop;
349
+ _arrowPos.top += _scrollTop;
350
+ }
351
+
352
+ if (scrollBottom > document.body.clientHeight) {
353
+ alignPos.top += document.body.clientHeight - scrollBottom;
354
+ _arrowPos.top += scrollBottom - document.body.clientHeight;
355
+ }
356
+ }
357
+ }
358
+
359
+ if (/top/.test(_currentPlacement) || /bottom/.test(_currentPlacement)) {
360
+ if (/Left/.test(_currentPlacement)) {
361
+ _arrowPos.left = arrowOffset;
362
+ } else if (/Right/.test(_currentPlacement)) {
363
+ _arrowPos.left = popperWidth - arrowOffset - 2 * arrowSize;
364
+ } else {
365
+ _arrowPos.left = (popperWidth - arrowWidth) / 2;
366
+ }
367
+ }
368
+
369
+ setAlign(alignPos);
370
+ setArrowPos(_arrowPos);
371
+ setCurrentPlacement(_currentPlacement);
372
+ }
373
+ }, [locatorRef, popperRef, container, evType, mousePos, placement, gap, arrowOffset, arrowSize, arrowWidth]);
374
+ (0, _react.useEffect)(function () {
375
+ if (canAlign) {
376
+ alignPopper();
377
+ setCanAlign(false);
378
+ props.visible === undefined && setVisible(true);
379
+ onVisibleChange && onVisibleChange(true);
380
+ }
381
+ }, [alignPopper, canAlign, onVisibleChange, props]);
382
+ var arrowStyle = {
383
+ '--arrowSize': arrowSize + 'px',
384
+ '--arrowTop': arrowPos.top + 'px',
385
+ '--arrowLeft': arrowPos.left + 'px',
386
+ '--arrowOffset': arrowSize / -1.2 + 'px'
387
+ };
388
+ var popperContainerStyle = (0, _extends2.default)((0, _extends2.default)((0, _extends2.default)({
389
+ position: 'absolute'
390
+ }, popperStyle), align), arrow ? arrowStyle : {});
391
+ var locatorProps = {
392
+ disabled: disabled,
393
+ ref: locatorRef,
394
+ style: locatorElement.props.style,
395
+ className: (0, _classnames.default)(locatorClassName, locatorElement.props.className)
396
+ };
397
+ var popperProps = {
398
+ ref: popperRef,
399
+ style: popperContainerStyle,
400
+ className: (0, _classnames.default)(prefixCls, popperClassName, currentPlacement, (0, _defineProperty2.default)({
401
+ arrow: arrow,
402
+ hidden: !visible
403
+ }, "".concat(currentPlacement, "-active"), visible))
404
+ };
405
+ var popperNode = popperRef.current;
406
+ var locatorNode = locatorRef.current;
407
+ (0, _hooks.useResizeObserver)(popperNode, alignPopper);
408
+ (0, _hooks.useResizeObserver)(locatorNode, alignPopper);
409
+ (0, _react.useEffect)(function () {
410
+ if (exist && visible) {
411
+ var mouseleaveTimer;
412
+
413
+ var handleHidePopper = function handleHidePopper(e) {
414
+ mouseleaveTimer && clearTimeout(mouseleaveTimer);
415
+ var triggerNode = getTriggerElement(locatorRef.current);
416
+ var triggerRect = triggerNode.getBoundingClientRect();
417
+ var popperRect = popperRef.current.getBoundingClientRect();
418
+ var left = /left/.test(currentPlacement) ? popperRect.right : triggerRect.left;
419
+ var right = /right/.test(currentPlacement) ? popperRect.left : triggerRect.right;
420
+ var top = /top/.test(currentPlacement) ? popperRect.bottom : triggerRect.top;
421
+ var bottom = /bottom/.test(currentPlacement) ? popperRect.top : triggerRect.bottom;
422
+ var X = e.clientX,
423
+ Y = e.clientY;
424
+ var inTriggerRect = X > left - 2 && X < right + 2 && Y > top - 2 && Y < bottom + 2;
425
+ var inPopperRect = X > popperRect.left && X < popperRect.right && Y > popperRect.top && Y < popperRect.bottom;
426
+ var ableArea = evType === 'click' || evType === 'contextmenu' ? inPopperRect : inTriggerRect || inPopperRect;
427
+
428
+ var hidePopper = function hidePopper() {
429
+ setEvType('');
430
+ props.visible === undefined && setVisible(false);
431
+ onVisibleChange && onVisibleChange(false);
432
+ };
433
+
434
+ if (ableArea) {
435
+ evType === 'focus' && triggerNode.focus();
436
+ } else {
437
+ evType === 'mouseenter' ? mouseleaveTimer = window.setTimeout(hidePopper, mouseLeaveDelay * 1000) : hidePopper();
438
+ }
439
+ };
440
+
441
+ var debounceHidePopper = (0, _debounce.default)(handleHidePopper, 10);
442
+
443
+ if (evType === 'mouseenter') {
444
+ document.addEventListener('mousemove', debounceHidePopper);
445
+ } else {
446
+ document.addEventListener('click', handleHidePopper);
447
+ }
448
+
449
+ return function () {
450
+ if (evType === 'mouseenter') {
451
+ document.removeEventListener('mousemove', debounceHidePopper);
452
+ } else {
453
+ document.removeEventListener('click', handleHidePopper);
454
+ }
455
+ };
456
+ }
457
+ }, [props, exist, evType, trigger, visible, popperRef, locatorRef, mouseLeaveDelay, onVisibleChange, currentPlacement, getTriggerElement]);
458
+ (0, _react.useEffect)(function () {
459
+ if (visible) {
460
+ var scrollAlign = (0, _debounce.default)(function () {
461
+ if (scrollHidden) {
462
+ props.visible === undefined && setVisible(false);
463
+ onVisibleChange && onVisibleChange(false);
464
+ }
465
+
466
+ alignPopper();
467
+ }, 10);
468
+ window.addEventListener('resize', alignPopper);
469
+ document.addEventListener('scroll', scrollAlign, true);
470
+ locatorNode === null || locatorNode === void 0 ? void 0 : locatorNode.addEventListener('DOMSubtreeModified', alignPopper);
471
+ exist && (popperNode === null || popperNode === void 0 ? void 0 : popperNode.addEventListener('DOMSubtreeModified', alignPopper));
472
+ return function () {
473
+ window.removeEventListener('resize', alignPopper);
474
+ document.removeEventListener('scroll', scrollAlign, true);
475
+ locatorNode === null || locatorNode === void 0 ? void 0 : locatorNode.removeEventListener('DOMSubtreeModified', alignPopper);
476
+ exist && (popperNode === null || popperNode === void 0 ? void 0 : popperNode.removeEventListener('DOMSubtreeModified', alignPopper));
477
+ };
478
+ }
479
+ }, [alignPopper, exist, onVisibleChange, popperNode, props.visible, scrollHidden, locatorNode, visible]);
480
+
481
+ _react.default.useEffect(function () {
482
+ var triggerNode = getTriggerElement(locatorRef.current);
483
+
484
+ if (triggerNode) {
485
+ var mouseenterTimer;
486
+
487
+ var clearMouseLeave = function clearMouseLeave() {
488
+ return clearTimeout(mouseenterTimer);
489
+ };
490
+
491
+ var addAction = function addAction(action) {
492
+ if (action === 'hover') {
493
+ triggerNode.addEventListener('mouseenter', handleShowPopper);
494
+ triggerNode.addEventListener('mouseleave', clearMouseLeave);
495
+ } else {
496
+ triggerNode.addEventListener(action.toLowerCase(), handleShowPopper);
497
+ }
498
+ };
499
+
500
+ var removeAction = function removeAction(action) {
501
+ if (action === 'hover') {
502
+ triggerNode.removeEventListener('mouseenter', handleShowPopper);
503
+ triggerNode.removeEventListener('mouseleave', clearMouseLeave);
504
+ } else {
505
+ triggerNode.removeEventListener(action.toLowerCase(), handleShowPopper);
506
+ }
507
+ };
508
+
509
+ var handleShowPopper = function handleShowPopper(e) {
510
+ e.preventDefault();
511
+ var evType = e.type;
512
+
513
+ if (evType === 'contextmenu') {
514
+ var currentMousePos = (0, _extends2.default)((0, _extends2.default)({}, mousePos), {
515
+ x: e.pageX,
516
+ y: e.pageY,
517
+ left: e.pageX,
518
+ top: e.pageY,
519
+ right: e.pageX,
520
+ bottom: e.pageY
521
+ });
522
+ setMousePos(currentMousePos);
523
+ }
524
+
525
+ var showPopper = function showPopper(evType) {
526
+ if (!disabled) {
527
+ !exist && setExist(true);
528
+ setEvType(evType);
529
+
530
+ if (onTrigger) {
531
+ var mapTrigger = {
532
+ mouseenter: 'hover',
533
+ click: 'click',
534
+ focus: 'focus',
535
+ contextmenu: 'contextMenu'
536
+ };
537
+ onTrigger(mapTrigger[evType]);
538
+ }
539
+
540
+ if (!visible || evType === 'contextmenu') {
541
+ setCanAlign(true);
542
+ }
543
+ }
544
+ };
545
+
546
+ if (evType === 'mouseenter') {
547
+ mouseenterTimer = window.setTimeout(function () {
548
+ return showPopper(evType);
549
+ }, mouseEnterDelay * 1000);
550
+ } else {
551
+ showPopper(evType);
552
+ }
553
+ };
554
+
555
+ Array.isArray(trigger) ? trigger.forEach(function (action) {
556
+ return addAction(action);
557
+ }) : addAction(trigger);
558
+ return function () {
559
+ Array.isArray(trigger) ? trigger.forEach(function (action) {
560
+ return removeAction(action);
561
+ }) : removeAction(trigger);
562
+ };
563
+ }
564
+ }, [disabled, exist, getTriggerElement, locatorRef, mouseEnterDelay, mousePos, onTrigger, trigger, visible]);
565
+
566
+ var Locate = /*#__PURE__*/(0, _react.cloneElement)(locatorElement, locatorProps);
567
+
568
+ var Popper = /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({}, popperProps), popperElement);
569
+
570
+ return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, Locate, exist && container && /*#__PURE__*/_reactDom.default.createPortal(Popper, container));
571
+ }
572
+
573
+ var _default = usePopper;
574
+ exports.default = _default;
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ import { LocaleConfigType, CompLangMsgParams, ComponentType } from '../locale';
3
+ interface IntlUniversal {
4
+ getCompLangMsg: (compLangMsgParams: CompLangMsgParams, customGetLangMsg?: (componentName: string, labelName: string, params: any) => any) => any;
5
+ getLangMsg: (componentName: ComponentType | string, labelName: string, params?: any) => string | React.ReactNode[];
6
+ }
7
+ export interface IConfigProps {
8
+ getPrefixCls?: (configPrefixCls?: string, suffixCls?: string, customizePrefixCls?: string) => string;
9
+ compDefaultProps?: any;
10
+ prefixCls?: string;
11
+ localeConfig?: LocaleConfigType;
12
+ locale?: IntlUniversal;
13
+ }
14
+ export interface IContextConfigProps {
15
+ getPrefixCls?: (configPrefixCls?: string, suffixCls?: string, customizePrefixCls?: string) => string;
16
+ compDefaultProps?: any;
17
+ prefixCls?: string;
18
+ localeConfig?: LocaleConfigType;
19
+ locale: IntlUniversal;
20
+ }
21
+ declare const ConfigContext: import("react").Context<IContextConfigProps>;
22
+ export default ConfigContext;
@@ -0,0 +1,19 @@
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.default = void 0;
9
+
10
+ var _react = require("react");
11
+
12
+ var _defaultConfig = _interopRequireDefault(require("./defaultConfig"));
13
+
14
+ /**
15
+ * 提供外层注入属性的context
16
+ */
17
+ var ConfigContext = /*#__PURE__*/(0, _react.createContext)(_defaultConfig.default);
18
+ var _default = ConfigContext;
19
+ exports.default = _default;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * 组件默认属性,所有组件的默认属性都在这里写,
3
+ * 而不是在组件文件中以“componentName.defaultProps”的方式去写
4
+ * componentName: defaultPropsObj
5
+ * (用于处理用户自定义默认属性)
6
+ */
7
+ declare const compDefaultProps: {};
8
+ export default compDefaultProps;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.default = void 0;
7
+ // import * as React from 'react'
8
+
9
+ /**
10
+ * 组件默认属性,所有组件的默认属性都在这里写,
11
+ * 而不是在组件文件中以“componentName.defaultProps”的方式去写
12
+ * componentName: defaultPropsObj
13
+ * (用于处理用户自定义默认属性)
14
+ */
15
+ var compDefaultProps = {};
16
+ var _default = compDefaultProps;
17
+ exports.default = _default;
@@ -0,0 +1,11 @@
1
+ /**
2
+ * 对外暴露用于注入全局配置属性的Context.Provider
3
+ */
4
+ import React, { FunctionComponentElement } from 'react';
5
+ import { IConfigProps } from './ConfigContext';
6
+ interface IConfigProviderProps {
7
+ value?: IConfigProps;
8
+ children?: React.ReactNode;
9
+ }
10
+ declare const ConfigProvider: (props: IConfigProviderProps) => FunctionComponentElement<IConfigProviderProps>;
11
+ export default ConfigProvider;