hys-ui 0.3.0 → 0.5.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 (168) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/README.md +68 -73
  3. package/dist/components/HysAnimatedNumber/HysAnimatedNumber.vue.js +5 -41
  4. package/dist/components/HysAnimatedNumber/HysAnimatedNumber2.vue.js +467 -2
  5. package/dist/components/HysAnimatedNumber/NumberAnimationCanvas/NumberAnimationCanvas.vue.js +7 -0
  6. package/dist/components/HysAnimatedNumber/NumberAnimationCanvas/NumberAnimationCanvas2.vue.js +166 -0
  7. package/dist/components/HysAnimatedNumber/NumberDigits/NumberDigits.vue.js +7 -0
  8. package/dist/components/HysAnimatedNumber/NumberDigits/NumberDigits2.vue.js +105 -0
  9. package/dist/components/HysAnimatedNumber/animation/digital.js +186 -0
  10. package/dist/components/HysAnimatedNumber/animation/morph.js +110 -0
  11. package/dist/components/HysAnimatedNumber/animation/paint.js +34 -0
  12. package/dist/components/HysAnimatedNumber/animation/particles.js +51 -0
  13. package/dist/components/HysAnimatedNumber/animation/paths.js +165 -0
  14. package/dist/components/HysAnimatedNumber/animation/physics.js +66 -0
  15. package/dist/components/HysAnimatedNumber/animation/render.js +89 -0
  16. package/dist/components/HysAnimatedNumber/animation/reveal.js +125 -0
  17. package/dist/components/HysAnimatedNumber/animation/rolling.js +66 -0
  18. package/dist/components/HysAnimatedNumber/animation/scenarios.js +217 -0
  19. package/dist/components/HysAnimatedNumber/animation/spatial.js +112 -0
  20. package/dist/components/HysAnimatedNumber/useNumberCountdown.js +58 -0
  21. package/dist/components/HysAnimatedNumber/useNumberVisuals.js +60 -0
  22. package/dist/components/HysButton/HysButton.vue.js +2 -2
  23. package/dist/components/HysButton/HysButton2.vue.js +227 -60
  24. package/dist/components/HysButtonGroup/HysButtonGroup.vue.js +7 -0
  25. package/dist/components/HysButtonGroup/HysButtonGroup2.vue.js +51 -0
  26. package/dist/components/HysFormItem/HysFormItem.vue.js +1 -1
  27. package/dist/components/HysFormItem/HysFormItem2.vue.js +231 -229
  28. package/dist/components/HysInput/HysInput.vue.js +2 -2
  29. package/dist/components/HysInput/HysInput2.vue.js +327 -274
  30. package/dist/components/HysMention/HysMention.vue.js +1 -1
  31. package/dist/components/HysMention/HysMention2.vue.js +1092 -154
  32. package/dist/components/HysModal/HysModal.vue.js +3 -3
  33. package/dist/components/HysModal/HysModal2.vue.js +81 -80
  34. package/dist/components/HysPagination/HysPagination.vue.js +2 -2
  35. package/dist/components/HysPagination/HysPagination2.vue.js +243 -180
  36. package/dist/components/HysSearch/HysSearch.vue.js +5 -82
  37. package/dist/components/HysSearch/HysSearch2.vue.js +176 -2
  38. package/dist/components/HysSelect/HysSelect.vue.js +2 -2
  39. package/dist/components/HysSelect/HysSelect2.vue.js +472 -443
  40. package/dist/components/HysSplitPane/HysSplitPane.vue.js +315 -58
  41. package/dist/components/HysSplitPane/HysSplitPane3.vue.js +5 -0
  42. package/dist/components/HysTable/HysTable.vue.js +2 -2
  43. package/dist/components/HysTable/HysTable2.vue.js +1418 -1150
  44. package/dist/components/HysTextarea/HysTextarea.vue.js +56 -32
  45. package/dist/components/HysTour/HysTour.vue.js +291 -67
  46. package/dist/components/HysTour/HysTour3.vue.js +5 -0
  47. package/dist/composables/animatedNumberDigits.js +106 -0
  48. package/dist/composables/animatedNumberFormat.js +222 -0
  49. package/dist/composables/animatedNumberTiming.js +66 -0
  50. package/dist/composables/buttonGroup.js +12 -0
  51. package/dist/composables/floatingPosition.js +18 -0
  52. package/dist/composables/mentionDocument.js +79 -0
  53. package/dist/composables/mentionEditor.js +58 -0
  54. package/dist/composables/numberAnimation.js +72 -0
  55. package/dist/composables/numberAnimationCatalog.js +301 -0
  56. package/dist/composables/numberAnimationSequence.js +45 -0
  57. package/dist/composables/selectOptions.js +44 -38
  58. package/dist/composables/splitPaneSizes.js +58 -0
  59. package/dist/composables/table.js +128 -105
  60. package/dist/composables/textInput.js +23 -14
  61. package/dist/composables/useDialog.js +50 -50
  62. package/dist/composables/useFloating.js +107 -103
  63. package/dist/composables/useHysAnimatedNumber.js +264 -0
  64. package/dist/composables/useHysNumberAnimationGroup.js +23 -0
  65. package/dist/composables/useMentionCaret.js +81 -0
  66. package/dist/composables/useMentionList.js +81 -0
  67. package/dist/composables/useMentionModel.js +90 -0
  68. package/dist/composables/useMentionOptions.js +421 -0
  69. package/dist/composables/useSplitPaneDrag.js +52 -0
  70. package/dist/composables/useSplitPaneStorage.js +38 -0
  71. package/dist/composables/useTable.js +344 -312
  72. package/dist/composables/useTableSticky.js +79 -0
  73. package/dist/composables/useTextareaSize.js +62 -46
  74. package/dist/composables/useTourLayout.js +129 -0
  75. package/dist/config.js +11 -11
  76. package/dist/index.js +183 -152
  77. package/dist/internal/MultiSplitPane.vue.js +305 -0
  78. package/dist/internal/MultiSplitPane2.vue.js +4 -0
  79. package/dist/style.css +1 -1
  80. package/dist/types/components/HysAnimatedNumber/HysAnimatedNumber.vue.d.ts +99 -6
  81. package/dist/types/components/HysAnimatedNumber/NumberAnimationCanvas/NumberAnimationCanvas.vue.d.ts +19 -0
  82. package/dist/types/components/HysAnimatedNumber/NumberDigits/NumberDigits.vue.d.ts +31 -0
  83. package/dist/types/components/HysAnimatedNumber/animation/digital.d.ts +3 -0
  84. package/dist/types/components/HysAnimatedNumber/animation/morph.d.ts +2 -0
  85. package/dist/types/components/HysAnimatedNumber/animation/paint.d.ts +44 -0
  86. package/dist/types/components/HysAnimatedNumber/animation/particles.d.ts +5 -0
  87. package/dist/types/components/HysAnimatedNumber/animation/paths.d.ts +12 -0
  88. package/dist/types/components/HysAnimatedNumber/animation/physics.d.ts +2 -0
  89. package/dist/types/components/HysAnimatedNumber/animation/render.d.ts +2 -0
  90. package/dist/types/components/HysAnimatedNumber/animation/reveal.d.ts +2 -0
  91. package/dist/types/components/HysAnimatedNumber/animation/rolling.d.ts +2 -0
  92. package/dist/types/components/HysAnimatedNumber/animation/scenarios.d.ts +4 -0
  93. package/dist/types/components/HysAnimatedNumber/animation/spatial.d.ts +2 -0
  94. package/dist/types/components/HysAnimatedNumber/useNumberCountdown.d.ts +8 -0
  95. package/dist/types/components/HysAnimatedNumber/useNumberVisuals.d.ts +12 -0
  96. package/dist/types/components/HysAutocomplete/HysAutocomplete.vue.d.ts +12 -3
  97. package/dist/types/components/HysAvatarGroup/HysAvatarGroup.vue.d.ts +2 -2
  98. package/dist/types/components/HysButton/HysButton.vue.d.ts +82 -22
  99. package/dist/types/components/HysButtonGroup/HysButtonGroup.vue.d.ts +30 -0
  100. package/dist/types/components/HysCard/HysCard.vue.d.ts +1 -1
  101. package/dist/types/components/HysCascader/HysCascader.vue.d.ts +3 -3
  102. package/dist/types/components/HysCascader/HysCascaderColumn.vue.d.ts +3 -3
  103. package/dist/types/components/HysColorPicker/HysColorPicker.vue.d.ts +3 -3
  104. package/dist/types/components/HysContextMenu/HysMenuPanel.vue.d.ts +2 -2
  105. package/dist/types/components/HysDatePicker/HysDatePicker.vue.d.ts +3 -3
  106. package/dist/types/components/HysDatePicker/HysDatePickerControl.vue.d.ts +6 -6
  107. package/dist/types/components/HysDateRangePicker/HysDateRangePicker.vue.d.ts +3 -3
  108. package/dist/types/components/HysDrawer/HysDrawer.vue.d.ts +2 -2
  109. package/dist/types/components/HysFormItem/HysFormItem.vue.d.ts +1 -1
  110. package/dist/types/components/HysInput/HysInput.vue.d.ts +13 -1
  111. package/dist/types/components/HysMention/HysMention.vue.d.ts +91 -40
  112. package/dist/types/components/HysModal/HysModal.vue.d.ts +1 -1
  113. package/dist/types/components/HysNumberInput/HysNumberInput.vue.d.ts +2 -2
  114. package/dist/types/components/HysPagination/HysPagination.vue.d.ts +55 -4
  115. package/dist/types/components/HysPopover/HysPopover.vue.d.ts +1 -1
  116. package/dist/types/components/HysRating/HysRating.vue.d.ts +1 -1
  117. package/dist/types/components/HysSearch/HysSearch.vue.d.ts +46 -8
  118. package/dist/types/components/HysSelect/HysSelect.vue.d.ts +6 -1
  119. package/dist/types/components/HysSkeleton/HysSkeleton.vue.d.ts +2 -2
  120. package/dist/types/components/HysSplitPane/HysSplitPane.vue.d.ts +125 -14
  121. package/dist/types/components/HysSteps/HysSteps.vue.d.ts +1 -1
  122. package/dist/types/components/HysTable/HysTable.vue.d.ts +1740 -3
  123. package/dist/types/components/HysTabs/HysTabs.vue.d.ts +1 -1
  124. package/dist/types/components/HysTagInput/HysTagInput.vue.d.ts +1 -1
  125. package/dist/types/components/HysTextarea/HysTextarea.vue.d.ts +13 -2
  126. package/dist/types/components/HysToast/HysToast.vue.d.ts +1 -1
  127. package/dist/types/components/HysTooltip/HysTooltip.vue.d.ts +1 -1
  128. package/dist/types/components/HysTour/HysTour.vue.d.ts +46 -9
  129. package/dist/types/components/HysTreeSelect/HysTreeSelect.vue.d.ts +3 -3
  130. package/dist/types/components/HysUpload/HysUpload.vue.d.ts +2 -2
  131. package/dist/types/composables/animatedNumber.d.ts +220 -0
  132. package/dist/types/composables/animatedNumberDigits.d.ts +32 -0
  133. package/dist/types/composables/animatedNumberFormat.d.ts +16 -0
  134. package/dist/types/composables/animatedNumberTiming.d.ts +21 -0
  135. package/dist/types/composables/buttonGroup.d.ts +9 -0
  136. package/dist/types/composables/drawer.d.ts +1 -1
  137. package/dist/types/composables/floatingPosition.d.ts +14 -0
  138. package/dist/types/composables/mention.d.ts +284 -0
  139. package/dist/types/composables/mentionDocument.d.ts +15 -0
  140. package/dist/types/composables/mentionEditor.d.ts +7 -0
  141. package/dist/types/composables/modal.d.ts +2 -0
  142. package/dist/types/composables/numberAnimation.d.ts +29 -0
  143. package/dist/types/composables/numberAnimationCatalog.d.ts +58 -0
  144. package/dist/types/composables/numberAnimationSequence.d.ts +13 -0
  145. package/dist/types/composables/selectOptions.d.ts +5 -0
  146. package/dist/types/composables/splitPaneSizes.d.ts +11 -0
  147. package/dist/types/composables/table.d.ts +116 -6
  148. package/dist/types/composables/textInput.d.ts +39 -4
  149. package/dist/types/composables/tour.d.ts +68 -0
  150. package/dist/types/composables/useFloating.d.ts +1 -1
  151. package/dist/types/composables/useHysAnimatedNumber.d.ts +37 -0
  152. package/dist/types/composables/useHysNumberAnimationGroup.d.ts +4 -0
  153. package/dist/types/composables/useMentionCaret.d.ts +6 -0
  154. package/dist/types/composables/useMentionList.d.ts +23 -0
  155. package/dist/types/composables/useMentionModel.d.ts +14 -0
  156. package/dist/types/composables/useMentionOptions.d.ts +26 -0
  157. package/dist/types/composables/useSplitPaneDrag.d.ts +14 -0
  158. package/dist/types/composables/useSplitPaneStorage.d.ts +4 -0
  159. package/dist/types/composables/useTable.d.ts +7 -3
  160. package/dist/types/composables/useTableSticky.d.ts +22 -0
  161. package/dist/types/composables/useTextareaSize.d.ts +5 -2
  162. package/dist/types/composables/useTourLayout.d.ts +33 -0
  163. package/dist/types/config.d.ts +1 -0
  164. package/dist/types/index.d.ts +46 -1
  165. package/dist/types/internal/MultiSplitPane.vue.d.ts +54 -0
  166. package/package.json +3 -2
  167. package/dist/components/HysSplitPane/HysSplitPane2.vue.js +0 -4
  168. package/dist/components/HysTour/HysTour2.vue.js +0 -4
