ele-admin-plus 1.1.6-beta.2 → 1.1.6-beta.4

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 (470) hide show
  1. package/es/components.d.ts +1 -0
  2. package/es/components.js +10 -8
  3. package/es/ele-alert/index.d.ts +4 -4
  4. package/es/ele-alert/props.d.ts +2 -2
  5. package/es/ele-app/index.d.ts +1 -1
  6. package/es/ele-app/style/common/index.js +1 -0
  7. package/es/ele-app/style/css-var.scss +9 -137
  8. package/es/ele-app/style/index.js +4 -6
  9. package/es/ele-app/style/index.scss +4 -4
  10. package/es/ele-app/style/message/css-var.scss +12 -0
  11. package/es/ele-app/style/{message.js → message/index.js} +1 -1
  12. package/{lib/ele-app/style/message.scss → es/ele-app/style/message/index.scss} +2 -2
  13. package/es/ele-app/style/overwrite/autocomplete/css-var.scss +8 -0
  14. package/es/ele-app/style/overwrite/autocomplete/index.js +1 -0
  15. package/es/ele-app/style/overwrite/autocomplete/index.scss +33 -0
  16. package/es/ele-app/style/overwrite/backtop/index.js +1 -0
  17. package/es/ele-app/style/overwrite/backtop/index.scss +8 -0
  18. package/es/ele-app/style/overwrite/cascader/css-var.scss +8 -0
  19. package/es/ele-app/style/overwrite/cascader/index.js +1 -0
  20. package/es/ele-app/style/overwrite/cascader/index.scss +115 -0
  21. package/es/ele-app/style/overwrite/checkbox/css-var.scss +8 -0
  22. package/es/ele-app/style/overwrite/checkbox/index.js +1 -0
  23. package/es/ele-app/style/overwrite/checkbox/index.scss +159 -0
  24. package/es/ele-app/style/overwrite/color-picker/index.js +1 -0
  25. package/es/ele-app/style/overwrite/color-picker/index.scss +42 -0
  26. package/es/ele-app/style/overwrite/css-var.scss +35 -0
  27. package/es/ele-app/style/overwrite/date-picker/css-var.scss +16 -0
  28. package/es/ele-app/style/overwrite/date-picker/index.js +1 -0
  29. package/es/ele-app/style/overwrite/date-picker/index.scss +866 -0
  30. package/es/ele-app/style/overwrite/descriptions/css-var.scss +8 -0
  31. package/es/ele-app/style/overwrite/descriptions/index.js +1 -0
  32. package/es/ele-app/style/overwrite/descriptions/index.scss +48 -0
  33. package/es/ele-app/style/overwrite/image-viewer/css-var.scss +8 -0
  34. package/es/ele-app/style/overwrite/image-viewer/index.js +1 -0
  35. package/es/ele-app/style/overwrite/image-viewer/index.scss +10 -0
  36. package/es/ele-app/style/overwrite/index.js +17 -0
  37. package/es/ele-app/style/overwrite/index.scss +17 -0
  38. package/es/ele-app/style/overwrite/message-box/css-var.scss +8 -0
  39. package/es/ele-app/style/overwrite/message-box/index.js +2 -0
  40. package/es/ele-app/style/overwrite/message-box/index.scss +84 -0
  41. package/es/ele-app/style/overwrite/notification/css-var.scss +8 -0
  42. package/es/ele-app/style/overwrite/notification/index.js +2 -0
  43. package/es/ele-app/style/overwrite/notification/index.scss +65 -0
  44. package/es/ele-app/style/overwrite/popper/css-var.scss +14 -0
  45. package/es/ele-app/style/overwrite/popper/index.js +1 -0
  46. package/es/ele-app/style/overwrite/popper/index.scss +9 -0
  47. package/es/ele-app/style/overwrite/radio/css-var.scss +8 -0
  48. package/es/ele-app/style/overwrite/radio/index.js +1 -0
  49. package/es/ele-app/style/overwrite/radio/index.scss +126 -0
  50. package/es/ele-app/style/overwrite/select/css-var.scss +8 -0
  51. package/es/ele-app/style/overwrite/select/index.js +1 -0
  52. package/es/ele-app/style/overwrite/select/index.scss +111 -0
  53. package/es/ele-app/style/overwrite/table-filter/css-var.scss +8 -0
  54. package/es/ele-app/style/overwrite/table-filter/index.js +1 -0
  55. package/es/ele-app/style/overwrite/table-filter/index.scss +98 -0
  56. package/es/ele-app/style/overwrite/tag/css-var.scss +24 -0
  57. package/es/ele-app/style/overwrite/tag/index.js +1 -0
  58. package/es/ele-app/style/overwrite/tag/index.scss +303 -0
  59. package/es/ele-app/style/overwrite/tree/css-var.scss +8 -0
  60. package/es/ele-app/style/overwrite/tree/index.js +1 -0
  61. package/es/ele-app/style/overwrite/tree/index.scss +103 -0
  62. package/es/ele-app/style/overwrite/tree-select/css-var.scss +8 -0
  63. package/es/ele-app/style/overwrite/tree-select/index.js +1 -0
  64. package/es/ele-app/style/overwrite/tree-select/index.scss +95 -0
  65. package/es/ele-app/style/scrollbar/css-var.scss +53 -0
  66. package/es/ele-app/style/scrollbar/index.js +1 -0
  67. package/es/ele-app/style/{scrollbar.scss → scrollbar/index.scss} +2 -2
  68. package/es/ele-app/types/components.d.ts +29 -10
  69. package/es/ele-app/types/core.d.ts +30 -0
  70. package/es/ele-app/types/element.d.ts +61 -0
  71. package/es/ele-app/types/index.d.ts +3 -88
  72. package/es/ele-avatar-group/index.d.ts +5 -5
  73. package/es/ele-avatar-group/props.d.ts +2 -2
  74. package/es/ele-basic-select/index.d.ts +51 -27
  75. package/es/ele-basic-select/index.js +151 -74
  76. package/es/ele-basic-select/props.d.ts +37 -29
  77. package/es/ele-basic-select/props.js +39 -29
  78. package/es/ele-basic-select/style/index.scss +123 -47
  79. package/es/ele-basic-select/types/index.d.ts +4 -0
  80. package/es/ele-basic-select/util.d.ts +14 -0
  81. package/es/ele-basic-select/util.js +30 -0
  82. package/es/ele-breadcrumb/index.d.ts +4 -4
  83. package/es/ele-breadcrumb/props.d.ts +2 -2
  84. package/es/ele-card/index.d.ts +7 -3
  85. package/es/ele-card/index.js +14 -0
  86. package/es/ele-card/props.d.ts +5 -1
  87. package/es/ele-card/props.js +4 -0
  88. package/es/ele-card/style/index.scss +11 -0
  89. package/es/ele-check-card/components/card-item.d.ts +1 -1
  90. package/es/ele-check-card/index.d.ts +11 -4
  91. package/es/ele-check-card/props.d.ts +4 -1
  92. package/es/ele-check-card/props.js +6 -1
  93. package/es/ele-config-provider/index.d.ts +2 -2
  94. package/es/ele-config-provider/props.d.ts +1 -1
  95. package/es/ele-config-provider/types/index.d.ts +2 -2
  96. package/es/ele-copyable/index.d.ts +5 -3
  97. package/es/ele-cropper/index.d.ts +10 -8
  98. package/es/ele-cropper-modal/index.d.ts +7 -7
  99. package/es/ele-cropper-modal/props.d.ts +5 -2
  100. package/es/ele-data-table/index.d.ts +23 -9
  101. package/es/ele-data-table/index.js +265 -73
  102. package/es/ele-data-table/props.d.ts +13 -3
  103. package/es/ele-data-table/props.js +12 -2
  104. package/es/ele-data-table/types/index.d.ts +46 -28
  105. package/es/ele-data-table/util.d.ts +54 -26
  106. package/es/ele-data-table/util.js +99 -61
  107. package/es/ele-drawer/index.d.ts +53 -50
  108. package/es/ele-drawer/props.d.ts +19 -18
  109. package/es/ele-dropdown/index.d.ts +46 -46
  110. package/es/ele-dropdown/props.d.ts +16 -16
  111. package/es/ele-edit-tag/index.d.ts +12 -17
  112. package/es/ele-edit-tag/index.js +32 -26
  113. package/es/ele-edit-tag/props.d.ts +3 -5
  114. package/es/ele-edit-tag/props.js +0 -2
  115. package/es/ele-edit-tag/style/index.scss +65 -39
  116. package/es/ele-ellipsis/index.d.ts +2 -3
  117. package/es/ele-ellipsis/index.js +24 -3
  118. package/es/ele-ellipsis/types/index.d.ts +1 -1
  119. package/es/ele-file-list/components/file-grid-item.d.ts +1 -1
  120. package/es/ele-file-list/components/file-grid.d.ts +3 -3
  121. package/es/ele-file-list/components/file-table-item.d.ts +1 -1
  122. package/es/ele-file-list/components/file-table.d.ts +3 -3
  123. package/es/ele-file-list/index.d.ts +6 -6
  124. package/es/ele-file-list/props.d.ts +1 -1
  125. package/es/ele-icon-select/index.d.ts +53 -51
  126. package/es/ele-icon-select/index.js +222 -64
  127. package/es/ele-icon-select/props.d.ts +26 -33
  128. package/es/ele-icon-select/props.js +24 -31
  129. package/es/ele-icon-select/style/index.js +0 -1
  130. package/es/ele-icon-select/style/index.scss +0 -12
  131. package/es/ele-map-picker/components/map-view.d.ts +6 -6
  132. package/es/ele-map-picker/components/map-view.js +2 -1
  133. package/es/ele-map-picker/index.d.ts +6 -6
  134. package/es/ele-map-picker/props.d.ts +2 -3
  135. package/es/ele-menus/index.d.ts +28 -19
  136. package/es/ele-menus/props.d.ts +10 -7
  137. package/es/ele-modal/index.d.ts +50 -44
  138. package/es/ele-modal/index.js +41 -19
  139. package/es/ele-modal/props.d.ts +16 -15
  140. package/es/ele-modal/util.d.ts +3 -1
  141. package/es/ele-modal/util.js +6 -4
  142. package/es/ele-pagination/index.d.ts +22 -22
  143. package/es/ele-pagination/index.js +2 -1
  144. package/es/ele-pagination/props.d.ts +9 -9
  145. package/es/ele-popconfirm/index.d.ts +68 -123
  146. package/es/ele-popconfirm/props.d.ts +24 -46
  147. package/es/ele-popover/index.d.ts +52 -106
  148. package/es/ele-popover/props.d.ts +20 -42
  149. package/es/ele-pro-layout/components/pro-header.d.ts +6 -6
  150. package/es/ele-pro-layout/components/pro-sidebar.d.ts +4 -4
  151. package/es/ele-pro-layout/components/pro-sidebox.d.ts +4 -4
  152. package/es/ele-pro-layout/components/pro-tabs.d.ts +3 -3
  153. package/es/ele-pro-layout/components/tab-dropdown.d.ts +1 -1
  154. package/es/ele-pro-layout/index.d.ts +35 -35
  155. package/es/ele-pro-layout/props.d.ts +4 -4
  156. package/es/ele-pro-layout/types/index.d.ts +5 -6
  157. package/es/ele-pro-layout/util.d.ts +1 -2
  158. package/es/ele-pro-table/components/table-tools.d.ts +3 -3
  159. package/es/ele-pro-table/components/table-tools.js +5 -8
  160. package/es/ele-pro-table/components/tool-column.d.ts +2 -2
  161. package/es/ele-pro-table/index.d.ts +33 -35
  162. package/es/ele-pro-table/index.js +123 -82
  163. package/es/ele-pro-table/props.d.ts +12 -15
  164. package/es/ele-pro-table/props.js +1 -1
  165. package/es/ele-pro-table/types/index.d.ts +5 -14
  166. package/es/ele-pro-table/util.d.ts +5 -11
  167. package/es/ele-pro-table/util.js +4 -5
  168. package/es/ele-segmented/index.d.ts +1 -1
  169. package/es/ele-split-panel/index.d.ts +1 -0
  170. package/es/ele-split-panel/index.js +34 -4
  171. package/es/ele-steps/index.d.ts +24 -24
  172. package/es/ele-steps/props.d.ts +7 -7
  173. package/es/ele-table-select/index.d.ts +83 -86
  174. package/es/ele-table-select/index.js +265 -236
  175. package/es/ele-table-select/props.d.ts +43 -37
  176. package/es/ele-table-select/props.js +41 -32
  177. package/es/ele-tabs/components/tab-title.d.ts +2 -2
  178. package/es/ele-tabs/index.d.ts +28 -29
  179. package/es/ele-tabs/index.js +12 -4
  180. package/es/ele-tabs/props.d.ts +10 -10
  181. package/es/ele-text/index.d.ts +2 -2
  182. package/es/ele-tool/index.d.ts +3 -3
  183. package/es/ele-tool/props.d.ts +1 -1
  184. package/es/ele-tooltip/index.d.ts +51 -114
  185. package/es/ele-tooltip/props.d.ts +20 -47
  186. package/es/ele-tooltip/props.js +2 -1
  187. package/es/ele-tour/index.d.ts +2 -2
  188. package/es/ele-tour/types/index.d.ts +1 -1
  189. package/es/ele-tour/util.d.ts +1 -1
  190. package/es/ele-tree-select/index.d.ts +144 -0
  191. package/es/ele-tree-select/index.js +412 -0
  192. package/es/ele-tree-select/props.d.ts +92 -0
  193. package/es/ele-tree-select/props.js +87 -0
  194. package/es/ele-tree-select/style/css-var.scss +8 -0
  195. package/es/ele-tree-select/style/index.js +3 -0
  196. package/es/ele-tree-select/style/index.scss +26 -0
  197. package/es/ele-tree-select/types/index.d.ts +17 -0
  198. package/es/ele-tree-select/util.d.ts +48 -0
  199. package/es/ele-tree-select/util.js +128 -0
  200. package/es/ele-upload-list/index.d.ts +1 -1
  201. package/es/ele-virtual-table/components/body-cell.d.ts +1 -1
  202. package/es/ele-virtual-table/components/body-row.d.ts +3 -3
  203. package/es/ele-virtual-table/components/body-row.js +3 -3
  204. package/es/ele-virtual-table/components/cell-filter.d.ts +1 -1
  205. package/es/ele-virtual-table/components/header-cell.d.ts +1 -1
  206. package/es/ele-virtual-table/components/header-row.d.ts +1 -1
  207. package/es/ele-virtual-table/index.d.ts +386 -0
  208. package/es/ele-virtual-table/index.js +294 -142
  209. package/es/ele-virtual-table/props.d.ts +6 -1
  210. package/es/ele-virtual-table/style/index.scss +1 -1
  211. package/es/ele-virtual-table/types/index.d.ts +8 -4
  212. package/es/ele-virtual-table/util.d.ts +16 -14
  213. package/es/ele-virtual-table/util.js +28 -46
  214. package/es/ele-watermark/index.d.ts +0 -1
  215. package/es/ele-watermark/index.js +14 -14
  216. package/es/ele-watermark/util.d.ts +6 -0
  217. package/es/ele-watermark/util.js +8 -0
  218. package/es/style/index.scss +1 -0
  219. package/es/style/themes/dark.scss +3 -0
  220. package/es/style/themes/default.scss +152 -9
  221. package/es/style/themes/rounded.scss +34 -0
  222. package/es/style/themes/theme-util.scss +3 -3
  223. package/es/utils/core.d.ts +8 -1
  224. package/es/utils/core.js +15 -0
  225. package/lib/components.d.ts +1 -0
  226. package/lib/components.js +10 -8
  227. package/lib/ele-alert/index.d.ts +4 -4
  228. package/lib/ele-alert/props.d.ts +2 -2
  229. package/lib/ele-app/index.d.ts +1 -1
  230. package/lib/ele-app/style/common/index.js +2 -0
  231. package/lib/ele-app/style/css-var.scss +9 -137
  232. package/lib/ele-app/style/index.js +4 -6
  233. package/lib/ele-app/style/index.scss +4 -4
  234. package/lib/ele-app/style/message/css-var.scss +12 -0
  235. package/lib/ele-app/style/{message.js → message/index.js} +1 -1
  236. package/{es/ele-app/style/message.scss → lib/ele-app/style/message/index.scss} +2 -2
  237. package/lib/ele-app/style/overwrite/autocomplete/css-var.scss +8 -0
  238. package/lib/ele-app/style/overwrite/autocomplete/index.js +2 -0
  239. package/lib/ele-app/style/overwrite/autocomplete/index.scss +33 -0
  240. package/lib/ele-app/style/overwrite/backtop/index.js +2 -0
  241. package/lib/ele-app/style/overwrite/backtop/index.scss +8 -0
  242. package/lib/ele-app/style/overwrite/cascader/css-var.scss +8 -0
  243. package/lib/ele-app/style/overwrite/cascader/index.js +2 -0
  244. package/lib/ele-app/style/overwrite/cascader/index.scss +115 -0
  245. package/lib/ele-app/style/overwrite/checkbox/css-var.scss +8 -0
  246. package/lib/ele-app/style/overwrite/checkbox/index.js +2 -0
  247. package/lib/ele-app/style/overwrite/checkbox/index.scss +159 -0
  248. package/lib/ele-app/style/overwrite/color-picker/index.js +2 -0
  249. package/lib/ele-app/style/overwrite/color-picker/index.scss +42 -0
  250. package/lib/ele-app/style/overwrite/css-var.scss +35 -0
  251. package/lib/ele-app/style/overwrite/date-picker/css-var.scss +16 -0
  252. package/lib/ele-app/style/overwrite/date-picker/index.js +2 -0
  253. package/lib/ele-app/style/overwrite/date-picker/index.scss +866 -0
  254. package/lib/ele-app/style/overwrite/descriptions/css-var.scss +8 -0
  255. package/lib/ele-app/style/overwrite/descriptions/index.js +2 -0
  256. package/lib/ele-app/style/overwrite/descriptions/index.scss +48 -0
  257. package/lib/ele-app/style/overwrite/image-viewer/css-var.scss +8 -0
  258. package/lib/ele-app/style/overwrite/image-viewer/index.js +2 -0
  259. package/lib/ele-app/style/overwrite/image-viewer/index.scss +10 -0
  260. package/lib/ele-app/style/overwrite/index.js +18 -0
  261. package/lib/ele-app/style/overwrite/index.scss +17 -0
  262. package/lib/ele-app/style/overwrite/message-box/css-var.scss +8 -0
  263. package/lib/ele-app/style/overwrite/message-box/index.js +3 -0
  264. package/lib/ele-app/style/overwrite/message-box/index.scss +84 -0
  265. package/lib/ele-app/style/overwrite/notification/css-var.scss +8 -0
  266. package/lib/ele-app/style/overwrite/notification/index.js +3 -0
  267. package/lib/ele-app/style/overwrite/notification/index.scss +65 -0
  268. package/lib/ele-app/style/overwrite/popper/css-var.scss +14 -0
  269. package/lib/ele-app/style/overwrite/popper/index.js +2 -0
  270. package/lib/ele-app/style/overwrite/popper/index.scss +9 -0
  271. package/lib/ele-app/style/overwrite/radio/css-var.scss +8 -0
  272. package/lib/ele-app/style/overwrite/radio/index.js +2 -0
  273. package/lib/ele-app/style/overwrite/radio/index.scss +126 -0
  274. package/lib/ele-app/style/overwrite/select/css-var.scss +8 -0
  275. package/lib/ele-app/style/overwrite/select/index.js +2 -0
  276. package/lib/ele-app/style/overwrite/select/index.scss +111 -0
  277. package/lib/ele-app/style/overwrite/table-filter/css-var.scss +8 -0
  278. package/lib/ele-app/style/overwrite/table-filter/index.js +2 -0
  279. package/lib/ele-app/style/overwrite/table-filter/index.scss +98 -0
  280. package/lib/ele-app/style/overwrite/tag/css-var.scss +24 -0
  281. package/lib/ele-app/style/overwrite/tag/index.js +2 -0
  282. package/lib/ele-app/style/overwrite/tag/index.scss +303 -0
  283. package/lib/ele-app/style/overwrite/tree/css-var.scss +8 -0
  284. package/lib/ele-app/style/overwrite/tree/index.js +2 -0
  285. package/lib/ele-app/style/overwrite/tree/index.scss +103 -0
  286. package/lib/ele-app/style/overwrite/tree-select/css-var.scss +8 -0
  287. package/lib/ele-app/style/overwrite/tree-select/index.js +2 -0
  288. package/lib/ele-app/style/overwrite/tree-select/index.scss +95 -0
  289. package/lib/ele-app/style/scrollbar/css-var.scss +53 -0
  290. package/lib/ele-app/style/scrollbar/index.js +2 -0
  291. package/lib/ele-app/style/{scrollbar.scss → scrollbar/index.scss} +2 -2
  292. package/lib/ele-app/types/components.d.ts +29 -10
  293. package/lib/ele-app/types/core.d.ts +30 -0
  294. package/lib/ele-app/types/element.d.ts +61 -0
  295. package/lib/ele-app/types/index.d.ts +3 -88
  296. package/lib/ele-avatar-group/index.d.ts +5 -5
  297. package/lib/ele-avatar-group/props.d.ts +2 -2
  298. package/lib/ele-basic-select/index.d.ts +51 -27
  299. package/lib/ele-basic-select/index.js +150 -73
  300. package/lib/ele-basic-select/props.d.ts +37 -29
  301. package/lib/ele-basic-select/props.js +39 -29
  302. package/lib/ele-basic-select/style/index.scss +123 -47
  303. package/lib/ele-basic-select/types/index.d.ts +4 -0
  304. package/lib/ele-basic-select/util.d.ts +14 -0
  305. package/lib/ele-basic-select/util.js +30 -0
  306. package/lib/ele-breadcrumb/index.d.ts +4 -4
  307. package/lib/ele-breadcrumb/props.d.ts +2 -2
  308. package/lib/ele-card/index.d.ts +7 -3
  309. package/lib/ele-card/index.js +14 -0
  310. package/lib/ele-card/props.d.ts +5 -1
  311. package/lib/ele-card/props.js +4 -0
  312. package/lib/ele-card/style/index.scss +11 -0
  313. package/lib/ele-check-card/components/card-item.d.ts +1 -1
  314. package/lib/ele-check-card/index.d.ts +11 -4
  315. package/lib/ele-check-card/props.d.ts +4 -1
  316. package/lib/ele-check-card/props.js +6 -1
  317. package/lib/ele-config-provider/index.d.ts +2 -2
  318. package/lib/ele-config-provider/props.d.ts +1 -1
  319. package/lib/ele-config-provider/types/index.d.ts +2 -2
  320. package/lib/ele-copyable/index.d.ts +5 -3
  321. package/lib/ele-cropper/index.d.ts +10 -8
  322. package/lib/ele-cropper-modal/index.d.ts +7 -7
  323. package/lib/ele-cropper-modal/props.d.ts +5 -2
  324. package/lib/ele-data-table/index.d.ts +23 -9
  325. package/lib/ele-data-table/index.js +262 -70
  326. package/lib/ele-data-table/props.d.ts +13 -3
  327. package/lib/ele-data-table/props.js +12 -2
  328. package/lib/ele-data-table/types/index.d.ts +46 -28
  329. package/lib/ele-data-table/util.d.ts +54 -26
  330. package/lib/ele-data-table/util.js +98 -60
  331. package/lib/ele-drawer/index.d.ts +53 -50
  332. package/lib/ele-drawer/props.d.ts +19 -18
  333. package/lib/ele-dropdown/index.d.ts +46 -46
  334. package/lib/ele-dropdown/props.d.ts +16 -16
  335. package/lib/ele-edit-tag/index.d.ts +12 -17
  336. package/lib/ele-edit-tag/index.js +31 -25
  337. package/lib/ele-edit-tag/props.d.ts +3 -5
  338. package/lib/ele-edit-tag/props.js +0 -2
  339. package/lib/ele-edit-tag/style/index.scss +65 -39
  340. package/lib/ele-ellipsis/index.d.ts +2 -3
  341. package/lib/ele-ellipsis/index.js +23 -2
  342. package/lib/ele-ellipsis/types/index.d.ts +1 -1
  343. package/lib/ele-file-list/components/file-grid-item.d.ts +1 -1
  344. package/lib/ele-file-list/components/file-grid.d.ts +3 -3
  345. package/lib/ele-file-list/components/file-table-item.d.ts +1 -1
  346. package/lib/ele-file-list/components/file-table.d.ts +3 -3
  347. package/lib/ele-file-list/index.d.ts +6 -6
  348. package/lib/ele-file-list/props.d.ts +1 -1
  349. package/lib/ele-icon-select/index.d.ts +53 -51
  350. package/lib/ele-icon-select/index.js +221 -63
  351. package/lib/ele-icon-select/props.d.ts +26 -33
  352. package/lib/ele-icon-select/props.js +24 -31
  353. package/lib/ele-icon-select/style/index.js +0 -1
  354. package/lib/ele-icon-select/style/index.scss +0 -12
  355. package/lib/ele-map-picker/components/map-view.d.ts +6 -6
  356. package/lib/ele-map-picker/components/map-view.js +2 -1
  357. package/lib/ele-map-picker/index.d.ts +6 -6
  358. package/lib/ele-map-picker/props.d.ts +2 -3
  359. package/lib/ele-menus/index.d.ts +28 -19
  360. package/lib/ele-menus/props.d.ts +10 -7
  361. package/lib/ele-modal/index.d.ts +50 -44
  362. package/lib/ele-modal/index.js +41 -19
  363. package/lib/ele-modal/props.d.ts +16 -15
  364. package/lib/ele-modal/util.d.ts +3 -1
  365. package/lib/ele-modal/util.js +6 -4
  366. package/lib/ele-pagination/index.d.ts +22 -22
  367. package/lib/ele-pagination/index.js +2 -1
  368. package/lib/ele-pagination/props.d.ts +9 -9
  369. package/lib/ele-popconfirm/index.d.ts +68 -123
  370. package/lib/ele-popconfirm/props.d.ts +24 -46
  371. package/lib/ele-popover/index.d.ts +52 -106
  372. package/lib/ele-popover/props.d.ts +20 -42
  373. package/lib/ele-pro-layout/components/pro-header.d.ts +6 -6
  374. package/lib/ele-pro-layout/components/pro-sidebar.d.ts +4 -4
  375. package/lib/ele-pro-layout/components/pro-sidebox.d.ts +4 -4
  376. package/lib/ele-pro-layout/components/pro-tabs.d.ts +3 -3
  377. package/lib/ele-pro-layout/components/tab-dropdown.d.ts +1 -1
  378. package/lib/ele-pro-layout/index.d.ts +35 -35
  379. package/lib/ele-pro-layout/props.d.ts +4 -4
  380. package/lib/ele-pro-layout/types/index.d.ts +5 -6
  381. package/lib/ele-pro-layout/util.d.ts +1 -2
  382. package/lib/ele-pro-table/components/table-tools.d.ts +3 -3
  383. package/lib/ele-pro-table/components/table-tools.js +4 -7
  384. package/lib/ele-pro-table/components/tool-column.d.ts +2 -2
  385. package/lib/ele-pro-table/index.d.ts +33 -35
  386. package/lib/ele-pro-table/index.js +119 -78
  387. package/lib/ele-pro-table/props.d.ts +12 -15
  388. package/lib/ele-pro-table/props.js +1 -1
  389. package/lib/ele-pro-table/types/index.d.ts +5 -14
  390. package/lib/ele-pro-table/util.d.ts +5 -11
  391. package/lib/ele-pro-table/util.js +4 -5
  392. package/lib/ele-segmented/index.d.ts +1 -1
  393. package/lib/ele-split-panel/index.d.ts +1 -0
  394. package/lib/ele-split-panel/index.js +34 -4
  395. package/lib/ele-steps/index.d.ts +24 -24
  396. package/lib/ele-steps/props.d.ts +7 -7
  397. package/lib/ele-table-select/index.d.ts +83 -86
  398. package/lib/ele-table-select/index.js +264 -235
  399. package/lib/ele-table-select/props.d.ts +43 -37
  400. package/lib/ele-table-select/props.js +41 -32
  401. package/lib/ele-tabs/components/tab-title.d.ts +2 -2
  402. package/lib/ele-tabs/index.d.ts +28 -29
  403. package/lib/ele-tabs/index.js +11 -3
  404. package/lib/ele-tabs/props.d.ts +10 -10
  405. package/lib/ele-text/index.d.ts +2 -2
  406. package/lib/ele-tool/index.d.ts +3 -3
  407. package/lib/ele-tool/props.d.ts +1 -1
  408. package/lib/ele-tooltip/index.d.ts +51 -114
  409. package/lib/ele-tooltip/props.d.ts +20 -47
  410. package/lib/ele-tooltip/props.js +2 -1
  411. package/lib/ele-tour/index.d.ts +2 -2
  412. package/lib/ele-tour/types/index.d.ts +1 -1
  413. package/lib/ele-tour/util.d.ts +1 -1
  414. package/lib/ele-tree-select/index.d.ts +144 -0
  415. package/lib/ele-tree-select/index.js +411 -0
  416. package/lib/ele-tree-select/props.d.ts +92 -0
  417. package/lib/ele-tree-select/props.js +87 -0
  418. package/lib/ele-tree-select/style/css-var.scss +8 -0
  419. package/lib/ele-tree-select/style/index.js +4 -0
  420. package/lib/ele-tree-select/style/index.scss +26 -0
  421. package/lib/ele-tree-select/types/index.d.ts +17 -0
  422. package/lib/ele-tree-select/util.d.ts +48 -0
  423. package/lib/ele-tree-select/util.js +128 -0
  424. package/lib/ele-upload-list/index.d.ts +1 -1
  425. package/lib/ele-virtual-table/components/body-cell.d.ts +1 -1
  426. package/lib/ele-virtual-table/components/body-row.d.ts +3 -3
  427. package/lib/ele-virtual-table/components/body-row.js +3 -3
  428. package/lib/ele-virtual-table/components/cell-filter.d.ts +1 -1
  429. package/lib/ele-virtual-table/components/header-cell.d.ts +1 -1
  430. package/lib/ele-virtual-table/components/header-row.d.ts +1 -1
  431. package/lib/ele-virtual-table/index.d.ts +386 -0
  432. package/lib/ele-virtual-table/index.js +291 -139
  433. package/lib/ele-virtual-table/props.d.ts +6 -1
  434. package/lib/ele-virtual-table/style/index.scss +1 -1
  435. package/lib/ele-virtual-table/types/index.d.ts +8 -4
  436. package/lib/ele-virtual-table/util.d.ts +16 -14
  437. package/lib/ele-virtual-table/util.js +26 -44
  438. package/lib/ele-watermark/index.d.ts +0 -1
  439. package/lib/ele-watermark/index.js +13 -13
  440. package/lib/ele-watermark/util.d.ts +6 -0
  441. package/lib/ele-watermark/util.js +8 -0
  442. package/lib/style/index.scss +1 -0
  443. package/lib/style/themes/dark.scss +3 -0
  444. package/lib/style/themes/default.scss +152 -9
  445. package/lib/style/themes/rounded.scss +34 -0
  446. package/lib/style/themes/theme-util.scss +3 -3
  447. package/lib/utils/core.d.ts +8 -1
  448. package/lib/utils/core.js +15 -0
  449. package/package.json +65 -58
  450. package/typings/global.d.ts +1 -0
  451. package/es/ele-app/style/common.js +0 -1
  452. package/es/ele-app/style/overwrite.js +0 -1
  453. package/es/ele-app/style/overwrite.scss +0 -1728
  454. package/es/ele-app/style/scrollbar.js +0 -1
  455. package/es/ele-basic-select/components/select-tag.d.ts +0 -32
  456. package/es/ele-basic-select/components/select-tag.js +0 -65
  457. package/es/ele-icon-select/components/icon-popper.d.ts +0 -93
  458. package/es/ele-icon-select/components/icon-popper.js +0 -253
  459. package/es/ele-table-select/types/index.d.ts +0 -12
  460. package/lib/ele-app/style/common.js +0 -2
  461. package/lib/ele-app/style/overwrite.js +0 -2
  462. package/lib/ele-app/style/overwrite.scss +0 -1728
  463. package/lib/ele-app/style/scrollbar.js +0 -2
  464. package/lib/ele-basic-select/components/select-tag.d.ts +0 -32
  465. package/lib/ele-basic-select/components/select-tag.js +0 -64
  466. package/lib/ele-icon-select/components/icon-popper.d.ts +0 -93
  467. package/lib/ele-icon-select/components/icon-popper.js +0 -252
  468. package/lib/ele-table-select/types/index.d.ts +0 -12
  469. /package/es/ele-app/style/{common.scss → common/index.scss} +0 -0
  470. /package/lib/ele-app/style/{common.scss → common/index.scss} +0 -0
