tdesign-react 0.35.0-alpha.1 → 0.35.0-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (517) hide show
  1. package/dist/tdesign.css +70 -53
  2. package/dist/tdesign.css.map +1 -1
  3. package/dist/tdesign.js +1681 -1041
  4. package/dist/tdesign.js.map +1 -1
  5. package/dist/tdesign.min.css +1 -1
  6. package/dist/tdesign.min.css.map +1 -1
  7. package/dist/tdesign.min.js +4 -4
  8. package/dist/tdesign.min.js.map +1 -1
  9. package/{esm/_chunks/dep-22976878.js → es/_chunks/dep-2ed7eef7.js} +2 -2
  10. package/{esm/_chunks/dep-22976878.js.map → es/_chunks/dep-2ed7eef7.js.map} +1 -1
  11. package/es/_chunks/{dep-a1ce2324.js → dep-3a109495.js} +1 -1
  12. package/es/_chunks/{dep-a1ce2324.js.map → dep-3a109495.js.map} +1 -1
  13. package/es/_chunks/{dep-619d2589.js → dep-aec4b56c.js} +1 -1
  14. package/es/_chunks/{dep-619d2589.js.map → dep-aec4b56c.js.map} +1 -1
  15. package/es/addon/Addon.js +1 -1
  16. package/es/addon/Addon.js.map +1 -1
  17. package/es/calendar/Calendar.js +1 -1
  18. package/es/calendar/index.js +1 -1
  19. package/es/card/Card.js +1 -1
  20. package/es/card/Card.js.map +1 -1
  21. package/es/cascader/Cascader.js +1 -1
  22. package/es/cascader/components/Item.js +1 -1
  23. package/es/cascader/components/Panel.js +1 -1
  24. package/es/cascader/index.js +1 -1
  25. package/es/checkbox/Checkbox.js +1 -1
  26. package/es/checkbox/CheckboxGroup.js +1 -1
  27. package/es/checkbox/index.js +1 -1
  28. package/es/color-picker/ColorPicker.js +1 -1
  29. package/es/color-picker/ColorPickerPanel.js +1 -1
  30. package/es/color-picker/components/panel/header.js +1 -1
  31. package/es/color-picker/components/panel/index.js +1 -1
  32. package/es/color-picker/index.js +1 -1
  33. package/es/comment/Comment.js +1 -1
  34. package/es/comment/Comment.js.map +1 -1
  35. package/es/common/Check.js +1 -1
  36. package/es/common/Check.js.map +1 -1
  37. package/es/date-picker/DatePicker.js +23 -30
  38. package/es/date-picker/DatePicker.js.map +1 -1
  39. package/es/date-picker/DatePickerPanel.d.ts +7 -0
  40. package/es/date-picker/DatePickerPanel.js +349 -0
  41. package/es/date-picker/DatePickerPanel.js.map +1 -0
  42. package/es/date-picker/DateRangePicker.js +22 -15
  43. package/es/date-picker/DateRangePicker.js.map +1 -1
  44. package/es/date-picker/DateRangePickerPanel.d.ts +7 -0
  45. package/es/date-picker/DateRangePickerPanel.js +457 -0
  46. package/es/date-picker/DateRangePickerPanel.js.map +1 -0
  47. package/es/date-picker/base/Cell.d.ts +1 -1
  48. package/es/date-picker/base/Cell.js +5 -5
  49. package/es/date-picker/base/Cell.js.map +1 -1
  50. package/es/date-picker/base/Footer.js +3 -2
  51. package/es/date-picker/base/Footer.js.map +1 -1
  52. package/es/date-picker/base/Header.js +2 -2
  53. package/es/date-picker/base/Header.js.map +1 -1
  54. package/es/date-picker/base/Table.d.ts +3 -3
  55. package/es/date-picker/base/Table.js +2 -2
  56. package/es/date-picker/base/Table.js.map +1 -1
  57. package/es/date-picker/defaultProps.js +0 -2
  58. package/es/date-picker/defaultProps.js.map +1 -1
  59. package/es/date-picker/hooks/useFormat.d.ts +4 -1
  60. package/es/date-picker/hooks/useFormat.js +31 -19
  61. package/es/date-picker/hooks/useFormat.js.map +1 -1
  62. package/es/date-picker/hooks/useRange.d.ts +2 -2
  63. package/es/date-picker/hooks/useRange.js +52 -113
  64. package/es/date-picker/hooks/useRange.js.map +1 -1
  65. package/es/date-picker/hooks/useRangeValue.d.ts +24 -0
  66. package/es/date-picker/hooks/useRangeValue.js +156 -0
  67. package/es/date-picker/hooks/useRangeValue.js.map +1 -0
  68. package/es/date-picker/hooks/useSingle.d.ts +6 -10
  69. package/es/date-picker/hooks/useSingle.js +52 -72
  70. package/es/date-picker/hooks/useSingle.js.map +1 -1
  71. package/es/date-picker/hooks/useSingleValue.d.ts +14 -0
  72. package/es/date-picker/hooks/useSingleValue.js +101 -0
  73. package/es/date-picker/hooks/useSingleValue.js.map +1 -0
  74. package/es/date-picker/{panel → hooks}/useTableData.d.ts +2 -2
  75. package/es/date-picker/{panel → hooks}/useTableData.js +0 -0
  76. package/es/date-picker/hooks/useTableData.js.map +1 -0
  77. package/es/date-picker/index.d.ts +4 -20
  78. package/es/date-picker/index.js +19 -15
  79. package/es/date-picker/index.js.map +1 -1
  80. package/es/date-picker/panel/ExtraContent.d.ts +2 -2
  81. package/es/date-picker/panel/ExtraContent.js +1 -1
  82. package/es/date-picker/panel/ExtraContent.js.map +1 -1
  83. package/es/date-picker/panel/PanelContent.d.ts +17 -17
  84. package/es/date-picker/panel/PanelContent.js +7 -6
  85. package/es/date-picker/panel/PanelContent.js.map +1 -1
  86. package/{lib/date-picker/panel/DateRangePickerPanel.d.ts → es/date-picker/panel/RangePanel.d.ts} +4 -12
  87. package/es/date-picker/panel/{DateRangePickerPanel.js → RangePanel.js} +23 -17
  88. package/es/date-picker/panel/RangePanel.js.map +1 -0
  89. package/es/date-picker/panel/{DatePickerPanel.d.ts → SinglePanel.d.ts} +5 -13
  90. package/es/date-picker/panel/{DatePickerPanel.js → SinglePanel.js} +33 -27
  91. package/es/date-picker/panel/SinglePanel.js.map +1 -0
  92. package/es/date-picker/style/index.css +4 -4
  93. package/es/date-picker/type.d.ts +138 -9
  94. package/es/dialog/Dialog.js +1 -0
  95. package/es/dialog/Dialog.js.map +1 -1
  96. package/es/dialog/RenderDialog.js +44 -34
  97. package/es/dialog/RenderDialog.js.map +1 -1
  98. package/es/dialog/index.js +1 -0
  99. package/es/dialog/index.js.map +1 -1
  100. package/es/dialog/plugin.js +1 -0
  101. package/es/dialog/plugin.js.map +1 -1
  102. package/es/dialog/style/index.css +34 -23
  103. package/es/form/Form.js +6 -5
  104. package/es/form/Form.js.map +1 -1
  105. package/es/form/FormItem.js +5 -4
  106. package/es/form/FormItem.js.map +1 -1
  107. package/es/form/hooks/useFormItemStyle.js +5 -4
  108. package/es/form/hooks/useFormItemStyle.js.map +1 -1
  109. package/es/form/index.js +5 -4
  110. package/es/form/index.js.map +1 -1
  111. package/es/form/useInitialData.js +4 -3
  112. package/es/form/useInitialData.js.map +1 -1
  113. package/es/index.js +11 -6
  114. package/es/index.js.map +1 -1
  115. package/es/input/Input.js +1 -1
  116. package/es/input/Input.js.map +1 -1
  117. package/es/input/InputGroup.js +1 -1
  118. package/es/input/InputGroup.js.map +1 -1
  119. package/es/input-number/InputNumber.js +1 -1
  120. package/es/input-number/InputNumber.js.map +1 -1
  121. package/es/input-number/style/index.css +26 -26
  122. package/es/list/List.js +1 -1
  123. package/es/list/List.js.map +1 -1
  124. package/es/list/ListItem.js +1 -1
  125. package/es/list/ListItem.js.map +1 -1
  126. package/es/menu/HeadMenu.js +1 -1
  127. package/es/menu/HeadMenu.js.map +1 -1
  128. package/es/menu/Menu.js +1 -1
  129. package/es/menu/Menu.js.map +1 -1
  130. package/es/menu/MenuItem.js +1 -1
  131. package/es/menu/MenuItem.js.map +1 -1
  132. package/es/menu/SubMenu.js +2 -2
  133. package/es/menu/SubMenu.js.map +1 -1
  134. package/es/radio/Radio.js +1 -1
  135. package/es/radio/RadioGroup.js +1 -1
  136. package/es/radio/index.js +1 -1
  137. package/es/slider/Slider.js +1 -1
  138. package/es/slider/Slider.js.map +1 -1
  139. package/es/table/BaseTable.js +1 -0
  140. package/es/table/BaseTable.js.map +1 -1
  141. package/es/table/EnhancedTable.js +3 -2
  142. package/es/table/EnhancedTable.js.map +1 -1
  143. package/es/table/FilterController.js +2 -2
  144. package/es/table/PrimaryTable.js +3 -2
  145. package/es/table/PrimaryTable.js.map +1 -1
  146. package/es/table/TBody.js +6 -23
  147. package/es/table/TBody.js.map +1 -1
  148. package/es/table/TR.d.ts +2 -2
  149. package/es/table/TR.js +4 -14
  150. package/es/table/TR.js.map +1 -1
  151. package/es/table/hooks/useColumnController.js +1 -1
  152. package/es/table/hooks/useFilter.js +2 -2
  153. package/es/table/hooks/useRowSelect.js +2 -2
  154. package/es/table/hooks/useRowspanAndColspan.d.ts +10 -0
  155. package/es/table/hooks/useRowspanAndColspan.js +74 -0
  156. package/es/table/hooks/useRowspanAndColspan.js.map +1 -0
  157. package/es/table/index.js +3 -2
  158. package/es/table/index.js.map +1 -1
  159. package/es/table/style/index.css +6 -0
  160. package/es/textarea/Textarea.js +2 -2
  161. package/es/textarea/Textarea.js.map +1 -1
  162. package/es/transfer/Transfer.js +1 -1
  163. package/es/transfer/TransferList.js +1 -1
  164. package/es/transfer/index.js +1 -1
  165. package/es/tree/Tree.js +1 -1
  166. package/es/tree/TreeItem.js +1 -1
  167. package/es/tree/index.js +1 -1
  168. package/es/tree-select/TreeSelect.js +1 -1
  169. package/es/tree-select/index.js +1 -1
  170. package/es/upload/index.js +1 -0
  171. package/es/upload/index.js.map +1 -1
  172. package/es/upload/themes/image-card.js +1 -0
  173. package/es/upload/themes/image-card.js.map +1 -1
  174. package/es/upload/upload.js +1 -0
  175. package/es/upload/upload.js.map +1 -1
  176. package/{es/_chunks/dep-6e402ba5.js → esm/_chunks/dep-04427594.js} +2 -2
  177. package/{es/_chunks/dep-6e402ba5.js.map → esm/_chunks/dep-04427594.js.map} +1 -1
  178. package/esm/_chunks/{dep-a1ce2324.js → dep-3a109495.js} +1 -1
  179. package/esm/_chunks/{dep-a1ce2324.js.map → dep-3a109495.js.map} +1 -1
  180. package/esm/_chunks/{dep-619d2589.js → dep-aec4b56c.js} +1 -1
  181. package/esm/_chunks/{dep-619d2589.js.map → dep-aec4b56c.js.map} +1 -1
  182. package/esm/_common/style/web/components/date-picker-new/_index.less +4 -4
  183. package/esm/_common/style/web/components/dialog/_index.less +36 -23
  184. package/esm/_common/style/web/components/input-number/_index.less +4 -4
  185. package/esm/_common/style/web/components/table/_index.less +7 -0
  186. package/esm/addon/Addon.js +1 -1
  187. package/esm/addon/Addon.js.map +1 -1
  188. package/esm/calendar/Calendar.js +1 -1
  189. package/esm/calendar/index.js +1 -1
  190. package/esm/card/Card.js +1 -1
  191. package/esm/card/Card.js.map +1 -1
  192. package/esm/cascader/Cascader.js +1 -1
  193. package/esm/cascader/components/Item.js +1 -1
  194. package/esm/cascader/components/Panel.js +1 -1
  195. package/esm/cascader/index.js +1 -1
  196. package/esm/checkbox/Checkbox.js +1 -1
  197. package/esm/checkbox/CheckboxGroup.js +1 -1
  198. package/esm/checkbox/index.js +1 -1
  199. package/esm/color-picker/ColorPicker.js +1 -1
  200. package/esm/color-picker/ColorPickerPanel.js +1 -1
  201. package/esm/color-picker/components/panel/header.js +1 -1
  202. package/esm/color-picker/components/panel/index.js +1 -1
  203. package/esm/color-picker/index.js +1 -1
  204. package/esm/comment/Comment.js +1 -1
  205. package/esm/comment/Comment.js.map +1 -1
  206. package/esm/common/Check.js +1 -1
  207. package/esm/common/Check.js.map +1 -1
  208. package/esm/date-picker/DatePicker.js +23 -30
  209. package/esm/date-picker/DatePicker.js.map +1 -1
  210. package/esm/date-picker/DatePickerPanel.d.ts +7 -0
  211. package/esm/date-picker/DatePickerPanel.js +356 -0
  212. package/esm/date-picker/DatePickerPanel.js.map +1 -0
  213. package/esm/date-picker/DateRangePicker.js +22 -15
  214. package/esm/date-picker/DateRangePicker.js.map +1 -1
  215. package/esm/date-picker/DateRangePickerPanel.d.ts +7 -0
  216. package/esm/date-picker/DateRangePickerPanel.js +464 -0
  217. package/esm/date-picker/DateRangePickerPanel.js.map +1 -0
  218. package/esm/date-picker/base/Cell.d.ts +1 -1
  219. package/esm/date-picker/base/Cell.js +5 -5
  220. package/esm/date-picker/base/Cell.js.map +1 -1
  221. package/esm/date-picker/base/Footer.js +3 -2
  222. package/esm/date-picker/base/Footer.js.map +1 -1
  223. package/esm/date-picker/base/Header.js +2 -2
  224. package/esm/date-picker/base/Header.js.map +1 -1
  225. package/esm/date-picker/base/Table.d.ts +3 -3
  226. package/esm/date-picker/base/Table.js +2 -2
  227. package/esm/date-picker/base/Table.js.map +1 -1
  228. package/esm/date-picker/defaultProps.js +0 -2
  229. package/esm/date-picker/defaultProps.js.map +1 -1
  230. package/esm/date-picker/hooks/useFormat.d.ts +4 -1
  231. package/esm/date-picker/hooks/useFormat.js +31 -19
  232. package/esm/date-picker/hooks/useFormat.js.map +1 -1
  233. package/esm/date-picker/hooks/useRange.d.ts +2 -2
  234. package/esm/date-picker/hooks/useRange.js +52 -113
  235. package/esm/date-picker/hooks/useRange.js.map +1 -1
  236. package/esm/date-picker/hooks/useRangeValue.d.ts +24 -0
  237. package/esm/date-picker/hooks/useRangeValue.js +156 -0
  238. package/esm/date-picker/hooks/useRangeValue.js.map +1 -0
  239. package/esm/date-picker/hooks/useSingle.d.ts +6 -10
  240. package/esm/date-picker/hooks/useSingle.js +52 -72
  241. package/esm/date-picker/hooks/useSingle.js.map +1 -1
  242. package/esm/date-picker/hooks/useSingleValue.d.ts +14 -0
  243. package/esm/date-picker/hooks/useSingleValue.js +101 -0
  244. package/esm/date-picker/hooks/useSingleValue.js.map +1 -0
  245. package/esm/date-picker/{panel → hooks}/useTableData.d.ts +2 -2
  246. package/esm/date-picker/{panel → hooks}/useTableData.js +0 -0
  247. package/esm/date-picker/hooks/useTableData.js.map +1 -0
  248. package/esm/date-picker/index.d.ts +4 -20
  249. package/esm/date-picker/index.js +20 -16
  250. package/esm/date-picker/index.js.map +1 -1
  251. package/esm/date-picker/panel/ExtraContent.d.ts +2 -2
  252. package/esm/date-picker/panel/ExtraContent.js +1 -1
  253. package/esm/date-picker/panel/ExtraContent.js.map +1 -1
  254. package/esm/date-picker/panel/PanelContent.d.ts +17 -17
  255. package/esm/date-picker/panel/PanelContent.js +7 -6
  256. package/esm/date-picker/panel/PanelContent.js.map +1 -1
  257. package/{es/date-picker/panel/DateRangePickerPanel.d.ts → esm/date-picker/panel/RangePanel.d.ts} +4 -12
  258. package/esm/date-picker/panel/{DateRangePickerPanel.js → RangePanel.js} +23 -17
  259. package/esm/date-picker/panel/RangePanel.js.map +1 -0
  260. package/{lib/date-picker/panel/DatePickerPanel.d.ts → esm/date-picker/panel/SinglePanel.d.ts} +5 -13
  261. package/esm/date-picker/panel/{DatePickerPanel.js → SinglePanel.js} +33 -27
  262. package/esm/date-picker/panel/SinglePanel.js.map +1 -0
  263. package/esm/date-picker/type.d.ts +138 -9
  264. package/esm/dialog/Dialog.js +1 -0
  265. package/esm/dialog/Dialog.js.map +1 -1
  266. package/esm/dialog/RenderDialog.js +44 -34
  267. package/esm/dialog/RenderDialog.js.map +1 -1
  268. package/esm/dialog/index.js +1 -0
  269. package/esm/dialog/index.js.map +1 -1
  270. package/esm/dialog/plugin.js +1 -0
  271. package/esm/dialog/plugin.js.map +1 -1
  272. package/esm/form/Form.js +6 -5
  273. package/esm/form/Form.js.map +1 -1
  274. package/esm/form/FormItem.js +5 -4
  275. package/esm/form/FormItem.js.map +1 -1
  276. package/esm/form/hooks/useFormItemStyle.js +5 -4
  277. package/esm/form/hooks/useFormItemStyle.js.map +1 -1
  278. package/esm/form/index.js +5 -4
  279. package/esm/form/index.js.map +1 -1
  280. package/esm/form/useInitialData.js +4 -3
  281. package/esm/form/useInitialData.js.map +1 -1
  282. package/esm/index.js +11 -6
  283. package/esm/index.js.map +1 -1
  284. package/esm/input/Input.js +1 -1
  285. package/esm/input/Input.js.map +1 -1
  286. package/esm/input/InputGroup.js +1 -1
  287. package/esm/input/InputGroup.js.map +1 -1
  288. package/esm/input-number/InputNumber.js +1 -1
  289. package/esm/input-number/InputNumber.js.map +1 -1
  290. package/esm/list/List.js +1 -1
  291. package/esm/list/List.js.map +1 -1
  292. package/esm/list/ListItem.js +1 -1
  293. package/esm/list/ListItem.js.map +1 -1
  294. package/esm/menu/HeadMenu.js +1 -1
  295. package/esm/menu/HeadMenu.js.map +1 -1
  296. package/esm/menu/Menu.js +1 -1
  297. package/esm/menu/Menu.js.map +1 -1
  298. package/esm/menu/MenuItem.js +1 -1
  299. package/esm/menu/MenuItem.js.map +1 -1
  300. package/esm/menu/SubMenu.js +2 -2
  301. package/esm/menu/SubMenu.js.map +1 -1
  302. package/esm/radio/Radio.js +1 -1
  303. package/esm/radio/RadioGroup.js +1 -1
  304. package/esm/radio/index.js +1 -1
  305. package/esm/slider/Slider.js +1 -1
  306. package/esm/slider/Slider.js.map +1 -1
  307. package/esm/table/BaseTable.js +1 -0
  308. package/esm/table/BaseTable.js.map +1 -1
  309. package/esm/table/EnhancedTable.js +3 -2
  310. package/esm/table/EnhancedTable.js.map +1 -1
  311. package/esm/table/FilterController.js +2 -2
  312. package/esm/table/PrimaryTable.js +3 -2
  313. package/esm/table/PrimaryTable.js.map +1 -1
  314. package/esm/table/TBody.js +6 -23
  315. package/esm/table/TBody.js.map +1 -1
  316. package/esm/table/TR.d.ts +2 -2
  317. package/esm/table/TR.js +4 -14
  318. package/esm/table/TR.js.map +1 -1
  319. package/esm/table/hooks/useColumnController.js +1 -1
  320. package/esm/table/hooks/useFilter.js +2 -2
  321. package/esm/table/hooks/useRowSelect.js +2 -2
  322. package/esm/table/hooks/useRowspanAndColspan.d.ts +10 -0
  323. package/esm/table/hooks/useRowspanAndColspan.js +74 -0
  324. package/esm/table/hooks/useRowspanAndColspan.js.map +1 -0
  325. package/esm/table/index.js +3 -2
  326. package/esm/table/index.js.map +1 -1
  327. package/esm/textarea/Textarea.js +2 -2
  328. package/esm/textarea/Textarea.js.map +1 -1
  329. package/esm/transfer/Transfer.js +1 -1
  330. package/esm/transfer/TransferList.js +1 -1
  331. package/esm/transfer/index.js +1 -1
  332. package/esm/tree/Tree.js +1 -1
  333. package/esm/tree/TreeItem.js +1 -1
  334. package/esm/tree/index.js +1 -1
  335. package/esm/tree-select/TreeSelect.js +1 -1
  336. package/esm/tree-select/index.js +1 -1
  337. package/esm/upload/index.js +1 -0
  338. package/esm/upload/index.js.map +1 -1
  339. package/esm/upload/themes/image-card.js +1 -0
  340. package/esm/upload/themes/image-card.js.map +1 -1
  341. package/esm/upload/upload.js +1 -0
  342. package/esm/upload/upload.js.map +1 -1
  343. package/lib/_chunks/{dep-6f4603f8.js → dep-92e2ca45.js} +2 -2
  344. package/lib/_chunks/{dep-6f4603f8.js.map → dep-92e2ca45.js.map} +1 -1
  345. package/lib/_chunks/{dep-1b0236bc.js → dep-b8f2445b.js} +1 -1
  346. package/lib/_chunks/{dep-1b0236bc.js.map → dep-b8f2445b.js.map} +1 -1
  347. package/lib/_chunks/{dep-202d2d2a.js → dep-cd7ea040.js} +1 -1
  348. package/lib/_chunks/{dep-202d2d2a.js.map → dep-cd7ea040.js.map} +1 -1
  349. package/lib/addon/Addon.js +1 -1
  350. package/lib/addon/Addon.js.map +1 -1
  351. package/lib/calendar/Calendar.js +1 -1
  352. package/lib/calendar/index.js +1 -1
  353. package/lib/card/Card.js +1 -1
  354. package/lib/card/Card.js.map +1 -1
  355. package/lib/cascader/Cascader.js +1 -1
  356. package/lib/cascader/components/Item.js +1 -1
  357. package/lib/cascader/components/Panel.js +1 -1
  358. package/lib/cascader/index.js +1 -1
  359. package/lib/checkbox/Checkbox.js +1 -1
  360. package/lib/checkbox/CheckboxGroup.js +1 -1
  361. package/lib/checkbox/index.js +1 -1
  362. package/lib/color-picker/ColorPicker.js +1 -1
  363. package/lib/color-picker/ColorPickerPanel.js +1 -1
  364. package/lib/color-picker/components/panel/header.js +1 -1
  365. package/lib/color-picker/components/panel/index.js +1 -1
  366. package/lib/color-picker/index.js +1 -1
  367. package/lib/comment/Comment.js +1 -1
  368. package/lib/comment/Comment.js.map +1 -1
  369. package/lib/common/Check.js +1 -1
  370. package/lib/common/Check.js.map +1 -1
  371. package/lib/date-picker/DatePicker.js +21 -28
  372. package/lib/date-picker/DatePicker.js.map +1 -1
  373. package/lib/date-picker/DatePickerPanel.d.ts +7 -0
  374. package/lib/date-picker/DatePickerPanel.js +343 -0
  375. package/lib/date-picker/DatePickerPanel.js.map +1 -0
  376. package/lib/date-picker/DateRangePicker.js +22 -15
  377. package/lib/date-picker/DateRangePicker.js.map +1 -1
  378. package/lib/date-picker/DateRangePickerPanel.d.ts +7 -0
  379. package/lib/date-picker/DateRangePickerPanel.js +451 -0
  380. package/lib/date-picker/DateRangePickerPanel.js.map +1 -0
  381. package/lib/date-picker/base/Cell.d.ts +1 -1
  382. package/lib/date-picker/base/Cell.js +5 -5
  383. package/lib/date-picker/base/Cell.js.map +1 -1
  384. package/lib/date-picker/base/Footer.js +3 -2
  385. package/lib/date-picker/base/Footer.js.map +1 -1
  386. package/lib/date-picker/base/Header.js +2 -2
  387. package/lib/date-picker/base/Header.js.map +1 -1
  388. package/lib/date-picker/base/Table.d.ts +3 -3
  389. package/lib/date-picker/base/Table.js +2 -2
  390. package/lib/date-picker/base/Table.js.map +1 -1
  391. package/lib/date-picker/defaultProps.js +0 -2
  392. package/lib/date-picker/defaultProps.js.map +1 -1
  393. package/lib/date-picker/hooks/useFormat.d.ts +4 -1
  394. package/lib/date-picker/hooks/useFormat.js +31 -19
  395. package/lib/date-picker/hooks/useFormat.js.map +1 -1
  396. package/lib/date-picker/hooks/useRange.d.ts +2 -2
  397. package/lib/date-picker/hooks/useRange.js +52 -113
  398. package/lib/date-picker/hooks/useRange.js.map +1 -1
  399. package/lib/date-picker/hooks/useRangeValue.d.ts +24 -0
  400. package/lib/date-picker/hooks/useRangeValue.js +162 -0
  401. package/lib/date-picker/hooks/useRangeValue.js.map +1 -0
  402. package/lib/date-picker/hooks/useSingle.d.ts +6 -10
  403. package/lib/date-picker/hooks/useSingle.js +52 -72
  404. package/lib/date-picker/hooks/useSingle.js.map +1 -1
  405. package/lib/date-picker/hooks/useSingleValue.d.ts +14 -0
  406. package/lib/date-picker/hooks/useSingleValue.js +106 -0
  407. package/lib/date-picker/hooks/useSingleValue.js.map +1 -0
  408. package/lib/date-picker/{panel → hooks}/useTableData.d.ts +2 -2
  409. package/lib/date-picker/{panel → hooks}/useTableData.js +0 -0
  410. package/lib/date-picker/hooks/useTableData.js.map +1 -0
  411. package/lib/date-picker/index.d.ts +4 -20
  412. package/lib/date-picker/index.js +20 -16
  413. package/lib/date-picker/index.js.map +1 -1
  414. package/lib/date-picker/panel/ExtraContent.d.ts +2 -2
  415. package/lib/date-picker/panel/ExtraContent.js +1 -1
  416. package/lib/date-picker/panel/ExtraContent.js.map +1 -1
  417. package/lib/date-picker/panel/PanelContent.d.ts +17 -17
  418. package/lib/date-picker/panel/PanelContent.js +7 -6
  419. package/lib/date-picker/panel/PanelContent.js.map +1 -1
  420. package/{esm/date-picker/panel/DateRangePickerPanel.d.ts → lib/date-picker/panel/RangePanel.d.ts} +4 -12
  421. package/lib/date-picker/panel/{DateRangePickerPanel.js → RangePanel.js} +24 -18
  422. package/lib/date-picker/panel/RangePanel.js.map +1 -0
  423. package/{esm/date-picker/panel/DatePickerPanel.d.ts → lib/date-picker/panel/SinglePanel.d.ts} +5 -13
  424. package/lib/date-picker/panel/{DatePickerPanel.js → SinglePanel.js} +33 -27
  425. package/lib/date-picker/panel/SinglePanel.js.map +1 -0
  426. package/lib/date-picker/type.d.ts +138 -9
  427. package/lib/dialog/Dialog.js +1 -0
  428. package/lib/dialog/Dialog.js.map +1 -1
  429. package/lib/dialog/RenderDialog.js +43 -33
  430. package/lib/dialog/RenderDialog.js.map +1 -1
  431. package/lib/dialog/index.js +1 -0
  432. package/lib/dialog/index.js.map +1 -1
  433. package/lib/dialog/plugin.js +1 -0
  434. package/lib/dialog/plugin.js.map +1 -1
  435. package/lib/form/Form.js +6 -5
  436. package/lib/form/Form.js.map +1 -1
  437. package/lib/form/FormItem.js +5 -4
  438. package/lib/form/FormItem.js.map +1 -1
  439. package/lib/form/hooks/useFormItemStyle.js +5 -4
  440. package/lib/form/hooks/useFormItemStyle.js.map +1 -1
  441. package/lib/form/index.js +5 -4
  442. package/lib/form/index.js.map +1 -1
  443. package/lib/form/useInitialData.js +4 -3
  444. package/lib/form/useInitialData.js.map +1 -1
  445. package/lib/index-lib.js +11 -6
  446. package/lib/index-lib.js.map +1 -1
  447. package/lib/index.js +11 -6
  448. package/lib/index.js.map +1 -1
  449. package/lib/input/Input.js +1 -1
  450. package/lib/input/Input.js.map +1 -1
  451. package/lib/input/InputGroup.js +1 -1
  452. package/lib/input/InputGroup.js.map +1 -1
  453. package/lib/input-number/InputNumber.js +1 -1
  454. package/lib/input-number/InputNumber.js.map +1 -1
  455. package/lib/list/List.js +1 -1
  456. package/lib/list/List.js.map +1 -1
  457. package/lib/list/ListItem.js +1 -1
  458. package/lib/list/ListItem.js.map +1 -1
  459. package/lib/menu/HeadMenu.js +1 -1
  460. package/lib/menu/HeadMenu.js.map +1 -1
  461. package/lib/menu/Menu.js +1 -1
  462. package/lib/menu/Menu.js.map +1 -1
  463. package/lib/menu/MenuItem.js +1 -1
  464. package/lib/menu/MenuItem.js.map +1 -1
  465. package/lib/menu/SubMenu.js +2 -2
  466. package/lib/menu/SubMenu.js.map +1 -1
  467. package/lib/radio/Radio.js +1 -1
  468. package/lib/radio/RadioGroup.js +1 -1
  469. package/lib/radio/index.js +1 -1
  470. package/lib/slider/Slider.js +1 -1
  471. package/lib/slider/Slider.js.map +1 -1
  472. package/lib/table/BaseTable.js +1 -0
  473. package/lib/table/BaseTable.js.map +1 -1
  474. package/lib/table/EnhancedTable.js +3 -2
  475. package/lib/table/EnhancedTable.js.map +1 -1
  476. package/lib/table/FilterController.js +2 -2
  477. package/lib/table/PrimaryTable.js +3 -2
  478. package/lib/table/PrimaryTable.js.map +1 -1
  479. package/lib/table/TBody.js +6 -23
  480. package/lib/table/TBody.js.map +1 -1
  481. package/lib/table/TR.d.ts +2 -2
  482. package/lib/table/TR.js +4 -14
  483. package/lib/table/TR.js.map +1 -1
  484. package/lib/table/hooks/useColumnController.js +1 -1
  485. package/lib/table/hooks/useFilter.js +2 -2
  486. package/lib/table/hooks/useRowSelect.js +2 -2
  487. package/lib/table/hooks/useRowspanAndColspan.d.ts +10 -0
  488. package/lib/table/hooks/useRowspanAndColspan.js +78 -0
  489. package/lib/table/hooks/useRowspanAndColspan.js.map +1 -0
  490. package/lib/table/index.js +3 -2
  491. package/lib/table/index.js.map +1 -1
  492. package/lib/textarea/Textarea.js +2 -2
  493. package/lib/textarea/Textarea.js.map +1 -1
  494. package/lib/transfer/Transfer.js +1 -1
  495. package/lib/transfer/TransferList.js +1 -1
  496. package/lib/transfer/index.js +1 -1
  497. package/lib/tree/Tree.js +1 -1
  498. package/lib/tree/TreeItem.js +1 -1
  499. package/lib/tree/index.js +1 -1
  500. package/lib/tree-select/TreeSelect.js +1 -1
  501. package/lib/tree-select/index.js +1 -1
  502. package/lib/upload/index.js +1 -0
  503. package/lib/upload/index.js.map +1 -1
  504. package/lib/upload/themes/image-card.js +1 -0
  505. package/lib/upload/themes/image-card.js.map +1 -1
  506. package/lib/upload/upload.js +1 -0
  507. package/lib/upload/upload.js.map +1 -1
  508. package/package.json +1 -1
  509. package/es/date-picker/panel/DatePickerPanel.js.map +0 -1
  510. package/es/date-picker/panel/DateRangePickerPanel.js.map +0 -1
  511. package/es/date-picker/panel/useTableData.js.map +0 -1
  512. package/esm/date-picker/panel/DatePickerPanel.js.map +0 -1
  513. package/esm/date-picker/panel/DateRangePickerPanel.js.map +0 -1
  514. package/esm/date-picker/panel/useTableData.js.map +0 -1
  515. package/lib/date-picker/panel/DatePickerPanel.js.map +0 -1
  516. package/lib/date-picker/panel/DateRangePickerPanel.js.map +0 -1
  517. package/lib/date-picker/panel/useTableData.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"BaseTable.js","sources":["../../src/table/BaseTable.tsx"],"sourcesContent":["import React, { useRef, useMemo, useImperativeHandle, forwardRef } from 'react';\nimport pick from 'lodash/pick';\nimport classNames from 'classnames';\n\nimport Loading from '../loading';\nimport TBody, { extendTableProps } from './TBody';\nimport { Affix } from '../affix';\nimport { ROW_LISTENERS } from './TR';\nimport THead from './THead';\nimport TFoot from './TFoot';\n\nimport useTableHeader from './hooks/useTableHeader';\nimport useFixed from './hooks/useFixed';\nimport usePagination from './hooks/usePagination';\nimport { BaseTableProps } from './interface';\nimport useStyle, { formatCSSUnit } from './hooks/useStyle';\nimport useClassName from './hooks/useClassName';\n\nimport { StyledProps } from '../common';\n\nexport const BASE_TABLE_EVENTS = ['page-change', 'cell-click', 'scroll', 'scrollX', 'scrollY'];\nexport const BASE_TABLE_ALL_EVENTS = ROW_LISTENERS.map((t) => `row-${t}`).concat(BASE_TABLE_EVENTS);\n\nexport interface TableListeners {\n [key: string]: Function;\n}\n\nexport interface TBaseTableProps extends BaseTableProps, StyledProps {}\n\nconst BaseTable = forwardRef((props: TBaseTableProps, ref) => {\n const { tableLayout, height, data, columns, style } = props;\n const tableRef = useRef<HTMLDivElement>();\n const tableElmRef = useRef<HTMLTableElement>();\n const { tableLayoutClasses, tableBaseClass, tableColFixedClasses } = useClassName();\n // 表格基础样式类\n const { tableClasses, tableContentStyles, tableElementStyles } = useStyle(props);\n // const [global] = useLocaleReceiver('table');\n // 固定表头和固定列逻辑\n const {\n affixHeaderRef,\n scrollbarWidth,\n // virtualScrollHeaderPos,\n tableWidth,\n tableContentRef,\n isFixedHeader,\n isWidthOverflow,\n isFixedColumn,\n thWidthList,\n showColumnShadow,\n showAffixHeader,\n rowAndColFixedPosition,\n // refreshTable,\n onTableContentScroll,\n updateHeaderScroll,\n } = useFixed(props);\n const { isMultipleHeader, spansAndLeafNodes, thList } = useTableHeader({ columns: props.columns });\n const { dataSource, isPaginateData, renderPagination } = usePagination(props);\n\n const dynamicBaseTableClasses = classNames(\n tableClasses.concat({\n [tableBaseClass.headerFixed]: isFixedHeader,\n [tableBaseClass.columnFixed]: isFixedColumn,\n [tableBaseClass.widthOverflow]: isWidthOverflow,\n [tableBaseClass.multipleHeader]: isMultipleHeader,\n [tableColFixedClasses.leftShadow]: showColumnShadow.left,\n [tableColFixedClasses.rightShadow]: showColumnShadow.right,\n }),\n );\n\n const tableElmClasses = classNames([\n [tableLayoutClasses[tableLayout || 'fixed']],\n { [tableBaseClass.fullHeight]: height },\n ]);\n\n // const isVirtual = computed(() => type === 'virtual' && props.data?.length > (props.scroll?.threshold || 100));\n\n const showRightDivider = useMemo(\n () => props.bordered && isFixedHeader && ((isMultipleHeader && isWidthOverflow) || !isMultipleHeader),\n [isFixedHeader, isMultipleHeader, isWidthOverflow, props.bordered],\n );\n\n useImperativeHandle(ref, () => ({\n tableElement: tableRef.current,\n tableHtmlElement: tableElmRef.current,\n tableContentElement: tableContentRef.current,\n }));\n\n const onFixedChange = () => {\n const timer = setTimeout(() => {\n updateHeaderScroll();\n clearTimeout(timer);\n }, 0);\n };\n\n // const { type, rowHeight, bufferSize = 20, isFixedRowHeight = false } = props.scroll || {};\n // const { data } = toRefs<any>(props);\n\n // let lastScrollY = -1;\n const onInnerScroll = onTableContentScroll;\n\n const newData = isPaginateData ? dataSource : data;\n\n const defaultColWidth = props.tableLayout === 'fixed' && isWidthOverflow ? '100px' : undefined;\n const colgroup = (\n <colgroup>\n {(spansAndLeafNodes?.leafColumns || columns).map((col, index) => (\n <col key={col.colKey || index} style={{ width: formatCSSUnit(col.width) || defaultColWidth }}></col>\n ))}\n </colgroup>\n );\n\n const affixedHeader = Boolean(props.headerAffixedTop && tableWidth) && (\n <div\n ref={affixHeaderRef}\n style={{ width: `${tableWidth}px`, opacity: Number(showAffixHeader) }}\n className={classNames({ [tableBaseClass.affixedHeaderElm]: props.headerAffixedTop })}\n >\n <table className={classNames(tableElmClasses)} style={{ ...tableElementStyles, width: `${tableWidth}px` }}>\n {colgroup}\n <THead\n isFixedHeader={isFixedHeader}\n rowAndColFixedPosition={rowAndColFixedPosition}\n isMultipleHeader={isMultipleHeader}\n bordered={props.bordered}\n spansAndLeafNodes={spansAndLeafNodes}\n thList={thList}\n thWidthList={thWidthList}\n />\n </table>\n </div>\n );\n\n // const translate = `translate(0, ${this.scrollHeight}px)`;\n // const virtualStyle = {\n // transform: translate,\n // '-ms-transform': translate,\n // '-moz-transform': translate,\n // '-webkit-transform': translate,\n // };\n const tableBodyProps = {\n rowAndColFixedPosition,\n showColumnShadow,\n // data: isVirtual ? visibleData : data,\n data: newData,\n columns: spansAndLeafNodes.leafColumns,\n scroll: props.scroll,\n tableElm: tableRef.current,\n tableContentElm: tableContentRef.current,\n tableWidth,\n isWidthOverflow,\n rowKey: props.rowKey || 'id',\n // 虚拟滚动相关属性\n // isVirtual,\n // translateY: translateY,\n // scrollType: scrollType,\n // rowHeight: rowHeight,\n // trs: trs,\n // bufferSize: bufferSize,\n // handleRowMounted: handleRowMounted,\n renderExpandedRow: props.renderExpandedRow,\n ...pick(props, extendTableProps),\n };\n const tableContent = (\n <div ref={tableContentRef} className={tableBaseClass.content} style={tableContentStyles} onScroll={onInnerScroll}>\n {/* {this.isVirtual && <div className={this.virtualScrollClasses.cursor} style={virtualStyle} />} */}\n <table ref={tableElmRef} className={classNames(tableElmClasses)} style={tableElementStyles}>\n {colgroup}\n <THead\n isFixedHeader={isFixedHeader}\n rowAndColFixedPosition={rowAndColFixedPosition}\n isMultipleHeader={isMultipleHeader}\n bordered={props.bordered}\n spansAndLeafNodes={spansAndLeafNodes}\n thList={thList}\n />\n <TBody {...tableBodyProps} />\n <TFoot\n rowKey={props.rowKey}\n isFixedHeader={isFixedHeader}\n rowAndColFixedPosition={rowAndColFixedPosition}\n footData={props.footData}\n columns={columns}\n rowAttributes={props.rowAttributes}\n rowClassName={props.rowClassName}\n ></TFoot>\n </table>\n </div>\n );\n\n const { loading, loadingProps } = props;\n const customLoadingText = loading;\n const loadingContent = loading !== undefined && (\n <Loading\n loading={!!loading}\n text={customLoadingText}\n attach={() => tableRef.current}\n showOverlay\n {...loadingProps}\n ></Loading>\n );\n\n const { topContent, bottomContent } = props;\n return (\n <div ref={tableRef} className={classNames(dynamicBaseTableClasses)} style={{ position: 'relative', ...style }}>\n {!!topContent && <div className={tableBaseClass.topContent}>{topContent}</div>}\n {!!props.headerAffixedTop &&\n (props.headerAffixedTop ? (\n <Affix offsetTop={0} {...props.headerAffixProps} onFixedChange={onFixedChange}>\n {affixedHeader}\n </Affix>\n ) : (\n isFixedHeader && affixedHeader\n ))}\n {tableContent}\n {loadingContent}\n {showRightDivider && (\n <div\n className={tableBaseClass.scrollbarDivider}\n style={{ right: `${scrollbarWidth}px`, height: `${tableContentRef.current?.offsetHeight}px` }}\n ></div>\n )}\n {!!bottomContent && <div className={tableBaseClass.bottomContent}>{bottomContent}</div>}\n {renderPagination()}\n </div>\n );\n});\n\nBaseTable.displayName = 'BaseTable';\n\nexport default BaseTable;\n"],"names":["BASE_TABLE_EVENTS","BASE_TABLE_ALL_EVENTS","ROW_LISTENERS","map","t","concat","BaseTable","forwardRef","props","ref","tableLayout","height","data","columns","style","tableRef","useRef","tableElmRef","useClassName","tableLayoutClasses","tableBaseClass","tableColFixedClasses","useStyle","tableClasses","tableContentStyles","tableElementStyles","useFixed","affixHeaderRef","scrollbarWidth","tableWidth","tableContentRef","isFixedHeader","isWidthOverflow","isFixedColumn","thWidthList","showColumnShadow","showAffixHeader","rowAndColFixedPosition","onTableContentScroll","updateHeaderScroll","useTableHeader","isMultipleHeader","spansAndLeafNodes","thList","usePagination","dataSource","isPaginateData","renderPagination","dynamicBaseTableClasses","classNames","headerFixed","columnFixed","widthOverflow","multipleHeader","leftShadow","left","rightShadow","right","tableElmClasses","fullHeight","showRightDivider","useMemo","bordered","useImperativeHandle","tableElement","current","tableHtmlElement","tableContentElement","onFixedChange","timer","setTimeout","clearTimeout","onInnerScroll","newData","defaultColWidth","colgroup","React","createElement","leafColumns","col","index","key","colKey","width","formatCSSUnit","affixedHeader","Boolean","headerAffixedTop","opacity","Number","className","affixedHeaderElm","THead","tableBodyProps","scroll","tableElm","tableContentElm","rowKey","renderExpandedRow","pick","extendTableProps","tableContent","content","onScroll","TBody","TFoot","footData","rowAttributes","rowClassName","loading","loadingProps","customLoadingText","loadingContent","Loading","text","attach","showOverlay","topContent","bottomContent","position","Affix","offsetTop","headerAffixProps","scrollbarDivider","offsetHeight","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"BaseTable.js","sources":["../../src/table/BaseTable.tsx"],"sourcesContent":["import React, { useRef, useMemo, useImperativeHandle, forwardRef } from 'react';\nimport pick from 'lodash/pick';\nimport classNames from 'classnames';\n\nimport Loading from '../loading';\nimport TBody, { extendTableProps } from './TBody';\nimport { Affix } from '../affix';\nimport { ROW_LISTENERS } from './TR';\nimport THead from './THead';\nimport TFoot from './TFoot';\n\nimport useTableHeader from './hooks/useTableHeader';\nimport useFixed from './hooks/useFixed';\nimport usePagination from './hooks/usePagination';\nimport { BaseTableProps } from './interface';\nimport useStyle, { formatCSSUnit } from './hooks/useStyle';\nimport useClassName from './hooks/useClassName';\n\nimport { StyledProps } from '../common';\n\nexport const BASE_TABLE_EVENTS = ['page-change', 'cell-click', 'scroll', 'scrollX', 'scrollY'];\nexport const BASE_TABLE_ALL_EVENTS = ROW_LISTENERS.map((t) => `row-${t}`).concat(BASE_TABLE_EVENTS);\n\nexport interface TableListeners {\n [key: string]: Function;\n}\n\nexport interface TBaseTableProps extends BaseTableProps, StyledProps {}\n\nconst BaseTable = forwardRef((props: TBaseTableProps, ref) => {\n const { tableLayout, height, data, columns, style } = props;\n const tableRef = useRef<HTMLDivElement>();\n const tableElmRef = useRef<HTMLTableElement>();\n const { tableLayoutClasses, tableBaseClass, tableColFixedClasses } = useClassName();\n // 表格基础样式类\n const { tableClasses, tableContentStyles, tableElementStyles } = useStyle(props);\n // const [global] = useLocaleReceiver('table');\n // 固定表头和固定列逻辑\n const {\n affixHeaderRef,\n scrollbarWidth,\n // virtualScrollHeaderPos,\n tableWidth,\n tableContentRef,\n isFixedHeader,\n isWidthOverflow,\n isFixedColumn,\n thWidthList,\n showColumnShadow,\n showAffixHeader,\n rowAndColFixedPosition,\n // refreshTable,\n onTableContentScroll,\n updateHeaderScroll,\n } = useFixed(props);\n const { isMultipleHeader, spansAndLeafNodes, thList } = useTableHeader({ columns: props.columns });\n const { dataSource, isPaginateData, renderPagination } = usePagination(props);\n\n const dynamicBaseTableClasses = classNames(\n tableClasses.concat({\n [tableBaseClass.headerFixed]: isFixedHeader,\n [tableBaseClass.columnFixed]: isFixedColumn,\n [tableBaseClass.widthOverflow]: isWidthOverflow,\n [tableBaseClass.multipleHeader]: isMultipleHeader,\n [tableColFixedClasses.leftShadow]: showColumnShadow.left,\n [tableColFixedClasses.rightShadow]: showColumnShadow.right,\n }),\n );\n\n const tableElmClasses = classNames([\n [tableLayoutClasses[tableLayout || 'fixed']],\n { [tableBaseClass.fullHeight]: height },\n ]);\n\n // const isVirtual = computed(() => type === 'virtual' && props.data?.length > (props.scroll?.threshold || 100));\n\n const showRightDivider = useMemo(\n () => props.bordered && isFixedHeader && ((isMultipleHeader && isWidthOverflow) || !isMultipleHeader),\n [isFixedHeader, isMultipleHeader, isWidthOverflow, props.bordered],\n );\n\n useImperativeHandle(ref, () => ({\n tableElement: tableRef.current,\n tableHtmlElement: tableElmRef.current,\n tableContentElement: tableContentRef.current,\n }));\n\n const onFixedChange = () => {\n const timer = setTimeout(() => {\n updateHeaderScroll();\n clearTimeout(timer);\n }, 0);\n };\n\n // const { type, rowHeight, bufferSize = 20, isFixedRowHeight = false } = props.scroll || {};\n // const { data } = toRefs<any>(props);\n\n // let lastScrollY = -1;\n const onInnerScroll = onTableContentScroll;\n\n const newData = isPaginateData ? dataSource : data;\n\n const defaultColWidth = props.tableLayout === 'fixed' && isWidthOverflow ? '100px' : undefined;\n const colgroup = (\n <colgroup>\n {(spansAndLeafNodes?.leafColumns || columns).map((col, index) => (\n <col key={col.colKey || index} style={{ width: formatCSSUnit(col.width) || defaultColWidth }}></col>\n ))}\n </colgroup>\n );\n\n const affixedHeader = Boolean(props.headerAffixedTop && tableWidth) && (\n <div\n ref={affixHeaderRef}\n style={{ width: `${tableWidth}px`, opacity: Number(showAffixHeader) }}\n className={classNames({ [tableBaseClass.affixedHeaderElm]: props.headerAffixedTop })}\n >\n <table className={classNames(tableElmClasses)} style={{ ...tableElementStyles, width: `${tableWidth}px` }}>\n {colgroup}\n <THead\n isFixedHeader={isFixedHeader}\n rowAndColFixedPosition={rowAndColFixedPosition}\n isMultipleHeader={isMultipleHeader}\n bordered={props.bordered}\n spansAndLeafNodes={spansAndLeafNodes}\n thList={thList}\n thWidthList={thWidthList}\n />\n </table>\n </div>\n );\n\n // const translate = `translate(0, ${this.scrollHeight}px)`;\n // const virtualStyle = {\n // transform: translate,\n // '-ms-transform': translate,\n // '-moz-transform': translate,\n // '-webkit-transform': translate,\n // };\n const tableBodyProps = {\n rowAndColFixedPosition,\n showColumnShadow,\n // data: isVirtual ? visibleData : data,\n data: newData,\n columns: spansAndLeafNodes.leafColumns,\n scroll: props.scroll,\n tableElm: tableRef.current,\n tableContentElm: tableContentRef.current,\n tableWidth,\n isWidthOverflow,\n rowKey: props.rowKey || 'id',\n // 虚拟滚动相关属性\n // isVirtual,\n // translateY: translateY,\n // scrollType: scrollType,\n // rowHeight: rowHeight,\n // trs: trs,\n // bufferSize: bufferSize,\n // handleRowMounted: handleRowMounted,\n renderExpandedRow: props.renderExpandedRow,\n ...pick(props, extendTableProps),\n };\n const tableContent = (\n <div ref={tableContentRef} className={tableBaseClass.content} style={tableContentStyles} onScroll={onInnerScroll}>\n {/* {this.isVirtual && <div className={this.virtualScrollClasses.cursor} style={virtualStyle} />} */}\n <table ref={tableElmRef} className={classNames(tableElmClasses)} style={tableElementStyles}>\n {colgroup}\n <THead\n isFixedHeader={isFixedHeader}\n rowAndColFixedPosition={rowAndColFixedPosition}\n isMultipleHeader={isMultipleHeader}\n bordered={props.bordered}\n spansAndLeafNodes={spansAndLeafNodes}\n thList={thList}\n />\n <TBody {...tableBodyProps} />\n <TFoot\n rowKey={props.rowKey}\n isFixedHeader={isFixedHeader}\n rowAndColFixedPosition={rowAndColFixedPosition}\n footData={props.footData}\n columns={columns}\n rowAttributes={props.rowAttributes}\n rowClassName={props.rowClassName}\n ></TFoot>\n </table>\n </div>\n );\n\n const { loading, loadingProps } = props;\n const customLoadingText = loading;\n const loadingContent = loading !== undefined && (\n <Loading\n loading={!!loading}\n text={customLoadingText}\n attach={() => tableRef.current}\n showOverlay\n {...loadingProps}\n ></Loading>\n );\n\n const { topContent, bottomContent } = props;\n return (\n <div ref={tableRef} className={classNames(dynamicBaseTableClasses)} style={{ position: 'relative', ...style }}>\n {!!topContent && <div className={tableBaseClass.topContent}>{topContent}</div>}\n {!!props.headerAffixedTop &&\n (props.headerAffixedTop ? (\n <Affix offsetTop={0} {...props.headerAffixProps} onFixedChange={onFixedChange}>\n {affixedHeader}\n </Affix>\n ) : (\n isFixedHeader && affixedHeader\n ))}\n {tableContent}\n {loadingContent}\n {showRightDivider && (\n <div\n className={tableBaseClass.scrollbarDivider}\n style={{ right: `${scrollbarWidth}px`, height: `${tableContentRef.current?.offsetHeight}px` }}\n ></div>\n )}\n {!!bottomContent && <div className={tableBaseClass.bottomContent}>{bottomContent}</div>}\n {renderPagination()}\n </div>\n );\n});\n\nBaseTable.displayName = 'BaseTable';\n\nexport default BaseTable;\n"],"names":["BASE_TABLE_EVENTS","BASE_TABLE_ALL_EVENTS","ROW_LISTENERS","map","t","concat","BaseTable","forwardRef","props","ref","tableLayout","height","data","columns","style","tableRef","useRef","tableElmRef","useClassName","tableLayoutClasses","tableBaseClass","tableColFixedClasses","useStyle","tableClasses","tableContentStyles","tableElementStyles","useFixed","affixHeaderRef","scrollbarWidth","tableWidth","tableContentRef","isFixedHeader","isWidthOverflow","isFixedColumn","thWidthList","showColumnShadow","showAffixHeader","rowAndColFixedPosition","onTableContentScroll","updateHeaderScroll","useTableHeader","isMultipleHeader","spansAndLeafNodes","thList","usePagination","dataSource","isPaginateData","renderPagination","dynamicBaseTableClasses","classNames","headerFixed","columnFixed","widthOverflow","multipleHeader","leftShadow","left","rightShadow","right","tableElmClasses","fullHeight","showRightDivider","useMemo","bordered","useImperativeHandle","tableElement","current","tableHtmlElement","tableContentElement","onFixedChange","timer","setTimeout","clearTimeout","onInnerScroll","newData","defaultColWidth","colgroup","React","createElement","leafColumns","col","index","key","colKey","width","formatCSSUnit","affixedHeader","Boolean","headerAffixedTop","opacity","Number","className","affixedHeaderElm","THead","tableBodyProps","scroll","tableElm","tableContentElm","rowKey","renderExpandedRow","pick","extendTableProps","tableContent","content","onScroll","TBody","TFoot","footData","rowAttributes","rowClassName","loading","loadingProps","customLoadingText","loadingContent","Loading","text","attach","showOverlay","topContent","bottomContent","position","Affix","offsetTop","headerAffixProps","scrollbarDivider","offsetHeight","displayName"],"mappings":"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"}
@@ -103,6 +103,7 @@ import '../_common/js/utils/observe.js';
103
103
  import '../locale/LocalReceiver.js';
104
104
  import '../config-provider/index.js';
105
105
  import '../config-provider/ConfigProvider.js';
106
+ import './hooks/useRowspanAndColspan.js';
106
107
  import '../affix/index.js';
107
108
  import '../affix/Affix.js';
108
109
  import '../affix/defaultProps.js';
@@ -197,7 +198,7 @@ import '../_chunks/dep-99ccf984.js';
197
198
  import '../_chunks/dep-b8db0e27.js';
198
199
  import '../_chunks/dep-b029028f.js';
199
200
  import '../checkbox/index.js';
200
- import '../_chunks/dep-a1ce2324.js';
201
+ import '../_chunks/dep-3a109495.js';
201
202
  import '../common/Check.js';
202
203
  import '../checkbox/defaultProps.js';
203
204
  import '../checkbox/style/index.js';
@@ -211,7 +212,7 @@ import '../_util/useSetState.js';
211
212
  import './hooks/useRowExpand.js';
212
213
  import './hooks/useRowSelect.js';
213
214
  import '../radio/index.js';
214
- import '../_chunks/dep-619d2589.js';
215
+ import '../_chunks/dep-aec4b56c.js';
215
216
  import '../radio/defaultProps.js';
216
217
  import '../radio/style/index.js';
217
218
  import '../radio/type.js';
@@ -1 +1 @@
1
- {"version":3,"file":"EnhancedTable.js","sources":["../../src/table/EnhancedTable.tsx"],"sourcesContent":["import React, { forwardRef, useImperativeHandle } from 'react';\nimport PrimaryTable from './PrimaryTable';\nimport { PrimaryTableCol, TableRowData, DragSortContext } from './type';\nimport useTreeData from './hooks/useTreeData';\nimport useTreeSelect from './hooks/useTreeSelect';\nimport { EnhancedTableProps, PrimaryTableProps } from './interface';\n\nimport { StyledProps } from '../common';\n\nexport interface TEnhancedTableProps extends EnhancedTableProps, StyledProps {}\n\nconst EnhancedTable = forwardRef((props: TEnhancedTableProps, ref) => {\n const { tree, columns, style, className } = props;\n\n // treeInstanceFunctions 属于对外暴露的 Ref 方法\n const { store, dataSource, formatTreeColumn, swapData, ...treeInstanceFunctions } = useTreeData(props);\n\n const treeDataMap = store?.treeDataMap;\n\n const { onInnerSelectChange } = useTreeSelect(props, treeDataMap);\n\n // 影响列和单元格内容的因素有:树形节点需要添加操作符 [+] [-]\n const getColumns = (columns: PrimaryTableCol<TableRowData>[]) => {\n const arr: PrimaryTableCol<TableRowData>[] = [];\n for (let i = 0, len = columns.length; i < len; i++) {\n let item = { ...columns[i] };\n item = formatTreeColumn(item);\n if (item.children?.length) {\n item.children = getColumns(item.children);\n }\n // 多级表头和自定义列配置特殊逻辑:要么子节点不存在,要么子节点长度大于 1,方便做自定义列配置\n if (!item.children || item.children?.length) {\n arr.push(item);\n }\n }\n return arr;\n };\n\n const tColumns = (() => {\n // 暂时只有树形结构需要处理 column.cell\n const isTreeData = !tree || !Object.keys(tree).length;\n return isTreeData ? columns : getColumns(columns);\n })();\n\n useImperativeHandle(ref, () => ({ ...treeInstanceFunctions }));\n\n const onDragSortChange = (params: DragSortContext<TableRowData>) => {\n if (props.beforeDragSort && !props.beforeDragSort(params)) return;\n swapData({\n data: params.data,\n current: params.current,\n target: params.target,\n currentIndex: params.currentIndex,\n targetIndex: params.targetIndex,\n });\n props.onDragSort?.(params);\n };\n\n const primaryTableProps: PrimaryTableProps = {\n ...props,\n data: dataSource,\n columns: tColumns,\n // 树形结构不允许本地数据分页\n disableDataPage: Boolean(tree && Object.keys(tree).length),\n onSelectChange: onInnerSelectChange,\n onDragSort: onDragSortChange,\n style,\n className,\n };\n return <PrimaryTable {...primaryTableProps} />;\n});\n\nEnhancedTable.displayName = 'EnhancedTable';\n\nexport default EnhancedTable;\n"],"names":["EnhancedTable","forwardRef","props","ref","tree","columns","style","className","useTreeData","store","dataSource","formatTreeColumn","swapData","treeInstanceFunctions","treeDataMap","useTreeSelect","onInnerSelectChange","getColumns","columns2","arr","i","len","length","item","children","push","tColumns","isTreeData","Object","keys","useImperativeHandle","onDragSortChange","params","beforeDragSort","data","current","target","currentIndex","targetIndex","onDragSort","primaryTableProps","disableDataPage","Boolean","onSelectChange","React","createElement","PrimaryTable","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"EnhancedTable.js","sources":["../../src/table/EnhancedTable.tsx"],"sourcesContent":["import React, { forwardRef, useImperativeHandle } from 'react';\nimport PrimaryTable from './PrimaryTable';\nimport { PrimaryTableCol, TableRowData, DragSortContext } from './type';\nimport useTreeData from './hooks/useTreeData';\nimport useTreeSelect from './hooks/useTreeSelect';\nimport { EnhancedTableProps, PrimaryTableProps } from './interface';\n\nimport { StyledProps } from '../common';\n\nexport interface TEnhancedTableProps extends EnhancedTableProps, StyledProps {}\n\nconst EnhancedTable = forwardRef((props: TEnhancedTableProps, ref) => {\n const { tree, columns, style, className } = props;\n\n // treeInstanceFunctions 属于对外暴露的 Ref 方法\n const { store, dataSource, formatTreeColumn, swapData, ...treeInstanceFunctions } = useTreeData(props);\n\n const treeDataMap = store?.treeDataMap;\n\n const { onInnerSelectChange } = useTreeSelect(props, treeDataMap);\n\n // 影响列和单元格内容的因素有:树形节点需要添加操作符 [+] [-]\n const getColumns = (columns: PrimaryTableCol<TableRowData>[]) => {\n const arr: PrimaryTableCol<TableRowData>[] = [];\n for (let i = 0, len = columns.length; i < len; i++) {\n let item = { ...columns[i] };\n item = formatTreeColumn(item);\n if (item.children?.length) {\n item.children = getColumns(item.children);\n }\n // 多级表头和自定义列配置特殊逻辑:要么子节点不存在,要么子节点长度大于 1,方便做自定义列配置\n if (!item.children || item.children?.length) {\n arr.push(item);\n }\n }\n return arr;\n };\n\n const tColumns = (() => {\n // 暂时只有树形结构需要处理 column.cell\n const isTreeData = !tree || !Object.keys(tree).length;\n return isTreeData ? columns : getColumns(columns);\n })();\n\n useImperativeHandle(ref, () => ({ ...treeInstanceFunctions }));\n\n const onDragSortChange = (params: DragSortContext<TableRowData>) => {\n if (props.beforeDragSort && !props.beforeDragSort(params)) return;\n swapData({\n data: params.data,\n current: params.current,\n target: params.target,\n currentIndex: params.currentIndex,\n targetIndex: params.targetIndex,\n });\n props.onDragSort?.(params);\n };\n\n const primaryTableProps: PrimaryTableProps = {\n ...props,\n data: dataSource,\n columns: tColumns,\n // 树形结构不允许本地数据分页\n disableDataPage: Boolean(tree && Object.keys(tree).length),\n onSelectChange: onInnerSelectChange,\n onDragSort: onDragSortChange,\n style,\n className,\n };\n return <PrimaryTable {...primaryTableProps} />;\n});\n\nEnhancedTable.displayName = 'EnhancedTable';\n\nexport default EnhancedTable;\n"],"names":["EnhancedTable","forwardRef","props","ref","tree","columns","style","className","useTreeData","store","dataSource","formatTreeColumn","swapData","treeInstanceFunctions","treeDataMap","useTreeSelect","onInnerSelectChange","getColumns","columns2","arr","i","len","length","item","children","push","tColumns","isTreeData","Object","keys","useImperativeHandle","onDragSortChange","params","beforeDragSort","data","current","target","currentIndex","targetIndex","onDragSort","primaryTableProps","disableDataPage","Boolean","onSelectChange","React","createElement","PrimaryTable","displayName"],"mappings":"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"}
@@ -73,7 +73,7 @@ import '../_util/useWindowSize.js';
73
73
  import '../popup/defaultProps.js';
74
74
  import '../popup/style/index.js';
75
75
  import '../popup/type.js';
76
- import '../_chunks/dep-a1ce2324.js';
76
+ import '../_chunks/dep-3a109495.js';
77
77
  import '../_util/forwardRefWithStatics.js';
78
78
  import 'hoist-non-react-statics';
79
79
  import '../common/Check.js';
@@ -84,7 +84,7 @@ import '../_chunks/dep-1feb6aff.js';
84
84
  import '../checkbox/defaultProps.js';
85
85
  import '../checkbox/style/index.js';
86
86
  import '../checkbox/type.js';
87
- import '../_chunks/dep-619d2589.js';
87
+ import '../_chunks/dep-aec4b56c.js';
88
88
  import '../_util/useCommonClassName.js';
89
89
  import '../radio/defaultProps.js';
90
90
  import '../radio/style/index.js';
@@ -110,6 +110,7 @@ import '../_common/js/utils/observe.js';
110
110
  import '../locale/LocalReceiver.js';
111
111
  import '../config-provider/index.js';
112
112
  import '../config-provider/ConfigProvider.js';
113
+ import './hooks/useRowspanAndColspan.js';
113
114
  import '../affix/index.js';
114
115
  import '../affix/Affix.js';
115
116
  import '../affix/defaultProps.js';
@@ -202,7 +203,7 @@ import '../_chunks/dep-99ccf984.js';
202
203
  import '../_chunks/dep-b8db0e27.js';
203
204
  import '../_chunks/dep-b029028f.js';
204
205
  import '../checkbox/index.js';
205
- import '../_chunks/dep-a1ce2324.js';
206
+ import '../_chunks/dep-3a109495.js';
206
207
  import '../common/Check.js';
207
208
  import '../checkbox/defaultProps.js';
208
209
  import '../checkbox/style/index.js';
@@ -214,7 +215,7 @@ import '../_util/useDialogEsc.js';
214
215
  import '../dialog/defaultProps.js';
215
216
  import '../_util/useSetState.js';
216
217
  import '../radio/index.js';
217
- import '../_chunks/dep-619d2589.js';
218
+ import '../_chunks/dep-aec4b56c.js';
218
219
  import '../radio/defaultProps.js';
219
220
  import '../radio/style/index.js';
220
221
  import '../radio/type.js';
@@ -1 +1 @@
1
- {"version":3,"file":"PrimaryTable.js","sources":["../../src/table/PrimaryTable.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport get from 'lodash/get';\nimport classNames from 'classnames';\nimport BaseTable from './BaseTable';\nimport useColumnController from './hooks/useColumnController';\nimport useRowExpand from './hooks/useRowExpand';\nimport useTableHeader, { renderTitle } from './hooks/useTableHeader';\nimport useRowSelect from './hooks/useRowSelect';\nimport { TdPrimaryTableProps, PrimaryTableCol, TableRowData, PrimaryTableCellParams } from './type';\nimport useSorter from './hooks/useSorter';\nimport useFilter from './hooks/useFilter';\nimport useDragSort from './hooks/useDragSort';\nimport useAsyncLoading from './hooks/useAsyncLoading';\nimport { PageInfo } from '../pagination';\nimport useClassName from './hooks/useClassName';\nimport { BaseTableProps, PrimaryTableProps } from './interface';\nimport EditableCell from './EditableCell';\n\nimport { StyledProps } from '../common';\n\nexport { BASE_TABLE_ALL_EVENTS } from './BaseTable';\n\nexport interface TPrimaryTableProps extends PrimaryTableProps, StyledProps {}\nexport default function PrimaryTable(props: TPrimaryTableProps) {\n const { columns, columnController, style, className } = props;\n const primaryTableRef = useRef(null);\n const { tableDraggableClasses, tableBaseClass } = useClassName();\n // 自定义列配置功能\n const { tDisplayColumns, renderColumnController } = useColumnController(props);\n // 展开/收起行功能\n const { showExpandedRow, showExpandIconColumn, getExpandColumn, renderExpandedRow, onInnerExpandRowClick } =\n useRowExpand(props);\n // 排序功能\n const { renderSortIcon } = useSorter(props);\n // 行选中功能\n const { formatToRowSelectColumn, selectedRowClassNames } = useRowSelect(props);\n // 过滤功能\n const { hasEmptyCondition, isTableOverflowHidden, renderFilterIcon, renderFirstFilterRow } = useFilter(\n props,\n primaryTableRef,\n );\n // 拖拽排序功能\n const { isRowHandlerDraggable, isRowDraggable, isColDraggable } = useDragSort(props, primaryTableRef);\n\n const { renderTitleWidthIcon } = useTableHeader({ columns: props.columns });\n const { renderAsyncLoading } = useAsyncLoading(props);\n const primaryTableClasses = {\n [tableDraggableClasses.colDraggable]: isColDraggable,\n [tableDraggableClasses.rowHandlerDraggable]: isRowHandlerDraggable,\n [tableDraggableClasses.rowDraggable]: isRowDraggable,\n [tableBaseClass.overflowVisible]: isTableOverflowHidden === false,\n };\n\n // 如果想给 TR 添加类名,请在这里补充,不要透传更多额外 Props 到 BaseTable\n const tRowClassNames = (() => {\n const tClassNames = [props.rowClassName, selectedRowClassNames];\n return tClassNames.filter((v) => v);\n })();\n\n // 如果想给 TR 添加属性,请在这里补充,不要透传更多额外 Props 到 BaseTable\n const tRowAttributes = (() => {\n const tAttributes = [props.rowAttributes];\n if (isRowHandlerDraggable || isRowDraggable) {\n tAttributes.push(({ row }) => ({ 'data-id': get(row, props.rowKey || 'id') }));\n }\n return tAttributes.filter((v) => v);\n })();\n\n // 1. 影响列数量的因素有:自定义列配置、展开/收起行、多级表头;2. 影响表头内容的因素有:排序图标、筛选图标\n const getColumns = (columns: PrimaryTableCol<TableRowData>[]) => {\n const arr: PrimaryTableCol<TableRowData>[] = [];\n for (let i = 0, len = columns.length; i < len; i++) {\n let item = { ...columns[i] };\n // 自定义列显示控制\n const isDisplayColumn = item.children?.length || tDisplayColumns?.includes(item.colKey);\n if (!isDisplayColumn && props.columnController && tDisplayColumns) continue;\n item = formatToRowSelectColumn(item);\n // 添加排序图标和过滤图标\n if (item.sorter || item.filter) {\n const titleContent = renderTitle(item, i);\n const { ellipsisTitle } = item;\n item.title = (p) => {\n const sortIcon = item.sorter ? renderSortIcon(p) : null;\n const filterIcon = item.filter ? renderFilterIcon(p) : null;\n const attach = primaryTableRef.current?.tableContentRef;\n return renderTitleWidthIcon([titleContent, sortIcon, filterIcon], p.col, p.colIndex, ellipsisTitle, attach);\n };\n item.ellipsisTitle = false;\n }\n // 如果是单元格可编辑状态\n if (item.edit?.component) {\n const oldCell = item.cell;\n item.cell = (p: PrimaryTableCellParams<TableRowData>) => <EditableCell {...p} oldCell={oldCell} />;\n }\n if (item.children?.length) {\n item.children = getColumns(item.children);\n }\n // 多级表头和自定义列配置特殊逻辑:要么子节点不存在,要么子节点长度大于 1,方便做自定义列配置\n if (!item.children || item.children?.length) {\n arr.push(item);\n }\n }\n return arr;\n };\n\n const tColumns = (() => {\n const cols = getColumns(columns);\n if (showExpandIconColumn) {\n cols.unshift(getExpandColumn());\n }\n return cols;\n })();\n\n const onInnerPageChange = (pageInfo: PageInfo, newData: Array<TableRowData>) => {\n props.onPageChange?.(pageInfo, newData);\n const changeParams: Parameters<TdPrimaryTableProps['onChange']> = [\n { pagination: pageInfo },\n { trigger: 'pagination', currentData: newData },\n ];\n props.onChange?.(...changeParams);\n };\n\n function formatNode(api: string, renderInnerNode: Function, condition: boolean, extra?: { reverse?: boolean }) {\n if (!condition) return props[api];\n const innerNode = renderInnerNode();\n const propsNode = props[api];\n if (innerNode && !propsNode) return innerNode;\n if (propsNode && !innerNode) return propsNode;\n if (innerNode && propsNode) {\n return extra?.reverse ? (\n <div>\n {innerNode}\n {propsNode}\n </div>\n ) : (\n <div>\n {propsNode}\n {innerNode}\n </div>\n );\n }\n return null;\n }\n\n const isColumnController = !!(columnController && Object.keys(columnController).length);\n const placement = isColumnController ? columnController.placement || 'top-right' : '';\n const isBottomController = isColumnController && placement?.indexOf('bottom') !== -1;\n const topContent = formatNode('topContent', renderColumnController, isColumnController && !isBottomController);\n const bottomContent = formatNode('bottomContent', renderColumnController, isBottomController, {\n reverse: true,\n });\n const firstFullRow = formatNode('firstFullRow', renderFirstFilterRow, !hasEmptyCondition);\n const lastFullRow = formatNode('lastFullRow', renderAsyncLoading, !!props.asyncLoading);\n\n const baseTableProps = {\n ...props,\n rowClassName: tRowClassNames,\n rowAttributes: tRowAttributes,\n columns: tColumns,\n topContent,\n bottomContent,\n firstFullRow,\n lastFullRow,\n onPageChange: onInnerPageChange,\n renderExpandedRow: showExpandedRow ? renderExpandedRow : undefined,\n } as BaseTableProps;\n\n if (props.expandOnRowClick) {\n baseTableProps.onRowClick = onInnerExpandRowClick;\n }\n\n return (\n <BaseTable\n ref={primaryTableRef}\n {...baseTableProps}\n className={classNames(primaryTableClasses, className)}\n style={style}\n />\n );\n}\n\nPrimaryTable.displayName = 'PrimaryTable';\n"],"names":["PrimaryTable","props","columns","columnController","style","className","primaryTableRef","useRef","useClassName","tableDraggableClasses","tableBaseClass","useColumnController","tDisplayColumns","renderColumnController","useRowExpand","showExpandedRow","showExpandIconColumn","getExpandColumn","renderExpandedRow","onInnerExpandRowClick","useSorter","renderSortIcon","useRowSelect","formatToRowSelectColumn","selectedRowClassNames","useFilter","hasEmptyCondition","isTableOverflowHidden","renderFilterIcon","renderFirstFilterRow","useDragSort","isRowHandlerDraggable","isRowDraggable","isColDraggable","useTableHeader","renderTitleWidthIcon","useAsyncLoading","renderAsyncLoading","primaryTableClasses","colDraggable","rowHandlerDraggable","rowDraggable","overflowVisible","tRowClassNames","tClassNames","rowClassName","filter","v","tRowAttributes","tAttributes","rowAttributes","push","row","get","rowKey","getColumns","columns2","arr","i","len","item","isDisplayColumn","children","length","includes","colKey","sorter","titleContent","renderTitle","ellipsisTitle","title","p","sortIcon","filterIcon","attach","current","tableContentRef","col","colIndex","edit","component","oldCell","cell","React","createElement","EditableCell","tColumns","cols","unshift","onInnerPageChange","pageInfo","newData","onPageChange","changeParams","pagination","trigger","currentData","onChange","formatNode","api","renderInnerNode","condition","extra","innerNode","propsNode","reverse","isColumnController","Object","keys","placement","isBottomController","indexOf","topContent","bottomContent","firstFullRow","lastFullRow","asyncLoading","baseTableProps","expandOnRowClick","onRowClick","BaseTable","ref","classNames","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"PrimaryTable.js","sources":["../../src/table/PrimaryTable.tsx"],"sourcesContent":["import React, { useRef } from 'react';\nimport get from 'lodash/get';\nimport classNames from 'classnames';\nimport BaseTable from './BaseTable';\nimport useColumnController from './hooks/useColumnController';\nimport useRowExpand from './hooks/useRowExpand';\nimport useTableHeader, { renderTitle } from './hooks/useTableHeader';\nimport useRowSelect from './hooks/useRowSelect';\nimport { TdPrimaryTableProps, PrimaryTableCol, TableRowData, PrimaryTableCellParams } from './type';\nimport useSorter from './hooks/useSorter';\nimport useFilter from './hooks/useFilter';\nimport useDragSort from './hooks/useDragSort';\nimport useAsyncLoading from './hooks/useAsyncLoading';\nimport { PageInfo } from '../pagination';\nimport useClassName from './hooks/useClassName';\nimport { BaseTableProps, PrimaryTableProps } from './interface';\nimport EditableCell from './EditableCell';\n\nimport { StyledProps } from '../common';\n\nexport { BASE_TABLE_ALL_EVENTS } from './BaseTable';\n\nexport interface TPrimaryTableProps extends PrimaryTableProps, StyledProps {}\nexport default function PrimaryTable(props: TPrimaryTableProps) {\n const { columns, columnController, style, className } = props;\n const primaryTableRef = useRef(null);\n const { tableDraggableClasses, tableBaseClass } = useClassName();\n // 自定义列配置功能\n const { tDisplayColumns, renderColumnController } = useColumnController(props);\n // 展开/收起行功能\n const { showExpandedRow, showExpandIconColumn, getExpandColumn, renderExpandedRow, onInnerExpandRowClick } =\n useRowExpand(props);\n // 排序功能\n const { renderSortIcon } = useSorter(props);\n // 行选中功能\n const { formatToRowSelectColumn, selectedRowClassNames } = useRowSelect(props);\n // 过滤功能\n const { hasEmptyCondition, isTableOverflowHidden, renderFilterIcon, renderFirstFilterRow } = useFilter(\n props,\n primaryTableRef,\n );\n // 拖拽排序功能\n const { isRowHandlerDraggable, isRowDraggable, isColDraggable } = useDragSort(props, primaryTableRef);\n\n const { renderTitleWidthIcon } = useTableHeader({ columns: props.columns });\n const { renderAsyncLoading } = useAsyncLoading(props);\n const primaryTableClasses = {\n [tableDraggableClasses.colDraggable]: isColDraggable,\n [tableDraggableClasses.rowHandlerDraggable]: isRowHandlerDraggable,\n [tableDraggableClasses.rowDraggable]: isRowDraggable,\n [tableBaseClass.overflowVisible]: isTableOverflowHidden === false,\n };\n\n // 如果想给 TR 添加类名,请在这里补充,不要透传更多额外 Props 到 BaseTable\n const tRowClassNames = (() => {\n const tClassNames = [props.rowClassName, selectedRowClassNames];\n return tClassNames.filter((v) => v);\n })();\n\n // 如果想给 TR 添加属性,请在这里补充,不要透传更多额外 Props 到 BaseTable\n const tRowAttributes = (() => {\n const tAttributes = [props.rowAttributes];\n if (isRowHandlerDraggable || isRowDraggable) {\n tAttributes.push(({ row }) => ({ 'data-id': get(row, props.rowKey || 'id') }));\n }\n return tAttributes.filter((v) => v);\n })();\n\n // 1. 影响列数量的因素有:自定义列配置、展开/收起行、多级表头;2. 影响表头内容的因素有:排序图标、筛选图标\n const getColumns = (columns: PrimaryTableCol<TableRowData>[]) => {\n const arr: PrimaryTableCol<TableRowData>[] = [];\n for (let i = 0, len = columns.length; i < len; i++) {\n let item = { ...columns[i] };\n // 自定义列显示控制\n const isDisplayColumn = item.children?.length || tDisplayColumns?.includes(item.colKey);\n if (!isDisplayColumn && props.columnController && tDisplayColumns) continue;\n item = formatToRowSelectColumn(item);\n // 添加排序图标和过滤图标\n if (item.sorter || item.filter) {\n const titleContent = renderTitle(item, i);\n const { ellipsisTitle } = item;\n item.title = (p) => {\n const sortIcon = item.sorter ? renderSortIcon(p) : null;\n const filterIcon = item.filter ? renderFilterIcon(p) : null;\n const attach = primaryTableRef.current?.tableContentRef;\n return renderTitleWidthIcon([titleContent, sortIcon, filterIcon], p.col, p.colIndex, ellipsisTitle, attach);\n };\n item.ellipsisTitle = false;\n }\n // 如果是单元格可编辑状态\n if (item.edit?.component) {\n const oldCell = item.cell;\n item.cell = (p: PrimaryTableCellParams<TableRowData>) => <EditableCell {...p} oldCell={oldCell} />;\n }\n if (item.children?.length) {\n item.children = getColumns(item.children);\n }\n // 多级表头和自定义列配置特殊逻辑:要么子节点不存在,要么子节点长度大于 1,方便做自定义列配置\n if (!item.children || item.children?.length) {\n arr.push(item);\n }\n }\n return arr;\n };\n\n const tColumns = (() => {\n const cols = getColumns(columns);\n if (showExpandIconColumn) {\n cols.unshift(getExpandColumn());\n }\n return cols;\n })();\n\n const onInnerPageChange = (pageInfo: PageInfo, newData: Array<TableRowData>) => {\n props.onPageChange?.(pageInfo, newData);\n const changeParams: Parameters<TdPrimaryTableProps['onChange']> = [\n { pagination: pageInfo },\n { trigger: 'pagination', currentData: newData },\n ];\n props.onChange?.(...changeParams);\n };\n\n function formatNode(api: string, renderInnerNode: Function, condition: boolean, extra?: { reverse?: boolean }) {\n if (!condition) return props[api];\n const innerNode = renderInnerNode();\n const propsNode = props[api];\n if (innerNode && !propsNode) return innerNode;\n if (propsNode && !innerNode) return propsNode;\n if (innerNode && propsNode) {\n return extra?.reverse ? (\n <div>\n {innerNode}\n {propsNode}\n </div>\n ) : (\n <div>\n {propsNode}\n {innerNode}\n </div>\n );\n }\n return null;\n }\n\n const isColumnController = !!(columnController && Object.keys(columnController).length);\n const placement = isColumnController ? columnController.placement || 'top-right' : '';\n const isBottomController = isColumnController && placement?.indexOf('bottom') !== -1;\n const topContent = formatNode('topContent', renderColumnController, isColumnController && !isBottomController);\n const bottomContent = formatNode('bottomContent', renderColumnController, isBottomController, {\n reverse: true,\n });\n const firstFullRow = formatNode('firstFullRow', renderFirstFilterRow, !hasEmptyCondition);\n const lastFullRow = formatNode('lastFullRow', renderAsyncLoading, !!props.asyncLoading);\n\n const baseTableProps = {\n ...props,\n rowClassName: tRowClassNames,\n rowAttributes: tRowAttributes,\n columns: tColumns,\n topContent,\n bottomContent,\n firstFullRow,\n lastFullRow,\n onPageChange: onInnerPageChange,\n renderExpandedRow: showExpandedRow ? renderExpandedRow : undefined,\n } as BaseTableProps;\n\n if (props.expandOnRowClick) {\n baseTableProps.onRowClick = onInnerExpandRowClick;\n }\n\n return (\n <BaseTable\n ref={primaryTableRef}\n {...baseTableProps}\n className={classNames(primaryTableClasses, className)}\n style={style}\n />\n );\n}\n\nPrimaryTable.displayName = 'PrimaryTable';\n"],"names":["PrimaryTable","props","columns","columnController","style","className","primaryTableRef","useRef","useClassName","tableDraggableClasses","tableBaseClass","useColumnController","tDisplayColumns","renderColumnController","useRowExpand","showExpandedRow","showExpandIconColumn","getExpandColumn","renderExpandedRow","onInnerExpandRowClick","useSorter","renderSortIcon","useRowSelect","formatToRowSelectColumn","selectedRowClassNames","useFilter","hasEmptyCondition","isTableOverflowHidden","renderFilterIcon","renderFirstFilterRow","useDragSort","isRowHandlerDraggable","isRowDraggable","isColDraggable","useTableHeader","renderTitleWidthIcon","useAsyncLoading","renderAsyncLoading","primaryTableClasses","colDraggable","rowHandlerDraggable","rowDraggable","overflowVisible","tRowClassNames","tClassNames","rowClassName","filter","v","tRowAttributes","tAttributes","rowAttributes","push","row","get","rowKey","getColumns","columns2","arr","i","len","item","isDisplayColumn","children","length","includes","colKey","sorter","titleContent","renderTitle","ellipsisTitle","title","p","sortIcon","filterIcon","attach","current","tableContentRef","col","colIndex","edit","component","oldCell","cell","React","createElement","EditableCell","tColumns","cols","unshift","onInnerPageChange","pageInfo","newData","onPageChange","changeParams","pagination","trigger","currentData","onChange","formatNode","api","renderInnerNode","condition","extra","innerNode","propsNode","reverse","isColumnController","Object","keys","placement","isBottomController","indexOf","topContent","bottomContent","firstFullRow","lastFullRow","asyncLoading","baseTableProps","expandOnRowClick","onRowClick","BaseTable","ref","classNames","displayName"],"mappings":"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"}
@@ -14,6 +14,7 @@ import classNames from 'classnames';
14
14
  import TR, { ROW_LISTENERS, TABLE_PROPS } from './TR.js';
15
15
  import { useLocaleReceiver } from '../locale/LocalReceiver.js';
16
16
  import useClassName from './hooks/useClassName.js';
17
+ import useRowspanAndColspan from './hooks/useRowspanAndColspan.js';
17
18
  import '../_chunks/dep-0e5be0b2.js';
18
19
  import '../_chunks/dep-12690e1d.js';
19
20
  import '../_chunks/dep-e8f6f682.js';
@@ -106,6 +107,9 @@ function TBody(props) {
106
107
  tableFullRowClasses = _useClassName.tableFullRowClasses,
107
108
  tableBaseClass = _useClassName.tableBaseClass;
108
109
 
110
+ var _useRowspanAndColspan = useRowspanAndColspan(data, columns, props.rowspanAndColspan),
111
+ skipSpansMap = _useRowspanAndColspan.skipSpansMap;
112
+
109
113
  var tbodyClasses = useMemo(function () {
110
114
  return [tableBaseClass.body];
111
115
  }, [tableBaseClass.body]);
@@ -148,40 +152,19 @@ function TBody(props) {
148
152
  }, fullRowNode))));
149
153
  };
150
154
 
151
- var skipSpansMap = /* @__PURE__ */new Map();
152
-
153
- var onTrRowspanOrColspan = function onTrRowspanOrColspan(params, cellSpans) {
154
- var rowIndex = params.rowIndex,
155
- colIndex = params.colIndex;
156
- if (!cellSpans.rowspan && !cellSpans.colspan) return;
157
- var maxRowIndex = rowIndex + (cellSpans.rowspan || 1);
158
- var maxColIndex = colIndex + (cellSpans.colspan || 1);
159
-
160
- for (var i = rowIndex; i < maxRowIndex; i++) {
161
- for (var j = colIndex; j < maxColIndex; j++) {
162
- if (i !== rowIndex || j !== colIndex) {
163
- skipSpansMap.set([i, j].join(), true);
164
- }
165
- }
166
- }
167
- };
168
-
169
155
  var columnLength = columns.length;
170
156
  var dataLength = data.length;
171
157
  var trNodeList = [];
172
- skipSpansMap = /* @__PURE__ */new Map();
173
158
  var properties = ["rowAndColFixedPosition", "scroll", "tableElm", "tableContentElm", "trs", "bufferSize", "isVirtual", "rowHeight", "scrollType"];
174
159
  data === null || data === void 0 ? void 0 : data.forEach(function (row, rowIndex) {
175
- var trProps = _objectSpread(_objectSpread(_objectSpread({}, pick_1(props, TABLE_PROPS)), {}, {
160
+ var trProps = _objectSpread(_objectSpread({}, pick_1(props, TABLE_PROPS)), {}, {
176
161
  rowKey: props.rowKey || "id",
177
162
  row: row,
178
163
  columns: columns,
179
164
  rowIndex: rowIndex,
180
165
  dataLength: dataLength,
181
166
  skipSpansMap: skipSpansMap
182
- }, pick_1(props, properties)), {}, {
183
- onTrRowspanOrColspan: onTrRowspanOrColspan
184
- });
167
+ }, pick_1(props, properties));
185
168
 
186
169
  if (props.onCellClick) {
187
170
  trProps.onCellClick = props.onCellClick;
@@ -1 +1 @@
1
- {"version":3,"file":"TBody.js","sources":["../../src/table/TBody.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport camelCase from 'lodash/camelCase';\nimport get from 'lodash/get';\nimport pick from 'lodash/pick';\nimport classNames from 'classnames';\nimport TR, { ROW_LISTENERS, TABLE_PROPS } from './TR';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\nimport { RowspanColspan, TableRowData, BaseTableCellParams } from './type';\nimport { BaseTableProps } from './interface';\nimport { RowAndColFixedPosition } from './hooks/useFixed';\nimport useClassName from './hooks/useClassName';\n\nexport const ROW_AND_TD_LISTENERS = ROW_LISTENERS.concat('cell-click');\nexport interface TableBodyProps extends BaseTableProps {\n // 固定列 left/right 具体值\n rowAndColFixedPosition?: RowAndColFixedPosition;\n showColumnShadow?: { left: boolean; right: boolean };\n tableElm?: HTMLDivElement;\n tableContentElm?: HTMLDivElement;\n tableWidth?: number;\n isWidthOverflow?: boolean;\n\n // 以下内容为虚拟滚动所需参数\n translateY?: number;\n scrollType?: string;\n isVirtual?: boolean;\n rowHeight?: number;\n trs?: Map<number, object>;\n bufferSize?: number;\n handleRowMounted?: () => void;\n}\n\n// table 到 body 的相同属性\nexport const extendTableProps = [\n 'rowKey',\n 'rowClassName',\n 'rowAttributes',\n 'loading',\n 'empty',\n 'fixedRows',\n 'firstFullRow',\n 'lastFullRow',\n 'rowspanAndColspan',\n 'scroll',\n 'onCellClick',\n 'onPageChange',\n 'onRowClick',\n 'onRowDblclick',\n 'onRowMouseover',\n 'onRowMousedown',\n 'onRowMouseenter',\n 'onRowMouseleave',\n 'onRowMouseup',\n 'onScroll',\n 'onScrollX',\n 'onScrollY',\n];\n\nexport default function TBody(props: TableBodyProps) {\n // 如果不是变量复用,没必要对每一个参数进行解构(解构过程需要单独的内存空间存储临时变量)\n const { data, columns } = props;\n const [global, t] = useLocaleReceiver('table');\n const { tableFullRowClasses, tableBaseClass } = useClassName();\n\n const tbodyClasses = useMemo(() => [tableBaseClass.body], [tableBaseClass.body]);\n\n const renderEmpty = (columns: TableBodyProps['columns']) => (\n <tr className={classNames([tableBaseClass.emptyRow, { [tableFullRowClasses.base]: props.isWidthOverflow }])}>\n <td colSpan={columns.length}>\n <div\n className={classNames([tableBaseClass.empty, { [tableFullRowClasses.innerFullRow]: props.isWidthOverflow }])}\n style={props.isWidthOverflow ? { width: `${props.tableWidth}px` } : {}}\n >\n {props.empty || t(global.empty)}\n </div>\n </td>\n </tr>\n );\n\n const getFullRow = (columnLength: number, type: 'first-full-row' | 'last-full-row') => {\n const tType = camelCase(type);\n const fullRowNode = {\n 'first-full-row': props.firstFullRow,\n 'last-full-row': props.lastFullRow,\n }[type];\n if (!fullRowNode) return null;\n const isFixedToLeft = props.isWidthOverflow && columns.find((col) => col.fixed === 'left');\n const classes = [tableFullRowClasses.base, tableFullRowClasses[tType]];\n /** innerFullRow 和 innerFullElement 同时存在,是为了保证 固定列时,当前行不随内容进行横向滚动 */\n return (\n <tr className={classNames(classes)}>\n <td colSpan={columnLength}>\n <div\n className={classNames({ [tableFullRowClasses.innerFullRow]: isFixedToLeft })}\n style={isFixedToLeft ? { width: `${props.tableWidth}px` } : {}}\n >\n <div className={tableFullRowClasses.innerFullElement}>{fullRowNode}</div>\n </div>\n </td>\n </tr>\n );\n };\n\n // 受合并单元格影响,部分单元格不显示\n let skipSpansMap = new Map<any, boolean>();\n\n const onTrRowspanOrColspan = (params: BaseTableCellParams<TableRowData>, cellSpans: RowspanColspan) => {\n const { rowIndex, colIndex } = params;\n if (!cellSpans.rowspan && !cellSpans.colspan) return;\n const maxRowIndex = rowIndex + (cellSpans.rowspan || 1);\n const maxColIndex = colIndex + (cellSpans.colspan || 1);\n for (let i = rowIndex; i < maxRowIndex; i++) {\n for (let j = colIndex; j < maxColIndex; j++) {\n if (i !== rowIndex || j !== colIndex) {\n skipSpansMap.set([i, j].join(), true);\n }\n }\n }\n };\n\n const columnLength = columns.length;\n const dataLength = data.length;\n const trNodeList = [];\n // 每次渲染清空合并单元格信息\n skipSpansMap = new Map<any, boolean>();\n\n const properties = [\n 'rowAndColFixedPosition',\n 'scroll',\n 'tableElm',\n 'tableContentElm',\n 'trs',\n 'bufferSize',\n 'isVirtual',\n 'rowHeight',\n 'scrollType',\n ];\n data?.forEach((row, rowIndex) => {\n const trProps = {\n ...pick(props, TABLE_PROPS),\n rowKey: props.rowKey || 'id',\n row,\n columns,\n rowIndex,\n dataLength,\n skipSpansMap,\n ...pick(props, properties),\n // 遍历的同时,计算后面的节点,是否会因为合并单元格跳过渲染\n onTrRowspanOrColspan,\n };\n if (props.onCellClick) {\n trProps.onCellClick = props.onCellClick;\n }\n\n const trNode = (\n <TR key={get(row, props.rowKey || 'id') || rowIndex} {...trProps} onRowMounted={props.handleRowMounted}></TR>\n );\n trNodeList.push(trNode);\n\n // 执行展开行渲染\n if (props.renderExpandedRow) {\n const p = {\n row,\n index: rowIndex,\n columns,\n tableWidth: props.tableWidth,\n isWidthOverflow: props.isWidthOverflow,\n };\n const expandedContent = props.renderExpandedRow(p);\n expandedContent && trNodeList.push(expandedContent);\n }\n });\n\n const list = (\n <>\n {getFullRow(columnLength, 'first-full-row')}\n {trNodeList}\n {getFullRow(columnLength, 'last-full-row')}\n </>\n );\n const isEmpty = !data?.length && !props.loading;\n\n const translate = `translate(0, ${props.translateY}px)`;\n const posStyle = {\n transform: translate,\n '-ms-transform': translate,\n '-moz-transform': translate,\n '-webkit-transform': translate,\n };\n\n return (\n <tbody className={classNames(tbodyClasses)} style={props.isVirtual && { ...posStyle }}>\n {isEmpty ? renderEmpty(columns) : list}\n </tbody>\n );\n}\n\nTBody.displayName = 'TBody';\n"],"names":["ROW_AND_TD_LISTENERS","ROW_LISTENERS","concat","extendTableProps","TBody","props","data","columns","useLocaleReceiver","global","t","useClassName","tableFullRowClasses","tableBaseClass","tbodyClasses","useMemo","body","renderEmpty","columns2","React","createElement","className","classNames","emptyRow","base","isWidthOverflow","colSpan","length","empty","innerFullRow","style","width","tableWidth","getFullRow","columnLength2","type","tType","camelCase","fullRowNode","firstFullRow","lastFullRow","isFixedToLeft","find","col","fixed","classes","innerFullElement","skipSpansMap","Map","onTrRowspanOrColspan","params","cellSpans","rowIndex","colIndex","rowspan","colspan","maxRowIndex","maxColIndex","i","j","set","join","columnLength","dataLength","trNodeList","properties","forEach","row","trProps","pick","TABLE_PROPS","rowKey","onCellClick","trNode","TR","key","get","onRowMounted","handleRowMounted","push","renderExpandedRow","p","index","expandedContent","list","Fragment","isEmpty","loading","translate","translateY","posStyle","transform","isVirtual","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"TBody.js","sources":["../../src/table/TBody.tsx"],"sourcesContent":["import React, { useMemo } from 'react';\nimport camelCase from 'lodash/camelCase';\nimport get from 'lodash/get';\nimport pick from 'lodash/pick';\nimport classNames from 'classnames';\nimport TR, { ROW_LISTENERS, TABLE_PROPS } from './TR';\nimport { useLocaleReceiver } from '../locale/LocalReceiver';\nimport { BaseTableProps } from './interface';\nimport { RowAndColFixedPosition } from './hooks/useFixed';\nimport useClassName from './hooks/useClassName';\nimport useRowspanAndColspan from './hooks/useRowspanAndColspan';\n\nexport const ROW_AND_TD_LISTENERS = ROW_LISTENERS.concat('cell-click');\nexport interface TableBodyProps extends BaseTableProps {\n // 固定列 left/right 具体值\n rowAndColFixedPosition?: RowAndColFixedPosition;\n showColumnShadow?: { left: boolean; right: boolean };\n tableElm?: HTMLDivElement;\n tableContentElm?: HTMLDivElement;\n tableWidth?: number;\n isWidthOverflow?: boolean;\n\n // 以下内容为虚拟滚动所需参数\n translateY?: number;\n scrollType?: string;\n isVirtual?: boolean;\n rowHeight?: number;\n trs?: Map<number, object>;\n bufferSize?: number;\n handleRowMounted?: () => void;\n}\n\n// table 到 body 的相同属性\nexport const extendTableProps = [\n 'rowKey',\n 'rowClassName',\n 'rowAttributes',\n 'loading',\n 'empty',\n 'fixedRows',\n 'firstFullRow',\n 'lastFullRow',\n 'rowspanAndColspan',\n 'scroll',\n 'onCellClick',\n 'onPageChange',\n 'onRowClick',\n 'onRowDblclick',\n 'onRowMouseover',\n 'onRowMousedown',\n 'onRowMouseenter',\n 'onRowMouseleave',\n 'onRowMouseup',\n 'onScroll',\n 'onScrollX',\n 'onScrollY',\n];\n\nexport default function TBody(props: TableBodyProps) {\n // 如果不是变量复用,没必要对每一个参数进行解构(解构过程需要单独的内存空间存储临时变量)\n const { data, columns } = props;\n const [global, t] = useLocaleReceiver('table');\n const { tableFullRowClasses, tableBaseClass } = useClassName();\n const { skipSpansMap } = useRowspanAndColspan(data, columns, props.rowspanAndColspan);\n\n const tbodyClasses = useMemo(() => [tableBaseClass.body], [tableBaseClass.body]);\n\n const renderEmpty = (columns: TableBodyProps['columns']) => (\n <tr className={classNames([tableBaseClass.emptyRow, { [tableFullRowClasses.base]: props.isWidthOverflow }])}>\n <td colSpan={columns.length}>\n <div\n className={classNames([tableBaseClass.empty, { [tableFullRowClasses.innerFullRow]: props.isWidthOverflow }])}\n style={props.isWidthOverflow ? { width: `${props.tableWidth}px` } : {}}\n >\n {props.empty || t(global.empty)}\n </div>\n </td>\n </tr>\n );\n\n const getFullRow = (columnLength: number, type: 'first-full-row' | 'last-full-row') => {\n const tType = camelCase(type);\n const fullRowNode = {\n 'first-full-row': props.firstFullRow,\n 'last-full-row': props.lastFullRow,\n }[type];\n if (!fullRowNode) return null;\n const isFixedToLeft = props.isWidthOverflow && columns.find((col) => col.fixed === 'left');\n const classes = [tableFullRowClasses.base, tableFullRowClasses[tType]];\n /** innerFullRow 和 innerFullElement 同时存在,是为了保证 固定列时,当前行不随内容进行横向滚动 */\n return (\n <tr className={classNames(classes)}>\n <td colSpan={columnLength}>\n <div\n className={classNames({ [tableFullRowClasses.innerFullRow]: isFixedToLeft })}\n style={isFixedToLeft ? { width: `${props.tableWidth}px` } : {}}\n >\n <div className={tableFullRowClasses.innerFullElement}>{fullRowNode}</div>\n </div>\n </td>\n </tr>\n );\n };\n\n const columnLength = columns.length;\n const dataLength = data.length;\n const trNodeList = [];\n\n const properties = [\n 'rowAndColFixedPosition',\n 'scroll',\n 'tableElm',\n 'tableContentElm',\n 'trs',\n 'bufferSize',\n 'isVirtual',\n 'rowHeight',\n 'scrollType',\n ];\n data?.forEach((row, rowIndex) => {\n const trProps = {\n ...pick(props, TABLE_PROPS),\n rowKey: props.rowKey || 'id',\n row,\n columns,\n rowIndex,\n dataLength,\n skipSpansMap,\n ...pick(props, properties),\n };\n if (props.onCellClick) {\n trProps.onCellClick = props.onCellClick;\n }\n\n const trNode = (\n <TR key={get(row, props.rowKey || 'id') || rowIndex} {...trProps} onRowMounted={props.handleRowMounted}></TR>\n );\n trNodeList.push(trNode);\n\n // 执行展开行渲染\n if (props.renderExpandedRow) {\n const p = {\n row,\n index: rowIndex,\n columns,\n tableWidth: props.tableWidth,\n isWidthOverflow: props.isWidthOverflow,\n };\n const expandedContent = props.renderExpandedRow(p);\n expandedContent && trNodeList.push(expandedContent);\n }\n });\n\n const list = (\n <>\n {getFullRow(columnLength, 'first-full-row')}\n {trNodeList}\n {getFullRow(columnLength, 'last-full-row')}\n </>\n );\n const isEmpty = !data?.length && !props.loading;\n\n const translate = `translate(0, ${props.translateY}px)`;\n const posStyle = {\n transform: translate,\n '-ms-transform': translate,\n '-moz-transform': translate,\n '-webkit-transform': translate,\n };\n\n return (\n <tbody className={classNames(tbodyClasses)} style={props.isVirtual && { ...posStyle }}>\n {isEmpty ? renderEmpty(columns) : list}\n </tbody>\n );\n}\n\nTBody.displayName = 'TBody';\n"],"names":["ROW_AND_TD_LISTENERS","ROW_LISTENERS","concat","extendTableProps","TBody","props","data","columns","useLocaleReceiver","global","t","useClassName","tableFullRowClasses","tableBaseClass","useRowspanAndColspan","rowspanAndColspan","skipSpansMap","tbodyClasses","useMemo","body","renderEmpty","columns2","React","createElement","className","classNames","emptyRow","base","isWidthOverflow","colSpan","length","empty","innerFullRow","style","width","tableWidth","getFullRow","columnLength2","type","tType","camelCase","fullRowNode","firstFullRow","lastFullRow","isFixedToLeft","find","col","fixed","classes","innerFullElement","columnLength","dataLength","trNodeList","properties","forEach","row","rowIndex","trProps","pick","TABLE_PROPS","rowKey","onCellClick","trNode","TR","key","get","onRowMounted","handleRowMounted","push","renderExpandedRow","p","index","expandedContent","list","Fragment","isEmpty","loading","translate","translateY","posStyle","transform","isVirtual","displayName"],"mappings":"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"}
package/esm/table/TR.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { RowAndColFixedPosition } from './hooks/useFixed';
3
3
  import { BaseTableCellParams, TableRowData, RowspanColspan, TdBaseTableProps, TableScroll } from './type';
4
+ import { SkipSpansValue } from './hooks/useRowspanAndColspan';
4
5
  export interface RenderTdExtra {
5
6
  rowAndColFixedPosition: RowAndColFixedPosition;
6
7
  columnLength: number;
@@ -19,7 +20,7 @@ export interface TrProps extends TrCommonProps {
19
20
  rowIndex?: number;
20
21
  dataLength?: number;
21
22
  rowAndColFixedPosition?: RowAndColFixedPosition;
22
- skipSpansMap?: Map<any, boolean>;
23
+ skipSpansMap?: Map<string, SkipSpansValue>;
23
24
  scrollType?: string;
24
25
  isVirtual?: boolean;
25
26
  rowHeight?: number;
@@ -29,7 +30,6 @@ export interface TrProps extends TrCommonProps {
29
30
  tableElm?: HTMLDivElement;
30
31
  tableContentElm?: HTMLDivElement;
31
32
  onRowMounted?: () => void;
32
- onTrRowspanOrColspan?: (params: BaseTableCellParams<TableRowData>, cellSpans: RowspanColspan) => void;
33
33
  }
34
34
  export declare const ROW_LISTENERS: string[];
35
35
  export declare function renderCell(params: BaseTableCellParams<TableRowData>): any;
package/esm/table/TR.js CHANGED
@@ -208,8 +208,6 @@ function TR(props) {
208
208
  }
209
209
 
210
210
  var columnVNodeList = (_props$columns = props.columns) === null || _props$columns === void 0 ? void 0 : _props$columns.map(function (col, colIndex) {
211
- var _props$skipSpansMap;
212
-
213
211
  var cellSpans = {};
214
212
  var params = {
215
213
  row: row,
@@ -217,18 +215,10 @@ function TR(props) {
217
215
  rowIndex: rowIndex,
218
216
  colIndex: colIndex
219
217
  };
220
-
221
- if (isFunction_1(props.rowspanAndColspan)) {
222
- var _props$onTrRowspanOrC;
223
-
224
- var o = props.rowspanAndColspan(params);
225
- (o === null || o === void 0 ? void 0 : o.rowspan) > 1 && (cellSpans.rowspan = o.rowspan);
226
- (o === null || o === void 0 ? void 0 : o.colspan) > 1 && (cellSpans.colspan = o.colspan);
227
- (_props$onTrRowspanOrC = props.onTrRowspanOrColspan) === null || _props$onTrRowspanOrC === void 0 ? void 0 : _props$onTrRowspanOrC.call(props, params, cellSpans);
228
- }
229
-
230
- var skipped = (_props$skipSpansMap = props.skipSpansMap) === null || _props$skipSpansMap === void 0 ? void 0 : _props$skipSpansMap.get([rowIndex, colIndex].join());
231
- if (skipped) return null;
218
+ var spanState = props.skipSpansMap.get([rowIndex, colIndex].join()) || {};
219
+ (spanState === null || spanState === void 0 ? void 0 : spanState.rowspan) > 1 && (cellSpans.rowspan = spanState.rowspan);
220
+ (spanState === null || spanState === void 0 ? void 0 : spanState.colspan) > 1 && (cellSpans.colspan = spanState.colspan);
221
+ if (spanState.skipped) return null;
232
222
  return renderTd(params, {
233
223
  dataLength: dataLength,
234
224
  rowAndColFixedPosition: rowAndColFixedPosition,
@@ -1 +1 @@
1
- {"version":3,"file":"TR.js","sources":["../../src/table/TR.tsx"],"sourcesContent":["import React, { useMemo, useRef, MouseEvent } from 'react';\nimport isFunction from 'lodash/isFunction';\nimport get from 'lodash/get';\nimport classnames from 'classnames';\nimport { formatRowAttributes, formatRowClassNames } from './utils';\nimport { getRowFixedStyles, getColumnFixedStyles, RowAndColFixedPosition } from './hooks/useFixed';\nimport useClassName from './hooks/useClassName';\nimport TEllipsis from './Ellipsis';\nimport { BaseTableCellParams, TableRowData, RowspanColspan, TdBaseTableProps, TableScroll } from './type';\nimport useLazyLoad from './hooks/useLazyLoad';\n\nexport interface RenderTdExtra {\n rowAndColFixedPosition: RowAndColFixedPosition;\n columnLength: number;\n dataLength: number;\n cellSpans: RowspanColspan;\n}\n\nexport interface RenderEllipsisCellParams {\n cellNode: any;\n}\n\nexport type TrCommonProps = Pick<TdBaseTableProps, TrPropsKeys>;\n\nexport const TABLE_PROPS = [\n 'rowKey',\n 'rowClassName',\n 'columns',\n 'fixedRows',\n 'footData',\n 'rowAttributes',\n 'rowspanAndColspan',\n 'scroll',\n 'onCellClick',\n 'onRowClick',\n 'onRowDblclick',\n 'onRowMouseover',\n 'onRowMousedown',\n 'onRowMouseenter',\n 'onRowMouseleave',\n 'onRowMouseup',\n] as const;\n\nexport type TrPropsKeys = typeof TABLE_PROPS[number];\n\nexport interface TrProps extends TrCommonProps {\n rowKey: string;\n row?: TableRowData;\n rowIndex?: number;\n dataLength?: number;\n rowAndColFixedPosition?: RowAndColFixedPosition;\n // 属性透传,引用传值,可内部改变\n skipSpansMap?: Map<any, boolean>;\n scrollType?: string;\n isVirtual?: boolean;\n rowHeight?: number;\n trs?: Map<number, object>;\n bufferSize?: number;\n scroll?: TableScroll;\n tableElm?: HTMLDivElement;\n tableContentElm?: HTMLDivElement;\n onRowMounted?: () => void;\n onTrRowspanOrColspan?: (params: BaseTableCellParams<TableRowData>, cellSpans: RowspanColspan) => void;\n}\n\nexport const ROW_LISTENERS = ['click', 'dblclick', 'mouseover', 'mousedown', 'mouseenter', 'mouseleave', 'mouseup'];\n\nexport function renderCell(params: BaseTableCellParams<TableRowData>) {\n const { col, row } = params;\n if (isFunction(col.cell)) {\n return col.cell(params);\n }\n if (isFunction(col.render)) {\n return col.render({ ...params, type: 'cell' });\n }\n return col.cell || col.render || get(row, col.colKey);\n}\n\n// 表格行组件\nexport default function TR(props: TrProps) {\n const {\n row,\n rowKey,\n rowIndex,\n rowClassName,\n rowAttributes,\n dataLength,\n fixedRows,\n scroll,\n tableContentElm,\n rowAndColFixedPosition,\n } = props;\n\n const trRef = useRef<HTMLTableRowElement>();\n\n const {\n tdEllipsisClass,\n tableBaseClass,\n tableColFixedClasses,\n tableRowFixedClasses,\n tdAlignClasses,\n tableDraggableClasses,\n } = useClassName();\n\n const trStyles = getRowFixedStyles(\n get(row, rowKey || 'id'),\n rowIndex,\n dataLength,\n fixedRows,\n rowAndColFixedPosition,\n tableRowFixedClasses,\n );\n\n const trAttributes = useMemo(\n () => formatRowAttributes(rowAttributes, { row, rowIndex, type: 'body' }) || {},\n [row, rowAttributes, rowIndex],\n );\n\n const classes = useMemo(() => {\n const customClasses = formatRowClassNames(rowClassName, { row, rowIndex, type: 'body' }, rowKey || 'id');\n return [trStyles?.classes, customClasses];\n }, [row, rowClassName, rowIndex, rowKey, trStyles?.classes]);\n\n const useLazyLoadParams = useMemo(() => ({ ...scroll, rowIndex }), [scroll, rowIndex]);\n const { hasLazyLoadHolder, tRowHeight } = useLazyLoad(tableContentElm, trRef.current, useLazyLoadParams);\n\n function renderEllipsisCell(cellParams: BaseTableCellParams<TableRowData>, params: RenderEllipsisCellParams) {\n const { cellNode } = params;\n const { col, colIndex } = cellParams;\n // 前两列左对齐显示\n const placement = colIndex < 2 ? 'top-left' : 'top-right';\n const content = isFunction(col.ellipsis) ? col.ellipsis(cellParams) : undefined;\n const tableElement = props.tableElm;\n return (\n <TEllipsis\n placement={placement}\n attach={tableElement ? () => tableElement : undefined}\n popupContent={content}\n popupProps={typeof col.ellipsis === 'object' ? col.ellipsis : undefined}\n >\n {cellNode}\n </TEllipsis>\n );\n }\n\n function renderTd(params: BaseTableCellParams<TableRowData>, extra: RenderTdExtra) {\n const { col, colIndex, rowIndex } = params;\n const { cellSpans, dataLength, rowAndColFixedPosition } = extra;\n const cellNode = renderCell(params);\n const tdStyles = getColumnFixedStyles(col, colIndex, rowAndColFixedPosition, tableColFixedClasses);\n const customClasses = isFunction(col.className) ? col.className({ ...params, type: 'td' }) : col.className;\n const classes = [\n tdStyles.classes,\n customClasses,\n {\n [tdEllipsisClass]: col.ellipsis,\n [tableBaseClass.tdLastRow]: rowIndex + cellSpans.rowspan === dataLength,\n [tableBaseClass.tdFirstCol]: colIndex === 0 && props.rowspanAndColspan,\n [tdAlignClasses[col.align]]: col.align && col.align !== 'left',\n // 标记可拖拽列\n [tableDraggableClasses.handle]: col.colKey === 'drag',\n },\n ];\n const onClick = (e: MouseEvent<HTMLTableCellElement>) => {\n const p = { ...params, e };\n props.onCellClick?.(p);\n };\n const attrs = { ...col.attrs, rowSpan: cellSpans.rowspan, colSpan: cellSpans.colspan };\n if (!col.colKey) return null;\n return (\n <td key={col.colKey} className={classnames(classes)} style={tdStyles.style} {...attrs} onClick={onClick}>\n {col.ellipsis ? renderEllipsisCell(params, { cellNode }) : cellNode}\n </td>\n );\n }\n\n // const { row, rowIndex, dataLength, rowAndColFixedPosition, scrollType, isInit } = props;\n // const hasHolder = scrollType === 'lazy' && !isInit;\n // const rowHeightRef: Ref = inject('rowHeightRef');\n const columnVNodeList = props.columns?.map((col, colIndex) => {\n const cellSpans: RowspanColspan = {};\n const params = {\n row,\n col,\n rowIndex,\n colIndex,\n };\n if (isFunction(props.rowspanAndColspan)) {\n const o = props.rowspanAndColspan(params);\n o?.rowspan > 1 && (cellSpans.rowspan = o.rowspan);\n o?.colspan > 1 && (cellSpans.colspan = o.colspan);\n props.onTrRowspanOrColspan?.(params, cellSpans);\n }\n const skipped = props.skipSpansMap?.get([rowIndex, colIndex].join());\n if (skipped) return null;\n return renderTd(params, {\n dataLength,\n rowAndColFixedPosition,\n columnLength: props.columns.length,\n cellSpans,\n });\n });\n\n const rowParams = { row, index: rowIndex };\n return (\n <tr\n ref={trRef}\n {...trAttributes}\n style={trStyles?.style}\n className={classnames(classes)}\n onClick={(e) => props.onRowClick?.({ ...rowParams, e })}\n onDoubleClick={(e) => props.onRowDblclick?.({ ...rowParams, e })}\n onMouseDown={(e) => props.onRowMousedown?.({ ...rowParams, e })}\n onMouseEnter={(e) => props.onRowMouseenter?.({ ...rowParams, e })}\n onMouseLeave={(e) => props.onRowMouseleave?.({ ...rowParams, e })}\n onMouseUp={(e) => props.onRowMouseup?.({ ...rowParams, e })}\n onMouseOver={(e) => props.onRowMouseover?.({ ...rowParams, e })}\n >\n {hasLazyLoadHolder\n ? [<td key={rowIndex} style={{ height: `${tRowHeight}px`, border: 'none' }} />]\n : columnVNodeList}\n </tr>\n );\n}\n\nTR.displayName = 'TR';\n"],"names":["TABLE_PROPS","ROW_LISTENERS","renderCell","params","col","row","isFunction","cell","render","type","get","colKey","TR","props","rowKey","rowIndex","rowClassName","rowAttributes","dataLength","fixedRows","scroll","tableContentElm","rowAndColFixedPosition","trRef","useRef","useClassName","tdEllipsisClass","tableBaseClass","tableColFixedClasses","tableRowFixedClasses","tdAlignClasses","tableDraggableClasses","trStyles","getRowFixedStyles","trAttributes","useMemo","formatRowAttributes","classes","customClasses","formatRowClassNames","useLazyLoadParams","useLazyLoad","current","hasLazyLoadHolder","tRowHeight","renderEllipsisCell","cellParams","cellNode","colIndex","placement","content","ellipsis","tableElement","tableElm","React","createElement","TEllipsis","attach","popupContent","popupProps","renderTd","extra","rowIndex2","cellSpans","dataLength2","rowAndColFixedPosition2","tdStyles","getColumnFixedStyles","className","classes2","tdLastRow","rowspan","tdFirstCol","rowspanAndColspan","align","handle","onClick","e","p","onCellClick","attrs","rowSpan","colSpan","colspan","key","classnames","style","columnVNodeList","columns","map","o","onTrRowspanOrColspan","skipped","skipSpansMap","join","columnLength","length","rowParams","index","ref","onRowClick","onDoubleClick","onRowDblclick","onMouseDown","onRowMousedown","onMouseEnter","onRowMouseenter","onMouseLeave","onRowMouseleave","onMouseUp","onRowMouseup","onMouseOver","onRowMouseover","height","border","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"TR.js","sources":["../../src/table/TR.tsx"],"sourcesContent":["import React, { useMemo, useRef, MouseEvent } from 'react';\nimport isFunction from 'lodash/isFunction';\nimport get from 'lodash/get';\nimport classnames from 'classnames';\nimport { formatRowAttributes, formatRowClassNames } from './utils';\nimport { getRowFixedStyles, getColumnFixedStyles, RowAndColFixedPosition } from './hooks/useFixed';\nimport useClassName from './hooks/useClassName';\nimport TEllipsis from './Ellipsis';\nimport { BaseTableCellParams, TableRowData, RowspanColspan, TdBaseTableProps, TableScroll } from './type';\nimport useLazyLoad from './hooks/useLazyLoad';\nimport { SkipSpansValue } from './hooks/useRowspanAndColspan';\n\nexport interface RenderTdExtra {\n rowAndColFixedPosition: RowAndColFixedPosition;\n columnLength: number;\n dataLength: number;\n cellSpans: RowspanColspan;\n}\n\nexport interface RenderEllipsisCellParams {\n cellNode: any;\n}\n\nexport type TrCommonProps = Pick<TdBaseTableProps, TrPropsKeys>;\n\nexport const TABLE_PROPS = [\n 'rowKey',\n 'rowClassName',\n 'columns',\n 'fixedRows',\n 'footData',\n 'rowAttributes',\n 'rowspanAndColspan',\n 'scroll',\n 'onCellClick',\n 'onRowClick',\n 'onRowDblclick',\n 'onRowMouseover',\n 'onRowMousedown',\n 'onRowMouseenter',\n 'onRowMouseleave',\n 'onRowMouseup',\n] as const;\n\nexport type TrPropsKeys = typeof TABLE_PROPS[number];\n\nexport interface TrProps extends TrCommonProps {\n rowKey: string;\n row?: TableRowData;\n rowIndex?: number;\n dataLength?: number;\n rowAndColFixedPosition?: RowAndColFixedPosition;\n skipSpansMap?: Map<string, SkipSpansValue>;\n scrollType?: string;\n isVirtual?: boolean;\n rowHeight?: number;\n trs?: Map<number, object>;\n bufferSize?: number;\n scroll?: TableScroll;\n tableElm?: HTMLDivElement;\n tableContentElm?: HTMLDivElement;\n onRowMounted?: () => void;\n}\n\nexport const ROW_LISTENERS = ['click', 'dblclick', 'mouseover', 'mousedown', 'mouseenter', 'mouseleave', 'mouseup'];\n\nexport function renderCell(params: BaseTableCellParams<TableRowData>) {\n const { col, row } = params;\n if (isFunction(col.cell)) {\n return col.cell(params);\n }\n if (isFunction(col.render)) {\n return col.render({ ...params, type: 'cell' });\n }\n return col.cell || col.render || get(row, col.colKey);\n}\n\n// 表格行组件\nexport default function TR(props: TrProps) {\n const {\n row,\n rowKey,\n rowIndex,\n rowClassName,\n rowAttributes,\n dataLength,\n fixedRows,\n scroll,\n tableContentElm,\n rowAndColFixedPosition,\n } = props;\n\n const trRef = useRef<HTMLTableRowElement>();\n\n const {\n tdEllipsisClass,\n tableBaseClass,\n tableColFixedClasses,\n tableRowFixedClasses,\n tdAlignClasses,\n tableDraggableClasses,\n } = useClassName();\n\n const trStyles = getRowFixedStyles(\n get(row, rowKey || 'id'),\n rowIndex,\n dataLength,\n fixedRows,\n rowAndColFixedPosition,\n tableRowFixedClasses,\n );\n\n const trAttributes = useMemo(\n () => formatRowAttributes(rowAttributes, { row, rowIndex, type: 'body' }) || {},\n [row, rowAttributes, rowIndex],\n );\n\n const classes = useMemo(() => {\n const customClasses = formatRowClassNames(rowClassName, { row, rowIndex, type: 'body' }, rowKey || 'id');\n return [trStyles?.classes, customClasses];\n }, [row, rowClassName, rowIndex, rowKey, trStyles?.classes]);\n\n const useLazyLoadParams = useMemo(() => ({ ...scroll, rowIndex }), [scroll, rowIndex]);\n const { hasLazyLoadHolder, tRowHeight } = useLazyLoad(tableContentElm, trRef.current, useLazyLoadParams);\n\n function renderEllipsisCell(cellParams: BaseTableCellParams<TableRowData>, params: RenderEllipsisCellParams) {\n const { cellNode } = params;\n const { col, colIndex } = cellParams;\n // 前两列左对齐显示\n const placement = colIndex < 2 ? 'top-left' : 'top-right';\n const content = isFunction(col.ellipsis) ? col.ellipsis(cellParams) : undefined;\n const tableElement = props.tableElm;\n return (\n <TEllipsis\n placement={placement}\n attach={tableElement ? () => tableElement : undefined}\n popupContent={content}\n popupProps={typeof col.ellipsis === 'object' ? col.ellipsis : undefined}\n >\n {cellNode}\n </TEllipsis>\n );\n }\n\n function renderTd(params: BaseTableCellParams<TableRowData>, extra: RenderTdExtra) {\n const { col, colIndex, rowIndex } = params;\n const { cellSpans, dataLength, rowAndColFixedPosition } = extra;\n const cellNode = renderCell(params);\n const tdStyles = getColumnFixedStyles(col, colIndex, rowAndColFixedPosition, tableColFixedClasses);\n const customClasses = isFunction(col.className) ? col.className({ ...params, type: 'td' }) : col.className;\n const classes = [\n tdStyles.classes,\n customClasses,\n {\n [tdEllipsisClass]: col.ellipsis,\n [tableBaseClass.tdLastRow]: rowIndex + cellSpans.rowspan === dataLength,\n [tableBaseClass.tdFirstCol]: colIndex === 0 && props.rowspanAndColspan,\n [tdAlignClasses[col.align]]: col.align && col.align !== 'left',\n // 标记可拖拽列\n [tableDraggableClasses.handle]: col.colKey === 'drag',\n },\n ];\n const onClick = (e: MouseEvent<HTMLTableCellElement>) => {\n const p = { ...params, e };\n props.onCellClick?.(p);\n };\n const attrs = { ...col.attrs, rowSpan: cellSpans.rowspan, colSpan: cellSpans.colspan };\n if (!col.colKey) return null;\n return (\n <td key={col.colKey} className={classnames(classes)} style={tdStyles.style} {...attrs} onClick={onClick}>\n {col.ellipsis ? renderEllipsisCell(params, { cellNode }) : cellNode}\n </td>\n );\n }\n\n // const { row, rowIndex, dataLength, rowAndColFixedPosition, scrollType, isInit } = props;\n // const hasHolder = scrollType === 'lazy' && !isInit;\n // const rowHeightRef: Ref = inject('rowHeightRef');\n const columnVNodeList = props.columns?.map((col, colIndex) => {\n const cellSpans: RowspanColspan = {};\n const params = {\n row,\n col,\n rowIndex,\n colIndex,\n };\n const spanState = props.skipSpansMap.get([rowIndex, colIndex].join()) || {};\n spanState?.rowspan > 1 && (cellSpans.rowspan = spanState.rowspan);\n spanState?.colspan > 1 && (cellSpans.colspan = spanState.colspan);\n if (spanState.skipped) return null;\n return renderTd(params, {\n dataLength,\n rowAndColFixedPosition,\n columnLength: props.columns.length,\n cellSpans,\n });\n });\n\n const rowParams = { row, index: rowIndex };\n return (\n <tr\n ref={trRef}\n {...trAttributes}\n style={trStyles?.style}\n className={classnames(classes)}\n onClick={(e) => props.onRowClick?.({ ...rowParams, e })}\n onDoubleClick={(e) => props.onRowDblclick?.({ ...rowParams, e })}\n onMouseDown={(e) => props.onRowMousedown?.({ ...rowParams, e })}\n onMouseEnter={(e) => props.onRowMouseenter?.({ ...rowParams, e })}\n onMouseLeave={(e) => props.onRowMouseleave?.({ ...rowParams, e })}\n onMouseUp={(e) => props.onRowMouseup?.({ ...rowParams, e })}\n onMouseOver={(e) => props.onRowMouseover?.({ ...rowParams, e })}\n >\n {hasLazyLoadHolder\n ? [<td key={rowIndex} style={{ height: `${tRowHeight}px`, border: 'none' }} />]\n : columnVNodeList}\n </tr>\n );\n}\n\nTR.displayName = 'TR';\n"],"names":["TABLE_PROPS","ROW_LISTENERS","renderCell","params","col","row","isFunction","cell","render","type","get","colKey","TR","props","rowKey","rowIndex","rowClassName","rowAttributes","dataLength","fixedRows","scroll","tableContentElm","rowAndColFixedPosition","trRef","useRef","useClassName","tdEllipsisClass","tableBaseClass","tableColFixedClasses","tableRowFixedClasses","tdAlignClasses","tableDraggableClasses","trStyles","getRowFixedStyles","trAttributes","useMemo","formatRowAttributes","classes","customClasses","formatRowClassNames","useLazyLoadParams","useLazyLoad","current","hasLazyLoadHolder","tRowHeight","renderEllipsisCell","cellParams","cellNode","colIndex","placement","content","ellipsis","tableElement","tableElm","React","createElement","TEllipsis","attach","popupContent","popupProps","renderTd","extra","rowIndex2","cellSpans","dataLength2","rowAndColFixedPosition2","tdStyles","getColumnFixedStyles","className","classes2","tdLastRow","rowspan","tdFirstCol","rowspanAndColspan","align","handle","onClick","e","p","onCellClick","attrs","rowSpan","colSpan","colspan","key","classnames","style","columnVNodeList","columns","map","spanState","skipSpansMap","join","skipped","columnLength","length","rowParams","index","ref","onRowClick","onDoubleClick","onRowDblclick","onMouseDown","onRowMousedown","onMouseEnter","onRowMouseenter","onMouseLeave","onRowMouseleave","onMouseUp","onRowMouseup","onMouseOver","onRowMouseover","height","border","displayName"],"mappings":"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"}
@@ -40,7 +40,7 @@ import '../../_chunks/dep-6963df41.js';
40
40
  import '../../_chunks/dep-8fb1642c.js';
41
41
  import '../../_chunks/dep-bcb59ae2.js';
42
42
  import '../../_chunks/dep-048c506f.js';
43
- import '../../_chunks/dep-a1ce2324.js';
43
+ import '../../_chunks/dep-3a109495.js';
44
44
  import '../../_util/forwardRefWithStatics.js';
45
45
  import 'hoist-non-react-statics';
46
46
  import '../../common/Check.js';