fast-element-plus 1.0.0 → 1.0.1

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 (558) hide show
  1. package/Fast.png +0 -0
  2. package/LICENSE +201 -0
  3. package/README.md +164 -0
  4. package/README.zh.md +164 -0
  5. package/dist/index.full.js +28446 -0
  6. package/dist/index.full.js.map +1 -0
  7. package/dist/index.full.min.js +36 -0
  8. package/dist/index.full.min.js.map +1 -0
  9. package/dist/index.full.min.mjs +36 -0
  10. package/dist/index.full.min.mjs.map +1 -0
  11. package/dist/index.full.mjs +28445 -0
  12. package/dist/index.full.mjs.map +1 -0
  13. package/dist/styles/index.css +984 -0
  14. package/dist/styles/index.css.map +1 -0
  15. package/es/component.d.ts +3 -0
  16. package/es/component.mjs +52 -0
  17. package/es/component.mjs.map +1 -0
  18. package/es/components/avatar/index.d.ts +14 -0
  19. package/es/components/avatar/index.mjs +8 -0
  20. package/es/components/avatar/index.mjs.map +1 -0
  21. package/es/components/avatar/src/avatar.d.ts +96 -0
  22. package/es/components/avatar/src/avatar.mjs +76 -0
  23. package/es/components/avatar/src/avatar.mjs.map +1 -0
  24. package/es/components/button/index.d.ts +15 -0
  25. package/es/components/button/index.mjs +11 -0
  26. package/es/components/button/index.mjs.map +1 -0
  27. package/es/components/button/src/button.d.ts +173 -0
  28. package/es/components/button/src/button.mjs +118 -0
  29. package/es/components/button/src/button.mjs.map +1 -0
  30. package/es/components/carNumber/index.d.ts +9 -0
  31. package/es/components/carNumber/index.mjs +12 -0
  32. package/es/components/carNumber/index.mjs.map +1 -0
  33. package/es/components/carNumber/src/carNumber.d.ts +217 -0
  34. package/es/components/carNumber/src/carNumber.mjs +164 -0
  35. package/es/components/carNumber/src/carNumber.mjs.map +1 -0
  36. package/es/components/carNumber/src/common.d.ts +15 -0
  37. package/es/components/carNumber/src/common.mjs +75 -0
  38. package/es/components/carNumber/src/common.mjs.map +1 -0
  39. package/es/components/contextMenu/index.d.ts +9 -0
  40. package/es/components/contextMenu/index.mjs +9 -0
  41. package/es/components/contextMenu/index.mjs.map +1 -0
  42. package/es/components/contextMenu/src/contextMenu.d.ts +32 -0
  43. package/es/components/contextMenu/src/contextMenu.mjs +85 -0
  44. package/es/components/contextMenu/src/contextMenu.mjs.map +1 -0
  45. package/es/components/contextMenu/src/contextMenu.type.d.ts +33 -0
  46. package/es/components/contextMenu/src/contextMenu.type.mjs +2 -0
  47. package/es/components/contextMenu/src/contextMenu.type.mjs.map +1 -0
  48. package/es/components/dialog/index.d.ts +14 -0
  49. package/es/components/dialog/index.mjs +11 -0
  50. package/es/components/dialog/index.mjs.map +1 -0
  51. package/es/components/dialog/src/dialog.d.ts +454 -0
  52. package/es/components/dialog/src/dialog.mjs +285 -0
  53. package/es/components/dialog/src/dialog.mjs.map +1 -0
  54. package/es/components/drawer/index.d.ts +14 -0
  55. package/es/components/drawer/index.mjs +8 -0
  56. package/es/components/drawer/index.mjs.map +1 -0
  57. package/es/components/drawer/src/drawer.d.ts +449 -0
  58. package/es/components/drawer/src/drawer.mjs +284 -0
  59. package/es/components/drawer/src/drawer.mjs.map +1 -0
  60. package/es/components/form/index.d.ts +23 -0
  61. package/es/components/form/index.mjs +19 -0
  62. package/es/components/form/index.mjs.map +1 -0
  63. package/es/components/form/src/form.d.ts +194 -0
  64. package/es/components/form/src/form.mjs +109 -0
  65. package/es/components/form/src/form.mjs.map +1 -0
  66. package/es/components/form/src/formItem.d.ts +190 -0
  67. package/es/components/form/src/formItem.mjs +117 -0
  68. package/es/components/form/src/formItem.mjs.map +1 -0
  69. package/es/components/form/utils/form.d.ts +81 -0
  70. package/es/components/form/utils/form.mjs +217 -0
  71. package/es/components/form/utils/form.mjs.map +1 -0
  72. package/es/components/formItemTip/index.d.ts +12 -0
  73. package/es/components/formItemTip/index.mjs +10 -0
  74. package/es/components/formItemTip/index.mjs.map +1 -0
  75. package/es/components/formItemTip/src/formItemTip.d.ts +22 -0
  76. package/es/components/formItemTip/src/formItemTip.mjs +38 -0
  77. package/es/components/formItemTip/src/formItemTip.mjs.map +1 -0
  78. package/es/components/icon/index.d.ts +12 -0
  79. package/es/components/icon/index.mjs +8 -0
  80. package/es/components/icon/index.mjs.map +1 -0
  81. package/es/components/icon/src/icon.d.ts +39 -0
  82. package/es/components/icon/src/icon.mjs +69 -0
  83. package/es/components/icon/src/icon.mjs.map +1 -0
  84. package/es/components/iconSelector/index.d.ts +7 -0
  85. package/es/components/iconSelector/index.mjs +8 -0
  86. package/es/components/iconSelector/index.mjs.map +1 -0
  87. package/es/components/iconSelector/src/iconSelector.d.ts +23 -0
  88. package/es/components/iconSelector/src/iconSelector.mjs +143 -0
  89. package/es/components/iconSelector/src/iconSelector.mjs.map +1 -0
  90. package/es/components/image/index.d.ts +12 -0
  91. package/es/components/image/index.mjs +10 -0
  92. package/es/components/image/index.mjs.map +1 -0
  93. package/es/components/image/src/image.d.ts +225 -0
  94. package/es/components/image/src/image.mjs +90 -0
  95. package/es/components/image/src/image.mjs.map +1 -0
  96. package/es/components/index.d.ts +21 -0
  97. package/es/components/index.mjs +100 -0
  98. package/es/components/index.mjs.map +1 -0
  99. package/es/components/layoutGrid/index.d.ts +16 -0
  100. package/es/components/layoutGrid/index.mjs +14 -0
  101. package/es/components/layoutGrid/index.mjs.map +1 -0
  102. package/es/components/layoutGrid/src/layoutGrid.d.ts +60 -0
  103. package/es/components/layoutGrid/src/layoutGrid.mjs +178 -0
  104. package/es/components/layoutGrid/src/layoutGrid.mjs.map +1 -0
  105. package/es/components/layoutGrid/src/layoutGrid.type.d.ts +12 -0
  106. package/es/components/layoutGrid/src/layoutGrid.type.mjs +2 -0
  107. package/es/components/layoutGrid/src/layoutGrid.type.mjs.map +1 -0
  108. package/es/components/layoutGrid/src/layoutGridItem.d.ts +100 -0
  109. package/es/components/layoutGrid/src/layoutGridItem.mjs +97 -0
  110. package/es/components/layoutGrid/src/layoutGridItem.mjs.map +1 -0
  111. package/es/components/select/index.d.ts +22 -0
  112. package/es/components/select/index.mjs +17 -0
  113. package/es/components/select/index.mjs.map +1 -0
  114. package/es/components/select/src/select.d.ts +1201 -0
  115. package/es/components/select/src/select.mjs +559 -0
  116. package/es/components/select/src/select.mjs.map +1 -0
  117. package/es/components/select/src/select.type.d.ts +28 -0
  118. package/es/components/select/src/select.type.mjs +2 -0
  119. package/es/components/select/src/select.type.mjs.map +1 -0
  120. package/es/components/select/src/selectOption.d.ts +99 -0
  121. package/es/components/select/src/selectOption.mjs +71 -0
  122. package/es/components/select/src/selectOption.mjs.map +1 -0
  123. package/es/components/selectPage/index.d.ts +14 -0
  124. package/es/components/selectPage/index.mjs +11 -0
  125. package/es/components/selectPage/index.mjs.map +1 -0
  126. package/es/components/selectPage/src/selectPage.d.ts +595 -0
  127. package/es/components/selectPage/src/selectPage.mjs +381 -0
  128. package/es/components/selectPage/src/selectPage.mjs.map +1 -0
  129. package/es/components/selectV2/index.d.ts +14 -0
  130. package/es/components/selectV2/index.mjs +11 -0
  131. package/es/components/selectV2/index.mjs.map +1 -0
  132. package/es/components/selectV2/src/selectV2.d.ts +1407 -0
  133. package/es/components/selectV2/src/selectV2.mjs +606 -0
  134. package/es/components/selectV2/src/selectV2.mjs.map +1 -0
  135. package/es/components/table/images/artwork.png.mjs +5 -0
  136. package/es/components/table/images/artwork.png.mjs.map +1 -0
  137. package/es/components/table/images/index.d.ts +4 -0
  138. package/es/components/table/images/notImage.png.mjs +5 -0
  139. package/es/components/table/images/notImage.png.mjs.map +1 -0
  140. package/es/components/table/index.d.ts +35 -0
  141. package/es/components/table/index.mjs +32 -0
  142. package/es/components/table/index.mjs.map +1 -0
  143. package/es/components/table/src/page.type.d.ts +145 -0
  144. package/es/components/table/src/page.type.mjs +16 -0
  145. package/es/components/table/src/page.type.mjs.map +1 -0
  146. package/es/components/table/src/table.d.ts +1382 -0
  147. package/es/components/table/src/table.mjs +1046 -0
  148. package/es/components/table/src/table.mjs.map +1 -0
  149. package/es/components/table/src/table.state.d.ts +115 -0
  150. package/es/components/table/src/table.state.mjs +2 -0
  151. package/es/components/table/src/table.state.mjs.map +1 -0
  152. package/es/components/table/src/table.type.d.ts +316 -0
  153. package/es/components/table/src/table.type.mjs +14 -0
  154. package/es/components/table/src/table.type.mjs.map +1 -0
  155. package/es/components/table/src/tableColumn.d.ts +644 -0
  156. package/es/components/table/src/tableColumn.mjs +604 -0
  157. package/es/components/table/src/tableColumn.mjs.map +1 -0
  158. package/es/components/table/src/tableColumnSettingDialog.d.ts +18 -0
  159. package/es/components/table/src/tableColumnSettingDialog.mjs +430 -0
  160. package/es/components/table/src/tableColumnSettingDialog.mjs.map +1 -0
  161. package/es/components/table/src/tablePagination.d.ts +24 -0
  162. package/es/components/table/src/tablePagination.mjs +56 -0
  163. package/es/components/table/src/tablePagination.mjs.map +1 -0
  164. package/es/components/table/src/tableSearchForm.d.ts +88 -0
  165. package/es/components/table/src/tableSearchForm.mjs +269 -0
  166. package/es/components/table/src/tableSearchForm.mjs.map +1 -0
  167. package/es/components/table/src/tableSearchFormItem.d.ts +37 -0
  168. package/es/components/table/src/tableSearchFormItem.mjs +121 -0
  169. package/es/components/table/src/tableSearchFormItem.mjs.map +1 -0
  170. package/es/components/table/src/useTable.d.ts +32 -0
  171. package/es/components/table/src/useTable.mjs +374 -0
  172. package/es/components/table/src/useTable.mjs.map +1 -0
  173. package/es/components/table/utils/table.d.ts +45 -0
  174. package/es/components/table/utils/table.mjs +122 -0
  175. package/es/components/table/utils/table.mjs.map +1 -0
  176. package/es/components/tree/index.d.ts +15 -0
  177. package/es/components/tree/index.mjs +12 -0
  178. package/es/components/tree/index.mjs.map +1 -0
  179. package/es/components/tree/src/tree.d.ts +668 -0
  180. package/es/components/tree/src/tree.mjs +364 -0
  181. package/es/components/tree/src/tree.mjs.map +1 -0
  182. package/es/components/tree/src/tree.props.d.ts +81 -0
  183. package/es/components/tree/src/tree.props.mjs +71 -0
  184. package/es/components/tree/src/tree.props.mjs.map +1 -0
  185. package/es/components/tree/src/tree.type.d.ts +36 -0
  186. package/es/components/tree/src/tree.type.mjs +2 -0
  187. package/es/components/tree/src/tree.type.mjs.map +1 -0
  188. package/es/components/treeSelect/index.d.ts +14 -0
  189. package/es/components/treeSelect/index.mjs +11 -0
  190. package/es/components/treeSelect/index.mjs.map +1 -0
  191. package/es/components/treeSelect/src/treeSelect.d.ts +1063 -0
  192. package/es/components/treeSelect/src/treeSelect.mjs +492 -0
  193. package/es/components/treeSelect/src/treeSelect.mjs.map +1 -0
  194. package/es/components/upload/index.d.ts +15 -0
  195. package/es/components/upload/index.mjs +11 -0
  196. package/es/components/upload/index.mjs.map +1 -0
  197. package/es/components/upload/src/upload.d.ts +525 -0
  198. package/es/components/upload/src/upload.mjs +140 -0
  199. package/es/components/upload/src/upload.mjs.map +1 -0
  200. package/es/components/upload/src/useUpload.d.ts +65 -0
  201. package/es/components/upload/src/useUpload.mjs +150 -0
  202. package/es/components/upload/src/useUpload.mjs.map +1 -0
  203. package/es/components/upload/utils/upload.d.ts +30 -0
  204. package/es/components/upload/utils/upload.mjs +119 -0
  205. package/es/components/upload/utils/upload.mjs.map +1 -0
  206. package/es/components/uploadImage/index.d.ts +14 -0
  207. package/es/components/uploadImage/index.mjs +11 -0
  208. package/es/components/uploadImage/index.mjs.map +1 -0
  209. package/es/components/uploadImage/src/uploadImage.d.ts +575 -0
  210. package/es/components/uploadImage/src/uploadImage.mjs +207 -0
  211. package/es/components/uploadImage/src/uploadImage.mjs.map +1 -0
  212. package/es/components/uploadImages/index.d.ts +14 -0
  213. package/es/components/uploadImages/index.mjs +8 -0
  214. package/es/components/uploadImages/index.mjs.map +1 -0
  215. package/es/components/uploadImages/src/uploadImages.d.ts +544 -0
  216. package/es/components/uploadImages/src/uploadImages.mjs +194 -0
  217. package/es/components/uploadImages/src/uploadImages.mjs.map +1 -0
  218. package/es/constants/index.d.ts +2 -0
  219. package/es/constants/index.mjs +7 -0
  220. package/es/constants/index.mjs.map +1 -0
  221. package/es/constants/mime.d.ts +61 -0
  222. package/es/constants/mime.mjs +62 -0
  223. package/es/constants/mime.mjs.map +1 -0
  224. package/es/constants/regex.d.ts +78 -0
  225. package/es/constants/regex.mjs +79 -0
  226. package/es/constants/regex.mjs.map +1 -0
  227. package/es/directive.d.ts +2 -0
  228. package/es/directive.mjs +11 -0
  229. package/es/directive.mjs.map +1 -0
  230. package/es/directives/click-copy/index.d.ts +2 -0
  231. package/es/directives/click-copy/index.mjs +36 -0
  232. package/es/directives/click-copy/index.mjs.map +1 -0
  233. package/es/directives/click-debounce/index.d.ts +2 -0
  234. package/es/directives/click-debounce/index.mjs +20 -0
  235. package/es/directives/click-debounce/index.mjs.map +1 -0
  236. package/es/directives/click-draggable/index.d.ts +2 -0
  237. package/es/directives/click-draggable/index.mjs +38 -0
  238. package/es/directives/click-draggable/index.mjs.map +1 -0
  239. package/es/directives/click-icon-copy/index.d.ts +2 -0
  240. package/es/directives/click-icon-copy/index.mjs +54 -0
  241. package/es/directives/click-icon-copy/index.mjs.map +1 -0
  242. package/es/directives/click-longpress/index.d.ts +2 -0
  243. package/es/directives/click-longpress/index.mjs +42 -0
  244. package/es/directives/click-longpress/index.mjs.map +1 -0
  245. package/es/directives/click-throttle/index.d.ts +2 -0
  246. package/es/directives/click-throttle/index.mjs +31 -0
  247. package/es/directives/click-throttle/index.mjs.map +1 -0
  248. package/es/directives/index.d.ts +6 -0
  249. package/es/directives/index.mjs +15 -0
  250. package/es/directives/index.mjs.map +1 -0
  251. package/es/element-plus.d.ts +2 -0
  252. package/es/element-plus.mjs +304 -0
  253. package/es/element-plus.mjs.map +1 -0
  254. package/es/hooks/index.d.ts +3 -0
  255. package/es/hooks/index.mjs +9 -0
  256. package/es/hooks/index.mjs.map +1 -0
  257. package/es/hooks/use-loading/index.d.ts +4 -0
  258. package/es/hooks/use-loading/index.mjs +34 -0
  259. package/es/hooks/use-loading/index.mjs.map +1 -0
  260. package/es/hooks/use-overlay/index.d.ts +4 -0
  261. package/es/hooks/use-overlay/index.mjs +26 -0
  262. package/es/hooks/use-overlay/index.mjs.map +1 -0
  263. package/es/hooks/use-screenFull/index.d.ts +7 -0
  264. package/es/hooks/use-screenFull/index.mjs +45 -0
  265. package/es/hooks/use-screenFull/index.mjs.map +1 -0
  266. package/es/index.d.ts +14 -0
  267. package/es/index.es.d.ts +6 -0
  268. package/es/index.mjs +138 -0
  269. package/es/index.mjs.map +1 -0
  270. package/es/make-installer.d.ts +6 -0
  271. package/es/make-installer.mjs +27 -0
  272. package/es/make-installer.mjs.map +1 -0
  273. package/es/version.d.ts +1 -0
  274. package/es/version.mjs +5 -0
  275. package/es/version.mjs.map +1 -0
  276. package/global.d.ts +2 -0
  277. package/lib/component.d.ts +3 -0
  278. package/lib/component.js +2 -0
  279. package/lib/component.js.map +1 -0
  280. package/lib/components/avatar/index.d.ts +14 -0
  281. package/lib/components/avatar/index.js +2 -0
  282. package/lib/components/avatar/index.js.map +1 -0
  283. package/lib/components/avatar/src/avatar.d.ts +96 -0
  284. package/lib/components/avatar/src/avatar.js +2 -0
  285. package/lib/components/avatar/src/avatar.js.map +1 -0
  286. package/lib/components/button/index.d.ts +15 -0
  287. package/lib/components/button/index.js +2 -0
  288. package/lib/components/button/index.js.map +1 -0
  289. package/lib/components/button/src/button.d.ts +173 -0
  290. package/lib/components/button/src/button.js +2 -0
  291. package/lib/components/button/src/button.js.map +1 -0
  292. package/lib/components/carNumber/index.d.ts +9 -0
  293. package/lib/components/carNumber/index.js +2 -0
  294. package/lib/components/carNumber/index.js.map +1 -0
  295. package/lib/components/carNumber/src/carNumber.d.ts +217 -0
  296. package/lib/components/carNumber/src/carNumber.js +2 -0
  297. package/lib/components/carNumber/src/carNumber.js.map +1 -0
  298. package/lib/components/carNumber/src/common.d.ts +15 -0
  299. package/lib/components/carNumber/src/common.js +2 -0
  300. package/lib/components/carNumber/src/common.js.map +1 -0
  301. package/lib/components/contextMenu/index.d.ts +9 -0
  302. package/lib/components/contextMenu/index.js +2 -0
  303. package/lib/components/contextMenu/index.js.map +1 -0
  304. package/lib/components/contextMenu/src/contextMenu.d.ts +32 -0
  305. package/lib/components/contextMenu/src/contextMenu.js +2 -0
  306. package/lib/components/contextMenu/src/contextMenu.js.map +1 -0
  307. package/lib/components/contextMenu/src/contextMenu.type.d.ts +33 -0
  308. package/lib/components/contextMenu/src/contextMenu.type.js +2 -0
  309. package/lib/components/contextMenu/src/contextMenu.type.js.map +1 -0
  310. package/lib/components/dialog/index.d.ts +14 -0
  311. package/lib/components/dialog/index.js +2 -0
  312. package/lib/components/dialog/index.js.map +1 -0
  313. package/lib/components/dialog/src/dialog.d.ts +454 -0
  314. package/lib/components/dialog/src/dialog.js +2 -0
  315. package/lib/components/dialog/src/dialog.js.map +1 -0
  316. package/lib/components/drawer/index.d.ts +14 -0
  317. package/lib/components/drawer/index.js +2 -0
  318. package/lib/components/drawer/index.js.map +1 -0
  319. package/lib/components/drawer/src/drawer.d.ts +449 -0
  320. package/lib/components/drawer/src/drawer.js +2 -0
  321. package/lib/components/drawer/src/drawer.js.map +1 -0
  322. package/lib/components/form/index.d.ts +23 -0
  323. package/lib/components/form/index.js +2 -0
  324. package/lib/components/form/index.js.map +1 -0
  325. package/lib/components/form/src/form.d.ts +194 -0
  326. package/lib/components/form/src/form.js +2 -0
  327. package/lib/components/form/src/form.js.map +1 -0
  328. package/lib/components/form/src/formItem.d.ts +190 -0
  329. package/lib/components/form/src/formItem.js +2 -0
  330. package/lib/components/form/src/formItem.js.map +1 -0
  331. package/lib/components/form/utils/form.d.ts +81 -0
  332. package/lib/components/form/utils/form.js +2 -0
  333. package/lib/components/form/utils/form.js.map +1 -0
  334. package/lib/components/formItemTip/index.d.ts +12 -0
  335. package/lib/components/formItemTip/index.js +2 -0
  336. package/lib/components/formItemTip/index.js.map +1 -0
  337. package/lib/components/formItemTip/src/formItemTip.d.ts +22 -0
  338. package/lib/components/formItemTip/src/formItemTip.js +2 -0
  339. package/lib/components/formItemTip/src/formItemTip.js.map +1 -0
  340. package/lib/components/icon/index.d.ts +12 -0
  341. package/lib/components/icon/index.js +2 -0
  342. package/lib/components/icon/index.js.map +1 -0
  343. package/lib/components/icon/src/icon.d.ts +39 -0
  344. package/lib/components/icon/src/icon.js +2 -0
  345. package/lib/components/icon/src/icon.js.map +1 -0
  346. package/lib/components/iconSelector/index.d.ts +7 -0
  347. package/lib/components/iconSelector/index.js +2 -0
  348. package/lib/components/iconSelector/index.js.map +1 -0
  349. package/lib/components/iconSelector/src/iconSelector.d.ts +23 -0
  350. package/lib/components/iconSelector/src/iconSelector.js +2 -0
  351. package/lib/components/iconSelector/src/iconSelector.js.map +1 -0
  352. package/lib/components/image/index.d.ts +12 -0
  353. package/lib/components/image/index.js +2 -0
  354. package/lib/components/image/index.js.map +1 -0
  355. package/lib/components/image/src/image.d.ts +225 -0
  356. package/lib/components/image/src/image.js +2 -0
  357. package/lib/components/image/src/image.js.map +1 -0
  358. package/lib/components/index.d.ts +21 -0
  359. package/lib/components/index.js +2 -0
  360. package/lib/components/index.js.map +1 -0
  361. package/lib/components/layoutGrid/index.d.ts +16 -0
  362. package/lib/components/layoutGrid/index.js +2 -0
  363. package/lib/components/layoutGrid/index.js.map +1 -0
  364. package/lib/components/layoutGrid/src/layoutGrid.d.ts +60 -0
  365. package/lib/components/layoutGrid/src/layoutGrid.js +2 -0
  366. package/lib/components/layoutGrid/src/layoutGrid.js.map +1 -0
  367. package/lib/components/layoutGrid/src/layoutGrid.type.d.ts +12 -0
  368. package/lib/components/layoutGrid/src/layoutGrid.type.js +2 -0
  369. package/lib/components/layoutGrid/src/layoutGrid.type.js.map +1 -0
  370. package/lib/components/layoutGrid/src/layoutGridItem.d.ts +100 -0
  371. package/lib/components/layoutGrid/src/layoutGridItem.js +2 -0
  372. package/lib/components/layoutGrid/src/layoutGridItem.js.map +1 -0
  373. package/lib/components/select/index.d.ts +22 -0
  374. package/lib/components/select/index.js +2 -0
  375. package/lib/components/select/index.js.map +1 -0
  376. package/lib/components/select/src/select.d.ts +1201 -0
  377. package/lib/components/select/src/select.js +2 -0
  378. package/lib/components/select/src/select.js.map +1 -0
  379. package/lib/components/select/src/select.type.d.ts +28 -0
  380. package/lib/components/select/src/select.type.js +2 -0
  381. package/lib/components/select/src/select.type.js.map +1 -0
  382. package/lib/components/select/src/selectOption.d.ts +99 -0
  383. package/lib/components/select/src/selectOption.js +2 -0
  384. package/lib/components/select/src/selectOption.js.map +1 -0
  385. package/lib/components/selectPage/index.d.ts +14 -0
  386. package/lib/components/selectPage/index.js +2 -0
  387. package/lib/components/selectPage/index.js.map +1 -0
  388. package/lib/components/selectPage/src/selectPage.d.ts +595 -0
  389. package/lib/components/selectPage/src/selectPage.js +2 -0
  390. package/lib/components/selectPage/src/selectPage.js.map +1 -0
  391. package/lib/components/selectV2/index.d.ts +14 -0
  392. package/lib/components/selectV2/index.js +2 -0
  393. package/lib/components/selectV2/index.js.map +1 -0
  394. package/lib/components/selectV2/src/selectV2.d.ts +1407 -0
  395. package/lib/components/selectV2/src/selectV2.js +2 -0
  396. package/lib/components/selectV2/src/selectV2.js.map +1 -0
  397. package/lib/components/table/images/artwork.png.js +2 -0
  398. package/lib/components/table/images/artwork.png.js.map +1 -0
  399. package/lib/components/table/images/index.d.ts +4 -0
  400. package/lib/components/table/images/notImage.png.js +2 -0
  401. package/lib/components/table/images/notImage.png.js.map +1 -0
  402. package/lib/components/table/index.d.ts +35 -0
  403. package/lib/components/table/index.js +2 -0
  404. package/lib/components/table/index.js.map +1 -0
  405. package/lib/components/table/src/page.type.d.ts +145 -0
  406. package/lib/components/table/src/page.type.js +2 -0
  407. package/lib/components/table/src/page.type.js.map +1 -0
  408. package/lib/components/table/src/table.d.ts +1382 -0
  409. package/lib/components/table/src/table.js +2 -0
  410. package/lib/components/table/src/table.js.map +1 -0
  411. package/lib/components/table/src/table.state.d.ts +115 -0
  412. package/lib/components/table/src/table.state.js +2 -0
  413. package/lib/components/table/src/table.state.js.map +1 -0
  414. package/lib/components/table/src/table.type.d.ts +316 -0
  415. package/lib/components/table/src/table.type.js +2 -0
  416. package/lib/components/table/src/table.type.js.map +1 -0
  417. package/lib/components/table/src/tableColumn.d.ts +644 -0
  418. package/lib/components/table/src/tableColumn.js +2 -0
  419. package/lib/components/table/src/tableColumn.js.map +1 -0
  420. package/lib/components/table/src/tableColumnSettingDialog.d.ts +18 -0
  421. package/lib/components/table/src/tableColumnSettingDialog.js +2 -0
  422. package/lib/components/table/src/tableColumnSettingDialog.js.map +1 -0
  423. package/lib/components/table/src/tablePagination.d.ts +24 -0
  424. package/lib/components/table/src/tablePagination.js +2 -0
  425. package/lib/components/table/src/tablePagination.js.map +1 -0
  426. package/lib/components/table/src/tableSearchForm.d.ts +88 -0
  427. package/lib/components/table/src/tableSearchForm.js +2 -0
  428. package/lib/components/table/src/tableSearchForm.js.map +1 -0
  429. package/lib/components/table/src/tableSearchFormItem.d.ts +37 -0
  430. package/lib/components/table/src/tableSearchFormItem.js +2 -0
  431. package/lib/components/table/src/tableSearchFormItem.js.map +1 -0
  432. package/lib/components/table/src/useTable.d.ts +32 -0
  433. package/lib/components/table/src/useTable.js +2 -0
  434. package/lib/components/table/src/useTable.js.map +1 -0
  435. package/lib/components/table/utils/table.d.ts +45 -0
  436. package/lib/components/table/utils/table.js +2 -0
  437. package/lib/components/table/utils/table.js.map +1 -0
  438. package/lib/components/tree/index.d.ts +15 -0
  439. package/lib/components/tree/index.js +2 -0
  440. package/lib/components/tree/index.js.map +1 -0
  441. package/lib/components/tree/src/tree.d.ts +668 -0
  442. package/lib/components/tree/src/tree.js +2 -0
  443. package/lib/components/tree/src/tree.js.map +1 -0
  444. package/lib/components/tree/src/tree.props.d.ts +81 -0
  445. package/lib/components/tree/src/tree.props.js +2 -0
  446. package/lib/components/tree/src/tree.props.js.map +1 -0
  447. package/lib/components/tree/src/tree.type.d.ts +36 -0
  448. package/lib/components/tree/src/tree.type.js +2 -0
  449. package/lib/components/tree/src/tree.type.js.map +1 -0
  450. package/lib/components/treeSelect/index.d.ts +14 -0
  451. package/lib/components/treeSelect/index.js +2 -0
  452. package/lib/components/treeSelect/index.js.map +1 -0
  453. package/lib/components/treeSelect/src/treeSelect.d.ts +1063 -0
  454. package/lib/components/treeSelect/src/treeSelect.js +2 -0
  455. package/lib/components/treeSelect/src/treeSelect.js.map +1 -0
  456. package/lib/components/upload/index.d.ts +15 -0
  457. package/lib/components/upload/index.js +2 -0
  458. package/lib/components/upload/index.js.map +1 -0
  459. package/lib/components/upload/src/upload.d.ts +525 -0
  460. package/lib/components/upload/src/upload.js +2 -0
  461. package/lib/components/upload/src/upload.js.map +1 -0
  462. package/lib/components/upload/src/useUpload.d.ts +65 -0
  463. package/lib/components/upload/src/useUpload.js +2 -0
  464. package/lib/components/upload/src/useUpload.js.map +1 -0
  465. package/lib/components/upload/utils/upload.d.ts +30 -0
  466. package/lib/components/upload/utils/upload.js +2 -0
  467. package/lib/components/upload/utils/upload.js.map +1 -0
  468. package/lib/components/uploadImage/index.d.ts +14 -0
  469. package/lib/components/uploadImage/index.js +2 -0
  470. package/lib/components/uploadImage/index.js.map +1 -0
  471. package/lib/components/uploadImage/src/uploadImage.d.ts +575 -0
  472. package/lib/components/uploadImage/src/uploadImage.js +2 -0
  473. package/lib/components/uploadImage/src/uploadImage.js.map +1 -0
  474. package/lib/components/uploadImages/index.d.ts +14 -0
  475. package/lib/components/uploadImages/index.js +2 -0
  476. package/lib/components/uploadImages/index.js.map +1 -0
  477. package/lib/components/uploadImages/src/uploadImages.d.ts +544 -0
  478. package/lib/components/uploadImages/src/uploadImages.js +2 -0
  479. package/lib/components/uploadImages/src/uploadImages.js.map +1 -0
  480. package/lib/constants/index.d.ts +2 -0
  481. package/lib/constants/index.js +2 -0
  482. package/lib/constants/index.js.map +1 -0
  483. package/lib/constants/mime.d.ts +61 -0
  484. package/lib/constants/mime.js +2 -0
  485. package/lib/constants/mime.js.map +1 -0
  486. package/lib/constants/regex.d.ts +78 -0
  487. package/lib/constants/regex.js +2 -0
  488. package/lib/constants/regex.js.map +1 -0
  489. package/lib/directive.d.ts +2 -0
  490. package/lib/directive.js +2 -0
  491. package/lib/directive.js.map +1 -0
  492. package/lib/directives/click-copy/index.d.ts +2 -0
  493. package/lib/directives/click-copy/index.js +2 -0
  494. package/lib/directives/click-copy/index.js.map +1 -0
  495. package/lib/directives/click-debounce/index.d.ts +2 -0
  496. package/lib/directives/click-debounce/index.js +2 -0
  497. package/lib/directives/click-debounce/index.js.map +1 -0
  498. package/lib/directives/click-draggable/index.d.ts +2 -0
  499. package/lib/directives/click-draggable/index.js +2 -0
  500. package/lib/directives/click-draggable/index.js.map +1 -0
  501. package/lib/directives/click-icon-copy/index.d.ts +2 -0
  502. package/lib/directives/click-icon-copy/index.js +2 -0
  503. package/lib/directives/click-icon-copy/index.js.map +1 -0
  504. package/lib/directives/click-longpress/index.d.ts +2 -0
  505. package/lib/directives/click-longpress/index.js +2 -0
  506. package/lib/directives/click-longpress/index.js.map +1 -0
  507. package/lib/directives/click-throttle/index.d.ts +2 -0
  508. package/lib/directives/click-throttle/index.js +2 -0
  509. package/lib/directives/click-throttle/index.js.map +1 -0
  510. package/lib/directives/index.d.ts +6 -0
  511. package/lib/directives/index.js +2 -0
  512. package/lib/directives/index.js.map +1 -0
  513. package/lib/element-plus.d.ts +2 -0
  514. package/lib/element-plus.js +2 -0
  515. package/lib/element-plus.js.map +1 -0
  516. package/lib/hooks/index.d.ts +3 -0
  517. package/lib/hooks/index.js +2 -0
  518. package/lib/hooks/index.js.map +1 -0
  519. package/lib/hooks/use-loading/index.d.ts +4 -0
  520. package/lib/hooks/use-loading/index.js +2 -0
  521. package/lib/hooks/use-loading/index.js.map +1 -0
  522. package/lib/hooks/use-overlay/index.d.ts +4 -0
  523. package/lib/hooks/use-overlay/index.js +2 -0
  524. package/lib/hooks/use-overlay/index.js.map +1 -0
  525. package/lib/hooks/use-screenFull/index.d.ts +7 -0
  526. package/lib/hooks/use-screenFull/index.js +2 -0
  527. package/lib/hooks/use-screenFull/index.js.map +1 -0
  528. package/lib/index.d.ts +14 -0
  529. package/lib/index.es.d.ts +6 -0
  530. package/lib/index.js +2 -0
  531. package/lib/index.js.map +1 -0
  532. package/lib/make-installer.d.ts +6 -0
  533. package/lib/make-installer.js +2 -0
  534. package/lib/make-installer.js.map +1 -0
  535. package/lib/version.d.ts +1 -0
  536. package/lib/version.js +2 -0
  537. package/lib/version.js.map +1 -0
  538. package/package.json +139 -26
  539. package/styles/common/animation.scss +46 -0
  540. package/styles/common/common.scss +44 -0
  541. package/styles/common/loading.scss +29 -0
  542. package/styles/common/overlay.scss +12 -0
  543. package/styles/components/carNumber.scss +44 -0
  544. package/styles/components/contextMenu.scss +34 -0
  545. package/styles/components/dialog.scss +88 -0
  546. package/styles/components/drawer.scss +87 -0
  547. package/styles/components/form.scss +44 -0
  548. package/styles/components/formItemTip.scss +7 -0
  549. package/styles/components/image.scss +19 -0
  550. package/styles/components/selectPage.scss +74 -0
  551. package/styles/components/selectV2.scss +22 -0
  552. package/styles/components/table.scss +439 -0
  553. package/styles/components/tree.scss +100 -0
  554. package/styles/components/uploadImage.scss +61 -0
  555. package/styles/components/uploadImages.scss +9 -0
  556. package/styles/index.scss +18 -0
  557. package/types/components.d.ts +36 -0
  558. package/types/env.d.ts +17 -0
