tntd 3.0.0-beta.2 → 3.0.0-beta.20

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 (373) hide show
  1. package/es/alert/alert.js +5 -4
  2. package/es/alert/alert.js.map +1 -1
  3. package/es/array-input/index.js +57 -42
  4. package/es/array-input/index.js.map +1 -1
  5. package/es/array-input/index.less +4 -1
  6. package/es/button/button.less +17 -12
  7. package/es/cascader/cascader.js +30 -0
  8. package/es/cascader/cascader.js.map +1 -0
  9. package/es/cascader/cascader.less +16 -0
  10. package/es/cascader/index.js +3 -6
  11. package/es/cascader/index.js.map +1 -1
  12. package/es/check-card/index.js +2 -3
  13. package/es/check-card/index.js.map +1 -1
  14. package/es/checkbox/checkbox.js +5 -5
  15. package/es/checkbox/checkbox.js.map +1 -1
  16. package/es/collapse/collapse.less +3 -3
  17. package/es/color-picker/ColorPicker.js +4 -6
  18. package/es/color-picker/ColorPicker.js.map +1 -1
  19. package/es/descriptions/descriptions.js +35 -17
  20. package/es/descriptions/descriptions.js.map +1 -1
  21. package/es/descriptions/descriptions.less +6 -2
  22. package/es/descriptions/style/index.less +1 -0
  23. package/es/drawer/drawer.js +34 -24
  24. package/es/drawer/drawer.js.map +1 -1
  25. package/es/drawer/index.less +8 -12
  26. package/es/drawer/style/drawer.less +2 -4
  27. package/es/form/form.js +5 -3
  28. package/es/form/form.js.map +1 -1
  29. package/es/form/form.less +12 -6
  30. package/es/form/style/index.less +6 -6
  31. package/es/handle/index.js +9 -6
  32. package/es/handle/index.js.map +1 -1
  33. package/es/handle/index.less +16 -0
  34. package/es/handle-icon/index.js +201 -0
  35. package/es/handle-icon/index.js.map +1 -0
  36. package/es/handle-icon/index.less +53 -0
  37. package/es/icon/style/style.less +1 -1
  38. package/es/index.js +5 -0
  39. package/es/index.js.map +1 -1
  40. package/es/input/input.js +10 -6
  41. package/es/input/input.js.map +1 -1
  42. package/es/input/style/mixin.less +2 -3
  43. package/es/locale/en_US.js +6 -0
  44. package/es/locale/en_US.js.map +1 -1
  45. package/es/locale/zh_CN.js +6 -0
  46. package/es/locale/zh_CN.js.map +1 -1
  47. package/es/modal/style/confirm.less +6 -10
  48. package/es/modal/style/modal.less +1 -1
  49. package/es/page-container/index.js +13 -0
  50. package/es/page-container/index.js.map +1 -0
  51. package/es/page-container/index.less +38 -0
  52. package/es/page-loading/index.js +29 -0
  53. package/es/page-loading/index.js.map +1 -0
  54. package/es/page-loading/index.less +38 -0
  55. package/es/page-loading/loading.gif +0 -0
  56. package/es/query-form/index.js +125 -109
  57. package/es/query-form/index.js.map +1 -1
  58. package/es/query-form/index.less +9 -12
  59. package/es/{query-form → query-form-backup}/Field/Composition/index.less +11 -3
  60. package/es/query-form-backup/index.less +90 -0
  61. package/es/query-list-scene/QueryForm.js +1 -3
  62. package/es/query-list-scene/QueryForm.js.map +1 -1
  63. package/es/query-list-scene/index.less +3 -3
  64. package/es/radio/radio.js +4 -4
  65. package/es/radio/radio.js.map +1 -1
  66. package/es/select/select.js +5 -3
  67. package/es/select/select.js.map +1 -1
  68. package/es/select/select.less +1 -1
  69. package/es/select/style/index.less +4 -4
  70. package/es/style/themes/default.less +3 -3
  71. package/es/table/expand.less +49 -0
  72. package/es/table/hooks/index.js +2 -1
  73. package/es/table/hooks/index.js.map +1 -1
  74. package/es/table/hooks/use-expand-fixed.js +78 -0
  75. package/es/table/hooks/use-expand-fixed.js.map +1 -0
  76. package/es/table/index.js +1 -0
  77. package/es/table/index.js.map +1 -1
  78. package/es/table/style/index.less +61 -68
  79. package/es/table/style/size.less +4 -4
  80. package/es/table/table.js +49 -15
  81. package/es/table/table.js.map +1 -1
  82. package/es/table/table.less +13 -22
  83. package/es/table/table.stories.js +413 -2
  84. package/es/table/table.stories.js.map +1 -1
  85. package/es/table/utils.js +11 -0
  86. package/es/table/utils.js.map +1 -1
  87. package/es/table-container/index.js +15 -0
  88. package/es/table-container/index.js.map +1 -0
  89. package/es/table-container/index.less +16 -0
  90. package/es/tabs/tabs.less +23 -25
  91. package/es/tabs-container/index.js +13 -0
  92. package/es/tabs-container/index.js.map +1 -0
  93. package/es/tabs-container/index.less +51 -0
  94. package/es/tag/color.less +28 -18
  95. package/es/tag/index.js +1 -1
  96. package/es/tag/index.js.map +1 -1
  97. package/es/tag/tag.less +41 -5
  98. package/es/title/index.js +4 -3
  99. package/es/title/index.js.map +1 -1
  100. package/es/tntd-action/Action.js +60 -13
  101. package/es/tntd-action/Action.js.map +1 -1
  102. package/es/tntd-action/index.js +5 -5
  103. package/es/tntd-action/index.js.map +1 -1
  104. package/es/tntd-action/index.less +5 -3
  105. package/es/tntd-cascader/AntdCascader/component/getIcons.js +7 -8
  106. package/es/tntd-cascader/AntdCascader/component/getIcons.js.map +1 -1
  107. package/es/tntd-cascader/AntdCascader/index.js +4 -5
  108. package/es/tntd-cascader/AntdCascader/index.js.map +1 -1
  109. package/es/tntd-form/FormItem/ItemHolder.js +1 -6
  110. package/es/tntd-form/FormItem/ItemHolder.js.map +1 -1
  111. package/es/tntd-rc-select/_util/getIcons.js +7 -8
  112. package/es/tntd-rc-select/_util/getIcons.js.map +1 -1
  113. package/es/tntd-select/index.js +9 -8
  114. package/es/tntd-select/index.js.map +1 -1
  115. package/es/tntd-select/index.less +7 -0
  116. package/es/tooltip/index.js +1 -0
  117. package/es/tooltip/index.js.map +1 -1
  118. package/es/tooltip/index.less +1 -2
  119. package/lib/alert/alert.d.ts.map +1 -1
  120. package/lib/alert/alert.js +4 -3
  121. package/lib/alert/alert.js.map +1 -1
  122. package/lib/array-input/index.d.ts +1 -12
  123. package/lib/array-input/index.d.ts.map +1 -1
  124. package/lib/array-input/index.js +62 -55
  125. package/lib/array-input/index.js.map +1 -1
  126. package/lib/array-input/index.less +4 -1
  127. package/lib/button/button.less +17 -12
  128. package/lib/cascader/cascader.d.ts +10 -0
  129. package/lib/cascader/cascader.d.ts.map +1 -0
  130. package/lib/cascader/cascader.js +49 -0
  131. package/lib/cascader/cascader.js.map +1 -0
  132. package/lib/cascader/cascader.less +16 -0
  133. package/lib/cascader/index.d.ts +3 -7
  134. package/lib/cascader/index.d.ts.map +1 -1
  135. package/lib/cascader/index.js +5 -10
  136. package/lib/cascader/index.js.map +1 -1
  137. package/lib/check-card/index.js +1 -2
  138. package/lib/check-card/index.js.map +1 -1
  139. package/lib/checkbox/checkbox.d.ts +2 -2
  140. package/lib/checkbox/checkbox.d.ts.map +1 -1
  141. package/lib/checkbox/checkbox.js +5 -5
  142. package/lib/checkbox/checkbox.js.map +1 -1
  143. package/lib/collapse/collapse.less +3 -3
  144. package/lib/color-picker/ColorPicker.d.ts.map +1 -1
  145. package/lib/color-picker/ColorPicker.js +2 -4
  146. package/lib/color-picker/ColorPicker.js.map +1 -1
  147. package/lib/descriptions/descriptions.d.ts.map +1 -1
  148. package/lib/descriptions/descriptions.js +38 -19
  149. package/lib/descriptions/descriptions.js.map +1 -1
  150. package/lib/descriptions/descriptions.less +6 -2
  151. package/lib/descriptions/style/index.less +1 -0
  152. package/lib/drawer/drawer.d.ts +5 -0
  153. package/lib/drawer/drawer.d.ts.map +1 -1
  154. package/lib/drawer/drawer.js +34 -23
  155. package/lib/drawer/drawer.js.map +1 -1
  156. package/lib/drawer/index.less +8 -12
  157. package/lib/drawer/style/drawer.less +2 -4
  158. package/lib/form/form.js +5 -3
  159. package/lib/form/form.js.map +1 -1
  160. package/lib/form/form.less +12 -6
  161. package/lib/form/style/index.less +6 -6
  162. package/lib/handle/index.d.ts.map +1 -1
  163. package/lib/handle/index.js +15 -10
  164. package/lib/handle/index.js.map +1 -1
  165. package/lib/handle/index.less +16 -0
  166. package/lib/handle-icon/index.d.ts +7 -0
  167. package/lib/handle-icon/index.d.ts.map +1 -0
  168. package/lib/handle-icon/index.js +221 -0
  169. package/lib/handle-icon/index.js.map +1 -0
  170. package/lib/handle-icon/index.less +53 -0
  171. package/lib/icon/style/style.less +1 -1
  172. package/lib/index.d.ts +5 -0
  173. package/lib/index.d.ts.map +1 -1
  174. package/lib/index.js +35 -0
  175. package/lib/index.js.map +1 -1
  176. package/lib/input/input.js +8 -4
  177. package/lib/input/input.js.map +1 -1
  178. package/lib/input/style/mixin.less +2 -3
  179. package/lib/locale/default.d.ts +6 -0
  180. package/lib/locale/default.d.ts.map +1 -1
  181. package/lib/locale/en_US.d.ts +6 -0
  182. package/lib/locale/en_US.d.ts.map +1 -1
  183. package/lib/locale/en_US.js +6 -0
  184. package/lib/locale/en_US.js.map +1 -1
  185. package/lib/locale/zh_CN.d.ts +6 -0
  186. package/lib/locale/zh_CN.d.ts.map +1 -1
  187. package/lib/locale/zh_CN.js +6 -0
  188. package/lib/locale/zh_CN.js.map +1 -1
  189. package/lib/modal/style/confirm.less +6 -10
  190. package/lib/modal/style/modal.less +1 -1
  191. package/lib/page-container/index.d.ts +4 -0
  192. package/lib/page-container/index.d.ts.map +1 -0
  193. package/lib/page-container/index.js +22 -0
  194. package/lib/page-container/index.js.map +1 -0
  195. package/lib/page-container/index.less +38 -0
  196. package/lib/{query-form/Field/Composition/Select.d.ts → page-loading/index.d.ts} +1 -1
  197. package/lib/page-loading/index.d.ts.map +1 -0
  198. package/lib/page-loading/index.js +34 -0
  199. package/lib/page-loading/index.js.map +1 -0
  200. package/lib/page-loading/index.less +38 -0
  201. package/lib/page-loading/loading.gif +0 -0
  202. package/lib/query-form/index.d.ts +7 -4
  203. package/lib/query-form/index.d.ts.map +1 -1
  204. package/lib/query-form/index.js +149 -137
  205. package/lib/query-form/index.js.map +1 -1
  206. package/lib/query-form/index.less +9 -12
  207. package/lib/{query-form → query-form-backup}/Field/Composition/index.less +11 -3
  208. package/lib/query-form-backup/index.less +90 -0
  209. package/lib/query-list-scene/QueryForm.js +2 -3
  210. package/lib/query-list-scene/QueryForm.js.map +1 -1
  211. package/lib/query-list-scene/index.less +3 -3
  212. package/lib/radio/radio.d.ts +2 -2
  213. package/lib/radio/radio.d.ts.map +1 -1
  214. package/lib/radio/radio.js +4 -4
  215. package/lib/radio/radio.js.map +1 -1
  216. package/lib/select/select.d.ts.map +1 -1
  217. package/lib/select/select.js +4 -2
  218. package/lib/select/select.js.map +1 -1
  219. package/lib/select/select.less +1 -1
  220. package/lib/select/style/index.less +4 -4
  221. package/lib/style/themes/default.less +3 -3
  222. package/lib/table/expand.less +49 -0
  223. package/lib/table/hooks/index.d.ts +1 -0
  224. package/lib/table/hooks/index.d.ts.map +1 -1
  225. package/lib/table/hooks/index.js +11 -0
  226. package/lib/table/hooks/index.js.map +1 -1
  227. package/lib/table/hooks/use-expand-fixed.d.ts +4 -0
  228. package/lib/table/hooks/use-expand-fixed.d.ts.map +1 -0
  229. package/lib/table/hooks/use-expand-fixed.js +108 -0
  230. package/lib/table/hooks/use-expand-fixed.js.map +1 -0
  231. package/lib/table/index.d.ts +1 -0
  232. package/lib/table/index.d.ts.map +1 -1
  233. package/lib/table/index.js +1 -0
  234. package/lib/table/index.js.map +1 -1
  235. package/lib/table/style/index.less +61 -68
  236. package/lib/table/style/size.less +4 -4
  237. package/lib/table/table.d.ts +3 -1
  238. package/lib/table/table.d.ts.map +1 -1
  239. package/lib/table/table.js +50 -13
  240. package/lib/table/table.js.map +1 -1
  241. package/lib/table/table.less +13 -22
  242. package/lib/table/table.stories.d.ts +106 -29
  243. package/lib/table/table.stories.d.ts.map +1 -1
  244. package/lib/table/table.stories.js +426 -3
  245. package/lib/table/table.stories.js.map +1 -1
  246. package/lib/table/utils.d.ts +1 -0
  247. package/lib/table/utils.d.ts.map +1 -1
  248. package/lib/table/utils.js +13 -0
  249. package/lib/table/utils.js.map +1 -1
  250. package/lib/table-container/index.d.ts +3 -0
  251. package/lib/table-container/index.d.ts.map +1 -0
  252. package/lib/table-container/index.js +25 -0
  253. package/lib/table-container/index.js.map +1 -0
  254. package/lib/table-container/index.less +16 -0
  255. package/lib/tabs/tabs.less +23 -25
  256. package/lib/tabs-container/index.d.ts +4 -0
  257. package/lib/tabs-container/index.d.ts.map +1 -0
  258. package/lib/tabs-container/index.js +22 -0
  259. package/lib/tabs-container/index.js.map +1 -0
  260. package/lib/tabs-container/index.less +51 -0
  261. package/lib/tag/color.less +28 -18
  262. package/lib/tag/index.js +1 -1
  263. package/lib/tag/index.js.map +1 -1
  264. package/lib/tag/tag.less +41 -5
  265. package/lib/title/index.d.ts +1 -0
  266. package/lib/title/index.d.ts.map +1 -1
  267. package/lib/title/index.js +3 -2
  268. package/lib/title/index.js.map +1 -1
  269. package/lib/tntd-action/Action.d.ts +1 -1
  270. package/lib/tntd-action/Action.js +65 -14
  271. package/lib/tntd-action/Action.js.map +1 -1
  272. package/lib/tntd-action/index.js +6 -8
  273. package/lib/tntd-action/index.js.map +1 -1
  274. package/lib/tntd-action/index.less +5 -3
  275. package/lib/tntd-cascader/AntdCascader/component/getIcons.js +2 -3
  276. package/lib/tntd-cascader/AntdCascader/component/getIcons.js.map +1 -1
  277. package/lib/tntd-cascader/AntdCascader/index.d.ts.map +1 -1
  278. package/lib/tntd-cascader/AntdCascader/index.js +1 -2
  279. package/lib/tntd-cascader/AntdCascader/index.js.map +1 -1
  280. package/lib/tntd-form/FormItem/ItemHolder.js +1 -6
  281. package/lib/tntd-form/FormItem/ItemHolder.js.map +1 -1
  282. package/lib/tntd-rc-select/_util/getIcons.js +2 -3
  283. package/lib/tntd-rc-select/_util/getIcons.js.map +1 -1
  284. package/lib/tntd-select/index.d.ts.map +1 -1
  285. package/lib/tntd-select/index.js +8 -7
  286. package/lib/tntd-select/index.js.map +1 -1
  287. package/lib/tntd-select/index.less +7 -0
  288. package/lib/tooltip/index.d.ts +1 -0
  289. package/lib/tooltip/index.d.ts.map +1 -1
  290. package/lib/tooltip/index.js +1 -0
  291. package/lib/tooltip/index.js.map +1 -1
  292. package/lib/tooltip/index.less +1 -2
  293. package/package.json +5 -4
  294. package/themes/common/css2.x.css +1 -0
  295. package/themes/common/css3.x.css +1 -0
  296. package/themes/default/lessVars3.x.less +4 -6
  297. package/themes/default/variables.less +3 -3
  298. package/themes/default/variablesVar.less +3 -3
  299. package/es/array-input/icon.js +0 -25
  300. package/es/array-input/icon.js.map +0 -1
  301. package/es/checkbox/checkbox-group.js +0 -5
  302. package/es/checkbox/checkbox-group.js.map +0 -1
  303. package/es/drawer/drawer.less +0 -20
  304. package/es/grid/RowContext.js +0 -3
  305. package/es/grid/RowContext.js.map +0 -1
  306. package/es/grid/col.js +0 -103
  307. package/es/grid/col.js.map +0 -1
  308. package/es/grid/hooks/useBreakpoint.js +0 -18
  309. package/es/grid/hooks/useBreakpoint.js.map +0 -1
  310. package/es/grid/row.js +0 -154
  311. package/es/grid/row.js.map +0 -1
  312. package/es/grid/style/rtl.less +0 -69
  313. package/es/modal/modal.less +0 -18
  314. package/es/query-form/Field/Composition/FieldPopover.js +0 -284
  315. package/es/query-form/Field/Composition/FieldPopover.js.map +0 -1
  316. package/es/query-form/Field/Composition/Select.js +0 -108
  317. package/es/query-form/Field/Composition/Select.js.map +0 -1
  318. package/es/query-form/Field/Composition/index.js +0 -275
  319. package/es/query-form/Field/Composition/index.js.map +0 -1
  320. package/es/query-form/Field/Composition/utils.js +0 -19
  321. package/es/query-form/Field/Composition/utils.js.map +0 -1
  322. package/es/radio/radio-group.js +0 -5
  323. package/es/radio/radio-group.js.map +0 -1
  324. package/es/steps/stepStyle/small.less +0 -5
  325. package/lib/array-input/icon.d.ts +0 -4
  326. package/lib/array-input/icon.d.ts.map +0 -1
  327. package/lib/array-input/icon.js +0 -32
  328. package/lib/array-input/icon.js.map +0 -1
  329. package/lib/checkbox/checkbox-group.d.ts +0 -8
  330. package/lib/checkbox/checkbox-group.d.ts.map +0 -1
  331. package/lib/checkbox/checkbox-group.js +0 -12
  332. package/lib/checkbox/checkbox-group.js.map +0 -1
  333. package/lib/drawer/drawer.less +0 -20
  334. package/lib/grid/RowContext.d.ts +0 -9
  335. package/lib/grid/RowContext.d.ts.map +0 -1
  336. package/lib/grid/RowContext.js +0 -9
  337. package/lib/grid/RowContext.js.map +0 -1
  338. package/lib/grid/col.d.ts +0 -29
  339. package/lib/grid/col.d.ts.map +0 -1
  340. package/lib/grid/col.js +0 -100
  341. package/lib/grid/col.js.map +0 -1
  342. package/lib/grid/hooks/useBreakpoint.d.ts +0 -4
  343. package/lib/grid/hooks/useBreakpoint.d.ts.map +0 -1
  344. package/lib/grid/hooks/useBreakpoint.js +0 -28
  345. package/lib/grid/hooks/useBreakpoint.js.map +0 -1
  346. package/lib/grid/row.d.ts +0 -21
  347. package/lib/grid/row.d.ts.map +0 -1
  348. package/lib/grid/row.js +0 -183
  349. package/lib/grid/row.js.map +0 -1
  350. package/lib/grid/style/rtl.less +0 -69
  351. package/lib/modal/modal.less +0 -18
  352. package/lib/query-form/Field/Composition/FieldPopover.d.ts +0 -17
  353. package/lib/query-form/Field/Composition/FieldPopover.d.ts.map +0 -1
  354. package/lib/query-form/Field/Composition/FieldPopover.js +0 -319
  355. package/lib/query-form/Field/Composition/FieldPopover.js.map +0 -1
  356. package/lib/query-form/Field/Composition/Select.d.ts.map +0 -1
  357. package/lib/query-form/Field/Composition/Select.js +0 -132
  358. package/lib/query-form/Field/Composition/Select.js.map +0 -1
  359. package/lib/query-form/Field/Composition/index.d.ts +0 -14
  360. package/lib/query-form/Field/Composition/index.d.ts.map +0 -1
  361. package/lib/query-form/Field/Composition/index.js +0 -330
  362. package/lib/query-form/Field/Composition/index.js.map +0 -1
  363. package/lib/query-form/Field/Composition/utils.d.ts +0 -6
  364. package/lib/query-form/Field/Composition/utils.d.ts.map +0 -1
  365. package/lib/query-form/Field/Composition/utils.js +0 -27
  366. package/lib/query-form/Field/Composition/utils.js.map +0 -1
  367. package/lib/radio/radio-group.d.ts +0 -8
  368. package/lib/radio/radio-group.d.ts.map +0 -1
  369. package/lib/radio/radio-group.js +0 -12
  370. package/lib/radio/radio-group.js.map +0 -1
  371. package/lib/steps/stepStyle/small.less +0 -5
  372. /package/es/{query-form → query-form-backup}/Field/Composition/FieldPopover.less +0 -0
  373. /package/lib/{query-form → query-form-backup}/Field/Composition/FieldPopover.less +0 -0