@@ -11,12 +11,12 @@ declare const __VLS_export: <V extends HysDatePickerValue = string>(__VLS_props:
11
11
  dates?: readonly (Date | null)[];
12
12
  error?: unknown;
13
13
  }) => any) | undefined;
14
+ "onValue-change"?: ((value: V, info: HysDatePickerChange) => any) | undefined;
14
15
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
15
16
  "onUpdate:mode"?: ((value: HysDatePickerView) => any) | undefined;
16
17
  onPanelChange?: ((date: Date, view: HysDatePickerView, context: {
17
18
  index: number;
18
19
  }) => any) | undefined;
19
- "onValue-change"?: ((value: V, info: HysDatePickerChange) => any) | undefined;
20
20
  "onVisible-change"?: ((value: boolean) => any) | undefined;
21
21
  "onUpdate:panelValue"?: ((value: HysDateScalar) => any) | undefined;
22
22
  onCalendarChange?: ((value: HysDatePickerValue, context: {
@@ -51,9 +51,9 @@ declare const __VLS_export: <V extends HysDatePickerValue = string>(__VLS_props:
51
51
  reason: string;
52
52
  dates?: readonly (Date | null)[];
53
53
  error?: unknown;
54
- }) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:mode", value: HysDatePickerView) => void) & ((evt: "panelChange", date: Date, view: HysDatePickerView, context: {
54
+ }) => void) & ((evt: "value-change", value: V, info: HysDatePickerChange) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:mode", value: HysDatePickerView) => void) & ((evt: "panelChange", date: Date, view: HysDatePickerView, context: {
55
55
  index: number;
56
- }) => void) & ((evt: "value-change", value: V, info: HysDatePickerChange) => void) & ((evt: "visible-change", value: boolean) => void) & ((evt: "update:panelValue", value: HysDateScalar) => void) & ((evt: "calendarChange", value: HysDatePickerValue, context: {
56
+ }) => void) & ((evt: "visible-change", value: boolean) => void) & ((evt: "update:panelValue", value: HysDateScalar) => void) & ((evt: "calendarChange", value: HysDatePickerValue, context: {
57
57
  range: "start" | "end";
58
58
  dates: readonly (Date | null)[];
59
59
  }) => void) & ((evt: "ok", value: V) => void);
