hys-ui 0.1.0 → 0.2.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 (247) hide show
  1. package/CHANGELOG.md +137 -1
  2. package/README.md +18 -6
  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 +14 -14
  6. package/dist/components/HysAnimatedNumber/HysAnimatedNumber.vue.js +23 -20
  7. package/dist/components/HysAutocomplete/HysAutocomplete.vue.js +7 -0
  8. package/dist/components/HysAutocomplete/HysAutocomplete2.vue.js +627 -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 +252 -0
  13. package/dist/components/HysBadge/HysBadge.vue.js +2 -2
  14. package/dist/components/HysBadge/HysBadge2.vue.js +154 -26
  15. package/dist/components/HysBreadcrumb/HysBreadcrumb.vue.js +5 -38
  16. package/dist/components/HysBreadcrumb/HysBreadcrumb2.vue.js +74 -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 -84
  20. package/dist/components/HysCalendar/HysCalendar2.vue.js +803 -2
  21. package/dist/components/HysCard/HysCard.vue.js +1 -1
  22. package/dist/components/HysCard/HysCard2.vue.js +177 -44
  23. package/dist/components/HysCascader/HysCascader.vue.js +5 -182
  24. package/dist/components/HysCascader/HysCascader2.vue.js +760 -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 +5 -39
  28. package/dist/components/HysCheckbox/HysCheckbox2.vue.js +200 -2
  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/HysColorPicker.vue.js +2 -2
  32. package/dist/components/HysColorPicker/HysColorPicker2.vue.js +107 -106
  33. package/dist/components/HysCommandPalette/HysCommandPalette.vue.js +52 -51
  34. package/dist/components/HysCommentEditor/HysCommentEditor.vue.js +17 -17
  35. package/dist/components/HysDataGrid/HysDataGrid.vue.js +1 -1
  36. package/dist/components/HysDataGrid/HysDataGrid2.vue.js +397 -390
  37. package/dist/components/HysDatePicker/HysDatePicker.vue.js +268 -139
  38. package/dist/components/HysDatePicker/HysDatePickerControl.vue.js +7 -0
  39. package/dist/components/HysDatePicker/HysDatePickerControl2.vue.js +807 -0
  40. package/dist/components/HysDatePicker/HysDatePickerPanel.vue.js +7 -0
  41. package/dist/components/HysDatePicker/HysDatePickerPanel2.vue.js +357 -0
  42. package/dist/components/HysDateRangePicker/HysDateRangePicker.vue.js +268 -158
  43. package/dist/components/HysDivider/HysDivider.vue.js +2 -2
  44. package/dist/components/HysDivider/HysDivider2.vue.js +33 -13
  45. package/dist/components/HysDrawer/HysDrawer.vue.js +1 -1
  46. package/dist/components/HysDrawer/HysDrawer2.vue.js +55 -54
  47. package/dist/components/HysFileManager/HysFileManager.vue.js +5 -63
  48. package/dist/components/HysFileManager/HysFileManager2.vue.js +86 -2
  49. package/dist/components/HysForm/HysForm.vue.js +3 -3
  50. package/dist/components/HysForm/HysForm2.vue.js +580 -92
  51. package/dist/components/HysFormItem/HysFormItem.vue.js +5 -69
  52. package/dist/components/HysFormItem/HysFormItem2.vue.js +521 -2
  53. package/dist/components/HysGantt/HysGantt.vue.js +5 -264
  54. package/dist/components/HysGantt/HysGantt2.vue.js +1399 -2
  55. package/dist/components/HysInput/HysInput.vue.js +2 -2
  56. package/dist/components/HysInput/HysInput2.vue.js +468 -120
  57. package/dist/components/HysMention/HysMention.vue.js +2 -2
  58. package/dist/components/HysMention/HysMention2.vue.js +89 -88
  59. package/dist/components/HysModal/HysModal.vue.js +2 -2
  60. package/dist/components/HysModal/HysModal2.vue.js +35 -35
  61. package/dist/components/HysNotificationCenter/HysNotificationCenter.vue.js +37 -36
  62. package/dist/components/HysNumberInput/HysNumberInput.vue.js +2 -2
  63. package/dist/components/HysNumberInput/HysNumberInput2.vue.js +561 -70
  64. package/dist/components/HysOrgTree/HysOrgTree.vue.js +41 -36
  65. package/dist/components/HysPagination/HysPagination.vue.js +2 -2
  66. package/dist/components/HysPagination/HysPagination2.vue.js +93 -91
  67. package/dist/components/HysPermissionMatrix/HysPermissionMatrix.vue.js +5 -41
  68. package/dist/components/HysPermissionMatrix/HysPermissionMatrix2.vue.js +101 -2
  69. package/dist/components/HysRadio/HysRadio.vue.js +7 -0
  70. package/dist/components/HysRadio/HysRadio2.vue.js +180 -0
  71. package/dist/components/HysRadioGroup/HysRadioGroup.vue.js +5 -40
  72. package/dist/components/HysRadioGroup/HysRadioGroup2.vue.js +205 -2
  73. package/dist/components/HysRating/HysRating.vue.js +1 -1
  74. package/dist/components/HysRating/HysRating2.vue.js +288 -68
  75. package/dist/components/HysResizablePanel/HysResizablePanel.vue.js +46 -28
  76. package/dist/components/HysRichTextEditor/HysRichTextEditor.vue.js +2 -2
  77. package/dist/components/HysRichTextEditor/HysRichTextEditor2.vue.js +87 -67
  78. package/dist/components/HysSearch/HysSearch.vue.js +50 -38
  79. package/dist/components/HysSegmented/HysSegmented.vue.js +5 -58
  80. package/dist/components/HysSegmented/HysSegmented2.vue.js +273 -2
  81. package/dist/components/HysSelect/HysSelect.vue.js +3 -2
  82. package/dist/components/HysSelect/HysSelect2.vue.js +859 -164
  83. package/dist/components/HysSkeleton/HysSkeleton.vue.js +2 -2
  84. package/dist/components/HysSkeleton/HysSkeleton2.vue.js +126 -29
  85. package/dist/components/HysSlider/HysSlider.vue.js +2 -2
  86. package/dist/components/HysSlider/HysSlider2.vue.js +532 -59
  87. package/dist/components/HysSlider/SliderTooltip.vue.js +7 -0
  88. package/dist/components/HysSlider/SliderTooltip2.vue.js +156 -0
  89. package/dist/components/HysSplitPane/HysSplitPane.vue.js +48 -42
  90. package/dist/components/HysSteps/HysSteps.vue.js +2 -2
  91. package/dist/components/HysSteps/HysSteps2.vue.js +111 -36
  92. package/dist/components/HysSwitch/HysSwitch.vue.js +2 -2
  93. package/dist/components/HysSwitch/HysSwitch2.vue.js +235 -42
  94. package/dist/components/HysTable/HysTable.vue.js +1 -1
  95. package/dist/components/HysTable/HysTable2.vue.js +1471 -82
  96. package/dist/components/HysTable/HysTableFilterOptions.vue.js +7 -0
  97. package/dist/components/HysTable/HysTableFilterOptions2.vue.js +133 -0
  98. package/dist/components/HysTabs/HysTabs.vue.js +2 -2
  99. package/dist/components/HysTabs/HysTabs2.vue.js +262 -66
  100. package/dist/components/HysTagInput/HysTagInput.vue.js +43 -42
  101. package/dist/components/HysTextarea/HysTextarea.vue.js +137 -66
  102. package/dist/components/HysToast/HysToast.vue.js +2 -2
  103. package/dist/components/HysToast/HysToast2.vue.js +121 -38
  104. package/dist/components/HysTour/HysTour.vue.js +47 -42
  105. package/dist/components/HysTransfer/HysTransfer.vue.js +5 -207
  106. package/dist/components/HysTransfer/HysTransfer2.vue.js +416 -2
  107. package/dist/components/HysTransfer/HysTransferPanel.vue.js +7 -0
  108. package/dist/components/HysTransfer/HysTransferPanel2.vue.js +454 -0
  109. package/dist/components/HysTree/HysTree.vue.js +2 -3
  110. package/dist/components/HysTree/HysTree2.vue.js +641 -301
  111. package/dist/components/HysTreeSelect/HysTreeSelect.vue.js +5 -129
  112. package/dist/components/HysTreeSelect/HysTreeSelect2.vue.js +558 -2
  113. package/dist/components/HysTreeSelect/HysTreeSelectPanel.vue.js +7 -0
  114. package/dist/components/HysTreeSelect/HysTreeSelectPanel2.vue.js +323 -0
  115. package/dist/components/HysUpload/HysUpload.vue.js +2 -2
  116. package/dist/components/HysUpload/HysUpload2.vue.js +97 -78
  117. package/dist/composables/autocomplete.js +50 -0
  118. package/dist/composables/avatar.js +57 -0
  119. package/dist/composables/calendar.js +96 -0
  120. package/dist/composables/cascader.js +79 -0
  121. package/dist/composables/choice.js +38 -0
  122. package/dist/composables/choiceModel.js +67 -0
  123. package/dist/composables/datePicker.js +227 -0
  124. package/dist/composables/formContext.js +94 -3
  125. package/dist/composables/formLayout.js +57 -0
  126. package/dist/composables/formValidation.js +240 -0
  127. package/dist/composables/ganttConflicts.js +143 -0
  128. package/dist/composables/numberInput.js +91 -0
  129. package/dist/composables/rating.js +16 -0
  130. package/dist/composables/selectOptions.js +54 -0
  131. package/dist/composables/table.js +150 -0
  132. package/dist/composables/textInput.js +34 -0
  133. package/dist/composables/toastEscape.js +16 -0
  134. package/dist/composables/transfer.js +63 -0
  135. package/dist/composables/tree.js +118 -0
  136. package/dist/composables/treeSelect.js +71 -0
  137. package/dist/composables/useCascader.js +438 -0
  138. package/dist/composables/useDatePicker.js +425 -0
  139. package/dist/composables/useDialog.js +16 -16
  140. package/dist/composables/useFloating.js +98 -52
  141. package/dist/composables/useGanttDependencies.js +306 -0
  142. package/dist/composables/useGanttHistory.js +157 -0
  143. package/dist/composables/useGanttLabelResize.js +100 -0
  144. package/dist/composables/useHysToast.js +148 -0
  145. package/dist/composables/useTable.js +474 -0
  146. package/dist/composables/useTextareaSize.js +72 -0
  147. package/dist/composables/useTransfer.js +257 -0
  148. package/dist/composables/useTree.js +439 -0
  149. package/dist/composables/useTreeSelect.js +361 -0
  150. package/dist/config.js +18 -15
  151. package/dist/index.js +149 -136
  152. package/dist/style.css +1 -1
  153. package/dist/types/components/HysAccordion/HysAccordion.vue.d.ts +61 -22
  154. package/dist/types/components/HysAutocomplete/HysAutocomplete.vue.d.ts +201 -0
  155. package/dist/types/components/HysAvatar/HysAvatar.vue.d.ts +28 -15
  156. package/dist/types/components/HysAvatarGroup/HysAvatarGroup.vue.d.ts +99 -0
  157. package/dist/types/components/HysBadge/HysBadge.vue.d.ts +41 -4
  158. package/dist/types/components/HysBreadcrumb/HysBreadcrumb.vue.d.ts +38 -10
  159. package/dist/types/components/HysButton/HysButton.vue.d.ts +0 -1
  160. package/dist/types/components/HysCalendar/HysCalendar.vue.d.ts +119 -29
  161. package/dist/types/components/HysCard/HysCard.vue.d.ts +57 -5
  162. package/dist/types/components/HysCascader/HysCascader.vue.d.ts +129 -41
  163. package/dist/types/components/HysCascader/HysCascaderColumn.vue.d.ts +55 -0
  164. package/dist/types/components/HysCheckbox/HysCheckbox.vue.d.ts +55 -27
  165. package/dist/types/components/HysCheckboxGroup/HysCheckboxGroup.vue.d.ts +73 -0
  166. package/dist/types/components/HysDataGrid/HysDataGrid.vue.d.ts +1 -1
  167. package/dist/types/components/HysDatePicker/HysDatePicker.vue.d.ts +66 -14
  168. package/dist/types/components/HysDatePicker/HysDatePickerControl.vue.d.ts +90 -0
  169. package/dist/types/components/HysDatePicker/HysDatePickerPanel.vue.d.ts +93 -0
  170. package/dist/types/components/HysDateRangePicker/HysDateRangePicker.vue.d.ts +66 -14
  171. package/dist/types/components/HysDivider/HysDivider.vue.d.ts +8 -3
  172. package/dist/types/components/HysDrawer/HysDrawer.vue.d.ts +1 -0
  173. package/dist/types/components/HysFileManager/HysFileManager.vue.d.ts +8 -4
  174. package/dist/types/components/HysForm/HysForm.vue.d.ts +110 -18
  175. package/dist/types/components/HysFormItem/HysFormItem.vue.d.ts +108 -2
  176. package/dist/types/components/HysGantt/HysGantt.vue.d.ts +88 -4
  177. package/dist/types/components/HysInput/HysInput.vue.d.ts +52 -29
  178. package/dist/types/components/HysMention/HysMention.vue.d.ts +2 -2
  179. package/dist/types/components/HysNumberInput/HysNumberInput.vue.d.ts +93 -33
  180. package/dist/types/components/HysOrgTree/HysOrgTree.vue.d.ts +4 -1
  181. package/dist/types/components/HysPagination/HysPagination.vue.d.ts +1 -1
  182. package/dist/types/components/HysPermissionMatrix/HysPermissionMatrix.vue.d.ts +8 -1
  183. package/dist/types/components/HysPopover/HysPopover.vue.d.ts +3 -3
  184. package/dist/types/components/HysProgress/HysProgress.vue.d.ts +1 -1
  185. package/dist/types/components/HysRadio/HysRadio.vue.d.ts +56 -0
  186. package/dist/types/components/HysRadioGroup/HysRadioGroup.vue.d.ts +62 -17
  187. package/dist/types/components/HysRating/HysRating.vue.d.ts +85 -5
  188. package/dist/types/components/HysResizablePanel/HysResizablePanel.vue.d.ts +6 -0
  189. package/dist/types/components/HysRichTextEditor/HysRichTextEditor.vue.d.ts +4 -4
  190. package/dist/types/components/HysSearch/HysSearch.vue.d.ts +2 -2
  191. package/dist/types/components/HysSegmented/HysSegmented.vue.d.ts +64 -32
  192. package/dist/types/components/HysSelect/HysSelect.vue.d.ts +120 -14
  193. package/dist/types/components/HysSkeleton/HysSkeleton.vue.d.ts +30 -2
  194. package/dist/types/components/HysSlider/HysSlider.vue.d.ts +66 -9
  195. package/dist/types/components/HysSlider/SliderTooltip.vue.d.ts +22 -0
  196. package/dist/types/components/HysSplitPane/HysSplitPane.vue.d.ts +6 -0
  197. package/dist/types/components/HysSteps/HysSteps.vue.d.ts +65 -9
  198. package/dist/types/components/HysSwitch/HysSwitch.vue.d.ts +76 -17
  199. package/dist/types/components/HysTable/HysTable.vue.d.ts +206 -32
  200. package/dist/types/components/HysTable/HysTableFilterOptions.vue.d.ts +18 -0
  201. package/dist/types/components/HysTabs/HysTabs.vue.d.ts +76 -23
  202. package/dist/types/components/HysTagInput/HysTagInput.vue.d.ts +5 -5
  203. package/dist/types/components/HysTextarea/HysTextarea.vue.d.ts +44 -27
  204. package/dist/types/components/HysToast/HysToast.vue.d.ts +55 -7
  205. package/dist/types/components/HysTour/HysTour.vue.d.ts +5 -3
  206. package/dist/types/components/HysTransfer/HysTransfer.vue.d.ts +55 -30
  207. package/dist/types/components/HysTransfer/HysTransferPanel.vue.d.ts +105 -0
  208. package/dist/types/components/HysTree/HysTree.vue.d.ts +140 -73
  209. package/dist/types/components/HysTreeSelect/HysTreeSelect.vue.d.ts +102 -23
  210. package/dist/types/components/HysTreeSelect/HysTreeSelectPanel.vue.d.ts +56 -0
  211. package/dist/types/composables/autocomplete.d.ts +106 -0
  212. package/dist/types/composables/avatar.d.ts +70 -0
  213. package/dist/types/composables/calendar.d.ts +66 -0
  214. package/dist/types/composables/cascader.d.ts +192 -0
  215. package/dist/types/composables/choice.d.ts +110 -0
  216. package/dist/types/composables/choiceModel.d.ts +11 -0
  217. package/dist/types/composables/datePicker.d.ts +247 -0
  218. package/dist/types/composables/formContext.d.ts +138 -8
  219. package/dist/types/composables/formLayout.d.ts +11 -0
  220. package/dist/types/composables/formValidation.d.ts +13 -0
  221. package/dist/types/composables/gantt.d.ts +68 -0
  222. package/dist/types/composables/ganttConflicts.d.ts +30 -0
  223. package/dist/types/composables/numberInput.d.ts +45 -0
  224. package/dist/types/composables/rating.d.ts +18 -0
  225. package/dist/types/composables/segmented.d.ts +15 -0
  226. package/dist/types/composables/selectOptions.d.ts +44 -0
  227. package/dist/types/composables/slider.d.ts +21 -0
  228. package/dist/types/composables/table.d.ts +309 -0
  229. package/dist/types/composables/textInput.d.ts +76 -0
  230. package/dist/types/composables/toastEscape.d.ts +1 -0
  231. package/dist/types/composables/transfer.d.ts +180 -0
  232. package/dist/types/composables/tree.d.ts +237 -0
  233. package/dist/types/composables/treeSelect.d.ts +167 -0
  234. package/dist/types/composables/useCascader.d.ts +162 -0
  235. package/dist/types/composables/useDatePicker.d.ts +79 -0
  236. package/dist/types/composables/useFloating.d.ts +8 -5
  237. package/dist/types/composables/useGanttDependencies.d.ts +83 -0
  238. package/dist/types/composables/useGanttHistory.d.ts +42 -0
  239. package/dist/types/composables/useGanttLabelResize.d.ts +23 -0
  240. package/dist/types/composables/useHysToast.d.ts +50 -0
  241. package/dist/types/composables/useTable.d.ts +60 -0
  242. package/dist/types/composables/useTextareaSize.d.ts +3 -0
  243. package/dist/types/composables/useTransfer.d.ts +58 -0
  244. package/dist/types/composables/useTree.d.ts +77 -0
  245. package/dist/types/composables/useTreeSelect.d.ts +117 -0
  246. package/dist/types/index.d.ts +38 -7
  247. package/package.json +47 -11