@@ -95,7 +95,7 @@
95
95
  .@{table-prefix-cls}-column-sorter-up,
96
96
  .@{table-prefix-cls}-column-sorter-down {
97
97
  .iconfont-size-under-12px(11px);
98
-
98
+ font-size: 12px !important;
99
99
  display: block;
100
100
  height: 1em;
101
101
  line-height: 1em;
@@ -233,7 +233,7 @@
233
233
  transition: all 0.3s, height 0s;
234
234
  &.@{table-prefix-cls}-row-hover,
235
235
  &:hover {
236
- &:not(.@{table-prefix-cls}-expanded-row):not(.@{table-prefix-cls}-row-selected) {
236
+ &:not(.@{table-prefix-cls}-expanded-row) {
237
237
  box-shadow: 0px 0px 5px -5px rgba(0, 0, 0, 0.05), 0px 0px 25px 0px rgba(0, 0, 0, 0.1);
238
238
  position: relative;
239
239
  > td {
@@ -243,45 +243,16 @@
243
243
  }
244
244
  }
245
245
 
246
- &-thead > tr,
247
- &-tbody > tr {
248
- transition: all 0.3s, height 0s;
249
- // &.@{table-prefix-cls}-row-hover,
250
- // &:hover {
251
- // &:not(.@{table-prefix-cls}-expanded-row):not(.@{table-prefix-cls}-row-selected) {
252
- // box-shadow: 0px 0px 5px -5px rgba(0, 0, 0, 0.05), 0px 0px 25px 0px rgba(0, 0, 0, 0.1);
253
- // position: relative;
254
- // > td {
255
- // background: @table-row-hover-bg;
256
- // }
257
- // }
258
- // }
259
- &.@{table-prefix-cls}-row-selected > td {
260
- &.@{table-prefix-cls}-column-sort {
261
- background: @table-body-selected-sort-bg;
262
- }
263
- }
264
- &:hover {
265
- &.@{table-prefix-cls}-row-selected > td {
266
- background: @table-selected-row-hover-bg;
267
- &.@{table-prefix-cls}-column-sort {
268
- background: @table-body-selected-sort-bg;
269
- }
270
- }
271
- }
272
- }
273
-
274
246
  &-thead > tr:hover {
275
247
  background: none;
276
248
  }
277
249
 
278
250
  &-footer {
279
- position: relative;
251
+ // position: relative;
280
252
  padding: @table-padding-vertical @table-padding-horizontal;
281
253
  color: @table-footer-color;
282
254
  background: @table-footer-bg;
283
255
  border-top: @border-width-base @border-style-base @border-color-split;
284
- border-radius: 0 0 @table-border-radius-base @table-border-radius-base;
285
256
  &::before {
286
257
  position: absolute;
287
258
  top: -1px;
@@ -293,26 +264,25 @@
293
264
  }
294
265
  }
295
266
 
296
- &.@{table-prefix-cls}-bordered &-footer {
297
- border: @border-width-base @border-style-base @border-color-split;
298
- }
267
+ // &.@{table-prefix-cls}-bordered &-footer {
268
+ // border: @border-width-base @border-style-base @border-color-split;
269
+ // }
299
270
 
300
271
  &-title {
301
- position: relative;
302
- top: 1px;
272
+ // position: relative;
273
+ // top: 1px;
303
274
  padding: @table-padding-vertical 0;
304
- border-radius: @table-border-radius-base @table-border-radius-base 0 0;
305
275
  }
306
276
 
307
277
  &.@{table-prefix-cls}-bordered &-title {
308
278
  padding-right: @table-padding-horizontal;
309
279
  padding-left: @table-padding-horizontal;
310
- border: @border-width-base @border-style-base @border-color-split;
280
+ border-bottom: @border-width-base @border-style-base @border-color-split;
311
281
  }
312
282
 
313
283
  &-title + &-content {
314
- position: relative;
315
- border-radius: @table-border-radius-base @table-border-radius-base 0 0;
284
+ // position: relative;
285
+ // border-radius: @table-border-radius-base @table-border-radius-base 0 0;
316
286
 
317
287
  .@{table-prefix-cls}-bordered & {
318
288
  &,
@@ -336,8 +306,22 @@
336
306
  }
337
307
 
338
308
  &-tbody > tr.@{table-prefix-cls}-row-selected td {
339
- color: @table-selected-row-color;
340
- background: @table-selected-row-bg;
309
+ // color: @table-selected-row-color;
310
+ // background: @table-selected-row-bg;
311
+ &.@{table-prefix-cls}-selection-column {
312
+ position: relative;
313
+ &::after {
314
+ content: ' ';
315
+ width: 4px;
316
+ height: calc(100% - 10px);
317
+ background: @blue-5;
318
+ display: block;
319
+ position: absolute;
320
+ top: 5px;
321
+ left: 0;
322
+ border-radius: 0 4px 4px 0;
323
+ }
324
+ }
341
325
  }
342
326
 
343
327
  &-thead > tr > th.@{table-prefix-cls}-column-sort {
@@ -397,23 +381,26 @@
397
381
  }
398
382
 
399
383
  &-bordered {
400
- .@{table-prefix-cls}-header > table,
401
- .@{table-prefix-cls}-body > table,
402
- .@{table-prefix-cls}-fixed-left table,
403
- .@{table-prefix-cls}-fixed-right table {
404
- border: @border-width-base @border-style-base @border-color-split;
405
- border-right: 0;
406
- // border-bottom: 0;
407
- }
408
-
409
- .@{table-prefix-cls}-body > table {
410
- border-radius: @border-radius-base;
411
- }
384
+ border: @border-width-base @border-style-base @border-color-split;
385
+ border-radius: @border-radius-base;
386
+ overflow: hidden;
387
+ // .@{table-prefix-cls}-header > table,
388
+ // .@{table-prefix-cls}-body > table,
389
+ // .@{table-prefix-cls}-fixed-left table,
390
+ // .@{table-prefix-cls}-fixed-right table {
391
+ // border: @border-width-base @border-style-base @border-color-split;
392
+ // border-right: 0;
393
+ // border-bottom: 0;
394
+ // }
412
395
 
413
396
  &.@{table-prefix-cls}-empty {
397
+ .@{table-prefix-cls}-body > table {
398
+ border-radius: @border-radius-base @border-radius-base 0 0;
399
+ }
414
400
  .@{table-prefix-cls}-placeholder {
415
- border-right: @border-width-base @border-style-base @border-color-split;
416
- border-left: @border-width-base @border-style-base @border-color-split;
401
+ // border-right: @border-width-base @border-style-base @border-color-split;
402
+ // border-left: @border-width-base @border-style-base @border-color-split;
403
+ border-bottom: 0;
417
404
  }
418
405
  }
419
406
 
@@ -440,22 +427,28 @@
440
427
  .@{table-prefix-cls}-thead > tr > th,
441
428
  .@{table-prefix-cls}-tbody > tr > td {
442
429
  border-right: @border-width-base @border-style-base @border-color-split;
430
+ &:last-child {
431
+ border-right: 0;
432
+ }
443
433
  }
444
- .@{table-prefix-cls}-tbody > tr:last-child {
445
- & > td {
446
- border-bottom: none;
447
- &:first-child {
448
- border-bottom-left-radius: @border-radius-base;
434
+ .@{table-prefix-cls}-fixed-left {
435
+ .@{table-prefix-cls}-thead > tr > th,
436
+ .@{table-prefix-cls}-tbody > tr > td {
437
+ &:last-child {
438
+ border-right: @border-width-base @border-style-base @border-color-split;
449
439
  }
450
440
  }
451
441
  }
452
-
453
- .@{table-prefix-cls}-tbody > tr:last-child > td:last-child {
454
- border-bottom-right-radius: @border-radius-base;
455
- .@{table-prefix-cls}-has-footer & {
456
- border-bottom-right-radius: 0;
442
+ .@{table-prefix-cls}-content:has(.@{table-prefix-cls}-fixed-right) .@{table-prefix-cls}-scroll {
443
+ .@{table-prefix-cls}-thead > tr > th {
444
+ &:last-child {
445
+ border-right: @border-width-base @border-style-base @border-color-split;
446
+ }
457
447
  }
458
448
  }
449
+ .@{table-prefix-cls}-tbody > tr:last-child > td {
450
+ border-bottom: 0;
451
+ }
459
452
  }
460
453
 
461
454
  &-placeholder {
@@ -469,7 +462,7 @@
469
462
  background: @component-background;
470
463
  border-top: @border-width-base @border-style-base @border-color-split;
471
464
  border-bottom: @border-width-base @border-style-base @border-color-split;
472
- border-radius: 0 0 @border-radius-base @border-radius-base;
465
+ // border-radius: 0 0 @border-radius-base @border-radius-base;
473
466
  }
474
467
 
475
468
  &-pagination.@{ant-prefix}-pagination {
@@ -120,7 +120,7 @@
120
120
  }
121
121
 
122
122
  &.@{table-prefix-cls}-bordered {
123
- border-right: 0;
123
+ // border-right: 0;
124
124
 
125
125
  .@{table-prefix-cls}-title {
126
126
  border: 0;
@@ -128,9 +128,9 @@
128
128
  border-bottom: @border-width-base @border-style-base @border-color-split;
129
129
  }
130
130
 
131
- .@{table-prefix-cls}-content {
132
- border-right: @border-width-base @border-style-base @border-color-split;
133
- }
131
+ // .@{table-prefix-cls}-content {
132
+ // border-right: @border-width-base @border-style-base @border-color-split;
133
+ // }
134
134
 
135
135
  .@{table-prefix-cls}-footer {
136
136
  border: 0;
package/es/table/table.js CHANGED
@@ -14,14 +14,15 @@ import { default as AntdTable } from 'antd/es/table';
14
14
  import Column from 'antd/es/table/Column';
15
15
  import ColumnGroup from 'antd/es/table/ColumnGroup';
16
16
  import classNames from 'classnames';
17
- import React, { useMemo, useRef } from 'react';
17
+ import React, { useMemo, useRef, useState } from 'react';
18
18
  import Ellipsis from '../ellipsis';
19
19
  import { TableContext } from './context';
20
- import { useColumnSetting } from './hooks';
20
+ import { useColumnSetting, useExpandFixed } from './hooks';
21
21
  import { normalizeColumns } from './utils';
22
22
  import { titleCaseUpper } from '../utils/lang';
23
23
  import { TotalShower } from './total-shower';
24
24
  import { getLanguage } from '../prev-locale';
25
+ import ResizeObserver from 'rc-resize-observer';
25
26
  const sizeWidthMap = {
26
27
  default: 40,
27
28
  middle: 20,
@@ -55,7 +56,8 @@ export const Table = _a => {
55
56
  storageKey,
56
57
  columns,
57
58
  children,
58
- shadowed = !bordered,
59
+ sticky = false,
60
+ shadowed,
59
61
  striped = true,
60
62
  showCellBorders = false,
61
63
  // pagination,
@@ -65,9 +67,10 @@ export const Table = _a => {
65
67
  unUpperConverted,
66
68
  // 强制不要转换
67
69
  unTooltip,
70
+ smallPadding,
68
71
  rowClassName
69
72
  } = _a,
70
- rest = __rest(_a, ["className", "locale", "bordered", "size", "storageKey", "columns", "children", "shadowed", "striped", "showCellBorders", "enableToolbar", "refresh", "upperCaseIgnore", "unUpperConverted", "unTooltip", "rowClassName"]);
73
+ rest = __rest(_a, ["className", "locale", "bordered", "size", "storageKey", "columns", "children", "sticky", "shadowed", "striped", "showCellBorders", "enableToolbar", "refresh", "upperCaseIgnore", "unUpperConverted", "unTooltip", "smallPadding", "rowClassName"]);
71
74
  const tableContainer = useRef(null);
72
75
  // const [innerSize, setInnerSize] = useLocalStorage<TableProps<T>['size']>(
73
76
  // TABLE_SIZE_STORAGE_KEY,
@@ -79,7 +82,6 @@ export const Table = _a => {
79
82
  var _a;
80
83
  if (striped || rowClassName || ((_a = rest.rowSelection) === null || _a === void 0 ? void 0 : _a.getCheckboxProps)) {
81
84
  return (record, index) => {
82
- var _a;
83
85
  const back = [];
84
86
  if (rowClassName) {
85
87
  if (_isFunction(rowClassName)) {
@@ -91,17 +93,18 @@ export const Table = _a => {
91
93
  if (striped && index % 2 === 1) {
92
94
  back.push(`${prefixCls}-row-even`);
93
95
  }
94
- if ((_a = rest.rowSelection) === null || _a === void 0 ? void 0 : _a.getCheckboxProps) {
95
- const checkboxProps = rest.rowSelection.getCheckboxProps(record);
96
- if (checkboxProps && checkboxProps.disabled) {
97
- back.push(`${prefixCls}-row-disabled`);
98
- }
99
- }
96
+ // if (rest.rowSelection?.getCheckboxProps) {
97
+ // const checkboxProps: any = rest.rowSelection.getCheckboxProps(record)
98
+ // if (checkboxProps && checkboxProps.disabled) {
99
+ // back.push(`${prefixCls}-row-disabled`)
100
+ // }
101
+ // }
100
102
  return back.join(' ');
101
103
  };
102
104
  }
103
105
  return rowClassName;
104
106
  };
107
+ const [fixedWidth, setFixedWidth] = useState(Number);
105
108
  const lang = getLanguage();
106
109
  let newColumns = displayColumns;
107
110
  // 非中文做处理
@@ -181,6 +184,29 @@ export const Table = _a => {
181
184
  // setInnerSize(size)
182
185
  // }
183
186
  // }, [setInnerSize, size])
187
+ /**
188
+ * expand 与 fix 兼容,expand悬浮
189
+ */
190
+ const [tableKey, trigger] = useExpandFixed();
191
+ const stickyProps = useMemo(() => {
192
+ return {
193
+ onExpandedRowsChange: arg => {
194
+ const key = arg && arg[arg.length - 1];
195
+ if (rest === null || rest === void 0 ? void 0 : rest.onExpandedRowsChange) rest === null || rest === void 0 ? void 0 : rest.onExpandedRowsChange([Number(key)]);
196
+ // 触发MutationObserver监听
197
+ trigger(key);
198
+ },
199
+ expandedRowRender: (rest === null || rest === void 0 ? void 0 : rest.expandedRowRender) ? (record, index, indent, expanded) => {
200
+ const padding = 0;
201
+ return React.createElement("div", {
202
+ className: "ant-table-expanded-row-fixed",
203
+ style: {
204
+ width: fixedWidth + padding
205
+ }
206
+ }, (rest === null || rest === void 0 ? void 0 : rest.expandedRowRender) && (rest === null || rest === void 0 ? void 0 : rest.expandedRowRender(record, index, indent, expanded)));
207
+ } : undefined
208
+ };
209
+ }, [rest === null || rest === void 0 ? void 0 : rest.expandedRowRender, rest === null || rest === void 0 ? void 0 : rest.onExpandedRowsChange, trigger]);
184
210
  return React.createElement(TableContext.Provider, {
185
211
  value: {
186
212
  // size: innerSize,
@@ -203,24 +229,32 @@ export const Table = _a => {
203
229
  }, localeObject => {
204
230
  // const locale = localeObject as Record<string, string>
205
231
  // const paginationConfig = pagination ? getDefaultPagination(locale) : pagination
206
- return React.createElement(AntdTable, Object.assign({
232
+ return React.createElement(ResizeObserver, {
233
+ onResize: ({
234
+ width
235
+ }) => {
236
+ setFixedWidth(width);
237
+ }
238
+ }, React.createElement(AntdTable, Object.assign({
207
239
  className: classNames(
208
240
  // prefixCls,
209
- 'tnt-table-wrapper', {
241
+ 'tnt-table-wrapper', `${tableKey} collapse-panel`, {
210
242
  [`${prefixCls}-borderless`]: !bordered,
211
243
  [`${prefixCls}-hide-cell-borders`]: !showCellBorders,
212
244
  [`${prefixCls}-size-small`]: size === 'small',
213
245
  [`${prefixCls}-size-middle`]: size === 'middle',
214
246
  [`${prefixCls}-striped`]: striped,
215
247
  [`${prefixCls}-shadowed`]: shadowed,
216
- [`${prefixCls}-has-footer`]: rest.footer
248
+ [`${prefixCls}-has-footer`]: rest.footer,
249
+ [`${prefixCls}-small-padding`]: smallPadding,
250
+ [`${prefixCls}-sticky`]: sticky
217
251
  }, className),
218
252
  locale: locale,
219
253
  bordered: bordered,
220
254
  size: size,
221
255
  columns: newColumns,
222
256
  rowClassName: getRowClassName(prefixCls)
223
- }, rest));
257
+ }, rest, sticky ? stickyProps : {})));
224
258
  }));
225
259
  }));
226
260
  };
@@ -1 +1 @@
1
- {"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/table/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ConfigConsumer } from 'antd/es/config-provider'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport type {\n TableProps as AntdTableProps,\n ColumnProps,\n TableStateFilters,\n SortOrder,\n} from 'antd/es/table'\nimport { default as AntdTable } from 'antd/es/table'\nimport Column from 'antd/es/table/Column'\nimport ColumnGroup from 'antd/es/table/ColumnGroup'\nimport classNames from 'classnames'\nimport React, { useCallback, useMemo, useRef } from 'react'\nimport { isFunction, isString } from 'lodash'\nimport Ellipsis from '../ellipsis'\nimport { TableContext } from './context'\nimport { useColumnSetting } from './hooks'\nimport { normalizeColumns } from './utils'\nimport { titleCaseUpper } from '../utils/lang'\nimport { TotalShower } from './total-shower'\nimport { getLanguage } from '../prev-locale'\n\nconst sizeWidthMap = {\n default: 40, //20\n middle: 20, //10\n small: 20, //10\n xs: 16, // 8\n}\n\nexport type TableProps<T> = Omit<AntdTableProps<T>, 'locale'> & {\n storageKey?: string\n enableToolbar?: boolean\n showCellBorders?: boolean\n striped?: boolean\n shadowed?: boolean\n locale?: AntdTableProps<T>['locale'] & {\n loadingDescription?: string\n emptyText?: string\n }\n refresh?(): void\n unUpperConverted?: boolean // 不要转换表头\n unTooltip?: boolean // 不要tooltip\n upperCaseIgnore?: string[]\n rowClassName?: (record: T, index: number) => string\n}\n\nconst getDefaultPagination = (locale: NonNullable<AntdTableProps<unknown>['locale']>) => ({\n showTotal: (total: number) => <TotalShower total={total} locale={locale} />,\n})\n\n// 判断是否是特殊的tooltip\n// const checkIsPrompt = (dom: any): boolean => {\n// let isPrompt: boolean = false\n// if (React.isValidElement(dom)) {\n// if (dom?.type && typeof dom?.type === 'function') {\n// if (['Tooltip', 'Popconfirm'].includes(dom?.type?.name)) {\n// isPrompt = true\n// }\n// }\n// }\n// return isPrompt\n// }\n\nexport const Table = <T,>({\n className,\n locale,\n bordered,\n size,\n storageKey,\n columns,\n children,\n shadowed = !bordered,\n striped = true,\n showCellBorders = false,\n // pagination,\n enableToolbar = false,\n refresh,\n upperCaseIgnore,\n unUpperConverted, // 强制不要转换\n unTooltip,\n rowClassName,\n ...rest\n}: TableProps<T>) => {\n const tableContainer = useRef<HTMLDivElement>(null)\n // const [innerSize, setInnerSize] = useLocalStorage<TableProps<T>['size']>(\n // TABLE_SIZE_STORAGE_KEY,\n // 'default'\n // )\n const normalizedColumns = useMemo(\n () => columns || normalizeColumns<T>(children as React.ReactChildren),\n [children, columns]\n )\n const [displayColumns, columnSetting, setColumnSetting] = useColumnSetting(\n normalizedColumns,\n storageKey\n )\n\n const getRowClassName = (prefixCls: string) => {\n if (striped || rowClassName || rest.rowSelection?.getCheckboxProps) {\n return (record: T, index: number) => {\n const back = []\n if (rowClassName) {\n if (isFunction(rowClassName)) {\n back.push(rowClassName(record, index))\n } else if (isString(rowClassName)) {\n back.push(rowClassName)\n }\n }\n if (striped && index % 2 === 1) {\n back.push(`${prefixCls}-row-even`)\n }\n if (rest.rowSelection?.getCheckboxProps) {\n const checkboxProps: any = rest.rowSelection.getCheckboxProps(record)\n if (checkboxProps && checkboxProps.disabled) {\n back.push(`${prefixCls}-row-disabled`)\n }\n }\n return back.join(' ')\n }\n }\n return rowClassName\n }\n\n const lang = getLanguage()\n let newColumns = displayColumns\n // 非中文做处理\n if (lang !== 'cn') {\n if (!unUpperConverted) {\n newColumns = displayColumns?.map((column) => {\n return {\n ...column,\n title: (options: {\n filters: TableStateFilters\n sortOrder?: SortOrder\n sortColumn?: ColumnProps<T> | null\n }) => {\n let title = column.title\n if (typeof title === 'function') {\n title = title(options)\n }\n\n if (React.isValidElement(title)) {\n const renderChildren = (children: [] | string): React.ReactNode => {\n if (React.isValidElement(children) || Array.isArray(children)) {\n return React?.Children?.map(children, (child) => {\n if (React.isValidElement(child)) {\n const childProps = (child.props || {}) as any\n return React.cloneElement(child, {\n ...childProps,\n children: childProps.children?.length\n ? renderChildren(childProps.children)\n : childProps.children,\n title: titleCaseUpper(childProps?.title, upperCaseIgnore),\n })\n } else {\n return titleCaseUpper(child, upperCaseIgnore)\n }\n })\n }\n\n return titleCaseUpper(children, upperCaseIgnore)\n }\n\n return renderChildren(title.props.children)\n }\n\n if (typeof title === 'string') {\n return titleCaseUpper(title, upperCaseIgnore)\n }\n },\n }\n })\n }\n if (!unTooltip) {\n newColumns = newColumns?.map((column) => {\n if (!(column.width && !String(column.width).includes('%'))) {\n return column\n } else {\n return {\n ...column,\n title: (options: {\n filters: TableStateFilters\n sortOrder?: SortOrder\n sortColumn?: ColumnProps<T> | null\n }) => {\n let title = column.title\n if (typeof title === 'function') {\n title = title(options)\n }\n\n let widthLimitObj = {}\n if (column.width && !String(column.width).includes('%')) {\n let width = column.width\n if (typeof width === 'string') {\n width = width?.replace(/[^\\d]/g, ' ')\n }\n widthLimitObj = {\n widthLimit:\n Number(width) -\n Number(sizeWidthMap[size || 'default']) -\n (column.sorter ? 20 : 0),\n }\n }\n return (\n <Ellipsis\n {...widthLimitObj}\n placement={column?.placement || 'topLeft'}\n title={title}\n />\n )\n },\n }\n }\n })\n }\n }\n\n /**\n * update the innerSize when props size changes\n */\n // useEffect(() => {\n // if (size) {\n // setInnerSize(size)\n // }\n // }, [setInnerSize, size])\n\n return (\n <TableContext.Provider\n value={{\n // size: innerSize,\n tableContainer,\n columnSetting,\n refresh,\n upperCaseIgnore,\n // setSize: setInnerSize,\n setColumnSetting,\n }}\n >\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n const prefixCls = getPrefixCls('table')\n return (\n <div ref={tableContainer}>\n <LocaleReceiver componentName=\"Table\" defaultLocale={locale}>\n {(localeObject) => {\n // const locale = localeObject as Record<string, string>\n // const paginationConfig = pagination ? getDefaultPagination(locale) : pagination\n return (\n <AntdTable\n className={classNames(\n // prefixCls,\n 'tnt-table-wrapper',\n {\n [`${prefixCls}-borderless`]: !bordered,\n [`${prefixCls}-hide-cell-borders`]: !showCellBorders,\n [`${prefixCls}-size-small`]: size === 'small',\n [`${prefixCls}-size-middle`]: size === 'middle',\n [`${prefixCls}-striped`]: striped,\n [`${prefixCls}-shadowed`]: shadowed,\n [`${prefixCls}-has-footer`]: rest.footer,\n },\n className\n )}\n locale={locale}\n bordered={bordered}\n size={size}\n columns={newColumns}\n rowClassName={getRowClassName(prefixCls)}\n {...rest}\n />\n )\n }}\n </LocaleReceiver>\n </div>\n )\n }}\n </ConfigConsumer>\n </TableContext.Provider>\n )\n}\n\nTable.Column = Column\nTable.ColumnGroup = ColumnGroup\nTable.displayName = 'Table'\nTable.titleCaseUpper = titleCaseUpper\n"]}
1
+ {"version":3,"file":"table.js","sourceRoot":"","sources":["../../src/table/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import { ConfigConsumer } from 'antd/es/config-provider'\nimport LocaleReceiver from 'antd/es/locale-provider/LocaleReceiver'\nimport type {\n TableProps as AntdTableProps,\n ColumnProps,\n TableStateFilters,\n SortOrder,\n} from 'antd/es/table'\nimport { default as AntdTable } from 'antd/es/table'\nimport Column from 'antd/es/table/Column'\nimport ColumnGroup from 'antd/es/table/ColumnGroup'\nimport classNames from 'classnames'\nimport React, { useMemo, useRef, useState } from 'react'\nimport { isFunction, isString } from 'lodash'\nimport Ellipsis from '../ellipsis'\nimport { TableContext } from './context'\nimport { useColumnSetting, useExpandFixed } from './hooks'\nimport type { keyType } from './hooks'\nimport { normalizeColumns } from './utils'\nimport { titleCaseUpper } from '../utils/lang'\nimport { TotalShower } from './total-shower'\nimport { getLanguage } from '../prev-locale'\nimport ResizeObserver from 'rc-resize-observer'\n\nconst sizeWidthMap = {\n default: 40, //20\n middle: 20, //10\n small: 20, //10\n xs: 16, // 8\n}\n\nexport type TableProps<T> = Omit<AntdTableProps<T>, 'locale'> & {\n storageKey?: string\n enableToolbar?: boolean\n showCellBorders?: boolean\n striped?: boolean\n sticky?: boolean\n shadowed?: boolean\n locale?: AntdTableProps<T>['locale'] & {\n loadingDescription?: string\n emptyText?: string\n }\n refresh?(): void\n unUpperConverted?: boolean // 不要转换表头\n unTooltip?: boolean // 不要tooltip\n smallPadding?: boolean // 缩小间距\n upperCaseIgnore?: string[]\n rowClassName?: (record: T, index: number) => string\n}\n\nconst getDefaultPagination = (locale: NonNullable<AntdTableProps<unknown>['locale']>) => ({\n showTotal: (total: number) => <TotalShower total={total} locale={locale} />,\n})\n\n// 判断是否是特殊的tooltip\n// const checkIsPrompt = (dom: any): boolean => {\n// let isPrompt: boolean = false\n// if (React.isValidElement(dom)) {\n// if (dom?.type && typeof dom?.type === 'function') {\n// if (['Tooltip', 'Popconfirm'].includes(dom?.type?.name)) {\n// isPrompt = true\n// }\n// }\n// }\n// return isPrompt\n// }\n\nexport const Table = <T,>({\n className,\n locale,\n bordered,\n size,\n storageKey,\n columns,\n children,\n sticky = false,\n shadowed,\n striped = true,\n showCellBorders = false,\n // pagination,\n enableToolbar = false,\n refresh,\n upperCaseIgnore,\n unUpperConverted, // 强制不要转换\n unTooltip,\n smallPadding,\n rowClassName,\n ...rest\n}: TableProps<T>) => {\n const tableContainer = useRef<HTMLDivElement>(null)\n // const [innerSize, setInnerSize] = useLocalStorage<TableProps<T>['size']>(\n // TABLE_SIZE_STORAGE_KEY,\n // 'default'\n // )\n\n const normalizedColumns = useMemo(\n () => columns || normalizeColumns<T>(children as React.ReactChildren),\n [children, columns]\n )\n const [displayColumns, columnSetting, setColumnSetting] = useColumnSetting(\n normalizedColumns,\n storageKey\n )\n\n const getRowClassName = (prefixCls: string) => {\n if (striped || rowClassName || rest.rowSelection?.getCheckboxProps) {\n return (record: T, index: number) => {\n const back = []\n if (rowClassName) {\n if (isFunction(rowClassName)) {\n back.push(rowClassName(record, index))\n } else if (isString(rowClassName)) {\n back.push(rowClassName)\n }\n }\n if (striped && index % 2 === 1) {\n back.push(`${prefixCls}-row-even`)\n }\n // if (rest.rowSelection?.getCheckboxProps) {\n // const checkboxProps: any = rest.rowSelection.getCheckboxProps(record)\n // if (checkboxProps && checkboxProps.disabled) {\n // back.push(`${prefixCls}-row-disabled`)\n // }\n // }\n return back.join(' ')\n }\n }\n return rowClassName\n }\n const [fixedWidth, setFixedWidth] = useState(Number)\n\n const lang = getLanguage()\n let newColumns = displayColumns\n // 非中文做处理\n if (lang !== 'cn') {\n if (!unUpperConverted) {\n newColumns = displayColumns?.map((column) => {\n return {\n ...column,\n title: (options: {\n filters: TableStateFilters\n sortOrder?: SortOrder\n sortColumn?: ColumnProps<T> | null\n }) => {\n let title = column.title\n if (typeof title === 'function') {\n title = title(options)\n }\n\n if (React.isValidElement(title)) {\n const renderChildren = (children: [] | string): React.ReactNode => {\n if (React.isValidElement(children) || Array.isArray(children)) {\n return React?.Children?.map(children, (child) => {\n if (React.isValidElement(child)) {\n const childProps = (child.props || {}) as any\n return React.cloneElement(child, {\n ...childProps,\n children: childProps.children?.length\n ? renderChildren(childProps.children)\n : childProps.children,\n title: titleCaseUpper(childProps?.title, upperCaseIgnore),\n })\n } else {\n return titleCaseUpper(child, upperCaseIgnore)\n }\n })\n }\n\n return titleCaseUpper(children, upperCaseIgnore)\n }\n\n return renderChildren(title.props.children)\n }\n\n if (typeof title === 'string') {\n return titleCaseUpper(title, upperCaseIgnore)\n }\n },\n }\n })\n }\n if (!unTooltip) {\n newColumns = newColumns?.map((column) => {\n if (!(column.width && !String(column.width).includes('%'))) {\n return column\n } else {\n return {\n ...column,\n title: (options: {\n filters: TableStateFilters\n sortOrder?: SortOrder\n sortColumn?: ColumnProps<T> | null\n }) => {\n let title = column.title\n if (typeof title === 'function') {\n title = title(options)\n }\n\n let widthLimitObj = {}\n if (column.width && !String(column.width).includes('%')) {\n let width = column.width\n if (typeof width === 'string') {\n width = width?.replace(/[^\\d]/g, ' ')\n }\n widthLimitObj = {\n widthLimit:\n Number(width) -\n Number(sizeWidthMap[size || 'default']) -\n (column.sorter ? 20 : 0),\n }\n }\n return (\n <Ellipsis\n {...widthLimitObj}\n placement={column?.placement || 'topLeft'}\n title={title}\n />\n )\n },\n }\n }\n })\n }\n }\n\n /**\n * update the innerSize when props size changes\n */\n // useEffect(() => {\n // if (size) {\n // setInnerSize(size)\n // }\n // }, [setInnerSize, size])\n\n /**\n * expand 与 fix 兼容,expand悬浮\n */\n const [tableKey, trigger] = useExpandFixed()\n\n const stickyProps = useMemo(() => {\n return {\n onExpandedRowsChange: (arg: string[] | number[]) => {\n const key: keyType = arg && arg[arg.length - 1]\n if (rest?.onExpandedRowsChange) rest?.onExpandedRowsChange([Number(key)])\n // 触发MutationObserver监听\n trigger(key as string)\n },\n expandedRowRender: rest?.expandedRowRender\n ? (record: T, index: number, indent: number, expanded: boolean) => {\n const padding = 0\n return (\n <div className=\"ant-table-expanded-row-fixed\" style={{ width: fixedWidth + padding }}>\n {rest?.expandedRowRender &&\n rest?.expandedRowRender(record, index, indent, expanded)}\n </div>\n )\n }\n : undefined,\n }\n }, [rest?.expandedRowRender, rest?.onExpandedRowsChange, trigger])\n\n return (\n <TableContext.Provider\n value={{\n // size: innerSize,\n tableContainer,\n columnSetting,\n refresh,\n upperCaseIgnore,\n // setSize: setInnerSize,\n setColumnSetting,\n }}\n >\n <ConfigConsumer>\n {({ getPrefixCls }) => {\n const prefixCls = getPrefixCls('table')\n return (\n <div ref={tableContainer}>\n <LocaleReceiver componentName=\"Table\" defaultLocale={locale}>\n {(localeObject) => {\n // const locale = localeObject as Record<string, string>\n // const paginationConfig = pagination ? getDefaultPagination(locale) : pagination\n return (\n <ResizeObserver\n onResize={({ width }) => {\n setFixedWidth(width)\n }}\n >\n <AntdTable\n className={classNames(\n // prefixCls,\n 'tnt-table-wrapper',\n `${tableKey} collapse-panel`,\n {\n [`${prefixCls}-borderless`]: !bordered,\n [`${prefixCls}-hide-cell-borders`]: !showCellBorders,\n [`${prefixCls}-size-small`]: size === 'small',\n [`${prefixCls}-size-middle`]: size === 'middle',\n [`${prefixCls}-striped`]: striped,\n [`${prefixCls}-shadowed`]: shadowed,\n [`${prefixCls}-has-footer`]: rest.footer,\n [`${prefixCls}-small-padding`]: smallPadding,\n [`${prefixCls}-sticky`]: sticky,\n },\n className\n )}\n locale={locale}\n bordered={bordered}\n size={size}\n columns={newColumns}\n rowClassName={getRowClassName(prefixCls)}\n {...rest}\n {...(sticky ? stickyProps : {})}\n />\n </ResizeObserver>\n )\n }}\n </LocaleReceiver>\n </div>\n )\n }}\n </ConfigConsumer>\n </TableContext.Provider>\n )\n}\n\nTable.Column = Column\nTable.ColumnGroup = ColumnGroup\nTable.displayName = 'Table'\nTable.titleCaseUpper = titleCaseUpper\n"]}
@@ -8,25 +8,9 @@
8
8
  background-color: @white;
9
9
  border-radius: @border-radius-base;
10
10
 
11
- .@{table-prefix-cls}-tbody > tr {
12
- &.@{table-prefix-cls}-row-disabled {
13
- &:hover,
14
- & {
15
- td {
16
- background-color: @table-disabled-row-bg;
17
- color: @table-disabled-row-text-color;
18
- }
19
- }
20
- }
21
- }
22
-
23
11
  &.@{table-prefix-cls}-borderless {
24
12
  .@{table-prefix-cls}-small {
25
13
  border: none;
26
-
27
- > .ant-table-content .ant-table-row:last-child td {
28
- // border-bottom: @border-width-base @border-style-base @border-color-split;
29
- }
30
14
  }
31
15
  }
32
16
 
@@ -34,11 +18,16 @@
34
18
  box-shadow: @table-borderless-shadow;
35
19
  }
36
20
 
21
+ &.@{table-prefix-cls}-small-padding{
22
+ .@{table-prefix-cls}-tbody > tr > td {
23
+ padding-top: 8px;
24
+ padding-bottom: 8px;
25
+ }
26
+ }
27
+
37
28
  &.@{table-prefix-cls}-striped {
38
29
  .@{table-prefix-cls}-tbody
39
- > .@{table-prefix-cls}-row-even:not(:hover):not(.@{table-prefix-cls}-row-selected):not(
40
- .@{table-prefix-cls}-row-disabled
41
- )
30
+ > .@{table-prefix-cls}-row-even:not(:hover):not(.@{table-prefix-cls}-row-hover)
42
31
  > td {
43
32
  background: @bg-grey-first;
44
33
  }
@@ -52,14 +41,15 @@
52
41
  }
53
42
 
54
43
  &.@{table-prefix-cls}-hide-cell-borders {
55
- .@{table-prefix-cls}-thead > tr > th:not(:last-child),
56
- .@{table-prefix-cls}-tbody > tr > td:not(:last-child) {
57
- border-right: none;
44
+ .@{table-prefix-cls}-thead > tr > th,
45
+ .@{table-prefix-cls}-tbody > tr > td {
46
+ border-right: none !important;
58
47
  }
59
48
  }
60
49
  &.@{table-prefix-cls}-hide-cell-borders {
61
50
  .@{table-prefix-cls}-thead > tr > th,
62
51
  .@{table-prefix-cls}-tbody > tr > td {
52
+ border-right: none;
63
53
  border-bottom: none;
64
54
  }
65
55
  }
@@ -96,6 +86,7 @@
96
86
  .@{table-prefix-cls}-placeholder {
97
87
  padding-top: @table-padding-horizontal;
98
88
  padding-bottom: @table-padding-horizontal;
89
+ border-bottom: 0;
99
90
  }
100
91
 
101
92
  // customize the loading of table