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":"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","_typeof","renderTd","extra","rowIndex2","cellSpans","dataLength2","rowAndColFixedPosition2","tdStyles","getColumnFixedStyles","className","classes2","_defineProperty","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","_typeof","renderTd","extra","rowIndex2","cellSpans","dataLength2","rowAndColFixedPosition2","tdStyles","getColumnFixedStyles","className","classes2","_defineProperty","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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"}
@@ -41,7 +41,7 @@ require('../../_chunks/dep-910dcfa3.js');
41
41
  require('../../_chunks/dep-633a5671.js');
42
42
  require('../../_chunks/dep-9c339ffc.js');
43
43
  require('../../_chunks/dep-9cacaf01.js');
44
- require('../../_chunks/dep-202d2d2a.js');
44
+ require('../../_chunks/dep-cd7ea040.js');
45
45
  require('../../_util/forwardRefWithStatics.js');
46
46
  require('hoist-non-react-statics');
47
47
  require('../../common/Check.js');
@@ -84,7 +84,7 @@ require('../../_chunks/dep-e19f22f6.js');
84
84
  require('../../_util/useWindowSize.js');
85
85
  require('../../popup/defaultProps.js');
86
86
  require('../../checkbox/index.js');
87
- require('../../_chunks/dep-202d2d2a.js');
87
+ require('../../_chunks/dep-cd7ea040.js');
88
88
  require('../../_util/forwardRefWithStatics.js');
89
89
  require('hoist-non-react-statics');
90
90
  require('../../common/Check.js');
@@ -93,7 +93,7 @@ require('../../_chunks/dep-e3db5727.js');
93
93
  require('../../_chunks/dep-bc80a1a5.js');
94
94
  require('../../checkbox/defaultProps.js');
95
95
  require('../../radio/index.js');
96
- require('../../_chunks/dep-1b0236bc.js');
96
+ require('../../_chunks/dep-b8f2445b.js');
97
97
  require('../../_util/useCommonClassName.js');
98
98
  require('../../radio/defaultProps.js');
99
99
  require('../../input/index.js');
@@ -53,7 +53,7 @@ require('../../_chunks/dep-542cc308.js');
53
53
  require('../../_chunks/dep-c6637e11.js');
54
54
  require('../../_common/js/global-config/locale/zh_CN.js');
55
55
  require('../../config-provider/zh_CN_config.js');
56
- require('../../_chunks/dep-202d2d2a.js');
56
+ require('../../_chunks/dep-cd7ea040.js');
57
57
  require('../../_util/forwardRefWithStatics.js');
58
58
  require('hoist-non-react-statics');
59
59
  require('../../common/Check.js');
@@ -63,7 +63,7 @@ require('../../_util/helper.js');
63
63
  require('../../_chunks/dep-e3db5727.js');
64
64
  require('../../_chunks/dep-bc80a1a5.js');
65
65
  require('../../checkbox/defaultProps.js');
66
- require('../../_chunks/dep-1b0236bc.js');
66
+ require('../../_chunks/dep-b8f2445b.js');
67
67
  require('../../_util/useCommonClassName.js');
68
68
  require('../../radio/defaultProps.js');
69
69
  require('../../_util/useMutationObserver.js');