@@ -0,0 +1,1046 @@
1
+ import { isVNode, defineComponent, ref, onMounted, watch, watchEffect, onActivated, computed, createVNode, withDirectives, Fragment, mergeProps, createTextVNode, resolveDirective } from "vue";
2
+ import { useSizeProp, ElInput, ElDatePicker, ElButton, ElDropdown, ElDropdownMenu, ElTable, ElTableColumn, ElIcon, ElPagination, ElImageViewer } from "element-plus";
3
+ import { Search, Refresh, Eleme, Setting, More } from "@element-plus/icons-vue";
4
+ import { NotData } from "@fast-element-plus/icons-vue";
5
+ import { definePropType, stringUtil, consoleWarn, clickUtil, useProps, useRender, dateUtil, useExpose, makeSlots } from "@fast-china/utils";
6
+ import { isString, isObject, isNumber, isBoolean, isArray, isNull, isFunction, pick, omit } from "lodash-unified";
7
+ import { getTableDefaultSlots } from "./table.type.mjs";
8
+ import TableColumn from "./tableColumn.mjs";
9
+ import TableColumnsSettingDialog from "./tableColumnSettingDialog.mjs";
10
+ import TablePagination from "./tablePagination.mjs";
11
+ import TableSearchForm from "./tableSearchForm.mjs";
12
+ import { useTable } from "./useTable.mjs";
13
+ function _isSlot(s) {
14
+ return typeof s === "function" || Object.prototype.toString.call(s) === "[object Object]" && !isVNode(s);
15
+ }
16
+ const tableProps = {
17
+ /**
18
+ * @description table data
19
+ */
20
+ data: {
21
+ type: Array,
22
+ default: () => []
23
+ },
24
+ /**
25
+ * @description size of Table
26
+ */
27
+ size: useSizeProp,
28
+ width: [String, Number],
29
+ /**
30
+ * @description table's height. By default it has an `auto` height. If its value is a number, the height is measured in pixels; if its value is a string, the value will be assigned to element's style.height, the height is affected by external styles
31
+ */
32
+ height: [String, Number],
33
+ /**
34
+ * @description table's max-height. The legal value is a number or the height in px
35
+ */
36
+ maxHeight: [String, Number],
37
+ /**
38
+ * @description whether width of column automatically fits its container
39
+ */
40
+ fit: {
41
+ type: Boolean,
42
+ default: true
43
+ },
44
+ /**
45
+ * @description whether Table is striped
46
+ */
47
+ stripe: Boolean,
48
+ /**
49
+ * @description whether Table has vertical border
50
+ */
51
+ border: Boolean,
52
+ /**
53
+ * @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used
54
+ */
55
+ rowKey: [String, Function],
56
+ /**
57
+ * @description whether Table header is visible
58
+ */
59
+ showHeader: {
60
+ type: Boolean,
61
+ default: true
62
+ },
63
+ /**
64
+ * @description whether to display a summary row
65
+ */
66
+ showSummary: Boolean,
67
+ /**
68
+ * @description displayed text for the first column of summary row
69
+ */
70
+ sumText: String,
71
+ /**
72
+ * @description custom summary method
73
+ */
74
+ summaryMethod: Function,
75
+ /**
76
+ * @description function that returns custom class names for a row, or a string assigning class names for every row
77
+ */
78
+ rowClassName: [String, Function],
79
+ /**
80
+ * @description function that returns custom style for a row, or an object assigning custom style for every row
81
+ */
82
+ rowStyle: [Object, Function],
83
+ /**
84
+ * @description function that returns custom class names for a cell, or a string assigning class names for every cell
85
+ */
86
+ cellClassName: [String, Function],
87
+ /**
88
+ * @description function that returns custom style for a cell, or an object assigning custom style for every cell
89
+ */
90
+ cellStyle: [Object, Function],
91
+ /**
92
+ * @description function that returns custom class names for a row in table header, or a string assigning class names for every row in table header
93
+ */
94
+ headerRowClassName: [String, Function],
95
+ /**
96
+ * @description function that returns custom style for a row in table header, or an object assigning custom style for every row in table header
97
+ */
98
+ headerRowStyle: [Object, Function],
99
+ /**
100
+ * @description function that returns custom class names for a cell in table header, or a string assigning class names for every cell in table header
101
+ */
102
+ headerCellClassName: [String, Function],
103
+ /**
104
+ * @description function that returns custom style for a cell in table header, or an object assigning custom style for every cell in table header
105
+ */
106
+ headerCellStyle: [Object, Function],
107
+ /**
108
+ * @description whether current row is highlighted
109
+ */
110
+ highlightCurrentRow: Boolean,
111
+ /**
112
+ * @description key of current row, a set only prop
113
+ */
114
+ currentRowKey: [String, Number],
115
+ /**
116
+ * @description displayed text when data is empty. You can customize this area with `#empty`
117
+ */
118
+ emptyText: String,
119
+ /**
120
+ * @description set expanded rows by this prop, prop's value is the keys of expand rows, you should set row-key before using this prop
121
+ */
122
+ expandRowKeys: Array,
123
+ /**
124
+ * @description whether expand all rows by default, works when the table has a column type="expand" or contains tree structure data
125
+ */
126
+ defaultExpandAll: Boolean,
127
+ /**
128
+ * @description set the default sort column and order. property `prop` is used to set default sort column, property `order` is used to set default sort order
129
+ */
130
+ defaultSort: Object,
131
+ /**
132
+ * @description the `effect` of the overflow tooltip
133
+ */
134
+ tooltipEffect: String,
135
+ /**
136
+ * @description the options for the overflow tooltip, [see the following tooltip component](tooltip.html#attributes)
137
+ */
138
+ tooltipOptions: Object,
139
+ /**
140
+ * @description method that returns rowspan and colspan
141
+ */
142
+ spanMethod: Function,
143
+ /**
144
+ * @description controls the behavior of master checkbox in multi-select tables when only some rows are selected (but not all). If true, all rows will be selected, else deselected
145
+ */
146
+ selectOnIndeterminate: {
147
+ type: Boolean,
148
+ default: true
149
+ },
150
+ /**
151
+ * @description horizontal indentation of tree data
152
+ */
153
+ indent: {
154
+ type: Number,
155
+ default: 16
156
+ },
157
+ /**
158
+ * @description configuration for rendering nested data
159
+ */
160
+ treeProps: {
161
+ type: Object,
162
+ default: () => ({
163
+ hasChildren: "hasChildren",
164
+ children: "children",
165
+ checkStrictly: false
166
+ })
167
+ },
168
+ /**
169
+ * @description whether to lazy loading data
170
+ */
171
+ lazy: Boolean,
172
+ /**
173
+ * @description method for loading child row data, only works when `lazy` is true
174
+ */
175
+ load: Function,
176
+ style: {
177
+ type: Object,
178
+ default: () => ({})
179
+ },
180
+ className: {
181
+ type: String,
182
+ default: ""
183
+ },
184
+ /**
185
+ * @description sets the algorithm used to lay out table cells, rows, and columns
186
+ */
187
+ tableLayout: {
188
+ type: String,
189
+ default: "fixed"
190
+ },
191
+ /**
192
+ * @description always show scrollbar
193
+ */
194
+ scrollbarAlwaysOn: Boolean,
195
+ /**
196
+ * @description ensure main axis minimum-size doesn't follow the content
197
+ */
198
+ flexible: Boolean,
199
+ /**
200
+ * @description whether to hide extra content and show them in a tooltip when hovering on the cell.It will affect all the table columns
201
+ */
202
+ showOverflowTooltip: [Boolean, Object],
203
+ scrollbarTabindex: {
204
+ type: [Number, String],
205
+ default: void 0
206
+ }
207
+ };
208
+ const faTableProps = {
209
+ ...tableProps,
210
+ /** @description whether Table has vertical border */
211
+ border: {
212
+ type: Boolean,
213
+ default: true
214
+ },
215
+ /** @description whether current row is highlighted */
216
+ highlightCurrentRow: {
217
+ type: Boolean,
218
+ default: true
219
+ },
220
+ /** @description key of row data, used for optimizing rendering. Required if `reserve-selection` is on or display tree data. When its type is String, multi-level access is supported, e.g. `user.info.id`, but `user.info[0].id` is not supported, in which case `Function` should be used */
221
+ rowKey: {
222
+ type: [String, Function],
223
+ default: "id"
224
+ },
225
+ /** @description 组件封装,原生的已经失效 method that returns rowspan and colspan */
226
+ spanMethod: {
227
+ type: Function,
228
+ validator: () => {
229
+ consoleWarn("FaTable", "'spanMethod' 属性,组件已经封装,外部使用会失效。");
230
+ return false;
231
+ }
232
+ },
233
+ /** @description 表格Key */
234
+ tableKey: {
235
+ type: String,
236
+ default: () => stringUtil.generateRandomString(8)
237
+ },
238
+ /** @description 表格数据 */
239
+ data: {
240
+ type: definePropType(Array),
241
+ default: () => []
242
+ },
243
+ /** @description 请求api */
244
+ requestApi: {
245
+ type: definePropType(Function)
246
+ },
247
+ /** @description 接口请求数据回调 */
248
+ dataCallback: {
249
+ type: definePropType(Function)
250
+ },
251
+ /** 初始化参数 */
252
+ initParam: definePropType([String, Number, Object]),
253
+ /** @description 列配置 */
254
+ columns: {
255
+ type: definePropType([Array, Boolean]),
256
+ default: () => []
257
+ },
258
+ /** @description 表格列改变 */
259
+ columnsChange: {
260
+ type: definePropType(Function)
261
+ },
262
+ /** @description 搜索表单 Grid布局列配置 */
263
+ searchFormCols: {
264
+ type: definePropType([String, Number, Object]),
265
+ default: () => ({
266
+ xs: 3,
267
+ sm: 3,
268
+ md: 4,
269
+ lg: 5,
270
+ xl: 6
271
+ })
272
+ },
273
+ /** @description 搜索表单 */
274
+ searchForm: {
275
+ type: Boolean,
276
+ default: true
277
+ },
278
+ /** @description 头部卡片 */
279
+ headerCard: {
280
+ type: Boolean,
281
+ default: true
282
+ },
283
+ /** @description 刷新按钮 */
284
+ refreshBtn: {
285
+ type: Boolean,
286
+ default: true
287
+ },
288
+ /** @description 搜索按钮 */
289
+ searchBtn: {
290
+ type: Boolean,
291
+ default: true
292
+ },
293
+ /** @description 列配置按钮 */
294
+ columnSettingBtn: {
295
+ type: Boolean,
296
+ default: true
297
+ },
298
+ /** @description 头部卡片右侧功能按钮 */
299
+ toolBtn: {
300
+ type: Boolean,
301
+ default: true
302
+ },
303
+ /** @description 隐藏搜索时间 */
304
+ hideSearchTime: Boolean,
305
+ /** @description 搜索时间范围 */
306
+ dataSearchRange: {
307
+ type: definePropType(String),
308
+ default: "Past3D"
309
+ },
310
+ /** @description 分页 */
311
+ pagination: {
312
+ type: Boolean,
313
+ default: true
314
+ },
315
+ /** @description 隐藏图片 */
316
+ hideImage: Boolean,
317
+ /** @description 单选 */
318
+ single: Boolean,
319
+ /** @description 行点击选择 */
320
+ rowClickSelection: Boolean,
321
+ /** @description 树形数据 */
322
+ treeData: Boolean,
323
+ /** @description 配置选项 */
324
+ props: {
325
+ type: definePropType(Object),
326
+ default: () => ({
327
+ span: void 0,
328
+ children: "children"
329
+ })
330
+ },
331
+ /** @description 自动刷新,当传入 data 时候,如果存在更改则自动刷新 */
332
+ autoRefresh: {
333
+ type: Boolean,
334
+ default: true
335
+ },
336
+ /**
337
+ * 等价于 Table-Column 的 selectable
338
+ * @description function that determines if a certain row can be selected, works when `type` is 'selection'
339
+ */
340
+ rowSelectable: Function
341
+ };
342
+ const faTableEmits = {
343
+ /** @description 当用户手动勾选数据行的 Checkbox 时触发的事件 */
344
+ select: (selection, row) => isArray(selection) && isObject(row),
345
+ /** @description 当用户手动勾选全选 Checkbox 时触发的事件 */
346
+ selectAll: (selection) => isArray(selection),
347
+ /** @description 当选择项发生变化时会触发该事件 */
348
+ selectionChange: (newSelection) => isArray(newSelection),
349
+ /** @description 当单元格 hover 进入时会触发该事件 */
350
+ cellMouseEnter: (row, column, cell, event) => isObject(row) && isObject(column) && cell instanceof HTMLTableCellElement && event instanceof Event,
351
+ /** @description 当单元格 hover 退出时会触发该事件 */
352
+ cellMouseLeave: (row, column, cell, event) => isObject(row) && isObject(column) && cell instanceof HTMLTableCellElement && event instanceof Event,
353
+ /** @description 当某个单元格被点击时会触发该事件 */
354
+ cellClick: (row, column, cell, event) => isObject(row) && isObject(column) && cell instanceof HTMLTableCellElement && event instanceof Event,
355
+ /** @description 当某个单元格被双击击时会触发该事件 */
356
+ cellDblclick: (row, column, cell, event) => isObject(row) && isObject(column) && cell instanceof HTMLTableCellElement && event instanceof Event,
357
+ /** @description 当某个单元格被鼠标右键点击时会触发该事件 */
358
+ cellContextmenu: (row, column, cell, event) => isObject(row) && isObject(column) && cell instanceof HTMLTableCellElement && event instanceof Event,
359
+ /** @description 当某一行被点击时会触发该事件 */
360
+ rowClick: (row, column, event) => isObject(row) && isObject(column) && event instanceof Event,
361
+ /** @description 当某一行被鼠标右键点击时会触发该事件 */
362
+ rowContextmenu: (row, column, event) => isObject(row) && isObject(column) && event instanceof Event,
363
+ /** @description 当某一行被双击时会触发该事件 */
364
+ rowDblclick: (row, column, event) => isObject(row) && isObject(column) && event instanceof Event,
365
+ /** @description 当某一列的表头被点击时会触发该事件 */
366
+ headerClick: (column, event) => isObject(column) && event instanceof Event,
367
+ /** @description 当某一列的表头被鼠标右键点击时触发该事件 */
368
+ headerContextmenu: (column, event) => isObject(column) && event instanceof Event,
369
+ /** @description 当表格的排序条件发生变化的时候会触发该事件 */
370
+ sortChange: (data) => isObject(data),
371
+ /** @description column 的 key, 如果需要使用 filter-change 事件,则需要此属性标识是哪个 column 的筛选条件 */
372
+ filterChange: (newFilters) => isString(newFilters) || isNumber(newFilters) || isBoolean(newFilters) || isObject(newFilters),
373
+ /** @description 当表格的当前行发生变化的时候会触发该事件,如果要高亮当前行,请打开表格的 highlight-current-row 属性 */
374
+ currentChange: (currentRow, oldCurrentRow) => isObject(currentRow) && (isNull(oldCurrentRow) || isObject(oldCurrentRow)),
375
+ /** @description 当拖动表头改变了列的宽度的时候会触发该事件 */
376
+ headerDragend: (newWidth, oldWidth, column, event) => isNumber(newWidth) && isNumber(oldWidth) && isObject(column) && event instanceof MouseEvent,
377
+ /** @description 当用户对某一行展开或者关闭的时候会触发该事件(展开行时,回调的第二个参数为 expandedRows;树形表格时第二参数为 expanded) */
378
+ expandChange: (row, expanded) => isObject(row) && (isBoolean(expanded) || isArray(expanded)),
379
+ /** @description 表格刷新事件 */
380
+ refresh: (params) => isObject(params),
381
+ /** @description 表格重置事件 */
382
+ reset: (params) => isObject(params),
383
+ /** @description 分页页码改变事件 */
384
+ sizeChange: (pageSize) => isNumber(pageSize),
385
+ /** @description 分页改变事件 */
386
+ paginationChange: (pageIndex, pageSize) => isNumber(pageIndex) && isNumber(pageSize),
387
+ /** @description 自定义单元格点击事件 */
388
+ customCellClick: (emitName, {
389
+ row,
390
+ column,
391
+ $index
392
+ }) => isString(emitName) && isObject(row) && isObject(column) && isNumber($index)
393
+ };
394
+ const Table = /* @__PURE__ */ defineComponent({
395
+ name: "FaTable",
396
+ props: faTableProps,
397
+ emits: faTableEmits,
398
+ slots: makeSlots(),
399
+ setup(props, {
400
+ attrs,
401
+ slots,
402
+ emit,
403
+ expose
404
+ }) {
405
+ const {
406
+ _globalSize,
407
+ state,
408
+ elementRef,
409
+ tableRef,
410
+ handleTableColumnAutoWidth,
411
+ loadTableColumns,
412
+ handleSizeChange,
413
+ handlePaginationChange,
414
+ defaultSearchTime,
415
+ tableSearch,
416
+ tableReset,
417
+ doRender,
418
+ doLoading,
419
+ handleCustomCellClick
420
+ } = useTable(props, slots, emit);
421
+ const columnSettingRef = ref();
422
+ let lastRowIndex = 0;
423
+ const indexMethod = (index) => {
424
+ if (index === 0) {
425
+ lastRowIndex = 0;
426
+ }
427
+ if (state.spanColumns?.length > 0) {
428
+ const rowspan = Number(state.tableSpanData["__table-index"][index]);
429
+ if (rowspan === 0) {
430
+ return lastRowIndex + (state.tablePagination.pageIndex - 1) * state.tablePagination.pageSize + 1;
431
+ } else {
432
+ lastRowIndex++;
433
+ return lastRowIndex + (state.tablePagination.pageIndex - 1) * state.tablePagination.pageSize;
434
+ }
435
+ }
436
+ return index + (state.tablePagination.pageIndex - 1) * state.tablePagination.pageSize + 1;
437
+ };
438
+ const handleSelect = (selection, row) => {
439
+ if (props.single) {
440
+ tableRef.value.clearSelection();
441
+ if (selection.length > 0 && row) {
442
+ tableRef.value.toggleRowSelection(row);
443
+ }
444
+ }
445
+ emit("select", selection, row);
446
+ };
447
+ const handleSelectAll = (selection) => {
448
+ if (props.single) {
449
+ if (state.selected) {
450
+ if (state.tableData.length > 0) {
451
+ tableRef.value.clearSelection();
452
+ tableRef.value.toggleRowSelection(state.tableData[0]);
453
+ }
454
+ } else {
455
+ tableRef.value.clearSelection();
456
+ }
457
+ }
458
+ emit("selectAll", selection);
459
+ };
460
+ const handleSelectionChange = (newSelection) => {
461
+ newSelection.length === 0 ? state.selected = false : state.selected = true;
462
+ if (props.single && newSelection.length > 0) {
463
+ state.selectedList = [newSelection[newSelection.length - 1]];
464
+ } else {
465
+ state.selectedList = newSelection;
466
+ }
467
+ state.indeterminateSelectedListIds = state.indeterminateSelectedListIds.filter((f) => state.selectedListIds.some((s) => s === f));
468
+ emit("selectionChange", state.selectedList);
469
+ };
470
+ const toggleRowIndeterminateSelection = (row, selected) => {
471
+ const rowKey = isFunction(props.rowKey) ? props.rowKey(row) : row[props.rowKey];
472
+ const curRow = state.tableData.find((f) => isFunction(props.rowKey) ? props.rowKey(f) : f[props.rowKey] === rowKey);
473
+ if (selected === true) {
474
+ if (!state.indeterminateSelectedListIds.some((s) => s === rowKey)) {
475
+ state.indeterminateSelectedListIds.push(rowKey);
476
+ }
477
+ tableRef.value.toggleRowSelection(curRow, true);
478
+ } else if (selected === false) {
479
+ const fIndex = state.indeterminateSelectedListIds.findIndex((f) => f === rowKey);
480
+ if (fIndex >= 0) {
481
+ state.indeterminateSelectedListIds.splice(fIndex, 1);
482
+ }
483
+ tableRef.value.toggleRowSelection(curRow, false);
484
+ } else {
485
+ const fIndex = state.indeterminateSelectedListIds.findIndex((f) => f === rowKey);
486
+ if (fIndex >= 0) {
487
+ state.indeterminateSelectedListIds.splice(fIndex, 1);
488
+ } else {
489
+ state.indeterminateSelectedListIds.push(rowKey);
490
+ }
491
+ tableRef.value.toggleRowSelection(curRow);
492
+ }
493
+ };
494
+ const handleSortChange = ({
495
+ column,
496
+ prop,
497
+ order
498
+ }) => {
499
+ if (!column.multiOrder) {
500
+ column.multiOrder = "descending";
501
+ } else if (column.multiOrder === "descending") {
502
+ column.multiOrder = "ascending";
503
+ } else {
504
+ column.multiOrder = null;
505
+ }
506
+ state.searchParam.sortList = [.../* @__PURE__ */ new Set([...props.initParam?.sortList ?? [], ...state.searchParam?.sortList ?? []])];
507
+ const orgColumn = state.orgColumns.find((f) => f.prop === prop);
508
+ const enField = orgColumn.sortableField ?? orgColumn.prop ?? orgColumn.property;
509
+ const fieldIndex = state.searchParam.sortList.findIndex((f) => f.enField === enField);
510
+ if (!column.multiOrder) {
511
+ state.searchParam.sortList.splice(fieldIndex, 1);
512
+ } else if (fieldIndex === -1) {
513
+ state.searchParam.sortList.push({
514
+ enField,
515
+ cnField: orgColumn.label,
516
+ mode: column.multiOrder
517
+ });
518
+ } else {
519
+ state.searchParam.sortList[fieldIndex].mode = column.multiOrder;
520
+ }
521
+ if (state.searchParam.sortList.length === 0) {
522
+ delete state.searchParam.sortList;
523
+ }
524
+ emit("sortChange", {
525
+ column,
526
+ prop,
527
+ order: column.multiOrder
528
+ });
529
+ tableSearch();
530
+ };
531
+ const handleCurrentChange = (currentRow, oldCurrentRow) => {
532
+ if (!currentRow) {
533
+ return;
534
+ }
535
+ if (props.rowClickSelection) {
536
+ if (props.single && oldCurrentRow) {
537
+ tableRef.value.toggleRowSelection(oldCurrentRow);
538
+ }
539
+ tableRef.value.toggleRowSelection(currentRow);
540
+ }
541
+ emit("currentChange", currentRow, oldCurrentRow);
542
+ };
543
+ const handleCellClassName = ({
544
+ row,
545
+ column,
546
+ rowIndex,
547
+ columnIndex
548
+ }) => {
549
+ let localCellClassName = null;
550
+ if (column.type === "selection") {
551
+ const rowKey = isFunction(props.rowKey) ? props.rowKey(row) : row[props.rowKey];
552
+ if (state.indeterminateSelectedListIds.some((s) => s === rowKey)) {
553
+ localCellClassName = "fa-table__selection-column__indeterminate";
554
+ }
555
+ }
556
+ const columnInfo = state.tableColumns.find((f) => f.prop === column.property);
557
+ if (columnInfo?.dataDeleteField) {
558
+ if (row && row[columnInfo.dataDeleteField] === true) {
559
+ if (localCellClassName) {
560
+ localCellClassName += " fa-table__data-delete-column";
561
+ } else {
562
+ localCellClassName = "fa-table__data-delete-column";
563
+ }
564
+ }
565
+ }
566
+ if (columnInfo?.type === "submitInfo") {
567
+ if (localCellClassName) {
568
+ localCellClassName += " fa-table__line-height-normal-column";
569
+ } else {
570
+ localCellClassName = "fa-table__line-height-normal-column";
571
+ }
572
+ }
573
+ if (columnInfo?.type === "date" || columnInfo?.type === "time" || columnInfo?.type === "dateTime") {
574
+ if (columnInfo?.dateFix) {
575
+ if (localCellClassName) {
576
+ localCellClassName += " fa-table__line-height-normal-column";
577
+ } else {
578
+ localCellClassName = "fa-table__line-height-normal-column";
579
+ }
580
+ }
581
+ }
582
+ if (props.cellClassName) {
583
+ let cellClassName = null;
584
+ if (isString(props.cellClassName)) {
585
+ cellClassName = props.cellClassName;
586
+ } else {
587
+ cellClassName = props.cellClassName({
588
+ row,
589
+ column,
590
+ rowIndex,
591
+ columnIndex
592
+ });
593
+ }
594
+ if (!cellClassName) {
595
+ return localCellClassName;
596
+ }
597
+ if (localCellClassName) {
598
+ return `${localCellClassName} ${cellClassName}`;
599
+ } else {
600
+ return cellClassName;
601
+ }
602
+ } else {
603
+ return localCellClassName;
604
+ }
605
+ };
606
+ const handleHeaderCellClassName = ({
607
+ row,
608
+ column,
609
+ rowIndex,
610
+ columnIndex
611
+ }) => {
612
+ column.order = column.multiOrder;
613
+ if (props.headerCellClassName) {
614
+ if (isFunction(props.headerCellClassName)) {
615
+ return props.headerCellClassName({
616
+ row,
617
+ column,
618
+ rowIndex,
619
+ columnIndex
620
+ });
621
+ } else {
622
+ return props.headerCellClassName;
623
+ }
624
+ }
625
+ return null;
626
+ };
627
+ const handleSpanMethod = ({
628
+ row,
629
+ column,
630
+ rowIndex,
631
+ columnIndex
632
+ }) => {
633
+ const pKey = column.property ?? column.columnKey;
634
+ if (state.spanColumns.findIndex((f) => f.prop === pKey) !== -1) {
635
+ const rowspan = Number(state.tableSpanData[pKey][rowIndex]);
636
+ if (rowspan > 0) {
637
+ return {
638
+ rowspan,
639
+ colspan: 1
640
+ };
641
+ }
642
+ return {
643
+ rowspan: 0,
644
+ colspan: 0
645
+ };
646
+ }
647
+ return {
648
+ rowspan: 1,
649
+ colspan: 1
650
+ };
651
+ };
652
+ const handleHeaderDragend = async (newWidth, oldWidth, column, event) => {
653
+ state.orgColumns.forEach((f) => {
654
+ if (column.property === f.prop) {
655
+ f.width = newWidth;
656
+ f.smallWidth = newWidth;
657
+ }
658
+ });
659
+ emit("headerDragend", newWidth, oldWidth, column, event);
660
+ await clickUtil.debounceAsync(columnSettingRef.value.change, 500);
661
+ };
662
+ const handleImagePreview = (url) => {
663
+ state.previewList = [url];
664
+ state.imagePreview = true;
665
+ };
666
+ onMounted(async () => {
667
+ state.initParam = props.initParam;
668
+ loadTableColumns();
669
+ defaultSearchTime();
670
+ Object.keys(props.initParam ?? {}).forEach((key) => {
671
+ state.searchParam[key] = props.initParam[key];
672
+ });
673
+ await tableSearch();
674
+ watch(() => props.initParam, () => {
675
+ Object.keys(props.initParam ?? {}).forEach((key) => {
676
+ state.searchParam[key] = props.initParam[key];
677
+ });
678
+ }, {
679
+ deep: true
680
+ });
681
+ watch(() => props.data, async () => {
682
+ if (!props.requestApi && props.autoRefresh) {
683
+ await tableSearch();
684
+ }
685
+ }, {
686
+ deep: true,
687
+ immediate: true
688
+ });
689
+ watchEffect(async () => {
690
+ const element = elementRef.value;
691
+ if (element) {
692
+ const observer = new ResizeObserver((entries) => {
693
+ for (const entry of entries) {
694
+ const {
695
+ width,
696
+ height
697
+ } = entry.contentRect;
698
+ state.tableWidth = width;
699
+ state.tableHeight = height;
700
+ }
701
+ clickUtil.debounceAsync(async () => {
702
+ await handleTableColumnAutoWidth();
703
+ }, 100);
704
+ });
705
+ observer.observe(element);
706
+ return () => {
707
+ observer.disconnect();
708
+ };
709
+ }
710
+ });
711
+ });
712
+ onActivated(async () => {
713
+ await handleTableColumnAutoWidth();
714
+ });
715
+ const searchFormSlotNames = computed(() => state.searchColumns.filter((f) => f.search.slot).map((m) => m.search.slot));
716
+ const tableColumnSlotNames = computed(() => state.tableColumns.filter((f) => f.slot).map((m) => m.slot));
717
+ const tableColumnOmitNames = ["multiOrder", "columnID", "order", "sortableField", "disabledSortable", "spanProp", "pureSearch", "search"];
718
+ const elTableProps = useProps(props, tableProps, ["data", "spanMethod", "headerCellClassName", "cellClassName"]);
719
+ useRender(() => createVNode("div", {
720
+ "ref": elementRef,
721
+ "class": ["fa-table", `fa-table-${_globalSize.value}`, `fa-table__${props.tableKey ?? "notFound"}`, {
722
+ fa__click__disabled: state.loading
723
+ }],
724
+ "style": {
725
+ "--fa-table-width": `${state.tableWidth ? `${state.tableWidth}px` : ""}`,
726
+ "--fa-table-height": `${state.tableHeight ? `${state.tableHeight}px` : ""}`
727
+ }
728
+ }, [createVNode(TableSearchForm, {
729
+ "show": props.searchForm && state.searchForm,
730
+ "cols": props.searchFormCols,
731
+ "search": tableSearch,
732
+ "reset": tableReset
733
+ }, pick(slots, searchFormSlotNames.value)), slots.topHeader && createVNode("div", {
734
+ "class": "el-card fa-table__header"
735
+ }, [slots.topHeader({
736
+ ...{
737
+ search: tableSearch
738
+ },
739
+ ...getTableDefaultSlots(state)
740
+ })]), createVNode("div", {
741
+ "class": "el-card fa-table__main"
742
+ }, [props.headerCard && createVNode("div", {
743
+ "class": "fa-table__main-header"
744
+ }, [createVNode("div", {
745
+ "class": "fa-table__main-header-left"
746
+ }, [slots.header && slots.header({
747
+ ...{
748
+ search: tableSearch
749
+ },
750
+ ...getTableDefaultSlots(state)
751
+ })]), createVNode("div", {
752
+ "class": "fa-table__main-header-right"
753
+ }, [props.toolBtn && createVNode(Fragment, null, [createVNode("div", {
754
+ "class": "fa-table__main-header-right__div-search"
755
+ }, [createVNode(ElInput, {
756
+ "class": "fa-table__main-header-right__input-search",
757
+ "disabled": state.loading,
758
+ "prefixIcon": Search,
759
+ "placeholder": "关键字搜索",
760
+ "modelValue": state.searchParam.searchValue,
761
+ "modelModifiers": {
762
+ "trim": true
763
+ },
764
+ "onUpdate:modelValue": ($event) => state.searchParam.searchValue = $event,
765
+ "clearable": true,
766
+ "onCompositionupdate": (e) => {
767
+ state.searchValueUpdate = e.data;
768
+ },
769
+ "onCompositionend": (e) => {
770
+ state.searchValueUpdate = "";
771
+ },
772
+ "onChange": () => tableSearch()
773
+ }, null), createVNode("div", {
774
+ "class": "fa-table__main-header-right__div-search__hidden"
775
+ }, [state.searchParam.searchValue, state.searchValueUpdate])]), props.requestApi && !props.hideSearchTime && createVNode(ElDatePicker, {
776
+ "class": "fa-table__main-header-right__data-search",
777
+ "popperClass": "fa-table__main-header-right__data-search__popper",
778
+ "disabled": state.loading,
779
+ "type": "daterange",
780
+ "modelValue": state.searchParam.searchTimeList,
781
+ "onUpdate:modelValue": ($event) => state.searchParam.searchTimeList = $event,
782
+ "defaultTime": dateUtil.getDefaultTime(),
783
+ "shortcuts": dateUtil.getShortcuts(),
784
+ "valueFormat": "YYYY-MM-DD HH:mm:ss",
785
+ "disabledDate": dateUtil.getDisabledDate,
786
+ "clearable": false,
787
+ "teleported": false,
788
+ "unlinkPanels": true,
789
+ "onChange": () => tableSearch()
790
+ }, null), slots.toolButton && slots.toolButton({
791
+ ...{
792
+ search: tableSearch
793
+ },
794
+ ...getTableDefaultSlots(state)
795
+ }), props.refreshBtn && createVNode(ElButton, {
796
+ "loading": state.loading,
797
+ "loadingIcon": Eleme,
798
+ "title": "刷新",
799
+ "circle": true,
800
+ "icon": Refresh,
801
+ "onClick": () => tableSearch()
802
+ }, null), props.searchBtn && state.searchColumns.length > 0 && createVNode(ElButton, {
803
+ "loading": state.loading,
804
+ "loadingIcon": Eleme,
805
+ "title": state.searchForm ? "隐藏搜索栏" : "显示搜索栏",
806
+ "circle": true,
807
+ "icon": Search,
808
+ "onClick": () => state.searchForm = !state.searchForm
809
+ }, null), props.columnSettingBtn && !props.columns && createVNode(ElButton, {
810
+ "loading": state.loading,
811
+ "loadingIcon": Eleme,
812
+ "title": "表格列配置",
813
+ "circle": true,
814
+ "icon": Setting,
815
+ "onClick": () => columnSettingRef.value.open()
816
+ }, null), slots.toolButtonAdv && createVNode(ElDropdown, {
817
+ "title": "高级操作",
818
+ "trigger": "click"
819
+ }, {
820
+ default: () => createVNode(ElButton, {
821
+ "loading": state.loading,
822
+ "loadingIcon": Eleme,
823
+ "circle": true,
824
+ "icon": More
825
+ }, null),
826
+ dropdown: () => {
827
+ let _slot;
828
+ return createVNode(ElDropdownMenu, null, _isSlot(_slot = slots.toolButtonAdv({
829
+ ...{
830
+ search: tableSearch
831
+ },
832
+ ...getTableDefaultSlots(state)
833
+ })) ? _slot : {
834
+ default: () => [_slot]
835
+ });
836
+ }
837
+ })])])]), withDirectives(createVNode(ElTable, mergeProps(elTableProps.value, {
838
+ "ref": tableRef,
839
+ "element-loading-text": state.loadingText,
840
+ "data": state.tableData,
841
+ "spanMethod": handleSpanMethod,
842
+ "headerCellClassName": handleHeaderCellClassName,
843
+ "cellClassName": handleCellClassName,
844
+ "onSelectionChange": handleSelectionChange,
845
+ "onSortChange": handleSortChange,
846
+ "onSelect": handleSelect,
847
+ "onSelectAll": handleSelectAll,
848
+ "onCurrentChange": handleCurrentChange,
849
+ "onHeaderDragend": handleHeaderDragend,
850
+ "onCellMouseEnter": (row, column, cell, event) => emit("cellMouseEnter", row, column, cell, event),
851
+ "onCellMouseLeave": (row, column, cell, event) => emit("cellMouseLeave", row, column, cell, event),
852
+ "onCellClick": (row, column, cell, event) => emit("cellClick", row, column, cell, event),
853
+ "onCellDblclick": (row, column, cell, event) => emit("cellDblclick", row, column, cell, event),
854
+ "onCellContextmenu": (row, column, cell, event) => emit("cellContextmenu", row, column, cell, event),
855
+ "onRowClick": (row, column, event) => emit("rowClick", row, column, event),
856
+ "onRowContextmenu": (row, column, event) => emit("rowContextmenu", row, column, event),
857
+ "onRowDblclick": (row, column, event) => emit("rowDblclick", row, column, event),
858
+ "onHeaderClick": (column, event) => emit("headerClick", column, event),
859
+ "onHeaderContextmenu": (column, event) => emit("headerContextmenu", column, event),
860
+ "onFilterChange": (newFilters) => emit("filterChange", newFilters),
861
+ "onExpandChange": (row, expanded) => emit("expandChange", row, expanded)
862
+ }), {
863
+ append: () => slots.append && slots.append(),
864
+ empty: () => createVNode("div", {
865
+ "class": "fa-table__empty"
866
+ }, [slots.empty ? slots.empty() : createVNode(Fragment, null, [createVNode(ElIcon, null, {
867
+ default: () => [createVNode(NotData, null, null)]
868
+ }), createVNode("div", null, [createTextVNode("暂无数据")])])]),
869
+ default: () => createVNode(Fragment, null, [createVNode(ElTableColumn, {
870
+ "className": "fa-table__index-column",
871
+ "type": "index",
872
+ "fixed": "left",
873
+ "width": state.tablePagination.pageIndex * state.tablePagination.pageSize >= 100 ? state.tablePagination.pageIndex * state.tablePagination.pageSize >= 1e3 ? 50 : 40 : 30,
874
+ "align": "center",
875
+ "index": indexMethod,
876
+ "showOverflowTooltip": false,
877
+ "resizable": false,
878
+ "columnKey": "__table-index"
879
+ }, null), createVNode(ElTableColumn, {
880
+ "className": "fa-table__selection-column",
881
+ "type": "selection",
882
+ "fixed": "left",
883
+ "width": 35,
884
+ "align": "center",
885
+ "reserveSelection": true,
886
+ "showOverflowTooltip": false,
887
+ "resizable": false,
888
+ "columnKey": "__table-selection",
889
+ "selectable": props.rowSelectable
890
+ }, null), slots.operation && createVNode(ElTableColumn, {
891
+ "fixed": "right",
892
+ "width": state.operationColumnWidth,
893
+ "headerAlign": "center",
894
+ "align": "left",
895
+ "showOverflowTooltip": false,
896
+ "className": "fa-table__operation-column",
897
+ "resizable": false,
898
+ "columnKey": "__table-operation"
899
+ }, {
900
+ header: () => createVNode("div", {
901
+ "class": "fa-table__auto-width-column__cell-header __fa-table__auto-width-column__cell-header____table-operation"
902
+ }, [createVNode("span", null, [createTextVNode("操作")])]),
903
+ default: ({
904
+ row,
905
+ column,
906
+ $index
907
+ }) => createVNode("div", {
908
+ "class": "fa-table__auto-width-column__cell __fa-table__auto-width-column__cell____table-operation"
909
+ }, [slots.operation({
910
+ row,
911
+ column,
912
+ $index,
913
+ ...{
914
+ search: tableSearch
915
+ },
916
+ ...getTableDefaultSlots(state)
917
+ })])
918
+ }), state.tableColumns?.length === 0 ? slots.default && slots.default() : state.tableColumns.map((col) => col.show && (col.type === "expand" ? createVNode(ElTableColumn, mergeProps(col, {
919
+ "width": 35,
920
+ "fixed": col.fixed ?? "left",
921
+ "resizable": false
922
+ }), {
923
+ default: ({
924
+ row,
925
+ column,
926
+ $index
927
+ }) => createVNode(Fragment, null, [col.render && col.render({
928
+ row,
929
+ column,
930
+ $index,
931
+ ...getTableDefaultSlots(state)
932
+ }), col.slot && slots[col.slot] && slots[col.slot]({
933
+ row,
934
+ column,
935
+ $index,
936
+ ...getTableDefaultSlots(state)
937
+ })])
938
+ }) : col.prop && createVNode(TableColumn, mergeProps(omit(col, tableColumnOmitNames), {
939
+ "resizable": true,
940
+ "onImagePreview": handleImagePreview,
941
+ "onCustomCellClick": handleCustomCellClick
942
+ }), pick(slots, tableColumnSlotNames.value))))])
943
+ }), [[resolveDirective("loading"), state.loading]]), createVNode("div", {
944
+ "class": "fa-table__main-footer"
945
+ }, [createVNode("div", {
946
+ "class": "fa-table__main-footer__left"
947
+ }, [slots.footer && slots.footer({
948
+ ...{
949
+ search: tableSearch
950
+ },
951
+ ...getTableDefaultSlots(state)
952
+ })]), slots.pagination ? slots.pagination({
953
+ pageIndex: state.tablePagination.pageIndex,
954
+ pageSize: state.tablePagination.pageSize,
955
+ totalRows: state.tablePagination.totalRows,
956
+ handleSizeChange,
957
+ handlePaginationChange
958
+ }) : createVNode(Fragment, null, [props.pagination ? createVNode(TablePagination, {
959
+ "sizeChange": handleSizeChange,
960
+ "currentChange": handlePaginationChange
961
+ }, null) : createVNode(ElPagination, {
962
+ "class": "fa-table-pagination",
963
+ "size": "small",
964
+ "layout": "total",
965
+ "total": state.tableData.length
966
+ }, null)])])]), state.imagePreview && createVNode(ElImageViewer, {
967
+ "closeOnPressEscape": true,
968
+ "hideOnClickModal": true,
969
+ "teleported": true,
970
+ "onClose": () => state.imagePreview = false,
971
+ "urlList": state.previewList
972
+ }, null), createVNode(TableColumnsSettingDialog, {
973
+ "ref": columnSettingRef,
974
+ "save": props.columnsChange
975
+ }, null)]));
976
+ return useExpose(expose, {
977
+ /** @description 用于多选表格,清空用户的选择 */
978
+ clearSelection: computed(() => tableRef.value?.clearSelection),
979
+ /** @description 返回当前选中的行 */
980
+ getSelectionRows: computed(() => tableRef.value?.getSelectionRows),
981
+ /** @description 用于多选表格,切换某一行的选中状态, 如果使用了第二个参数,则可直接设置这一行选中与否 */
982
+ toggleRowSelection: computed(() => tableRef.value?.toggleRowSelection),
983
+ /** @description 用于多选表格,切换全选和全不选 */
984
+ toggleAllSelection: computed(() => tableRef.value?.toggleAllSelection),
985
+ /** @description 用于可扩展的表格或树表格,如果某行被扩展,则切换。 使用第二个参数,您可以直接设置该行应该被扩展或折叠。 */
986
+ toggleRowExpansion: computed(() => tableRef.value?.toggleRowExpansion),
987
+ /** @description 用于单选表格,设定某一行为选中行, 如果调用时不加参数,则会取消目前高亮行的选中状态。 */
988
+ setCurrentRow: computed(() => tableRef.value?.setCurrentRow),
989
+ /** @description 用于清空排序条件,数据会恢复成未排序的状态 */
990
+ clearSort: computed(() => tableRef.value?.clearSort),
991
+ /** @description 传入由columnKey 组成的数组以清除指定列的过滤条件。 如果没有参数,清除所有过滤器 */
992
+ clearFilter: computed(() => tableRef.value?.clearFilter),
993
+ /** @description 对 Table 进行重新布局。 当表格可见性变化时,您可能需要调用此方法以获得正确的布局 */
994
+ doLayout: computed(() => tableRef.value?.doLayout),
995
+ /** @description 手动排序表格。 参数 prop 属性指定排序列,order 指定排序顺序。 */
996
+ sort: computed(() => tableRef.value?.sort),
997
+ /** @description 滚动到一组特定坐标 */
998
+ scrollTo: computed(() => tableRef.value?.scrollTo),
999
+ /** @description 设置垂直滚动位置 */
1000
+ setScrollTop: computed(() => tableRef.value?.setScrollTop),
1001
+ /** @description 设置水平滚动位置 */
1002
+ setScrollLeft: computed(() => tableRef.value?.setScrollLeft),
1003
+ /** @description 获取表列的 context */
1004
+ columns: computed(() => tableRef.value?.columns),
1005
+ /** @description 适用于 lazy Table, 需要设置 rowKey, 更新 key children */
1006
+ updateKeyChildren: computed(() => tableRef.value?.updateKeyChildren),
1007
+ /** @description 加载状态 */
1008
+ loading: computed(() => state.loading),
1009
+ /** @description 表格数据 */
1010
+ tableData: computed(() => state.tableData),
1011
+ /** @description 分页数据 */
1012
+ tablePagination: computed(() => state.tablePagination),
1013
+ /** @description 搜索参数 */
1014
+ searchParam: computed(() => state.searchParam),
1015
+ /** @description 选中状态 */
1016
+ selected: computed(() => state.selected),
1017
+ /** @description 选中数据列表 */
1018
+ selectedList: computed(() => state.selectedList),
1019
+ /** @description 选中数据 rowKey 列表 */
1020
+ selectedListIds: computed(() => state.selectedListIds),
1021
+ /** @description 部分选中数据 rowKey 列表 */
1022
+ indeterminateSelectedListIds: computed(() => state.indeterminateSelectedListIds),
1023
+ /** @description 表格宽度 */
1024
+ tableWidth: computed(() => state.tableWidth),
1025
+ /** @description 表格高度 */
1026
+ tableHeight: computed(() => state.tableHeight),
1027
+ /** @description 部分选中(样式不一样而已),用于多选表格,切换某一行的选中状态, 如果使用了第二个参数,则可直接设置这一行选中与否 */
1028
+ toggleRowIndeterminateSelection,
1029
+ /** @description 异步方法,刷新表格 */
1030
+ refresh: tableSearch,
1031
+ /** @description 异步方法,重置表格 */
1032
+ reset: tableReset,
1033
+ /** @description 对 Table 进行重新渲染。当 TableKey 发生变化的时候可以通过此方法重新渲染表格 */
1034
+ doRender,
1035
+ /** @description Table 加载 */
1036
+ doLoading
1037
+ });
1038
+ }
1039
+ });
1040
+ export {
1041
+ Table as default,
1042
+ faTableEmits,
1043
+ faTableProps,
1044
+ tableProps
1045
+ };
1046
+ //# sourceMappingURL=table.mjs.map