hys-ui 0.2.0 → 0.4.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 (261) hide show
  1. package/CHANGELOG.md +59 -0
  2. package/README.md +68 -59
  3. package/dist/components/HysAlert/HysAlert.vue.js +5 -54
  4. package/dist/components/HysAlert/HysAlert2.vue.js +159 -2
  5. package/dist/components/HysAnimatedNumber/HysAnimatedNumber.vue.js +5 -41
  6. package/dist/components/HysAnimatedNumber/HysAnimatedNumber2.vue.js +146 -2
  7. package/dist/components/HysAutocomplete/HysAutocomplete.vue.js +2 -2
  8. package/dist/components/HysAutocomplete/HysAutocomplete2.vue.js +285 -273
  9. package/dist/components/HysAvatarGroup/HysAvatarGroup.vue.js +1 -1
  10. package/dist/components/HysAvatarGroup/HysAvatarGroup2.vue.js +102 -98
  11. package/dist/components/HysBreadcrumb/HysBreadcrumb.vue.js +1 -1
  12. package/dist/components/HysBreadcrumb/HysBreadcrumb2.vue.js +273 -59
  13. package/dist/components/HysButton/HysButton.vue.js +2 -2
  14. package/dist/components/HysButton/HysButton2.vue.js +227 -60
  15. package/dist/components/HysButtonGroup/HysButtonGroup.vue.js +7 -0
  16. package/dist/components/HysButtonGroup/HysButtonGroup2.vue.js +51 -0
  17. package/dist/components/HysCalendar/HysCalendar.vue.js +3 -3
  18. package/dist/components/HysCalendar/HysCalendar2.vue.js +237 -225
  19. package/dist/components/HysCascader/HysCascader.vue.js +2 -2
  20. package/dist/components/HysCascader/HysCascader2.vue.js +337 -324
  21. package/dist/components/HysColorPicker/HysColorPanel.vue.js +7 -0
  22. package/dist/components/HysColorPicker/HysColorPanel2.vue.js +238 -0
  23. package/dist/components/HysColorPicker/HysColorPicker.vue.js +2 -2
  24. package/dist/components/HysColorPicker/HysColorPicker2.vue.js +239 -217
  25. package/dist/components/HysCommandPalette/HysCommandPalette.vue.js +90 -76
  26. package/dist/components/HysContextMenu/HysContextMenu.vue.js +5 -89
  27. package/dist/components/HysContextMenu/HysContextMenu2.vue.js +247 -2
  28. package/dist/components/HysContextMenu/HysMenuPanel.vue.js +7 -0
  29. package/dist/components/HysContextMenu/HysMenuPanel2.vue.js +208 -0
  30. package/dist/components/HysContextMenu/HysMenuSlot.js +10 -0
  31. package/dist/components/HysDataGrid/HysDataGrid.vue.js +1 -1
  32. package/dist/components/HysDataGrid/HysDataGrid2.vue.js +1008 -559
  33. package/dist/components/HysDatePicker/HysDatePicker.vue.js +2 -0
  34. package/dist/components/HysDatePicker/HysDatePickerControl.vue.js +2 -2
  35. package/dist/components/HysDatePicker/HysDatePickerControl2.vue.js +539 -526
  36. package/dist/components/HysDateRangePicker/HysDateRangePicker.vue.js +5 -3
  37. package/dist/components/HysDrawer/HysDrawer.vue.js +1 -1
  38. package/dist/components/HysDrawer/HysDrawer2.vue.js +434 -84
  39. package/dist/components/HysEmpty/HysEmpty.vue.js +5 -41
  40. package/dist/components/HysEmpty/HysEmpty2.vue.js +181 -2
  41. package/dist/components/HysFormItem/HysFormItem.vue.js +2 -2
  42. package/dist/components/HysFormItem/HysFormItem2.vue.js +171 -164
  43. package/dist/components/HysGantt/HysGantt.vue.js +1 -1
  44. package/dist/components/HysGantt/HysGantt2.vue.js +810 -795
  45. package/dist/components/HysMention/HysMention.vue.js +1 -1
  46. package/dist/components/HysMention/HysMention2.vue.js +1092 -142
  47. package/dist/components/HysModal/HysModal.vue.js +2 -2
  48. package/dist/components/HysModal/HysModal2.vue.js +491 -85
  49. package/dist/components/HysPagination/HysPagination.vue.js +2 -2
  50. package/dist/components/HysPagination/HysPagination2.vue.js +243 -180
  51. package/dist/components/HysPopover/HysPopover.vue.js +5 -91
  52. package/dist/components/HysPopover/HysPopover2.vue.js +120 -2
  53. package/dist/components/HysProgress/HysProgress.vue.js +2 -2
  54. package/dist/components/HysProgress/HysProgress2.vue.js +319 -52
  55. package/dist/components/HysSearch/HysSearch.vue.js +5 -82
  56. package/dist/components/HysSearch/HysSearch2.vue.js +176 -2
  57. package/dist/components/HysSelect/HysSelect.vue.js +2 -2
  58. package/dist/components/HysSelect/HysSelect2.vue.js +755 -590
  59. package/dist/components/HysSlider/HysSlider.vue.js +2 -2
  60. package/dist/components/HysSlider/HysSlider2.vue.js +192 -188
  61. package/dist/components/HysSlider/SliderTooltip.vue.js +2 -2
  62. package/dist/components/HysSlider/SliderTooltip2.vue.js +103 -89
  63. package/dist/components/HysSplitPane/HysSplitPane.vue.js +315 -58
  64. package/dist/components/HysSplitPane/HysSplitPane3.vue.js +5 -0
  65. package/dist/components/HysTable/HysTable.vue.js +2 -2
  66. package/dist/components/HysTable/HysTable2.vue.js +1416 -1127
  67. package/dist/components/HysTagInput/HysTagInput.vue.js +5 -82
  68. package/dist/components/HysTagInput/HysTagInput2.vue.js +396 -2
  69. package/dist/components/HysTimeline/HysTimeline.vue.js +2 -2
  70. package/dist/components/HysTimeline/HysTimeline2.vue.js +243 -24
  71. package/dist/components/HysTooltip/HysTooltip.vue.js +5 -64
  72. package/dist/components/HysTooltip/HysTooltip2.vue.js +110 -2
  73. package/dist/components/HysTour/HysTour.vue.js +291 -63
  74. package/dist/components/HysTour/HysTour3.vue.js +5 -0
  75. package/dist/components/HysTransfer/HysTransfer.vue.js +2 -2
  76. package/dist/components/HysTransfer/HysTransfer2.vue.js +237 -207
  77. package/dist/components/HysTransfer/HysTransferPanel.vue.js +1 -1
  78. package/dist/components/HysTransfer/HysTransferPanel2.vue.js +320 -271
  79. package/dist/components/HysTree/HysTree.vue.js +2 -2
  80. package/dist/components/HysTree/HysTree2.vue.js +195 -184
  81. package/dist/components/HysTreeSelect/HysTreeSelect.vue.js +4 -4
  82. package/dist/components/HysTreeSelect/HysTreeSelect2.vue.js +389 -377
  83. package/dist/components/HysUpload/HysUpload.vue.js +2 -2
  84. package/dist/components/HysUpload/HysUpload2.vue.js +459 -125
  85. package/dist/components/HysVirtualTable/HysVirtualTable.vue.js +5 -94
  86. package/dist/components/HysVirtualTable/HysVirtualTable2.vue.js +656 -2
  87. package/dist/composables/buttonGroup.js +12 -0
  88. package/dist/composables/color.js +97 -0
  89. package/dist/composables/dataGrid.js +68 -0
  90. package/dist/composables/drawer.js +17 -0
  91. package/dist/composables/feedback.js +14 -0
  92. package/dist/composables/floatingPosition.js +18 -0
  93. package/dist/composables/mentionDocument.js +79 -0
  94. package/dist/composables/mentionEditor.js +58 -0
  95. package/dist/composables/menu.js +96 -0
  96. package/dist/composables/modal.js +14 -0
  97. package/dist/composables/overlayManager.js +48 -18
  98. package/dist/composables/progress.js +94 -0
  99. package/dist/composables/selectOptions.js +44 -38
  100. package/dist/composables/splitPaneSizes.js +58 -0
  101. package/dist/composables/table.js +128 -105
  102. package/dist/composables/tagInput.js +16 -0
  103. package/dist/composables/timeline.js +19 -0
  104. package/dist/composables/transfer.js +19 -17
  105. package/dist/composables/upload.js +55 -0
  106. package/dist/composables/uploadRequest.js +58 -0
  107. package/dist/composables/useAlert.js +124 -0
  108. package/dist/composables/useColorPicker.js +402 -0
  109. package/dist/composables/useContextMenu.js +514 -0
  110. package/dist/composables/useDataGridRemote.js +67 -0
  111. package/dist/composables/useDialog.js +86 -43
  112. package/dist/composables/useDrawerPush.js +33 -0
  113. package/dist/composables/useDrawerResize.js +221 -0
  114. package/dist/composables/useFloating.js +118 -80
  115. package/dist/composables/useHysModal.js +185 -0
  116. package/dist/composables/useMentionCaret.js +81 -0
  117. package/dist/composables/useMentionList.js +81 -0
  118. package/dist/composables/useMentionModel.js +90 -0
  119. package/dist/composables/useMentionOptions.js +421 -0
  120. package/dist/composables/useModal.js +295 -0
  121. package/dist/composables/useModalInteraction.js +394 -0
  122. package/dist/composables/usePopupSurface.js +458 -0
  123. package/dist/composables/useSplitPaneDrag.js +52 -0
  124. package/dist/composables/useSplitPaneStorage.js +38 -0
  125. package/dist/composables/useTable.js +344 -312
  126. package/dist/composables/useTableSticky.js +79 -0
  127. package/dist/composables/useTagInput.js +313 -0
  128. package/dist/composables/useTourLayout.js +129 -0
  129. package/dist/composables/useTransferMotion.js +185 -0
  130. package/dist/composables/useUpload.js +472 -0
  131. package/dist/composables/useUploadModel.js +65 -0
  132. package/dist/composables/useUploadRequests.js +266 -0
  133. package/dist/composables/useVirtualTableLayout.js +277 -0
  134. package/dist/composables/virtualTable.js +43 -0
  135. package/dist/config.js +11 -11
  136. package/dist/index.js +175 -153
  137. package/dist/internal/MultiSplitPane.vue.js +305 -0
  138. package/dist/internal/MultiSplitPane2.vue.js +4 -0
  139. package/dist/internal/PopupReference.js +39 -0
  140. package/dist/internal/PopupSurfacePanel.vue.js +7 -0
  141. package/dist/internal/PopupSurfacePanel2.vue.js +92 -0
  142. package/dist/motion/PopupMotion.js +105 -0
  143. package/dist/motion/popup.js +10 -0
  144. package/dist/style.css +1 -1
  145. package/dist/types/components/HysAlert/HysAlert.vue.d.ts +32 -22
  146. package/dist/types/components/HysAnimatedNumber/HysAnimatedNumber.vue.d.ts +61 -7
  147. package/dist/types/components/HysAutocomplete/HysAutocomplete.vue.d.ts +7 -7
  148. package/dist/types/components/HysAvatarGroup/HysAvatarGroup.vue.d.ts +6 -1
  149. package/dist/types/components/HysBadge/HysBadge.vue.d.ts +3 -3
  150. package/dist/types/components/HysBreadcrumb/HysBreadcrumb.vue.d.ts +54 -31
  151. package/dist/types/components/HysButton/HysButton.vue.d.ts +82 -22
  152. package/dist/types/components/HysButtonGroup/HysButtonGroup.vue.d.ts +30 -0
  153. package/dist/types/components/HysCalendar/HysCalendar.vue.d.ts +3 -2
  154. package/dist/types/components/HysCascader/HysCascader.vue.d.ts +7 -7
  155. package/dist/types/components/HysCascader/HysCascaderColumn.vue.d.ts +2 -2
  156. package/dist/types/components/HysColorPicker/HysColorPanel.vue.d.ts +58 -0
  157. package/dist/types/components/HysColorPicker/HysColorPicker.vue.d.ts +63 -10
  158. package/dist/types/components/HysCommandPalette/HysCommandPalette.vue.d.ts +2 -1
  159. package/dist/types/components/HysContextMenu/HysContextMenu.vue.d.ts +50 -34
  160. package/dist/types/components/HysContextMenu/HysMenuPanel.vue.d.ts +79 -0
  161. package/dist/types/components/HysContextMenu/HysMenuSlot.d.ts +8 -0
  162. package/dist/types/components/HysDataGrid/HysDataGrid.vue.d.ts +65 -118
  163. package/dist/types/components/HysDatePicker/HysDatePickerControl.vue.d.ts +3 -3
  164. package/dist/types/components/HysDrawer/HysDrawer.vue.d.ts +92 -35
  165. package/dist/types/components/HysEmpty/HysEmpty.vue.d.ts +24 -20
  166. package/dist/types/components/HysFileManager/HysFileManager.vue.d.ts +2 -2
  167. package/dist/types/components/HysGantt/HysGantt.vue.d.ts +2 -1
  168. package/dist/types/components/HysMention/HysMention.vue.d.ts +91 -39
  169. package/dist/types/components/HysModal/HysModal.vue.d.ts +111 -34
  170. package/dist/types/components/HysNumberInput/HysNumberInput.vue.d.ts +2 -2
  171. package/dist/types/components/HysPagination/HysPagination.vue.d.ts +55 -4
  172. package/dist/types/components/HysPopover/HysPopover.vue.d.ts +41 -29
  173. package/dist/types/components/HysProgress/HysProgress.vue.d.ts +18 -24
  174. package/dist/types/components/HysRating/HysRating.vue.d.ts +1 -1
  175. package/dist/types/components/HysResizablePanel/HysResizablePanel.vue.d.ts +2 -2
  176. package/dist/types/components/HysSearch/HysSearch.vue.d.ts +45 -7
  177. package/dist/types/components/HysSelect/HysSelect.vue.d.ts +19 -5
  178. package/dist/types/components/HysSlider/HysSlider.vue.d.ts +5 -4
  179. package/dist/types/components/HysSlider/SliderTooltip.vue.d.ts +3 -1
  180. package/dist/types/components/HysSplitPane/HysSplitPane.vue.d.ts +125 -14
  181. package/dist/types/components/HysSteps/HysSteps.vue.d.ts +1 -1
  182. package/dist/types/components/HysTable/HysTable.vue.d.ts +1742 -5
  183. package/dist/types/components/HysTabs/HysTabs.vue.d.ts +2 -2
  184. package/dist/types/components/HysTagInput/HysTagInput.vue.d.ts +47 -25
  185. package/dist/types/components/HysTimeline/HysTimeline.vue.d.ts +19 -32
  186. package/dist/types/components/HysTooltip/HysTooltip.vue.d.ts +39 -19
  187. package/dist/types/components/HysTour/HysTour.vue.d.ts +46 -8
  188. package/dist/types/components/HysTransfer/HysTransfer.vue.d.ts +2 -2
  189. package/dist/types/components/HysTransfer/HysTransferPanel.vue.d.ts +5 -3
  190. package/dist/types/components/HysTree/HysTree.vue.d.ts +2 -2
  191. package/dist/types/components/HysUpload/HysUpload.vue.d.ts +55 -67
  192. package/dist/types/components/HysVirtualTable/HysVirtualTable.vue.d.ts +71 -40
  193. package/dist/types/composables/autocomplete.d.ts +3 -0
  194. package/dist/types/composables/avatar.d.ts +3 -0
  195. package/dist/types/composables/buttonGroup.d.ts +9 -0
  196. package/dist/types/composables/cascader.d.ts +3 -0
  197. package/dist/types/composables/color.d.ts +97 -0
  198. package/dist/types/composables/dataGrid.d.ts +100 -0
  199. package/dist/types/composables/datePicker.d.ts +3 -0
  200. package/dist/types/composables/drawer.d.ts +102 -0
  201. package/dist/types/composables/feedback.d.ts +98 -0
  202. package/dist/types/composables/floatingPosition.d.ts +14 -0
  203. package/dist/types/composables/formContext.d.ts +2 -0
  204. package/dist/types/composables/mention.d.ts +284 -0
  205. package/dist/types/composables/mentionDocument.d.ts +15 -0
  206. package/dist/types/composables/mentionEditor.d.ts +7 -0
  207. package/dist/types/composables/menu.d.ts +183 -0
  208. package/dist/types/composables/modal.d.ts +185 -0
  209. package/dist/types/composables/overlayManager.d.ts +7 -3
  210. package/dist/types/composables/popupSurface.d.ts +83 -0
  211. package/dist/types/composables/progress.d.ts +92 -0
  212. package/dist/types/composables/selectOptions.d.ts +7 -0
  213. package/dist/types/composables/splitPaneSizes.d.ts +11 -0
  214. package/dist/types/composables/table.d.ts +119 -6
  215. package/dist/types/composables/tagInput.d.ts +96 -0
  216. package/dist/types/composables/timeline.d.ts +82 -0
  217. package/dist/types/composables/tour.d.ts +68 -0
  218. package/dist/types/composables/transfer.d.ts +7 -0
  219. package/dist/types/composables/tree.d.ts +3 -0
  220. package/dist/types/composables/treeSelect.d.ts +3 -0
  221. package/dist/types/composables/upload.d.ts +202 -0
  222. package/dist/types/composables/uploadRequest.d.ts +3 -0
  223. package/dist/types/composables/useAlert.d.ts +21 -0
  224. package/dist/types/composables/useCascader.d.ts +1 -1
  225. package/dist/types/composables/useColorPicker.d.ts +101 -0
  226. package/dist/types/composables/useContextMenu.d.ts +81 -0
  227. package/dist/types/composables/useDataGridRemote.d.ts +15 -0
  228. package/dist/types/composables/useDialog.d.ts +16 -3
  229. package/dist/types/composables/useDrawerPush.d.ts +6 -0
  230. package/dist/types/composables/useDrawerResize.d.ts +27 -0
  231. package/dist/types/composables/useFloating.d.ts +22 -3
  232. package/dist/types/composables/useHysModal.d.ts +44 -0
  233. package/dist/types/composables/useMentionCaret.d.ts +6 -0
  234. package/dist/types/composables/useMentionList.d.ts +23 -0
  235. package/dist/types/composables/useMentionModel.d.ts +14 -0
  236. package/dist/types/composables/useMentionOptions.d.ts +26 -0
  237. package/dist/types/composables/useModal.d.ts +62 -0
  238. package/dist/types/composables/useModalInteraction.d.ts +27 -0
  239. package/dist/types/composables/usePopupSurface.d.ts +3341 -0
  240. package/dist/types/composables/useSplitPaneDrag.d.ts +14 -0
  241. package/dist/types/composables/useSplitPaneStorage.d.ts +4 -0
  242. package/dist/types/composables/useTable.d.ts +7 -3
  243. package/dist/types/composables/useTableSticky.d.ts +22 -0
  244. package/dist/types/composables/useTagInput.d.ts +66 -0
  245. package/dist/types/composables/useTourLayout.d.ts +33 -0
  246. package/dist/types/composables/useTransferMotion.d.ts +36 -0
  247. package/dist/types/composables/useUpload.d.ts +94 -0
  248. package/dist/types/composables/useUploadModel.d.ts +14 -0
  249. package/dist/types/composables/useUploadRequests.d.ts +38 -0
  250. package/dist/types/composables/useVirtualTableLayout.d.ts +51 -0
  251. package/dist/types/composables/virtualTable.d.ts +126 -0
  252. package/dist/types/config.d.ts +1 -0
  253. package/dist/types/index.d.ts +53 -3
  254. package/dist/types/internal/MultiSplitPane.vue.d.ts +54 -0
  255. package/dist/types/internal/PopupReference.d.ts +18 -0
  256. package/dist/types/internal/PopupSurfacePanel.vue.d.ts +37 -0
  257. package/dist/types/motion/PopupMotion.d.ts +59 -0
  258. package/dist/types/motion/popup.d.ts +12 -0
  259. package/package.json +3 -2
  260. package/dist/components/HysSplitPane/HysSplitPane2.vue.js +0 -4
  261. package/dist/components/HysTour/HysTour2.vue.js +0 -4