@@ -0,0 +1,10 @@
1
+ import { BaseTableCol, TableRowData, TableRowspanAndColspanFunc } from '../type';
2
+ export interface SkipSpansValue {
3
+ colspan?: number;
4
+ rowspan?: number;
5
+ skipped?: boolean;
6
+ }
7
+ export default function useRowspanAndColspan(data: TableRowData[], columns: BaseTableCol<TableRowData>[], rowspanAndColspan: TableRowspanAndColspanFunc<TableRowData>): {
8
+ skipSpansMap: Map<string, SkipSpansValue>;
9
+ updateSkipSpansMap: (data: TableRowData[], columns: BaseTableCol<TableRowData>[], rowspanAndColspan: TableRowspanAndColspanFunc<TableRowData>) => void;
10
+ };
@@ -0,0 +1,78 @@
1
+ /**
2
+ * tdesign v0.34.4
3
+ * (c) 2022 tdesign
4
+ * @license MIT
5
+ */
6
+
7
+ 'use strict';
8
+
9
+ Object.defineProperty(exports, '__esModule', { value: true });
10
+
11
+ var slicedToArray = require('../../_chunks/dep-3cf9becb.js');
12
+ var React = require('react');
13
+ require('../../_chunks/dep-19841e1d.js');
14
+
15
+ function useRowspanAndColspan(data, columns, rowspanAndColspan) {
16
+ var _useState = React.useState( /* @__PURE__ */new Map()),
17
+ _useState2 = slicedToArray._slicedToArray(_useState, 1),
18
+ skipSpansMap = _useState2[0];
19
+
20
+ var onTrRowspanOrColspan = function onTrRowspanOrColspan(params, skipSpansValue) {
21
+ var rowIndex = params.rowIndex,
22
+ colIndex = params.colIndex;
23
+ if (!skipSpansValue.rowspan && !skipSpansValue.colspan) return;
24
+ var maxRowIndex = rowIndex + (skipSpansValue.rowspan || 1);
25
+ var maxColIndex = colIndex + (skipSpansValue.colspan || 1);
26
+
27
+ for (var i = rowIndex; i < maxRowIndex; i++) {
28
+ for (var j = colIndex; j < maxColIndex; j++) {
29
+ if (i !== rowIndex || j !== colIndex) {
30
+ var cellKey = [i, j].join();
31
+ var state = skipSpansMap.get(cellKey) || {};
32
+ state.skipped = true;
33
+ skipSpansMap.set(cellKey, state);
34
+ }
35
+ }
36
+ }
37
+ };
38
+
39
+ var updateSkipSpansMap = function updateSkipSpansMap(data2, columns2, rowspanAndColspan2) {
40
+ if (!data2 || !rowspanAndColspan2) return;
41
+
42
+ for (var i = 0, len = data2.length; i < len; i++) {
43
+ var row = data2[i];
44
+
45
+ for (var j = 0, colLen = columns2.length; j < colLen; j++) {
46
+ var params = {
47
+ row: row,
48
+ col: columns2[j],
49
+ rowIndex: i,
50
+ colIndex: j
51
+ };
52
+ var cellKey = [i, j].join();
53
+ var state = skipSpansMap.get(cellKey) || {};
54
+ var o = rowspanAndColspan2(params) || {};
55
+
56
+ if (o.rowspan > 1 || o.colspan > 1 || state.rowspan || state.colspan) {
57
+ o.rowspan > 1 && (state.rowspan = o.rowspan);
58
+ o.colspan > 1 && (state.colspan = o.colspan);
59
+ skipSpansMap.set(cellKey, state);
60
+ }
61
+
62
+ onTrRowspanOrColspan === null || onTrRowspanOrColspan === void 0 ? void 0 : onTrRowspanOrColspan(params, state);
63
+ }
64
+ }
65
+ };
66
+
67
+ React.useEffect(function () {
68
+ if (!data || !rowspanAndColspan) return;
69
+ updateSkipSpansMap(data, columns, rowspanAndColspan);
70
+ }, [data, columns]);
71
+ return {
72
+ skipSpansMap: skipSpansMap,
73
+ updateSkipSpansMap: updateSkipSpansMap
74
+ };
75
+ }
76
+
77
+ exports["default"] = useRowspanAndColspan;
78
+ //# sourceMappingURL=useRowspanAndColspan.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useRowspanAndColspan.js","sources":["../../../src/table/hooks/useRowspanAndColspan.ts"],"sourcesContent":["import { useEffect, useState } from 'react';\nimport { BaseTableCellParams, BaseTableCol, TableRowData, TableRowspanAndColspanFunc } from '../type';\n\nexport interface SkipSpansValue {\n colspan?: number;\n rowspan?: number;\n skipped?: boolean;\n}\n\nexport default function useRowspanAndColspan(\n data: TableRowData[],\n columns: BaseTableCol<TableRowData>[],\n rowspanAndColspan: TableRowspanAndColspanFunc<TableRowData>,\n) {\n const [skipSpansMap] = useState(new Map<string, SkipSpansValue>());\n\n // 计算单元格是否跳过渲染\n const onTrRowspanOrColspan = (params: BaseTableCellParams<TableRowData>, skipSpansValue: SkipSpansValue) => {\n const { rowIndex, colIndex } = params;\n if (!skipSpansValue.rowspan && !skipSpansValue.colspan) return;\n const maxRowIndex = rowIndex + (skipSpansValue.rowspan || 1);\n const maxColIndex = colIndex + (skipSpansValue.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 const cellKey = [i, j].join();\n const state = skipSpansMap.get(cellKey) || {};\n state.skipped = true;\n skipSpansMap.set(cellKey, state);\n }\n }\n }\n };\n\n // 计算单元格是否需要设置 rowspan 和 colspan\n const updateSkipSpansMap = (\n data: TableRowData[],\n columns: BaseTableCol<TableRowData>[],\n rowspanAndColspan: TableRowspanAndColspanFunc<TableRowData>,\n ) => {\n if (!data || !rowspanAndColspan) return;\n for (let i = 0, len = data.length; i < len; i++) {\n const row = data[i];\n for (let j = 0, colLen = columns.length; j < colLen; j++) {\n const params = {\n row,\n col: columns[j],\n rowIndex: i,\n colIndex: j,\n };\n const cellKey = [i, j].join();\n const state = skipSpansMap.get(cellKey) || {};\n const o = rowspanAndColspan(params) || {};\n if (o.rowspan > 1 || o.colspan > 1 || state.rowspan || state.colspan) {\n o.rowspan > 1 && (state.rowspan = o.rowspan);\n o.colspan > 1 && (state.colspan = o.colspan);\n skipSpansMap.set(cellKey, state);\n }\n onTrRowspanOrColspan?.(params, state);\n }\n }\n };\n\n useEffect(() => {\n if (!data || !rowspanAndColspan) return;\n updateSkipSpansMap(data, columns, rowspanAndColspan);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [data, columns]);\n\n return { skipSpansMap, updateSkipSpansMap };\n}\n"],"names":["useRowspanAndColspan","data","columns","rowspanAndColspan","useState","Map","_slicedToArray","skipSpansMap","onTrRowspanOrColspan","params","skipSpansValue","rowIndex","colIndex","rowspan","colspan","maxRowIndex","maxColIndex","i","j","cellKey","join","state","get","skipped","set","updateSkipSpansMap","data2","columns2","rowspanAndColspan2","len","length","row","colLen","col","o","useEffect"],"mappings":"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"}
@@ -95,6 +95,7 @@ require('../popup/defaultProps.js');
95
95
  require('./hooks/useLazyLoad.js');
96
96
  require('../_common/js/utils/observe.js');
97
97
  require('../locale/LocalReceiver.js');
98
+ require('./hooks/useRowspanAndColspan.js');
98
99
  require('../affix/index.js');
99
100
  require('../affix/Affix.js');
100
101
  require('../affix/defaultProps.js');
@@ -171,7 +172,7 @@ require('../_chunks/dep-3f9b5113.js');
171
172
  require('../_chunks/dep-afd8013f.js');
172
173
  require('../_chunks/dep-bb21921b.js');
173
174
  require('../checkbox/index.js');
174
- require('../_chunks/dep-202d2d2a.js');
175
+ require('../_chunks/dep-cd7ea040.js');
175
176
  require('../common/Check.js');
176
177
  require('../checkbox/defaultProps.js');
177
178
  require('../dialog/plugin.js');
@@ -183,7 +184,7 @@ require('../_util/useSetState.js');
183
184
  require('./hooks/useRowExpand.js');
184
185
  require('./hooks/useRowSelect.js');
185
186
  require('../radio/index.js');
