hys-ui 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +38 -0
- package/README.md +15 -1
- package/dist/components/HysAlert/HysAlert.vue.js +5 -54
- package/dist/components/HysAlert/HysAlert2.vue.js +159 -2
- package/dist/components/HysAutocomplete/HysAutocomplete.vue.js +2 -2
- package/dist/components/HysAutocomplete/HysAutocomplete2.vue.js +285 -273
- package/dist/components/HysAvatarGroup/HysAvatarGroup.vue.js +1 -1
- package/dist/components/HysAvatarGroup/HysAvatarGroup2.vue.js +102 -98
- package/dist/components/HysBreadcrumb/HysBreadcrumb.vue.js +1 -1
- package/dist/components/HysBreadcrumb/HysBreadcrumb2.vue.js +273 -59
- package/dist/components/HysCalendar/HysCalendar.vue.js +3 -3
- package/dist/components/HysCalendar/HysCalendar2.vue.js +237 -225
- package/dist/components/HysCascader/HysCascader.vue.js +2 -2
- package/dist/components/HysCascader/HysCascader2.vue.js +337 -324
- package/dist/components/HysColorPicker/HysColorPanel.vue.js +7 -0
- package/dist/components/HysColorPicker/HysColorPanel2.vue.js +238 -0
- package/dist/components/HysColorPicker/HysColorPicker.vue.js +2 -2
- package/dist/components/HysColorPicker/HysColorPicker2.vue.js +239 -217
- package/dist/components/HysCommandPalette/HysCommandPalette.vue.js +90 -76
- package/dist/components/HysContextMenu/HysContextMenu.vue.js +5 -89
- package/dist/components/HysContextMenu/HysContextMenu2.vue.js +247 -2
- package/dist/components/HysContextMenu/HysMenuPanel.vue.js +7 -0
- package/dist/components/HysContextMenu/HysMenuPanel2.vue.js +208 -0
- package/dist/components/HysContextMenu/HysMenuSlot.js +10 -0
- package/dist/components/HysDataGrid/HysDataGrid.vue.js +1 -1
- package/dist/components/HysDataGrid/HysDataGrid2.vue.js +1008 -559
- package/dist/components/HysDatePicker/HysDatePicker.vue.js +2 -0
- package/dist/components/HysDatePicker/HysDatePickerControl.vue.js +2 -2
- package/dist/components/HysDatePicker/HysDatePickerControl2.vue.js +539 -526
- package/dist/components/HysDateRangePicker/HysDateRangePicker.vue.js +5 -3
- package/dist/components/HysDrawer/HysDrawer.vue.js +1 -1
- package/dist/components/HysDrawer/HysDrawer2.vue.js +434 -84
- package/dist/components/HysEmpty/HysEmpty.vue.js +5 -41
- package/dist/components/HysEmpty/HysEmpty2.vue.js +181 -2
- package/dist/components/HysFormItem/HysFormItem.vue.js +2 -2
- package/dist/components/HysFormItem/HysFormItem2.vue.js +171 -164
- package/dist/components/HysGantt/HysGantt.vue.js +1 -1
- package/dist/components/HysGantt/HysGantt2.vue.js +810 -795
- package/dist/components/HysMention/HysMention.vue.js +1 -1
- package/dist/components/HysMention/HysMention2.vue.js +112 -100
- package/dist/components/HysModal/HysModal.vue.js +2 -2
- package/dist/components/HysModal/HysModal2.vue.js +490 -85
- package/dist/components/HysPopover/HysPopover.vue.js +5 -91
- package/dist/components/HysPopover/HysPopover2.vue.js +120 -2
- package/dist/components/HysProgress/HysProgress.vue.js +2 -2
- package/dist/components/HysProgress/HysProgress2.vue.js +319 -52
- package/dist/components/HysSelect/HysSelect.vue.js +2 -2
- package/dist/components/HysSelect/HysSelect2.vue.js +730 -594
- package/dist/components/HysSlider/HysSlider.vue.js +2 -2
- package/dist/components/HysSlider/HysSlider2.vue.js +192 -188
- package/dist/components/HysSlider/SliderTooltip.vue.js +2 -2
- package/dist/components/HysSlider/SliderTooltip2.vue.js +103 -89
- package/dist/components/HysTable/HysTable.vue.js +2 -2
- package/dist/components/HysTable/HysTable2.vue.js +389 -368
- package/dist/components/HysTagInput/HysTagInput.vue.js +5 -82
- package/dist/components/HysTagInput/HysTagInput2.vue.js +396 -2
- package/dist/components/HysTimeline/HysTimeline.vue.js +2 -2
- package/dist/components/HysTimeline/HysTimeline2.vue.js +243 -24
- package/dist/components/HysTooltip/HysTooltip.vue.js +5 -64
- package/dist/components/HysTooltip/HysTooltip2.vue.js +110 -2
- package/dist/components/HysTour/HysTour.vue.js +46 -42
- package/dist/components/HysTransfer/HysTransfer.vue.js +2 -2
- package/dist/components/HysTransfer/HysTransfer2.vue.js +237 -207
- package/dist/components/HysTransfer/HysTransferPanel.vue.js +1 -1
- package/dist/components/HysTransfer/HysTransferPanel2.vue.js +320 -271
- package/dist/components/HysTree/HysTree.vue.js +2 -2
- package/dist/components/HysTree/HysTree2.vue.js +195 -184
- package/dist/components/HysTreeSelect/HysTreeSelect.vue.js +4 -4
- package/dist/components/HysTreeSelect/HysTreeSelect2.vue.js +389 -377
- package/dist/components/HysUpload/HysUpload.vue.js +2 -2
- package/dist/components/HysUpload/HysUpload2.vue.js +459 -125
- package/dist/components/HysVirtualTable/HysVirtualTable.vue.js +5 -94
- package/dist/components/HysVirtualTable/HysVirtualTable2.vue.js +656 -2
- package/dist/composables/color.js +97 -0
- package/dist/composables/dataGrid.js +68 -0
- package/dist/composables/drawer.js +17 -0
- package/dist/composables/feedback.js +14 -0
- package/dist/composables/menu.js +96 -0
- package/dist/composables/modal.js +14 -0
- package/dist/composables/overlayManager.js +48 -18
- package/dist/composables/progress.js +94 -0
- package/dist/composables/tagInput.js +16 -0
- package/dist/composables/timeline.js +19 -0
- package/dist/composables/transfer.js +19 -17
- package/dist/composables/upload.js +55 -0
- package/dist/composables/uploadRequest.js +58 -0
- package/dist/composables/useAlert.js +124 -0
- package/dist/composables/useColorPicker.js +402 -0
- package/dist/composables/useContextMenu.js +514 -0
- package/dist/composables/useDataGridRemote.js +67 -0
- package/dist/composables/useDialog.js +86 -43
- package/dist/composables/useDrawerPush.js +33 -0
- package/dist/composables/useDrawerResize.js +221 -0
- package/dist/composables/useFloating.js +110 -76
- package/dist/composables/useHysModal.js +185 -0
- package/dist/composables/useModal.js +295 -0
- package/dist/composables/useModalInteraction.js +394 -0
- package/dist/composables/usePopupSurface.js +458 -0
- package/dist/composables/useTagInput.js +313 -0
- package/dist/composables/useTransferMotion.js +185 -0
- package/dist/composables/useUpload.js +472 -0
- package/dist/composables/useUploadModel.js +65 -0
- package/dist/composables/useUploadRequests.js +266 -0
- package/dist/composables/useVirtualTableLayout.js +277 -0
- package/dist/composables/virtualTable.js +43 -0
- package/dist/index.js +27 -24
- package/dist/internal/PopupReference.js +39 -0
- package/dist/internal/PopupSurfacePanel.vue.js +7 -0
- package/dist/internal/PopupSurfacePanel2.vue.js +92 -0
- package/dist/motion/PopupMotion.js +105 -0
- package/dist/motion/popup.js +10 -0
- package/dist/style.css +1 -1
- package/dist/types/components/HysAlert/HysAlert.vue.d.ts +32 -22
- package/dist/types/components/HysAutocomplete/HysAutocomplete.vue.d.ts +7 -7
- package/dist/types/components/HysAvatarGroup/HysAvatarGroup.vue.d.ts +6 -1
- package/dist/types/components/HysBadge/HysBadge.vue.d.ts +3 -3
- package/dist/types/components/HysBreadcrumb/HysBreadcrumb.vue.d.ts +54 -31
- package/dist/types/components/HysCalendar/HysCalendar.vue.d.ts +3 -2
- package/dist/types/components/HysCascader/HysCascader.vue.d.ts +7 -7
- package/dist/types/components/HysCascader/HysCascaderColumn.vue.d.ts +2 -2
- package/dist/types/components/HysColorPicker/HysColorPanel.vue.d.ts +58 -0
- package/dist/types/components/HysColorPicker/HysColorPicker.vue.d.ts +63 -10
- package/dist/types/components/HysCommandPalette/HysCommandPalette.vue.d.ts +2 -1
- package/dist/types/components/HysContextMenu/HysContextMenu.vue.d.ts +50 -34
- package/dist/types/components/HysContextMenu/HysMenuPanel.vue.d.ts +79 -0
- package/dist/types/components/HysContextMenu/HysMenuSlot.d.ts +8 -0
- package/dist/types/components/HysDataGrid/HysDataGrid.vue.d.ts +65 -118
- package/dist/types/components/HysDatePicker/HysDatePickerControl.vue.d.ts +1 -1
- package/dist/types/components/HysDrawer/HysDrawer.vue.d.ts +92 -35
- package/dist/types/components/HysEmpty/HysEmpty.vue.d.ts +24 -20
- package/dist/types/components/HysFileManager/HysFileManager.vue.d.ts +2 -2
- package/dist/types/components/HysGantt/HysGantt.vue.d.ts +2 -1
- package/dist/types/components/HysMention/HysMention.vue.d.ts +2 -1
- package/dist/types/components/HysModal/HysModal.vue.d.ts +111 -34
- package/dist/types/components/HysPopover/HysPopover.vue.d.ts +41 -29
- package/dist/types/components/HysProgress/HysProgress.vue.d.ts +18 -24
- package/dist/types/components/HysResizablePanel/HysResizablePanel.vue.d.ts +2 -2
- package/dist/types/components/HysSelect/HysSelect.vue.d.ts +13 -4
- package/dist/types/components/HysSlider/HysSlider.vue.d.ts +5 -4
- package/dist/types/components/HysSlider/SliderTooltip.vue.d.ts +3 -1
- package/dist/types/components/HysSplitPane/HysSplitPane.vue.d.ts +2 -2
- package/dist/types/components/HysTable/HysTable.vue.d.ts +4 -4
- package/dist/types/components/HysTabs/HysTabs.vue.d.ts +2 -2
- package/dist/types/components/HysTagInput/HysTagInput.vue.d.ts +47 -25
- package/dist/types/components/HysTimeline/HysTimeline.vue.d.ts +19 -32
- package/dist/types/components/HysTooltip/HysTooltip.vue.d.ts +39 -19
- package/dist/types/components/HysTour/HysTour.vue.d.ts +2 -1
- package/dist/types/components/HysTransfer/HysTransfer.vue.d.ts +2 -2
- package/dist/types/components/HysTransfer/HysTransferPanel.vue.d.ts +5 -3
- package/dist/types/components/HysTree/HysTree.vue.d.ts +2 -2
- package/dist/types/components/HysUpload/HysUpload.vue.d.ts +55 -67
- package/dist/types/components/HysVirtualTable/HysVirtualTable.vue.d.ts +71 -40
- package/dist/types/composables/autocomplete.d.ts +3 -0
- package/dist/types/composables/avatar.d.ts +3 -0
- package/dist/types/composables/cascader.d.ts +3 -0
- package/dist/types/composables/color.d.ts +97 -0
- package/dist/types/composables/dataGrid.d.ts +100 -0
- package/dist/types/composables/datePicker.d.ts +3 -0
- package/dist/types/composables/drawer.d.ts +102 -0
- package/dist/types/composables/feedback.d.ts +98 -0
- package/dist/types/composables/formContext.d.ts +2 -0
- package/dist/types/composables/menu.d.ts +183 -0
- package/dist/types/composables/modal.d.ts +183 -0
- package/dist/types/composables/overlayManager.d.ts +7 -3
- package/dist/types/composables/popupSurface.d.ts +83 -0
- package/dist/types/composables/progress.d.ts +92 -0
- package/dist/types/composables/selectOptions.d.ts +2 -0
- package/dist/types/composables/table.d.ts +3 -0
- package/dist/types/composables/tagInput.d.ts +96 -0
- package/dist/types/composables/timeline.d.ts +82 -0
- package/dist/types/composables/transfer.d.ts +7 -0
- package/dist/types/composables/tree.d.ts +3 -0
- package/dist/types/composables/treeSelect.d.ts +3 -0
- package/dist/types/composables/upload.d.ts +202 -0
- package/dist/types/composables/uploadRequest.d.ts +3 -0
- package/dist/types/composables/useAlert.d.ts +21 -0
- package/dist/types/composables/useCascader.d.ts +1 -1
- package/dist/types/composables/useColorPicker.d.ts +101 -0
- package/dist/types/composables/useContextMenu.d.ts +81 -0
- package/dist/types/composables/useDataGridRemote.d.ts +15 -0
- package/dist/types/composables/useDialog.d.ts +16 -3
- package/dist/types/composables/useDrawerPush.d.ts +6 -0
- package/dist/types/composables/useDrawerResize.d.ts +27 -0
- package/dist/types/composables/useFloating.d.ts +21 -2
- package/dist/types/composables/useHysModal.d.ts +44 -0
- package/dist/types/composables/useModal.d.ts +62 -0
- package/dist/types/composables/useModalInteraction.d.ts +27 -0
- package/dist/types/composables/usePopupSurface.d.ts +3341 -0
- package/dist/types/composables/useTagInput.d.ts +66 -0
- package/dist/types/composables/useTransferMotion.d.ts +36 -0
- package/dist/types/composables/useUpload.d.ts +94 -0
- package/dist/types/composables/useUploadModel.d.ts +14 -0
- package/dist/types/composables/useUploadRequests.d.ts +38 -0
- package/dist/types/composables/useVirtualTableLayout.d.ts +51 -0
- package/dist/types/composables/virtualTable.d.ts +126 -0
- package/dist/types/index.d.ts +17 -2
- package/dist/types/internal/PopupReference.d.ts +18 -0
- package/dist/types/internal/PopupSurfacePanel.vue.d.ts +37 -0
- package/dist/types/motion/PopupMotion.d.ts +59 -0
- package/dist/types/motion/popup.d.ts +12 -0
- package/package.json +1 -1
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import { type HysTagInputProps, type HysTagInputReason } from "./tagInput";
|
|
3
|
+
export declare function useTagInput(props: HysTagInputProps, emit: (event: string, ...args: any[]) => void): {
|
|
4
|
+
attrs: import("vue").Attrs;
|
|
5
|
+
field: import("./formContext").HysFieldContext | undefined;
|
|
6
|
+
control: {
|
|
7
|
+
disabled: import("vue").ComputedRef<boolean>;
|
|
8
|
+
size: import("vue").ComputedRef<"sm" | "md" | "lg">;
|
|
9
|
+
label: import("vue").ComputedRef<string | undefined>;
|
|
10
|
+
};
|
|
11
|
+
element: Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
12
|
+
input: Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
|
|
13
|
+
errorId: string;
|
|
14
|
+
draft: Ref<string, string>;
|
|
15
|
+
pending: Ref<boolean, boolean>;
|
|
16
|
+
composing: Ref<boolean, boolean>;
|
|
17
|
+
focused: Ref<boolean, boolean>;
|
|
18
|
+
values: import("vue").ComputedRef<string[]>;
|
|
19
|
+
status: import("vue").ComputedRef<import("./formContext").HysFormStatus | undefined>;
|
|
20
|
+
maximum: import("vue").ComputedRef<number>;
|
|
21
|
+
context: import("vue").ComputedRef<{
|
|
22
|
+
values: string[];
|
|
23
|
+
draft: string;
|
|
24
|
+
disabled: boolean;
|
|
25
|
+
readonly: boolean;
|
|
26
|
+
pending: boolean;
|
|
27
|
+
add: (value?: string | string[]) => Promise<boolean>;
|
|
28
|
+
clear: () => Promise<boolean>;
|
|
29
|
+
}>;
|
|
30
|
+
tags: import("vue").ComputedRef<{
|
|
31
|
+
value: string;
|
|
32
|
+
index: number;
|
|
33
|
+
key: string;
|
|
34
|
+
}[]>;
|
|
35
|
+
drag: Ref<{
|
|
36
|
+
index: number;
|
|
37
|
+
values: string[];
|
|
38
|
+
} | undefined, {
|
|
39
|
+
index: number;
|
|
40
|
+
values: string[];
|
|
41
|
+
} | undefined>;
|
|
42
|
+
drop: Ref<{
|
|
43
|
+
index: number;
|
|
44
|
+
after: boolean;
|
|
45
|
+
} | undefined, {
|
|
46
|
+
index: number;
|
|
47
|
+
after: boolean;
|
|
48
|
+
} | undefined>;
|
|
49
|
+
add: (value?: string | string[], reason?: HysTagInputReason) => Promise<boolean>;
|
|
50
|
+
remove: (index: number) => Promise<boolean>;
|
|
51
|
+
clear: () => Promise<boolean>;
|
|
52
|
+
move: (from: number, to: number) => Promise<boolean>;
|
|
53
|
+
focus: (options?: FocusOptions) => void;
|
|
54
|
+
nativeInput: (event: Event) => void;
|
|
55
|
+
compositionEnd: (event: CompositionEvent) => void;
|
|
56
|
+
pasted: (event: ClipboardEvent) => void;
|
|
57
|
+
key: (event: KeyboardEvent) => void;
|
|
58
|
+
tagKey: (event: KeyboardEvent, index: number) => Promise<void>;
|
|
59
|
+
focusIn: (event: FocusEvent) => void;
|
|
60
|
+
focusOut: (event: FocusEvent, extra?: HTMLElement) => void;
|
|
61
|
+
stopDrag: () => void;
|
|
62
|
+
dragStart: (event: DragEvent, index: number) => void;
|
|
63
|
+
dragOver: (event: DragEvent, index: number) => void;
|
|
64
|
+
dragDrop: (event: DragEvent) => Promise<void>;
|
|
65
|
+
setDraft: (value: string) => void;
|
|
66
|
+
};
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import { type HysTransferKey, type HysTransferSide } from "./transfer";
|
|
3
|
+
interface Options {
|
|
4
|
+
animated?: boolean;
|
|
5
|
+
moveAnimation?: "flight" | "fade" | "none";
|
|
6
|
+
moveDuration?: number;
|
|
7
|
+
maxAnimatedItems?: number;
|
|
8
|
+
highlightOnArrival?: boolean;
|
|
9
|
+
}
|
|
10
|
+
type Box = {
|
|
11
|
+
left: number;
|
|
12
|
+
top: number;
|
|
13
|
+
width: number;
|
|
14
|
+
height: number;
|
|
15
|
+
right: number;
|
|
16
|
+
bottom: number;
|
|
17
|
+
};
|
|
18
|
+
interface Sample {
|
|
19
|
+
token: string;
|
|
20
|
+
label: string;
|
|
21
|
+
box: Box;
|
|
22
|
+
}
|
|
23
|
+
interface Snapshot {
|
|
24
|
+
generation: number;
|
|
25
|
+
direction: HysTransferSide;
|
|
26
|
+
count: number;
|
|
27
|
+
samples: Sample[];
|
|
28
|
+
}
|
|
29
|
+
/** Bounded visual feedback after an accepted move; never measures every data row. */
|
|
30
|
+
export declare function useTransferMotion(root: Ref<HTMLElement | undefined>, options: Options): {
|
|
31
|
+
capture: (direction: HysTransferSide, keys: readonly HysTransferKey[]) => Snapshot | undefined;
|
|
32
|
+
play: (snapshot: Snapshot | undefined) => void;
|
|
33
|
+
stop: () => void;
|
|
34
|
+
cancelPlaying: () => void;
|
|
35
|
+
};
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import { type HysUploadProps, type HysUploadItem, type HysUploadFileContext, type HysUploadSlotContext, type HysUploadStatus } from "./upload";
|
|
3
|
+
export declare function useUpload<T extends HysUploadItem>(props: HysUploadProps<T>, emit: (name: string, ...args: any[]) => void): {
|
|
4
|
+
element: Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
5
|
+
zone: Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
6
|
+
input: Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
|
|
7
|
+
active: Ref<boolean, boolean>;
|
|
8
|
+
available: import("vue").ComputedRef<boolean>;
|
|
9
|
+
disabled: import("vue").ComputedRef<boolean>;
|
|
10
|
+
size: import("vue").ComputedRef<"sm" | "md" | "lg">;
|
|
11
|
+
label: import("vue").ComputedRef<string | undefined>;
|
|
12
|
+
field: import("./formContext").HysFieldContext | undefined;
|
|
13
|
+
checking: Ref<boolean, boolean>;
|
|
14
|
+
dragging: Ref<boolean, boolean>;
|
|
15
|
+
lastError: Ref<string, string>;
|
|
16
|
+
words: import("vue").ComputedRef<{
|
|
17
|
+
choose: string;
|
|
18
|
+
drag: string;
|
|
19
|
+
checking: string;
|
|
20
|
+
localHint: string;
|
|
21
|
+
uploadHint: string;
|
|
22
|
+
files: string;
|
|
23
|
+
ready: string;
|
|
24
|
+
uploading: string;
|
|
25
|
+
success: string;
|
|
26
|
+
error: string;
|
|
27
|
+
queued: string;
|
|
28
|
+
removing: string;
|
|
29
|
+
submit: string;
|
|
30
|
+
abort: string;
|
|
31
|
+
retry: string;
|
|
32
|
+
clear: string;
|
|
33
|
+
remove: string;
|
|
34
|
+
preview: string;
|
|
35
|
+
download: string;
|
|
36
|
+
empty: string;
|
|
37
|
+
}>;
|
|
38
|
+
files: import("vue").ComputedRef<T[]>;
|
|
39
|
+
requests: {
|
|
40
|
+
configured: import("vue").ComputedRef<boolean>;
|
|
41
|
+
queue: import("vue").ShallowRef<string[], string[]>;
|
|
42
|
+
tasks: import("vue").ShallowRef<Map<string, {
|
|
43
|
+
uid: string;
|
|
44
|
+
raw: File;
|
|
45
|
+
controller: AbortController;
|
|
46
|
+
phase: "preparing" | "running" | "finishing";
|
|
47
|
+
stop?: (() => void) | undefined;
|
|
48
|
+
percentage: number;
|
|
49
|
+
}>, Map<string, {
|
|
50
|
+
uid: string;
|
|
51
|
+
raw: File;
|
|
52
|
+
controller: AbortController;
|
|
53
|
+
phase: "preparing" | "running" | "finishing";
|
|
54
|
+
stop?: (() => void) | undefined;
|
|
55
|
+
percentage: number;
|
|
56
|
+
}>>;
|
|
57
|
+
uploading: import("vue").ComputedRef<number>;
|
|
58
|
+
queued: import("vue").ComputedRef<number>;
|
|
59
|
+
activeKeys: import("vue").ComputedRef<Set<string>>;
|
|
60
|
+
queuedKeys: import("vue").ComputedRef<Set<string>>;
|
|
61
|
+
submit: (uid?: string) => Promise<number>;
|
|
62
|
+
retry: (uid: string) => Promise<boolean>;
|
|
63
|
+
abort: (uid?: string, reason?: string, reset?: boolean) => number;
|
|
64
|
+
cleanup: () => void;
|
|
65
|
+
};
|
|
66
|
+
removing: import("vue").ShallowRef<Set<string>, Set<string>>;
|
|
67
|
+
preview: import("vue").ShallowRef<{
|
|
68
|
+
file: T;
|
|
69
|
+
url: string;
|
|
70
|
+
} | undefined, {
|
|
71
|
+
file: T;
|
|
72
|
+
url: string;
|
|
73
|
+
} | undefined>;
|
|
74
|
+
closePreview: () => void;
|
|
75
|
+
context: (file: T) => HysUploadFileContext<T>;
|
|
76
|
+
scope: import("vue").ComputedRef<HysUploadSlotContext<T>>;
|
|
77
|
+
canPreview: (file: T) => boolean;
|
|
78
|
+
canDownload: (file: T) => boolean;
|
|
79
|
+
open: (event?: Event) => void;
|
|
80
|
+
click: (event: MouseEvent) => void;
|
|
81
|
+
keys: (event: KeyboardEvent) => void;
|
|
82
|
+
drop: (event: DragEvent) => void;
|
|
83
|
+
dragEnter: (event: DragEvent) => void;
|
|
84
|
+
dragOver: (event: DragEvent) => void;
|
|
85
|
+
dragLeave: () => void;
|
|
86
|
+
paste: (event: ClipboardEvent) => void;
|
|
87
|
+
blur: (event: FocusEvent) => void;
|
|
88
|
+
addFiles: (inputFiles: readonly File[]) => Promise<T[]>;
|
|
89
|
+
remove: (file: T | string) => Promise<boolean>;
|
|
90
|
+
clearFiles: (statuses?: readonly HysUploadStatus[]) => Promise<boolean>;
|
|
91
|
+
previewFile: (file: T | string) => Promise<boolean>;
|
|
92
|
+
download: (file: T | string) => Promise<boolean>;
|
|
93
|
+
focus: () => void;
|
|
94
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { HysUploadProps, HysUploadItem, HysUploadChangeType } from "./upload";
|
|
2
|
+
export declare function useUploadModel<T extends HysUploadItem>(props: HysUploadProps<T>, emit: (name: string, ...args: any[]) => void, live: () => boolean): {
|
|
3
|
+
files: import("vue").ComputedRef<T[]>;
|
|
4
|
+
controlled: import("vue").ComputedRef<boolean>;
|
|
5
|
+
commit: (change: (current: readonly T[]) => T[] | undefined, type: HysUploadChangeType, options?: {
|
|
6
|
+
force?: boolean;
|
|
7
|
+
allowInactive?: boolean;
|
|
8
|
+
guard?: () => boolean;
|
|
9
|
+
accepted?: () => void;
|
|
10
|
+
}) => Promise<boolean>;
|
|
11
|
+
cancel: () => void;
|
|
12
|
+
resetLocal: () => void;
|
|
13
|
+
interrupt: (keys: ReadonlySet<string>) => void;
|
|
14
|
+
};
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import { type HysUploadItem, type HysUploadProps, type HysUploadChangeType } from "./upload";
|
|
3
|
+
export declare function useUploadRequests<T extends HysUploadItem>(options: {
|
|
4
|
+
props: HysUploadProps<T>;
|
|
5
|
+
files: Readonly<Ref<readonly T[]>>;
|
|
6
|
+
available: Readonly<Ref<boolean>>;
|
|
7
|
+
live: () => boolean;
|
|
8
|
+
emit: (name: string, ...args: any[]) => void;
|
|
9
|
+
prepare: (file: T, signal: AbortSignal) => Promise<Blob | undefined>;
|
|
10
|
+
forget: (uid: string) => void;
|
|
11
|
+
patch: (changes: Map<string, Partial<T>>, type: HysUploadChangeType, guard?: (uid?: string) => boolean) => Promise<boolean>;
|
|
12
|
+
}): {
|
|
13
|
+
configured: import("vue").ComputedRef<boolean>;
|
|
14
|
+
queue: import("vue").ShallowRef<string[], string[]>;
|
|
15
|
+
tasks: import("vue").ShallowRef<Map<string, {
|
|
16
|
+
uid: string;
|
|
17
|
+
raw: File;
|
|
18
|
+
controller: AbortController;
|
|
19
|
+
phase: "preparing" | "running" | "finishing";
|
|
20
|
+
stop?: () => void;
|
|
21
|
+
percentage: number;
|
|
22
|
+
}>, Map<string, {
|
|
23
|
+
uid: string;
|
|
24
|
+
raw: File;
|
|
25
|
+
controller: AbortController;
|
|
26
|
+
phase: "preparing" | "running" | "finishing";
|
|
27
|
+
stop?: () => void;
|
|
28
|
+
percentage: number;
|
|
29
|
+
}>>;
|
|
30
|
+
uploading: import("vue").ComputedRef<number>;
|
|
31
|
+
queued: import("vue").ComputedRef<number>;
|
|
32
|
+
activeKeys: import("vue").ComputedRef<Set<string>>;
|
|
33
|
+
queuedKeys: import("vue").ComputedRef<Set<string>>;
|
|
34
|
+
submit: (uid?: string) => Promise<number>;
|
|
35
|
+
retry: (uid: string) => Promise<boolean>;
|
|
36
|
+
abort: (uid?: string, reason?: string, reset?: boolean) => number;
|
|
37
|
+
cleanup: () => void;
|
|
38
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { type CSSProperties } from "vue";
|
|
2
|
+
import { type HysVirtualTableAlign, type HysVirtualTableColumn, type HysVirtualTableProps, type HysVirtualTableRange, type HysVirtualTableScroll } from "./virtualTable";
|
|
3
|
+
export interface VirtualColumn<T extends object> {
|
|
4
|
+
token: string;
|
|
5
|
+
column?: HysVirtualTableColumn<T>;
|
|
6
|
+
index: number;
|
|
7
|
+
width: number;
|
|
8
|
+
offset: number;
|
|
9
|
+
left?: number;
|
|
10
|
+
right?: number;
|
|
11
|
+
selection?: boolean;
|
|
12
|
+
gap?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function useVirtualTableLayout<T extends object>(props: HysVirtualTableProps<T>, count: () => number, lastKey: () => string | undefined, report: {
|
|
15
|
+
scroll: (state: HysVirtualTableScroll) => void;
|
|
16
|
+
range: (state: HysVirtualTableRange) => void;
|
|
17
|
+
end: (state: {
|
|
18
|
+
distance: number;
|
|
19
|
+
total: number;
|
|
20
|
+
}) => void;
|
|
21
|
+
}): {
|
|
22
|
+
viewport: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
23
|
+
live: import("vue").Ref<boolean, boolean>;
|
|
24
|
+
rowHeight: import("vue").ComputedRef<number>;
|
|
25
|
+
headerHeight: import("vue").ComputedRef<number>;
|
|
26
|
+
topHeight: import("vue").ComputedRef<number>;
|
|
27
|
+
bodyHeight: import("vue").ComputedRef<number>;
|
|
28
|
+
rootStyle: import("vue").ComputedRef<{
|
|
29
|
+
width: string | undefined;
|
|
30
|
+
}>;
|
|
31
|
+
viewportStyle: import("vue").ComputedRef<{
|
|
32
|
+
height: string;
|
|
33
|
+
}>;
|
|
34
|
+
columns: import("vue").ComputedRef<VirtualColumn<T>[]>;
|
|
35
|
+
columnMap: import("vue").ComputedRef<Map<string, VirtualColumn<T>>>;
|
|
36
|
+
renderColumns: import("vue").ComputedRef<VirtualColumn<T>[]>;
|
|
37
|
+
contentWidth: import("vue").ComputedRef<number>;
|
|
38
|
+
scrollTop: import("vue").Ref<number, number>;
|
|
39
|
+
scrollLeft: import("vue").Ref<number, number>;
|
|
40
|
+
range: import("vue").ComputedRef<HysVirtualTableRange>;
|
|
41
|
+
scrollTo: (options: {
|
|
42
|
+
top?: number;
|
|
43
|
+
left?: number;
|
|
44
|
+
behavior?: ScrollBehavior;
|
|
45
|
+
}) => void;
|
|
46
|
+
scrollToRow: (index: number, align?: HysVirtualTableAlign) => void;
|
|
47
|
+
scrollToColumn: (key: string, align?: HysVirtualTableAlign) => boolean;
|
|
48
|
+
onScroll: () => void;
|
|
49
|
+
remeasure: () => void;
|
|
50
|
+
};
|
|
51
|
+
export declare function virtualColumnStyle<T extends object>(cell: VirtualColumn<T>): CSSProperties;
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import type { CSSProperties, HTMLAttributes, VNodeChild } from "vue";
|
|
2
|
+
export type HysVirtualTableKey = string | number;
|
|
3
|
+
export type HysVirtualTableAlign = "start" | "center" | "end" | "nearest";
|
|
4
|
+
export interface HysVirtualTableSort {
|
|
5
|
+
key: string;
|
|
6
|
+
direction: "asc" | "desc";
|
|
7
|
+
}
|
|
8
|
+
export interface HysVirtualTableCell<T extends object = Record<string, unknown>> {
|
|
9
|
+
row: T;
|
|
10
|
+
column: HysVirtualTableColumn<T>;
|
|
11
|
+
value: unknown;
|
|
12
|
+
rowIndex: number;
|
|
13
|
+
columnIndex: number;
|
|
14
|
+
}
|
|
15
|
+
export interface HysVirtualTableColumn<T extends object = any> {
|
|
16
|
+
key: string;
|
|
17
|
+
label: string;
|
|
18
|
+
width?: number;
|
|
19
|
+
minWidth?: number;
|
|
20
|
+
maxWidth?: number;
|
|
21
|
+
dataIndex?: string | readonly (string | number)[];
|
|
22
|
+
valueGetter?: (row: T, index: number) => unknown;
|
|
23
|
+
formatter?: (context: HysVirtualTableCell<T>) => VNodeChild;
|
|
24
|
+
fixed?: boolean | "left" | "right";
|
|
25
|
+
hidden?: boolean;
|
|
26
|
+
align?: "left" | "center" | "right";
|
|
27
|
+
headerAlign?: "left" | "center" | "right";
|
|
28
|
+
sortable?: boolean | "custom";
|
|
29
|
+
sorter?: (a: T, b: T) => number;
|
|
30
|
+
className?: string;
|
|
31
|
+
headerClassName?: string;
|
|
32
|
+
}
|
|
33
|
+
export interface HysVirtualTableRange {
|
|
34
|
+
start: number;
|
|
35
|
+
end: number;
|
|
36
|
+
visibleStart: number;
|
|
37
|
+
visibleEnd: number;
|
|
38
|
+
columnKeys: string[];
|
|
39
|
+
}
|
|
40
|
+
export interface HysVirtualTableScroll {
|
|
41
|
+
scrollTop: number;
|
|
42
|
+
scrollLeft: number;
|
|
43
|
+
direction: "up" | "down" | "left" | "right" | null;
|
|
44
|
+
}
|
|
45
|
+
export interface HysVirtualTableProps<T extends object> {
|
|
46
|
+
rows: readonly T[];
|
|
47
|
+
columns: readonly HysVirtualTableColumn<T>[];
|
|
48
|
+
rowKey?: string | ((row: T, index: number) => HysVirtualTableKey);
|
|
49
|
+
rowHeight?: number;
|
|
50
|
+
height?: number | string;
|
|
51
|
+
width?: number | string;
|
|
52
|
+
headerHeight?: number;
|
|
53
|
+
showHeader?: boolean;
|
|
54
|
+
fit?: boolean;
|
|
55
|
+
overscan?: number;
|
|
56
|
+
virtualColumns?: boolean;
|
|
57
|
+
columnOverscan?: number;
|
|
58
|
+
loading?: boolean;
|
|
59
|
+
loadingMode?: "replace" | "overlay";
|
|
60
|
+
loadingText?: string;
|
|
61
|
+
emptyText?: string;
|
|
62
|
+
disabled?: boolean;
|
|
63
|
+
fixedRows?: readonly T[];
|
|
64
|
+
striped?: boolean;
|
|
65
|
+
bordered?: boolean;
|
|
66
|
+
sortState?: HysVirtualTableSort | null;
|
|
67
|
+
defaultSort?: HysVirtualTableSort | null;
|
|
68
|
+
selectable?: boolean | ((row: T, index: number) => boolean);
|
|
69
|
+
selectedRowKeys?: readonly HysVirtualTableKey[];
|
|
70
|
+
defaultSelectedRowKeys?: readonly HysVirtualTableKey[];
|
|
71
|
+
selectionType?: "checkbox" | "radio";
|
|
72
|
+
selectionWidth?: number;
|
|
73
|
+
reserveSelection?: boolean;
|
|
74
|
+
selectOnClick?: boolean;
|
|
75
|
+
currentRowKey?: HysVirtualTableKey | null;
|
|
76
|
+
defaultCurrentRowKey?: HysVirtualTableKey | null;
|
|
77
|
+
highlightCurrentRow?: boolean;
|
|
78
|
+
keyboard?: boolean;
|
|
79
|
+
endReachedThreshold?: number;
|
|
80
|
+
ariaLabel?: string;
|
|
81
|
+
rowClassName?: string | ((row: T, index: number) => string);
|
|
82
|
+
rowStyle?: CSSProperties | ((row: T, index: number) => CSSProperties);
|
|
83
|
+
cellClassName?: string | ((context: HysVirtualTableCell<T>) => string);
|
|
84
|
+
cellStyle?: CSSProperties | ((context: HysVirtualTableCell<T>) => CSSProperties);
|
|
85
|
+
customRow?: (row: T, index: number) => HTMLAttributes;
|
|
86
|
+
customCell?: (context: HysVirtualTableCell<T>) => HTMLAttributes;
|
|
87
|
+
customHeaderCell?: (column: HysVirtualTableColumn<T>, index: number) => HTMLAttributes;
|
|
88
|
+
}
|
|
89
|
+
export interface HysVirtualTableInstance<T extends object = Record<string, unknown>> {
|
|
90
|
+
readonly element: HTMLElement | undefined;
|
|
91
|
+
readonly viewport: HTMLElement | undefined;
|
|
92
|
+
readonly scrollTop: number;
|
|
93
|
+
readonly scrollLeft: number;
|
|
94
|
+
readonly range: HysVirtualTableRange;
|
|
95
|
+
readonly selectedRowKeys: HysVirtualTableKey[];
|
|
96
|
+
readonly sortState: HysVirtualTableSort | null;
|
|
97
|
+
scrollTo(options: {
|
|
98
|
+
top?: number;
|
|
99
|
+
left?: number;
|
|
100
|
+
behavior?: ScrollBehavior;
|
|
101
|
+
}): void;
|
|
102
|
+
scrollToRow(index: number, align?: HysVirtualTableAlign): void;
|
|
103
|
+
scrollToKey(key: HysVirtualTableKey, align?: HysVirtualTableAlign): boolean;
|
|
104
|
+
scrollToColumn(key: string, align?: HysVirtualTableAlign): boolean;
|
|
105
|
+
focusCell(index: number, key?: string): Promise<boolean>;
|
|
106
|
+
setSort(sort: HysVirtualTableSort | null): Promise<boolean>;
|
|
107
|
+
clearSelection(): Promise<boolean>;
|
|
108
|
+
toggleRowSelection(key: HysVirtualTableKey, selected?: boolean): Promise<boolean>;
|
|
109
|
+
selectAll(selected?: boolean): Promise<boolean>;
|
|
110
|
+
setCurrentRow(key: HysVirtualTableKey | null): Promise<boolean>;
|
|
111
|
+
getRow(index: number): T | undefined;
|
|
112
|
+
remeasure(): void;
|
|
113
|
+
}
|
|
114
|
+
export declare const virtualFinite: (value: unknown, fallback: number, min?: number, max?: number) => number;
|
|
115
|
+
export declare const virtualKey: (key: unknown) => key is HysVirtualTableKey;
|
|
116
|
+
export declare const virtualToken: (key: HysVirtualTableKey) => string;
|
|
117
|
+
export declare function virtualValue<T extends object>(row: T, column: HysVirtualTableColumn<T>, index: number): unknown;
|
|
118
|
+
export interface VirtualEntry<T extends object> {
|
|
119
|
+
row: T;
|
|
120
|
+
key: HysVirtualTableKey;
|
|
121
|
+
token: string;
|
|
122
|
+
sourceIndex: number;
|
|
123
|
+
valid: boolean;
|
|
124
|
+
}
|
|
125
|
+
export declare function virtualEntries<T extends object>(rows: readonly T[], rowKey: HysVirtualTableProps<T>["rowKey"]): VirtualEntry<T>[];
|
|
126
|
+
export declare function virtualAligned(start: number, size: number, scroll: number, extent: number, align: HysVirtualTableAlign): number;
|
package/dist/types/index.d.ts
CHANGED
|
@@ -10,6 +10,8 @@ export { default as HysAvatarGroup } from './components/HysAvatarGroup/HysAvatar
|
|
|
10
10
|
export { default as HysBadge } from './components/HysBadge/HysBadge.vue';
|
|
11
11
|
export { default as HysBreadcrumb } from './components/HysBreadcrumb/HysBreadcrumb.vue';
|
|
12
12
|
export type { HysBreadcrumbItem } from './components/HysBreadcrumb/HysBreadcrumb.vue';
|
|
13
|
+
export type { HysBreadcrumbSelectInfo } from './components/HysBreadcrumb/HysBreadcrumb.vue';
|
|
14
|
+
export type { HysBreadcrumbProps } from './components/HysBreadcrumb/HysBreadcrumb.vue';
|
|
13
15
|
export { default as HysButton } from './components/HysButton/HysButton.vue';
|
|
14
16
|
export type { HysButtonVariant } from './components/HysButton/HysButton.vue';
|
|
15
17
|
export type { HysButtonProps } from './components/HysButton/HysButton.vue';
|
|
@@ -29,7 +31,6 @@ export type { Comment } from './components/HysCommentEditor/HysCommentEditor.vue
|
|
|
29
31
|
export { default as HysContextMenu } from './components/HysContextMenu/HysContextMenu.vue';
|
|
30
32
|
export { default as HysCronEditor } from './components/HysCronEditor/HysCronEditor.vue';
|
|
31
33
|
export { default as HysDataGrid } from './components/HysDataGrid/HysDataGrid.vue';
|
|
32
|
-
export type { GridColumn } from './components/HysDataGrid/HysDataGrid.vue';
|
|
33
34
|
export { default as HysDatePicker } from './components/HysDatePicker/HysDatePicker.vue';
|
|
34
35
|
export { default as HysDateRangePicker } from './components/HysDateRangePicker/HysDateRangePicker.vue';
|
|
35
36
|
export { default as HysDiffViewer } from './components/HysDiffViewer/HysDiffViewer.vue';
|
|
@@ -92,7 +93,6 @@ export { default as HysTransfer } from './components/HysTransfer/HysTransfer.vue
|
|
|
92
93
|
export { default as HysTree } from './components/HysTree/HysTree.vue';
|
|
93
94
|
export { default as HysTreeSelect } from './components/HysTreeSelect/HysTreeSelect.vue';
|
|
94
95
|
export { default as HysUpload } from './components/HysUpload/HysUpload.vue';
|
|
95
|
-
export type { HysUploadFile } from './components/HysUpload/HysUpload.vue';
|
|
96
96
|
export { default as HysVirtualTable } from './components/HysVirtualTable/HysVirtualTable.vue';
|
|
97
97
|
export { provideHysConfig } from './config';
|
|
98
98
|
export type { HysConfig, HysTheme, HysMotion } from './config';
|
|
@@ -119,3 +119,18 @@ export type { TreeNode, HysTreeKey, HysTreeValue, HysTreeNode, HysTreeFieldNames
|
|
|
119
119
|
export type { HysTreeSelectNode, HysTreeSelectDataNode, HysTreeSelectLabelValue, HysTreeSelectValue, HysTreeSelectFieldNames, HysTreeSelectSimpleMode, HysTreeSelectStrategy, HysTreeSelectItem, HysTreeSelectChange, HysTreeSelectProps, HysTreeSelectInstance } from './composables/treeSelect';
|
|
120
120
|
export type { HysCascaderKey, HysCascaderPath, HysCascaderValue, HysCascaderDataNode, HysCascaderNode, HysCascaderFieldNames, HysCascaderItem, HysCascaderOptionContext, HysCascaderLoadContext, HysCascaderChange, HysCascaderLocale, HysCascaderProps, HysCascaderInstance } from './composables/cascader';
|
|
121
121
|
export type { HysDatePickerWeek, HysDateScalar, HysDatePickerValue, HysDateRangeValue, HysDatePickerType, HysDatePickerUnit, HysDatePickerView, HysDatePoint, HysDatePickerContext, HysDateDisabledTime, HysDateShortcut, HysDatePickerCell, HysDatePickerChange, HysDatePickerLocale, HysDatePickerProps, HysDateRangePickerProps, HysDatePickerInstance, HysDateRangePickerInstance, HysDatePickerSlots } from './composables/datePicker';
|
|
122
|
+
export type { HysModalDragEffect, HysModalSectionSize, HysModalSizeName, HysModalBeforeClose, HysModalCloseReason, HysModalType, HysModalInitialFocus, HysModalActionContext, HysModalPosition, HysModalSize, HysModalProps, HysModalSlotContext, HysModalSlots, HysModalInstance } from './composables/modal';
|
|
123
|
+
export { useHysModal, createHysModal } from './composables/useHysModal';
|
|
124
|
+
export type { HysModalResult, HysModalOptions, HysModalHandle, HysModalConfig, HysModalApi, HysModalService, HysModalServiceConfig } from './composables/useHysModal';
|
|
125
|
+
export type { HysMenuKey, HysContextMenuTrigger, HysContextMenuItem, HysMenuFieldNames, HysMenuSelectInfo, HysMenuShowOptions, HysContextMenuProps, HysContextMenuInstance, HysMenuItemContext, HysContextMenuSlots } from './composables/menu';
|
|
126
|
+
export type { HysDrawerProps, HysDrawerBeforeClose, HysDrawerPlacement, HysDrawerSizeName, HysDrawerCloseReason, HysDrawerActionContext, HysDrawerInitialFocus, HysDrawerSectionSize, HysDrawerResizeOptions, HysDrawerResizeInfo, HysDrawerPushOptions, HysDrawerSlotContext, HysDrawerSlots, HysDrawerInstance } from './composables/drawer';
|
|
127
|
+
export type { HysPopupPlacement, HysPopupTrigger, HysPopupVirtualReference, HysPopupReference, HysPopupSurfaceProps, HysTooltipProps, HysPopoverProps, HysPopupSurfaceContext, HysTooltipSlots, HysPopoverSlots, HysPopupSurfaceInstance, HysTooltipInstance, HysPopoverInstance } from './composables/popupSurface';
|
|
128
|
+
export type { HysUploadFile, HysUploadItem, HysUploadStatus, HysUploadListType, HysUploadChangeType, HysUploadChange, HysUploadContext, HysUploadInvalid, HysUploadError, HysUploadDataScalar, HysUploadData, HysUploadRequestOptions, HysUploadRequestResult, HysUploadLocale, HysUploadProps, HysUploadActions, HysUploadFileContext, HysUploadSlotContext, HysUploadSlots, HysUploadInstance } from './composables/upload';
|
|
129
|
+
export type { HysProgressType, HysProgressStatus, HysProgressSize, HysProgressLinecap, HysProgressGapPosition, HysProgressGradientDirection, HysProgressGradientStop, HysProgressGradient, HysProgressColorStop, HysProgressColor, HysProgressSuccess, HysProgressLabelContext, HysProgressProps, HysProgressSlots, HysProgressInstance } from './composables/progress';
|
|
130
|
+
export type { HysAlertTone, HysAlertEffect, HysAlertTransition, HysAlertCloseContext, HysAlertProps, HysAlertSlotContext, HysAlertSlots, HysAlertInstance, HysEmptyIllustration, HysEmptyProps, HysEmptySlotContext, HysEmptySlots, HysEmptyInstance } from './composables/feedback';
|
|
131
|
+
export type { HysTimelineKey, HysTimelineMode, HysTimelinePosition, HysTimelineSize, HysTimelineTone, HysTimelineItem, HysTimelineFieldNames, HysTimelineProps, HysTimelineItemContext, HysTimelinePendingContext, HysTimelineSlots, HysTimelineInstance } from './composables/timeline';
|
|
132
|
+
export type { HysTagInputReason, HysTagInputAddContext, HysTagInputInvalid, HysTagInputProps, HysTagInputSlotContext, HysTagInputTagContext, HysTagInputSlots, HysTagInputInstance } from './composables/tagInput';
|
|
133
|
+
export type { HysColorFormat, HysColor, HysColorPickerProps, HysColorPickerContext, HysColorPickerSlots, HysColorPickerInstance } from './composables/color';
|
|
134
|
+
export type { HysVirtualTableKey, HysVirtualTableAlign, HysVirtualTableSort, HysVirtualTableCell, HysVirtualTableColumn, HysVirtualTableRange, HysVirtualTableScroll, HysVirtualTableProps, HysVirtualTableInstance } from './composables/virtualTable';
|
|
135
|
+
export type { GridColumn, HysDataGridKey, HysDataGridSort, HysDataGridQuery, HysDataGridProps, HysDataGridResult, HysDataGridLoader, HysDataGridInstance } from './composables/dataGrid';
|
|
136
|
+
export type { HysPopupTransition, HysPopupMotionProps } from './motion/popup';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { type VNode } from "vue";
|
|
2
|
+
/** Adds popup ARIA to the real control without introducing another keyboard stop. */
|
|
3
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
4
|
+
id: StringConstructor;
|
|
5
|
+
open: BooleanConstructor;
|
|
6
|
+
kind: StringConstructor;
|
|
7
|
+
}>, () => VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
8
|
+
[key: string]: any;
|
|
9
|
+
}>, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "element"[], "element", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
10
|
+
id: StringConstructor;
|
|
11
|
+
open: BooleanConstructor;
|
|
12
|
+
kind: StringConstructor;
|
|
13
|
+
}>> & Readonly<{
|
|
14
|
+
onElement?: ((...args: any[]) => any) | undefined;
|
|
15
|
+
}>, {
|
|
16
|
+
open: boolean;
|
|
17
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
18
|
+
export default _default;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { HysPopupSurfaceProps } from "../composables/popupSurface";
|
|
2
|
+
import type { usePopupSurface } from "../composables/usePopupSurface";
|
|
3
|
+
type __VLS_Props = {
|
|
4
|
+
surface: ReturnType<typeof usePopupSurface>;
|
|
5
|
+
options: HysPopupSurfaceProps;
|
|
6
|
+
kind: "tooltip" | "popover";
|
|
7
|
+
title?: string;
|
|
8
|
+
};
|
|
9
|
+
declare const __VLS_template: () => {
|
|
10
|
+
__VLS_Slots: {
|
|
11
|
+
title?: (props: {
|
|
12
|
+
open: boolean;
|
|
13
|
+
show: () => Promise<boolean>;
|
|
14
|
+
close: () => Promise<boolean>;
|
|
15
|
+
toggle: () => Promise<boolean>;
|
|
16
|
+
updatePosition: () => void;
|
|
17
|
+
}) => any;
|
|
18
|
+
} & {
|
|
19
|
+
default?: (props: {
|
|
20
|
+
open: boolean;
|
|
21
|
+
show: () => Promise<boolean>;
|
|
22
|
+
close: () => Promise<boolean>;
|
|
23
|
+
toggle: () => Promise<boolean>;
|
|
24
|
+
updatePosition: () => void;
|
|
25
|
+
}) => any;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
type __VLS_Slots = ReturnType<typeof __VLS_template>['__VLS_Slots'];
|
|
29
|
+
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
30
|
+
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
31
|
+
declare const _default: typeof __VLS_export;
|
|
32
|
+
export default _default;
|
|
33
|
+
type __VLS_WithSlots<T, S> = T & {
|
|
34
|
+
new (): {
|
|
35
|
+
$slots: S;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { type PropType } from "vue";
|
|
2
|
+
import type { HysPopupTransition } from "./popup";
|
|
3
|
+
/** Internal transparent boundary: preserves the popup DOM/ref and owns only its transition. */
|
|
4
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
5
|
+
popupTransition: {
|
|
6
|
+
type: PropType<HysPopupTransition>;
|
|
7
|
+
default: undefined;
|
|
8
|
+
};
|
|
9
|
+
popupTransitionDuration: {
|
|
10
|
+
type: NumberConstructor;
|
|
11
|
+
default: undefined;
|
|
12
|
+
};
|
|
13
|
+
placement: {
|
|
14
|
+
type: StringConstructor;
|
|
15
|
+
default: string;
|
|
16
|
+
};
|
|
17
|
+
disabled: {
|
|
18
|
+
type: BooleanConstructor;
|
|
19
|
+
default: boolean;
|
|
20
|
+
};
|
|
21
|
+
ignoreOwner: {
|
|
22
|
+
type: BooleanConstructor;
|
|
23
|
+
default: boolean;
|
|
24
|
+
};
|
|
25
|
+
}>, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
|
|
26
|
+
[key: string]: any;
|
|
27
|
+
}> | null, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("left" | "inactive" | "entered")[], "left" | "inactive" | "entered", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
28
|
+
popupTransition: {
|
|
29
|
+
type: PropType<HysPopupTransition>;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
32
|
+
popupTransitionDuration: {
|
|
33
|
+
type: NumberConstructor;
|
|
34
|
+
default: undefined;
|
|
35
|
+
};
|
|
36
|
+
placement: {
|
|
37
|
+
type: StringConstructor;
|
|
38
|
+
default: string;
|
|
39
|
+
};
|
|
40
|
+
disabled: {
|
|
41
|
+
type: BooleanConstructor;
|
|
42
|
+
default: boolean;
|
|
43
|
+
};
|
|
44
|
+
ignoreOwner: {
|
|
45
|
+
type: BooleanConstructor;
|
|
46
|
+
default: boolean;
|
|
47
|
+
};
|
|
48
|
+
}>> & Readonly<{
|
|
49
|
+
onLeft?: ((...args: any[]) => any) | undefined;
|
|
50
|
+
onInactive?: ((...args: any[]) => any) | undefined;
|
|
51
|
+
onEntered?: ((...args: any[]) => any) | undefined;
|
|
52
|
+
}>, {
|
|
53
|
+
disabled: boolean;
|
|
54
|
+
popupTransition: HysPopupTransition;
|
|
55
|
+
popupTransitionDuration: number;
|
|
56
|
+
placement: string;
|
|
57
|
+
ignoreOwner: boolean;
|
|
58
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
59
|
+
export default _default;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type HysPopupTransition = "scale" | "fade" | "slide" | "slide-fade" | "none";
|
|
2
|
+
export interface HysPopupMotionProps {
|
|
3
|
+
/** Built-in entrance/exit effect. Defaults to scale; none disables it. */
|
|
4
|
+
popupTransition?: HysPopupTransition;
|
|
5
|
+
/** Duration in milliseconds, default 160. Zero disables the transition. */
|
|
6
|
+
popupTransitionDuration?: number;
|
|
7
|
+
}
|
|
8
|
+
/** Layout dimensions, unaffected by an in-flight scale/slide animation. */
|
|
9
|
+
export declare function popupSize(element: HTMLElement): {
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
};
|