hys-ui 0.1.1 → 0.3.0

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 (337) hide show
  1. package/CHANGELOG.md +149 -0
  2. package/README.md +17 -1
  3. package/dist/components/HysAccordion/HysAccordion.vue.js +1 -1
  4. package/dist/components/HysAccordion/HysAccordion2.vue.js +181 -47
  5. package/dist/components/HysAlert/HysAlert.vue.js +5 -54
  6. package/dist/components/HysAlert/HysAlert2.vue.js +159 -2
  7. package/dist/components/HysAutocomplete/HysAutocomplete.vue.js +7 -0
  8. package/dist/components/HysAutocomplete/HysAutocomplete2.vue.js +639 -0
  9. package/dist/components/HysAvatar/HysAvatar.vue.js +5 -35
  10. package/dist/components/HysAvatar/HysAvatar2.vue.js +221 -2
  11. package/dist/components/HysAvatarGroup/HysAvatarGroup.vue.js +7 -0
  12. package/dist/components/HysAvatarGroup/HysAvatarGroup2.vue.js +256 -0
  13. package/dist/components/HysBadge/HysBadge.vue.js +2 -2
  14. package/dist/components/HysBadge/HysBadge2.vue.js +154 -27
  15. package/dist/components/HysBreadcrumb/HysBreadcrumb.vue.js +5 -38
  16. package/dist/components/HysBreadcrumb/HysBreadcrumb2.vue.js +288 -2
  17. package/dist/components/HysButton/HysButton.vue.js +2 -2
  18. package/dist/components/HysButton/HysButton2.vue.js +29 -28
  19. package/dist/components/HysCalendar/HysCalendar.vue.js +5 -92
  20. package/dist/components/HysCalendar/HysCalendar2.vue.js +815 -2
  21. package/dist/components/HysCard/HysCard.vue.js +2 -2
  22. package/dist/components/HysCard/HysCard2.vue.js +175 -42
  23. package/dist/components/HysCascader/HysCascader.vue.js +5 -194
  24. package/dist/components/HysCascader/HysCascader2.vue.js +773 -2
  25. package/dist/components/HysCascader/HysCascaderColumn.vue.js +7 -0
  26. package/dist/components/HysCascader/HysCascaderColumn2.vue.js +232 -0
  27. package/dist/components/HysCheckbox/HysCheckbox.vue.js +3 -3
  28. package/dist/components/HysCheckbox/HysCheckbox2.vue.js +180 -65
  29. package/dist/components/HysCheckboxGroup/HysCheckboxGroup.vue.js +7 -0
  30. package/dist/components/HysCheckboxGroup/HysCheckboxGroup2.vue.js +237 -0
  31. package/dist/components/HysColorPicker/HysColorPanel.vue.js +7 -0
  32. package/dist/components/HysColorPicker/HysColorPanel2.vue.js +238 -0
  33. package/dist/components/HysColorPicker/HysColorPicker.vue.js +1 -1
  34. package/dist/components/HysColorPicker/HysColorPicker2.vue.js +239 -216
  35. package/dist/components/HysCommandPalette/HysCommandPalette.vue.js +90 -76
  36. package/dist/components/HysContextMenu/HysContextMenu.vue.js +5 -89
  37. package/dist/components/HysContextMenu/HysContextMenu2.vue.js +247 -2
  38. package/dist/components/HysContextMenu/HysMenuPanel.vue.js +7 -0
  39. package/dist/components/HysContextMenu/HysMenuPanel2.vue.js +208 -0
  40. package/dist/components/HysContextMenu/HysMenuSlot.js +10 -0
  41. package/dist/components/HysDataGrid/HysDataGrid.vue.js +1 -1
  42. package/dist/components/HysDataGrid/HysDataGrid2.vue.js +1019 -563
  43. package/dist/components/HysDatePicker/HysDatePicker.vue.js +270 -139
  44. package/dist/components/HysDatePicker/HysDatePickerControl.vue.js +7 -0
  45. package/dist/components/HysDatePicker/HysDatePickerControl2.vue.js +820 -0
  46. package/dist/components/HysDatePicker/HysDatePickerPanel.vue.js +7 -0
  47. package/dist/components/HysDatePicker/HysDatePickerPanel2.vue.js +357 -0
  48. package/dist/components/HysDateRangePicker/HysDateRangePicker.vue.js +270 -158
  49. package/dist/components/HysDivider/HysDivider.vue.js +2 -2
  50. package/dist/components/HysDivider/HysDivider2.vue.js +33 -13
  51. package/dist/components/HysDrawer/HysDrawer.vue.js +1 -1
  52. package/dist/components/HysDrawer/HysDrawer2.vue.js +434 -84
  53. package/dist/components/HysEmpty/HysEmpty.vue.js +5 -41
  54. package/dist/components/HysEmpty/HysEmpty2.vue.js +181 -2
  55. package/dist/components/HysFileManager/HysFileManager.vue.js +3 -3
  56. package/dist/components/HysFileManager/HysFileManager2.vue.js +43 -42
  57. package/dist/components/HysForm/HysForm.vue.js +3 -3
  58. package/dist/components/HysForm/HysForm2.vue.js +578 -92
  59. package/dist/components/HysFormItem/HysFormItem.vue.js +5 -85
  60. package/dist/components/HysFormItem/HysFormItem2.vue.js +528 -2
  61. package/dist/components/HysGantt/HysGantt.vue.js +1 -1
  62. package/dist/components/HysGantt/HysGantt2.vue.js +1380 -268
  63. package/dist/components/HysInput/HysInput.vue.js +2 -2
  64. package/dist/components/HysInput/HysInput2.vue.js +467 -120
  65. package/dist/components/HysMention/HysMention.vue.js +2 -2
  66. package/dist/components/HysMention/HysMention2.vue.js +122 -109
  67. package/dist/components/HysModal/HysModal.vue.js +2 -2
  68. package/dist/components/HysModal/HysModal2.vue.js +490 -85
  69. package/dist/components/HysNumberInput/HysNumberInput.vue.js +2 -2
  70. package/dist/components/HysNumberInput/HysNumberInput2.vue.js +561 -79
  71. package/dist/components/HysOrgTree/HysOrgTree.vue.js +29 -26
  72. package/dist/components/HysPagination/HysPagination.vue.js +1 -1
  73. package/dist/components/HysPagination/HysPagination2.vue.js +2 -0
  74. package/dist/components/HysPermissionMatrix/HysPermissionMatrix.vue.js +2 -2
  75. package/dist/components/HysPermissionMatrix/HysPermissionMatrix2.vue.js +52 -51
  76. package/dist/components/HysPopover/HysPopover.vue.js +5 -91
  77. package/dist/components/HysPopover/HysPopover2.vue.js +120 -2
  78. package/dist/components/HysProgress/HysProgress.vue.js +2 -2
  79. package/dist/components/HysProgress/HysProgress2.vue.js +319 -52
  80. package/dist/components/HysRadio/HysRadio.vue.js +7 -0
  81. package/dist/components/HysRadio/HysRadio2.vue.js +180 -0
  82. package/dist/components/HysRadioGroup/HysRadioGroup.vue.js +2 -2
  83. package/dist/components/HysRadioGroup/HysRadioGroup2.vue.js +190 -65
  84. package/dist/components/HysRating/HysRating.vue.js +1 -1
  85. package/dist/components/HysRating/HysRating2.vue.js +288 -68
  86. package/dist/components/HysRichTextEditor/HysRichTextEditor.vue.js +1 -1
  87. package/dist/components/HysRichTextEditor/HysRichTextEditor2.vue.js +70 -69
  88. package/dist/components/HysSearch/HysSearch.vue.js +37 -36
  89. package/dist/components/HysSegmented/HysSegmented.vue.js +5 -63
  90. package/dist/components/HysSegmented/HysSegmented2.vue.js +273 -2
  91. package/dist/components/HysSelect/HysSelect.vue.js +3 -2
  92. package/dist/components/HysSelect/HysSelect2.vue.js +999 -189
  93. package/dist/components/HysSkeleton/HysSkeleton.vue.js +2 -2
  94. package/dist/components/HysSkeleton/HysSkeleton2.vue.js +126 -29
  95. package/dist/components/HysSlider/HysSlider.vue.js +1 -1
  96. package/dist/components/HysSlider/HysSlider2.vue.js +536 -59
  97. package/dist/components/HysSlider/SliderTooltip.vue.js +7 -0
  98. package/dist/components/HysSlider/SliderTooltip2.vue.js +170 -0
  99. package/dist/components/HysSteps/HysSteps.vue.js +1 -1
  100. package/dist/components/HysSteps/HysSteps2.vue.js +110 -36
  101. package/dist/components/HysSwitch/HysSwitch.vue.js +2 -2
  102. package/dist/components/HysSwitch/HysSwitch2.vue.js +232 -50
  103. package/dist/components/HysTable/HysTable.vue.js +1 -1
  104. package/dist/components/HysTable/HysTable2.vue.js +1494 -88
  105. package/dist/components/HysTable/HysTableFilterOptions.vue.js +7 -0
  106. package/dist/components/HysTable/HysTableFilterOptions2.vue.js +133 -0
  107. package/dist/components/HysTabs/HysTabs.vue.js +2 -2
  108. package/dist/components/HysTabs/HysTabs2.vue.js +262 -68
  109. package/dist/components/HysTagInput/HysTagInput.vue.js +5 -81
  110. package/dist/components/HysTagInput/HysTagInput2.vue.js +396 -2
  111. package/dist/components/HysTextarea/HysTextarea.vue.js +138 -77
  112. package/dist/components/HysTimeline/HysTimeline.vue.js +2 -2
  113. package/dist/components/HysTimeline/HysTimeline2.vue.js +243 -24
  114. package/dist/components/HysTooltip/HysTooltip.vue.js +5 -64
  115. package/dist/components/HysTooltip/HysTooltip2.vue.js +110 -2
  116. package/dist/components/HysTour/HysTour.vue.js +46 -42
  117. package/dist/components/HysTransfer/HysTransfer.vue.js +5 -223
  118. package/dist/components/HysTransfer/HysTransfer2.vue.js +446 -2
  119. package/dist/components/HysTransfer/HysTransferPanel.vue.js +7 -0
  120. package/dist/components/HysTransfer/HysTransferPanel2.vue.js +503 -0
  121. package/dist/components/HysTree/HysTree.vue.js +2 -3
  122. package/dist/components/HysTree/HysTree2.vue.js +651 -301
  123. package/dist/components/HysTreeSelect/HysTreeSelect.vue.js +5 -136
  124. package/dist/components/HysTreeSelect/HysTreeSelect2.vue.js +570 -2
  125. package/dist/components/HysTreeSelect/HysTreeSelectPanel.vue.js +7 -0
  126. package/dist/components/HysTreeSelect/HysTreeSelectPanel2.vue.js +323 -0
  127. package/dist/components/HysUpload/HysUpload.vue.js +2 -2
  128. package/dist/components/HysUpload/HysUpload2.vue.js +459 -124
  129. package/dist/components/HysVirtualTable/HysVirtualTable.vue.js +5 -94
  130. package/dist/components/HysVirtualTable/HysVirtualTable2.vue.js +656 -2
  131. package/dist/composables/autocomplete.js +50 -0
  132. package/dist/composables/avatar.js +57 -0
  133. package/dist/composables/calendar.js +96 -0
  134. package/dist/composables/cascader.js +79 -0
  135. package/dist/composables/choice.js +38 -0
  136. package/dist/composables/choiceModel.js +67 -0
  137. package/dist/composables/color.js +97 -0
  138. package/dist/composables/dataGrid.js +68 -0
  139. package/dist/composables/datePicker.js +227 -0
  140. package/dist/composables/drawer.js +17 -0
  141. package/dist/composables/feedback.js +14 -0
  142. package/dist/composables/formContext.js +92 -7
  143. package/dist/composables/formLayout.js +57 -0
  144. package/dist/composables/formValidation.js +240 -0
  145. package/dist/composables/ganttConflicts.js +143 -0
  146. package/dist/composables/menu.js +96 -0
  147. package/dist/composables/modal.js +14 -0
  148. package/dist/composables/numberInput.js +91 -0
  149. package/dist/composables/overlayManager.js +48 -18
  150. package/dist/composables/progress.js +94 -0
  151. package/dist/composables/rating.js +16 -0
  152. package/dist/composables/selectOptions.js +54 -0
  153. package/dist/composables/table.js +150 -0
  154. package/dist/composables/tagInput.js +16 -0
  155. package/dist/composables/textInput.js +34 -0
  156. package/dist/composables/timeline.js +19 -0
  157. package/dist/composables/transfer.js +65 -0
  158. package/dist/composables/tree.js +118 -0
  159. package/dist/composables/treeSelect.js +71 -0
  160. package/dist/composables/upload.js +55 -0
  161. package/dist/composables/uploadRequest.js +58 -0
  162. package/dist/composables/useAlert.js +124 -0
  163. package/dist/composables/useCascader.js +438 -0
  164. package/dist/composables/useColorPicker.js +402 -0
  165. package/dist/composables/useContextMenu.js +514 -0
  166. package/dist/composables/useDataGridRemote.js +67 -0
  167. package/dist/composables/useDatePicker.js +425 -0
  168. package/dist/composables/useDialog.js +86 -43
  169. package/dist/composables/useDrawerPush.js +33 -0
  170. package/dist/composables/useDrawerResize.js +221 -0
  171. package/dist/composables/useFloating.js +136 -56
  172. package/dist/composables/useGanttDependencies.js +306 -0
  173. package/dist/composables/useGanttHistory.js +157 -0
  174. package/dist/composables/useGanttLabelResize.js +100 -0
  175. package/dist/composables/useHysModal.js +185 -0
  176. package/dist/composables/useModal.js +295 -0
  177. package/dist/composables/useModalInteraction.js +394 -0
  178. package/dist/composables/usePopupSurface.js +458 -0
  179. package/dist/composables/useTable.js +474 -0
  180. package/dist/composables/useTagInput.js +313 -0
  181. package/dist/composables/useTextareaSize.js +72 -0
  182. package/dist/composables/useTransfer.js +257 -0
  183. package/dist/composables/useTransferMotion.js +185 -0
  184. package/dist/composables/useTree.js +439 -0
  185. package/dist/composables/useTreeSelect.js +361 -0
  186. package/dist/composables/useUpload.js +472 -0
  187. package/dist/composables/useUploadModel.js +65 -0
  188. package/dist/composables/useUploadRequests.js +266 -0
  189. package/dist/composables/useVirtualTableLayout.js +277 -0
  190. package/dist/composables/virtualTable.js +43 -0
  191. package/dist/index.js +152 -139
  192. package/dist/internal/PopupReference.js +39 -0
  193. package/dist/internal/PopupSurfacePanel.vue.js +7 -0
  194. package/dist/internal/PopupSurfacePanel2.vue.js +92 -0
  195. package/dist/motion/PopupMotion.js +105 -0
  196. package/dist/motion/popup.js +10 -0
  197. package/dist/style.css +1 -1
  198. package/dist/types/components/HysAccordion/HysAccordion.vue.d.ts +61 -22
  199. package/dist/types/components/HysAlert/HysAlert.vue.d.ts +32 -22
  200. package/dist/types/components/HysAutocomplete/HysAutocomplete.vue.d.ts +201 -0
  201. package/dist/types/components/HysAvatar/HysAvatar.vue.d.ts +28 -15
  202. package/dist/types/components/HysAvatarGroup/HysAvatarGroup.vue.d.ts +104 -0
  203. package/dist/types/components/HysBadge/HysBadge.vue.d.ts +41 -4
  204. package/dist/types/components/HysBreadcrumb/HysBreadcrumb.vue.d.ts +71 -20
  205. package/dist/types/components/HysButton/HysButton.vue.d.ts +0 -1
  206. package/dist/types/components/HysCalendar/HysCalendar.vue.d.ts +120 -31
  207. package/dist/types/components/HysCard/HysCard.vue.d.ts +55 -7
  208. package/dist/types/components/HysCascader/HysCascader.vue.d.ts +129 -41
  209. package/dist/types/components/HysCascader/HysCascaderColumn.vue.d.ts +55 -0
  210. package/dist/types/components/HysCheckbox/HysCheckbox.vue.d.ts +50 -39
  211. package/dist/types/components/HysCheckboxGroup/HysCheckboxGroup.vue.d.ts +73 -0
  212. package/dist/types/components/HysColorPicker/HysColorPanel.vue.d.ts +58 -0
  213. package/dist/types/components/HysColorPicker/HysColorPicker.vue.d.ts +63 -10
  214. package/dist/types/components/HysCommandPalette/HysCommandPalette.vue.d.ts +2 -1
  215. package/dist/types/components/HysContextMenu/HysContextMenu.vue.d.ts +50 -34
  216. package/dist/types/components/HysContextMenu/HysMenuPanel.vue.d.ts +79 -0
  217. package/dist/types/components/HysContextMenu/HysMenuSlot.d.ts +8 -0
  218. package/dist/types/components/HysDataGrid/HysDataGrid.vue.d.ts +65 -118
  219. package/dist/types/components/HysDatePicker/HysDatePicker.vue.d.ts +66 -14
  220. package/dist/types/components/HysDatePicker/HysDatePickerControl.vue.d.ts +90 -0
  221. package/dist/types/components/HysDatePicker/HysDatePickerPanel.vue.d.ts +93 -0
  222. package/dist/types/components/HysDateRangePicker/HysDateRangePicker.vue.d.ts +66 -14
  223. package/dist/types/components/HysDivider/HysDivider.vue.d.ts +8 -3
  224. package/dist/types/components/HysDrawer/HysDrawer.vue.d.ts +92 -35
  225. package/dist/types/components/HysEmpty/HysEmpty.vue.d.ts +24 -20
  226. package/dist/types/components/HysForm/HysForm.vue.d.ts +110 -18
  227. package/dist/types/components/HysFormItem/HysFormItem.vue.d.ts +108 -2
  228. package/dist/types/components/HysGantt/HysGantt.vue.d.ts +84 -5
  229. package/dist/types/components/HysInput/HysInput.vue.d.ts +52 -29
  230. package/dist/types/components/HysMention/HysMention.vue.d.ts +4 -3
  231. package/dist/types/components/HysModal/HysModal.vue.d.ts +111 -34
  232. package/dist/types/components/HysNumberInput/HysNumberInput.vue.d.ts +93 -35
  233. package/dist/types/components/HysOrgTree/HysOrgTree.vue.d.ts +1 -0
  234. package/dist/types/components/HysPagination/HysPagination.vue.d.ts +1 -1
  235. package/dist/types/components/HysPermissionMatrix/HysPermissionMatrix.vue.d.ts +2 -2
  236. package/dist/types/components/HysPopover/HysPopover.vue.d.ts +41 -29
  237. package/dist/types/components/HysProgress/HysProgress.vue.d.ts +18 -24
  238. package/dist/types/components/HysRadio/HysRadio.vue.d.ts +56 -0
  239. package/dist/types/components/HysRadioGroup/HysRadioGroup.vue.d.ts +34 -12
  240. package/dist/types/components/HysRating/HysRating.vue.d.ts +85 -5
  241. package/dist/types/components/HysResizablePanel/HysResizablePanel.vue.d.ts +2 -2
  242. package/dist/types/components/HysRichTextEditor/HysRichTextEditor.vue.d.ts +4 -4
  243. package/dist/types/components/HysSearch/HysSearch.vue.d.ts +2 -2
  244. package/dist/types/components/HysSegmented/HysSegmented.vue.d.ts +64 -32
  245. package/dist/types/components/HysSelect/HysSelect.vue.d.ts +131 -22
  246. package/dist/types/components/HysSkeleton/HysSkeleton.vue.d.ts +30 -2
  247. package/dist/types/components/HysSlider/HysSlider.vue.d.ts +69 -11
  248. package/dist/types/components/HysSlider/SliderTooltip.vue.d.ts +24 -0
  249. package/dist/types/components/HysSplitPane/HysSplitPane.vue.d.ts +3 -3
  250. package/dist/types/components/HysSteps/HysSteps.vue.d.ts +64 -9
  251. package/dist/types/components/HysSwitch/HysSwitch.vue.d.ts +76 -17
  252. package/dist/types/components/HysTable/HysTable.vue.d.ts +206 -32
  253. package/dist/types/components/HysTable/HysTableFilterOptions.vue.d.ts +18 -0
  254. package/dist/types/components/HysTabs/HysTabs.vue.d.ts +76 -23
  255. package/dist/types/components/HysTagInput/HysTagInput.vue.d.ts +50 -28
  256. package/dist/types/components/HysTextarea/HysTextarea.vue.d.ts +44 -27
  257. package/dist/types/components/HysTimeline/HysTimeline.vue.d.ts +19 -32
  258. package/dist/types/components/HysToast/HysToast.vue.d.ts +3 -3
  259. package/dist/types/components/HysTooltip/HysTooltip.vue.d.ts +39 -19
  260. package/dist/types/components/HysTour/HysTour.vue.d.ts +4 -3
  261. package/dist/types/components/HysTransfer/HysTransfer.vue.d.ts +55 -40
  262. package/dist/types/components/HysTransfer/HysTransferPanel.vue.d.ts +107 -0
  263. package/dist/types/components/HysTree/HysTree.vue.d.ts +140 -73
  264. package/dist/types/components/HysTreeSelect/HysTreeSelect.vue.d.ts +102 -23
  265. package/dist/types/components/HysTreeSelect/HysTreeSelectPanel.vue.d.ts +56 -0
  266. package/dist/types/components/HysUpload/HysUpload.vue.d.ts +55 -67
  267. package/dist/types/components/HysVirtualTable/HysVirtualTable.vue.d.ts +71 -40
  268. package/dist/types/composables/autocomplete.d.ts +109 -0
  269. package/dist/types/composables/avatar.d.ts +73 -0
  270. package/dist/types/composables/calendar.d.ts +66 -0
  271. package/dist/types/composables/cascader.d.ts +195 -0
  272. package/dist/types/composables/choice.d.ts +110 -0
  273. package/dist/types/composables/choiceModel.d.ts +11 -0
  274. package/dist/types/composables/color.d.ts +97 -0
  275. package/dist/types/composables/dataGrid.d.ts +100 -0
  276. package/dist/types/composables/datePicker.d.ts +250 -0
  277. package/dist/types/composables/drawer.d.ts +102 -0
  278. package/dist/types/composables/feedback.d.ts +98 -0
  279. package/dist/types/composables/formContext.d.ts +135 -8
  280. package/dist/types/composables/formLayout.d.ts +11 -0
  281. package/dist/types/composables/formValidation.d.ts +13 -0
  282. package/dist/types/composables/gantt.d.ts +68 -0
  283. package/dist/types/composables/ganttConflicts.d.ts +30 -0
  284. package/dist/types/composables/menu.d.ts +183 -0
  285. package/dist/types/composables/modal.d.ts +183 -0
  286. package/dist/types/composables/numberInput.d.ts +45 -0
  287. package/dist/types/composables/overlayManager.d.ts +7 -3
  288. package/dist/types/composables/popupSurface.d.ts +83 -0
  289. package/dist/types/composables/progress.d.ts +92 -0
  290. package/dist/types/composables/rating.d.ts +18 -0
  291. package/dist/types/composables/segmented.d.ts +15 -0
  292. package/dist/types/composables/selectOptions.d.ts +46 -0
  293. package/dist/types/composables/slider.d.ts +21 -0
  294. package/dist/types/composables/table.d.ts +312 -0
  295. package/dist/types/composables/tagInput.d.ts +96 -0
  296. package/dist/types/composables/textInput.d.ts +76 -0
  297. package/dist/types/composables/timeline.d.ts +82 -0
  298. package/dist/types/composables/transfer.d.ts +187 -0
  299. package/dist/types/composables/tree.d.ts +240 -0
  300. package/dist/types/composables/treeSelect.d.ts +170 -0
  301. package/dist/types/composables/upload.d.ts +202 -0
  302. package/dist/types/composables/uploadRequest.d.ts +3 -0
  303. package/dist/types/composables/useAlert.d.ts +21 -0
  304. package/dist/types/composables/useCascader.d.ts +162 -0
  305. package/dist/types/composables/useColorPicker.d.ts +101 -0
  306. package/dist/types/composables/useContextMenu.d.ts +81 -0
  307. package/dist/types/composables/useDataGridRemote.d.ts +15 -0
  308. package/dist/types/composables/useDatePicker.d.ts +79 -0
  309. package/dist/types/composables/useDialog.d.ts +16 -3
  310. package/dist/types/composables/useDrawerPush.d.ts +6 -0
  311. package/dist/types/composables/useDrawerResize.d.ts +27 -0
  312. package/dist/types/composables/useFloating.d.ts +28 -6
  313. package/dist/types/composables/useGanttDependencies.d.ts +83 -0
  314. package/dist/types/composables/useGanttHistory.d.ts +42 -0
  315. package/dist/types/composables/useGanttLabelResize.d.ts +23 -0
  316. package/dist/types/composables/useHysModal.d.ts +44 -0
  317. package/dist/types/composables/useModal.d.ts +62 -0
  318. package/dist/types/composables/useModalInteraction.d.ts +27 -0
  319. package/dist/types/composables/usePopupSurface.d.ts +3341 -0
  320. package/dist/types/composables/useTable.d.ts +60 -0
  321. package/dist/types/composables/useTagInput.d.ts +66 -0
  322. package/dist/types/composables/useTextareaSize.d.ts +3 -0
  323. package/dist/types/composables/useTransfer.d.ts +58 -0
  324. package/dist/types/composables/useTransferMotion.d.ts +36 -0
  325. package/dist/types/composables/useTree.d.ts +77 -0
  326. package/dist/types/composables/useTreeSelect.d.ts +117 -0
  327. package/dist/types/composables/useUpload.d.ts +94 -0
  328. package/dist/types/composables/useUploadModel.d.ts +14 -0
  329. package/dist/types/composables/useUploadRequests.d.ts +38 -0
  330. package/dist/types/composables/useVirtualTableLayout.d.ts +51 -0
  331. package/dist/types/composables/virtualTable.d.ts +126 -0
  332. package/dist/types/index.d.ts +50 -9
  333. package/dist/types/internal/PopupReference.d.ts +18 -0
  334. package/dist/types/internal/PopupSurfacePanel.vue.d.ts +37 -0
  335. package/dist/types/motion/PopupMotion.d.ts +59 -0
  336. package/dist/types/motion/popup.d.ts +12 -0
  337. package/package.json +2 -1