@@ -1,56 +1,249 @@
1
- import { defineComponent as h, ref as y, openBlock as i, createElementBlock as o, mergeProps as f, unref as c, createElementVNode as r, normalizeClass as b, createBlock as g, createCommentVNode as u, toDisplayString as v } from "vue";
2
- import { LoaderCircle as x } from "lucide-vue-next";
3
- import { useHysRootAttrs as V } from "../../config.js";
4
- const k = ["aria-label", "aria-checked", "aria-busy", "disabled"], C = { key: 0 }, z = /* @__PURE__ */ h({
1
+ import { defineComponent as Z, useAttrs as p, ref as M, inject as _, useId as ee, computed as g, watch as O, onMounted as ae, openBlock as l, createElementBlock as d, mergeProps as R, unref as i, createElementVNode as A, toDisplayString as y, createCommentVNode as v, renderSlot as k, createBlock as B, resolveDynamicComponent as T, toRaw as z, Fragment as q, createTextVNode as $, createVNode as te } from "vue";
2
+ import { LoaderCircle as ie } from "lucide-vue-next";
3
+ import { fieldKey as ne, useHysControlState as le } from "../../composables/formContext.js";
4
+ import { useChoiceModel as oe, useChoiceNativeReset as ue } from "../../composables/choiceModel.js";
5
+ import { isChoice as K } from "../../composables/choice.js";
6
+ import { useHysRootAttrs as re } from "../../config.js";
7
+ const se = ["id", "data-status", "disabled", "tabindex", "autofocus", "aria-label", "aria-checked", "aria-readonly", "aria-busy", "aria-invalid", "aria-describedby"], ce = {
8
+ key: 0,
9
+ class: "hys-ui-switch-sizer",
10
+ "aria-hidden": "true"
11
+ }, de = {
12
+ key: 1,
13
+ class: "hys-ui-switch-prompt",
14
+ "aria-hidden": "true"
15
+ }, ve = {
16
+ class: "hys-ui-switch-thumb",
17
+ "aria-hidden": "true"
18
+ }, fe = {
19
+ key: 0,
20
+ class: "hys-ui-switch-text"
21
+ }, ye = ["name", "form", "value", "disabled"], he = ["id"], xe = /* @__PURE__ */ Z({
22
+ inheritAttrs: !1,
5
23
  __name: "HysSwitch",
6
24
  props: {
7
- modelValue: { type: Boolean },
25
+ modelValue: { default: void 0 },
26
+ defaultValue: { default: void 0 },
27
+ activeValue: { default: void 0 },
28
+ inactiveValue: { default: void 0 },
8
29
  disabled: { type: Boolean },
30
+ readonly: { type: Boolean },
9
31
  loading: { type: Boolean },
32
+ size: {},
33
+ width: {},
34
+ round: { type: Boolean, default: !0 },
35
+ activeColor: {},
36
+ inactiveColor: {},
10
37
  activeText: {},
11
38
  inactiveText: {},
39
+ inlinePrompt: { type: Boolean },
40
+ activeIcon: {},
41
+ inactiveIcon: {},
42
+ activeActionIcon: {},
43
+ inactiveActionIcon: {},
12
44
  ariaLabel: {},
13
- beforeChange: { type: Function }
45
+ name: {},
46
+ form: {},
47
+ tabindex: {},
48
+ autofocus: { type: Boolean },
49
+ focusable: { type: Boolean, default: !0 },
50
+ error: {},
51
+ status: {},
52
+ beforeChange: {}
14
53
  },
15
- emits: ["update:modelValue", "change", "error"],
16
- setup(e, { emit: s }) {
17
- const a = e, l = s, d = V(), t = y(!1);
18
- async function m() {
19
- if (!(a.disabled || a.loading || t.value)) {
20
- t.value = !0;
21
- try {
22
- if (a.beforeChange && await a.beforeChange() === !1) return;
23
- l("update:modelValue", !a.modelValue), l("change", !a.modelValue);
24
- } catch (n) {
25
- l("error", n);
26
- } finally {
27
- t.value = !1;
28
- }
54
+ emits: ["update:modelValue", "change", "error", "click", "focus", "blur"],
55
+ setup(e, { expose: G, emit: J }) {
56
+ const a = e, h = J, Q = re(), m = p(), I = M(), r = _(ne, void 0), { disabled: s, size: P, label: U } = le(a), x = M(!1), D = ee(), L = M(!1);
57
+ let C = 0, b;
58
+ function E() {
59
+ C++, b == null || b.abort(), b = void 0, x.value = !1;
60
+ }
61
+ const N = g(
62
+ () => K(a.activeValue) ? a.activeValue : !0
63
+ ), S = g(
64
+ () => K(a.inactiveValue) ? a.inactiveValue : !1
65
+ ), o = oe(
66
+ a,
67
+ () => a.defaultValue ?? S.value,
68
+ Object.is,
69
+ E
70
+ ), u = g(() => o.current.value === N.value), f = g(() => a.loading || x.value), j = g(
71
+ () => {
72
+ var t, n;
73
+ return a.error || (t = r == null ? void 0 : r.invalid) != null && t.value || a.status === "error" ? "error" : a.status ?? ((n = r == null ? void 0 : r.status) == null ? void 0 : n.value);
74
+ }
75
+ );
76
+ O(() => [s.value, a.readonly, a.loading], E, {
77
+ flush: "sync"
78
+ }), O([N, S], o.invalidate, { flush: "sync" });
79
+ async function F() {
80
+ if (!o.isLive() || s.value || a.readonly || f.value)
81
+ return !1;
82
+ const t = u.value ? S.value : N.value;
83
+ if (t === o.current.value) return !1;
84
+ const n = ++C, w = new AbortController();
85
+ b = w, x.value = !!a.beforeChange;
86
+ try {
87
+ return a.beforeChange && await a.beforeChange(t, o.current.value, {
88
+ signal: w.signal
89
+ }) === !1 || !o.isLive() || n !== C || w.signal.aborted || s.value || a.readonly || a.loading ? !1 : await o.commit(
90
+ t,
91
+ (c) => h("update:modelValue", c),
92
+ (c) => h("change", c),
93
+ !0
94
+ );
95
+ } catch (c) {
96
+ return o.isLive() && n === C && h("error", c), !1;
97
+ } finally {
98
+ n === C && (x.value = !1, b = void 0);
29
99
  }
30
100
  }
31
- return (n, T) => (i(), o("span", f(c(d), { class: "hys-ui-switch-wrap" }), [
32
- r("button", {
33
- type: "button",
34
- role: "switch",
35
- "aria-label": e.ariaLabel || e.activeText || e.inactiveText || "切换",
36
- "aria-checked": e.modelValue,
37
- "aria-busy": e.loading || t.value,
38
- class: b(["hys-ui-switch", { "hys-ui-on": e.modelValue }]),
39
- disabled: e.disabled || e.loading || t.value,
40
- onClick: m
41
- }, [
42
- r("span", null, [
43
- e.loading || t.value ? (i(), g(c(x), {
44
- key: 0,
45
- class: "hys-ui-icon-spin",
46
- size: 12
47
- })) : u("", !0)
48
- ])
49
- ], 10, k),
50
- e.activeText || e.inactiveText ? (i(), o("span", C, v(e.modelValue ? e.activeText : e.inactiveText), 1)) : u("", !0)
51
- ], 16));
101
+ function W(t) {
102
+ s.value || a.readonly || f.value || (h("click", o.current.value, t), F());
103
+ }
104
+ function H(t) {
105
+ var n;
106
+ !s.value && !f.value && ((n = I.value) == null || n.focus(t));
107
+ }
108
+ ue(I, o.reset, void 0, () => a.form), ae(() => {
109
+ a.autofocus && H();
110
+ });
111
+ const X = () => Object.fromEntries(
112
+ Object.entries(m).filter(([t]) => t !== "class" && t !== "style")
113
+ ), Y = g(() => ({
114
+ width: typeof a.width == "number" && Number.isFinite(a.width) ? Math.max(0, a.width) + "px" : a.width ?? (a.inlinePrompt ? "max-content" : void 0),
115
+ "--hys-ui-switch-on": a.activeColor || "var(--hys-ui-primary,var(--hys-ui-theme-primary))",
116
+ "--hys-ui-switch-off": a.inactiveColor || "var(--hys-ui-border,var(--hys-ui-theme-border))"
117
+ }));
118
+ return G({
119
+ element: I,
120
+ checked: u,
121
+ pending: x,
122
+ focus: H,
123
+ blur: () => {
124
+ var t;
125
+ return (t = I.value) == null ? void 0 : t.blur();
126
+ },
127
+ toggle: F
128
+ }), (t, n) => {
129
+ var w, c;
130
+ return l(), d("span", R(i(Q), {
131
+ class: ["hys-ui-switch-wrap", [
132
+ i(m).class,
133
+ "hys-ui-switch-" + i(P),
134
+ {
135
+ "hys-ui-switch-disabled": i(s),
136
+ "hys-ui-switch-readonly": e.readonly
137
+ }
138
+ ]],
139
+ style: i(m).style
140
+ }), [
141
+ A("button", R({
142
+ ref_key: "element",
143
+ ref: I
144
+ }, X(), {
145
+ id: i(m).id || ((w = i(r)) == null ? void 0 : w.id.value),
146
+ "data-hys-ui-field-managed": "",
147
+ type: "button",
148
+ role: "switch",
149
+ class: ["hys-ui-switch", {
150
+ "hys-ui-on": u.value,
151
+ "hys-ui-switch-square": !e.round,
152
+ "hys-ui-switch-inline": e.inlinePrompt,
153
+ "hys-ui-switch-error": j.value === "error"
154
+ }],
155
+ "data-status": j.value,
156
+ style: Y.value,
157
+ disabled: i(s) || f.value,
158
+ tabindex: e.focusable ? e.tabindex : -1,
159
+ autofocus: e.autofocus,
160
+ "aria-label": e.ariaLabel || i(m)["aria-label"] || i(U) || e.activeText || e.inactiveText || "切换",
161
+ "aria-checked": u.value,
162
+ "aria-readonly": e.readonly || void 0,
163
+ "aria-busy": f.value || void 0,
164
+ "aria-invalid": j.value === "error" || void 0,
165
+ "aria-describedby": [i(m)["aria-describedby"], e.error ? i(D) : (c = i(r)) == null ? void 0 : c.describedBy.value].filter(Boolean).join(" ") || void 0,
166
+ onMousedown: n[0] || (n[0] = (V) => !e.focusable && V.preventDefault()),
167
+ onClick: W,
168
+ onFocus: n[1] || (n[1] = (V) => {
169
+ L.value = !0, h("focus", V);
170
+ }),
171
+ onBlur: n[2] || (n[2] = (V) => {
172
+ L.value = !1, h("blur", V);
173
+ })
174
+ }), [
175
+ e.inlinePrompt ? (l(), d("span", ce, [
176
+ A("span", null, y(e.activeText), 1),
177
+ A("span", null, y(e.inactiveText), 1)
178
+ ])) : v("", !0),
179
+ e.inlinePrompt ? (l(), d("span", de, [
180
+ u.value ? k(t.$slots, "active", {}, () => [
181
+ e.activeIcon ? (l(), B(T(z(e.activeIcon)), {
182
+ key: 0,
183
+ size: 14
184
+ })) : (l(), d(q, { key: 1 }, [
185
+ $(y(e.activeText), 1)
186
+ ], 64))
187
+ ], !0, 0) : k(t.$slots, "inactive", {}, () => [
188
+ e.inactiveIcon ? (l(), B(T(z(e.inactiveIcon)), {
189
+ key: 0,
190
+ size: 14
191
+ })) : (l(), d(q, { key: 1 }, [
192
+ $(y(e.inactiveText), 1)
193
+ ], 64))
194
+ ], !0, 1)
195
+ ])) : v("", !0),
196
+ A("span", ve, [
197
+ k(t.$slots, "thumb", {
198
+ checked: u.value,
199
+ loading: f.value,
200
+ focused: L.value
201
+ }, () => [
202
+ f.value ? k(t.$slots, "loading", {}, () => [
203
+ te(i(ie), {
204
+ class: "hys-ui-icon-spin",
205
+ size: i(P) === "lg" ? 14 : 11
206
+ }, null, 8, ["size"])
207
+ ], !0, 0) : (u.value ? e.activeActionIcon : e.inactiveActionIcon) ? (l(), B(T(z(u.value ? e.activeActionIcon : e.inactiveActionIcon)), {
208
+ key: 1,
209
+ size: i(P) === "lg" ? 14 : 11
210
+ }, null, 8, ["size"])) : v("", !0)
211
+ ], !0)
212
+ ])
213
+ ], 16, se),
214
+ !e.inlinePrompt && (e.activeText || e.inactiveText || e.activeIcon || e.inactiveIcon || t.$slots.active || t.$slots.inactive) ? (l(), d("span", fe, [
215
+ u.value ? k(t.$slots, "active", {}, () => [
216
+ e.activeIcon ? (l(), B(T(z(e.activeIcon)), {
217
+ key: 0,
218
+ size: 15
219
+ })) : v("", !0),
220
+ $(y(e.activeText), 1)
221
+ ], !0, 0) : k(t.$slots, "inactive", {}, () => [
222
+ e.inactiveIcon ? (l(), B(T(z(e.inactiveIcon)), {
223
+ key: 0,
224
+ size: 15
225
+ })) : v("", !0),
226
+ $(y(e.inactiveText), 1)
227
+ ], !0, 1)
228
+ ])) : v("", !0),
229
+ e.name ? (l(), d("input", {
230
+ key: 1,
231
+ type: "hidden",
232
+ name: e.name,
233
+ form: e.form,
234
+ value: String(i(o).current.value),
235
+ disabled: i(s)
236
+ }, null, 8, ye)) : v("", !0),
237
+ e.error ? (l(), d("small", {
238
+ key: 2,
239
+ id: i(D),
240
+ class: "hys-ui-switch-error-text",
241
+ role: "alert"
242
+ }, y(e.error), 9, he)) : v("", !0)
243
+ ], 16);
244
+ };
52
245
  }
53
246
  });
54
247
  export {
55
- z as default
248
+ xe as default
56
249
  };
@@ -1,7 +1,7 @@
1
1
  import o from "./HysTable2.vue.js";
2
2
  /* empty css */
3
3
  import t from "../../_virtual/_plugin-vue_export-helper.js";
4
- const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-31cf795a"]]);
4
+ const m = /* @__PURE__ */ t(o, [["__scopeId", "data-v-68f5fb01"]]);
5
5
  export {
6
6
  m as default
7
7
  };