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,39 @@
|
|
|
1
|
+
import { defineComponent as u, isVNode as g, Text as l, Comment as s, h as b, Fragment as f, cloneVNode as x } from "vue";
|
|
2
|
+
const m = (n) => n.flatMap(
|
|
3
|
+
(e) => e.type === f ? m(e.children) : e.type === s || e.type === l && !String(e.children).trim() ? [] : [e]
|
|
4
|
+
), k = u({
|
|
5
|
+
name: "HysPopupReference",
|
|
6
|
+
inheritAttrs: !1,
|
|
7
|
+
props: { id: String, open: Boolean, kind: String },
|
|
8
|
+
emits: ["element"],
|
|
9
|
+
setup(n, { slots: e, emit: h }) {
|
|
10
|
+
const y = (t) => {
|
|
11
|
+
const r = (t == null ? void 0 : t.$el) ?? t;
|
|
12
|
+
h("element", r instanceof HTMLElement ? r : void 0);
|
|
13
|
+
};
|
|
14
|
+
return () => {
|
|
15
|
+
var a, p, d, c;
|
|
16
|
+
const t = ((a = e.default) == null ? void 0 : a.call(e)) ?? [], r = m(t), i = r[0];
|
|
17
|
+
if (r.length !== 1 || !g(i) || i.type === l || i.type === s)
|
|
18
|
+
return b(f, null, t);
|
|
19
|
+
const o = (p = i.props) == null ? void 0 : p["aria-describedby"];
|
|
20
|
+
return x(
|
|
21
|
+
i,
|
|
22
|
+
{
|
|
23
|
+
ref: y,
|
|
24
|
+
...n.kind === "tooltip" ? {
|
|
25
|
+
"aria-describedby": n.open ? [o, n.id].filter(Boolean).join(" ") : o
|
|
26
|
+
} : {
|
|
27
|
+
"aria-controls": n.open ? n.id : (d = i.props) == null ? void 0 : d["aria-controls"],
|
|
28
|
+
"aria-expanded": n.open,
|
|
29
|
+
"aria-haspopup": ((c = i.props) == null ? void 0 : c["aria-haspopup"]) ?? "dialog"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
!0
|
|
33
|
+
);
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
export {
|
|
38
|
+
k as default
|
|
39
|
+
};
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
import { defineComponent as m, provide as y, computed as p, openBlock as i, createBlock as b, Teleport as k, createVNode as h, unref as r, withCtx as w, withDirectives as P, createElementBlock as o, mergeProps as g, normalizeStyle as s, createCommentVNode as l, createElementVNode as E, normalizeClass as L, renderSlot as c, normalizeProps as d, guardReactiveProps as f, createTextVNode as S, toDisplayString as C, vShow as F } from "vue";
|
|
2
|
+
import I from "../motion/PopupMotion.js";
|
|
3
|
+
import { useHysRootAttrs as T } from "../config.js";
|
|
4
|
+
import { overlayOwnerKey as N } from "../composables/overlayManager.js";
|
|
5
|
+
const V = ["id", "role", "aria-label", "aria-labelledby", "data-side", "data-placement"], $ = ["id"], A = /* @__PURE__ */ m({
|
|
6
|
+
__name: "PopupSurfacePanel",
|
|
7
|
+
props: {
|
|
8
|
+
surface: {},
|
|
9
|
+
options: {},
|
|
10
|
+
kind: {},
|
|
11
|
+
title: {}
|
|
12
|
+
},
|
|
13
|
+
setup(e) {
|
|
14
|
+
const u = e;
|
|
15
|
+
y(
|
|
16
|
+
N,
|
|
17
|
+
p(() => u.surface.active.value && u.surface.open.value)
|
|
18
|
+
);
|
|
19
|
+
const v = T();
|
|
20
|
+
return (n, a) => e.surface.active.value ? (i(), b(k, {
|
|
21
|
+
key: 0,
|
|
22
|
+
to: e.surface.teleportTo.value,
|
|
23
|
+
disabled: e.options.appendTo === !1
|
|
24
|
+
}, [
|
|
25
|
+
h(r(I), {
|
|
26
|
+
"popup-transition": e.options.popupTransition,
|
|
27
|
+
"popup-transition-duration": e.options.popupTransitionDuration,
|
|
28
|
+
placement: e.surface.placement.value,
|
|
29
|
+
"ignore-owner": "",
|
|
30
|
+
onEntered: e.surface.afterEnter,
|
|
31
|
+
onLeft: e.surface.afterLeave,
|
|
32
|
+
onInactive: e.surface.inactive
|
|
33
|
+
}, {
|
|
34
|
+
default: w(() => [
|
|
35
|
+
e.surface.mounted.value ? P((i(), o("div", g({
|
|
36
|
+
key: 0,
|
|
37
|
+
id: e.surface.id,
|
|
38
|
+
ref: (t) => e.surface.panel.value = t
|
|
39
|
+
}, r(v), {
|
|
40
|
+
class: ["hys-ui-popup-surface-panel", [
|
|
41
|
+
e.kind === "tooltip" ? "hys-ui-tooltip-bubble hys-ui-floating-tooltip" : "hys-ui-popover-panel hys-ui-floating-surface",
|
|
42
|
+
e.options.overlayClass,
|
|
43
|
+
{ "hys-ui-popup-enterable": e.options.enterable !== !1 }
|
|
44
|
+
]],
|
|
45
|
+
style: e.surface.style.value,
|
|
46
|
+
role: e.kind === "tooltip" ? "tooltip" : "dialog",
|
|
47
|
+
"aria-label": e.options.ariaLabel || (e.kind === "popover" ? e.title || "浮层" : void 0),
|
|
48
|
+
"aria-labelledby": e.kind === "popover" && !e.options.ariaLabel && (e.title || n.$slots.title) ? e.surface.titleId : void 0,
|
|
49
|
+
"data-side": e.surface.placement.value.split("-")[0],
|
|
50
|
+
"data-placement": e.surface.placement.value,
|
|
51
|
+
onPointerenter: a[0] || (a[0] = //@ts-ignore
|
|
52
|
+
(...t) => e.surface.panelEnter && e.surface.panelEnter(...t)),
|
|
53
|
+
onPointerleave: a[1] || (a[1] = //@ts-ignore
|
|
54
|
+
(...t) => e.surface.panelLeave && e.surface.panelLeave(...t)),
|
|
55
|
+
onFocusin: a[2] || (a[2] = //@ts-ignore
|
|
56
|
+
(...t) => e.surface.panelFocusIn && e.surface.panelFocusIn(...t)),
|
|
57
|
+
onFocusout: a[3] || (a[3] = //@ts-ignore
|
|
58
|
+
(...t) => e.surface.panelFocusOut && e.surface.panelFocusOut(...t))
|
|
59
|
+
}), [
|
|
60
|
+
e.options.showArrow ? (i(), o("span", {
|
|
61
|
+
key: 0,
|
|
62
|
+
class: "hys-ui-popup-arrow",
|
|
63
|
+
style: s(e.surface.arrowStyle.value),
|
|
64
|
+
"aria-hidden": "true"
|
|
65
|
+
}, null, 4)) : l("", !0),
|
|
66
|
+
E("div", {
|
|
67
|
+
class: L(["hys-ui-popup-surface-content", e.options.contentClass]),
|
|
68
|
+
style: s(e.surface.contentStyle.value)
|
|
69
|
+
}, [
|
|
70
|
+
e.kind === "popover" && (e.title || n.$slots.title) ? (i(), o("div", {
|
|
71
|
+
key: 0,
|
|
72
|
+
id: e.surface.titleId,
|
|
73
|
+
class: "hys-ui-popup-surface-title"
|
|
74
|
+
}, [
|
|
75
|
+
c(n.$slots, "title", d(f(e.surface.scope.value)), () => [
|
|
76
|
+
S(C(e.title), 1)
|
|
77
|
+
], !0)
|
|
78
|
+
], 8, $)) : l("", !0),
|
|
79
|
+
c(n.$slots, "default", d(f(e.surface.scope.value)), void 0, !0)
|
|
80
|
+
], 6)
|
|
81
|
+
], 16, V)), [
|
|
82
|
+
[F, e.surface.open.value]
|
|
83
|
+
]) : l("", !0)
|
|
84
|
+
]),
|
|
85
|
+
_: 3
|
|
86
|
+
}, 8, ["popup-transition", "popup-transition-duration", "placement", "onEntered", "onLeft", "onInactive"])
|
|
87
|
+
], 8, ["to", "disabled"])) : l("", !0);
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
export {
|
|
91
|
+
A as default
|
|
92
|
+
};
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import { defineComponent as T, ref as x, inject as B, computed as p, watch as W, onMounted as C, onActivated as D, onDeactivated as O, onBeforeUnmount as k, h as H, Transition as N } from "vue";
|
|
2
|
+
import { useHysRootAttrs as S } from "../config.js";
|
|
3
|
+
import { overlayOwnerKey as j } from "../composables/overlayManager.js";
|
|
4
|
+
const U = T({
|
|
5
|
+
name: "HysPopupMotion",
|
|
6
|
+
props: {
|
|
7
|
+
popupTransition: {
|
|
8
|
+
type: String,
|
|
9
|
+
default: void 0
|
|
10
|
+
},
|
|
11
|
+
popupTransitionDuration: { type: Number, default: void 0 },
|
|
12
|
+
placement: { type: String, default: "bottom-start" },
|
|
13
|
+
disabled: { type: Boolean, default: !1 },
|
|
14
|
+
ignoreOwner: { type: Boolean, default: !1 }
|
|
15
|
+
},
|
|
16
|
+
emits: ["inactive", "entered", "left"],
|
|
17
|
+
setup(i, { slots: A, emit: s }) {
|
|
18
|
+
var w;
|
|
19
|
+
const E = S(), l = x(!0), h = x(
|
|
20
|
+
typeof window < "u" && !!((w = window.matchMedia) != null && w.call(window, "(prefers-reduced-motion: reduce)").matches)
|
|
21
|
+
), a = B(j, void 0);
|
|
22
|
+
let n, c = !1;
|
|
23
|
+
const v = p(() => i.popupTransition ?? "scale"), y = p(
|
|
24
|
+
() => Number.isFinite(i.popupTransitionDuration) ? Math.max(0, Math.min(2e3, i.popupTransitionDuration)) : 160
|
|
25
|
+
), M = p(
|
|
26
|
+
() => l.value && (i.ignoreOwner || (a == null ? void 0 : a.value) !== !1)
|
|
27
|
+
), L = p(
|
|
28
|
+
() => !i.disabled && v.value !== "none" && y.value > 0 && E.value["data-hys-motion"] !== "off" && !h.value
|
|
29
|
+
);
|
|
30
|
+
let o;
|
|
31
|
+
const d = /* @__PURE__ */ new WeakMap();
|
|
32
|
+
function f() {
|
|
33
|
+
h.value = !!(n != null && n.matches);
|
|
34
|
+
}
|
|
35
|
+
function m() {
|
|
36
|
+
var t;
|
|
37
|
+
c || (c = !0, n = (t = window.matchMedia) == null ? void 0 : t.call(window, "(prefers-reduced-motion: reduce)"), f(), n == null || n.addEventListener("change", f));
|
|
38
|
+
}
|
|
39
|
+
function g() {
|
|
40
|
+
c = !1, n == null || n.removeEventListener("change", f);
|
|
41
|
+
}
|
|
42
|
+
function u(t) {
|
|
43
|
+
const e = t, r = d.get(t);
|
|
44
|
+
r && (e.inert = r.inert, r.aria === null ? e.removeAttribute("aria-hidden") : e.setAttribute("aria-hidden", r.aria), e.style.pointerEvents = r.pointer, d.delete(t)), e.classList.add("hys-ui-popup-motion"), e.style.setProperty(
|
|
45
|
+
"--hys-ui-popup-duration",
|
|
46
|
+
y.value + "ms"
|
|
47
|
+
), o = e, b(e);
|
|
48
|
+
}
|
|
49
|
+
function b(t) {
|
|
50
|
+
const e = i.placement;
|
|
51
|
+
t.style.setProperty(
|
|
52
|
+
"--hys-ui-popup-origin",
|
|
53
|
+
e.startsWith("top") ? "bottom center" : e.startsWith("left") ? "right center" : e.startsWith("right") ? "left center" : "top center"
|
|
54
|
+
), t.style.setProperty(
|
|
55
|
+
"--hys-ui-popup-x",
|
|
56
|
+
e.startsWith("left") ? "6px" : e.startsWith("right") ? "-6px" : "0px"
|
|
57
|
+
), t.style.setProperty(
|
|
58
|
+
"--hys-ui-popup-y",
|
|
59
|
+
e.startsWith("left") || e.startsWith("right") ? "0px" : e.startsWith("top") ? "6px" : "-6px"
|
|
60
|
+
);
|
|
61
|
+
}
|
|
62
|
+
function P(t) {
|
|
63
|
+
const e = t;
|
|
64
|
+
u(t), d.set(t, {
|
|
65
|
+
inert: e.inert,
|
|
66
|
+
aria: e.getAttribute("aria-hidden"),
|
|
67
|
+
pointer: e.style.pointerEvents
|
|
68
|
+
}), e.inert = !0, e.setAttribute("aria-hidden", "true"), e.style.pointerEvents = "none";
|
|
69
|
+
}
|
|
70
|
+
return W(
|
|
71
|
+
() => i.placement,
|
|
72
|
+
() => {
|
|
73
|
+
o != null && o.isConnected && b(o);
|
|
74
|
+
},
|
|
75
|
+
{ flush: "post" }
|
|
76
|
+
), C(m), D(() => {
|
|
77
|
+
l.value = !0, m();
|
|
78
|
+
}), O(() => {
|
|
79
|
+
l.value = !1, g(), s("inactive");
|
|
80
|
+
}), k(g), W(
|
|
81
|
+
() => a == null ? void 0 : a.value,
|
|
82
|
+
(t) => {
|
|
83
|
+
t === !1 && !i.ignoreOwner && s("inactive");
|
|
84
|
+
},
|
|
85
|
+
{ flush: "sync" }
|
|
86
|
+
), () => M.value ? H(
|
|
87
|
+
N,
|
|
88
|
+
{
|
|
89
|
+
name: "hys-ui-popup-" + v.value,
|
|
90
|
+
appear: !0,
|
|
91
|
+
css: L.value,
|
|
92
|
+
onAfterEnter: () => s("entered"),
|
|
93
|
+
onAfterLeave: () => s("left"),
|
|
94
|
+
onBeforeEnter: u,
|
|
95
|
+
onEnterCancelled: u,
|
|
96
|
+
onBeforeLeave: P,
|
|
97
|
+
onLeaveCancelled: u
|
|
98
|
+
},
|
|
99
|
+
A.default
|
|
100
|
+
) : null;
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
export {
|
|
104
|
+
U as default
|
|
105
|
+
};
|