@@ -34,10 +34,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
34
34
  blur: (...args: any[]) => void;
35
35
  focus: (...args: any[]) => void;
36
36
  invalid: (...args: any[]) => void;
37
+ "value-change": (...args: any[]) => void;
37
38
  "update:open": (...args: any[]) => void;
38
39
  "update:mode": (...args: any[]) => void;
39
40
  panelChange: (...args: any[]) => void;
40
- "value-change": (...args: any[]) => void;
41
41
  "visible-change": (...args: any[]) => void;
42
42
  "update:panelValue": (...args: any[]) => void;
43
43
  calendarChange: (...args: any[]) => void;
@@ -49,10 +49,10 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
49
49
  onBlur?: ((...args: any[]) => any) | undefined;
50
50
  onFocus?: ((...args: any[]) => any) | undefined;
51
51
  onInvalid?: ((...args: any[]) => any) | undefined;
52
+ "onValue-change"?: ((...args: any[]) => any) | undefined;
52
53
  "onUpdate:open"?: ((...args: any[]) => any) | undefined;
53
54
  "onUpdate:mode"?: ((...args: any[]) => any) | undefined;
54
55
  onPanelChange?: ((...args: any[]) => any) | undefined;
55
- "onValue-change"?: ((...args: any[]) => any) | undefined;
56
56
  "onVisible-change"?: ((...args: any[]) => any) | undefined;