@@ -27,11 +27,12 @@ declare const _default: import("vue").DefineComponent<{
27
27
  };
28
28
  toBlob: BooleanConstructor;
29
29
  options: import("vue").PropType<CropperOptions>;
30
- croppedOptions: import("vue").PropType<import("./types").CroppedOptions>;
30
+ /** 是否开启布局响应 */
31
+ croppedOptions: import("vue").PropType<import("./types").CroppedOptions>; /** 图片节点 */
31
32
  tooltip: {
32
33
  type: BooleanConstructor;
33
34
  default: boolean;
34
- };
35
+ }; /** 预览组件 */
35
36
  tooltipProps: import("vue").PropType<Partial<import("../ele-tooltip/props").TooltipProps>>;
36
37
  responsive: {
37
38
  type: BooleanConstructor;
@@ -85,11 +86,12 @@ declare const _default: import("vue").DefineComponent<{
85
86
  };
86
87
  toBlob: BooleanConstructor;
87
88
  options: import("vue").PropType<CropperOptions>;
88
- croppedOptions: import("vue").PropType<import("./types").CroppedOptions>;
89
+ /** 是否开启布局响应 */
90
+ croppedOptions: import("vue").PropType<import("./types").CroppedOptions>; /** 图片节点 */
89
91
  tooltip: {
90
92
  type: BooleanConstructor;
91
93
  default: boolean;
92
- };
94
+ }; /** 预览组件 */
93
95
  tooltipProps: import("vue").PropType<Partial<import("../ele-tooltip/props").TooltipProps>>;
