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,101 @@
|
|
|
1
|
+
import { type HysColor, type HysColorPickerProps, type HysColorPickerContext } from "./color";
|
|
2
|
+
export declare function useColorPicker(props: HysColorPickerProps, emit: (name: string, ...args: any[]) => void): {
|
|
3
|
+
attrs: import("vue").Attrs;
|
|
4
|
+
field: import("./formContext").HysFieldContext | undefined;
|
|
5
|
+
control: {
|
|
6
|
+
disabled: import("vue").ComputedRef<boolean>;
|
|
7
|
+
size: import("vue").ComputedRef<"sm" | "md" | "lg">;
|
|
8
|
+
label: import("vue").ComputedRef<string | undefined>;
|
|
9
|
+
};
|
|
10
|
+
element: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
11
|
+
trigger: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
12
|
+
input: import("vue").Ref<HTMLInputElement | undefined, HTMLInputElement | undefined>;
|
|
13
|
+
panel: import("vue").Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
14
|
+
live: import("vue").Ref<boolean, boolean>;
|
|
15
|
+
draft: import("vue").Ref<string, string>;
|
|
16
|
+
working: import("vue").Ref<{
|
|
17
|
+
h: number;
|
|
18
|
+
s: number;
|
|
19
|
+
v: number;
|
|
20
|
+
a: number;
|
|
21
|
+
}, HysColor | {
|
|
22
|
+
h: number;
|
|
23
|
+
s: number;
|
|
24
|
+
v: number;
|
|
25
|
+
a: number;
|
|
26
|
+
}>;
|
|
27
|
+
hasColor: import("vue").Ref<boolean, boolean>;
|
|
28
|
+
focused: import("vue").Ref<boolean, boolean>;
|
|
29
|
+
errorId: string;
|
|
30
|
+
panelId: string;
|
|
31
|
+
value: import("vue").ComputedRef<string>;
|
|
32
|
+
locked: import("vue").ComputedRef<boolean>;
|
|
33
|
+
format: import("vue").ComputedRef<import("./color").HysColorFormat>;
|
|
34
|
+
serialized: import("vue").ComputedRef<string>;
|
|
35
|
+
css: import("vue").ComputedRef<string>;
|
|
36
|
+
valid: import("vue").ComputedRef<boolean>;
|
|
37
|
+
dirty: import("vue").ComputedRef<boolean>;
|
|
38
|
+
status: import("vue").ComputedRef<import("./formContext").HysFormStatus | undefined>;
|
|
39
|
+
floating: {
|
|
40
|
+
open: import("vue").Ref<boolean, boolean>;
|
|
41
|
+
style: import("vue").ComputedRef<{
|
|
42
|
+
zIndex: string;
|
|
43
|
+
}>;
|
|
44
|
+
placement: import("vue").Ref<import("./useFloating").Placement, import("./useFloating").Placement>;
|
|
45
|
+
update: () => void;
|
|
46
|
+
show: (force?: boolean) => Promise<void>;
|
|
47
|
+
close: (restore?: boolean, force?: boolean) => void;
|
|
48
|
+
toggle: () => void | Promise<void>;
|
|
49
|
+
restoringFocus: import("vue").Ref<boolean, boolean>;
|
|
50
|
+
schedule: () => void;
|
|
51
|
+
isTop: () => boolean;
|
|
52
|
+
};
|
|
53
|
+
open: import("vue").ComputedRef<boolean>;
|
|
54
|
+
teleportTo: import("vue").ComputedRef<Element>;
|
|
55
|
+
presets: import("vue").ComputedRef<{
|
|
56
|
+
value: string;
|
|
57
|
+
color: string;
|
|
58
|
+
parsed: HysColor;
|
|
59
|
+
key: string;
|
|
60
|
+
}[]>;
|
|
61
|
+
context: import("vue").ComputedRef<HysColorPickerContext>;
|
|
62
|
+
gesture: import("vue").ShallowRef<{
|
|
63
|
+
node: HTMLElement;
|
|
64
|
+
id: number;
|
|
65
|
+
kind: "palette" | "hue" | "alpha";
|
|
66
|
+
rect: DOMRect;
|
|
67
|
+
value: string;
|
|
68
|
+
color: HysColor;
|
|
69
|
+
hasColor: boolean;
|
|
70
|
+
lastRequest: string;
|
|
71
|
+
releaseValidation: () => void;
|
|
72
|
+
} | undefined, {
|
|
73
|
+
node: HTMLElement;
|
|
74
|
+
id: number;
|
|
75
|
+
kind: "palette" | "hue" | "alpha";
|
|
76
|
+
rect: DOMRect;
|
|
77
|
+
value: string;
|
|
78
|
+
color: HysColor;
|
|
79
|
+
hasColor: boolean;
|
|
80
|
+
lastRequest: string;
|
|
81
|
+
releaseValidation: () => void;
|
|
82
|
+
} | undefined>;
|
|
83
|
+
sync: () => void;
|
|
84
|
+
publish: (final?: boolean) => Promise<boolean>;
|
|
85
|
+
setColor: (raw: string) => Promise<boolean>;
|
|
86
|
+
commitText: () => Promise<boolean>;
|
|
87
|
+
confirm: () => Promise<boolean>;
|
|
88
|
+
clear: () => Promise<boolean>;
|
|
89
|
+
cancel: () => void;
|
|
90
|
+
show: () => Promise<boolean>;
|
|
91
|
+
hide: (restore?: boolean) => Promise<boolean>;
|
|
92
|
+
focus: (options?: FocusOptions) => void;
|
|
93
|
+
blur: () => void;
|
|
94
|
+
focusIn: (event: FocusEvent) => void;
|
|
95
|
+
focusOut: (event: FocusEvent) => void;
|
|
96
|
+
start: (event: PointerEvent, kind: "hue" | "alpha" | "palette") => void;
|
|
97
|
+
move: (event: PointerEvent) => void;
|
|
98
|
+
end: (event: PointerEvent) => Promise<void>;
|
|
99
|
+
pointerCancel: (event: PointerEvent) => void;
|
|
100
|
+
keyboard: (event: KeyboardEvent, kind: "hue" | "alpha" | "palette") => void;
|
|
101
|
+
};
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { type CSSProperties, type Ref } from "vue";
|
|
2
|
+
import { type HysContextMenuProps, type HysMenuKey, type MenuRow, type HysMenuShowOptions } from "./menu";
|
|
3
|
+
export declare function useContextMenu<N extends object>(props: HysContextMenuProps<N>, root: Ref<HTMLElement | undefined>, layer: Ref<HTMLElement | undefined>, panel: Ref<HTMLElement | undefined>, id: string, emit: (name: string, ...args: any[]) => void): {
|
|
4
|
+
control: {
|
|
5
|
+
disabled: import("vue").ComputedRef<boolean>;
|
|
6
|
+
size: import("vue").ComputedRef<"sm" | "md" | "lg">;
|
|
7
|
+
label: import("vue").ComputedRef<string | undefined>;
|
|
8
|
+
};
|
|
9
|
+
live: Ref<boolean, boolean>;
|
|
10
|
+
busy: import("vue").ComputedRef<boolean>;
|
|
11
|
+
graph: import("vue").ComputedRef<{
|
|
12
|
+
roots: MenuRow<N>[];
|
|
13
|
+
all: MenuRow<N>[];
|
|
14
|
+
byKey: Map<string, MenuRow<N>>;
|
|
15
|
+
}>;
|
|
16
|
+
triggers: import("vue").ComputedRef<any[]>;
|
|
17
|
+
open: Ref<boolean, boolean>;
|
|
18
|
+
branches: import("vue").ComputedRef<MenuRow<N>[]>;
|
|
19
|
+
menus: import("vue").ComputedRef<MenuRow<N>[][]>;
|
|
20
|
+
openPath: import("vue").ComputedRef<HysMenuKey[]>;
|
|
21
|
+
checkedKeys: import("vue").ComputedRef<HysMenuKey[]>;
|
|
22
|
+
selectedKeys: import("vue").ComputedRef<HysMenuKey[]>;
|
|
23
|
+
context: (row: MenuRow<N>) => {
|
|
24
|
+
item: N;
|
|
25
|
+
value: HysMenuKey | undefined;
|
|
26
|
+
label: string;
|
|
27
|
+
path: N[];
|
|
28
|
+
keys: HysMenuKey[];
|
|
29
|
+
level: number;
|
|
30
|
+
disabled: boolean;
|
|
31
|
+
checked: boolean;
|
|
32
|
+
selected: boolean;
|
|
33
|
+
expanded: boolean;
|
|
34
|
+
submenu: boolean;
|
|
35
|
+
};
|
|
36
|
+
tabbable: (row: MenuRow<N>) => 0 | -1;
|
|
37
|
+
active: Ref<Map<number, HysMenuKey> & Omit<Map<number, HysMenuKey>, keyof Map<any, any>>, Map<number, HysMenuKey> | (Map<number, HysMenuKey> & Omit<Map<number, HysMenuKey>, keyof Map<any, any>>)>;
|
|
38
|
+
childStyles: import("vue").ShallowRef<Record<number, CSSProperties>, Record<number, CSSProperties>>;
|
|
39
|
+
floating: {
|
|
40
|
+
open: Ref<boolean, boolean>;
|
|
41
|
+
style: import("vue").ComputedRef<{
|
|
42
|
+
zIndex: string;
|
|
43
|
+
}>;
|
|
44
|
+
placement: Ref<import("./useFloating").Placement, import("./useFloating").Placement>;
|
|
45
|
+
update: () => void;
|
|
46
|
+
show: (force?: boolean) => Promise<void>;
|
|
47
|
+
close: (restore?: boolean, force?: boolean) => void;
|
|
48
|
+
toggle: () => void | Promise<void>;
|
|
49
|
+
restoringFocus: Ref<boolean, boolean>;
|
|
50
|
+
schedule: () => void;
|
|
51
|
+
isTop: () => boolean;
|
|
52
|
+
};
|
|
53
|
+
forceHide: () => void;
|
|
54
|
+
focusableChild: Ref<boolean, boolean>;
|
|
55
|
+
measureTrigger: () => void;
|
|
56
|
+
setPanel: (level: number, element?: HTMLElement) => void;
|
|
57
|
+
scheduleLayout: (updateRoot?: boolean) => void;
|
|
58
|
+
show: (event?: MouseEvent | KeyboardEvent | HysMenuShowOptions) => Promise<boolean>;
|
|
59
|
+
hide: (restore?: boolean) => Promise<boolean>;
|
|
60
|
+
focus: () => void;
|
|
61
|
+
toggle: () => Promise<boolean>;
|
|
62
|
+
focusItem: (key: HysMenuKey) => Promise<boolean>;
|
|
63
|
+
openSubmenu: (key: HysMenuKey, focusChild?: boolean) => Promise<boolean>;
|
|
64
|
+
closeSubmenus: () => Promise<boolean>;
|
|
65
|
+
setCheckedKeys: (keys: readonly HysMenuKey[]) => Promise<boolean>;
|
|
66
|
+
setSelectedKeys: (keys: readonly HysMenuKey[]) => Promise<boolean>;
|
|
67
|
+
choose: (row: MenuRow<N>, event?: MouseEvent | KeyboardEvent) => Promise<boolean>;
|
|
68
|
+
setActive: (row: MenuRow<N>, focus?: boolean) => void;
|
|
69
|
+
hoverRoot: (value: boolean, event?: PointerEvent) => void;
|
|
70
|
+
enterPanel: () => void;
|
|
71
|
+
hoverRow: (row: MenuRow<N>) => void;
|
|
72
|
+
triggerClick: (event: MouseEvent) => void;
|
|
73
|
+
contextmenu: (event: MouseEvent) => void;
|
|
74
|
+
triggerFocus: (event: FocusEvent) => void;
|
|
75
|
+
focusOut: (event: FocusEvent) => void;
|
|
76
|
+
triggerKey: (event: KeyboardEvent) => void;
|
|
77
|
+
keyboard: (level: number, event: KeyboardEvent) => void;
|
|
78
|
+
first: (level?: number, last?: boolean) => void;
|
|
79
|
+
setPath: (keys: readonly HysMenuKey[], focusChild?: boolean) => Promise<boolean>;
|
|
80
|
+
getItems: () => N[];
|
|
81
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { type ComputedRef } from "vue";
|
|
2
|
+
import type { HysDataGridProps, HysDataGridQuery } from "./dataGrid";
|
|
3
|
+
export declare function useDataGridRemote<T extends object>(props: HysDataGridProps<T>, query: ComputedRef<HysDataGridQuery>, onError: (error: unknown) => void): {
|
|
4
|
+
pending: import("vue").Ref<boolean, boolean>;
|
|
5
|
+
failure: import("vue").ShallowRef<{
|
|
6
|
+
error: unknown;
|
|
7
|
+
query: string;
|
|
8
|
+
} | undefined, {
|
|
9
|
+
error: unknown;
|
|
10
|
+
query: string;
|
|
11
|
+
} | undefined>;
|
|
12
|
+
reload: () => Promise<void>;
|
|
13
|
+
sourceRows: ComputedRef<readonly T[]>;
|
|
14
|
+
remoteTotal: ComputedRef<number | undefined>;
|
|
15
|
+
};
|
|
@@ -1,4 +1,17 @@
|
|
|
1
|
-
import { type Ref } from
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
interface DialogOptions {
|
|
3
|
+
lockScroll?: () => boolean;
|
|
4
|
+
trapFocus?: () => boolean;
|
|
5
|
+
restoreFocus?: () => boolean;
|
|
6
|
+
initialFocus?: () => HTMLElement | false | undefined;
|
|
7
|
+
zIndex?: () => number | undefined;
|
|
8
|
+
onOpenAutoFocus?: (event: Event) => void;
|
|
9
|
+
onCloseAutoFocus?: (event: Event) => void;
|
|
10
|
+
childVisible?: () => boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function useDialog(open: Ref<boolean>, dialog: Ref<HTMLElement | undefined>, close: () => void, options?: DialogOptions): {
|
|
13
|
+
active: import("vue").ComputedRef<boolean>;
|
|
14
|
+
zIndex: import("vue").ComputedRef<number>;
|
|
15
|
+
focus: () => void;
|
|
4
16
|
};
|
|
17
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type Ref, type CSSProperties } from "vue";
|
|
2
|
+
import type { HysDrawerProps } from "./drawer";
|
|
3
|
+
export declare function useDrawerPush(props: HysDrawerProps, shown: Readonly<Ref<boolean>>, fullscreen: Readonly<Ref<boolean>>): {
|
|
4
|
+
pushed: import("vue").ComputedRef<boolean>;
|
|
5
|
+
style: import("vue").ComputedRef<CSSProperties>;
|
|
6
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import { type HysDrawerProps } from "./drawer";
|
|
3
|
+
export declare function useDrawerResize(props: HysDrawerProps, root: Ref<HTMLElement | undefined>, panel: Ref<HTMLElement | undefined>, shown: Readonly<Ref<boolean>>, fullscreen: Readonly<Ref<boolean>>, busy: Readonly<Ref<boolean>>, emit: (name: string, ...args: any[]) => void): {
|
|
4
|
+
handle: Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
5
|
+
resizing: Ref<boolean, boolean>;
|
|
6
|
+
size: import("vue").ComputedRef<number>;
|
|
7
|
+
vertical: import("vue").ComputedRef<boolean>;
|
|
8
|
+
limits: (availableSize?: number) => {
|
|
9
|
+
min: number;
|
|
10
|
+
max: number;
|
|
11
|
+
};
|
|
12
|
+
model: {
|
|
13
|
+
current: import("vue").ComputedRef<number | null>;
|
|
14
|
+
commit: (value: number | null, update: (value: number | null) => void, change: (value: number | null) => void, notifyOnRequest?: boolean) => Promise<boolean>;
|
|
15
|
+
reset: () => void;
|
|
16
|
+
invalidate: () => void;
|
|
17
|
+
isLive: () => boolean;
|
|
18
|
+
};
|
|
19
|
+
resolvedSize: import("vue").ComputedRef<number | undefined>;
|
|
20
|
+
start: (event: PointerEvent) => void;
|
|
21
|
+
stop: (cancelled?: boolean) => Promise<boolean>;
|
|
22
|
+
keyboard: (event: KeyboardEvent) => Promise<void>;
|
|
23
|
+
resizeTo: (value: number | string) => Promise<boolean>;
|
|
24
|
+
reset: () => Promise<boolean>;
|
|
25
|
+
measure: () => void;
|
|
26
|
+
resetAfterClose: () => void;
|
|
27
|
+
};
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
import { type Ref } from "vue";
|
|
2
|
-
export type Placement = "bottom-start" | "bottom-end" | "
|
|
2
|
+
export type Placement = "top" | "top-start" | "top-end" | "bottom" | "bottom-start" | "bottom-end" | "left" | "left-start" | "left-end" | "right" | "right-start" | "right-end";
|
|
3
|
+
export interface FloatingPosition {
|
|
4
|
+
anchor: DOMRect;
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
x: number;
|
|
8
|
+
y: number;
|
|
9
|
+
placement: Placement;
|
|
10
|
+
}
|
|
3
11
|
export interface FloatingAnchor {
|
|
4
12
|
getBoundingClientRect(): DOMRect;
|
|
5
13
|
contains(node: Node | null): boolean;
|
|
@@ -12,15 +20,26 @@ export declare function useFloating(anchor: Readonly<Ref<FloatingAnchor | undefi
|
|
|
12
20
|
padding?: number;
|
|
13
21
|
matchWidth?: boolean | "min" | (() => boolean | "min");
|
|
14
22
|
width?: () => number | string | undefined;
|
|
23
|
+
maxWidth?: () => number | string | undefined;
|
|
15
24
|
requestOpen?: (open: boolean, restoreFocus?: boolean) => boolean | void;
|
|
16
25
|
closeOnTab?: boolean;
|
|
26
|
+
closeOnEscape?: boolean;
|
|
27
|
+
closeOnOutside?: boolean;
|
|
28
|
+
autoAdjustOverflow?: boolean;
|
|
29
|
+
strategy?: "fixed" | "absolute";
|
|
30
|
+
zIndex?: () => number | undefined;
|
|
31
|
+
onPosition?: (position: FloatingPosition) => void;
|
|
17
32
|
}): {
|
|
18
33
|
open: Ref<boolean, boolean>;
|
|
19
|
-
style:
|
|
34
|
+
style: import("vue").ComputedRef<{
|
|
35
|
+
zIndex: string;
|
|
36
|
+
}>;
|
|
20
37
|
placement: Ref<Placement, Placement>;
|
|
21
38
|
update: () => void;
|
|
22
39
|
show: (force?: boolean) => Promise<void>;
|
|
23
40
|
close: (restore?: boolean, force?: boolean) => void;
|
|
24
41
|
toggle: () => void | Promise<void>;
|
|
25
42
|
restoringFocus: Ref<boolean, boolean>;
|
|
43
|
+
schedule: () => void;
|
|
44
|
+
isTop: () => boolean;
|
|
26
45
|
};
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { type VNodeChild } from "vue";
|
|
2
|
+
import { type HysConfig } from "../config";
|
|
3
|
+
import type { HysModalProps, HysModalActionContext, HysModalCloseReason, HysModalSlotContext } from "./modal";
|
|
4
|
+
export interface HysModalResult {
|
|
5
|
+
action: "confirm" | "cancel" | "destroy" | "owner-dispose";
|
|
6
|
+
reason: HysModalCloseReason | "destroy" | "owner-dispose";
|
|
7
|
+
}
|
|
8
|
+
export interface HysModalOptions extends Omit<HysModalProps, "open" | "modelValue" | "defaultOpen" | "fullscreen" | "appendTo"> {
|
|
9
|
+
content?: VNodeChild | ((context: HysModalSlotContext) => VNodeChild);
|
|
10
|
+
onOk?: (context: HysModalActionContext) => boolean | void | Promise<boolean | void>;
|
|
11
|
+
onCancel?: (context: HysModalActionContext) => boolean | void | Promise<boolean | void>;
|
|
12
|
+
onAfterClose?: (result: HysModalResult) => void;
|
|
13
|
+
}
|
|
14
|
+
export interface HysModalHandle {
|
|
15
|
+
readonly id: string;
|
|
16
|
+
readonly closed: Promise<HysModalResult>;
|
|
17
|
+
update(options: Partial<HysModalOptions>): void;
|
|
18
|
+
confirm(): Promise<boolean>;
|
|
19
|
+
cancel(): Promise<boolean>;
|
|
20
|
+
close(): Promise<boolean>;
|
|
21
|
+
destroy(): void;
|
|
22
|
+
}
|
|
23
|
+
export interface HysModalConfig {
|
|
24
|
+
defaults?: HysModalOptions;
|
|
25
|
+
appendTo?: string | HTMLElement;
|
|
26
|
+
}
|
|
27
|
+
export interface HysModalApi {
|
|
28
|
+
show(options: HysModalOptions): HysModalHandle;
|
|
29
|
+
confirm(options: HysModalOptions | string): HysModalHandle;
|
|
30
|
+
info(options: HysModalOptions | string): HysModalHandle;
|
|
31
|
+
success(options: HysModalOptions | string): HysModalHandle;
|
|
32
|
+
warning(options: HysModalOptions | string): HysModalHandle;
|
|
33
|
+
error(options: HysModalOptions | string): HysModalHandle;
|
|
34
|
+
destroyAll(): void;
|
|
35
|
+
}
|
|
36
|
+
export interface HysModalService extends HysModalApi {
|
|
37
|
+
dispose(): void;
|
|
38
|
+
}
|
|
39
|
+
export interface HysModalServiceConfig extends HysModalConfig, HysConfig {
|
|
40
|
+
}
|
|
41
|
+
/** Call in setup. Dialogs inherit ancestor providers and are disposed when their owner leaves. */
|
|
42
|
+
export declare function useHysModal(config?: HysModalConfig): HysModalApi;
|
|
43
|
+
/** Standalone browser service. Call dispose when its owning application is destroyed. */
|
|
44
|
+
export declare function createHysModal(config?: HysModalServiceConfig): HysModalService;
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import type { HysModalProps, HysModalCloseReason } from "./modal";
|
|
3
|
+
export declare function useModal(props: HysModalProps, dialog: Ref<HTMLElement | undefined>, emit: (name: string, ...args: any[]) => void, options?: {
|
|
4
|
+
interaction?: boolean;
|
|
5
|
+
}): {
|
|
6
|
+
model: {
|
|
7
|
+
current: import("vue").ComputedRef<boolean>;
|
|
8
|
+
commit: (value: boolean, update: (value: boolean) => void, change: (value: boolean) => void, notifyOnRequest?: boolean) => Promise<boolean>;
|
|
9
|
+
reset: () => void;
|
|
10
|
+
invalidate: () => void;
|
|
11
|
+
isLive: () => boolean;
|
|
12
|
+
};
|
|
13
|
+
alpha: (value: number) => number;
|
|
14
|
+
fullscreen: import("vue").ComputedRef<boolean>;
|
|
15
|
+
live: Ref<boolean, boolean>;
|
|
16
|
+
state: {
|
|
17
|
+
active: import("vue").ComputedRef<boolean>;
|
|
18
|
+
zIndex: import("vue").ComputedRef<number>;
|
|
19
|
+
focus: () => void;
|
|
20
|
+
};
|
|
21
|
+
shown: Ref<boolean, boolean>;
|
|
22
|
+
engaged: Ref<boolean, boolean>;
|
|
23
|
+
rendered: Ref<boolean, boolean>;
|
|
24
|
+
leaving: Ref<boolean, boolean>;
|
|
25
|
+
error: Ref<string, string>;
|
|
26
|
+
confirming: import("vue").ComputedRef<boolean>;
|
|
27
|
+
closing: import("vue").ComputedRef<boolean>;
|
|
28
|
+
busy: import("vue").ComputedRef<boolean>;
|
|
29
|
+
motion: import("vue").ComputedRef<boolean>;
|
|
30
|
+
interaction: {
|
|
31
|
+
position: import("vue").ShallowRef<import("./modal").HysModalPosition, import("./modal").HysModalPosition>;
|
|
32
|
+
dimensions: import("vue").ShallowRef<import("./modal").HysModalSize | undefined, import("./modal").HysModalSize | undefined>;
|
|
33
|
+
previewing: Ref<boolean, boolean>;
|
|
34
|
+
previewLayer: Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
35
|
+
getPosition: () => import("./modal").HysModalPosition;
|
|
36
|
+
getDimensions: () => import("./modal").HysModalSize | undefined;
|
|
37
|
+
dragging: Ref<boolean, boolean>;
|
|
38
|
+
resizing: Ref<boolean, boolean>;
|
|
39
|
+
gesturing: import("vue").ComputedRef<boolean>;
|
|
40
|
+
start: (event: PointerEvent, kind: "drag" | "resize") => void;
|
|
41
|
+
stop: (cancel?: boolean) => void;
|
|
42
|
+
headerKey: (event: KeyboardEvent) => void;
|
|
43
|
+
resizeKey: (event: KeyboardEvent) => void;
|
|
44
|
+
resetPosition: () => void;
|
|
45
|
+
resetSize: () => void;
|
|
46
|
+
setPosition: (next: import("./modal").HysModalPosition) => void;
|
|
47
|
+
setSize: (next: import("./modal").HysModalSize) => void;
|
|
48
|
+
clampViewport: () => void;
|
|
49
|
+
activate(): void;
|
|
50
|
+
};
|
|
51
|
+
show: () => Promise<boolean>;
|
|
52
|
+
requestClose: (reasonOrEvent?: HysModalCloseReason | Event, event?: Event) => Promise<boolean>;
|
|
53
|
+
confirm: (event?: Event) => Promise<boolean>;
|
|
54
|
+
cancel: (event?: Event) => Promise<boolean>;
|
|
55
|
+
setFullscreen: (value: boolean) => Promise<boolean>;
|
|
56
|
+
toggleFullscreen: () => Promise<boolean>;
|
|
57
|
+
afterEnter: () => Promise<void>;
|
|
58
|
+
afterLeave: () => Promise<void>;
|
|
59
|
+
key: (event: KeyboardEvent) => void;
|
|
60
|
+
maskDown: (event: PointerEvent) => void;
|
|
61
|
+
maskUp: (event: PointerEvent) => void;
|
|
62
|
+
};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { type Ref } from "vue";
|
|
2
|
+
import { type HysModalProps, type HysModalPosition, type HysModalSize } from "./modal";
|
|
3
|
+
export declare function useModalInteraction(props: HysModalProps, dialog: Ref<HTMLElement | undefined>, visible: Readonly<Ref<boolean>>, fullscreen: Readonly<Ref<boolean>>, emit: (name: string, ...args: any[]) => void, options?: {
|
|
4
|
+
beforeStart?: () => void;
|
|
5
|
+
motion?: () => boolean;
|
|
6
|
+
enabled?: boolean;
|
|
7
|
+
}): {
|
|
8
|
+
position: import("vue").ShallowRef<HysModalPosition, HysModalPosition>;
|
|
9
|
+
dimensions: import("vue").ShallowRef<HysModalSize | undefined, HysModalSize | undefined>;
|
|
10
|
+
previewing: Ref<boolean, boolean>;
|
|
11
|
+
previewLayer: Ref<HTMLElement | undefined, HTMLElement | undefined>;
|
|
12
|
+
getPosition: () => HysModalPosition;
|
|
13
|
+
getDimensions: () => HysModalSize | undefined;
|
|
14
|
+
dragging: Ref<boolean, boolean>;
|
|
15
|
+
resizing: Ref<boolean, boolean>;
|
|
16
|
+
gesturing: import("vue").ComputedRef<boolean>;
|
|
17
|
+
start: (event: PointerEvent, kind: "drag" | "resize") => void;
|
|
18
|
+
stop: (cancel?: boolean) => void;
|
|
19
|
+
headerKey: (event: KeyboardEvent) => void;
|
|
20
|
+
resizeKey: (event: KeyboardEvent) => void;
|
|
21
|
+
resetPosition: () => void;
|
|
22
|
+
resetSize: () => void;
|
|
23
|
+
setPosition: (next: HysModalPosition) => void;
|
|
24
|
+
setSize: (next: HysModalSize) => void;
|
|
25
|
+
clampViewport: () => void;
|
|
26
|
+
activate(): void;
|
|
27
|
+
};
|