57
57
  "onUpdate:panelValue"?: ((...args: any[]) => any) | undefined;
58
58
  onCalendarChange?: ((...args: any[]) => any) | undefined;
@@ -60,15 +60,15 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
60
60
  }>, {
61
61
  bordered: boolean;
62
62
  type: import("../..").HysDatePickerType;
63
- clearable: boolean;
63
+ locale: string;
64
64
  open: boolean;
65
+ clearable: boolean;
66
+ validateEvent: boolean;
65
67
  appendTo: string | false | HTMLElement;
68
+ showFooter: boolean;
66
69
  showToday: boolean;
67
70
  firstDayOfWeek: number;
68
- locale: string;
69
71
  showAdjacentDays: boolean;
70
- showFooter: boolean;
71
- validateEvent: boolean;
72
72
  editable: boolean;
73
73
  showNow: boolean;
74
74
  showConfirm: boolean;
@@ -11,12 +11,12 @@ declare const __VLS_export: <V extends HysDatePickerValue = [string, string]>(__
11
11
  dates?: readonly (Date | null)[];
12
12
  error?: unknown;
13
13
  }) => any) | undefined;
14
+ "onValue-change"?: ((value: V, info: HysDatePickerChange) => any) | undefined;
14
15
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
15
16
  "onUpdate:mode"?: ((value: HysDatePickerView) => any) | undefined;
16
17
  onPanelChange?: ((date: Date, view: HysDatePickerView, context: {
17
18
  index: number;
18
19
  }) => any) | undefined;
19
- "onValue-change"?: ((value: V, info: HysDatePickerChange) => any) | undefined;
20
20
  "onVisible-change"?: ((value: boolean) => any) | undefined;
21
21
  "onUpdate:panelValue"?: ((value: HysDateScalar) => any) | undefined;
22
22
  onCalendarChange?: ((value: HysDatePickerValue, context: {
@@ -51,9 +51,9 @@ declare const __VLS_export: <V extends HysDatePickerValue = [string, string]>(__
51
51
  reason: string;
52
52
  dates?: readonly (Date | null)[];
53
53
  error?: unknown;
54
- }) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:mode", value: HysDatePickerView) => void) & ((evt: "panelChange", date: Date, view: HysDatePickerView, context: {
54
+ }) => void) & ((evt: "value-change", value: V, info: HysDatePickerChange) => void) & ((evt: "update:open", value: boolean) => void) & ((evt: "update:mode", value: HysDatePickerView) => void) & ((evt: "panelChange", date: Date, view: HysDatePickerView, context: {
55
55
  index: number;
56
- }) => void) & ((evt: "value-change", value: V, info: HysDatePickerChange) => void) & ((evt: "visible-change", value: boolean) => void) & ((evt: "update:panelValue", value: HysDateScalar) => void) & ((evt: "calendarChange", value: HysDatePickerValue, context: {
56
+ }) => void) & ((evt: "visible-change", value: boolean) => void) & ((evt: "update:panelValue", value: HysDateScalar) => void) & ((evt: "calendarChange", value: HysDatePickerValue, context: {
57
57
  range: "start" | "end";
58
58
  dates: readonly (Date | null)[];
59
59
  }) => void) & ((evt: "ok", value: V) => void);