@@ -1,109 +1,1515 @@
1
- import { defineComponent as $, ref as A, computed as D, openBlock as s, createElementBlock as l, mergeProps as T, unref as h, createElementVNode as d, toDisplayString as c, createCommentVNode as C, Fragment as u, renderList as b, normalizeStyle as f, createTextVNode as k, createBlock as x, resolveDynamicComponent as V, normalizeClass as w, renderSlot as g } from "vue";
2
- import { ChevronsUpDown as p, ChevronDown as E, ChevronUp as H } from "lucide-vue-next";
3
- import { useHysRootAttrs as K } from "../../config.js";
4
- const R = ["aria-busy"], U = { class: "hys-ui-data-table" }, F = { key: 0 }, L = ["aria-sort"], P = ["onClick"], j = { key: 0 }, q = ["colspan"], G = ["onClick"], I = { key: 0 }, J = ["colspan"], X = /* @__PURE__ */ $({
1
+ import { defineComponent as yl, useSlots as fl, ref as A, useId as vl, shallowRef as tt, computed as F, watch as te, onMounted as ml, onActivated as pl, onUpdated as hl, onDeactivated as kl, onBeforeUnmount as wl, openBlock as u, createElementBlock as c, mergeProps as W, unref as o, renderSlot as S, createCommentVNode as g, createElementVNode as T, toDisplayString as O, createBlock as B, withCtx as U, createTextVNode as q, createVNode as K, Fragment as E, renderList as Q, normalizeStyle as pe, withModifiers as V, resolveDynamicComponent as Me, normalizeClass as Ae, withKeys as lt, isRef as bl, withDirectives as gl, vShow as Cl, Teleport as Pt, normalizeProps as Sl, guardReactiveProps as xl, nextTick as he } from "vue";
2
+ import { ChevronUp as Rl, ChevronDown as at, ListFilter as Tl, LoaderCircle as ot, ChevronRight as Ot, RotateCw as zl } from "lucide-vue-next";
3
+ import Et from "../HysCheckbox/HysCheckbox.vue.js";
4
+ import Fl from "../HysRadio/HysRadio.vue.js";
5
+ import ce from "../HysButton/HysButton.vue.js";
6
+ import Ml from "../HysInput/HysInput.vue.js";
7
+ import Kt from "../HysPagination/HysPagination.vue.js";
8
+ import Al from "./HysTableFilterOptions.vue.js";
9
+ import { useHysRootAttrs as Bl } from "../../config.js";
10
+ import { useFloating as $t } from "../../composables/useFloating.js";
11
+ import { useTable as Pl } from "../../composables/useTable.js";
12
+ import { tableColumns as Ol, tableBreakpoint as El, tableToken as Kl, tableSummary as $l, tableValue as Be } from "../../composables/table.js";
13
+ import Ht from "../../motion/PopupMotion.js";
14
+ const Hl = ["aria-busy"], Ll = {
15
+ key: 0,
16
+ class: "hys-ui-table-title"
17
+ }, Nl = {
18
+ key: 1,
19
+ class: "hys-ui-table-selection-actions"
20
+ }, Dl = { "aria-live": "polite" }, Wl = ["data-position"], ql = ["tabindex", "aria-label"], Vl = { key: 0 }, jl = { key: 1 }, Il = ["data-column-key", "data-leaf", "colspan", "rowspan", "scope", "aria-sort", "onClick", "onContextmenu"], Ul = {
21
+ key: 1,
22
+ class: "hys-ui-table-sr-only"
23
+ }, Jl = {
24
+ key: 1,
25
+ class: "hys-ui-table-heading"
26
+ }, Xl = { class: "hys-ui-table-label" }, Ql = ["disabled", "onClick"], Yl = { key: 1 }, Gl = {
27
+ key: 2,
28
+ class: "hys-ui-table-sort-controls"
29
+ }, Zl = ["disabled", "aria-label", "aria-pressed", "onClick"], _l = ["disabled", "aria-label", "aria-expanded", "aria-controls", "onClick"], ea = ["aria-label", "aria-valuenow", "aria-valuemin", "aria-valuemax", "onPointerdown", "onKeydown"], ta = {
30
+ key: 0,
31
+ class: "hys-ui-table-message"
32
+ }, la = ["colspan"], aa = { role: "status" }, oa = ["data-row-key", "aria-selected", "onClick", "onDblclick", "onContextmenu"], na = ["disabled", "aria-expanded", "aria-label", "onClick"], ia = {
33
+ key: 3,
34
+ class: "hys-ui-table-cell-content"
35
+ }, sa = ["disabled", "aria-expanded", "aria-label", "onClick"], ra = {
36
+ key: 1,
37
+ class: "hys-ui-table-tree-spacer"
38
+ }, ua = ["tabindex", "aria-describedby", "onPointerenter", "onFocus"], ca = {
39
+ key: 0,
40
+ class: "hys-ui-table-detail"
41
+ }, da = ["colspan"], ya = {
42
+ key: 0,
43
+ class: "hys-ui-table-message"
44
+ }, fa = ["colspan"], va = {
45
+ key: 2,
46
+ class: "hys-ui-table-append"
47
+ }, ma = ["colspan"], pa = { key: 2 }, ha = ["data-column-key"], ka = {
48
+ key: 2,
49
+ class: "hys-ui-table-footer"
50
+ }, wa = ["data-position"], ba = ["id", "aria-label"], ga = { class: "hys-ui-table-filter-actions" }, Ca = ["id"], $a = /* @__PURE__ */ yl({
5
51
  __name: "HysTable",
6
52
  props: {
53
+ popupTransition: {},
54
+ popupTransitionDuration: {},
55
+ locale: {},
7
56
  columns: {},
8
57
  rows: {},
9
- rowKey: { default: "id" },
10
- emptyText: {},
58
+ rowKey: { type: [String, Function], default: "id" },
59
+ emptyText: { default: void 0 },
11
60
  loading: { type: Boolean },
61
+ disabled: { type: Boolean },
12
62
  striped: { type: Boolean },
13
63
  bordered: { type: Boolean },
14
64
  size: { default: "md" },
65
+ tableLayout: { default: "fixed" },
15
66
  caption: {},
16
- rowClassName: {}
67
+ height: {},
68
+ maxHeight: {},
69
+ stickyHeader: { type: Boolean, default: void 0 },
70
+ showHeader: { type: Boolean, default: !0 },
71
+ fit: { type: Boolean, default: !0 },
72
+ scrollbarAlwaysOn: { type: Boolean },
73
+ scrollbarTabindex: { default: 0 },
74
+ headerRowClassName: {},
75
+ headerRowStyle: {},
76
+ rowClassName: {},
77
+ rowStyle: {},
78
+ cellClassName: {},
79
+ cellStyle: {},
80
+ headerCellClassName: {},
81
+ headerCellStyle: {},
82
+ customRow: {},
83
+ customHeaderRow: {},
84
+ customCell: {},
85
+ customHeaderCell: {},
86
+ selectable: { type: [Boolean, Function], default: void 0 },
87
+ selectionType: { default: "checkbox" },
88
+ selectedRowKeys: {},
89
+ defaultSelectedRowKeys: {},
90
+ reserveSelection: { type: Boolean },
91
+ checkStrictly: { type: Boolean, default: !0 },
92
+ selectOnIndeterminate: { type: Boolean, default: !0 },
93
+ selectionActions: { type: Boolean },
94
+ rangeSelection: { type: Boolean },
95
+ hideSelectAll: { type: Boolean },
96
+ selectionColumn: {},
97
+ getSelectionProps: {},
98
+ highlightCurrentRow: { type: Boolean },
99
+ currentRowKey: {},
100
+ defaultCurrentRowKey: {},
101
+ showIndex: { type: Boolean },
102
+ indexMethod: {},
103
+ sort: {},
104
+ sorts: {},
105
+ defaultSort: {},
106
+ multiSort: { type: Boolean },
107
+ sortOrders: {},
108
+ filters: {},
109
+ defaultFilters: {},
110
+ filterColumnKey: {},
111
+ filterPlacement: {},
112
+ appendFilterTo: { type: [String, Boolean] },
113
+ pagination: { type: [Boolean, Object], default: !1 },
114
+ page: {},
115
+ pageSize: {},
116
+ total: {},
117
+ serverMode: { type: Boolean },
118
+ scrollToFirstRowOnChange: { type: Boolean },
119
+ expandable: { type: Boolean },
120
+ expandedRowKeys: {},
121
+ defaultExpandedRowKeys: {},
122
+ defaultExpandAll: { type: Boolean },
123
+ rowExpandable: {},
124
+ expandOnClickRow: { type: Boolean },
125
+ showExpandColumn: { type: Boolean, default: !0 },
126
+ expandColumnTitle: {},
127
+ expandFixed: { type: [Boolean, String] },
128
+ preserveExpandedContent: { type: Boolean },
129
+ treeMode: { type: Boolean },
130
+ childrenKey: { default: "children" },
131
+ hasChildrenKey: { default: "hasChildren" },
132
+ indent: { default: 18 },
133
+ loadChildren: {},
134
+ showSummary: { type: Boolean },
135
+ sumText: { default: "合计" },
136
+ summaryMethod: {},
137
+ spanMethod: {},
138
+ showOverflowTooltip: { type: Boolean },
139
+ tooltipFormatter: {},
140
+ resizable: { type: Boolean },
141
+ columnWidths: {},
142
+ allowDragLastColumn: { type: Boolean, default: !0 }
17
143
  },
18
- emits: ["rowClick", "sortChange"],
19
- setup(t, { emit: z }) {
20
- const v = t, m = z, B = K(), a = A(null), N = D(() => a.value ? [...v.rows].sort((o, i) => String(o[a.value.key] ?? "").localeCompare(String(i[a.value.key] ?? ""), "zh-CN", { numeric: !0 }) * (a.value.direction === "asc" ? 1 : -1)) : v.rows);
21
- function S(o) {
22
- var i;
23
- o.sortable && (a.value = ((i = a.value) == null ? void 0 : i.key) !== o.key ? { key: o.key, direction: "asc" } : a.value.direction === "asc" ? { key: o.key, direction: "desc" } : null, m("sortChange", a.value));
24
- }
25
- return (o, i) => (s(), l("div", T(h(B), {
26
- class: ["hys-ui-table-scroll", [{ "hys-ui-table-striped": t.striped, "hys-ui-table-bordered": t.bordered }, "hys-ui-table-" + t.size]],
27
- "aria-busy": t.loading
144
+ emits: ["rowClick", "rowDblclick", "rowContextmenu", "cellClick", "cellDblclick", "cellContextmenu", "cellMouseEnter", "cellMouseLeave", "headerClick", "headerContextmenu", "update:sort", "update:sorts", "sortChange", "update:filters", "filterChange", "update:selectedRowKeys", "selectionChange", "select", "selectAll", "selectInvert", "selectRange", "update:currentRowKey", "currentChange", "update:expandedRowKeys", "expandChange", "load", "loadError", "childrenChange", "update:filterColumnKey", "filterOpenChange", "update:page", "pageChange", "update:pageSize", "pageSizeChange", "queryChange", "change", "update:columnWidths", "columnResize", "scroll"],
145
+ setup(i, { expose: Lt, emit: Nt }) {
146
+ const r = i, x = Nt, Pe = Bl(), Oe = fl(), le = A(), $ = A(), Y = A(), de = vl(), nt = A(1024), D = tt({}), Ee = A({}), oe = A(), h = F(() => ({
147
+ emptyText: "暂无数据",
148
+ loadingText: "加载中…",
149
+ selectAll: "选择当前页全部行",
150
+ selectRow: "选择第{index}行",
151
+ expandRow: "展开第{index}行",
152
+ collapseRow: "收起第{index}行",
153
+ expand: "展开",
154
+ collapse: "收起",
155
+ filter: "筛选",
156
+ filterPlaceholder: "输入筛选内容",
157
+ reset: "重置",
158
+ apply: "应用",
159
+ retry: "重试",
160
+ retryLabel: "重新加载子行",
161
+ scrollLabel: "表格滚动区域",
162
+ resizeColumn: "调整{label}列宽",
163
+ sortAsc: "{label}升序",
164
+ sortDesc: "{label}降序",
165
+ filterSearch: "搜索筛选项",
166
+ noFilterMatch: "暂无匹配的筛选项",
167
+ invertSelection: "反选当前页",
168
+ clearSelection: "清空选择",
169
+ selected: "已选 {count} 项",
170
+ ...r.locale
171
+ })), ye = (e, l) => e.replace("{index}", String(l)).replace("{label}", String(l)), ke = ({ value: e }) => e;
172
+ function Ke(e) {
173
+ const l = [...r.columns], t = /* @__PURE__ */ new Set();
174
+ for (; l.length; ) {
175
+ const n = l.pop();
176
+ if (!t.has(n)) {
177
+ if (t.add(n), n.type === e) return !0;
178
+ n.children && l.push(...n.children);
179
+ }
180
+ }
181
+ return !1;
182
+ }
183
+ function $e(e) {
184
+ let l = "@hys-" + e;
185
+ const t = /* @__PURE__ */ new Set(), n = [...r.columns], d = /* @__PURE__ */ new Set();
186
+ for (; n.length; ) {
187
+ const a = n.pop();
188
+ d.has(a) || (d.add(a), t.add(a.key), a.children && n.push(...a.children));
189
+ }
190
+ for (; t.has(l); ) l += "_";
191
+ return l;
192
+ }
193
+ const Dt = F(() => {
194
+ var l;
195
+ const e = [];
196
+ return r.selectable && !Ke("selection") && e.push({
197
+ key: $e("selection"),
198
+ type: "selection",
199
+ align: "center",
200
+ width: 48,
201
+ fixed: "left",
202
+ resizable: !1,
203
+ ...r.selectionColumn,
204
+ label: ((l = r.selectionColumn) == null ? void 0 : l.label) ?? "选择"
205
+ }), (r.expandable || Oe.expand) && !r.treeMode && r.showExpandColumn && !Ke("expand") && e.push({
206
+ key: $e("expand"),
207
+ label: r.expandColumnTitle ?? "展开",
208
+ type: "expand",
209
+ align: "center",
210
+ width: 48,
211
+ fixed: r.expandFixed ?? "left",
212
+ resizable: !1
213
+ }), r.showIndex && !Ke("index") && e.push({
214
+ key: $e("index"),
215
+ label: "序号",
216
+ type: "index",
217
+ align: "center",
218
+ width: 64,
219
+ resizable: !1
220
+ }), [...e, ...r.columns].filter(
221
+ (t) => r.showExpandColumn || t.type !== "expand"
222
+ );
223
+ }), m = F(
224
+ () => Ol(
225
+ Dt.value,
226
+ El(nt.value),
227
+ r.showExpandColumn
228
+ )
229
+ ), s = Pl(
230
+ r,
231
+ () => m.value.leaves,
232
+ () => !!Oe.expand,
233
+ (e, ...l) => x(e, ...l)
234
+ ), {
235
+ busy: k,
236
+ display: G,
237
+ selectedKeys: fe,
238
+ selectedSet: He,
239
+ expandedKeys: Le,
240
+ expandedSet: H,
241
+ halfSet: it,
242
+ allSelected: st,
243
+ someSelected: Ne,
244
+ sorts: Z,
245
+ filters: we,
246
+ page: De,
247
+ pageSize: be,
248
+ total: rt,
249
+ currentKey: ut,
250
+ pending: ne,
251
+ loadErrors: Wt,
252
+ query: We
253
+ } = s, ge = F(
254
+ () => {
255
+ var e;
256
+ return (e = m.value.leaves.find((l) => !l.type || l.type === "default")) == null ? void 0 : e.key;
257
+ }
258
+ ), qt = F(
259
+ () => m.value.leaves.some((e) => e.type === "expand")
260
+ ), ct = F(() => {
261
+ if (!r.pagination || s.pagination.value.hideOnSinglePage && rt.value <= be.value)
262
+ return [];
263
+ const e = [
264
+ "top-left",
265
+ "top-center",
266
+ "top-right",
267
+ "bottom-left",
268
+ "bottom-center",
269
+ "bottom-right"
270
+ ];
271
+ return [
272
+ ...new Set(s.pagination.value.position ?? ["bottom-right"])
273
+ ].filter((l) => e.includes(l));
274
+ }), dt = F(() => ({
275
+ page: De.value,
276
+ pageSize: be.value,
277
+ total: rt.value,
278
+ showSizeChanger: s.pagination.value.showSizeChanger ?? !0,
279
+ showQuickJumper: s.pagination.value.showQuickJumper ?? !1,
280
+ showTotal: s.pagination.value.showTotal ?? !0,
281
+ compact: s.pagination.value.compact,
282
+ labels: h.value.paginationLabels,
283
+ pageSizeOptions: s.pagination.value.pageSizeOptions,
284
+ disabled: k.value
285
+ })), qe = Object.freeze({});
286
+ function ie(e) {
287
+ return e ? Object.fromEntries(
288
+ Object.entries(e).filter(
289
+ ([l]) => ![
290
+ "key",
291
+ "ref",
292
+ "innerHTML",
293
+ "textContent",
294
+ "is",
295
+ "colspan",
296
+ "rowspan",
297
+ "scope",
298
+ "data-column-key",
299
+ "data-row-key",
300
+ "aria-selected",
301
+ "aria-sort"
302
+ ].includes(l)
303
+ )
304
+ ) : qe;
305
+ }
306
+ function Vt(e) {
307
+ var t, n, d;
308
+ if (!r.customHeaderCell && !e.column.customHeaderCell)
309
+ return qe;
310
+ const l = m.value.leaves.indexOf(e.leaves[0]);
311
+ return W(
312
+ ie((t = r.customHeaderCell) == null ? void 0 : t.call(r, e.column, l)),
313
+ ie((d = (n = e.column).customHeaderCell) == null ? void 0 : d.call(n, e.column, l))
314
+ );
315
+ }
316
+ function jt(e) {
317
+ var l, t, n;
318
+ return !r.customCell && !e.column.customCell ? qe : W(
319
+ ie((l = r.customCell) == null ? void 0 : l.call(r, e)),
320
+ ie((n = (t = e.column).customCell) == null ? void 0 : n.call(t, e))
321
+ );
322
+ }
323
+ let ve = !1;
324
+ function It(e, l) {
325
+ const t = ve;
326
+ ve = !1, s.toggleRowSelection(e.key, l, t);
327
+ }
328
+ const yt = F(
329
+ () => r.stickyHeader ?? (r.height !== void 0 || r.maxHeight !== void 0)
330
+ ), Ve = F(() => r.columnWidths ?? Ee.value);
331
+ function J(e) {
332
+ var t, n;
333
+ const l = ((t = oe.value) == null ? void 0 : t.key) === e.key ? oe.value.width : ((n = ae.value) == null ? void 0 : n[e.key]) ?? Ve.value[e.key] ?? (typeof e.width == "number" ? e.width : 160);
334
+ return Math.max(
335
+ e.minWidth ?? (e.type && e.type !== "default" ? 36 : 60),
336
+ Math.min(e.maxWidth ?? 2e3, Number.isFinite(l) ? l : 160)
337
+ );
338
+ }
339
+ function Ut(e) {
340
+ var l;
341
+ return ae.value !== void 0 || ((l = oe.value) == null ? void 0 : l.key) === e.key || Ve.value[e.key] !== void 0 || typeof e.width != "string" ? J(e) + "px" : e.width;
342
+ }
343
+ const ae = A(), Ce = A(!1), ft = F(
344
+ () => m.value.leaves.reduce((e, l) => e + J(l), 0)
345
+ ), Jt = F(() => {
346
+ const e = {};
347
+ let l = 0, t = 0;
348
+ for (const n of m.value.leaves)
349
+ n.fixed === "left" && (e[n.key] = { left: l + "px" }, l += D.value[n.key] ?? J(n));
350
+ for (const n of [...m.value.leaves].reverse())
351
+ n.fixed === "right" && (e[n.key] = { right: t + "px" }, t += D.value[n.key] ?? J(n));
352
+ return e;
353
+ });
354
+ function je(e, l = !1) {
355
+ return e.fixed === "left" || e.fixed === "right" ? {
356
+ position: "sticky",
357
+ ...Jt.value[e.key],
358
+ zIndex: l ? 6 : 2
359
+ } : {};
360
+ }
361
+ function Xt(e) {
362
+ const l = e.column, t = e.fixed === "right" ? e.leaves.at(-1) : e.leaves[0];
363
+ return {
364
+ ...typeof r.headerCellStyle == "function" ? r.headerCellStyle(l, m.value.leaves.indexOf(t)) : r.headerCellStyle,
365
+ ...je(t, !0),
366
+ textAlign: l.headerAlign ?? l.align,
367
+ "--hys-ui-table-justify": (l.headerAlign ?? l.align) === "right" ? "flex-end" : (l.headerAlign ?? l.align) === "center" ? "center" : "flex-start"
368
+ };
369
+ }
370
+ const vt = (e) => typeof e == "number" ? Number.isFinite(e) && e >= 0 ? e + "px" : void 0 : e, Ie = A(/* @__PURE__ */ new Set());
371
+ te(
372
+ Le,
373
+ () => {
374
+ const e = new Set(Ie.value);
375
+ for (const l of Le.value) e.add(Kl(l));
376
+ for (const l of e)
377
+ s.graph.value.map.has(l) || e.delete(l);
378
+ Ie.value = e;
379
+ },
380
+ { immediate: !0 }
381
+ );
382
+ function mt(e) {
383
+ return !!Oe.expand && s.canExpand(e) && (H.value.has(e.token) || r.preserveExpandedContent && Ie.value.has(e.token));
384
+ }
385
+ function L(e, l, t, n) {
386
+ return {
387
+ row: e,
388
+ column: l,
389
+ value: Be(e, l.dataIndex ?? l.key),
390
+ rowIndex: t,
391
+ columnIndex: n
392
+ };
393
+ }
394
+ function Qt(e) {
395
+ return {
396
+ ...typeof r.cellStyle == "function" ? r.cellStyle(e) : r.cellStyle,
397
+ ...typeof e.column.cellStyle == "function" ? e.column.cellStyle(e) : e.column.cellStyle,
398
+ ...je(e.column),
399
+ textAlign: e.column.align,
400
+ "--hys-ui-table-justify": e.column.align === "right" ? "flex-end" : e.column.align === "center" ? "center" : "flex-start"
401
+ };
402
+ }
403
+ function Yt(e) {
404
+ return [
405
+ e.column.className,
406
+ typeof r.cellClassName == "function" ? r.cellClassName(e) : r.cellClassName
407
+ ];
408
+ }
409
+ function Ue(e) {
410
+ if (e == null) return "";
411
+ if (typeof e != "object") return String(e);
412
+ try {
413
+ return JSON.stringify(e);
414
+ } catch {
415
+ return String(e);
416
+ }
417
+ }
418
+ function Gt(e) {
419
+ return e.column.formatter ? e.column.formatter(e.row, e.column, e.value, e.rowIndex) : Ue(e.value);
420
+ }
421
+ function Zt(e, l, t) {
422
+ k.value || (x("rowClick", e.row, l, t), r.highlightCurrentRow && s.setCurrentRow(e.key), r.expandOnClickRow && !t.target.closest(
423
+ "button,input,a,textarea,select,[contenteditable]"
424
+ ) && s.toggleRowExpansion(e.key));
425
+ }
426
+ const _t = F(() => {
427
+ var n;
428
+ const e = /* @__PURE__ */ new Map(), l = /* @__PURE__ */ new Set(), t = m.value.leaves;
429
+ for (let d = 0; d < G.value.length; d++)
430
+ for (let a = 0; a < t.length; a++) {
431
+ const f = d + ":" + a, y = t[a];
432
+ if (l.has(f)) {
433
+ e.set(f, { rowspan: 0, colspan: 0 });
434
+ continue;
435
+ }
436
+ const w = y.type && y.type !== "default" || (n = r.spanMethod) == null ? void 0 : n.call(r, L(G.value[d].row, y, d, a)), P = Array.isArray(w) ? { rowspan: w[0], colspan: w[1] } : w;
437
+ let z = Math.max(
438
+ 0,
439
+ Math.min(G.value.length - d, Math.floor((P == null ? void 0 : P.rowspan) ?? 1))
440
+ ), R = Math.max(
441
+ 0,
442
+ Math.min(t.length - a, Math.floor((P == null ? void 0 : P.colspan) ?? 1))
443
+ );
444
+ Number.isFinite(z) || (z = 1), Number.isFinite(R) || (R = 1);
445
+ for (let p = 0; p < z - 1; p++)
446
+ if (mt(G.value[d + p]) && H.value.has(G.value[d + p].token)) {
447
+ z = p + 1;
448
+ break;
449
+ }
450
+ for (let p = 1; p < R; p++)
451
+ if (t[a + p].fixed !== y.fixed || t[a + p].type && t[a + p].type !== "default") {
452
+ R = p;
453
+ break;
454
+ }
455
+ e.set(f, { rowspan: z, colspan: R });
456
+ for (let p = 0; p < z; p++)
457
+ for (let v = 0; v < R; v++)
458
+ (p || v) && l.add(d + p + ":" + (a + v));
459
+ }
460
+ return e;
461
+ }), Se = (e, l) => _t.value.get(e + ":" + l) ?? { rowspan: 1, colspan: 1 }, pt = F(() => {
462
+ var t;
463
+ const e = s.filteredRows.value, l = (t = r.summaryMethod) == null ? void 0 : t.call(r, { columns: m.value.leaves, rows: e });
464
+ return m.value.leaves.map(
465
+ (n, d) => l ? Array.isArray(l) ? l[d] : l[n.key] : n.summary ? $l(e, n) : n.key === ge.value ? r.sumText : ""
466
+ );
467
+ }), Je = A(), Xe = A(), b = tt(), _ = A([]), ht = A(null), se = F(
468
+ () => r.filterColumnKey === void 0 ? ht.value : r.filterColumnKey
469
+ );
470
+ let Qe = !1;
471
+ async function xe(e, l = !1) {
472
+ var t;
473
+ return e !== null && (k.value || !s.live.value || !m.value.leaves.some(
474
+ (n) => n.key === e && (n.filterable || n.filters)
475
+ )) ? !1 : (Qe = l, ht.value = e, x("update:filterColumnKey", e), se.value === e && Re(), await he(), se.value === e && Re(), await he(), s.live.value && se.value === e && (e === null ? !j.value : j.value && ((t = b.value) == null ? void 0 : t.key) === e));
476
+ }
477
+ const M = $t(Je, Xe, {
478
+ get placement() {
479
+ return r.filterPlacement ?? "bottom-end";
480
+ },
481
+ width: () => 260,
482
+ requestOpen(e, l) {
483
+ var t;
484
+ return xe(
485
+ e ? ((t = b.value) == null ? void 0 : t.key) ?? null : null,
486
+ l
487
+ ), !1;
488
+ }
489
+ }), j = M.open, el = M.style;
490
+ function Re() {
491
+ var d, a, f;
492
+ const e = se.value, l = m.value.leaves.find(
493
+ (y) => y.key === e && (y.filterable || y.filters)
494
+ );
495
+ if (k.value || !s.live.value || !l) {
496
+ M.close(Qe, !0), Qe = !1;
497
+ return;
498
+ }
499
+ const t = (a = Array.from(
500
+ ((d = Y.value) == null ? void 0 : d.querySelectorAll("th[data-leaf]")) ?? []
501
+ ).find((y) => y.dataset.columnKey === e)) == null ? void 0 : a.querySelector(".hys-ui-table-filter");
502
+ if (!t) {
503
+ M.close(!1, !0);
504
+ return;
505
+ }
506
+ const n = ((f = b.value) == null ? void 0 : f.key) !== e || !j.value;
507
+ Je.value = t, b.value = l, n && (_.value = [...we.value[l.key] ?? []]), M.show(!0), he(() => {
508
+ var y, w;
509
+ n && j.value && se.value === e && ((w = (y = Xe.value) == null ? void 0 : y.querySelector('input,button,[tabindex="0"]')) == null || w.focus());
510
+ });
511
+ }
512
+ te(
513
+ [
514
+ se,
515
+ k,
516
+ s.live,
517
+ () => m.value.leaves,
518
+ () => r.showHeader
519
+ ],
520
+ Re,
521
+ { immediate: !0, flush: "post" }
522
+ ), te(
523
+ () => {
524
+ var e;
525
+ return j.value ? ((e = b.value) == null ? void 0 : e.key) ?? null : null;
526
+ },
527
+ (e) => x("filterOpenChange", e)
528
+ );
529
+ async function tl(e, l) {
530
+ var t;
531
+ if (!k.value) {
532
+ if (j.value && ((t = b.value) == null ? void 0 : t.key) === e.key) {
533
+ M.close();
534
+ return;
535
+ }
536
+ Je.value = l.currentTarget, await xe(e.key);
537
+ }
538
+ }
539
+ function kt(e) {
540
+ _.value = [...e];
541
+ }
542
+ function Te(e) {
543
+ b.value && s.setFilter(b.value.key, _.value), (e == null ? void 0 : e.closeDropdown) !== !1 && M.close(!0);
544
+ }
545
+ function wt(e) {
546
+ var n;
547
+ const l = b.value;
548
+ _.value = l != null && l.filterResetToDefault ? [
549
+ ...((n = r.defaultFilters) == null ? void 0 : n[l.key]) ?? l.defaultFilterValue ?? []
550
+ ] : [];
551
+ const t = e;
552
+ (t == null ? void 0 : t.confirm) !== !1 ? Te(e) : (t == null ? void 0 : t.closeDropdown) === !0 && M.close(!0);
553
+ }
554
+ const bt = A(), gt = A(), ee = tt(), N = $t(bt, gt, {
555
+ placement: "top-start"
556
+ }), Ct = N.open, ll = N.style;
557
+ let me;
558
+ function al() {
559
+ clearTimeout(me);
560
+ }
561
+ function Ye() {
562
+ clearTimeout(me), me = setTimeout(() => N.close(), 80);
563
+ }
564
+ function St(e, l) {
565
+ clearTimeout(me);
566
+ const t = l.currentTarget;
567
+ k.value || N.restoringFocus.value || !(e.column.showOverflowTooltip ?? r.showOverflowTooltip) || t.scrollWidth <= t.clientWidth + 1 && t.scrollHeight <= t.clientHeight + 1 || (bt.value = t, ee.value = e, N.show());
568
+ }
569
+ const ol = F(() => {
570
+ var l;
571
+ const e = ee.value;
572
+ return e ? ((l = e.column.tooltipFormatter ?? r.tooltipFormatter) == null ? void 0 : l(e)) ?? Ue(e.value) : "";
573
+ });
574
+ let X, Ge = 0, C, Ze = 0, _e = 0;
575
+ function xt() {
576
+ var t, n;
577
+ if (!s.live.value || !le.value) return;
578
+ nt.value = le.value.clientWidth;
579
+ const e = {}, l = (t = Y.value) == null ? void 0 : t.querySelector(
580
+ "tbody tr:not(.hys-ui-table-message):not(.hys-ui-table-detail)"
581
+ );
582
+ for (const d of m.value.leaves) {
583
+ const a = Array.from(
584
+ ((n = Y.value) == null ? void 0 : n.querySelectorAll("th[data-leaf]")) ?? []
585
+ ).find((y) => y.dataset.columnKey === d.key), f = a ?? Array.from(
586
+ (l == null ? void 0 : l.querySelectorAll(
587
+ "td[data-column-key],th[data-column-key]"
588
+ )) ?? []
589
+ ).find((y) => y.dataset.columnKey === d.key);
590
+ f && (e[d.key] = f.getBoundingClientRect().width);
591
+ }
592
+ JSON.stringify(e) !== JSON.stringify(D.value) && (D.value = e);
593
+ }
594
+ function re() {
595
+ cancelAnimationFrame(Ge), Ge = requestAnimationFrame(xt);
596
+ }
597
+ async function nl() {
598
+ await he(), xt();
599
+ }
600
+ function I() {
601
+ var e, l;
602
+ cancelAnimationFrame(Ze), C && ((l = (e = $.value) == null ? void 0 : e.hasPointerCapture) != null && l.call(e, C.pointerId)) && $.value.releasePointerCapture(C.pointerId), C = void 0, oe.value = void 0, ae.value = void 0, document.removeEventListener("pointermove", zt, !0), document.removeEventListener("pointerup", Mt, !0), document.removeEventListener("pointercancel", ze, !0), document.removeEventListener("keydown", Rt, !0), window.removeEventListener("blur", ze);
603
+ }
604
+ function ze() {
605
+ I();
606
+ }
607
+ function Rt(e) {
608
+ e.key === "Escape" && C && (e.preventDefault(), e.stopImmediatePropagation(), I());
609
+ }
610
+ function Tt() {
611
+ if (!C) return;
612
+ const e = getComputedStyle(le.value).direction === "rtl" ? -1 : 1;
613
+ oe.value = {
614
+ key: C.column.key,
615
+ width: Math.max(
616
+ C.column.minWidth ?? 60,
617
+ Math.min(
618
+ C.column.maxWidth ?? 2e3,
619
+ C.width + (_e - C.start) * e
620
+ )
621
+ )
622
+ };
623
+ }
624
+ function zt(e) {
625
+ !C || e.pointerId !== C.pointerId || (_e = e.clientX, cancelAnimationFrame(Ze), Ze = requestAnimationFrame(Tt));
626
+ }
627
+ function Ft(e, l, t, n) {
628
+ if (k.value || !s.live.value) return;
629
+ const d = Math.round(
630
+ Math.max(e.minWidth ?? 60, Math.min(e.maxWidth ?? 2e3, l))
631
+ );
632
+ if (d === t) return;
633
+ const a = {
634
+ ...Ve.value,
635
+ ...D.value,
636
+ ...n,
637
+ [e.key]: d
638
+ };
639
+ Ee.value = a, x("update:columnWidths", a), r.columnWidths === void 0 && (Ce.value = !0), x("columnResize", e, d, t), re();
640
+ }
641
+ function Mt(e) {
642
+ var a;
643
+ if (!C || e.pointerId !== C.pointerId) return;
644
+ _e = e.clientX, Tt();
645
+ const { column: l, width: t } = C, n = ((a = oe.value) == null ? void 0 : a.width) ?? t, d = ae.value;
646
+ I(), Ft(l, n, t, d);
647
+ }
648
+ function il(e, l) {
649
+ var n, d;
650
+ if (k.value || l.button !== 0 || !s.live.value) return;
651
+ M.close(), N.close(), I();
652
+ const t = D.value[e.key] ?? J(e);
653
+ ae.value = { ...D.value }, C = {
654
+ column: e,
655
+ start: l.clientX,
656
+ width: t,
657
+ pointerId: l.pointerId
658
+ }, (d = (n = $.value) == null ? void 0 : n.setPointerCapture) == null || d.call(n, l.pointerId), document.addEventListener("pointermove", zt, !0), document.addEventListener("pointerup", Mt, !0), document.addEventListener("pointercancel", ze, !0), document.addEventListener("keydown", Rt, !0), window.addEventListener("blur", ze);
659
+ }
660
+ function sl() {
661
+ k.value || (I(), Ee.value = {}, Ce.value = !1, x("update:columnWidths", {}), re());
662
+ }
663
+ function et(e, l) {
664
+ const t = m.value.leaves.find((n) => n.key === e);
665
+ t && Number.isFinite(l) && Ft(t, l, D.value[e] ?? J(t));
666
+ }
667
+ function rl(e) {
668
+ $.value && (N.close(), x(
669
+ "scroll",
670
+ {
671
+ scrollLeft: $.value.scrollLeft,
672
+ scrollTop: $.value.scrollTop
673
+ },
674
+ e
675
+ ));
676
+ }
677
+ function At() {
678
+ X == null || X.disconnect(), typeof ResizeObserver < "u" && (X = new ResizeObserver(re), le.value && X.observe(le.value), Y.value && X.observe(Y.value)), re();
679
+ }
680
+ function Bt() {
681
+ X == null || X.disconnect(), cancelAnimationFrame(Ge), I(), clearTimeout(me), M.close(), N.close();
682
+ }
683
+ te(k, (e) => {
684
+ e && (I(), M.close(), N.close());
685
+ }), te(
686
+ () => r.columnWidths,
687
+ () => {
688
+ C && I(), re();
689
+ },
690
+ { deep: !0 }
691
+ ), te(
692
+ () => m.value.leaves.map((e) => e.key).join("\0"),
693
+ () => {
694
+ b.value && !m.value.leaves.some((e) => {
695
+ var l;
696
+ return e.key === ((l = b.value) == null ? void 0 : l.key);
697
+ }) && M.close(), ee.value && !m.value.leaves.some((e) => {
698
+ var l;
699
+ return e.key === ((l = ee.value) == null ? void 0 : l.column.key);
700
+ }) && N.close(), C && !m.value.leaves.some((e) => e.key === (C == null ? void 0 : C.column.key)) && I();
701
+ }
702
+ ), te(
703
+ () => r.columns,
704
+ () => {
705
+ I(), M.close(), N.close();
706
+ },
707
+ { deep: !0 }
708
+ ), ml(() => {
709
+ At(), Re();
710
+ }), pl(At), hl(re), kl(Bt), wl(Bt), te(
711
+ [Z, we, De, be],
712
+ () => {
713
+ r.scrollToFirstRowOnChange && $.value && ($.value.scrollTop = 0);
714
+ },
715
+ { flush: "post" }
716
+ );
717
+ function Fe(e) {
718
+ const l = $.value;
719
+ !s.live.value || !l || (typeof l.scrollTo == "function" ? l.scrollTo(e) : (e.top !== void 0 && (l.scrollTop = e.top), e.left !== void 0 && (l.scrollLeft = e.left)));
720
+ }
721
+ async function ul(e, l = {}) {
722
+ var p, v, ue;
723
+ await he();
724
+ const t = s.find(e), n = $.value;
725
+ if (!s.live.value || !n || !t || r.loading) return !1;
726
+ const d = G.value.findIndex((dl) => dl.token === t.token), a = Array.from(
727
+ ((p = Y.value) == null ? void 0 : p.querySelectorAll("tbody tr[data-row-key]")) ?? []
728
+ )[d];
729
+ if (d < 0 || !a) return !1;
730
+ const f = n.getBoundingClientRect(), y = a.getBoundingClientRect(), w = yt.value ? ((ue = (v = Y.value) == null ? void 0 : v.querySelector("thead")) == null ? void 0 : ue.getBoundingClientRect().height) ?? 0 : 0, P = y.top - f.top - n.clientTop + n.scrollTop, z = Math.max(0, n.clientHeight - w);
731
+ let R = P - w;
732
+ if (l.block === "center") R -= (z - y.height) / 2;
733
+ else if (l.block === "end") R -= z - y.height;
734
+ else if (!l.block || l.block === "nearest") {
735
+ if (y.top >= f.top + n.clientTop + w && y.bottom <= f.top + n.clientTop + n.clientHeight)
736
+ return !0;
737
+ y.top >= f.top + n.clientTop + w && (R -= z - y.height);
738
+ }
739
+ return Fe({ top: Math.max(0, R), behavior: l.behavior }), !0;
740
+ }
741
+ const cl = F(() => m.value.leaves);
742
+ return Lt({
743
+ element: le,
744
+ viewport: $,
745
+ selectedKeys: fe,
746
+ currentRow: s.currentRow,
747
+ expandedKeys: Le,
748
+ query: We,
749
+ columns: cl,
750
+ clearSelection: s.clearSelection,
751
+ getSelectionRows: s.getSelectionRows,
752
+ getHalfSelectionRows: s.getHalfSelectionRows,
753
+ toggleRowSelection: s.toggleRowSelection,
754
+ toggleAllSelection: s.toggleAllSelection,
755
+ invertSelection: s.invertSelection,
756
+ setCurrentRow: s.setCurrentRow,
757
+ toggleRowExpansion: s.toggleRowExpansion,
758
+ loadRow: s.loadRow,
759
+ updateKeyChildren: s.updateKeyChildren,
760
+ clearSort: () => s.setSort(null),
761
+ setSort: s.setSort,
762
+ clearFilter: s.clearFilter,
763
+ setFilter: s.setFilter,
764
+ showFilter: (e) => xe(e),
765
+ hideFilter: () => xe(null, !0),
766
+ setPage: s.requestPage,
767
+ resizeColumn: et,
768
+ resetColumnWidths: sl,
769
+ doLayout: nl,
770
+ scrollTo: Fe,
771
+ setScrollTop: (e) => {
772
+ Number.isFinite(e) && Fe({ top: Math.max(0, e) });
773
+ },
774
+ setScrollLeft: (e) => {
775
+ Number.isFinite(e) && Fe({ left: Math.max(0, e) });
776
+ },
777
+ scrollToRow: ul
778
+ }), (e, l) => (u(), c("div", W({
779
+ ref_key: "element",
780
+ ref: le
781
+ }, o(Pe), {
782
+ class: ["hys-ui-table", [
783
+ "hys-ui-table-" + i.size,
784
+ {
785
+ "hys-ui-table-striped": i.striped,
786
+ "hys-ui-table-bordered": i.bordered,
787
+ "hys-ui-table-sticky": yt.value
788
+ }
789
+ ]],
790
+ "aria-busy": i.loading || void 0
28
791
  }), [
29
- d("table", U, [
30
- t.caption ? (s(), l("caption", F, c(t.caption), 1)) : C("", !0),
31
- d("thead", null, [
32
- d("tr", null, [
33
- (s(!0), l(u, null, b(t.columns, (e) => {
34
- var r, y, n;
35
- return s(), l("th", {
36
- key: e.key,
37
- scope: "col",
38
- "aria-sort": e.sortable ? ((r = a.value) == null ? void 0 : r.key) === e.key ? a.value.direction === "asc" ? "ascending" : "descending" : "none" : void 0,
39
- style: f({ width: typeof e.width == "number" ? e.width + "px" : e.width, textAlign: e.align })
40
- }, [
41
- e.sortable ? (s(), l("button", {
42
- key: 0,
43
- type: "button",
44
- class: "hys-ui-table-sort",
45
- onClick: (M) => S(e)
46
- }, [
47
- k(c(e.label), 1),
48
- (s(), x(V(((y = a.value) == null ? void 0 : y.key) !== e.key ? h(p) : a.value.direction === "desc" ? h(E) : h(H)), {
49
- size: 13,
50
- "aria-hidden": "true",
51
- class: w({ "hys-ui-table-sorted": ((n = a.value) == null ? void 0 : n.key) === e.key })
52
- }, null, 8, ["class"]))
53
- ], 8, P)) : (s(), l(u, { key: 1 }, [
54
- k(c(e.label), 1)
55
- ], 64))
56
- ], 12, L);
792
+ e.$slots.title ? (u(), c("div", Ll, [
793
+ S(e.$slots, "title", {
794
+ rows: o(s).filteredRows.value,
795
+ query: o(We)
796
+ }, void 0, !0)
797
+ ])) : g("", !0),
798
+ i.selectionActions || e.$slots.selection ? (u(), c("div", Nl, [
799
+ S(e.$slots, "selection", {
800
+ rows: o(s).getSelectionRows(),
801
+ keys: o(fe),
802
+ selectAll: () => o(s).toggleAllSelection(!0),
803
+ invert: o(s).invertSelection,
804
+ clear: o(s).clearSelection
805
+ }, () => [
806
+ T("span", Dl, O(h.value.selected.replace("{count}", String(o(fe).length))), 1),
807
+ i.selectionType !== "radio" ? (u(), B(ce, {
808
+ key: 0,
809
+ size: "sm",
810
+ variant: "secondary",
811
+ disabled: o(k),
812
+ onClick: l[0] || (l[0] = (t) => o(s).toggleAllSelection(!0))
813
+ }, {
814
+ default: U(() => [
815
+ q(O(h.value.selectAll), 1)
816
+ ]),
817
+ _: 1
818
+ }, 8, ["disabled"])) : g("", !0),
819
+ i.selectionType !== "radio" ? (u(), B(ce, {
820
+ key: 1,
821
+ size: "sm",
822
+ variant: "secondary",
823
+ disabled: o(k),
824
+ onClick: o(s).invertSelection
825
+ }, {
826
+ default: U(() => [
827
+ q(O(h.value.invertSelection), 1)
828
+ ]),
829
+ _: 1
830
+ }, 8, ["disabled", "onClick"])) : g("", !0),
831
+ K(ce, {
832
+ size: "sm",
833
+ variant: "ghost",
834
+ disabled: o(k) || !o(fe).length,
835
+ onClick: o(s).clearSelection
836
+ }, {
837
+ default: U(() => [
838
+ q(O(h.value.clearSelection), 1)
839
+ ]),
840
+ _: 1
841
+ }, 8, ["disabled", "onClick"])
842
+ ], !0)
843
+ ])) : g("", !0),
844
+ (u(!0), c(E, null, Q(ct.value.filter(
845
+ (t) => t.startsWith("top-")
846
+ ), (t) => (u(), c("div", {
847
+ key: t,
848
+ class: "hys-ui-table-pagination",
849
+ "data-position": t
850
+ }, [
851
+ K(Kt, W({ ref_for: !0 }, dt.value, {
852
+ onChange: l[1] || (l[1] = (n) => o(s).requestPage(n)),
853
+ onPageSizeChange: o(s).changeSize
854
+ }), null, 16, ["onPageSizeChange"])
855
+ ], 8, Wl))), 128)),
856
+ T("div", {
857
+ ref_key: "viewport",
858
+ ref: $,
859
+ class: "hys-ui-table-scroll",
860
+ style: pe({
861
+ height: vt(i.height),
862
+ maxHeight: vt(i.maxHeight),
863
+ overflowY: i.scrollbarAlwaysOn ? "scroll" : void 0
864
+ }),
865
+ tabindex: i.scrollbarTabindex,
866
+ "aria-label": i.caption || h.value.scrollLabel,
867
+ onScroll: rl
868
+ }, [
869
+ T("table", {
870
+ ref_key: "table",
871
+ ref: Y,
872
+ class: "hys-ui-data-table",
873
+ style: pe({
874
+ minWidth: ft.value + "px",
875
+ tableLayout: Ce.value || ae.value ? "fixed" : i.tableLayout,
876
+ width: i.fit && !Ce.value && !ae.value && !Object.keys(i.columnWidths ?? {}).length ? "100%" : ft.value + "px"
877
+ })
878
+ }, [
879
+ i.caption ? (u(), c("caption", Vl, O(i.caption), 1)) : g("", !0),
880
+ T("colgroup", null, [
881
+ (u(!0), c(E, null, Q(m.value.leaves, (t) => (u(), c("col", {
882
+ key: t.key,
883
+ style: pe({ width: Ut(t) })
884
+ }, null, 4))), 128))
885
+ ]),
886
+ i.showHeader ? (u(), c("thead", jl, [
887
+ (u(!0), c(E, null, Q(m.value.headers, (t, n) => {
888
+ var d;
889
+ return u(), c("tr", W(
890
+ {
891
+ key: n,
892
+ class: typeof i.headerRowClassName == "function" ? i.headerRowClassName(
893
+ t.map((a) => a.column),
894
+ n
895
+ ) : i.headerRowClassName,
896
+ style: typeof i.headerRowStyle == "function" ? i.headerRowStyle(
897
+ t.map((a) => a.column),
898
+ n
899
+ ) : i.headerRowStyle
900
+ },
901
+ { ref_for: !0 },
902
+ ie(
903
+ (d = i.customHeaderRow) == null ? void 0 : d.call(
904
+ i,
905
+ t.map((a) => a.column),
906
+ n
907
+ )
908
+ )
909
+ ), [
910
+ (u(!0), c(E, null, Q(t, (a) => {
911
+ var f, y, w, P, z, R, p;
912
+ return u(), c("th", W({
913
+ key: a.key
914
+ }, { ref_for: !0 }, Vt(a), {
915
+ "data-column-key": a.column.key,
916
+ "data-leaf": a.column.children ? void 0 : "",
917
+ colspan: a.colspan,
918
+ rowspan: a.rowspan,
919
+ scope: a.column.children ? "colgroup" : "col",
920
+ class: [
921
+ a.column.headerClassName,
922
+ typeof i.headerCellClassName == "function" ? i.headerCellClassName(
923
+ a.column,
924
+ m.value.leaves.indexOf(a.leaves[0])
925
+ ) : i.headerCellClassName
926
+ ],
927
+ style: Xt(a),
928
+ "aria-sort": a.column.sortable ? ((f = o(Z).find((v) => v.key === a.column.key)) == null ? void 0 : f.direction) === "asc" ? "ascending" : ((y = o(Z).find((v) => v.key === a.column.key)) == null ? void 0 : y.direction) === "desc" ? "descending" : "none" : void 0,
929
+ onClick: (v) => x("headerClick", a.column, v),
930
+ onContextmenu: (v) => x("headerContextmenu", a.column, v)
931
+ }), [
932
+ a.column.type === "selection" ? S(e.$slots, "selection-header", {
933
+ column: a.column,
934
+ checked: o(st),
935
+ indeterminate: o(Ne),
936
+ disabled: o(k) || !o(s).graph.value.all.some(o(s).eligible),
937
+ toggle: o(s).toggleAllSelection
938
+ }, () => [
939
+ a.column.type === "selection" && i.selectionType !== "radio" && !i.hideSelectAll ? (u(), B(Et, {
940
+ key: 0,
941
+ "model-value": o(st),
942
+ indeterminate: o(Ne),
943
+ disabled: o(k) || !o(s).graph.value.all.some(o(s).eligible),
944
+ "aria-label": h.value.selectAll,
945
+ onClick: l[2] || (l[2] = V(() => {
946
+ }, ["stop"])),
947
+ "onUpdate:modelValue": l[3] || (l[3] = (v) => o(s).toggleAllSelection(
948
+ o(Ne) && !i.selectOnIndeterminate ? !1 : v === !0
949
+ ))
950
+ }, {
951
+ default: U(() => {
952
+ var v;
953
+ return [
954
+ (v = i.selectionColumn) != null && v.label ? (u(), c(E, { key: 0 }, [
955
+ q(O(i.selectionColumn.label), 1)
956
+ ], 64)) : g("", !0)
957
+ ];
958
+ }),
959
+ _: 1
960
+ }, 8, ["model-value", "indeterminate", "disabled", "aria-label"])) : a.column.type === "selection" ? (u(), c("span", Ul, "选择")) : g("", !0)
961
+ ], !0, 0) : (u(), c("div", Jl, [
962
+ T("div", Xl, [
963
+ a.column.sortable ? (u(), c("button", {
964
+ key: 0,
965
+ type: "button",
966
+ class: "hys-ui-table-sort",
967
+ disabled: o(k),
968
+ onClick: (v) => o(s).toggleSort(a.column)
969
+ }, [
970
+ S(e.$slots, "header-" + a.column.key, {
971
+ column: a.column,
972
+ sorts: o(Z)
973
+ }, () => [
974
+ S(e.$slots, "header-cell", {
975
+ column: a.column,
976
+ sorts: o(Z)
977
+ }, () => [
978
+ q(O(a.column.label), 1)
979
+ ], !0)
980
+ ], !0)
981
+ ], 8, Ql)) : (u(), c("span", Yl, [
982
+ S(e.$slots, "header-" + a.column.key, {
983
+ column: a.column,
984
+ sorts: o(Z)
985
+ }, () => [
986
+ S(e.$slots, "header-cell", {
987
+ column: a.column,
988
+ sorts: o(Z)
989
+ }, () => [
990
+ q(O(a.column.label), 1)
991
+ ], !0)
992
+ ], !0)
993
+ ])),
994
+ a.column.sortable ? (u(), c("span", Gl, [
995
+ (u(), c(E, null, Q(["asc", "desc"], (v) => T("button", {
996
+ key: v,
997
+ type: "button",
998
+ disabled: o(k),
999
+ "aria-label": ye(
1000
+ v === "asc" ? h.value.sortAsc : h.value.sortDesc,
1001
+ a.column.label
1002
+ ),
1003
+ "aria-pressed": o(Z).some(
1004
+ (ue) => ue.key === a.column.key && ue.direction === v
1005
+ ),
1006
+ onClick: (ue) => o(s).toggleSort(a.column, v)
1007
+ }, [
1008
+ (u(), B(Me(v === "asc" ? o(Rl) : o(at)), {
1009
+ size: 12,
1010
+ "aria-hidden": "true"
1011
+ }))
1012
+ ], 8, Zl)), 64))
1013
+ ])) : g("", !0)
1014
+ ]),
1015
+ a.column.filterable || a.column.filters ? (u(), c("button", {
1016
+ key: 0,
1017
+ type: "button",
1018
+ class: Ae(["hys-ui-table-filter", {
1019
+ "hys-ui-table-filter-active": !!((w = o(we)[a.column.key]) != null && w.length)
1020
+ }]),
1021
+ disabled: o(k),
1022
+ "aria-label": h.value.filter + a.column.label,
1023
+ "aria-expanded": o(j) && ((P = b.value) == null ? void 0 : P.key) === a.column.key,
1024
+ "aria-controls": o(de) + "-filter",
1025
+ onClick: V((v) => tl(a.column, v), ["stop"])
1026
+ }, [
1027
+ S(e.$slots, "filter-icon", {
1028
+ column: a.column,
1029
+ filtered: !!((z = o(we)[a.column.key]) != null && z.length),
1030
+ open: o(j) && ((R = b.value) == null ? void 0 : R.key) === a.column.key
1031
+ }, () => [
1032
+ K(o(Tl), {
1033
+ size: 14,
1034
+ "aria-hidden": "true"
1035
+ })
1036
+ ], !0)
1037
+ ], 10, _l)) : g("", !0),
1038
+ !a.column.children && (a.column.resizable ?? i.resizable) && (i.allowDragLastColumn || a.column.key !== ((p = m.value.leaves.at(-1)) == null ? void 0 : p.key)) && (!a.column.type || a.column.type === "default") ? (u(), c("span", {
1039
+ key: 1,
1040
+ class: "hys-ui-table-resize",
1041
+ role: "separator",
1042
+ "aria-orientation": "vertical",
1043
+ "aria-label": ye(h.value.resizeColumn, a.column.label),
1044
+ tabindex: "0",
1045
+ "aria-valuenow": Math.round(
1046
+ D.value[a.column.key] ?? J(a.column)
1047
+ ),
1048
+ "aria-valuemin": a.column.minWidth ?? 60,
1049
+ "aria-valuemax": a.column.maxWidth ?? 2e3,
1050
+ onPointerdown: V((v) => il(a.column, v), ["prevent", "stop"]),
1051
+ onKeydown: [
1052
+ lt(V((v) => et(
1053
+ a.column.key,
1054
+ (D.value[a.column.key] ?? J(a.column)) - 10
1055
+ ), ["prevent"]), ["left"]),
1056
+ lt(V((v) => et(
1057
+ a.column.key,
1058
+ (D.value[a.column.key] ?? J(a.column)) + 10
1059
+ ), ["prevent"]), ["right"])
1060
+ ]
1061
+ }, null, 40, ea)) : g("", !0)
1062
+ ]))
1063
+ ], 16, Il);
1064
+ }), 128))
1065
+ ], 16);
57
1066
  }), 128))
58
- ])
59
- ]),
60
- d("tbody", null, [
61
- t.loading ? (s(), l("tr", j, [
62
- d("td", {
63
- colspan: t.columns.length
64
- }, [
65
- g(o.$slots, "loading", {}, () => [
66
- i[0] || (i[0] = k("加载中…", -1))
67
- ], !0)
68
- ], 8, q)
69
- ])) : (s(), l(u, { key: 1 }, [
70
- (s(!0), l(u, null, b(N.value, (e, r) => {
71
- var y;
72
- return s(), l("tr", {
73
- key: String(e[t.rowKey] ?? r),
74
- class: w((y = t.rowClassName) == null ? void 0 : y.call(t, e, r)),
75
- onClick: (n) => m("rowClick", e)
1067
+ ])) : g("", !0),
1068
+ T("tbody", null, [
1069
+ i.loading ? (u(), c("tr", ta, [
1070
+ T("td", {
1071
+ colspan: Math.max(1, m.value.leaves.length)
76
1072
  }, [
77
- (s(!0), l(u, null, b(t.columns, (n) => (s(), l("td", {
78
- key: n.key,
79
- style: f({ textAlign: n.align })
1073
+ T("div", aa, [
1074
+ S(e.$slots, "loading", {}, () => [
1075
+ K(o(ot), {
1076
+ class: "hys-ui-table-spinner",
1077
+ size: 18
1078
+ }),
1079
+ q(O(h.value.loadingText), 1)
1080
+ ], !0)
1081
+ ])
1082
+ ], 8, la)
1083
+ ])) : (u(), c(E, { key: 1 }, [
1084
+ (u(!0), c(E, null, Q(o(G), (t, n) => {
1085
+ var d;
1086
+ return u(), c(E, {
1087
+ key: t.token
1088
+ }, [
1089
+ T("tr", W({ ref_for: !0 }, ie((d = i.customRow) == null ? void 0 : d.call(i, t.row, n)), {
1090
+ "data-row-key": String(t.key),
1091
+ "aria-selected": i.highlightCurrentRow ? o(ut) === t.key : void 0,
1092
+ class: [
1093
+ typeof i.rowClassName == "function" ? i.rowClassName(t.row, n) : i.rowClassName,
1094
+ {
1095
+ "hys-ui-table-row-current": i.highlightCurrentRow && o(ut) === t.key,
1096
+ "hys-ui-table-row-selected": o(He).has(t.token)
1097
+ }
1098
+ ],
1099
+ style: typeof i.rowStyle == "function" ? i.rowStyle(t.row, n) : i.rowStyle,
1100
+ onClick: (a) => Zt(t, n, a),
1101
+ onDblclick: (a) => !o(k) && x("rowDblclick", t.row, n, a),
1102
+ onContextmenu: (a) => x("rowContextmenu", t.row, n, a)
1103
+ }), [
1104
+ (u(!0), c(E, null, Q(m.value.leaves, (a, f) => (u(), c(E, {
1105
+ key: a.key
1106
+ }, [
1107
+ Se(n, f).rowspan && Se(n, f).colspan ? (u(), B(Me(a.rowScope ? "th" : "td"), W(
1108
+ {
1109
+ key: 0,
1110
+ ref_for: !0
1111
+ },
1112
+ jt(
1113
+ L(t.row, a, n, f)
1114
+ ),
1115
+ {
1116
+ scope: a.rowScope,
1117
+ "data-column-key": a.key,
1118
+ rowspan: Se(n, f).rowspan,
1119
+ colspan: Se(n, f).colspan,
1120
+ style: Qt(L(t.row, a, n, f)),
1121
+ class: Yt(L(t.row, a, n, f)),
1122
+ onClick: (y) => !o(k) && x(
1123
+ "cellClick",
1124
+ L(t.row, a, n, f),
1125
+ y
1126
+ ),
1127
+ onDblclick: (y) => !o(k) && x(
1128
+ "cellDblclick",
1129
+ L(t.row, a, n, f),
1130
+ y
1131
+ ),
1132
+ onContextmenu: (y) => x(
1133
+ "cellContextmenu",
1134
+ L(t.row, a, n, f),
1135
+ y
1136
+ ),
1137
+ onMouseenter: (y) => x(
1138
+ "cellMouseEnter",
1139
+ L(t.row, a, n, f),
1140
+ y
1141
+ ),
1142
+ onMouseleave: (y) => x(
1143
+ "cellMouseLeave",
1144
+ L(t.row, a, n, f),
1145
+ y
1146
+ )
1147
+ }
1148
+ ), {
1149
+ default: U(() => {
1150
+ var y;
1151
+ return [
1152
+ a.type === "selection" ? S(e.$slots, "selection-cell", {
1153
+ row: t.row,
1154
+ index: n,
1155
+ column: a,
1156
+ checked: o(He).has(t.token),
1157
+ indeterminate: o(it).has(t.token),
1158
+ disabled: o(k) || !o(s).eligible(t),
1159
+ toggle: (w) => o(s).toggleRowSelection(t.key, w)
1160
+ }, () => {
1161
+ var w, P, z, R;
1162
+ return [
1163
+ i.selectionType === "radio" ? (u(), B(Fl, {
1164
+ key: 0,
1165
+ name: o(de) + "-selection",
1166
+ "model-value": o(fe)[0] ?? null,
1167
+ value: t.key,
1168
+ disabled: o(k) || !o(s).eligible(t),
1169
+ "aria-label": ((w = i.getSelectionProps) == null ? void 0 : w.call(i, t.row, t.index).label) ?? ye(h.value.selectRow, n + 1),
1170
+ title: (P = i.getSelectionProps) == null ? void 0 : P.call(i, t.row, t.index).title,
1171
+ onClick: l[4] || (l[4] = V(() => {
1172
+ }, ["stop"])),
1173
+ "onUpdate:modelValue": (p) => o(s).toggleRowSelection(t.key, !0)
1174
+ }, null, 8, ["name", "model-value", "value", "disabled", "aria-label", "title", "onUpdate:modelValue"])) : (u(), B(Et, {
1175
+ key: 1,
1176
+ "model-value": o(He).has(t.token),
1177
+ indeterminate: o(it).has(t.token),
1178
+ disabled: o(k) || !o(s).eligible(t),
1179
+ "aria-label": ((z = i.getSelectionProps) == null ? void 0 : z.call(i, t.row, t.index).label) ?? ye(h.value.selectRow, n + 1),
1180
+ title: (R = i.getSelectionProps) == null ? void 0 : R.call(i, t.row, t.index).title,
1181
+ onClick: l[5] || (l[5] = V((p) => bl(ve) ? ve.value = p.shiftKey : ve = p.shiftKey, ["stop"])),
1182
+ "onUpdate:modelValue": (p) => It(t, p === !0)
1183
+ }, null, 8, ["model-value", "indeterminate", "disabled", "aria-label", "title", "onUpdate:modelValue"]))
1184
+ ];
1185
+ }, !0, 0) : a.type === "index" ? (u(), B(ke, {
1186
+ key: 1,
1187
+ value: typeof a.index == "function" ? a.index(n, t.row) : i.indexMethod ? i.indexMethod(n, t.row) : (typeof a.index == "number" ? a.index : 1) + n + (i.pagination && !i.serverMode ? (o(De) - 1) * o(be) : 0)
1188
+ }, null, 8, ["value"])) : a.type === "expand" && o(s).canExpand(t) ? (u(), c("button", {
1189
+ key: 2,
1190
+ type: "button",
1191
+ class: "hys-ui-table-expand",
1192
+ disabled: o(k),
1193
+ "aria-expanded": o(H).has(t.token),
1194
+ "aria-label": ye(
1195
+ o(H).has(t.token) ? h.value.collapseRow : h.value.expandRow,
1196
+ n + 1
1197
+ ),
1198
+ onClick: V((w) => o(s).toggleRowExpansion(t.key), ["stop"])
1199
+ }, [
1200
+ S(e.$slots, "expand-icon", {
1201
+ row: t.row,
1202
+ index: n,
1203
+ expanded: o(H).has(t.token),
1204
+ loading: o(ne).has(t.token),
1205
+ depth: t.depth
1206
+ }, () => [
1207
+ (u(), B(Me(
1208
+ o(ne).has(t.token) ? o(ot) : o(H).has(t.token) ? o(at) : o(Ot)
1209
+ ), {
1210
+ class: Ae({
1211
+ "hys-ui-table-spinner": o(ne).has(t.token)
1212
+ }),
1213
+ size: 16,
1214
+ "aria-hidden": "true"
1215
+ }, null, 8, ["class"]))
1216
+ ], !0)
1217
+ ], 8, na)) : a.type !== "expand" ? (u(), c("div", ia, [
1218
+ i.treeMode && a.key === ge.value ? (u(), c("span", {
1219
+ key: 0,
1220
+ class: "hys-ui-table-tree-indent",
1221
+ style: pe({
1222
+ width: Math.min(t.depth, 100) * Math.max(0, i.indent) + "px"
1223
+ })
1224
+ }, null, 4)) : g("", !0),
1225
+ i.treeMode && a.key === ge.value && !qt.value && i.showExpandColumn ? (u(), c(E, { key: 1 }, [
1226
+ o(s).canExpand(t) ? (u(), c("button", {
1227
+ key: 0,
1228
+ type: "button",
1229
+ class: "hys-ui-table-expand",
1230
+ disabled: o(k),
1231
+ "aria-expanded": o(H).has(t.token),
1232
+ "aria-label": (o(H).has(t.token) ? h.value.collapse : h.value.expand) + Ue(
1233
+ o(Be)(
1234
+ t.row,
1235
+ a.dataIndex ?? a.key
1236
+ )
1237
+ ),
1238
+ onClick: V((w) => o(s).toggleRowExpansion(t.key), ["stop"])
1239
+ }, [
1240
+ S(e.$slots, "expand-icon", {
1241
+ row: t.row,
1242
+ index: n,
1243
+ expanded: o(H).has(t.token),
1244
+ loading: o(ne).has(t.token),
1245
+ depth: t.depth
1246
+ }, () => [
1247
+ (u(), B(Me(
1248
+ o(ne).has(t.token) ? o(ot) : o(H).has(t.token) ? o(at) : o(Ot)
1249
+ ), {
1250
+ class: Ae({
1251
+ "hys-ui-table-spinner": o(ne).has(
1252
+ t.token
1253
+ )
1254
+ }),
1255
+ size: 16,
1256
+ "aria-hidden": "true"
1257
+ }, null, 8, ["class"]))
1258
+ ], !0)
1259
+ ], 8, sa)) : (u(), c("span", ra))
1260
+ ], 64)) : g("", !0),
1261
+ T("span", {
1262
+ class: Ae(["hys-ui-table-cell-text", {
1263
+ "hys-ui-table-ellipsis": a.ellipsis || a.showOverflowTooltip || i.showOverflowTooltip
1264
+ }]),
1265
+ tabindex: a.showOverflowTooltip ?? i.showOverflowTooltip ? 0 : void 0,
1266
+ "aria-describedby": o(Ct) && ((y = ee.value) == null ? void 0 : y.row) === t.row && ee.value.column.key === a.key ? o(de) + "-tooltip" : void 0,
1267
+ onPointerenter: (w) => St(
1268
+ L(t.row, a, n, f),
1269
+ w
1270
+ ),
1271
+ onPointerleave: Ye,
1272
+ onFocus: (w) => St(
1273
+ L(t.row, a, n, f),
1274
+ w
1275
+ ),
1276
+ onBlur: Ye
1277
+ }, [
1278
+ S(e.$slots, a.key, {
1279
+ row: t.row,
1280
+ value: o(Be)(
1281
+ t.row,
1282
+ a.dataIndex ?? a.key
1283
+ ),
1284
+ index: n,
1285
+ column: a
1286
+ }, () => [
1287
+ S(e.$slots, "body-cell", {
1288
+ row: t.row,
1289
+ column: a,
1290
+ value: o(Be)(
1291
+ t.row,
1292
+ a.dataIndex ?? a.key
1293
+ ),
1294
+ index: n
1295
+ }, () => [
1296
+ K(ke, {
1297
+ value: Gt(
1298
+ L(
1299
+ t.row,
1300
+ a,
1301
+ n,
1302
+ f
1303
+ )
1304
+ )
1305
+ }, null, 8, ["value"])
1306
+ ], !0)
1307
+ ], !0)
1308
+ ], 42, ua),
1309
+ a.key === ge.value && o(Wt).has(t.token) ? (u(), B(ce, {
1310
+ key: 2,
1311
+ size: "sm",
1312
+ variant: "ghost",
1313
+ "aria-label": h.value.retryLabel,
1314
+ onClick: V((w) => o(s).loadRow(t.key, !0), ["stop"])
1315
+ }, {
1316
+ default: U(() => [
1317
+ K(o(zl), { size: 13 }),
1318
+ q(O(h.value.retry), 1)
1319
+ ]),
1320
+ _: 1
1321
+ }, 8, ["aria-label", "onClick"])) : g("", !0)
1322
+ ])) : g("", !0)
1323
+ ];
1324
+ }),
1325
+ _: 2
1326
+ }, 1040, ["scope", "data-column-key", "rowspan", "colspan", "style", "class", "onClick", "onDblclick", "onContextmenu", "onMouseenter", "onMouseleave"])) : g("", !0)
1327
+ ], 64))), 128))
1328
+ ], 16, oa),
1329
+ mt(t) ? gl((u(), c("tr", ca, [
1330
+ T("td", {
1331
+ colspan: Math.max(1, m.value.leaves.length)
1332
+ }, [
1333
+ S(e.$slots, "expand", {
1334
+ row: t.row,
1335
+ index: n,
1336
+ expanded: o(H).has(t.token)
1337
+ }, void 0, !0)
1338
+ ], 8, da)
1339
+ ], 512)), [
1340
+ [Cl, o(H).has(t.token)]
1341
+ ]) : g("", !0)
1342
+ ], 64);
1343
+ }), 128)),
1344
+ o(G).length ? g("", !0) : (u(), c("tr", ya, [
1345
+ T("td", {
1346
+ colspan: Math.max(1, m.value.leaves.length)
80
1347
  }, [
81
- g(o.$slots, n.key, {
82
- row: e,
83
- value: e[n.key],
84
- index: r
85
- }, () => [
86
- k(c(e[n.key]), 1)
1348
+ S(e.$slots, "empty", {}, () => [
1349
+ q(O(i.emptyText ?? h.value.emptyText), 1)
87
1350
  ], !0)
88
- ], 4))), 128))
89
- ], 10, G);
90
- }), 128)),
91
- t.rows.length ? C("", !0) : (s(), l("tr", I, [
92
- d("td", {
93
- colspan: t.columns.length,
94
- class: "hys-ui-empty"
1351
+ ], 8, fa)
1352
+ ]))
1353
+ ], 64)),
1354
+ e.$slots.append ? (u(), c("tr", va, [
1355
+ T("td", {
1356
+ colspan: Math.max(1, m.value.leaves.length)
95
1357
  }, [
96
- g(o.$slots, "empty", {}, () => [
97
- k(c(t.emptyText || "暂无数据"), 1)
1358
+ S(e.$slots, "append", {
1359
+ rows: o(s).filteredRows.value
1360
+ }, void 0, !0)
1361
+ ], 8, ma)
1362
+ ])) : g("", !0)
1363
+ ]),
1364
+ i.showSummary && !i.loading ? (u(), c("tfoot", pa, [
1365
+ T("tr", null, [
1366
+ (u(!0), c(E, null, Q(m.value.leaves, (t, n) => (u(), c("td", {
1367
+ key: t.key,
1368
+ "data-column-key": t.key,
1369
+ style: pe({ ...je(t), textAlign: t.align })
1370
+ }, [
1371
+ S(e.$slots, "summary-cell", {
1372
+ column: t,
1373
+ index: n,
1374
+ value: pt.value[n],
1375
+ rows: o(s).filteredRows.value
1376
+ }, () => [
1377
+ K(ke, {
1378
+ value: pt.value[n]
1379
+ }, null, 8, ["value"])
98
1380
  ], !0)
99
- ], 8, J)
100
- ]))
101
- ], 64))
102
- ])
103
- ])
104
- ], 16, R));
1381
+ ], 12, ha))), 128))
1382
+ ])
1383
+ ])) : g("", !0)
1384
+ ], 4)
1385
+ ], 44, ql),
1386
+ e.$slots.footer ? (u(), c("div", ka, [
1387
+ S(e.$slots, "footer", {
1388
+ rows: o(s).filteredRows.value,
1389
+ query: o(We)
1390
+ }, void 0, !0)
1391
+ ])) : g("", !0),
1392
+ (u(!0), c(E, null, Q(ct.value.filter(
1393
+ (t) => t.startsWith("bottom-")
1394
+ ), (t) => (u(), c("div", {
1395
+ key: t,
1396
+ class: "hys-ui-table-pagination",
1397
+ "data-position": t
1398
+ }, [
1399
+ K(Kt, W({ ref_for: !0 }, dt.value, {
1400
+ onChange: l[6] || (l[6] = (n) => o(s).requestPage(n)),
1401
+ onPageSizeChange: o(s).changeSize
1402
+ }), null, 16, ["onPageSizeChange"])
1403
+ ], 8, wa))), 128)),
1404
+ (u(), B(Pt, {
1405
+ to: i.appendFilterTo || "body",
1406
+ disabled: i.appendFilterTo === !1
1407
+ }, [
1408
+ K(o(Ht), {
1409
+ "popup-transition": r.popupTransition,
1410
+ "popup-transition-duration": r.popupTransitionDuration,
1411
+ placement: o(M).placement.value
1412
+ }, {
1413
+ default: U(() => [
1414
+ o(j) && b.value ? (u(), c("div", W({
1415
+ key: 0,
1416
+ id: o(de) + "-filter",
1417
+ ref_key: "filterPanel",
1418
+ ref: Xe
1419
+ }, o(Pe), {
1420
+ class: "hys-ui-table-filter-panel hys-ui-floating-surface",
1421
+ style: o(el),
1422
+ role: "dialog",
1423
+ "aria-label": h.value.filter + b.value.label
1424
+ }), [
1425
+ S(e.$slots, "filter-dropdown", {
1426
+ column: b.value,
1427
+ open: o(j),
1428
+ values: _.value,
1429
+ setValues: kt,
1430
+ confirm: Te,
1431
+ clear: wt,
1432
+ close: () => o(M).close(!0)
1433
+ }, () => [
1434
+ T("strong", null, O(b.value.label), 1),
1435
+ b.value.filters ? (u(), B(Al, {
1436
+ key: b.value.key,
1437
+ values: _.value,
1438
+ "onUpdate:values": l[7] || (l[7] = (t) => _.value = t),
1439
+ options: b.value.filters,
1440
+ mode: b.value.filterMode,
1441
+ search: b.value.filterSearch,
1442
+ multiple: b.value.filterMultiple !== !1,
1443
+ disabled: o(k),
1444
+ "search-label": h.value.filterSearch,
1445
+ "empty-text": h.value.noFilterMatch
1446
+ }, null, 8, ["values", "options", "mode", "search", "multiple", "disabled", "search-label", "empty-text"])) : (u(), B(Ml, {
1447
+ key: 1,
1448
+ "model-value": String(_.value[0] ?? ""),
1449
+ "aria-label": h.value.filter + b.value.label,
1450
+ placeholder: h.value.filterPlaceholder,
1451
+ clearable: "",
1452
+ size: "sm",
1453
+ "onUpdate:modelValue": l[8] || (l[8] = (t) => kt(t ? [t] : [])),
1454
+ onKeydown: lt(V(Te, ["prevent"]), ["enter"])
1455
+ }, null, 8, ["model-value", "aria-label", "placeholder", "onKeydown"])),
1456
+ T("div", ga, [
1457
+ K(ce, {
1458
+ size: "sm",
1459
+ variant: "secondary",
1460
+ onClick: l[9] || (l[9] = (t) => wt())
1461
+ }, {
1462
+ default: U(() => [
1463
+ q(O(h.value.reset), 1)
1464
+ ]),
1465
+ _: 1
1466
+ }),
1467
+ K(ce, {
1468
+ size: "sm",
1469
+ onClick: l[10] || (l[10] = (t) => Te())
1470
+ }, {
1471
+ default: U(() => [
1472
+ q(O(h.value.apply), 1)
1473
+ ]),
1474
+ _: 1
1475
+ })
1476
+ ])
1477
+ ], !0)
1478
+ ], 16, ba)) : g("", !0)
1479
+ ]),
1480
+ _: 3
1481
+ }, 8, ["popup-transition", "popup-transition-duration", "placement"])
1482
+ ], 8, ["to", "disabled"])),
1483
+ (u(), B(Pt, { to: "body" }, [
1484
+ K(o(Ht), {
1485
+ "popup-transition": r.popupTransition,
1486
+ "popup-transition-duration": r.popupTransitionDuration,
1487
+ placement: o(N).placement.value
1488
+ }, {
1489
+ default: U(() => [
1490
+ o(Ct) && ee.value ? (u(), c("div", W({
1491
+ key: 0,
1492
+ id: o(de) + "-tooltip",
1493
+ ref_key: "tipPanel",
1494
+ ref: gt
1495
+ }, o(Pe), {
1496
+ class: "hys-ui-table-tooltip hys-ui-floating-tooltip",
1497
+ role: "tooltip",
1498
+ style: o(ll),
1499
+ onPointerenter: al,
1500
+ onPointerleave: Ye
1501
+ }), [
1502
+ S(e.$slots, "tooltip", Sl(xl(ee.value)), () => [
1503
+ K(ke, { value: ol.value }, null, 8, ["value"])
1504
+ ], !0)
1505
+ ], 16, Ca)) : g("", !0)
1506
+ ]),
1507
+ _: 3
1508
+ }, 8, ["popup-transition", "popup-transition-duration", "placement"])
1509
+ ]))
1510
+ ], 16, Hl));
105
1511
  }
106
1512
  });
107
1513
  export {
108
- X as default
1514
+ $a as default
109
1515
  };