186
- require('../_chunks/dep-1b0236bc.js');
187
+ require('../_chunks/dep-b8f2445b.js');
187
188
  require('../radio/defaultProps.js');
188
189
  require('./hooks/useSorter.js');
189
190
  require('./SorterButton.js');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/table/index.ts"],"sourcesContent":["import _BaseTable from './BaseTable';\nimport _PrimaryTable from './PrimaryTable';\nimport _EnhancedTable from './EnhancedTable';\n\nimport './style/index.js';\n\nexport * from './type';\nexport * from './interface';\n\n/**\n * @deprecated\n * @description SimpleTable is going to be deprecated, use BaseTable instead.\n */\nexport const SimpleTable = _BaseTable;\n\nexport const BaseTable = _BaseTable;\nexport const PrimaryTable = _PrimaryTable;\nexport const Table = PrimaryTable;\nexport const EnhancedTable = _EnhancedTable;\n\nexport default Table;\n"],"names":["SimpleTable","_BaseTable","BaseTable","PrimaryTable","_PrimaryTable","Table","EnhancedTable","_EnhancedTable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,WAAW,GAAGC,2BAApB;AACA,IAAMC,SAAS,GAAGD,2BAAlB;AACA,IAAME,YAAY,GAAGC,8BAArB;AACA,IAAMC,KAAK,GAAGF,aAAd;AACA,IAAMG,aAAa,GAAGC;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/table/index.ts"],"sourcesContent":["import _BaseTable from './BaseTable';\nimport _PrimaryTable from './PrimaryTable';\nimport _EnhancedTable from './EnhancedTable';\n\nimport './style/index.js';\n\nexport * from './type';\nexport * from './interface';\n\n/**\n * @deprecated\n * @description SimpleTable is going to be deprecated, use BaseTable instead.\n */\nexport const SimpleTable = _BaseTable;\n\nexport const BaseTable = _BaseTable;\nexport const PrimaryTable = _PrimaryTable;\nexport const Table = PrimaryTable;\nexport const EnhancedTable = _EnhancedTable;\n\nexport default Table;\n"],"names":["SimpleTable","_BaseTable","BaseTable","PrimaryTable","_PrimaryTable","Table","EnhancedTable","_EnhancedTable"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMO,IAAMA,WAAW,GAAGC,2BAApB;AACA,IAAMC,SAAS,GAAGD,2BAAlB;AACA,IAAME,YAAY,GAAGC,8BAArB;AACA,IAAMC,KAAK,GAAGF,aAAd;AACA,IAAMG,aAAa,GAAGC;;;;;;;;;"}
@@ -138,7 +138,7 @@ var Textarea = /*#__PURE__*/React.forwardRef(function (props, ref) {
138
138
  }));
139
139
  return eventProps2;
140
140
  }, {});