@@ -73,13 +73,13 @@ declare const __VLS_base: import("vue").DefineComponent<HysDrawerProps, {
73
73
  transition: false | "fade" | "slide" | "none" | "slide-fade";
74
74
  closeText: string;
75
75
  transitionDuration: number;
76
- placement: import("../../index.js").HysDrawerPlacement;
77
76
  open: boolean;
77
+ placement: import("../../index.js").HysDrawerPlacement;
78
78
  appendTo: string | false | HTMLElement;
79
79
  loadingText: string;
80
+ cancelText: string;
80
81
  fullscreen: boolean;
81
82
  closeOnEscape: boolean;
82
- cancelText: string;
83
83
  closeOnMask: boolean;
84
84
  showClose: boolean;
85
85
  destroyOnClose: boolean;
@@ -111,8 +111,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
111
111
  validateState: import("vue").ComputedRef<HysFormStatus>;
112
112
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
113
113
  required: boolean;
114
- preserve: boolean;
115
114
  group: boolean;
115
+ preserve: boolean;
116
116
  labelWrap: boolean;
117
117
  colon: boolean;
118
118
  showLabel: boolean;
@@ -31,14 +31,18 @@ declare const __VLS_template: () => {
31
31
  };
32
32
  type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
33
33
  declare const __VLS_base: import("vue").DefineComponent<HysInputProps, {
34
+ element: import("vue").Ref<HTMLInputElement | HTMLTextAreaElement | undefined, HTMLInputElement | HTMLTextAreaElement | undefined>;
34
35
  input: import("vue").Ref<HTMLInputElement | HTMLTextAreaElement | undefined, HTMLInputElement | HTMLTextAreaElement | undefined>;
35
36
  textarea: import("vue").ComputedRef<HTMLTextAreaElement | undefined>;
36
37
  isComposing: import("vue").Ref<boolean, boolean>;
38
+ passwordVisible: import("vue").ComputedRef<boolean>;
39
+ textareaStyle: import("vue").ShallowRef<import("../..").HysTextareaStyle, import("../..").HysTextareaStyle>;
37
40
  focus: (options?: FocusOptions) => void;
38
41
  blur: () => void | undefined;
39
42
  select: () => void | undefined;
40
43
  clear: typeof clear;
41
44
  resize: () => Promise<void>;
45
+ resizeTextarea: () => Promise<void>;
42
46
  setSelectionRange: (start: number, end: number, direction?: "forward" | "backward" | "none") => void;
43
47
  scrollTo: (options: ScrollToOptions) => void | undefined;
44
48
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
@@ -46,11 +50,14 @@ declare const __VLS_base: import("vue").DefineComponent<HysInputProps, {
46
50
  "update:modelValue": (value: string) => any;
47
51
  clear: () => any;
48
52
  input: (value: string) => any;
53
+ keydown: (event: KeyboardEvent) => any;
49
54
  blur: (event: FocusEvent) => any;
50
55
  compositionend: (event: CompositionEvent) => any;
51
56
  compositionstart: (event: CompositionEvent) => any;
52
57
  compositionupdate: (event: CompositionEvent) => any;
53
58
  focus: (event: FocusEvent) => any;
59
+ mouseenter: (event: MouseEvent) => any;
60
+ mouseleave: (event: MouseEvent) => any;
54
61
  pressEnter: (event: KeyboardEvent) => any;
55
62
  "update:passwordVisible": (value: boolean) => any;
56
63
  passwordVisibleChange: (value: boolean) => any;
@@ -59,22 +66,27 @@ declare const __VLS_base: import("vue").DefineComponent<HysInputProps, {
59
66
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
60
67
  onClear?: (() => any) | undefined;
61
68
  onInput?: ((value: string) => any) | undefined;
69
+ onKeydown?: ((event: KeyboardEvent) => any) | undefined;
62
70
  onBlur?: ((event: FocusEvent) => any) | undefined;
63
71
  onCompositionend?: ((event: CompositionEvent) => any) | undefined;
64
72
  onCompositionstart?: ((event: CompositionEvent) => any) | undefined;
65
73
  onCompositionupdate?: ((event: CompositionEvent) => any) | undefined;
66
74
  onFocus?: ((event: FocusEvent) => any) | undefined;
75
+ onMouseenter?: ((event: MouseEvent) => any) | undefined;
76
+ onMouseleave?: ((event: MouseEvent) => any) | undefined;
67
77
  onPressEnter?: ((event: KeyboardEvent) => any) | undefined;
68
78
  "onUpdate:passwordVisible"?: ((value: boolean) => any) | undefined;
69
79
  onPasswordVisibleChange?: ((value: boolean) => any) | undefined;
70
80
  }>, {
71
81
  bordered: boolean;
72
82
  type: string;
73
- resize: "none" | "both" | "horizontal" | "vertical";
83
+ resize: "none" | "horizontal" | "vertical" | "both";
74
84
  showPasswordOn: "click" | "mousedown";
75
85
  passwordVisible: boolean;
86
+ clearable: boolean;
76
87
  countPosition: "inside" | "outside";
77
88
  rows: number;
89
+ validateEvent: boolean;
78
90
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
79
91
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
80
92
  declare const _default: typeof __VLS_export;
@@ -1,50 +1,101 @@
1
- import type { HysPopupMotionProps } from '../../motion/popup';
2
- type __VLS_Props = HysPopupMotionProps & {
3
- users: {
4
- id: string;
5
- name: string;
6
- disabled?: boolean;
1
+ import type { HysMentionContext, HysMentionDocument, HysMentionEntity, HysMentionInsertOptions, HysMentionOpenOptions, HysMentionOption, HysMentionProps, HysMentionSlots, HysMentionUser } from "../../composables/mention";
2
+ type __VLS_Slots = HysMentionSlots;
3
+ declare function dismiss(): void;
4
+ declare function openManually(options?: HysMentionOpenOptions): boolean;
5
+ declare function insertMention(option: HysMentionOption, options?: HysMentionInsertOptions): Promise<boolean>;
6
+ declare function removeMention(target: HysMentionEntity | string | number): Promise<boolean>;
7
+ declare function focusInput(): void;
8
+ declare function clear(): Promise<boolean>;
9
+ declare function setDocument(document: HysMentionDocument | string): Promise<boolean>;
10
+ declare const __VLS_base: import("vue").DefineComponent<HysMentionProps, {
11
+ input: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
12
+ dropdownVisible: import("vue").Ref<boolean, boolean>;
13
+ focus: typeof focusInput;
14
+ blur: () => void | undefined;
15
+ open: typeof openManually;
16
+ close: typeof dismiss;
17
+ update: () => void;
18
+ retry: () => void;
19
+ loadMore: () => Promise<boolean>;
20
+ insertMention: typeof insertMention;
21
+ removeMention: typeof removeMention;
22
+ getEntities: () => {
23
+ id: string | number;
24
+ value: string | number;
25
+ label: string;
26
+ type: string;
27
+ prefix: string;
28
+ text: string;
29
+ start: number;
30
+ end: number;
31
+ payload?: unknown;
7
32
  }[];
8
- placeholder?: string;
9
- disabled?: boolean;
10
- readonly?: boolean;
11
- maxlength?: number;
12
- ariaLabel?: string;
13
- };
14
- type __VLS_ModelProps = {
15
- modelValue?: string;
16
- };
17
- type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
18
- declare const __VLS_template: () => {
19
- __VLS_Slots: {
20
- option?: (props: {
21
- user: {
22
- id: string;
23
- name: string;
24
- disabled?: boolean;
25
- };
26
- }) => any;
33
+ getDocument: () => {
34
+ text: string;
35
+ entities: {
36
+ id: string | number;
37
+ value: string | number;
38
+ label: string;
39
+ type: string;
40
+ prefix: string;
41
+ text: string;
42
+ start: number;
43
+ end: number;
44
+ payload?: unknown;
45
+ }[];
27
46
  };
28
- };
29
- type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
30
- declare const __VLS_base: import("vue").DefineComponent<__VLS_PublicProps, {
31
- focus: () => void | undefined;
32
- blur: () => void | undefined;
47
+ setDocument: typeof setDocument;
48
+ serialize: () => string;
49
+ clear: typeof clear;
50
+ undo: () => Promise<boolean>;
51
+ redo: () => Promise<boolean>;
33
52
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
34
53
  change: (value: string) => any;
35
54
  "update:modelValue": (value: string) => any;
36
- select: (user: {
37
- id: string;
38
- name: string;
39
- }) => any;
40
- }, string, import("vue").PublicProps, Readonly<__VLS_PublicProps> & Readonly<{
55
+ search: (query: string, prefix: string, context: HysMentionContext) => any;
56
+ clear: () => any;
57
+ select: (user: HysMentionUser, prefix: string, option: HysMentionOption) => any;
58
+ blur: (event: FocusEvent) => any;
59
+ focus: (event: FocusEvent) => any;
60
+ loadError: (error: unknown, context: HysMentionContext) => any;
61
+ create: (option: HysMentionOption, context: HysMentionContext) => any;
62
+ openChange: (open: boolean) => any;
63
+ "update:entities": (entities: HysMentionEntity[]) => any;
64
+ documentChange: (document: HysMentionDocument) => any;
65
+ entityAdd: (entity: HysMentionEntity) => any;
66
+ entityRemove: (entity: HysMentionEntity) => any;
67
+ wholeRemove: (value: string, prefix: string) => any;
68
+ }, string, import("vue").PublicProps, Readonly<HysMentionProps> & Readonly<{
41
69
  onChange?: ((value: string) => any) | undefined;
42
70
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
43
- onSelect?: ((user: {
44
- id: string;
45
- name: string;
46
- }) => any) | undefined;
47
- }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
71
+ onSearch?: ((query: string, prefix: string, context: HysMentionContext) => any) | undefined;
72
+ onClear?: (() => any) | undefined;
73
+ onSelect?: ((user: HysMentionUser, prefix: string, option: HysMentionOption) => any) | undefined;
74
+ onBlur?: ((event: FocusEvent) => any) | undefined;
75
+ onFocus?: ((event: FocusEvent) => any) | undefined;
76
+ onLoadError?: ((error: unknown, context: HysMentionContext) => any) | undefined;
77
+ onCreate?: ((option: HysMentionOption, context: HysMentionContext) => any) | undefined;
78
+ onOpenChange?: ((open: boolean) => any) | undefined;
79
+ "onUpdate:entities"?: ((entities: HysMentionEntity[]) => any) | undefined;
80
+ onDocumentChange?: ((document: HysMentionDocument) => any) | undefined;
81
+ onEntityAdd?: ((entity: HysMentionEntity) => any) | undefined;
82
+ onEntityRemove?: ((entity: HysMentionEntity) => any) | undefined;
83
+ onWholeRemove?: ((value: string, prefix: string) => any) | undefined;
84
+ }>, {
85
+ split: string;
86
+ type: "textarea" | "text" | "rich";
87
+ offset: number;
88
+ placement: import("../..").Placement;
89
+ defaultValue: string;
90
+ filterOption: import("../..").HysMentionFilter;
91
+ debounce: number;
92
+ minQueryLength: number;
93
+ appendTo: string | false | HTMLElement;
94
+ autoAdjustOverflow: boolean;
95
+ restoreFocus: boolean;
96
+ invalidEntity: "mark" | "text" | "remove";
97
+ maxOptions: number;
98
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
48
99
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
49
100
  declare const _default: typeof __VLS_export;
50
101
  export default _default;
@@ -89,9 +89,9 @@ declare const __VLS_base: import("vue").DefineComponent<HysModalProps, {
89
89
  open: boolean;
90
90
  appendTo: string | false | HTMLElement;
91
91
  loadingText: string;
92
+ cancelText: string;
92
93
  fullscreen: boolean;
93
94
  closeOnEscape: boolean;
94
- cancelText: string;
95
95
  initialFocus: import("../../index.js").HysModalInitialFocus;
96
96
  closeOnMask: boolean;
97
97
  showClose: boolean;
@@ -46,10 +46,10 @@ declare const __VLS_export: <T extends HysNumberInputValue = number | null>(__VL
46
46
  onClear?: (() => any) | undefined;
47
47
  onInput?: ((value: T | null) => any) | undefined;
48
48
  onBlur?: ((event: FocusEvent) => any) | undefined;
49
+ onStep?: ((value: T, info: HysNumberInputStepInfo) => any) | undefined;
49
50
  onFocus?: ((event: FocusEvent) => any) | undefined;
50
51
  onInvalid?: ((info: HysNumberInputInvalidInfo) => any) | undefined;
51
52
  onPressEnter?: ((event: KeyboardEvent) => any) | undefined;
52
- onStep?: ((value: T, info: HysNumberInputStepInfo) => any) | undefined;
53
53
  }> & (typeof globalThis extends {
54
54
  __VLS_PROPS_FALLBACK: infer P;
55
55
  } ? P : {});
@@ -83,7 +83,7 @@ declare const __VLS_export: <T extends HysNumberInputValue = number | null>(__VL
83
83
  } & {
84
84
  append?: (props: {}) => any;
85
85
  };
86
- emit: ((evt: "change", value: T) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "clear") => void) & ((evt: "input", value: T | null) => void) & ((evt: "blur", event: FocusEvent) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "invalid", info: HysNumberInputInvalidInfo) => void) & ((evt: "pressEnter", event: KeyboardEvent) => void) & ((evt: "step", value: T, info: HysNumberInputStepInfo) => void);
86
+ emit: ((evt: "change", value: T) => void) & ((evt: "update:modelValue", value: T) => void) & ((evt: "clear") => void) & ((evt: "input", value: T | null) => void) & ((evt: "blur", event: FocusEvent) => void) & ((evt: "step", value: T, info: HysNumberInputStepInfo) => void) & ((evt: "focus", event: FocusEvent) => void) & ((evt: "invalid", info: HysNumberInputInvalidInfo) => void) & ((evt: "pressEnter", event: KeyboardEvent) => void);
87
87
  }>) => import("vue").VNode & {
88
88
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
89
89
  };
@@ -1,27 +1,68 @@
1
1
  type __VLS_Props = {
2
- page: number;
3
- total: number;
2
+ /** 受控页码,使用 v-model:page。省略时由分页器维护。 */
3
+ page?: number;
4
+ /** 总记录数,用于计算页数和当前记录范围。 */
5
+ total?: number;
6
+ /** 显式总页数;与 total 同时提供时优先用于分页。 */
7
+ pageCount?: number;
8
+ /** 受控每页条数,使用 v-model:page-size。省略时由分页器维护。 */
4
9
  pageSize?: number;
10
+ /** 非受控的初始页码,从 1 开始。 */
11
+ defaultPage?: number;
12
+ /** 非受控的初始每页条数。 */
13
+ defaultPageSize?: number;
14
+ /** 每页条数选项。当前条数会保留在列表中。 */
5
15
  pageSizeOptions?: number[];
16
+ /** 当前页左右各保留的页码数量,取值 0–5。 */
6
17
  siblingCount?: number;
7
18
  showSizeChanger?: boolean;
8
19
  showQuickJumper?: boolean;
20
+ /** 默认布局是否显示记录总数;需要 total 或 total 插槽。 */
9
21
  showTotal?: boolean;
22
+ /** 总页数小于等于一页时隐藏分页器。 */
23
+ hideOnSinglePage?: boolean;
10
24
  disabled?: boolean;
11
25
  loading?: boolean;
26
+ /** 以当前页 / 总页数代替页码,并隐藏跳转。 */
12
27
  compact?: boolean;
28
+ /** 在窄容器中以当前页 / 总页数代替页码。 */
29
+ responsive?: boolean;
30
+ /** 分页控件尺寸,sm、md、lg 分别为 28、32、40px。 */
31
+ size?: 'sm' | 'md' | 'lg';
32
+ /** 逗号分隔的控件顺序,支持 total、first、prev、pager、next、last、sizes、jumper。使用 -> 将后续控件靠右排列。 */
33
+ layout?: string;
34
+ /** 覆盖分页区域、按钮、字段标签和总数格式。 */
13
35
  labels?: Partial<{
14
36
  total: string;
15
37
  perPage: string;
16
38
  jump: string;
17
39
  page: string;
40
+ pageItem: string;
41
+ navigation: string;
42
+ confirm: string;
18
43
  first: string;
19
44
  previous: string;
20
45
  next: string;
21
46
  last: string;
22
47
  }>;
23
48
  };
24
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
49
+ type NavigationItem = 'first' | 'prev' | 'next' | 'last';
50
+ type __VLS_Slots = {
51
+ total?: (props: {
52
+ total: number | undefined;
53
+ start: number;
54
+ end: number;
55
+ pageCount: number;
56
+ }) => unknown;
57
+ item?: (props: {
58
+ type: NavigationItem | 'page';
59
+ page: number;
60
+ active: boolean;
61
+ disabled: boolean;
62
+ }) => unknown;
63
+ 'jump-button'?: () => unknown;
64
+ };
65
+ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
25
66
  change: (page: number) => any;
26
67
  "update:page": (page: number) => any;
27
68
  pageSizeChange: (size: number) => any;
@@ -33,13 +74,23 @@ declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {
33
74
  "onUpdate:pageSize"?: ((size: number) => any) | undefined;
34
75
  }>, {
35
76
  disabled: boolean;
77
+ size: "sm" | "md" | "lg";
36
78
  compact: boolean;
37
79
  loading: boolean;
38
- pageSize: number;
80
+ defaultPage: number;
81
+ defaultPageSize: number;
39
82
  siblingCount: number;
40
83
  showSizeChanger: boolean;
41
84
  showQuickJumper: boolean;
42
85
  showTotal: boolean;
86
+ hideOnSinglePage: boolean;
87
+ responsive: boolean;
43
88
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
89
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
44
90
  declare const _default: typeof __VLS_export;
45
91
  export default _default;
92
+ type __VLS_WithSlots<T, S> = T & {
93
+ new (): {
94
+ $slots: S;
95
+ };
96
+ };
@@ -33,8 +33,8 @@ declare const __VLS_base: import("vue").DefineComponent<HysPopoverProps, {
33
33
  modelValue: boolean;
34
34
  destroyOnHide: boolean;
35
35
  effect: "dark" | "light";
36
- placement: import("../..").Placement;
37
36
  open: boolean;
37
+ placement: import("../..").Placement;
38
38
  appendTo: string | false | HTMLElement;
39
39
  showDelay: number;
40
40
  hideDelay: number;
@@ -98,9 +98,9 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {
98
98
  onHoverChange?: ((value: number | null) => any) | undefined;
99
99
  }>, {
100
100
  focusable: boolean;
101
+ keyboard: boolean;
101
102
  defaultValue: number;
102
103
  clearable: boolean;
103
- keyboard: boolean;
104
104
  allowClear: boolean;
105
105
  scoreTemplate: string;
106
106
  lowThreshold: number;
@@ -1,32 +1,70 @@
1
- type __VLS_Props = {
2
- modelValue: string;
1
+ import { type InputHTMLAttributes, type VNodeChild } from "vue";
2
+ export interface HysSearchProps {
3
+ modelValue?: string;
4
+ defaultValue?: string;
3
5
  placeholder?: string;
6
+ /** 输入触发模式的等待时间,单位为毫秒。 */
4
7
  delay?: number;
8
+ /** 输入时防抖搜索,或只在确认时搜索。 */
9
+ trigger?: "input" | "submit";
10
+ /** 显示搜索按钮,可传按钮文案。 */
11
+ enterButton?: boolean | string;
12
+ /** 清空后立即搜索。省略时跟随触发模式。 */
13
+ searchOnClear?: boolean;
5
14
  disabled?: boolean;
6
15
  readonly?: boolean;
7
16
  clearable?: boolean;
8
17
  loading?: boolean;
9
18
  ariaLabel?: string;
19
+ searchLabel?: string;
20
+ size?: "sm" | "md" | "lg";
21
+ inputProps?: InputHTMLAttributes;
22
+ }
23
+ export interface HysSearchButtonContext {
24
+ search: (event?: Event) => void;
25
+ disabled: boolean;
26
+ loading: boolean;
27
+ }
28
+ type __VLS_Slots = {
29
+ prefix?: () => VNodeChild;
30
+ suffix?: () => VNodeChild;
31
+ "clear-icon"?: () => VNodeChild;
32
+ "search-button"?: (context: HysSearchButtonContext) => VNodeChild;
10
33
  };
11
- declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {
12
- focus: () => void | undefined;
34
+ declare function submit(event?: Event): void;
35
+ declare const __VLS_base: import("vue").DefineComponent<HysSearchProps, {
36
+ input: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
37
+ search: typeof submit;
38
+ clear: () => Promise<void>;
39
+ focus: (options?: FocusOptions) => void | undefined;
13
40
  blur: () => void | undefined;
41
+ select: () => void | undefined;
14
42
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
15
43
  "update:modelValue": (value: string) => any;
16
- search: (value: string) => any;
44
+ search: (value: string, event?: Event | undefined) => any;
17
45
  clear: () => any;
18
46
  blur: (event: FocusEvent) => any;
19
47
  focus: (event: FocusEvent) => any;
20
- }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
48
+ }, string, import("vue").PublicProps, Readonly<HysSearchProps> & Readonly<{
21
49
  "onUpdate:modelValue"?: ((value: string) => any) | undefined;
22
- onSearch?: ((value: string) => any) | undefined;
50
+ onSearch?: ((value: string, event?: Event | undefined) => any) | undefined;
23
51
  onClear?: (() => any) | undefined;
24
52
  onBlur?: ((event: FocusEvent) => any) | undefined;
25
53
  onFocus?: ((event: FocusEvent) => any) | undefined;
26
54
  }>, {
55
+ trigger: "input" | "submit";
27
56
  placeholder: string;
28
- clearable: boolean;
29
57
  delay: number;
58
+ defaultValue: string;
59
+ clearable: boolean;
60
+ searchOnClear: boolean;
61
+ searchLabel: string;
30
62
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
63
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
31
64
  declare const _default: typeof __VLS_export;
32
65
  export default _default;
66
+ type __VLS_WithSlots<T, S> = T & {
67
+ new (): {
68
+ $slots: S;
69
+ };
70
+ };
@@ -21,7 +21,10 @@ declare const __VLS_export: <T extends HysSelectModelValue = string>(__VLS_props
21
21
  filterable?: boolean;
22
22
  clearable?: boolean;
23
23
  emptyValues?: readonly unknown[];
24
- clearValue?: HysSelectValue | null;
24
+ /** 单选清空后的值,也可由函数计算。 */
25
+ clearValue?: HysSelectValue | null | (() => HysSelectValue | null);
26
+ /** 模型以 { value, label } 保存选中项,可在远程选项尚未加载时回显。 */
27
+ labelInValue?: boolean;
25
28
  fallbackOption?: false | ((value: HysSelectValue) => HysSelectOption);
26
29
  multipleLimit?: number;
27
30
  maxTagCount?: number;
@@ -44,6 +47,8 @@ declare const __VLS_export: <T extends HysSelectModelValue = string>(__VLS_props
44
47
  showOnFocus?: boolean;
45
48
  retainSearch?: boolean;
46
49
  defaultActiveFirst?: boolean;
50
+ /** 无已选项时优先高亮的可选值。 */
51
+ firstActiveValue?: HysSelectValue;
47
52
  keyboard?: boolean;
48
53
  popupMatchWidth?: boolean;
49
54
  popupWidth?: number | string;
@@ -35,6 +35,8 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
35
35
  onVisibilityChange?: ((visible: boolean) => any) | undefined;
36
36
  }>, {
37
37
  title: boolean;
38
+ count: number;
39
+ delay: number;
38
40
  active: boolean;
39
41
  loading: boolean;
40
42
  loadingText: string;
@@ -43,8 +45,6 @@ declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {},
43
45
  avatarSize: number;
44
46
  avatarShape: "circle" | "square";
45
47
  titleWidth: string | number;
46
- count: number;
47
- delay: number;
48
48
  minDuration: number;
49
49
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
50
50
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;