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,36 +1,255 @@
1
- import { defineComponent as m, computed as p, openBlock as t, createElementBlock as s, mergeProps as d, unref as y, Fragment as h, renderList as g, normalizeStyle as _, normalizeClass as f, renderSlot as k, createElementVNode as v, toDisplayString as o, createCommentVNode as l } from "vue";
2
- import { useHysRootAttrs as B } from "../../config.js";
3
- const C = { key: 0 }, S = { key: 1 }, z = {
1
+ import { defineComponent as se, useSlots as le, ref as Q, onActivated as oe, onDeactivated as re, computed as c, toRaw as U, openBlock as l, createElementBlock as a, mergeProps as u, unref as C, Fragment as _, renderList as ae, normalizeStyle as ue, normalizeClass as j, renderSlot as m, createTextVNode as f, toDisplayString as g, createCommentVNode as p, createElementVNode as k, createBlock as D, resolveDynamicComponent as me } from "vue";
2
+ import { LoaderCircle as X } from "lucide-vue-next";
3
+ import { useHysRootAttrs as de } from "../../config.js";
4
+ import { timelineRead as Y, timelineText as b, timelineTone as ye } from "../../composables/timeline.js";
5
+ import { feedbackNumber as ce } from "../../composables/feedback.js";
6
+ const pe = ["data-mode", "aria-label", "aria-busy"], he = ["data-position", "aria-current"], fe = {
4
7
  key: 0,
5
- class: "hys-ui-pending"
6
- }, N = /* @__PURE__ */ m({
8
+ class: "hys-ui-timeline-label"
9
+ }, ge = {
10
+ class: "hys-ui-timeline-rail",
11
+ "aria-hidden": "true"
12
+ }, ve = { class: "hys-ui-timeline-content" }, ke = ["datetime"], be = {
13
+ key: 1,
14
+ class: "hys-ui-timeline-title"
15
+ }, Te = ["datetime"], we = {
16
+ key: 3,
17
+ class: "hys-ui-timeline-description"
18
+ }, ze = {
19
+ class: "hys-ui-timeline-rail",
20
+ "aria-hidden": "true"
21
+ }, Se = { class: "hys-ui-timeline-content" }, $e = {
22
+ key: 0,
23
+ class: "hys-ui-timeline-empty"
24
+ }, Le = /* @__PURE__ */ se({
7
25
  __name: "HysTimeline",
8
26
  props: {
9
27
  items: {},
10
28
  reverse: { type: Boolean },
11
- pending: {}
29
+ pending: { type: [String, Boolean], default: void 0 },
30
+ mode: { default: "left" },
31
+ itemKey: {},
32
+ fieldNames: {},
33
+ size: { default: "md" },
34
+ hollow: { type: Boolean },
35
+ showTime: { type: Boolean, default: !0 },
36
+ timePlacement: { default: "bottom" },
37
+ responsive: { type: Boolean, default: !0 },
38
+ lineStyle: { default: "solid" },
39
+ lineColor: {},
40
+ pendingPosition: { default: "end" },
41
+ pendingLoading: { type: Boolean, default: void 0 },
42
+ pendingText: { default: "加载中…" },
43
+ emptyText: {},
44
+ ariaLabel: {}
12
45
  },
13
- setup(r) {
14
- const c = B(), n = r, u = p(() => n.reverse ? [...n.items].reverse() : n.items);
15
- return (a, A) => (t(), s("ol", d(y(c), { class: "hys-ui-ex-timeline" }), [
16
- (t(!0), s(h, null, g(u.value, (e, i) => (t(), s("li", {
17
- key: i,
18
- class: f(e.status ? "hys-ui-" + e.status : void 0),
19
- style: _({ "--hys-ui-timeline-color": e.color })
46
+ setup(o, { expose: Z }) {
47
+ const n = o, r = le(), R = de(), V = Q(), P = Q(!0);
48
+ oe(() => P.value = !0), re(() => P.value = !1);
49
+ const w = /* @__PURE__ */ new WeakMap();
50
+ let ee = 0;
51
+ const s = (t, y) => {
52
+ var e;
53
+ return Y(t, ((e = n.fieldNames) == null ? void 0 : e[y]) ?? y);
54
+ }, z = c(() => {
55
+ const t = /* @__PURE__ */ new Set(), y = /* @__PURE__ */ new Set(), e = n.items.map((i, d) => ({ item: i, sourceIndex: d })).filter(({ item: i }) => i && typeof i == "object").map(({ item: i, sourceIndex: d }) => {
56
+ const v = typeof n.itemKey == "function" ? n.itemKey(i, d) : n.itemKey ? Y(i, n.itemKey) : s(i, "id") ?? s(i, "key"), W = typeof v == "string" || typeof v == "number" && Number.isFinite(v), K = typeof v + ":" + String(v), S = U(i);
57
+ w.has(S) || w.set(S, ++ee);
58
+ let $ = W && !t.has(K) ? "key:" + K : "object:" + w.get(S);
59
+ t.add(K), y.has($) && ($ += ":occurrence:" + d), y.add($);
60
+ const q = s(i, "status"), N = ["done", "current", "pending"].includes(
61
+ q
62
+ ) ? q : void 0, I = s(i, "tone"), M = ["primary", "success", "warning", "danger", "info", "neutral"].includes(
63
+ I
64
+ ) ? I : N === "done" || N === "current" ? "primary" : "neutral", L = s(i, "position"), G = L === "left" || L === "right" ? L : void 0, B = s(i, "icon"), J = B && typeof B == "object" ? U(B) : B, O = !!s(i, "loading"), x = s(i, "size"), ne = typeof x == "number" ? ce(x, 10, 4, 64) : { sm: 8, md: 10, lg: 14 }[x] ?? (J || r.dot || O ? 18 : { sm: 8, md: 10, lg: 14 }[n.size] ?? 10);
65
+ return {
66
+ item: i,
67
+ sourceIndex: d,
68
+ renderKey: $,
69
+ key: W ? v : w.get(S),
70
+ status: N,
71
+ tone: M,
72
+ icon: J,
73
+ loading: O,
74
+ nodeSize: ne,
75
+ title: b(s(i, "title")),
76
+ description: b(s(i, "description")),
77
+ time: b(s(i, "time")),
78
+ dateTime: b(s(i, "dateTime")),
79
+ label: b(s(i, "label")),
80
+ color: b(s(i, "color")) || ye(M),
81
+ position: G,
82
+ explicitPosition: !!G,
83
+ hollow: s(i, "hollow") ?? n.hollow,
84
+ hideTime: s(i, "hideTime"),
85
+ placement: s(i, "timePlacement") ?? n.timePlacement
86
+ };
87
+ });
88
+ return (n.reverse ? [...e].reverse() : e).map(
89
+ (i, d) => ({
90
+ ...i,
91
+ index: d,
92
+ position: i.position ?? (n.mode === "right" || n.mode === "alternate" && d % 2 === 1 || n.mode === "alternate-reverse" && d % 2 === 0 ? "left" : "right")
93
+ })
94
+ );
95
+ }), te = c(
96
+ () => n.mode.startsWith("alternate") || !!r.label || z.value.some((t) => t.label || t.explicitPosition)
97
+ ), A = c(
98
+ () => n.pending !== !1 && (n.pending === !0 || !!n.pending || !!r.pending)
99
+ ), T = c(
100
+ () => n.pendingLoading ?? n.pending === !0
101
+ ), E = c(() => ({
102
+ pending: n.pending,
103
+ loading: T.value
104
+ })), F = c(
105
+ () => T.value || !!r["pending-dot"]
106
+ ), ie = c(
107
+ () => F.value ? 18 : { sm: 8, md: 10, lg: 14 }[n.size] ?? 10
108
+ ), h = (t) => ({
109
+ item: t.item,
110
+ index: t.index,
111
+ sourceIndex: t.sourceIndex,
112
+ key: t.key,
113
+ title: t.title,
114
+ time: t.time,
115
+ description: t.description,
116
+ label: t.label,
117
+ position: t.position,
118
+ status: t.status,
119
+ tone: t.tone,
120
+ loading: t.loading
121
+ }), H = c(() => {
122
+ const t = z.value.map((y) => ({ kind: "item", entry: y }));
123
+ return A.value && (n.pendingPosition === "start" ? t.unshift({ kind: "pending" }) : t.push({ kind: "pending" })), t;
124
+ });
125
+ return Z({
126
+ element: V,
127
+ getItems: () => z.value.map((t) => t.item)
128
+ }), (t, y) => (l(), a("ol", u({
129
+ ref_key: "element",
130
+ ref: V
131
+ }, C(R), {
132
+ class: ["hys-ui-ex-timeline hys-ui-timeline", [
133
+ "hys-ui-timeline-" + o.size,
134
+ {
135
+ "hys-ui-timeline-centered": te.value,
136
+ "hys-ui-timeline-responsive": o.responsive,
137
+ "hys-ui-timeline-motion": P.value && C(R)["data-hys-motion"] !== "off"
138
+ }
139
+ ]],
140
+ "data-mode": o.mode,
141
+ style: {
142
+ "--hys-ui-timeline-line-color": o.lineColor || "var(--hys-ui-border,var(--hys-ui-theme-border))",
143
+ "--hys-ui-timeline-line-style": o.lineStyle
144
+ },
145
+ role: "list",
146
+ "aria-label": o.ariaLabel,
147
+ "aria-busy": T.value && A.value || z.value.some((e) => e.loading) || void 0
148
+ }), [
149
+ (l(!0), a(_, null, ae(H.value, (e) => (l(), a("li", {
150
+ key: e.kind === "pending" ? "pending" : e.entry.renderKey,
151
+ class: j([
152
+ "hys-ui-timeline-item",
153
+ e.kind === "item" ? [
154
+ e.entry.status ? "hys-ui-" + e.entry.status : void 0,
155
+ {
156
+ "hys-ui-timeline-has-label": !!e.entry.label || !!r.label
157
+ }
158
+ ] : ["hys-ui-pending", "hys-ui-timeline-pending"]
159
+ ]),
160
+ "data-position": e.kind === "item" ? e.entry.position : o.mode === "right" ? "left" : "right",
161
+ "aria-current": e.kind === "item" && e.entry.status === "current" ? "step" : void 0,
162
+ style: ue({
163
+ "--hys-ui-timeline-color": e.kind === "item" ? e.entry.color : T.value ? "var(--hys-ui-primary,var(--hys-ui-theme-primary))" : "var(--hys-ui-muted,var(--hys-ui-theme-muted))",
164
+ "--hys-ui-timeline-node-size": (e.kind === "item" ? e.entry.nodeSize : ie.value) + "px"
165
+ })
20
166
  }, [
21
- k(a.$slots, "item", {
22
- item: e,
23
- index: i
24
- }, () => [
25
- v("strong", null, o(e.title), 1),
26
- e.time ? (t(), s("small", C, o(e.time), 1)) : l("", !0),
27
- e.description ? (t(), s("p", S, o(e.description), 1)) : l("", !0)
167
+ e.kind === "item" ? (l(), a(_, { key: 0 }, [
168
+ e.entry.label || r.label ? (l(), a("div", fe, [
169
+ m(t.$slots, "label", u({ ref_for: !0 }, h(e.entry)), () => [
170
+ f(g(e.entry.label), 1)
171
+ ], !0)
172
+ ])) : p("", !0),
173
+ k("div", ge, [
174
+ k("span", {
175
+ class: j(["hys-ui-timeline-dot", {
176
+ "hys-ui-timeline-hollow": e.entry.hollow,
177
+ "hys-ui-timeline-custom-dot": !!e.entry.icon || !!r.dot || e.entry.loading
178
+ }])
179
+ }, [
180
+ m(t.$slots, "dot", u({ ref_for: !0 }, h(e.entry)), () => [
181
+ e.entry.loading ? (l(), D(C(X), {
182
+ key: 0,
183
+ class: "hys-ui-timeline-spinner",
184
+ size: e.entry.nodeSize
185
+ }, null, 8, ["size"])) : e.entry.icon ? (l(), D(me(e.entry.icon), {
186
+ key: 1,
187
+ size: e.entry.nodeSize
188
+ }, null, 8, ["size"])) : p("", !0)
189
+ ], !0)
190
+ ], 2)
191
+ ]),
192
+ k("div", ve, [
193
+ m(t.$slots, "item", u({ ref_for: !0 }, h(e.entry)), () => [
194
+ o.showTime && !e.entry.hideTime && e.entry.placement === "top" && (e.entry.time || r.time) ? (l(), a("time", {
195
+ key: 0,
196
+ class: "hys-ui-timeline-time hys-ui-timeline-time-top",
197
+ datetime: e.entry.dateTime || void 0
198
+ }, [
199
+ m(t.$slots, "time", u({ ref_for: !0 }, h(e.entry)), () => [
200
+ f(g(e.entry.time), 1)
201
+ ], !0)
202
+ ], 8, ke)) : p("", !0),
203
+ e.entry.title || r.title ? (l(), a("strong", be, [
204
+ m(t.$slots, "title", u({ ref_for: !0 }, h(e.entry)), () => [
205
+ f(g(e.entry.title), 1)
206
+ ], !0)
207
+ ])) : p("", !0),
208
+ o.showTime && !e.entry.hideTime && e.entry.placement !== "top" && (e.entry.time || r.time) ? (l(), a("time", {
209
+ key: 2,
210
+ class: "hys-ui-timeline-time",
211
+ datetime: e.entry.dateTime || void 0
212
+ }, [
213
+ m(t.$slots, "time", u({ ref_for: !0 }, h(e.entry)), () => [
214
+ f(g(e.entry.time), 1)
215
+ ], !0)
216
+ ], 8, Te)) : p("", !0),
217
+ e.entry.description || r.description ? (l(), a("div", we, [
218
+ m(t.$slots, "description", u({ ref_for: !0 }, h(e.entry)), () => [
219
+ f(g(e.entry.description), 1)
220
+ ], !0)
221
+ ])) : p("", !0)
222
+ ], !0)
223
+ ])
224
+ ], 64)) : (l(), a(_, { key: 1 }, [
225
+ k("div", ze, [
226
+ k("span", {
227
+ class: j(["hys-ui-timeline-dot hys-ui-timeline-hollow", { "hys-ui-timeline-custom-dot": F.value }])
228
+ }, [
229
+ m(t.$slots, "pending-dot", u({ ref_for: !0 }, E.value), () => [
230
+ T.value ? (l(), D(C(X), {
231
+ key: 0,
232
+ class: "hys-ui-timeline-spinner",
233
+ size: 18
234
+ })) : p("", !0)
235
+ ], !0)
236
+ ], 2)
237
+ ]),
238
+ k("div", Se, [
239
+ m(t.$slots, "pending", u({ ref_for: !0 }, E.value), () => [
240
+ f(g(typeof n.pending == "string" ? n.pending : o.pendingText), 1)
241
+ ], !0)
242
+ ])
243
+ ], 64))
244
+ ], 14, he))), 128)),
245
+ !H.value.length && (r.empty || o.emptyText) ? (l(), a("li", $e, [
246
+ m(t.$slots, "empty", {}, () => [
247
+ f(g(o.emptyText), 1)
28
248
  ], !0)
29
- ], 6))), 128)),
30
- r.pending ? (t(), s("li", z, o(r.pending), 1)) : l("", !0)
31
- ], 16));
249
+ ])) : p("", !0)
250
+ ], 16, pe));
32
251
  }
33
252
  });
34
253
  export {
35
- N as default
254
+ Le as default
36
255
  };
@@ -1,66 +1,7 @@
1
- import { defineComponent as x, ref as y, useId as B, watch as b, onBeforeUnmount as F, onDeactivated as C, openBlock as s, createElementBlock as h, Fragment as N, createElementVNode as P, mergeProps as g, unref as e, renderSlot as T, createBlock as V, Teleport as A, createTextVNode as E, toDisplayString as H, createCommentVNode as R } from "vue";
2
- import { useHysRootAttrs as S } from "../../config.js";
3
- import { useFloating as $ } from "../../composables/useFloating.js";
4
- const I = ["tabindex", "aria-describedby"], U = ["id"], J = /* @__PURE__ */ x({
5
- __name: "HysTooltip",
6
- props: {
7
- text: {},
8
- placement: { default: "top-start" },
9
- disabled: { type: Boolean },
10
- showDelay: { default: 0 },
11
- hideDelay: { default: 70 }
12
- },
13
- emits: ["visibleChange"],
14
- setup(i, { emit: v }) {
15
- const l = S(), o = i, k = v, c = y(), d = y(), u = B(), { open: a, style: D, show: _, close: m, restoringFocus: w } = $(c, d, { get placement() {
16
- return o.placement;
17
- }, gap: 7 });
18
- let n;
19
- function p() {
20
- clearTimeout(n), !o.disabled && !w.value && (n = setTimeout(() => _(), o.showDelay));
21
- }
22
- function f() {
23
- clearTimeout(n), n = setTimeout(() => m(), o.hideDelay);
24
- }
25
- function r() {
26
- clearTimeout(n), m();
27
- }
28
- return b(a, (t) => k("visibleChange", t)), b(() => o.disabled, (t) => {
29
- t && r();
30
- }), F(r), C(r), (t, j) => (s(), h(N, null, [
31
- P("span", g({
32
- ref_key: "trigger",
33
- ref: c
34
- }, e(l), {
35
- class: "hys-ui-tooltip-wrap",
36
- tabindex: i.disabled ? -1 : 0,
37
- "aria-describedby": e(a) ? e(u) : void 0,
38
- onPointerenter: p,
39
- onPointerleave: f,
40
- onFocusin: p,
41
- onFocusout: f
42
- }), [
43
- T(t.$slots, "default")
44
- ], 16, I),
45
- (s(), V(A, { to: "body" }, [
46
- e(a) ? (s(), h("span", g({
47
- key: 0,
48
- id: e(u),
49
- ref_key: "panel",
50
- ref: d
51
- }, e(l), {
52
- class: "hys-ui-tooltip-bubble hys-ui-floating-tooltip",
53
- role: "tooltip",
54
- style: e(D)
55
- }), [
56
- T(t.$slots, "content", {}, () => [
57
- E(H(i.text), 1)
58
- ])
59
- ], 16, U)) : R("", !0)
60
- ]))
61
- ], 64));
62
- }
63
- });
1
+ import o from "./HysTooltip2.vue.js";
2
+ /* empty css */
3
+ import t from "../../_virtual/_plugin-vue_export-helper.js";
4
+ const s = /* @__PURE__ */ t(o, [["__scopeId", "data-v-c0433916"]]);
64
5
  export {
65
- J as default
6
+ s as default
66
7
  };
@@ -1,4 +1,112 @@
1
- import f from "./HysTooltip.vue.js";
1
+ import { defineComponent as g, openBlock as v, createElementBlock as w, mergeProps as B, unref as o, createVNode as p, withCtx as u, renderSlot as s, normalizeProps as i, guardReactiveProps as d, createTextVNode as x, toDisplayString as k } from "vue";
2
+ import { useHysRootAttrs as P } from "../../config.js";
3
+ import { usePopupSurface as C } from "../../composables/usePopupSurface.js";
4
+ import O from "../../internal/PopupReference.js";
5
+ import E from "../../internal/PopupSurfacePanel.vue.js";
6
+ const D = /* @__PURE__ */ g({
7
+ __name: "HysTooltip",
8
+ props: {
9
+ text: {},
10
+ open: { type: Boolean, default: void 0 },
11
+ modelValue: { type: Boolean, default: void 0 },
12
+ defaultOpen: { type: Boolean },
13
+ disabled: { type: Boolean },
14
+ trigger: {},
15
+ triggerKeys: {},
16
+ triggerTabindex: {},
17
+ placement: { default: "top-start" },
18
+ offset: {},
19
+ autoAdjustOverflow: { type: Boolean, default: !0 },
20
+ showDelay: { default: 0 },
21
+ hideDelay: { default: 70 },
22
+ autoClose: {},
23
+ enterable: { type: Boolean, default: !1 },
24
+ closeOnEscape: { type: Boolean, default: !0 },
25
+ closeOnOutside: { type: Boolean, default: !0 },
26
+ destroyOnHide: { type: Boolean, default: !0 },
27
+ forceRender: { type: Boolean },
28
+ appendTo: { type: [String, Boolean], default: "body" },
29
+ reference: {},
30
+ width: {},
31
+ maxWidth: {},
32
+ maxHeight: {},
33
+ showArrow: { type: Boolean },
34
+ arrowOffset: {},
35
+ effect: { default: "dark" },
36
+ color: {},
37
+ textColor: {},
38
+ overlayClass: {},
39
+ overlayStyle: {},
40
+ contentClass: {},
41
+ contentStyle: {},
42
+ zIndex: {},
43
+ ariaLabel: {},
44
+ popupTransition: {},
45
+ popupTransitionDuration: {}
46
+ },
47
+ emits: ["update:open", "update:modelValue", "visibleChange", "openChange", "show", "hide", "opened", "closed"],
48
+ setup(l, { expose: f, emit: m }) {
49
+ const a = l, y = m, c = P(), e = C(
50
+ a,
51
+ "tooltip",
52
+ (r, ...n) => y(r, ...n)
53
+ );
54
+ return f({
55
+ element: e.panel,
56
+ referenceElement: e.actualReference,
57
+ open: e.open,
58
+ placement: e.placement,
59
+ show: e.show,
60
+ hide: e.hide,
61
+ close: e.hide,
62
+ toggle: e.toggle,
63
+ updatePosition: e.updatePosition,
64
+ focus: e.focus
65
+ }), (r, n) => (v(), w("span", B({
66
+ ref: (t) => o(e).wrapper.value = t
67
+ }, { ...o(c), ...o(e).wrapperAttrs.value }, {
68
+ class: "hys-ui-tooltip-wrap",
69
+ onPointerenter: n[1] || (n[1] = //@ts-ignore
70
+ (...t) => o(e).pointerEnter && o(e).pointerEnter(...t)),
71
+ onPointerleave: n[2] || (n[2] = //@ts-ignore
72
+ (...t) => o(e).pointerLeave && o(e).pointerLeave(...t)),
73
+ onFocusin: n[3] || (n[3] = //@ts-ignore
74
+ (...t) => o(e).focusIn && o(e).focusIn(...t)),
75
+ onFocusout: n[4] || (n[4] = //@ts-ignore
76
+ (...t) => o(e).focusOut && o(e).focusOut(...t)),
77
+ onClick: n[5] || (n[5] = //@ts-ignore
78
+ (...t) => o(e).click && o(e).click(...t)),
79
+ onContextmenu: n[6] || (n[6] = //@ts-ignore
80
+ (...t) => o(e).contextmenu && o(e).contextmenu(...t)),
81
+ onKeydown: n[7] || (n[7] = //@ts-ignore
82
+ (...t) => o(e).key && o(e).key(...t))
83
+ }), [
84
+ p(o(O), {
85
+ id: o(e).id,
86
+ open: o(e).open.value,
87
+ kind: "tooltip",
88
+ onElement: n[0] || (n[0] = (t) => o(e).referenceElement.value = t)
89
+ }, {
90
+ default: u(() => [
91
+ s(r.$slots, "default", i(d(o(e).scope.value)), void 0, !0)
92
+ ]),
93
+ _: 3
94
+ }, 8, ["id", "open"]),
95
+ p(E, {
96
+ surface: o(e),
97
+ options: a,
98
+ kind: "tooltip"
99
+ }, {
100
+ default: u((t) => [
101
+ s(r.$slots, "content", i(d(t)), () => [
102
+ x(k(l.text), 1)
103
+ ], !0)
104
+ ]),
105
+ _: 3
106
+ }, 8, ["surface"])
107
+ ], 16));
108
+ }
109
+ });
2
110
  export {
3
- f as default
111
+ D as default
4
112
  };