94
96
  responsive: {
95
97
  type: BooleanConstructor;
@@ -100,12 +102,12 @@ declare const _default: import("vue").DefineComponent<{
100
102
  onDone?: ((_result?: string | Blob | null | undefined) => any) | undefined;
101
103
  }, {
102
104
  tooltip: boolean;
103
- tools: string;
104
- responsive: boolean;
105
- previewWidth: number;
106
- accept: string;
107
105
  preview: boolean;
106
+ responsive: boolean;
108
107
  imageType: string;
108
+ accept: string;
109
+ tools: string;
110
+ previewWidth: number;
109
111
  toBlob: boolean;
110
112
  }, {}>;
111
113
  export default _default;
@@ -1,7 +1,7 @@
1
1
  import type { CropperLocale } from '../ele-cropper/types';
2
2
  declare const _default: import("vue").DefineComponent<{
3
3
  modelValue: BooleanConstructor;
4
- modalProps: import("vue").PropType<Partial<Omit<import("../ele-modal/props").ModalProps, "modelValue">>>;
4
+ modalProps: import("vue").PropType<Partial<Omit<import("../ele-app/types").EleModalProps, "modelValue">>>;
5
5
  height: StringConstructor;
6
6
  src: StringConstructor;
7
7
  imageType: {
@@ -43,10 +43,10 @@ declare const _default: import("vue").DefineComponent<{
43
43
  onDone: (result: Blob | string | null) => void;
44
44
  }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
45
45
  done: (_result: string | Blob | null) => boolean;
46
- 'update:modelValue': (_value: boolean) => boolean;
46
+ 'update:modelValue': (_value: boolean) => boolean; /** 更新绑定值 */
47
47
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
48
48
  modelValue: BooleanConstructor;
49
- modalProps: import("vue").PropType<Partial<Omit<import("../ele-modal/props").ModalProps, "modelValue">>>;
49
+ modalProps: import("vue").PropType<Partial<Omit<import("../ele-app/types").EleModalProps, "modelValue">>>;
50
50
  height: StringConstructor;
51
51
  src: StringConstructor;
52
52
  imageType: {
@@ -88,12 +88,12 @@ declare const _default: import("vue").DefineComponent<{
88
88
  }, {
89
89
  modelValue: boolean;
90
90
  tooltip: boolean;
91
- tools: string;
92
- responsive: boolean;
93
- previewWidth: number;
94
- accept: string;
95
91
  preview: boolean;
92
+ responsive: boolean;
96
93
  imageType: string;
94
+ accept: string;
95
+ tools: string;
96
+ previewWidth: number;
97
97
  toBlob: boolean;
98
98
  }, {}>;
99
99
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import type { PropType, ExtractPropTypes } from 'vue';
2
- import type { ModalProps } from '../ele-modal/props';
2
+ import type { EleModalProps } from '../ele-app/types';
3
3
  /**
4
4
  * 属性
5
5
  */
@@ -7,7 +7,7 @@ export declare const cropperModalProps: {
7
7
  /** 弹窗是否显示 */
8
8
  modelValue: BooleanConstructor;
9
9
  /** 弹窗参数 */
10
- modalProps: PropType<Partial<Omit<ModalProps, "modelValue">>>;
10
+ modalProps: PropType<Partial<Omit<EleModalProps, "modelValue">>>;
11
11
  height: StringConstructor;
12
12
  src: StringConstructor;
13
13
  imageType: {
@@ -16,6 +16,9 @@ export declare const cropperModalProps: {
16
16
  };
17
17
  accept: {
18
18
  type: StringConstructor;
19
+ /**
20
+ * 事件
21
+ */
19
22
  default: string;
20
23
  };
21
24
  tools: {
@@ -1,5 +1,5 @@
1
1
  import type { ElTableInstance } from '../ele-app/types';
2
- import type { DataItem, Column, Columns, Sorter, Filter } from './types';
2
+ import type { DataKey, DataItem, Column, Columns, Sorter, Filter } from './types';
3
3
  declare const _default: import("vue").DefineComponent<{
4
4
  stripe: {
5
5
  type: BooleanConstructor;
@@ -33,8 +33,11 @@ declare const _default: import("vue").DefineComponent<{
33
33
  default: () => null;
34
34
  };
35
35
  rowClickChecked: import("vue").PropType<import("./types").RowClickChecked>;
36
+ reserveCurrent: BooleanConstructor;
37
+ selectedRowKeys: import("vue").PropType<DataKey[]>;
38
+ cacheData: import("vue").PropType<DataItem[]>;
36
39
  size: {
37
- readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
40
+ readonly type: import("vue").PropType<import("element-plus/es/utils/index").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
38
41
  readonly required: false;
39
42
  readonly validator: ((val: unknown) => boolean) | undefined;
40
43
  __epPropKey: true;
@@ -119,17 +122,20 @@ declare const _default: import("vue").DefineComponent<{
119
122
  flexible: BooleanConstructor;
120
123
  }, {
121
124
  clearSort: () => void;
125
+ clearSelection: () => void;
126
+ toggleRowSelection: (row: DataItem, selected?: boolean) => void;
127
+ setCurrentRow: (row?: DataItem | null) => void;
128
+ setCurrentRowKey: (key?: DataKey | null) => void;
129
+ getCurrentRow: () => DataItem | undefined;
122
130
  setSelectedRows: (rows?: DataItem[]) => void;
123
- setSelectedRowKeys: (keys?: string[] | number[]) => void;
131
+ setSelectedRowKeys: (keys?: DataKey[]) => void;
124
132
  toggleRowExpansionAll: (expanded?: boolean) => void;
133
+ updateSelectedAndChecked: () => void;
125
134
  tableRef: import("vue").Ref<ElTableInstance>;
126
- clearSelection: () => void;
127
135
  getSelectionRows: () => DataItem[] | undefined;
128
- toggleRowSelection: (row: DataItem, selected?: boolean | undefined) => void;
129
136
  toggleAllSelection: () => void;
130
137
  toggleRowExpansion: (row: DataItem, expanded?: boolean | undefined) => void;
131
- setCurrentRow: (row?: DataItem | null | undefined) => void;
132
- clearFilter: (columnKeys?: string[] | undefined) => void;
138
+ clearFilter: (columnKeys?: string[] | undefined) => void; /** 设置单选选中值 */
133
139
  doLayout: () => void;
134
140
  sort: (prop: string, order: string) => void;
135
141
  scrollTo: (options: number | ScrollToOptions, yCoord?: number | undefined) => void;
@@ -153,7 +159,9 @@ declare const _default: import("vue").DefineComponent<{
153
159
  filterChange: (_filter: Filter) => boolean;
154
160
  currentChange: (_current?: DataItem | null | undefined, _old?: DataItem | null | undefined) => boolean;
155
161
  headerDragend: (_width: number, _old: number, _column: Column, _e: MouseEvent) => boolean;
156
- expandChange: (_row: DataItem, _expanded: boolean) => boolean; /** 切换所有行的展开状态 */
162
+ expandChange: (_row: DataItem, _expanded: boolean) => boolean;
163
+ 'update:currentRowKey': (_currentRowKey?: DataKey | undefined) => boolean;
164
+ 'update:selectedRowKeys': (_selectedRowKeys?: DataKey[] | undefined) => boolean;
157
165
  }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
158
166
  stripe: {
159
167
  type: BooleanConstructor;
@@ -187,8 +195,11 @@ declare const _default: import("vue").DefineComponent<{
187
195
  default: () => null;
188
196
  };
189
197
  rowClickChecked: import("vue").PropType<import("./types").RowClickChecked>;
198
+ reserveCurrent: BooleanConstructor;
199
+ selectedRowKeys: import("vue").PropType<DataKey[]>;
200
+ cacheData: import("vue").PropType<DataItem[]>;
190
201
  size: {
191
- readonly type: import("vue").PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
202
+ readonly type: import("vue").PropType<import("element-plus/es/utils/index").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
192
203
  readonly required: false;
193
204
  readonly validator: ((val: unknown) => boolean) | undefined;
194
205
  __epPropKey: true;
@@ -290,6 +301,8 @@ declare const _default: import("vue").DefineComponent<{
290
301
  onCurrentChange?: ((_current?: DataItem | null | undefined, _old?: DataItem | null | undefined) => any) | undefined;
291
302
  onHeaderDragend?: ((_width: number, _old: number, _column: Column, _e: MouseEvent) => any) | undefined;
292
303
  onExpandChange?: ((_row: DataItem, _expanded: boolean) => any) | undefined;
304
+ "onUpdate:currentRowKey"?: ((_currentRowKey?: DataKey | undefined) => any) | undefined;
305
+ "onUpdate:selectedRowKeys"?: ((_selectedRowKeys?: DataKey[] | undefined) => any) | undefined;
293
306
  }, {
294
307
  fit: boolean;
295
308
  className: string;
@@ -315,5 +328,6 @@ declare const _default: import("vue").DefineComponent<{
315
328
  sticky: boolean;
316
329
  bottomLine: boolean;
317
330
  emptyProps: import("./types").TableEmptyProps;
331
+ reserveCurrent: boolean;
318
332
  }, {}>;
319
333
  export default _default;
@@ -11,14 +11,13 @@ const index = vue.defineComponent({
11
11
  setup(props$1, { emit, slots, expose }) {
12
12
  const events = util.useEmits(emit);
13
13
  const methods = util.useMethods(() => tableRef.value);
14
- const {
15
- getSorter,
16
- setSorter,
17
- getFilter,
18
- setFilter,
19
- getSelectionNoChange,
20
- setSelectionNoChange
21
- } = util.useState(props$1.defaultSort);
14
+ const tableState = {
15
+ sorter: props$1.defaultSort,
16
+ key: null,
17
+ checkedKeys: [],
18
+ checked: [],
19
+ reserveChecked: util.isReserveChecked(props$1.columns)
20
+ };
22
21
  const tableRef = vue.ref(null);
23
22
  const tableCols = vue.ref(props$1.columns ?? []);
24
23
  const tableOverflowTooltip = vue.computed(() => {
@@ -28,73 +27,252 @@ const index = vue.defineComponent({
28
27
  props$1.tooltipOptions
29
28
  );
30
29
  });
31
- vue.watch(
32
- () => props$1.columns,
33
- (columns) => {
34
- if (!columns) {
35
- tableCols.value = [];
36
- return;
37
- }
38
- const { cols, sorter } = util.getStateCols(
39
- columns,
40
- getSorter(),
41
- getFilter()
42
- );
43
- tableCols.value = cols;
44
- vue.nextTick(() => {
45
- methods.doLayout();
46
- if (sorter) {
47
- methods.sort(sorter.prop, sorter.order || "ascending");
48
- }
49
- });
50
- },
51
- { deep: true }
52
- );
30
+ const childKey = vue.computed(() => {
31
+ var _a;
32
+ return ((_a = props$1.treeProps) == null ? void 0 : _a.children) || "children";
33
+ });
53
34
  const clearSort = () => {
54
35
  methods.clearSort();
55
- setSorter({});
36
+ tableState.sorter = {};
37
+ };
38
+ const clearSelection = () => {
39
+ updateCheckedState([]);
40
+ };
41
+ const toggleRowSelection = (row, selected) => {
42
+ methods.toggleRowSelection(row, selected);
43
+ const selection = methods.getSelectionRows() || [];
44
+ updateCheckedState(util.getRowKeys(selection, props$1.rowKey), selection);
45
+ };
46
+ const setCurrentRow = (row) => {
47
+ updateSelectedState(util.getValue(row, props$1.rowKey), row);
48
+ };
49
+ const setCurrentRowKey = (key) => {
50
+ updateSelectedState(key);
51
+ };
52
+ const getCurrentRow = () => {
53
+ return tableState.row;
56
54
  };
57
55
  const setSelectedRows = (rows) => {
58
- if (rows == null) {
59
- return;
56
+ if (rows) {
57
+ updateCheckedState(util.getRowKeys(rows, props$1.rowKey), rows, !!rows.length);
60
58
  }
61
- setSelectionNoChange(true);
62
- methods.clearSelection();
63
- rows.forEach((d) => {
64
- methods.toggleRowSelection(d, true);
65
- });
66
- setSelectionNoChange(false);
67
- events.onSelectionChange(rows);
68
59
  };
69
60
  const setSelectedRowKeys = (keys) => {
70
- if (!keys || !props$1.rowKey) {
71
- return;
61
+ if (keys) {
62
+ updateCheckedState(keys);
72
63
  }
73
- const rows = props$1.data.filter(
74
- (d) => keys.some((v) => v === util.getValue(d, props$1.rowKey))
75
- );
76
- setSelectedRows(rows);
77
64
  };
78
65
  const toggleRowExpansionAll = (expanded) => {
79
- var _a;
80
- const childKey = ((_a = props$1.treeProps) == null ? void 0 : _a.children) || "children";
81
66
  core.eachTree(
82
67
  props$1.data,
83
- (d) => {
84
- var _a2;
85
- if ((_a2 = d[childKey]) == null ? void 0 : _a2.length) {
86
- methods.toggleRowExpansion(d, expanded);
68
+ (row) => {
69
+ var _a;
70
+ if ((_a = row[childKey.value]) == null ? void 0 : _a.length) {
71
+ methods.toggleRowExpansion(row, expanded);
87
72
  }
88
73
  },
89
- childKey
74
+ childKey.value
90
75
  );
91
76
  };
77
+ const updateSelectedState = (key, item) => {
78
+ if (!util.valueIsChanged(tableState.key, key)) {
79
+ if (key != null && item != null) {
80
+ if (tableState.row !== item) {
81
+ tableState.row = item;
82
+ events.onCurrentChange(item, tableState.oldRow);
83
+ }
84
+ methods.setCurrentRow(item);
85
+ }
86
+ return;
87
+ }
88
+ if (key != null) {
89
+ const row = util.getRowByKey(key, props$1.data, props$1.rowKey, childKey.value);
90
+ if (row != null || props$1.reserveCurrent) {
91
+ tableState.oldRow = tableState.row;
92
+ tableState.row = row || item || void 0;
93
+ if (tableState.row == null && props$1.cacheData != null) {
94
+ tableState.row = util.getRowByKey(
95
+ key,
96
+ props$1.cacheData,
97
+ props$1.rowKey,
98
+ childKey.value
99
+ );
100
+ }
101
+ tableState.key = key;
102
+ methods.setCurrentRow(row);
103
+ updateCurrentRowKey(key);
104
+ events.onCurrentChange(tableState.row, tableState.oldRow);
105
+ return;
106
+ }
107
+ }
108
+ if (tableState.key != null) {
109
+ tableState.oldRow = tableState.row;
110
+ tableState.row = void 0;
111
+ tableState.key = null;
112
+ methods.setCurrentRow(null);
113
+ updateCurrentRowKey();
114
+ events.onCurrentChange(void 0, tableState.oldRow);
115
+ }
116
+ };
117
+ const updateCheckedState = (keys, items, force) => {
118
+ if (!force && !util.arrayIsChanged(tableState.checkedKeys, keys)) {
119
+ return;
120
+ }
121
+ const [dataKeys, list] = util.getKeysAndList(
122
+ props$1.data,
123
+ props$1.rowKey,
124
+ childKey.value
125
+ );
126
+ const [cacheKeys, cacheList] = util.getKeysAndList(
127
+ props$1.cacheData,
128
+ props$1.rowKey,
129
+ childKey.value
130
+ );
131
+ const itemKeys = items ? items.map((d) => util.getValue(d, props$1.rowKey)) : [];
132
+ const oldKeys = tableState.checked.map((d) => util.getValue(d, props$1.rowKey));
133
+ const checkedKeys = [];
134
+ const checked = [];
135
+ keys.forEach((key) => {
136
+ const index2 = dataKeys.indexOf(key);
137
+ if (index2 !== -1) {
138
+ checkedKeys.push(key);
139
+ checked.push(list[index2]);
140
+ } else if (tableState.reserveChecked) {
141
+ checkedKeys.push(key);
142
+ if (items != null) {
143
+ const tIndex = itemKeys.indexOf(key);
144
+ if (tIndex !== -1 && !items[tIndex]._isMock) {
145
+ checked.push(items[tIndex]);
146
+ return;
147
+ }
148
+ }
149
+ if (props$1.cacheData != null) {
150
+ const i = cacheKeys.indexOf(key);
151
+ if (i !== -1) {
152
+ checked.push(cacheList[i]);
153
+ return;
154
+ }
155
+ }
156
+ const oIndex = oldKeys.indexOf(key);
157
+ if (oIndex !== -1) {
158
+ checked.push(tableState.checked[oIndex]);
159
+ return;
160
+ }
161
+ if (typeof props$1.rowKey === "string") {
162
+ checked.push({ [props$1.rowKey]: key, _isMock: true });
163
+ }
164
+ }
165
+ });
166
+ const isChanged = util.arrayIsChanged(tableState.checked, checked);
167
+ tableState.checked = checked;
168
+ tableState.checkedKeys = checkedKeys;
169
+ if (isChanged) {
170
+ methods.clearSelection();
171
+ checked.forEach((row) => {
172
+ methods.toggleRowSelection(row, true);
173
+ });
174
+ }
175
+ updateSelectedRowKeys(checkedKeys);
176
+ if (isChanged) {
177
+ events.onSelectionChange(checked);
178
+ }
179
+ };
180
+ const updateSelectedAndChecked = () => {
181
+ const key = tableState.key;
182
+ if (key != null) {
183
+ const row = util.getRowByKey(key, props$1.data, props$1.rowKey, childKey.value);
184
+ if (row != null) {
185
+ updateSelectedState(key, row);
186
+ } else if (!props$1.reserveCurrent) {
187
+ updateSelectedState(null);
188
+ } else if (props$1.cacheData != null) {
189
+ const temp = util.getRowByKey(
190
+ key,
191
+ props$1.cacheData,
192
+ props$1.rowKey,
193
+ childKey.value
194
+ );
195
+ if (temp != null) {
196
+ updateSelectedState(key, temp);
197
+ }
198
+ }
199
+ }
200
+ if (tableState.checkedKeys.length) {
201
+ updateCheckedState(tableState.checkedKeys, void 0, true);
202
+ }
203
+ };
204
+ const updateCurrentRowKey = (key) => {
205
+ if (util.valueIsChanged(props$1.currentRowKey, key)) {
206
+ events["onUpdate:currentRowKey"](key);
207
+ }
208
+ };
209
+ const updateSelectedRowKeys = (keys) => {
210
+ const selected = props$1.selectedRowKeys || [];
211
+ if (util.arrayIsChanged(selected, keys)) {
212
+ events["onUpdate:selectedRowKeys"](keys);
213
+ }
214
+ };
215
+ vue.watch(
216
+ () => props$1.columns,
217
+ (columns) => {
218
+ tableState.reserveChecked = util.isReserveChecked(columns);
219
+ if (!columns) {
220
+ tableCols.value = [];
221
+ } else {
222
+ const { cols, sorter } = util.getStateCols(
223
+ columns,
224
+ tableState.sorter,
225
+ tableState.filter
226
+ );
227
+ tableCols.value = cols;
228
+ vue.nextTick(() => {
229
+ methods.doLayout();
230
+ if (sorter) {
231
+ methods.sort(sorter.prop, sorter.order || "ascending");
232
+ }
233
+ });
234
+ }
235
+ },
236
+ { deep: true }
237
+ );
238
+ vue.watch([() => props$1.data, () => props$1.cacheData], () => {
239
+ vue.nextTick(() => {
240
+ updateSelectedAndChecked();
241
+ });
242
+ });
243
+ vue.watch(
244
+ () => props$1.currentRowKey,
245
+ (key) => {
246
+ updateSelectedState(key);
247
+ }
248
+ );
249
+ vue.watch(
250
+ () => props$1.selectedRowKeys,
251
+ (selectedRowKeys) => {
252
+ updateCheckedState(selectedRowKeys || []);
253
+ },
254
+ { deep: true }
255
+ );
256
+ vue.onMounted(() => {
257
+ if (props$1.currentRowKey != null) {
258
+ updateSelectedState(props$1.currentRowKey);
259
+ }
260
+ if (props$1.selectedRowKeys != null && props$1.selectedRowKeys.length) {
261
+ updateCheckedState(props$1.selectedRowKeys);
262
+ }
263
+ });
92
264
  const exposeValue = {
93
265
  ...methods,
94
266
  clearSort,
267
+ clearSelection,
268
+ toggleRowSelection,
269
+ setCurrentRow,
270
+ setCurrentRowKey,
271
+ getCurrentRow,
95
272
  setSelectedRows,
96
273
  setSelectedRowKeys,
97
274
  toggleRowExpansionAll,
275
+ updateSelectedAndChecked,
98
276
  tableRef
99
277
  };
100
278
  expose(exposeValue);
@@ -103,13 +281,17 @@ const index = vue.defineComponent({
103
281
  elementPlus.ElTable,
104
282
  {
105
283
  ...core.pick(props$1, props.tablePropKeys),
106
- ...events,
284
+ ...core.omit(events, [
285
+ "onUpdate:currentRowKey",
286
+ "onUpdate:selectedRowKeys"
287
+ ]),
107
288
  ref: tableRef,
108
289
  class: [
109
290
  "ele-data-table",
110
291
  { "is-sticky": props$1.sticky },
111
292
  { "hide-bottom-line": !props$1.bottomLine }
112
293
  ],
294
+ currentRowKey: void 0,
113
295
  emptyText: props$1.errorText || props$1.emptyText,
114
296
  rowClassName: (param) => {
115
297
  return util.getBodyRowClass(props$1.rowClassName, param);
@@ -124,10 +306,11 @@ const index = vue.defineComponent({
124
306
  onRowClick: (row, column, event) => {
125
307
  if (props$1.rowClickChecked && !util.isDisableRow(row, props$1.data.indexOf(row), props$1.columns)) {
126
308
  const selections = methods.getSelectionRows();
127
- if (props$1.rowClickChecked === "smart" && selections != null && selections.length === 1) {
128
- setSelectedRows([row]);
309
+ if (props$1.rowClickChecked === "smart" && (!selections || !selections.length || selections.length === 1)) {
310
+ const key = util.getValue(row, props$1.rowKey);
311
+ updateCheckedState(key == null ? [] : [key]);
129
312
  } else {
130
- methods.toggleRowSelection(row);
313
+ toggleRowSelection(row);
131
314
  }
132
315
  }
133
316
  events.onRowClick(row, column, event);
@@ -137,29 +320,38 @@ const index = vue.defineComponent({
137
320
  const el = e.currentTarget;
138
321
  if (el) {
139
322
  const caretEl = el.querySelector(".caret-wrapper");
140
- if (caretEl) {
141
- caretEl.dispatchEvent(new MouseEvent("click"));
142
- }
323
+ caretEl && caretEl.dispatchEvent(new MouseEvent("click"));
143
324
  }
144
325
  }
145
326
  events.onHeaderClick(column, e);
146
327
  },
147
- onSelectionChange: (selection) => {
148
- if (!getSelectionNoChange()) {
149
- events.onSelectionChange(selection);
150
- }
151
- },
152
328
  onSortChange: (sorter) => {
153
- const currentSorter = getSorter();
329
+ const currentSorter = tableState.sorter;
154
330
  if (currentSorter && sorter.prop === currentSorter.prop && sorter.order === currentSorter.order) {
155
331
  return;
156
332
  }
157
- setSorter(sorter);
158
- events.onSortChange(getSorter());
333
+ tableState.sorter = sorter;
334
+ events.onSortChange(sorter);
159
335
  },
160
336
  onFilterChange: (filter) => {
161
- setFilter(util.getTableFilter(tableRef.value) ?? filter);
162
- events.onFilterChange(getFilter());
337
+ tableState.filter = util.getTableFilter(tableRef.value) ?? filter;
338
+ events.onFilterChange(tableState.filter);
339
+ },
340
+ // 重写选中逻辑
341
+ onCurrentChange: (row, old) => {
342
+ if (row != null && row !== old) {
343
+ updateSelectedState(util.getValue(row, props$1.rowKey), row);
344
+ }
345
+ },
346
+ onSelect: (selection, row) => {
347
+ events.onSelect(selection, row);
348
+ updateCheckedState(util.getRowKeys(selection, props$1.rowKey), selection);
349
+ },
350
+ onSelectAll: (selection) => {
351
+ updateCheckedState(util.getRowKeys(selection, props$1.rowKey), selection);
352
+ events.onSelectAll(selection);
353
+ },
354
+ onSelectionChange: () => {
163
355
  },
164
356
  // 移除提示组件相关属性
165
357
  showOverflowTooltip: void 0,
@@ -1,12 +1,12 @@
1
1
  import type { PropType, ExtractPropTypes } from 'vue';
2
- import type { DataItem, Column, Columns, Sorter, Filter, TableEmptyProps, RowClickChecked } from './types';
2
+ import type { DataKey, DataItem, Column, Columns, Sorter, Filter, TableEmptyProps, RowClickChecked } from './types';
3
3
  declare const normalizeProps: Omit<{
4
4
  data: {
5
5
  type: PropType<any[]>;
6
6
  default: () => never[];
7
7
  };
8
8
  size: {
9
- readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
9
+ readonly type: PropType<import("element-plus/es/utils/index").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
10
10
  readonly required: false;
11
11
  readonly validator: ((val: unknown) => boolean) | undefined;
12
12
  __epPropKey: true;
@@ -137,8 +137,14 @@ export declare const dataTableProps: {
137
137
  };
138
138
  /** 多选时行点击选中 */
139
139
  rowClickChecked: PropType<RowClickChecked>;
140
+ /** 单选选中是否保留不存在的数据 */
141
+ reserveCurrent: BooleanConstructor;
142
+ /** 多选选中行的值 */
143
+ selectedRowKeys: PropType<DataKey[]>;
144
+ /** 缓存数据 */
145
+ cacheData: PropType<DataItem[]>;
140
146
  size: {
141
- readonly type: PropType<import("element-plus/es/utils").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
147
+ readonly type: PropType<import("element-plus/es/utils/index").EpPropMergeType<StringConstructor, "" | "default" | "small" | "large", never>>;
142
148
  readonly required: false;
143
149
  readonly validator: ((val: unknown) => boolean) | undefined;
144
150
  __epPropKey: true;
@@ -245,6 +251,10 @@ export declare const dataTableEmits: {
245
251
  currentChange: (_current?: DataItem | null, _old?: DataItem | null) => boolean;
246
252
  headerDragend: (_width: number, _old: number, _column: Column, _e: MouseEvent) => boolean;
247
253
  expandChange: (_row: DataItem, _expanded: boolean) => boolean;
254
+ /** 更新单选选中行的值 */
255
+ 'update:currentRowKey': (_currentRowKey?: DataKey) => boolean;
256
+ /** 更新多选选中行的值 */
257
+ 'update:selectedRowKeys': (_selectedRowKeys?: DataKey[]) => boolean;
248
258
  };
249
259
  /**
250
260
  * 表格组件属性名
@@ -47,7 +47,13 @@ const dataTableProps = {
47
47
  }
48
48
  },
49
49
  /** 多选时行点击选中 */
50
- rowClickChecked: [Boolean, String]
50
+ rowClickChecked: [Boolean, String],
51
+ /** 单选选中是否保留不存在的数据 */
52
+ reserveCurrent: Boolean,
53
+ /** 多选选中行的值 */
54
+ selectedRowKeys: Array,
55
+ /** 缓存数据 */
56
+ cacheData: Array
51
57
  };
52
58
  const dataTableEmits = {
53
59
  select: (_selection, _row) => true,
@@ -67,7 +73,11 @@ const dataTableEmits = {
67
73
  filterChange: (_filter) => true,
68
74
  currentChange: (_current, _old) => true,
69
75
  headerDragend: (_width, _old, _column, _e) => true,
70
- expandChange: (_row, _expanded) => true
76
+ expandChange: (_row, _expanded) => true,
77
+ /** 更新单选选中行的值 */
78
+ "update:currentRowKey": (_currentRowKey) => true,
79
+ /** 更新多选选中行的值 */
80
+ "update:selectedRowKeys": (_selectedRowKeys) => true
71
81
  };
72
82
  const tablePropKeys = Object.keys(normalizeProps);
73
83
  const dataTablePropKeys = Object.keys(