@@ -1,30 +1,30 @@
1
- import { defineComponent as ke, ref as D, computed as o, watch as V, onDeactivated as we, onBeforeUnmount as ze, onMounted as Se, onActivated as Te, nextTick as R, openBlock as s, createElementBlock as u, mergeProps as Ce, unref as g, createElementVNode as m, renderSlot as z, createBlock as k, withCtx as C, toDisplayString as f, createVNode as K, createCommentVNode as w, normalizeStyle as U, normalizeClass as ee, resolveDynamicComponent as xe, TransitionGroup as Me, Fragment as W, renderList as Be, createTextVNode as P, withModifiers as He } from "vue";
2
- import { Search as Ae, X as De, GripVertical as Ke, LoaderCircle as qe } from "lucide-vue-next";
3
- import te from "../HysCheckbox/HysCheckbox.vue.js";
4
- import ae from "../HysButton/HysButton.vue.js";
1
+ import { defineComponent as xe, ref as I, computed as d, watch as F, onDeactivated as Ke, onBeforeUnmount as Te, onMounted as De, onActivated as Me, nextTick as W, openBlock as r, createElementBlock as c, mergeProps as He, unref as k, createElementVNode as m, renderSlot as S, createBlock as x, withCtx as O, toDisplayString as h, createVNode as $, createCommentVNode as w, normalizeStyle as j, normalizeClass as ie, Fragment as G, renderList as Be, createTextVNode as p, withModifiers as Ae } from "vue";
2
+ import { Search as qe, X as Pe, GripVertical as Ie, LoaderCircle as Oe } from "lucide-vue-next";
3
+ import ne from "../HysCheckbox/HysCheckbox.vue.js";
4
+ import se from "../HysButton/HysButton.vue.js";
5
5
  import $e from "../HysInput/HysInput.vue.js";