141
- var textareaClassNames = classNames__default["default"](className, "".concat(classPrefix, "-textarea__inner"), (_classNames = {}, defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-is-").concat(status), status), defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-is-disabled"), disabled), defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-is-focused"), isFocused), defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-resize-none"), _typeof._typeof(autosize) === "object"), _classNames));
141
+ var textareaClassNames = classNames__default["default"]("".concat(classPrefix, "-textarea__inner"), className, (_classNames = {}, defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-is-").concat(status), status), defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-is-disabled"), disabled), defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-is-focused"), isFocused), defineProperty._defineProperty(_classNames, "".concat(classPrefix, "-resize-none"), _typeof._typeof(autosize) === "object"), _classNames));
142
142
  var adjustTextareaHeight = React.useCallback(function () {
143
143
  if (autosize === true) {
144
144
  setTextareaStyle(_common_js_utils_calcTextareaHeight["default"](textareaRef.current));
@@ -194,7 +194,7 @@ var Textarea = /*#__PURE__*/React.forwardRef(function (props, ref) {
194
194
  return /* @__PURE__ */React__default["default"].createElement("div", {
195
195
  style: style,
196
196
  ref: wrapperRef,
197
- className: classNames__default["default"](className, "".concat(classPrefix, "-textarea"))
197
+ className: classNames__default["default"]("".concat(classPrefix, "-textarea"), className)
198
198
  }, /* @__PURE__ */React__default["default"].createElement("textarea", _objectSpread(_objectSpread(_objectSpread({}, textareaProps), eventProps), {}, {
199
199
  value: value,
200
200
  style: textareaStyle,
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../../src/textarea/Textarea.tsx"],"sourcesContent":["import React, { forwardRef, useState, useEffect, useMemo, useRef, useCallback, useImperativeHandle } from 'react';\nimport classNames from 'classnames';\nimport useConfig from '../_util/useConfig';\nimport { TdTextareaProps } from './type';\nimport { StyledProps } from '../common';\nimport noop from '../_util/noop';\nimport useControlled from '../hooks/useControlled';\nimport { getCharacterLength } from '../_util/helper';\nimport calcTextareaHeight from '../_common/js/utils/calcTextareaHeight';\nimport { textareaDefaultProps } from './defaultProps';\n\nexport interface TextareaProps extends TdTextareaProps, StyledProps {}\nexport interface TextareaRefInterface extends React.RefObject<unknown> {\n currentElement: HTMLDivElement;\n textareaElement: HTMLTextAreaElement;\n}\n\nconst Textarea = forwardRef((props: TextareaProps, ref: TextareaRefInterface) => {\n const {\n disabled,\n maxlength,\n maxcharacter,\n className,\n readonly,\n autofocus,\n style,\n onKeydown = noop,\n onKeypress = noop,\n onKeyup = noop,\n autosize,\n status,\n tips,\n allowInputOverMax,\n ...otherProps\n } = props;\n\n const [value = '', setValue] = useControlled(props, 'value', props.onChange);\n const [isFocused, setIsFocused] = useState(false);\n const [isOvermax, setIsOvermax] = useState(false);\n const [textareaStyle, setTextareaStyle] = useState({});\n const hasMaxcharacter = typeof maxcharacter !== 'undefined';\n const textareaRef: React.RefObject<HTMLTextAreaElement> = useRef();\n const wrapperRef: React.RefObject<HTMLDivElement> = useRef();\n const currentLength = useMemo(() => (value ? String(value).length : 0), [value]);\n const characterLength = useMemo(() => {\n const characterInfo = getCharacterLength(String(value), allowInputOverMax ? Infinity : maxcharacter);\n if (typeof characterInfo === 'object') return characterInfo.length;\n return characterInfo;\n }, [value, allowInputOverMax, maxcharacter]);\n\n const { classPrefix } = useConfig();\n\n const textareaPropsNames = Object.keys(otherProps).filter((key) => !/^on[A-Z]/.test(key));\n const textareaProps = textareaPropsNames.reduce(\n (textareaProps, key) => Object.assign(textareaProps, { [key]: props[key] }),\n {},\n );\n const eventPropsNames = Object.keys(otherProps).filter((key) => /^on[A-Z]/.test(key));\n const eventProps = eventPropsNames.reduce((eventProps, key) => {\n Object.assign(eventProps, {\n [key]: (e) => {\n if (disabled) return;\n if (key === 'onFocus') setIsFocused(true);\n if (key === 'onBlur') setIsFocused(false);\n props[key](e.currentTarget.value, { e });\n },\n });\n return eventProps;\n }, {});\n\n const textareaClassNames = classNames(className, `${classPrefix}-textarea__inner`, {\n [`${classPrefix}-is-${status}`]: status,\n [`${classPrefix}-is-disabled`]: disabled,\n [`${classPrefix}-is-focused`]: isFocused,\n [`${classPrefix}-resize-none`]: typeof autosize === 'object',\n });\n\n const adjustTextareaHeight = useCallback(() => {\n if (autosize === true) {\n setTextareaStyle(calcTextareaHeight(textareaRef.current));\n } else if (typeof autosize === 'object') {\n setTextareaStyle(calcTextareaHeight(textareaRef.current, autosize?.minRows, autosize?.maxRows));\n }\n }, [autosize]);\n\n function inputValueChangeHandle(e: React.FormEvent<HTMLTextAreaElement>) {\n const { target } = e;\n let val = (target as HTMLInputElement).value;\n if (!allowInputOverMax && maxcharacter && maxcharacter >= 0) {\n const stringInfo = getCharacterLength(val, maxcharacter);\n val = typeof stringInfo === 'object' && stringInfo.characters;\n }\n setValue(val, { e });\n }\n\n const renderLimitText = (current: number, max: number) => (\n <span className={`${classPrefix}-textarea__limit`}>\n {isOvermax ? <span className={`${classPrefix}-textarea__tips--warning`}> {current}</span> : `${current}`}\n {`/${max}`}\n </span>\n );\n\n useEffect(() => {\n // 当未设置 autosize 时,需要将 textarea 的 height 设置为 auto,以支持原生的 textarea rows 属性\n if (autosize === false) {\n setTextareaStyle({ height: 'auto', minHeight: 'auto' });\n }\n }, [adjustTextareaHeight, autosize]);\n\n useEffect(() => {\n adjustTextareaHeight();\n }, [adjustTextareaHeight, value]);\n\n useEffect(() => {\n if (allowInputOverMax) {\n setIsOvermax(!!(maxlength && currentLength > maxlength) || !!(maxcharacter && characterLength > maxcharacter));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [characterLength]);\n\n useImperativeHandle(ref as TextareaRefInterface, () => ({\n currentElement: wrapperRef.current,\n textareaElement: textareaRef.current,\n }));\n\n return (\n <div style={style} ref={wrapperRef} className={classNames(className, `${classPrefix}-textarea`)}>\n <textarea\n {...textareaProps}\n {...eventProps}\n value={value}\n style={textareaStyle}\n className={textareaClassNames}\n readOnly={readonly}\n autoFocus={autofocus}\n disabled={disabled}\n maxLength={allowInputOverMax ? Infinity : maxlength}\n onChange={inputValueChangeHandle}\n onKeyDown={(e) => onKeydown(e.currentTarget.value, { e })}\n onKeyPress={(e) => onKeypress(e.currentTarget.value, { e })}\n onKeyUp={(e) => onKeyup(e.currentTarget.value, { e })}\n ref={textareaRef}\n />\n {hasMaxcharacter && renderLimitText(characterLength, maxcharacter)}\n {!hasMaxcharacter && maxlength && renderLimitText(currentLength, maxlength)}\n {tips ? (\n <div\n className={classNames(`${classPrefix}-textarea__tips`, {\n [`${classPrefix}-textarea__tips--normal`]: !status,\n [`${classPrefix}-textarea__tips--${status}`]: status,\n })}\n >\n {tips}\n </div>\n ) : null}\n </div>\n );\n});\n\nTextarea.displayName = 'Textarea';\nTextarea.defaultProps = textareaDefaultProps;\n\nexport default Textarea;\n"],"names":["Textarea","forwardRef","props","ref","disabled","maxlength","maxcharacter","className","readonly","autofocus","style","onKeydown","noop","onKeypress","onKeyup","autosize","status","tips","allowInputOverMax","otherProps","useControlled","onChange","_slicedToArray","value","setValue","useState","isFocused","setIsFocused","isOvermax","setIsOvermax","textareaStyle","setTextareaStyle","hasMaxcharacter","textareaRef","useRef","wrapperRef","currentLength","useMemo","String","length","characterLength","characterInfo","getCharacterLength","Infinity","_typeof","useConfig","classPrefix","textareaPropsNames","Object","keys","filter","key","test","textareaProps","reduce","textareaProps2","assign","_defineProperty","eventPropsNames","eventProps","eventProps2","e","currentTarget","textareaClassNames","classNames","adjustTextareaHeight","useCallback","calcTextareaHeight","current","minRows","maxRows","inputValueChangeHandle","target","val","stringInfo","characters","renderLimitText","max","React","createElement","useEffect","height","minHeight","useImperativeHandle","currentElement","textareaElement","readOnly","autoFocus","maxLength","onKeyDown","onKeyPress","onKeyUp","displayName","defaultProps","textareaDefaultProps"],"mappings":"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"}
1
+ {"version":3,"file":"Textarea.js","sources":["../../src/textarea/Textarea.tsx"],"sourcesContent":["import React, { forwardRef, useState, useEffect, useMemo, useRef, useCallback, useImperativeHandle } from 'react';\nimport classNames from 'classnames';\nimport useConfig from '../_util/useConfig';\nimport { TdTextareaProps } from './type';\nimport { StyledProps } from '../common';\nimport noop from '../_util/noop';\nimport useControlled from '../hooks/useControlled';\nimport { getCharacterLength } from '../_util/helper';\nimport calcTextareaHeight from '../_common/js/utils/calcTextareaHeight';\nimport { textareaDefaultProps } from './defaultProps';\n\nexport interface TextareaProps extends TdTextareaProps, StyledProps {}\nexport interface TextareaRefInterface extends React.RefObject<unknown> {\n currentElement: HTMLDivElement;\n textareaElement: HTMLTextAreaElement;\n}\n\nconst Textarea = forwardRef((props: TextareaProps, ref: TextareaRefInterface) => {\n const {\n disabled,\n maxlength,\n maxcharacter,\n className,\n readonly,\n autofocus,\n style,\n onKeydown = noop,\n onKeypress = noop,\n onKeyup = noop,\n autosize,\n status,\n tips,\n allowInputOverMax,\n ...otherProps\n } = props;\n\n const [value = '', setValue] = useControlled(props, 'value', props.onChange);\n const [isFocused, setIsFocused] = useState(false);\n const [isOvermax, setIsOvermax] = useState(false);\n const [textareaStyle, setTextareaStyle] = useState({});\n const hasMaxcharacter = typeof maxcharacter !== 'undefined';\n const textareaRef: React.RefObject<HTMLTextAreaElement> = useRef();\n const wrapperRef: React.RefObject<HTMLDivElement> = useRef();\n const currentLength = useMemo(() => (value ? String(value).length : 0), [value]);\n const characterLength = useMemo(() => {\n const characterInfo = getCharacterLength(String(value), allowInputOverMax ? Infinity : maxcharacter);\n if (typeof characterInfo === 'object') return characterInfo.length;\n return characterInfo;\n }, [value, allowInputOverMax, maxcharacter]);\n\n const { classPrefix } = useConfig();\n\n const textareaPropsNames = Object.keys(otherProps).filter((key) => !/^on[A-Z]/.test(key));\n const textareaProps = textareaPropsNames.reduce(\n (textareaProps, key) => Object.assign(textareaProps, { [key]: props[key] }),\n {},\n );\n const eventPropsNames = Object.keys(otherProps).filter((key) => /^on[A-Z]/.test(key));\n const eventProps = eventPropsNames.reduce((eventProps, key) => {\n Object.assign(eventProps, {\n [key]: (e) => {\n if (disabled) return;\n if (key === 'onFocus') setIsFocused(true);\n if (key === 'onBlur') setIsFocused(false);\n props[key](e.currentTarget.value, { e });\n },\n });\n return eventProps;\n }, {});\n\n const textareaClassNames = classNames(`${classPrefix}-textarea__inner`, className, {\n [`${classPrefix}-is-${status}`]: status,\n [`${classPrefix}-is-disabled`]: disabled,\n [`${classPrefix}-is-focused`]: isFocused,\n [`${classPrefix}-resize-none`]: typeof autosize === 'object',\n });\n\n const adjustTextareaHeight = useCallback(() => {\n if (autosize === true) {\n setTextareaStyle(calcTextareaHeight(textareaRef.current));\n } else if (typeof autosize === 'object') {\n setTextareaStyle(calcTextareaHeight(textareaRef.current, autosize?.minRows, autosize?.maxRows));\n }\n }, [autosize]);\n\n function inputValueChangeHandle(e: React.FormEvent<HTMLTextAreaElement>) {\n const { target } = e;\n let val = (target as HTMLInputElement).value;\n if (!allowInputOverMax && maxcharacter && maxcharacter >= 0) {\n const stringInfo = getCharacterLength(val, maxcharacter);\n val = typeof stringInfo === 'object' && stringInfo.characters;\n }\n setValue(val, { e });\n }\n\n const renderLimitText = (current: number, max: number) => (\n <span className={`${classPrefix}-textarea__limit`}>\n {isOvermax ? <span className={`${classPrefix}-textarea__tips--warning`}> {current}</span> : `${current}`}\n {`/${max}`}\n </span>\n );\n\n useEffect(() => {\n // 当未设置 autosize 时,需要将 textarea 的 height 设置为 auto,以支持原生的 textarea rows 属性\n if (autosize === false) {\n setTextareaStyle({ height: 'auto', minHeight: 'auto' });\n }\n }, [adjustTextareaHeight, autosize]);\n\n useEffect(() => {\n adjustTextareaHeight();\n }, [adjustTextareaHeight, value]);\n\n useEffect(() => {\n if (allowInputOverMax) {\n setIsOvermax(!!(maxlength && currentLength > maxlength) || !!(maxcharacter && characterLength > maxcharacter));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [characterLength]);\n\n useImperativeHandle(ref as TextareaRefInterface, () => ({\n currentElement: wrapperRef.current,\n textareaElement: textareaRef.current,\n }));\n\n return (\n <div style={style} ref={wrapperRef} className={classNames(`${classPrefix}-textarea`, className)}>\n <textarea\n {...textareaProps}\n {...eventProps}\n value={value}\n style={textareaStyle}\n className={textareaClassNames}\n readOnly={readonly}\n autoFocus={autofocus}\n disabled={disabled}\n maxLength={allowInputOverMax ? Infinity : maxlength}\n onChange={inputValueChangeHandle}\n onKeyDown={(e) => onKeydown(e.currentTarget.value, { e })}\n onKeyPress={(e) => onKeypress(e.currentTarget.value, { e })}\n onKeyUp={(e) => onKeyup(e.currentTarget.value, { e })}\n ref={textareaRef}\n />\n {hasMaxcharacter && renderLimitText(characterLength, maxcharacter)}\n {!hasMaxcharacter && maxlength && renderLimitText(currentLength, maxlength)}\n {tips ? (\n <div\n className={classNames(`${classPrefix}-textarea__tips`, {\n [`${classPrefix}-textarea__tips--normal`]: !status,\n [`${classPrefix}-textarea__tips--${status}`]: status,\n })}\n >\n {tips}\n </div>\n ) : null}\n </div>\n );\n});\n\nTextarea.displayName = 'Textarea';\nTextarea.defaultProps = textareaDefaultProps;\n\nexport default Textarea;\n"],"names":["Textarea","forwardRef","props","ref","disabled","maxlength","maxcharacter","className","readonly","autofocus","style","onKeydown","noop","onKeypress","onKeyup","autosize","status","tips","allowInputOverMax","otherProps","useControlled","onChange","_slicedToArray","value","setValue","useState","isFocused","setIsFocused","isOvermax","setIsOvermax","textareaStyle","setTextareaStyle","hasMaxcharacter","textareaRef","useRef","wrapperRef","currentLength","useMemo","String","length","characterLength","characterInfo","getCharacterLength","Infinity","_typeof","useConfig","classPrefix","textareaPropsNames","Object","keys","filter","key","test","textareaProps","reduce","textareaProps2","assign","_defineProperty","eventPropsNames","eventProps","eventProps2","e","currentTarget","textareaClassNames","classNames","adjustTextareaHeight","useCallback","calcTextareaHeight","current","minRows","maxRows","inputValueChangeHandle","target","val","stringInfo","characters","renderLimitText","max","React","createElement","useEffect","height","minHeight","useImperativeHandle","currentElement","textareaElement","readOnly","autoFocus","maxLength","onKeyDown","onKeyPress","onKeyUp","displayName","defaultProps","textareaDefaultProps"],"mappings":"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"}
@@ -73,7 +73,7 @@ require('../button/defaultProps.js');
73
73
  require('../_chunks/dep-6cea0d39.js');
74
74
  require('../_chunks/dep-244469fc.js');
75
75
  require('../checkbox/index.js');
76
- require('../_chunks/dep-202d2d2a.js');
76
+ require('../_chunks/dep-cd7ea040.js');
77
77
  require('../_util/forwardRefWithStatics.js');
78
78
  require('hoist-non-react-statics');
79
79
  require('../common/Check.js');
@@ -45,7 +45,7 @@ require('../_chunks/dep-542cc308.js');
45
45
  require('../_chunks/dep-c6637e11.js');
46
46
  require('../_common/js/global-config/locale/zh_CN.js');
47
47
  require('../config-provider/zh_CN_config.js');
48
- require('../_chunks/dep-202d2d2a.js');
48
+ require('../_chunks/dep-cd7ea040.js');
49
49
  require('../_util/forwardRefWithStatics.js');
50
50
  require('hoist-non-react-statics');
51
51
  require('../common/Check.js');
@@ -72,7 +72,7 @@ require('../_chunks/dep-6cea0d39.js');
72
72
  require('../_chunks/dep-244469fc.js');
73
73
  require('./utils.js');
74
74
  require('../checkbox/index.js');
75
- require('../_chunks/dep-202d2d2a.js');
75
+ require('../_chunks/dep-cd7ea040.js');
76
76
  require('../_util/forwardRefWithStatics.js');
77
77
  require('hoist-non-react-statics');
78
78
  require('../common/Check.js');
package/lib/tree/Tree.js CHANGED
@@ -70,7 +70,7 @@ require('../_util/useRipple.js');
70
70
  require('../_util/useAnimation.js');
71
71
  require('../_util/setStyle.js');
72
72
  require('../checkbox/index.js');
73
- require('../_chunks/dep-202d2d2a.js');
73
+ require('../_chunks/dep-cd7ea040.js');
74
74
  require('../_util/forwardRefWithStatics.js');
75
75
  require('hoist-non-react-statics');
76
76
  require('../common/Check.js');
@@ -57,7 +57,7 @@ require('../loading/defaultProps.js');
57
57
  require('../loading/plugin.js');
58
58
  require('../_util/useAnimation.js');
59
59
  require('../_util/setStyle.js');
60
- require('../_chunks/dep-202d2d2a.js');
60
+ require('../_chunks/dep-cd7ea040.js');
61
61
  require('../_util/forwardRefWithStatics.js');
62
62
  require('hoist-non-react-statics');
63
63
  require('../common/Check.js');
package/lib/tree/index.js CHANGED
@@ -70,7 +70,7 @@ require('../_util/useRipple.js');
70
70
  require('../_util/useAnimation.js');
71
71
  require('../_util/setStyle.js');
72
72
  require('../checkbox/index.js');
73
- require('../_chunks/dep-202d2d2a.js');
73
+ require('../_chunks/dep-cd7ea040.js');
74
74
  require('../_util/forwardRefWithStatics.js');
75
75
  require('hoist-non-react-statics');
76
76
  require('../common/Check.js');
@@ -78,7 +78,7 @@ require('../_util/useRipple.js');
78
78
  require('../_util/useAnimation.js');
79
79
  require('../_util/setStyle.js');
80
80
  require('../checkbox/index.js');
81
- require('../_chunks/dep-202d2d2a.js');
81
+ require('../_chunks/dep-cd7ea040.js');
82
82
  require('../_util/forwardRefWithStatics.js');
83
83
  require('hoist-non-react-statics');
84
84
  require('../common/Check.js');
@@ -72,7 +72,7 @@ require('../_util/useRipple.js');
72
72
  require('../_util/useAnimation.js');
73
73
  require('../_util/setStyle.js');
74
74
  require('../checkbox/index.js');
75
- require('../_chunks/dep-202d2d2a.js');
75
+ require('../_chunks/dep-cd7ea040.js');
76
76
  require('../_util/forwardRefWithStatics.js');
77
77
  require('hoist-non-react-statics');
78
78
  require('../common/Check.js');
@@ -80,6 +80,7 @@ require('../loading/plugin.js');
80
80
  require('../button/defaultProps.js');
81
81
  require('../_util/noop.js');
82
82
  require('../dialog/RenderDialog.js');
83
+ require('../_chunks/dep-bc80a1a5.js');
83
84
  require('react-transition-group');
84
85
  require('../_util/useLayoutEffect.js');
85
86
  require('../_util/useDialogEsc.js');
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../src/upload/index.tsx"],"sourcesContent":["import _Upload from './upload';\nimport type { TdUploadProps as UploadProps } from './type';\nimport './style/index.js';\n\nexport const Upload = _Upload;\n\nexport type { UploadProps };\nexport * from './type';\n\nexport default Upload;\n"],"names":["Upload","_Upload"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,MAAM,GAAGC;;;;;"}
1
+ {"version":3,"file":"index.js","sources":["../../src/upload/index.tsx"],"sourcesContent":["import _Upload from './upload';\nimport type { TdUploadProps as UploadProps } from './type';\nimport './style/index.js';\n\nexport const Upload = _Upload;\n\nexport type { UploadProps };\nexport * from './type';\n\nexport default Upload;\n"],"names":["Upload","_Upload"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,MAAM,GAAGC;;;;;"}
@@ -65,6 +65,7 @@ require('../../_util/setStyle.js');
65
65
  require('../../button/defaultProps.js');
66
66
  require('../../_util/noop.js');
67
67
  require('../../dialog/RenderDialog.js');
68
+ require('../../_chunks/dep-bc80a1a5.js');
68
69
  require('react-transition-group');
69
70
  require('../../_util/useLayoutEffect.js');
70
71
  require('../../_util/useDialogEsc.js');
@@ -1 +1 @@
1
- {"version":3,"file":"image-card.js","sources":["../../../src/upload/themes/image-card.tsx"],"sourcesContent":["import React, { FC, Fragment, useState } from 'react';\nimport { BrowseIcon, DeleteIcon, AddIcon } from 'tdesign-icons-react';\nimport Loading from '../../loading';\nimport Dialog from '../../dialog';\nimport useConfig from '../../_util/useConfig';\nimport { useLocaleReceiver } from '../../locale/LocalReceiver';\nimport { UploadRemoveContext } from '../type';\nimport { finishUpload } from '../util';\nimport { TdUploadFile } from '../types';\nimport BooleanRender from '../boolean-render';\n\nexport interface ImageCardProps {\n files?: TdUploadFile[];\n multiple?: boolean;\n max?: number;\n onTrigger: () => void;\n onRemove?: (options: UploadRemoveContext) => void;\n showUploadProgress: boolean;\n}\n\nconst ImageCard: FC<ImageCardProps> = (props) => {\n const { files, multiple = false, max = 0, onRemove, showUploadProgress } = props;\n const { classPrefix } = useConfig();\n const [locale, t] = useLocaleReceiver('upload');\n const [showImg, setShowImg] = useState(false);\n const [imgURL, setImgURL] = useState();\n\n const preview = (file) => {\n setShowImg(true);\n setImgURL(file.url);\n };\n\n const showTrigger = React.useMemo(() => {\n if (multiple) {\n return !max || files.length < max;\n }\n\n return !(files && files[0]);\n }, [files, max, multiple]);\n\n return (\n <Fragment>\n <Dialog\n visible={showImg}\n showOverlay\n width=\"auto\"\n top=\"10%\"\n className={`${classPrefix}-upload__dialog`}\n footer={false}\n header={false}\n onClose={() => {\n setShowImg(false);\n setImgURL(null);\n }}\n >\n <p className={`${classPrefix}-dialog__dialog-body-img-box`}>\n <img src={imgURL} alt=\"\" />\n </p>\n </Dialog>\n <ul className={`${classPrefix}-upload__card`}>\n <BooleanRender boolExpression={!!files}>\n {files.map((file, index) => (\n <li className={`${classPrefix}-upload__card-item ${classPrefix}-is--background`} key={index}>\n <BooleanRender\n falseRender={() => (\n <div className={`${classPrefix}-upload__card-content ${classPrefix}-upload__card-box`}>\n <img className={`${classPrefix}-upload__card-image`} src={file.url} />\n <div className={`${classPrefix}-upload__card-mask`}>\n <span className={`${classPrefix}-upload__card-mask-item`} onClick={(e) => e.stopPropagation()}>\n <BrowseIcon\n onClick={() => {\n preview(file);\n }}\n />\n </span>\n <span className={`${classPrefix}-upload__card-mask-item-divider`} />\n <span className={`${classPrefix}-upload__card-mask-item`} onClick={(e) => e.stopPropagation()}>\n <DeleteIcon\n onClick={(e) => {\n onRemove?.({ e, file, index });\n }}\n />\n </span>\n </div>\n </div>\n )}\n boolExpression={showUploadProgress && !finishUpload(file.status)}\n >\n <div className={`${classPrefix}-upload__card-container ${classPrefix}-upload__card-box`}>\n <Loading loading={true} size=\"medium\" />\n <p>\n {t(locale.progress.uploadingText)} {Math.min(files[index].percent, 99)}%\n </p>\n </div>\n </BooleanRender>\n </li>\n ))}\n </BooleanRender>\n <BooleanRender boolExpression={showTrigger}>\n <li className={`${classPrefix}-upload__card-item ${classPrefix}-is--background`} onClick={props.onTrigger}>\n <div className={`${classPrefix}-upload__card-container ${classPrefix}-upload__card-box`}>\n <AddIcon />\n <p className={`${classPrefix}-size-s`}>{t(locale.triggerUploadText.image)}</p>\n </div>\n </li>\n </BooleanRender>\n </ul>\n </Fragment>\n );\n};\n\nexport default ImageCard;\n"],"names":["ImageCard","props","files","multiple","max","onRemove","showUploadProgress","useConfig","classPrefix","useLocaleReceiver","_slicedToArray","locale","t","useState","showImg","setShowImg","imgURL","setImgURL","preview","file","url","showTrigger","React","useMemo","length","createElement","Fragment","Dialog","visible","showOverlay","width","top","className","footer","header","onClose","src","alt","BooleanRender","boolExpression","map","index","key","falseRender","onClick","e","stopPropagation","BrowseIcon","DeleteIcon","finishUpload","status","Loading","loading","size","progress","uploadingText","Math","min","percent","onTrigger","AddIcon","triggerUploadText","image"],"mappings":"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"}
1
+ {"version":3,"file":"image-card.js","sources":["../../../src/upload/themes/image-card.tsx"],"sourcesContent":["import React, { FC, Fragment, useState } from 'react';\nimport { BrowseIcon, DeleteIcon, AddIcon } from 'tdesign-icons-react';\nimport Loading from '../../loading';\nimport Dialog from '../../dialog';\nimport useConfig from '../../_util/useConfig';\nimport { useLocaleReceiver } from '../../locale/LocalReceiver';\nimport { UploadRemoveContext } from '../type';\nimport { finishUpload } from '../util';\nimport { TdUploadFile } from '../types';\nimport BooleanRender from '../boolean-render';\n\nexport interface ImageCardProps {\n files?: TdUploadFile[];\n multiple?: boolean;\n max?: number;\n onTrigger: () => void;\n onRemove?: (options: UploadRemoveContext) => void;\n showUploadProgress: boolean;\n}\n\nconst ImageCard: FC<ImageCardProps> = (props) => {\n const { files, multiple = false, max = 0, onRemove, showUploadProgress } = props;\n const { classPrefix } = useConfig();\n const [locale, t] = useLocaleReceiver('upload');\n const [showImg, setShowImg] = useState(false);\n const [imgURL, setImgURL] = useState();\n\n const preview = (file) => {\n setShowImg(true);\n setImgURL(file.url);\n };\n\n const showTrigger = React.useMemo(() => {\n if (multiple) {\n return !max || files.length < max;\n }\n\n return !(files && files[0]);\n }, [files, max, multiple]);\n\n return (\n <Fragment>\n <Dialog\n visible={showImg}\n showOverlay\n width=\"auto\"\n top=\"10%\"\n className={`${classPrefix}-upload__dialog`}\n footer={false}\n header={false}\n onClose={() => {\n setShowImg(false);\n setImgURL(null);\n }}\n >\n <p className={`${classPrefix}-dialog__dialog-body-img-box`}>\n <img src={imgURL} alt=\"\" />\n </p>\n </Dialog>\n <ul className={`${classPrefix}-upload__card`}>\n <BooleanRender boolExpression={!!files}>\n {files.map((file, index) => (\n <li className={`${classPrefix}-upload__card-item ${classPrefix}-is--background`} key={index}>\n <BooleanRender\n falseRender={() => (\n <div className={`${classPrefix}-upload__card-content ${classPrefix}-upload__card-box`}>\n <img className={`${classPrefix}-upload__card-image`} src={file.url} />\n <div className={`${classPrefix}-upload__card-mask`}>\n <span className={`${classPrefix}-upload__card-mask-item`} onClick={(e) => e.stopPropagation()}>\n <BrowseIcon\n onClick={() => {\n preview(file);\n }}\n />\n </span>\n <span className={`${classPrefix}-upload__card-mask-item-divider`} />\n <span className={`${classPrefix}-upload__card-mask-item`} onClick={(e) => e.stopPropagation()}>\n <DeleteIcon\n onClick={(e) => {\n onRemove?.({ e, file, index });\n }}\n />\n </span>\n </div>\n </div>\n )}\n boolExpression={showUploadProgress && !finishUpload(file.status)}\n >\n <div className={`${classPrefix}-upload__card-container ${classPrefix}-upload__card-box`}>\n <Loading loading={true} size=\"medium\" />\n <p>\n {t(locale.progress.uploadingText)} {Math.min(files[index].percent, 99)}%\n </p>\n </div>\n </BooleanRender>\n </li>\n ))}\n </BooleanRender>\n <BooleanRender boolExpression={showTrigger}>\n <li className={`${classPrefix}-upload__card-item ${classPrefix}-is--background`} onClick={props.onTrigger}>\n <div className={`${classPrefix}-upload__card-container ${classPrefix}-upload__card-box`}>\n <AddIcon />\n <p className={`${classPrefix}-size-s`}>{t(locale.triggerUploadText.image)}</p>\n </div>\n </li>\n </BooleanRender>\n </ul>\n </Fragment>\n );\n};\n\nexport default ImageCard;\n"],"names":["ImageCard","props","files","multiple","max","onRemove","showUploadProgress","useConfig","classPrefix","useLocaleReceiver","_slicedToArray","locale","t","useState","showImg","setShowImg","imgURL","setImgURL","preview","file","url","showTrigger","React","useMemo","length","createElement","Fragment","Dialog","visible","showOverlay","width","top","className","footer","header","onClose","src","alt","BooleanRender","boolExpression","map","index","key","falseRender","onClick","e","stopPropagation","BrowseIcon","DeleteIcon","finishUpload","status","Loading","loading","size","progress","uploadingText","Math","min","percent","onTrigger","AddIcon","triggerUploadText","image"],"mappings":"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"}
@@ -91,6 +91,7 @@ require('../loading/plugin.js');
91
91
  require('../button/defaultProps.js');
92
92
  require('../_util/noop.js');
93
93
  require('../dialog/RenderDialog.js');
94
+ require('../_chunks/dep-bc80a1a5.js');
94
95
  require('react-transition-group');
95
96
  require('../_util/useLayoutEffect.js');
96
97
  require('../_util/useDialogEsc.js');