6
- import Pe from "../HysPagination/HysPagination.vue.js";
7
- import { useHysRootAttrs as Ee } from "../../config.js";
8
- import { transferLabel as le, transferToken as q } from "../../composables/transfer.js";
9
- const Fe = ["data-side", "aria-label", "aria-busy"], Le = { class: "hys-ui-pf-transfer-header" }, Ie = ["id"], Ne = ["id"], Oe = { class: "hys-ui-transfer-count" }, Ve = { class: "hys-ui-transfer-body" }, Re = ["aria-label"], Ue = ["data-transfer-key", "draggable", "title", "onDragstart"], We = { class: "hys-ui-transfer-label" }, Ge = {
6
+ import Fe from "../HysPagination/HysPagination.vue.js";
7
+ import { useHysRootAttrs as pe } from "../../config.js";
8
+ import { transferLabel as re, transferToken as T } from "../../composables/transfer.js";
9
+ const Le = ["data-side", "aria-label", "aria-busy"], Ne = { class: "hys-ui-pf-transfer-header" }, Ee = ["id"], Re = ["id"], Ve = { class: "hys-ui-transfer-count" }, Ue = { class: "hys-ui-transfer-body" }, We = ["aria-label"], je = ["data-transfer-key", "draggable", "title", "onClickCapture", "onDblclick", "onMousedown", "onDragstart"], Ge = { class: "hys-ui-transfer-label" }, Xe = {
10
10
  key: 1,
11
11
  class: "hys-ui-transfer-label"
12
- }, je = {
12
+ }, Je = {
13
13
  key: 0,
14
14
  class: "hys-ui-pf-transfer-empty"
15
- }, Xe = ["aria-label"], Je = {
15
+ }, Qe = ["aria-label"], Ye = {
16
16
  key: 1,
17
17
  class: "hys-ui-transfer-extra"
18
- }, Qe = {
18
+ }, Ze = {
19
19
  key: 0,
20
20
  class: "hys-ui-transfer-filter-count"
21
- }, Ye = {
21
+ }, _e = {
22
22
  key: 2,
23
23
  class: "hys-ui-transfer-pagination"
24
- }, Ze = {
24
+ }, et = {
25
25
  key: 3,
26
26
  class: "hys-ui-transfer-footer"
27
- }, st = /* @__PURE__ */ ke({
27
+ }, ut = /* @__PURE__ */ xe({
28
28
  __name: "HysTransferPanel",
29
29
  props: {
30
30
  side: {},
@@ -47,8 +47,8 @@ const Fe = ["data-side", "aria-label", "aria-busy"], Le = { class: "hys-ui-pf-tr
47
47
  itemHeight: {},
48
48
  overscan: {},
49
49
  virtual: { type: Boolean },
50
- animated: { type: Boolean },
51
50
  draggable: { type: Boolean },
51
+ moveOnDoubleClick: { type: Boolean },
52
52
  draggedKeys: {},
53
53
  dropTarget: { type: Boolean },
54
54
  words: {},
@@ -59,191 +59,244 @@ const Fe = ["data-side", "aria-label", "aria-busy"], Le = { class: "hys-ui-pf-tr
59
59
  format: { type: Function },
60
60
  renderContent: { type: Function }
61
61
  },
62
- emits: ["check", "checkAll", "invert", "search", "remove", "page", "pageSize", "dragStart", "dragEnd", "dragOver", "dragLeave", "drop", "scroll"],
63
- setup(e, { expose: ie, emit: ne }) {
64
- const a = e, d = ne, G = Ee(), n = D(), j = D(), X = D(), h = D(0), x = D(0);
65
- let S = 0, y = !0, M = 0, E = 0, v;
66
- function F() {
67
- v == null || v.disconnect(), v = void 0, !(!y || !a.virtual || !n.value) && (x.value = n.value.clientHeight, typeof ResizeObserver < "u" && (v = new ResizeObserver(() => {
68
- y && n.value && (x.value = n.value.clientHeight);
69
- }), v.observe(n.value)));
62
+ emits: ["check", "rangeCheck", "moveItem", "checkAll", "invert", "search", "remove", "page", "pageSize", "dragStart", "dragEnd", "dragOver", "dragLeave", "drop", "scroll"],
63
+ setup(e, { expose: oe, emit: ue }) {
64
+ const l = e, u = ue, de = pe(), s = I(), X = I(), J = I(), v = I(0), D = I(0);
65
+ let K = 0, g = !0, M = 0, L = 0, y;
66
+ function N() {
67
+ y == null || y.disconnect(), y = void 0, !(!g || !l.virtual || !s.value) && (D.value = s.value.clientHeight, typeof ResizeObserver < "u" && (y = new ResizeObserver(() => {
68
+ g && s.value && (D.value = s.value.clientHeight);
69
+ }), y.observe(s.value)));
70
70
  }
71
- const $ = o(() => new Set(a.checkedKeys)), se = o(() => new Set(a.draggedKeys)), B = o(() => a.items.filter((l) => !l.disabled)), L = o(() => !a.oneWay || a.side === "left"), J = o(
72
- () => B.value.filter((l) => $.value.has(l.key)).length
73
- ), I = o(
74
- () => !!B.value.length && J.value === B.value.length
75
- ), Q = o(() => J.value > 0 && !I.value), N = o(() => ({
76
- side: a.side,
77
- total: a.total,
78
- filtered: a.filtered,
79
- checked: a.checkedKeys.length
80
- })), H = o(
81
- () => Number.isFinite(a.listHeight) ? Math.max(80, Math.min(2e3, a.listHeight)) : 240
82
- ), c = o(
83
- () => Number.isFinite(a.itemHeight) ? Math.max(24, Math.min(200, a.itemHeight)) : 36
84
- ), Y = o(
85
- () => Number.isFinite(a.overscan) ? Math.max(0, Math.min(30, Math.floor(a.overscan))) : 4
86
- ), Z = o(
87
- () => a.virtual ? Math.max(
71
+ const H = d(() => new Set(l.checkedKeys)), ce = d(() => new Set(l.draggedKeys)), B = d(() => l.items.filter((t) => !t.disabled)), A = d(() => !l.oneWay || l.side === "left"), Q = d(
72
+ () => B.value.filter((t) => H.value.has(t.key)).length
73
+ ), E = d(
74
+ () => !!B.value.length && Q.value === B.value.length
75
+ ), Y = d(() => Q.value > 0 && !E.value), R = d(() => ({
76
+ side: l.side,
77
+ total: l.total,
78
+ filtered: l.filtered,
79
+ checked: l.checkedKeys.length
80
+ })), q = d(
81
+ () => Number.isFinite(l.listHeight) ? Math.max(80, Math.min(2e3, l.listHeight)) : 240
82
+ ), f = d(
83
+ () => Number.isFinite(l.itemHeight) ? Math.max(24, Math.min(200, l.itemHeight)) : 36
84
+ ), Z = d(
85
+ () => Number.isFinite(l.overscan) ? Math.max(0, Math.min(30, Math.floor(l.overscan))) : 4
86
+ ), _ = d(
87
+ () => l.virtual ? Math.max(
88
88
  0,
89
89
  Math.min(
90
- Math.max(0, a.items.length - 1),
91
- Math.floor(h.value / c.value) - Y.value
90
+ Math.max(0, l.items.length - 1),
91
+ Math.floor(v.value / f.value) - Z.value
92
92
  )
93
93
  ) : 0
94
- ), re = o(
95
- () => a.virtual ? Math.min(
96
- a.items.length,
94
+ ), fe = d(
95
+ () => l.virtual ? Math.min(
96
+ l.items.length,
97
97
  Math.ceil(
98
- (h.value + (x.value || H.value)) / c.value
99
- ) + Y.value
100
- ) : a.items.length
101
- ), oe = o(() => a.items.slice(Z.value, re.value)), O = o(
102
- () => a.animated && !a.virtual && a.items.length <= 100 && G.value["data-hys-motion"] !== "off"
103
- ), p = (l) => {
98
+ (v.value + (D.value || q.value)) / f.value
99
+ ) + Z.value
100
+ ) : l.items.length
101
+ ), ye = d(() => l.items.slice(_.value, fe.value)), ee = (t) => {
104
102
  var i;
105
- return ((i = a.renderContent) == null ? void 0 : i.call(a, l.item, a.side)) ?? "";
103
+ return ((i = l.renderContent) == null ? void 0 : i.call(l, t.item, l.side)) ?? "";
106
104
  };
107
- function de(l) {
108
- const i = l;
109
- i.inert = !0, i.setAttribute("aria-hidden", "true");
110
- }
111
- function ue(l) {
112
- const i = l;
113
- i.inert = !1, i.removeAttribute("aria-hidden");
114
- }
115
- function ce(l) {
105
+ function he(t) {
116
106
  var i;
117
- !y || !((i = n.value) != null && i.isConnected) || (M = n.value.scrollTop, d("scroll", l), !(!a.virtual || S) && (S = requestAnimationFrame(() => {
118
- S = 0, y && n.value && (h.value = n.value.scrollTop);
107
+ !g || !((i = s.value) != null && i.isConnected) || (M = s.value.scrollTop, u("scroll", t), !(!l.virtual || K) && (K = requestAnimationFrame(() => {
108
+ K = 0, g && s.value && (v.value = s.value.scrollTop);
119
109
  })));
120
110
  }
121
111
  function ve() {
122
- M = 0, h.value = 0, n.value && (n.value.scrollTop = 0);
112
+ M = 0, v.value = 0, s.value && (s.value.scrollTop = 0);
123
113
  }
124
- V(() => [a.query, a.page, a.pageSize, a.virtual], ve), V(
125
- () => a.items.length,
114
+ F(() => [l.query, l.page, l.pageSize, l.virtual], ve), F(
115
+ () => l.items.length,
126
116
  () => {
127
- n.value && h.value > a.items.length * c.value && (n.value.scrollTop = Math.max(
117
+ s.value && v.value > l.items.length * f.value && (s.value.scrollTop = Math.max(
128
118
  0,
129
- a.items.length * c.value - H.value
130
- ), h.value = n.value.scrollTop);
119
+ l.items.length * f.value - q.value
120
+ ), v.value = s.value.scrollTop);
131
121
  }
132
122
  );
133
- async function fe(l) {
134
- var r, T;
135
- const i = a.items[l];
123
+ async function ge(t) {
124
+ var n, o;
125
+ const i = l.items[t];
136
126
  if (!i) return;
137
- if (a.virtual && n.value) {
138
- const b = l * c.value;
139
- b < n.value.scrollTop ? n.value.scrollTop = b : b + c.value > n.value.scrollTop + (x.value || H.value) && (n.value.scrollTop = b + c.value - (x.value || H.value)), h.value = n.value.scrollTop, M = n.value.scrollTop;
127
+ if (l.virtual && s.value) {
128
+ const b = t * f.value;
129
+ b < s.value.scrollTop ? s.value.scrollTop = b : b + f.value > s.value.scrollTop + (D.value || q.value) && (s.value.scrollTop = b + f.value - (D.value || q.value)), v.value = s.value.scrollTop, M = s.value.scrollTop;
140
130
  }
141
- if (await R(), !y) return;
142
- const t = [
143
- ...((r = n.value) == null ? void 0 : r.querySelectorAll("[data-transfer-key]")) ?? []
144
- ].find((b) => b.dataset.transferKey === q(i.key));
145
- (T = t == null ? void 0 : t.querySelector("input:not(:disabled),button:not(:disabled)")) == null || T.focus({ preventScroll: a.virtual });
131
+ if (await W(), !g) return;
132
+ const a = [
133
+ ...((n = s.value) == null ? void 0 : n.querySelectorAll("[data-transfer-key]")) ?? []
134
+ ].find((b) => b.dataset.transferKey === T(i.key));
135
+ (o = a == null ? void 0 : a.querySelector("input:not(:disabled),button:not(:disabled)")) == null || o.focus({ preventScroll: l.virtual });
136
+ }
137
+ let C, P;
138
+ function V(t) {
139
+ const i = l.items.findIndex((o) => o.key === t);
140
+ if (i < 0) return;
141
+ const a = l.items.findIndex((o) => o.key === C), n = a < 0 ? i : a;
142
+ a < 0 && (C = t), u(
143
+ "rangeCheck",
144
+ l.items.slice(Math.min(n, i), Math.max(n, i) + 1).filter((o) => !o.disabled).map((o) => o.key)
145
+ );
146
146
  }
147
- function he(l) {
148
- const i = l.target;
149
- if (!i.matches('input[type="checkbox"]') && !i.closest(".hys-ui-transfer-remove") || a.busy || !["ArrowUp", "ArrowDown", "Home", "End"].includes(l.key))
147
+ function te(t, i) {
148
+ const a = P === t;
149
+ if (P = void 0, a) {
150
+ V(t);
150
151
  return;
151
- const t = l.target.closest(
152
+ }
153
+ C = t, u("check", t, i);
154
+ }
155
+ function be(t, i) {
156
+ if (t.shiftKey || t.ctrlKey || t.metaKey) {
157
+ t.preventDefault();
158
+ return;
159
+ }
160
+ l.moveOnDoubleClick && !l.busy && !i.disabled && t.button === 0 && t.detail > 1 && !t.target.closest(
161
+ 'button,a,input,textarea,select,[contenteditable="true"]'
162
+ ) && t.preventDefault();
163
+ }
164
+ function ke(t, i) {
165
+ var n, o;
166
+ if (l.busy || i.disabled || !A.value) return;
167
+ const a = t.target;
168
+ if (!a.closest(
169
+ 'button,a,textarea,select,input:not([type="checkbox"]),[contenteditable="true"]'
170
+ )) {
171
+ if (a.matches('input[type="checkbox"]')) {
172
+ t.shiftKey && (P = i.key);
173
+ return;
174
+ }
175
+ if (l.moveOnDoubleClick && !t.shiftKey && !t.ctrlKey && !t.metaKey) {
176
+ t.preventDefault(), t.stopPropagation(), (n = t.currentTarget.querySelector("input:not(:disabled)")) == null || n.focus({ preventScroll: !0 });
177
+ return;
178
+ }
179
+ (t.shiftKey || t.ctrlKey || t.metaKey || !a.closest(".hys-ui-transfer-check")) && (t.preventDefault(), t.stopPropagation(), t.shiftKey ? V(i.key) : te(i.key, !H.value.has(i.key)), (o = t.currentTarget.querySelector("input:not(:disabled)")) == null || o.focus({ preventScroll: !0 }));
180
+ }
181
+ }
182
+ function me(t, i) {
183
+ !l.moveOnDoubleClick || t.shiftKey || t.ctrlKey || t.metaKey || l.busy || i.disabled || t.target.closest(
184
+ 'button,a,input,textarea,select,[contenteditable="true"]'
185
+ ) || (t.preventDefault(), t.stopPropagation(), u("moveItem", i.key));
186
+ }
187
+ F(
188
+ () => [l.query, l.page, l.pageSize],
189
+ () => {
190
+ C = void 0, P = void 0;
191
+ }
192
+ );
193
+ function we(t) {
194
+ var le;
195
+ const i = t.target;
196
+ if (!i.matches('input[type="checkbox"]') && !i.closest(".hys-ui-transfer-remove") || l.busy || !["ArrowUp", "ArrowDown", "Home", "End"].includes(t.key))
197
+ return;
198
+ const a = t.target.closest(
152
199
  "[data-transfer-key]"
153
200
  );
154
- if (!t) return;
155
- const r = a.items.map((A, me) => ({ item: A, index: me })).filter((A) => !A.item.disabled);
156
- if (!r.length) return;
157
- l.preventDefault();
158
- const T = r.findIndex(
159
- (A) => q(A.item.key) === t.dataset.transferKey
160
- ), b = l.key === "Home" ? 0 : l.key === "End" ? r.length - 1 : Math.max(
201
+ if (!a) return;
202
+ const n = l.items.map((z, U) => ({ item: z, index: U })).filter((z) => !z.item.disabled);
203
+ if (!n.length) return;
204
+ t.preventDefault();
205
+ const o = n.findIndex(
206
+ (z) => T(z.item.key) === a.dataset.transferKey
207
+ ), b = t.key === "Home" ? 0 : t.key === "End" ? n.length - 1 : Math.max(
161
208
  0,
162
209
  Math.min(
163
- r.length - 1,
164
- T + (l.key === "ArrowDown" ? 1 : -1)
210
+ n.length - 1,
211
+ o + (t.key === "ArrowDown" ? 1 : -1)
165
212
  )
166
213
  );
167
- fe(r[b].index);
214
+ if (t.shiftKey && A.value) {
215
+ const z = (le = l.items.find(
216
+ (U) => T(U.key) === a.dataset.transferKey
217
+ )) == null ? void 0 : le.key;
218
+ C === void 0 && (C = z), V(n[b].item.key);
219
+ }
220
+ ge(n[b].index);
168
221
  }
169
- function _() {
170
- y = !1, E++, v == null || v.disconnect(), v = void 0, S && cancelAnimationFrame(S), S = 0;
222
+ function ae() {
223
+ g = !1, C = void 0, P = void 0, L++, y == null || y.disconnect(), y = void 0, K && cancelAnimationFrame(K), K = 0;
171
224
  }
172
- we(_), ze(_), Se(F), V(() => a.virtual, F, { flush: "post" }), Te(() => {
173
- y = !0;
174
- const l = ++E;
175
- R(() => {
176
- !y || l !== E || !n.value || (n.value.scrollTop = M, h.value = n.value.scrollTop, F());
225
+ Ke(ae), Te(ae), De(N), F(() => l.virtual, N, { flush: "post" }), Me(() => {
226
+ g = !0;
227
+ const t = ++L;
228
+ W(() => {
229
+ !g || t !== L || !s.value || (s.value.scrollTop = M, v.value = s.value.scrollTop, N());
177
230
  });
178
231
  });
179
- async function ye(l) {
180
- if (!y || !n.value) return;
181
- let i = l.top;
182
- if (l.key !== void 0) {
183
- const t = a.items.findIndex((r) => r.key === l.key);
184
- if (t < 0) return;
185
- if (a.virtual) i = t * c.value;
232
+ async function Ce(t) {
233
+ if (!g || !s.value) return;
234
+ let i = t.top;
235
+ if (t.key !== void 0) {
236
+ const a = l.items.findIndex((n) => n.key === t.key);
237
+ if (a < 0) return;
238
+ if (l.virtual) i = a * f.value;
186
239
  else {
187
- await R();
188
- const r = [
189
- ...n.value.querySelectorAll("[data-transfer-key]")
190
- ].find((T) => T.dataset.transferKey === q(l.key));
191
- r && (i = r.offsetTop);
240
+ await W();
241
+ const n = [
242
+ ...s.value.querySelectorAll("[data-transfer-key]")
243
+ ].find((o) => o.dataset.transferKey === T(t.key));
244
+ n && (i = n.offsetTop);
192
245
  }
193
246
  }
194
- i !== void 0 && Number.isFinite(i) && (n.value.scrollTo({ top: i, behavior: l.behavior ?? "auto" }), M = n.value.scrollTop, a.virtual && (h.value = n.value.scrollTop));
247
+ i !== void 0 && Number.isFinite(i) && (s.value.scrollTo({ top: i, behavior: t.behavior ?? "auto" }), M = s.value.scrollTop, l.virtual && (v.value = s.value.scrollTop));
195
248
  }
196
- function ge() {
197
- var l, i, t;
198
- a.busy || (a.filterable ? (l = j.value) == null || l.focus() : (t = (i = X.value) == null ? void 0 : i.querySelector("input:not(:disabled),button:not(:disabled)")) == null || t.focus());
249
+ function ze() {
250
+ var t, i, a;
251
+ l.busy || (l.filterable ? (t = X.value) == null || t.focus() : (a = (i = J.value) == null ? void 0 : i.querySelector("input:not(:disabled),button:not(:disabled)")) == null || a.focus());
199
252
  }
200
- function be(l) {
201
- l.key === "Enter" && !l.isComposing && l.keyCode !== 229 && l.preventDefault();
253
+ function Se(t) {
254
+ t.key === "Enter" && !t.isComposing && t.keyCode !== 229 && t.preventDefault();
202
255
  }
203
- return ie({ scrollTo: ye, focus: ge }), (l, i) => (s(), u("section", Ce({
256
+ return oe({ scrollTo: Ce, focus: ze }), (t, i) => (r(), c("section", He({
204
257
  ref_key: "element",
205
- ref: X
206
- }, g(G), {
258
+ ref: J
259
+ }, k(de), {
207
260
  class: ["hys-ui-v4-pane hys-ui-transfer-pane", { "hys-ui-is-drop-target": e.dropTarget }],
208
261
  "data-side": e.side,
209
262
  "aria-label": e.title,
210
263
  "aria-busy": e.loading || void 0,
211
- onDragover: i[6] || (i[6] = (t) => d("dragOver", t)),
212
- onDragleave: i[7] || (i[7] = (t) => d("dragLeave", t)),
213
- onDrop: i[8] || (i[8] = (t) => d("drop", t))
264
+ onDragover: i[6] || (i[6] = (a) => u("dragOver", a)),
265
+ onDragleave: i[7] || (i[7] = (a) => u("dragLeave", a)),
266
+ onDrop: i[8] || (i[8] = (a) => u("drop", a))
214
267
  }), [
215
- m("header", Le, [
216
- z(l.$slots, "header", {
217
- info: N.value,
218
- allChecked: I.value,
219
- indeterminate: Q.value
268
+ m("header", Ne, [
269
+ S(t.$slots, "header", {
270
+ info: R.value,
271
+ allChecked: E.value,
272
+ indeterminate: Y.value
220
273
  }, () => [
221
- e.showSelectAll && L.value ? (s(), k(te, {
274
+ e.showSelectAll && A.value ? (r(), x(ne, {
222
275
  key: 0,
223
- "model-value": I.value,
224
- indeterminate: Q.value,
276
+ "model-value": E.value,
277
+ indeterminate: Y.value,
225
278
  size: e.size,
226
279
  disabled: e.busy || !B.value.length,
227
- "aria-label": g(le)(e.words.selectAll, { title: e.title }),
228
- onChange: i[0] || (i[0] = (t) => d("checkAll", t))
280
+ "aria-label": k(re)(e.words.selectAll, { title: e.title }),
281
+ onChange: i[0] || (i[0] = (a) => u("checkAll", a))
229
282
  }, {
230
- default: C(() => [
283
+ default: O(() => [
231
284
  m("strong", {
232
285
  id: e.id + "-title"
233
- }, f(e.title), 9, Ie)
286
+ }, h(e.title), 9, Ee)
234
287
  ]),
235
288
  _: 1
236
- }, 8, ["model-value", "indeterminate", "size", "disabled", "aria-label"])) : (s(), u("strong", {
289
+ }, 8, ["model-value", "indeterminate", "size", "disabled", "aria-label"])) : (r(), c("strong", {
237
290
  key: 1,
238
291
  id: e.id + "-title"
239
- }, f(e.title), 9, Ne)),
240
- m("span", Oe, f(e.format ? e.format(N.value) : e.checkedKeys.length ? e.checkedKeys.length + " / " + e.total : e.total), 1)
292
+ }, h(e.title), 9, Re)),
293
+ m("span", Ve, h(e.format ? e.format(R.value) : e.checkedKeys.length ? e.checkedKeys.length + " / " + e.total : e.total), 1)
241
294
  ], !0)
242
295
  ]),
243
- e.filterable ? (s(), k($e, {
296
+ e.filterable ? (r(), x($e, {
244
297
  key: 0,
245
298
  ref_key: "searchInput",
246
- ref: j,
299
+ ref: X,
247
300
  class: "hys-ui-pf-transfer-search",
248
301
  "model-value": e.query,
249
302
  size: e.size,
@@ -251,179 +304,175 @@ const Fe = ["data-side", "aria-label", "aria-busy"], Le = { class: "hys-ui-pf-tr
251
304
  "aria-label": e.placeholder + " · " + e.title,
252
305
  disabled: e.busy,
253
306
  clearable: "",
254
- "onUpdate:modelValue": i[1] || (i[1] = (t) => d("search", String(t))),
255
- onKeydown: be
307
+ "onUpdate:modelValue": i[1] || (i[1] = (a) => u("search", String(a))),
308
+ onKeydown: Se
256
309
  }, {
257
- prefix: C(() => [
258
- K(g(Ae), {
310
+ prefix: O(() => [
311
+ $(k(qe), {
259
312
  size: 14,
260
313
  "aria-hidden": "true"
261
314
  })
262
315
  ]),
263
316
  _: 1
264
317
  }, 8, ["model-value", "size", "placeholder", "aria-label", "disabled"])) : w("", !0),
265
- m("div", Ve, [
318
+ m("div", Ue, [
266
319
  m("div", {
267
320
  ref_key: "viewport",
268
- ref: n,
269
- class: ee(["hys-ui-pf-transfer-list", { "hys-ui-transfer-virtual": e.virtual }]),
270
- style: U({
271
- height: H.value + "px",
272
- "--hys-ui-transfer-item-height": c.value + "px",
321
+ ref: s,
322
+ class: ie(["hys-ui-pf-transfer-list", { "hys-ui-transfer-virtual": e.virtual }]),
323
+ style: j({
324
+ height: q.value + "px",
325
+ "--hys-ui-transfer-item-height": f.value + "px",
273
326
  ...e.listStyle
274
327
  }),
275
328
  role: "group",
276
329
  "aria-label": e.title,
277
- onScrollPassive: ce,
278
- onKeydown: he
330
+ onScrollPassive: he,
331
+ onKeydown: we
279
332
  }, [
280
- z(l.$slots, "panel", {}, () => [
333
+ S(t.$slots, "panel", {}, () => [
281
334
  m("div", {
282
335
  class: "hys-ui-transfer-content",
283
- style: U(
336
+ style: j(
284
337
  e.virtual ? {
285
- height: e.items.length * c.value + "px",
338
+ height: e.items.length * f.value + "px",
286
339
  position: "relative"
287
340
  } : void 0
288
341
  )
289
342
  }, [
290
- (s(), k(xe(O.value ? Me : "div"), {
291
- name: O.value ? "hys-ui-transfer-motion" : void 0,
292
- tag: O.value ? "div" : void 0,
343
+ m("div", {
293
344
  class: "hys-ui-transfer-rows",
294
- style: U(
345
+ style: j(
295
346
  e.virtual ? {
296
347
  position: "absolute",
297
- top: Z.value * c.value + "px",
348
+ top: _.value * f.value + "px",
298
349
  left: 0,
299
350
  right: 0
300
351
  } : void 0
301
- ),
302
- onBeforeLeave: de,
303
- onBeforeEnter: ue
304
- }, {
305
- default: C(() => [
306
- (s(!0), u(W, null, Be(oe.value, (t) => (s(), u("div", {
307
- key: g(q)(t.key),
308
- class: ee(["hys-ui-v4-option hys-ui-transfer-row", {
309
- "hys-ui-is-checked": $.value.has(t.key),
310
- "hys-ui-is-disabled": t.disabled,
311
- "hys-ui-is-dragging": se.value.has(t.key)
312
- }]),
313
- "data-transfer-key": g(q)(t.key),
314
- draggable: e.draggable && !e.busy && !t.disabled && !(e.oneWay && e.side === "right"),
315
- title: t.disabled ? void 0 : e.side === "left" ? e.words.dragRight : e.words.dragLeft,
316
- onDragstart: (r) => d("dragStart", r, t.key),
317
- onDragend: i[2] || (i[2] = (r) => d("dragEnd"))
318
- }, [
319
- L.value ? (s(), k(te, {
320
- key: 0,
321
- class: "hys-ui-transfer-check",
322
- size: e.size,
323
- "model-value": $.value.has(t.key),
324
- disabled: e.busy || t.disabled,
325
- "aria-label": t.label,
326
- onChange: (r) => d("check", t.key, r)
327
- }, {
328
- default: C(() => [
329
- m("span", We, [
330
- z(l.$slots, "option", {
331
- option: t.option,
332
- label: t.label,
333
- checked: $.value.has(t.key),
334
- disabled: e.busy || t.disabled
335
- }, () => [
336
- e.renderContent ? (s(), k(p, {
337
- key: 0,
338
- item: t.option
339
- }, null, 8, ["item"])) : (s(), u(W, { key: 1 }, [
340
- P(f(t.label), 1)
341
- ], 64))
342
- ], !0)
343
- ])
344
- ]),
345
- _: 2
346
- }, 1032, ["size", "model-value", "disabled", "aria-label", "onChange"])) : (s(), u("span", Ge, [
347
- z(l.$slots, "option", {
348
- option: t.option,
349
- label: t.label,
350
- checked: !1,
351
- disabled: e.busy || t.disabled
352
- }, () => [
353
- e.renderContent ? (s(), k(p, {
354
- key: 0,
355
- item: t.option
356
- }, null, 8, ["item"])) : (s(), u(W, { key: 1 }, [
357
- P(f(t.label), 1)
358
- ], 64))
359
- ], !0)
360
- ])),
361
- e.oneWay && e.side === "right" ? (s(), k(ae, {
362
- key: 2,
363
- variant: "ghost",
364
- size: "sm",
365
- class: "hys-ui-transfer-remove",
366
- disabled: e.busy || t.disabled,
367
- "aria-label": g(le)(e.words.remove, { label: t.label }),
368
- onClick: He((r) => d("remove", t.key), ["stop"])
369
- }, {
370
- default: C(() => [
371
- K(g(De), {
372
- size: 14,
373
- "aria-hidden": "true"
374
- })
375
- ]),
376
- _: 1
377
- }, 8, ["disabled", "aria-label", "onClick"])) : e.draggable && !t.disabled ? (s(), k(g(Ke), {
378
- key: 3,
379
- class: "hys-ui-pf-transfer-grip",
380
- size: 12,
381
- "aria-hidden": "true"
382
- })) : w("", !0)
383
- ], 42, Ue))), 128))
384
- ]),
385
- _: 3
386
- }, 40, ["name", "tag", "style"]))
352
+ )
353
+ }, [
354
+ (r(!0), c(G, null, Be(ye.value, (a) => (r(), c("div", {
355
+ key: k(T)(a.key),
356
+ class: ie(["hys-ui-v4-option hys-ui-transfer-row", {
357
+ "hys-ui-is-checked": H.value.has(a.key),
358
+ "hys-ui-is-disabled": a.disabled,
359
+ "hys-ui-is-dragging": ce.value.has(a.key)
360
+ }]),
361
+ "data-transfer-key": k(T)(a.key),
362
+ draggable: e.draggable && !e.busy && !a.disabled && !(e.oneWay && e.side === "right"),
363
+ title: a.disabled ? void 0 : e.moveOnDoubleClick ? e.side === "left" ? e.words.doubleClickRight : e.words.doubleClickLeft : e.side === "left" ? e.words.dragRight : e.words.dragLeft,
364
+ onClickCapture: (n) => ke(n, a),
365
+ onDblclick: (n) => me(n, a),
366
+ onMousedown: (n) => be(n, a),
367
+ onDragstart: (n) => u("dragStart", n, a.key),
368
+ onDragend: i[2] || (i[2] = (n) => u("dragEnd"))
369
+ }, [
370
+ A.value ? (r(), x(ne, {
371
+ key: 0,
372
+ class: "hys-ui-transfer-check",
373
+ size: e.size,
374
+ "model-value": H.value.has(a.key),
375
+ disabled: e.busy || a.disabled,
376
+ "aria-label": a.label,
377
+ onChange: (n) => te(a.key, n)
378
+ }, {
379
+ default: O(() => [
380
+ m("span", Ge, [
381
+ S(t.$slots, "option", {
382
+ option: a.option,
383
+ label: a.label,
384
+ checked: H.value.has(a.key),
385
+ disabled: e.busy || a.disabled
386
+ }, () => [
387
+ e.renderContent ? (r(), x(ee, {
388
+ key: 0,
389
+ item: a.option
390
+ }, null, 8, ["item"])) : (r(), c(G, { key: 1 }, [
391
+ p(h(a.label), 1)
392
+ ], 64))
393
+ ], !0)
394
+ ])
395
+ ]),
396
+ _: 2
397
+ }, 1032, ["size", "model-value", "disabled", "aria-label", "onChange"])) : (r(), c("span", Xe, [
398
+ S(t.$slots, "option", {
399
+ option: a.option,
400
+ label: a.label,
401
+ checked: !1,
402
+ disabled: e.busy || a.disabled
403
+ }, () => [
404
+ e.renderContent ? (r(), x(ee, {
405
+ key: 0,
406
+ item: a.option
407
+ }, null, 8, ["item"])) : (r(), c(G, { key: 1 }, [
408
+ p(h(a.label), 1)
409
+ ], 64))
410
+ ], !0)
411
+ ])),
412
+ e.oneWay && e.side === "right" ? (r(), x(se, {
413
+ key: 2,
414
+ variant: "ghost",
415
+ size: "sm",
416
+ class: "hys-ui-transfer-remove",
417
+ disabled: e.busy || a.disabled,
418
+ "aria-label": k(re)(e.words.remove, { label: a.label }),
419
+ onClick: Ae((n) => u("remove", a.key), ["stop"])
420
+ }, {
421
+ default: O(() => [
422
+ $(k(Pe), {
423
+ size: 14,
424
+ "aria-hidden": "true"
425
+ })
426
+ ]),
427
+ _: 1
428
+ }, 8, ["disabled", "aria-label", "onClick"])) : e.draggable && !a.disabled ? (r(), x(k(Ie), {
429
+ key: 3,
430
+ class: "hys-ui-pf-transfer-grip",
431
+ size: 12,
432
+ "aria-hidden": "true"
433
+ })) : w("", !0)
434
+ ], 42, je))), 128))
435
+ ], 4)
387
436
  ], 4),
388
- !e.items.length && !e.loading ? (s(), u("div", je, [
389
- z(l.$slots, "empty", { query: e.query }, () => [
390
- P(f(e.query ? e.words.noMatch : e.side === "left" ? e.words.emptyLeft : e.words.emptyRight), 1)
437
+ !e.items.length && !e.loading ? (r(), c("div", Je, [
438
+ S(t.$slots, "empty", { query: e.query }, () => [
439
+ p(h(e.query ? e.words.noMatch : e.side === "left" ? e.words.emptyLeft : e.words.emptyRight), 1)
391
440
  ], !0)
392
441
  ])) : w("", !0)
393
442
  ], !0)
394
- ], 46, Re),
395
- e.loading ? (s(), u("div", {
443
+ ], 46, We),
444
+ e.loading ? (r(), c("div", {
396
445
  key: 0,
397
446
  class: "hys-ui-transfer-loading",
398
447
  role: "status",
399
448
  "aria-label": e.words.loading
400
449
  }, [
401
- z(l.$slots, "loading", {}, () => [
402
- K(g(qe), {
450
+ S(t.$slots, "loading", {}, () => [
451
+ $(k(Oe), {
403
452
  size: 18,
404
453
  class: "hys-ui-icon-spin",
405
454
  "aria-hidden": "true"
406
455
  }),
407
- m("span", null, f(e.words.loading), 1)
456
+ m("span", null, h(e.words.loading), 1)
408
457
  ], !0)
409
- ], 8, Xe)) : w("", !0)
458
+ ], 8, Qe)) : w("", !0)
410
459
  ]),
411
- e.showInvert && L.value ? (s(), u("div", Je, [
412
- K(ae, {
460
+ e.showInvert && A.value ? (r(), c("div", Ye, [
461
+ $(se, {
413
462
  variant: "ghost",
414
463
  size: "sm",
415
464
  disabled: e.busy || !B.value.length,
416
- onClick: i[3] || (i[3] = (t) => d("invert"))
465
+ onClick: i[3] || (i[3] = (a) => u("invert"))
417
466
  }, {
418
- default: C(() => [
419
- P(f(e.words.invert), 1)
467
+ default: O(() => [
468
+ p(h(e.words.invert), 1)
420
469
  ]),
421
470
  _: 1
422
471
  }, 8, ["disabled"]),
423
- e.filtered !== e.total ? (s(), u("span", Qe, f(e.filtered) + " / " + f(e.total), 1)) : w("", !0)
472
+ e.filtered !== e.total ? (r(), c("span", Ze, h(e.filtered) + " / " + h(e.total), 1)) : w("", !0)
424
473
  ])) : w("", !0),
425
- e.pagination ? (s(), u("div", Ye, [
426
- K(Pe, {
474
+ e.pagination ? (r(), c("div", _e, [
475
+ $(Fe, {
427
476
  page: e.page,
428
477
  "page-size": e.pageSize,
429
478
  total: e.filtered,
@@ -439,16 +488,16 @@ const Fe = ["data-side", "aria-label", "aria-busy"], Le = { class: "hys-ui-pf-tr
439
488
  last: e.words.lastPage,
440
489
  perPage: e.words.perPage
441
490
  },
442
- "onUpdate:page": i[4] || (i[4] = (t) => d("page", t)),
443
- "onUpdate:pageSize": i[5] || (i[5] = (t) => d("pageSize", t))
491
+ "onUpdate:page": i[4] || (i[4] = (a) => u("page", a)),
492
+ "onUpdate:pageSize": i[5] || (i[5] = (a) => u("pageSize", a))
444
493
  }, null, 8, ["page", "page-size", "total", "disabled", "compact", "show-size-changer", "page-size-options", "labels"])
445
494
  ])) : w("", !0),
446
- l.$slots.footer ? (s(), u("footer", Ze, [
447
- z(l.$slots, "footer", { info: N.value }, void 0, !0)
495
+ t.$slots.footer ? (r(), c("footer", et, [
496
+ S(t.$slots, "footer", { info: R.value }, void 0, !0)
448
497
  ])) : w("", !0)
449
- ], 16, Fe));
498
+ ], 16, Le));
450
499
  }
451
500
  });
452
501
  export {
453
- st as default
502
+ ut as default
454
503
  };