reka-ui 2.9.0 → 2.9.2
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/dist/Calendar/CalendarGrid.cjs +1 -1
- package/dist/Calendar/CalendarGrid.js +1 -1
- package/dist/Combobox/ComboboxInput.cjs +10 -1
- package/dist/Combobox/ComboboxInput.cjs.map +1 -1
- package/dist/Combobox/ComboboxInput.js +10 -1
- package/dist/Combobox/ComboboxInput.js.map +1 -1
- package/dist/DismissableLayer/utils.cjs +1 -0
- package/dist/DismissableLayer/utils.cjs.map +1 -1
- package/dist/DismissableLayer/utils.js +1 -0
- package/dist/DismissableLayer/utils.js.map +1 -1
- package/dist/Menu/MenuGroup.cjs +13 -2
- package/dist/Menu/MenuGroup.cjs.map +1 -1
- package/dist/Menu/MenuGroup.js +8 -3
- package/dist/Menu/MenuGroup.js.map +1 -1
- package/dist/Menu/MenuItemImpl.cjs +1 -2
- package/dist/Menu/MenuItemImpl.cjs.map +1 -1
- package/dist/Menu/MenuItemImpl.js +1 -2
- package/dist/Menu/MenuItemImpl.js.map +1 -1
- package/dist/Menu/MenuLabel.cjs +4 -2
- package/dist/Menu/MenuLabel.cjs.map +1 -1
- package/dist/Menu/MenuLabel.js +5 -3
- package/dist/Menu/MenuLabel.js.map +1 -1
- package/dist/MonthPicker/MonthPickerGrid.cjs +1 -1
- package/dist/MonthPicker/MonthPickerGrid.js +1 -1
- package/dist/MonthRangePicker/MonthRangePickerGrid.cjs +1 -1
- package/dist/MonthRangePicker/MonthRangePickerGrid.js +1 -1
- package/dist/RangeCalendar/RangeCalendarGrid.cjs +1 -1
- package/dist/RangeCalendar/RangeCalendarGrid.js +1 -1
- package/dist/Splitter/SplitterGroup.cjs +30 -13
- package/dist/Splitter/SplitterGroup.cjs.map +1 -1
- package/dist/Splitter/SplitterGroup.js +30 -13
- package/dist/Splitter/SplitterGroup.js.map +1 -1
- package/dist/Toast/FocusProxy.cjs +0 -1
- package/dist/Toast/FocusProxy.cjs.map +1 -1
- package/dist/Toast/FocusProxy.js +0 -1
- package/dist/Toast/FocusProxy.js.map +1 -1
- package/dist/Toast/ToastRootImpl.cjs +1 -5
- package/dist/Toast/ToastRootImpl.cjs.map +1 -1
- package/dist/Toast/ToastRootImpl.js +1 -5
- package/dist/Toast/ToastRootImpl.js.map +1 -1
- package/dist/YearPicker/YearPickerGrid.cjs +1 -1
- package/dist/YearPicker/YearPickerGrid.js +1 -1
- package/dist/YearRangePicker/YearRangePickerGrid.cjs +1 -1
- package/dist/YearRangePicker/YearRangePickerGrid.js +1 -1
- package/dist/constant.d.cts.map +1 -1
- package/dist/date/useDateField.cjs +1 -0
- package/dist/date/useDateField.cjs.map +1 -1
- package/dist/date/useDateField.js +1 -0
- package/dist/date/useDateField.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.js +1 -1
- package/dist/index3.d.cts +1021 -1020
- package/dist/index3.d.cts.map +1 -1
- package/dist/index3.d.ts +1047 -1046
- package/dist/index3.d.ts.map +1 -1
- package/dist/internal.d.cts +2 -4
- package/dist/internal.d.ts +2 -4
- package/dist/internal.d.ts.map +1 -1
- package/dist/shared/useBodyScrollLock.cjs +1 -0
- package/dist/shared/useBodyScrollLock.cjs.map +1 -1
- package/dist/shared/useBodyScrollLock.js +1 -0
- package/dist/shared/useBodyScrollLock.js.map +1 -1
- package/dist/shared/useHideOthers.cjs +5 -1
- package/dist/shared/useHideOthers.cjs.map +1 -1
- package/dist/shared/useHideOthers.js +5 -1
- package/dist/shared/useHideOthers.js.map +1 -1
- package/dist/utils/callPanelCallbacks.cjs +10 -7
- package/dist/utils/callPanelCallbacks.cjs.map +1 -1
- package/dist/utils/callPanelCallbacks.js +10 -7
- package/dist/utils/callPanelCallbacks.js.map +1 -1
- package/dist/utils/units.cjs +5 -0
- package/dist/utils/units.cjs.map +1 -1
- package/dist/utils/units.js +5 -0
- package/dist/utils/units.js.map +1 -1
- package/package.json +2 -2
- package/src/Calendar/CalendarGrid.vue +1 -1
- package/src/Combobox/ComboboxInput.vue +19 -0
- package/src/DismissableLayer/utils.ts +4 -1
- package/src/Menu/MenuGroup.vue +12 -0
- package/src/Menu/MenuItemImpl.vue +1 -4
- package/src/Menu/MenuLabel.vue +7 -1
- package/src/MonthPicker/MonthPickerGrid.vue +1 -1
- package/src/MonthRangePicker/MonthRangePickerGrid.vue +1 -1
- package/src/RangeCalendar/RangeCalendarGrid.vue +1 -1
- package/src/Splitter/SplitterGroup.vue +46 -6
- package/src/Splitter/utils/callPanelCallbacks.ts +16 -8
- package/src/Splitter/utils/units.ts +12 -0
- package/src/Toast/FocusProxy.vue +0 -1
- package/src/Toast/ToastRootImpl.vue +0 -4
- package/src/YearPicker/YearPickerGrid.vue +1 -1
- package/src/YearRangePicker/YearRangePickerGrid.vue +1 -1
- package/src/shared/date/useDateField.ts +2 -1
- package/src/shared/useBodyScrollLock.ts +2 -0
- package/src/shared/useHideOthers.ts +8 -1
package/dist/internal.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "./index2.cjs";
|
|
2
2
|
import { MenuArrowProps, MenuCheckboxItemEmits, MenuCheckboxItemProps, MenuContentEmits, MenuContentProps, MenuEmits, MenuGroupProps, MenuItemEmits, MenuItemIndicatorProps, MenuItemProps, MenuLabelProps, MenuPortalProps, MenuProps, MenuRadioGroupEmits, MenuRadioGroupProps, MenuRadioItemEmits, MenuRadioItemProps, MenuSeparatorProps, MenuSubContentEmits, MenuSubContentProps, MenuSubEmits, MenuSubProps, MenuSubTriggerProps, PopperAnchorProps, _default$277 as _default$13, _default$278 as _default$8, _default$279 as _default, _default$280 as _default$6, _default$281 as _default$10, _default$282 as _default$3, _default$283 as _default$14, _default$284 as _default$12, _default$285 as _default$2, _default$286 as _default$1, _default$287 as _default$11, _default$288 as _default$7, _default$290 as _default$9, _default$291 as _default$4, _default$292 as _default$5, injectMenuContext, injectMenuRootContext } from "./index3.cjs";
|
|
3
|
-
import * as
|
|
3
|
+
import * as vue5 from "vue";
|
|
4
4
|
|
|
5
5
|
//#region src/Menu/MenuAnchor.vue.d.ts
|
|
6
6
|
interface MenuAnchorProps extends PopperAnchorProps {}
|
|
@@ -8,15 +8,13 @@ declare var __VLS_6: {};
|
|
|
8
8
|
type __VLS_Slots = {} & {
|
|
9
9
|
default?: (props: typeof __VLS_6) => any;
|
|
10
10
|
};
|
|
11
|
-
declare const __VLS_component:
|
|
11
|
+
declare const __VLS_component: vue5.DefineComponent<MenuAnchorProps, {}, {}, {}, {}, vue5.ComponentOptionsMixin, vue5.ComponentOptionsMixin, {}, string, vue5.PublicProps, Readonly<MenuAnchorProps> & Readonly<{}>, {}, {}, {}, {}, string, vue5.ComponentProvideOptions, false, {}, any>;
|
|
12
12
|
declare const _default$15: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
13
13
|
type __VLS_WithSlots<T, S> = T & {
|
|
14
14
|
new (): {
|
|
15
15
|
$slots: S;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=MenuAnchor.vue.d.ts.map
|
|
19
|
-
|
|
20
18
|
//#endregion
|
|
21
19
|
export { _default$15 as MenuAnchor, _default$5 as MenuArrow, MenuArrowProps, _default$9 as MenuCheckboxItem, MenuCheckboxItemEmits, MenuCheckboxItemProps, _default$7 as MenuContent, MenuContentEmits, MenuContentProps, MenuEmits, _default$11 as MenuGroup, MenuGroupProps, _default$4 as MenuItem, MenuItemEmits, _default$1 as MenuItemIndicator, MenuItemIndicatorProps, MenuItemProps, _default$2 as MenuLabel, MenuLabelProps, _default$12 as MenuPortal, MenuPortalProps, MenuProps, _default$14 as MenuRadioGroup, MenuRadioGroupEmits, MenuRadioGroupProps, _default$3 as MenuRadioItem, MenuRadioItemEmits, MenuRadioItemProps, _default$10 as MenuRoot, _default$6 as MenuSeparator, MenuSeparatorProps, _default as MenuSub, _default$8 as MenuSubContent, MenuSubContentEmits, MenuSubContentProps, MenuSubEmits, MenuSubProps, _default$13 as MenuSubTrigger, MenuSubTriggerProps, injectMenuContext, injectMenuRootContext };
|
|
22
20
|
//# sourceMappingURL=internal.d.cts.map
|
package/dist/internal.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import "./index2.js";
|
|
2
2
|
import { MenuArrowProps, MenuCheckboxItemEmits, MenuCheckboxItemProps, MenuContentEmits, MenuContentProps, MenuEmits, MenuGroupProps, MenuItemEmits, MenuItemIndicatorProps, MenuItemProps, MenuLabelProps, MenuPortalProps, MenuProps, MenuRadioGroupEmits, MenuRadioGroupProps, MenuRadioItemEmits, MenuRadioItemProps, MenuSeparatorProps, MenuSubContentEmits, MenuSubContentProps, MenuSubEmits, MenuSubProps, MenuSubTriggerProps, PopperAnchorProps, _default$277 as _default$13, _default$278 as _default$8, _default$279 as _default, _default$280 as _default$6, _default$281 as _default$10, _default$282 as _default$3, _default$283 as _default$14, _default$284 as _default$12, _default$285 as _default$2, _default$286 as _default$1, _default$287 as _default$11, _default$288 as _default$7, _default$290 as _default$9, _default$291 as _default$4, _default$292 as _default$5, injectMenuContext, injectMenuRootContext } from "./index3.js";
|
|
3
|
-
import * as
|
|
3
|
+
import * as vue57 from "vue";
|
|
4
4
|
|
|
5
5
|
//#region src/Menu/MenuAnchor.vue.d.ts
|
|
6
6
|
interface MenuAnchorProps extends PopperAnchorProps {}
|
|
@@ -8,15 +8,13 @@ declare var __VLS_6: {};
|
|
|
8
8
|
type __VLS_Slots = {} & {
|
|
9
9
|
default?: (props: typeof __VLS_6) => any;
|
|
10
10
|
};
|
|
11
|
-
declare const __VLS_component:
|
|
11
|
+
declare const __VLS_component: vue57.DefineComponent<MenuAnchorProps, {}, {}, {}, {}, vue57.ComponentOptionsMixin, vue57.ComponentOptionsMixin, {}, string, vue57.PublicProps, Readonly<MenuAnchorProps> & Readonly<{}>, {}, {}, {}, {}, string, vue57.ComponentProvideOptions, false, {}, any>;
|
|
12
12
|
declare const _default$15: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
13
13
|
type __VLS_WithSlots<T, S> = T & {
|
|
14
14
|
new (): {
|
|
15
15
|
$slots: S;
|
|
16
16
|
};
|
|
17
17
|
};
|
|
18
|
-
//# sourceMappingURL=MenuAnchor.vue.d.ts.map
|
|
19
|
-
|
|
20
18
|
//#endregion
|
|
21
19
|
export { _default$15 as MenuAnchor, _default$5 as MenuArrow, MenuArrowProps, _default$9 as MenuCheckboxItem, MenuCheckboxItemEmits, MenuCheckboxItemProps, _default$7 as MenuContent, MenuContentEmits, MenuContentProps, MenuEmits, _default$11 as MenuGroup, MenuGroupProps, _default$4 as MenuItem, MenuItemEmits, _default$1 as MenuItemIndicator, MenuItemIndicatorProps, MenuItemProps, _default$2 as MenuLabel, MenuLabelProps, _default$12 as MenuPortal, MenuPortalProps, MenuProps, _default$14 as MenuRadioGroup, MenuRadioGroupEmits, MenuRadioGroupProps, _default$3 as MenuRadioItem, MenuRadioItemEmits, MenuRadioItemProps, _default$10 as MenuRoot, _default$6 as MenuSeparator, MenuSeparatorProps, _default as MenuSub, _default$8 as MenuSubContent, MenuSubContentEmits, MenuSubContentProps, MenuSubEmits, MenuSubProps, _default$13 as MenuSubTrigger, MenuSubTriggerProps, injectMenuContext, injectMenuRootContext };
|
|
22
20
|
//# sourceMappingURL=internal.d.ts.map
|
package/dist/internal.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.d.ts","names":[],"sources":["../src/Menu/MenuAnchor.vue"],"sourcesContent":[],"mappings":";;;;;UAkBU,eAAA,SAAwB;YA4B9B;KACC,WAAA;EA7BK,OAAA,CAAA,EAAA,CAAA,KAAA,EAAgB,OA8BG,OA9BK,EAAA,GAAA,GAAA;AAAiB,CAAA;AA4B7B,cAsBhB,eArBU,EAqBK,
|
|
1
|
+
{"version":3,"file":"internal.d.ts","names":[],"sources":["../src/Menu/MenuAnchor.vue"],"sourcesContent":[],"mappings":";;;;;UAkBU,eAAA,SAAwB;YA4B9B;KACC,WAAA;EA7BK,OAAA,CAAA,EAAA,CAAA,KAAA,EAAgB,OA8BG,OA9BK,EAAA,GAAA,GAAA;AAAiB,CAAA;AA4B7B,cAsBhB,eArBU,EAqBK,KAAA,CAAA,eApBe,CAoBf,eApBe,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAoBf,KAAA,CAAA,qBAAA,EAAA,KAAA,CAAA,qBAAA,EApBe,CAAA,CAAA,EAAA,MAAA,EAoBf,KAAA,CAAA,WAAA,EAAA,QApBe,CAoBf,eApBe,CAAA,GAoBf,QApBe,CAAA,CAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,CAAA,CAAA,EAAA,MAAA,EAoBf,KAAA,CAAA,uBAAA,EApBe,KAAA,EAAA,CAAA,CAAA,EAAA,GAAA,CAAA;AAAA,cAoBf,WAMnB,EACmB,eADnB,CAAA,OAC0C,eAD1C,EAC2D,WAD3D,CAAA;KASG,eAfgB,CAAA,CAAA,EAAA,CAAA,CAAA,GAeQ,CAfR,GAAA;EAAA,MAAA,EAAA;IAAA,MAAA,EAiBX,CAjBW;EAAA,CAAA;CAAA"}
|
|
@@ -51,6 +51,7 @@ const useBodyLockStackCount = (0, __vueuse_core.createSharedComposable)(() => {
|
|
|
51
51
|
}
|
|
52
52
|
if (__vueuse_shared.isIOS) stopTouchMoveListener = (0, __vueuse_core.useEventListener)(document, "touchmove", (e) => preventDefault(e), { passive: false });
|
|
53
53
|
(0, vue.nextTick)(() => {
|
|
54
|
+
if (!locked.value) return;
|
|
54
55
|
document.body.style.pointerEvents = "none";
|
|
55
56
|
document.body.style.overflow = "hidden";
|
|
56
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBodyScrollLock.cjs","names":["stopTouchMoveListener: Fn | null","isClient","isIOS","e: TouchEvent","initialState?: boolean | undefined","ele: Element","rawEvent: TouchEvent"],"sources":["../../src/shared/useBodyScrollLock.ts"],"sourcesContent":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useBodyScrollLock.cjs","names":["stopTouchMoveListener: Fn | null","isClient","isIOS","e: TouchEvent","initialState?: boolean | undefined","ele: Element","rawEvent: TouchEvent"],"sources":["../../src/shared/useBodyScrollLock.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -50,6 +50,7 @@ const useBodyLockStackCount = createSharedComposable(() => {
|
|
|
50
50
|
}
|
|
51
51
|
if (isIOS) stopTouchMoveListener = useEventListener(document, "touchmove", (e) => preventDefault(e), { passive: false });
|
|
52
52
|
nextTick(() => {
|
|
53
|
+
if (!locked.value) return;
|
|
53
54
|
document.body.style.pointerEvents = "none";
|
|
54
55
|
document.body.style.overflow = "hidden";
|
|
55
56
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useBodyScrollLock.js","names":["stopTouchMoveListener: Fn | null","e: TouchEvent","initialState?: boolean | undefined","ele: Element","rawEvent: TouchEvent"],"sources":["../../src/shared/useBodyScrollLock.ts"],"sourcesContent":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"useBodyScrollLock.js","names":["stopTouchMoveListener: Fn | null","e: TouchEvent","initialState?: boolean | undefined","ele: Element","rawEvent: TouchEvent"],"sources":["../../src/shared/useBodyScrollLock.ts"],"sourcesContent":[],"mappings":";;;;;;;AAUA,MAAM,wBAAwB,uBAAuB,MAAM;CACzD,MAAM,MAAM,oBAA0B,IAAI,MAAM;CAChD,MAAM,kBAAkB,KAAyB;CAEjD,MAAM,SAAS,SAAS,MAAM;AAC5B,OAAK,MAAM,SAAS,IAAI,MAAM,QAAQ,CACpC,KAAI,MACF,QAAO;AAEX,SAAO;CACR,EAAC;CAEF,MAAM,UAAU,4BAA4B,EAC1C,YAAY,IAAI,KAAK,CACtB,EAAC;CAEF,IAAIA,wBAAmC;CAEvC,MAAM,iBAAiB,MAAM;AAC3B,WAAS,KAAK,MAAM,eAAe;AACnC,WAAS,KAAK,MAAM,cAAc;AAClC,WAAS,KAAK,MAAM,gBAAgB;AACpC,WAAS,gBAAgB,MAAM,eAAe,oBAAoB;AAClE,WAAS,KAAK,MAAM,WAAW,gBAAgB,SAAS;AACxD,WAAS,yBAAyB;AAElC,kBAAgB;CACjB;AAED,OAAM,QAAQ,CAAC,KAAK,WAAW;AAC7B,OAAK,SACH;AAEF,OAAK,KAAK;AACR,OAAI,OACF,iBAAgB;AAClB;EACD;AAED,MAAI,gBAAgB,iBAClB,iBAAgB,QAAQ,SAAS,KAAK,MAAM;EAE9C,MAAM,yBAAyB,OAAO,aAAa,SAAS,gBAAgB;EAC5E,MAAM,gBAAgB;GAAE,SAAS;GAAwB,QAAQ;EAAG;EAEpE,MAAM,SAAS,QAAQ,YAAY,eACxB,QAAQ,WAAW,UAAU,WAClC,KAAK;GACH,SAAS,QAAQ,WAAW,MAAM,YAAY,OAAO,yBAAyB,QAAQ,WAAW,MAAM;GACvG,QAAQ,QAAQ,WAAW,MAAM,WAAW,OAAO,yBAAyB,QAAQ,WAAW,MAAM;EACtG,GAAE,cAAc,GACjB,gBACD;GAAE,SAAS;GAAG,QAAQ;EAAG;AAE9B,MAAI,yBAAyB,GAAG;AAC9B,YAAS,KAAK,MAAM,sBAAsB,OAAO,YAAY,WAAW,GAAG,OAAO,QAAQ,EAAE,CAAC,GAAG,OAAO,OAAO,QAAQ;AACtH,YAAS,KAAK,MAAM,qBAAqB,OAAO,WAAW,WAAW,GAAG,OAAO,OAAO,EAAE,CAAC,GAAG,OAAO,OAAO,OAAO;AAClH,YAAS,gBAAgB,MAAM,YAAY,qBAAqB,GAAG,uBAAuB,EAAE,CAAC,CAAC;AAC9F,YAAS,KAAK,MAAM,WAAW;EAChC;AAED,MAAI,MACF,yBAAwB,iBACtB,UACA,aACA,CAACC,MAAkB,eAAe,EAAE,EACpC,EAAE,SAAS,MAAO,EACnB;AAIH,WAAS,MAAM;AACb,QAAK,OAAO,MACV;AACF,YAAS,KAAK,MAAM,gBAAgB;AACpC,YAAS,KAAK,MAAM,WAAW;EAChC,EAAC;CACH,GAAE;EAAE,WAAW;EAAM,OAAO;CAAQ,EAAC;AAEtC,QAAO;AACR,EAAC;AAEF,SAAgB,kBAAkBC,cAAoC;CACpE,MAAM,KAAK,KAAK,QAAQ,CAAC,SAAS,GAAG,CAAC,UAAU,GAAG,EAAE;CACrD,MAAM,MAAM,uBAAuB;AAEnC,KAAI,MAAM,IAAI,IAAI,gBAAgB,MAAM;CAExC,MAAM,SAAS,SAAS;EACtB,KAAK,MAAM,IAAI,MAAM,IAAI,GAAG,IAAI;EAChC,KAAK,WAAS,IAAI,MAAM,IAAI,IAAI,MAAM;CACvC,EAAC;AAEF,oBAAmB,MAAM;AACvB,MAAI,MAAM,OAAO,GAAG;CACrB,EAAC;AAEF,QAAO;AACR;AAGD,SAAS,oBAAoBC,KAAuB;CAClD,MAAM,QAAQ,OAAO,iBAAiB,IAAI;AAC1C,KACE,MAAM,cAAc,YACjB,MAAM,cAAc,YACnB,MAAM,cAAc,UAAU,IAAI,cAAc,IAAI,eACpD,MAAM,cAAc,UAAU,IAAI,eAAe,IAAI,aAEzD,QAAO;MAEJ;EACH,MAAM,SAAS,IAAI;AAEnB,QAAM,kBAAkB,YAAY,OAAO,YAAY,OACrD,QAAO;AAET,SAAO,oBAAoB,OAAO;CACnC;AACF;AAED,SAAS,eAAeC,UAA+B;CACrD,MAAM,IAAI,YAAY,OAAO;CAE7B,MAAM,UAAU,EAAE;AAGlB,KAAI,mBAAmB,WAAW,oBAAoB,QAAQ,CAC5D,QAAO;AAGT,KAAI,EAAE,QAAQ,SAAS,EACrB,QAAO;AAET,KAAI,EAAE,kBAAkB,EAAE,WACxB,GAAE,gBAAgB;AAEpB,QAAO;AACR"}
|
|
@@ -14,7 +14,11 @@ const aria_hidden = require_rolldown_runtime.__toESM(require("aria-hidden"));
|
|
|
14
14
|
function useHideOthers(target) {
|
|
15
15
|
let undo;
|
|
16
16
|
(0, vue.watch)(() => (0, __vueuse_core.unrefElement)(target), (el) => {
|
|
17
|
-
|
|
17
|
+
let isInsideClosedPopover = false;
|
|
18
|
+
try {
|
|
19
|
+
isInsideClosedPopover = !!el?.closest("[popover]:not(:popover-open)");
|
|
20
|
+
} catch {}
|
|
21
|
+
if (el && !isInsideClosedPopover) undo = (0, aria_hidden.hideOthers)(el);
|
|
18
22
|
else if (undo) undo();
|
|
19
23
|
});
|
|
20
24
|
(0, vue.onUnmounted)(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useHideOthers.cjs","names":["target: MaybeElementRef","undo: ReturnType<typeof hideOthers>"],"sources":["../../src/shared/useHideOthers.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;AAYA,SAAgB,cAAcA,QAAyB;CACrD,IAAIC;AACJ,gBAAM,MAAM,gCAAa,OAAO,EAAE,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"useHideOthers.cjs","names":["target: MaybeElementRef","undo: ReturnType<typeof hideOthers>"],"sources":["../../src/shared/useHideOthers.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;;AAYA,SAAgB,cAAcA,QAAyB;CACrD,IAAIC;AACJ,gBAAM,MAAM,gCAAa,OAAO,EAAE,CAAC,OAAO;EAMxC,IAAI,wBAAwB;AAC5B,MAAI;AACF,6BAA0B,IAAI,QAAQ,+BAA+B;EACtE,QACK,CAAE;AACR,MAAI,OAAO,sBACT,QAAO,4BAAW,GAAG;WACd,KACP,OAAM;CACT,EAAC;AAEF,sBAAY,MAAM;AAChB,MAAI,KACF,OAAM;CACT,EAAC;AACH"}
|
|
@@ -13,7 +13,11 @@ import { hideOthers } from "aria-hidden";
|
|
|
13
13
|
function useHideOthers(target) {
|
|
14
14
|
let undo;
|
|
15
15
|
watch(() => unrefElement(target), (el) => {
|
|
16
|
-
|
|
16
|
+
let isInsideClosedPopover = false;
|
|
17
|
+
try {
|
|
18
|
+
isInsideClosedPopover = !!el?.closest("[popover]:not(:popover-open)");
|
|
19
|
+
} catch {}
|
|
20
|
+
if (el && !isInsideClosedPopover) undo = hideOthers(el);
|
|
17
21
|
else if (undo) undo();
|
|
18
22
|
});
|
|
19
23
|
onUnmounted(() => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useHideOthers.js","names":["target: MaybeElementRef","undo: ReturnType<typeof hideOthers>"],"sources":["../../src/shared/useHideOthers.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;AAYA,SAAgB,cAAcA,QAAyB;CACrD,IAAIC;AACJ,OAAM,MAAM,aAAa,OAAO,EAAE,CAAC,OAAO;
|
|
1
|
+
{"version":3,"file":"useHideOthers.js","names":["target: MaybeElementRef","undo: ReturnType<typeof hideOthers>"],"sources":["../../src/shared/useHideOthers.ts"],"sourcesContent":[],"mappings":";;;;;;;;;;;;AAYA,SAAgB,cAAcA,QAAyB;CACrD,IAAIC;AACJ,OAAM,MAAM,aAAa,OAAO,EAAE,CAAC,OAAO;EAMxC,IAAI,wBAAwB;AAC5B,MAAI;AACF,6BAA0B,IAAI,QAAQ,+BAA+B;EACtE,QACK,CAAE;AACR,MAAI,OAAO,sBACT,QAAO,WAAW,GAAG;WACd,KACP,OAAM;CACT,EAAC;AAEF,aAAY,MAAM;AAChB,MAAI,KACF,OAAM;CACT,EAAC;AACH"}
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
const require_utils_assert = require('./assert.cjs');
|
|
2
|
+
const require_utils_compare = require('./compare.cjs');
|
|
2
3
|
|
|
3
4
|
//#region src/Splitter/utils/callPanelCallbacks.ts
|
|
4
|
-
function callPanelCallbacks(panelsArray, layout, panelIdToLastNotifiedSizeMap) {
|
|
5
|
+
function callPanelCallbacks(panelsArray, layout, panelIdToLastNotifiedSizeMap, groupSizeInPixels) {
|
|
5
6
|
layout.forEach((size, index) => {
|
|
6
7
|
const panelData = panelsArray[index];
|
|
7
8
|
require_utils_assert.assert(panelData);
|
|
8
9
|
const { callbacks, constraints, id: panelId } = panelData;
|
|
9
|
-
const { collapsedSize = 0, collapsible } = constraints;
|
|
10
|
+
const { collapsedSize = 0, collapsible, sizeUnit } = constraints;
|
|
11
|
+
let displaySize = size;
|
|
12
|
+
if (sizeUnit === "px" && groupSizeInPixels != null) displaySize = size / 100 * groupSizeInPixels;
|
|
10
13
|
const lastNotifiedSize = panelIdToLastNotifiedSizeMap[panelId];
|
|
11
|
-
if (lastNotifiedSize == null ||
|
|
12
|
-
panelIdToLastNotifiedSizeMap[panelId] =
|
|
14
|
+
if (lastNotifiedSize == null || !require_utils_compare.fuzzyNumbersEqual(displaySize, lastNotifiedSize)) {
|
|
15
|
+
panelIdToLastNotifiedSizeMap[panelId] = displaySize;
|
|
13
16
|
const { onCollapse, onExpand, onResize } = callbacks;
|
|
14
|
-
if (onResize) onResize(
|
|
17
|
+
if (onResize) onResize(displaySize, lastNotifiedSize);
|
|
15
18
|
if (collapsible && (onCollapse || onExpand)) {
|
|
16
|
-
if (onExpand && (lastNotifiedSize == null || lastNotifiedSize
|
|
17
|
-
if (onCollapse && (lastNotifiedSize == null || lastNotifiedSize
|
|
19
|
+
if (onExpand && (lastNotifiedSize == null || require_utils_compare.fuzzyNumbersEqual(lastNotifiedSize, collapsedSize)) && !require_utils_compare.fuzzyNumbersEqual(displaySize, collapsedSize)) onExpand();
|
|
20
|
+
if (onCollapse && (lastNotifiedSize == null || !require_utils_compare.fuzzyNumbersEqual(lastNotifiedSize, collapsedSize)) && require_utils_compare.fuzzyNumbersEqual(displaySize, collapsedSize)) onCollapse();
|
|
18
21
|
}
|
|
19
22
|
}
|
|
20
23
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callPanelCallbacks.cjs","names":["panelsArray: PanelData[]","layout: number[]","panelIdToLastNotifiedSizeMap: Record<string, number>"],"sources":["../../src/Splitter/utils/callPanelCallbacks.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"callPanelCallbacks.cjs","names":["panelsArray: PanelData[]","layout: number[]","panelIdToLastNotifiedSizeMap: Record<string, number>","groupSizeInPixels?: number | null"],"sources":["../../src/Splitter/utils/callPanelCallbacks.ts"],"sourcesContent":[],"mappings":";;;;AAKA,SAAgB,mBACdA,aACAC,QACAC,8BACAC,mBACA;AACA,QAAO,QAAQ,CAAC,MAAM,UAAU;EAC9B,MAAM,YAAY,YAAY;AAC9B,8BAAO,UAAU;EAEjB,MAAM,EAAE,WAAW,aAAa,IAAI,SAAS,GAAG;EAChD,MAAM,EAAE,gBAAgB,GAAG,aAAa,UAAU,GAAG;EAGrD,IAAI,cAAc;AAClB,MAAI,aAAa,QAAQ,qBAAqB,KAC5C,eAAe,OAAO,MAAO;EAG/B,MAAM,mBAAmB,6BAA6B;AACtD,MAAI,oBAAoB,SAAS,wCAAkB,aAAa,iBAAiB,EAAE;AACjF,gCAA6B,WAAW;GAExC,MAAM,EAAE,YAAY,UAAU,UAAU,GAAG;AAE3C,OAAI,SACF,UAAS,aAAa,iBAAiB;AAEzC,OAAI,gBAAgB,cAAc,WAAW;AAC3C,QACE,aACI,oBAAoB,QAAQ,wCAAkB,kBAAkB,cAAc,MAC9E,wCAAkB,aAAa,cAAc,CAEjD,WAAU;AAGZ,QACE,eACI,oBAAoB,SAAS,wCAAkB,kBAAkB,cAAc,KAChF,wCAAkB,aAAa,cAAc,CAEhD,aAAY;GAEf;EACF;CACF,EAAC;AACH"}
|
|
@@ -1,20 +1,23 @@
|
|
|
1
1
|
import { assert } from "./assert.js";
|
|
2
|
+
import { fuzzyNumbersEqual } from "./compare.js";
|
|
2
3
|
|
|
3
4
|
//#region src/Splitter/utils/callPanelCallbacks.ts
|
|
4
|
-
function callPanelCallbacks(panelsArray, layout, panelIdToLastNotifiedSizeMap) {
|
|
5
|
+
function callPanelCallbacks(panelsArray, layout, panelIdToLastNotifiedSizeMap, groupSizeInPixels) {
|
|
5
6
|
layout.forEach((size, index) => {
|
|
6
7
|
const panelData = panelsArray[index];
|
|
7
8
|
assert(panelData);
|
|
8
9
|
const { callbacks, constraints, id: panelId } = panelData;
|
|
9
|
-
const { collapsedSize = 0, collapsible } = constraints;
|
|
10
|
+
const { collapsedSize = 0, collapsible, sizeUnit } = constraints;
|
|
11
|
+
let displaySize = size;
|
|
12
|
+
if (sizeUnit === "px" && groupSizeInPixels != null) displaySize = size / 100 * groupSizeInPixels;
|
|
10
13
|
const lastNotifiedSize = panelIdToLastNotifiedSizeMap[panelId];
|
|
11
|
-
if (lastNotifiedSize == null ||
|
|
12
|
-
panelIdToLastNotifiedSizeMap[panelId] =
|
|
14
|
+
if (lastNotifiedSize == null || !fuzzyNumbersEqual(displaySize, lastNotifiedSize)) {
|
|
15
|
+
panelIdToLastNotifiedSizeMap[panelId] = displaySize;
|
|
13
16
|
const { onCollapse, onExpand, onResize } = callbacks;
|
|
14
|
-
if (onResize) onResize(
|
|
17
|
+
if (onResize) onResize(displaySize, lastNotifiedSize);
|
|
15
18
|
if (collapsible && (onCollapse || onExpand)) {
|
|
16
|
-
if (onExpand && (lastNotifiedSize == null || lastNotifiedSize
|
|
17
|
-
if (onCollapse && (lastNotifiedSize == null || lastNotifiedSize
|
|
19
|
+
if (onExpand && (lastNotifiedSize == null || fuzzyNumbersEqual(lastNotifiedSize, collapsedSize)) && !fuzzyNumbersEqual(displaySize, collapsedSize)) onExpand();
|
|
20
|
+
if (onCollapse && (lastNotifiedSize == null || !fuzzyNumbersEqual(lastNotifiedSize, collapsedSize)) && fuzzyNumbersEqual(displaySize, collapsedSize)) onCollapse();
|
|
18
21
|
}
|
|
19
22
|
}
|
|
20
23
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"callPanelCallbacks.js","names":["panelsArray: PanelData[]","layout: number[]","panelIdToLastNotifiedSizeMap: Record<string, number>"],"sources":["../../src/Splitter/utils/callPanelCallbacks.ts"],"sourcesContent":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"callPanelCallbacks.js","names":["panelsArray: PanelData[]","layout: number[]","panelIdToLastNotifiedSizeMap: Record<string, number>","groupSizeInPixels?: number | null"],"sources":["../../src/Splitter/utils/callPanelCallbacks.ts"],"sourcesContent":[],"mappings":";;;;AAKA,SAAgB,mBACdA,aACAC,QACAC,8BACAC,mBACA;AACA,QAAO,QAAQ,CAAC,MAAM,UAAU;EAC9B,MAAM,YAAY,YAAY;AAC9B,SAAO,UAAU;EAEjB,MAAM,EAAE,WAAW,aAAa,IAAI,SAAS,GAAG;EAChD,MAAM,EAAE,gBAAgB,GAAG,aAAa,UAAU,GAAG;EAGrD,IAAI,cAAc;AAClB,MAAI,aAAa,QAAQ,qBAAqB,KAC5C,eAAe,OAAO,MAAO;EAG/B,MAAM,mBAAmB,6BAA6B;AACtD,MAAI,oBAAoB,SAAS,kBAAkB,aAAa,iBAAiB,EAAE;AACjF,gCAA6B,WAAW;GAExC,MAAM,EAAE,YAAY,UAAU,UAAU,GAAG;AAE3C,OAAI,SACF,UAAS,aAAa,iBAAiB;AAEzC,OAAI,gBAAgB,cAAc,WAAW;AAC3C,QACE,aACI,oBAAoB,QAAQ,kBAAkB,kBAAkB,cAAc,MAC9E,kBAAkB,aAAa,cAAc,CAEjD,WAAU;AAGZ,QACE,eACI,oBAAoB,SAAS,kBAAkB,kBAAkB,cAAc,KAChF,kBAAkB,aAAa,cAAc,CAEhD,aAAY;GAEf;EACF;CACF,EAAC;AACH"}
|
package/dist/utils/units.cjs
CHANGED
|
@@ -76,6 +76,11 @@ function recalculateLayoutForPixelPanels({ layout, panelDataArray, prevGroupSize
|
|
|
76
76
|
const prevSize = layout[index] ?? 0;
|
|
77
77
|
nextLayout[index] = prevSize * scaleFactor;
|
|
78
78
|
}
|
|
79
|
+
const total = nextLayout.reduce((sum, size) => sum + size, 0);
|
|
80
|
+
if (total > 0 && Math.abs(total - 100) > 1e-9) {
|
|
81
|
+
const factor = 100 / total;
|
|
82
|
+
for (let index = 0; index < nextLayout.length; index++) nextLayout[index] = (nextLayout[index] ?? 0) * factor;
|
|
83
|
+
}
|
|
79
84
|
return nextLayout;
|
|
80
85
|
}
|
|
81
86
|
|
package/dist/utils/units.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"units.cjs","names":["panelDataArray: PanelData[]"],"sources":["../../src/Splitter/utils/units.ts"],"sourcesContent":[],"mappings":";;AAeA,SAAS,sBAAsB,EAAE,UAAU,mBAAmB,OAA4B,EAAsB;AAC9G,KAAI,SAAS,KACX,QAAO;AAET,KAAI,aAAa,IACf,QAAO;AAET,KAAI,qBAAqB,QAAQ,sBAAsB,EACrD;AAEF,QAAQ,QAAQ,oBAAqB;AACtC;AAED,SAAgB,iCAAiC,EAC/C,gBACA,mBACmC,EAA6B;CAChE,MAAM,sBAAsB,eAAe,KACzC,gBAAc,UAAU,YAAY,YAAY,SAAS,KAC1D;AAED,KAAI,yBAAyB,qBAAqB,OAAO,MAAM,kBAAkB,EAC/E,QAAO;AAET,QAAO,eAAe,IAAI,CAAC,cAAc;EACvC,MAAM,cAAc,UAAU;EAC9B,MAAM,WAAW,YAAY,YAAY;EAEzC,MAAM,gBAAgB,sBAAsB;GAC1C;GACA;GACA,OAAO,YAAY;EACpB,EAAC;EAEF,MAAM,cAAc,sBAAsB;GACxC;GACA;GACA,OAAO,YAAY;EACpB,EAAC;EAEF,MAAM,UAAU,sBAAsB;GACpC;GACA;GACA,OAAO,YAAY;EACpB,EAAC;EAEF,MAAM,UAAU,sBAAsB;GACpC;GACA;GACA,OAAO,YAAY;EACpB,EAAC;AAEF,SAAO;GACL,GAAG;GACH,eAAe,iBAAiB,YAAY,iBAAiB;GAC7D;GACA,SAAS,WAAW;GACpB,SAAS,WAAW;GACpB,UAAU;EACX;CACF,EAAC;AACH;AASD,SAAgB,mBAAmBA,gBAAsC;AACvE,QAAO,eAAe,KAAK,gBAAc,UAAU,YAAY,YAAY,SAAS,KAAK;AAC1F;AAED,SAAgB,gCAAgC,EAC9C,QACA,gBACA,eACA,eACyB,EAAmB;AAC5C,MAAK,mBAAmB,eAAe,CACrC,QAAO;AAGT,KACE,iBAAiB,QACd,iBAAiB,QACjB,kBAAkB,KAClB,kBAAkB,KAClB,OAAO,MAAM,cAAc,IAC3B,OAAO,MAAM,cAAc,CAE9B,QAAO;CAGT,MAAM,oBAAoB,eAAe,OAAiB,CAAC,SAAS,WAAW,UAAU;AACvF,OAAK,UAAU,YAAY,YAAY,SAAS,KAC9C,SAAQ,KAAK,MAAM;AAErB,SAAO;CACR,GAAE,CAAE,EAAC;AAEN,KAAI,kBAAkB,WAAW,EAC/B,QAAO;CAGT,MAAM,gBAAgB,IAAI,IAAI;CAE9B,MAAM,aAAa,OAAO,IAAI,UAAQ,QAAQ,EAAE;CAEhD,MAAM,4BAA4B,kBAAkB,OAAO,CAAC,KAAK,UAAU,OAAO,OAAO,UAAU,IAAI,EAAE;CAEzG,MAAM,oBAAoB,kBAAkB,IAAI,CAAC,UAAU;EACzD,MAAM,cAAc,OAAO,UAAU;EACrC,MAAM,gBAAiB,cAAc,MAAO;AAC5C,SAAQ,gBAAgB,gBAAiB;CAC1C,EAAC;CAEF,MAAM,wBAAwB,kBAAkB,OAAO,CAAC,KAAK,UAAU,MAAM,OAAO,EAAE;CAEtF,MAAM,8BAA8B,OAAO,OAAO,CAAC,KAAK,MAAM,UAAU;AACtE,MAAI,cAAc,IAAI,MAAM,CAC1B,QAAO;AAET,SAAO,OAAO,QAAQ;CACvB,GAAE,EAAE;CAEL,MAAM,uBAAuB,KAAK,IAAI,GAAG,MAAM,sBAAsB;CACrE,MAAM,cAAc,8BAA8B,IAC9C,uBAAuB,8BACvB;AAEJ,mBAAkB,QAAQ,CAAC,YAAY,eAAe;AACpD,aAAW,cAAc,kBAAkB;CAC5C,EAAC;AAEF,MAAK,IAAI,QAAQ,GAAG,QAAQ,WAAW,QAAQ,SAAS;AACtD,MAAI,cAAc,IAAI,MAAM,CAC1B;EAEF,MAAM,WAAW,OAAO,UAAU;AAClC,aAAW,SAAS,WAAW;CAChC;AAED,QAAO;AACR"}
|
|
1
|
+
{"version":3,"file":"units.cjs","names":["panelDataArray: PanelData[]"],"sources":["../../src/Splitter/utils/units.ts"],"sourcesContent":[],"mappings":"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"}
|
package/dist/utils/units.js
CHANGED
|
@@ -75,6 +75,11 @@ function recalculateLayoutForPixelPanels({ layout, panelDataArray, prevGroupSize
|
|
|
75
75
|
const prevSize = layout[index] ?? 0;
|
|
76
76
|
nextLayout[index] = prevSize * scaleFactor;
|
|
77
77
|
}
|
|
78
|
+
const total = nextLayout.reduce((sum, size) => sum + size, 0);
|
|
79
|
+
if (total > 0 && Math.abs(total - 100) > 1e-9) {
|
|
80
|
+
const factor = 100 / total;
|
|
81
|
+
for (let index = 0; index < nextLayout.length; index++) nextLayout[index] = (nextLayout[index] ?? 0) * factor;
|
|
82
|
+
}
|
|
78
83
|
return nextLayout;
|
|
79
84
|
}
|
|
80
85
|
|
package/dist/utils/units.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"units.js","names":["panelDataArray: PanelData[]"],"sources":["../../src/Splitter/utils/units.ts"],"sourcesContent":[],"mappings":";AAeA,SAAS,sBAAsB,EAAE,UAAU,mBAAmB,OAA4B,EAAsB;AAC9G,KAAI,SAAS,KACX,QAAO;AAET,KAAI,aAAa,IACf,QAAO;AAET,KAAI,qBAAqB,QAAQ,sBAAsB,EACrD;AAEF,QAAQ,QAAQ,oBAAqB;AACtC;AAED,SAAgB,iCAAiC,EAC/C,gBACA,mBACmC,EAA6B;CAChE,MAAM,sBAAsB,eAAe,KACzC,gBAAc,UAAU,YAAY,YAAY,SAAS,KAC1D;AAED,KAAI,yBAAyB,qBAAqB,OAAO,MAAM,kBAAkB,EAC/E,QAAO;AAET,QAAO,eAAe,IAAI,CAAC,cAAc;EACvC,MAAM,cAAc,UAAU;EAC9B,MAAM,WAAW,YAAY,YAAY;EAEzC,MAAM,gBAAgB,sBAAsB;GAC1C;GACA;GACA,OAAO,YAAY;EACpB,EAAC;EAEF,MAAM,cAAc,sBAAsB;GACxC;GACA;GACA,OAAO,YAAY;EACpB,EAAC;EAEF,MAAM,UAAU,sBAAsB;GACpC;GACA;GACA,OAAO,YAAY;EACpB,EAAC;EAEF,MAAM,UAAU,sBAAsB;GACpC;GACA;GACA,OAAO,YAAY;EACpB,EAAC;AAEF,SAAO;GACL,GAAG;GACH,eAAe,iBAAiB,YAAY,iBAAiB;GAC7D;GACA,SAAS,WAAW;GACpB,SAAS,WAAW;GACpB,UAAU;EACX;CACF,EAAC;AACH;AASD,SAAgB,mBAAmBA,gBAAsC;AACvE,QAAO,eAAe,KAAK,gBAAc,UAAU,YAAY,YAAY,SAAS,KAAK;AAC1F;AAED,SAAgB,gCAAgC,EAC9C,QACA,gBACA,eACA,eACyB,EAAmB;AAC5C,MAAK,mBAAmB,eAAe,CACrC,QAAO;AAGT,KACE,iBAAiB,QACd,iBAAiB,QACjB,kBAAkB,KAClB,kBAAkB,KAClB,OAAO,MAAM,cAAc,IAC3B,OAAO,MAAM,cAAc,CAE9B,QAAO;CAGT,MAAM,oBAAoB,eAAe,OAAiB,CAAC,SAAS,WAAW,UAAU;AACvF,OAAK,UAAU,YAAY,YAAY,SAAS,KAC9C,SAAQ,KAAK,MAAM;AAErB,SAAO;CACR,GAAE,CAAE,EAAC;AAEN,KAAI,kBAAkB,WAAW,EAC/B,QAAO;CAGT,MAAM,gBAAgB,IAAI,IAAI;CAE9B,MAAM,aAAa,OAAO,IAAI,UAAQ,QAAQ,EAAE;CAEhD,MAAM,4BAA4B,kBAAkB,OAAO,CAAC,KAAK,UAAU,OAAO,OAAO,UAAU,IAAI,EAAE;CAEzG,MAAM,oBAAoB,kBAAkB,IAAI,CAAC,UAAU;EACzD,MAAM,cAAc,OAAO,UAAU;EACrC,MAAM,gBAAiB,cAAc,MAAO;AAC5C,SAAQ,gBAAgB,gBAAiB;CAC1C,EAAC;CAEF,MAAM,wBAAwB,kBAAkB,OAAO,CAAC,KAAK,UAAU,MAAM,OAAO,EAAE;CAEtF,MAAM,8BAA8B,OAAO,OAAO,CAAC,KAAK,MAAM,UAAU;AACtE,MAAI,cAAc,IAAI,MAAM,CAC1B,QAAO;AAET,SAAO,OAAO,QAAQ;CACvB,GAAE,EAAE;CAEL,MAAM,uBAAuB,KAAK,IAAI,GAAG,MAAM,sBAAsB;CACrE,MAAM,cAAc,8BAA8B,IAC9C,uBAAuB,8BACvB;AAEJ,mBAAkB,QAAQ,CAAC,YAAY,eAAe;AACpD,aAAW,cAAc,kBAAkB;CAC5C,EAAC;AAEF,MAAK,IAAI,QAAQ,GAAG,QAAQ,WAAW,QAAQ,SAAS;AACtD,MAAI,cAAc,IAAI,MAAM,CAC1B;EAEF,MAAM,WAAW,OAAO,UAAU;AAClC,aAAW,SAAS,WAAW;CAChC;AAED,QAAO;AACR"}
|
|
1
|
+
{"version":3,"file":"units.js","names":["panelDataArray: PanelData[]"],"sources":["../../src/Splitter/utils/units.ts"],"sourcesContent":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "reka-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "2.9.
|
|
4
|
+
"version": "2.9.2",
|
|
5
5
|
"description": "Vue port for Radix UI Primitives.",
|
|
6
6
|
"author": "UnoVue Contributors (https://github.com/unovue)",
|
|
7
7
|
"license": "MIT",
|
|
@@ -106,7 +106,7 @@
|
|
|
106
106
|
"@testing-library/user-event": "^14.6.1",
|
|
107
107
|
"@testing-library/vue": "^8.1.0",
|
|
108
108
|
"@tsconfig/node24": "^24.0.0",
|
|
109
|
-
"@types/jsdom": "^
|
|
109
|
+
"@types/jsdom": "^28.0.0",
|
|
110
110
|
"@types/node": "^24.0.13",
|
|
111
111
|
"@vitejs/plugin-vue": "^6.0.4",
|
|
112
112
|
"@vitest/coverage-istanbul": "^3.2.4",
|
|
@@ -60,6 +60,24 @@ function handleFocus() {
|
|
|
60
60
|
rootContext.onOpenChange(true)
|
|
61
61
|
}
|
|
62
62
|
|
|
63
|
+
function handleBlur(ev: FocusEvent) {
|
|
64
|
+
if (!rootContext.open.value)
|
|
65
|
+
return
|
|
66
|
+
|
|
67
|
+
const nextFocus = ev.relatedTarget as Element | null
|
|
68
|
+
|
|
69
|
+
// If focus moves to nothing (e.g. click on non-focusable area), let DismissableLayer handle it
|
|
70
|
+
if (!nextFocus)
|
|
71
|
+
return
|
|
72
|
+
|
|
73
|
+
const isInsideRoot = rootContext.parentElement.value?.contains(nextFocus)
|
|
74
|
+
const isInsideContent = document.getElementById(rootContext.contentId)?.contains(nextFocus)
|
|
75
|
+
|
|
76
|
+
if (!isInsideRoot && !isInsideContent) {
|
|
77
|
+
rootContext.onOpenChange(false)
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
|
|
63
81
|
function handleClick() {
|
|
64
82
|
if (rootContext.openOnClick.value && !rootContext.open.value)
|
|
65
83
|
rootContext.onOpenChange(true)
|
|
@@ -122,6 +140,7 @@ watch(rootContext.filterState, (_newValue, oldValue) => {
|
|
|
122
140
|
@input="handleInput"
|
|
123
141
|
@keydown.down.up.prevent="handleKeyDown"
|
|
124
142
|
@focus="handleFocus"
|
|
143
|
+
@blur="handleBlur"
|
|
125
144
|
>
|
|
126
145
|
<slot />
|
|
127
146
|
</ListboxFilter>
|
|
@@ -13,7 +13,10 @@ export const CONTEXT_UPDATE = 'dismissableLayer.update'
|
|
|
13
13
|
export const POINTER_DOWN_OUTSIDE = 'dismissableLayer.pointerDownOutside'
|
|
14
14
|
export const FOCUS_OUTSIDE = 'dismissableLayer.focusOutside'
|
|
15
15
|
|
|
16
|
-
function isLayerExist(layerElement: HTMLElement, targetElement: HTMLElement) {
|
|
16
|
+
export function isLayerExist(layerElement: HTMLElement, targetElement: HTMLElement) {
|
|
17
|
+
if (!(targetElement instanceof Element))
|
|
18
|
+
return false
|
|
19
|
+
|
|
17
20
|
const targetLayer = targetElement.closest(
|
|
18
21
|
'[data-dismissable-layer]',
|
|
19
22
|
)
|
package/src/Menu/MenuGroup.vue
CHANGED
|
@@ -1,19 +1,31 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { PrimitiveProps } from '@/Primitive'
|
|
3
|
+
import { createContext, useId } from '@/shared'
|
|
3
4
|
|
|
4
5
|
export interface MenuGroupProps extends PrimitiveProps {}
|
|
6
|
+
|
|
7
|
+
interface MenuGroupContext {
|
|
8
|
+
id: string
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
export const [injectMenuGroupContext, provideMenuGroupContext]
|
|
12
|
+
= createContext<MenuGroupContext>('MenuGroup')
|
|
5
13
|
</script>
|
|
6
14
|
|
|
7
15
|
<script setup lang="ts">
|
|
8
16
|
import { Primitive } from '@/Primitive'
|
|
9
17
|
|
|
10
18
|
const props = defineProps<MenuGroupProps>()
|
|
19
|
+
|
|
20
|
+
const id = useId(undefined, 'reka-menu-group')
|
|
21
|
+
provideMenuGroupContext({ id })
|
|
11
22
|
</script>
|
|
12
23
|
|
|
13
24
|
<template>
|
|
14
25
|
<Primitive
|
|
15
26
|
role="group"
|
|
16
27
|
v-bind="props"
|
|
28
|
+
:aria-labelledby="id"
|
|
17
29
|
>
|
|
18
30
|
<slot />
|
|
19
31
|
</Primitive>
|
|
@@ -36,11 +36,8 @@ const isFocused = ref(false)
|
|
|
36
36
|
const isHighlighted = computed(() => isFocused.value || (contentContext.highlightedElement.value === currentElement.value))
|
|
37
37
|
|
|
38
38
|
async function handlePointerMove(event: PointerEvent) {
|
|
39
|
-
if (event.defaultPrevented)
|
|
40
|
-
return
|
|
41
|
-
if (!isMouseEvent(event))
|
|
39
|
+
if (event.defaultPrevented || !isMouseEvent(event))
|
|
42
40
|
return
|
|
43
|
-
|
|
44
41
|
if (props.disabled) {
|
|
45
42
|
contentContext.onItemLeave(event)
|
|
46
43
|
}
|
package/src/Menu/MenuLabel.vue
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import type { PrimitiveProps } from '@/Primitive'
|
|
3
|
+
import { injectMenuGroupContext } from './MenuGroup.vue'
|
|
3
4
|
|
|
4
5
|
export interface MenuLabelProps extends PrimitiveProps {}
|
|
5
6
|
</script>
|
|
@@ -10,10 +11,15 @@ import { Primitive } from '@/Primitive'
|
|
|
10
11
|
const props = withDefaults(defineProps<MenuLabelProps>(), {
|
|
11
12
|
as: 'div',
|
|
12
13
|
})
|
|
14
|
+
|
|
15
|
+
const groupContext = injectMenuGroupContext({ id: '' })
|
|
13
16
|
</script>
|
|
14
17
|
|
|
15
18
|
<template>
|
|
16
|
-
<Primitive
|
|
19
|
+
<Primitive
|
|
20
|
+
v-bind="props"
|
|
21
|
+
:id="groupContext.id || undefined"
|
|
22
|
+
>
|
|
17
23
|
<slot />
|
|
18
24
|
</Primitive>
|
|
19
25
|
</template>
|
|
@@ -20,7 +20,7 @@ const readonly = computed(() => rootContext.readonly.value ? true : undefined)
|
|
|
20
20
|
<Primitive
|
|
21
21
|
v-bind="props"
|
|
22
22
|
tabindex="-1"
|
|
23
|
-
role="
|
|
23
|
+
role="application"
|
|
24
24
|
:aria-labelledby="rootContext.headingId"
|
|
25
25
|
:aria-readonly="readonly"
|
|
26
26
|
:aria-disabled="disabled"
|
|
@@ -20,7 +20,7 @@ const readonly = computed(() => rootContext.readonly.value ? true : undefined)
|
|
|
20
20
|
<Primitive
|
|
21
21
|
v-bind="props"
|
|
22
22
|
tabindex="-1"
|
|
23
|
-
role="
|
|
23
|
+
role="application"
|
|
24
24
|
:aria-labelledby="rootContext.headingId"
|
|
25
25
|
:aria-readonly="readonly"
|
|
26
26
|
:aria-disabled="disabled"
|
|
@@ -121,6 +121,7 @@ const { forwardRef, currentElement: panelGroupElementRef } = useForwardExpose()
|
|
|
121
121
|
|
|
122
122
|
const dragState = ref<DragState | null>(null)
|
|
123
123
|
const groupSizeInPixels = ref<number | null>(null)
|
|
124
|
+
const groupSizeAtLastLayoutInit = ref<number | null>(null)
|
|
124
125
|
const layout = ref<number[]>([])
|
|
125
126
|
const panelIdToLastNotifiedSizeMapRef = ref<Record<string, number>>({})
|
|
126
127
|
const panelSizeBeforeCollapseRef = ref<Map<string, number>>(new Map())
|
|
@@ -193,6 +194,20 @@ function getPanelDataWithPercentConstraints(groupSizeOverride?: number | null) {
|
|
|
193
194
|
|
|
194
195
|
const setLayout = (val: number[]) => layout.value = val
|
|
195
196
|
|
|
197
|
+
/** Convert internal layout (always in %) to native units for each panel */
|
|
198
|
+
function convertLayoutToNativeUnits(internalLayout: number[]): number[] {
|
|
199
|
+
const { panelDataArray } = eagerValuesRef.value
|
|
200
|
+
const groupSize = getGroupSizeInPixels()
|
|
201
|
+
|
|
202
|
+
return internalLayout.map((size, index) => {
|
|
203
|
+
const panelData = panelDataArray[index]
|
|
204
|
+
if (panelData && (panelData.constraints.sizeUnit ?? '%') === 'px' && groupSize != null) {
|
|
205
|
+
return (size / 100) * groupSize
|
|
206
|
+
}
|
|
207
|
+
return size
|
|
208
|
+
})
|
|
209
|
+
}
|
|
210
|
+
|
|
196
211
|
useWindowSplitterPanelGroupBehavior({
|
|
197
212
|
eagerValuesRef,
|
|
198
213
|
groupId,
|
|
@@ -343,16 +358,22 @@ watch(() => eagerValuesRef.value.panelDataArrayChanged, () => {
|
|
|
343
358
|
panelConstraints,
|
|
344
359
|
})
|
|
345
360
|
|
|
361
|
+
// Track the group size used for this initialization.
|
|
362
|
+
// Used to detect when a nested px group was measured with an unreliable (too small)
|
|
363
|
+
// container size before the outer group finished layout.
|
|
364
|
+
groupSizeAtLastLayoutInit.value = getGroupSizeInPixels()
|
|
365
|
+
|
|
346
366
|
if (!areEqual(prevLayout, nextLayout)) {
|
|
347
367
|
setLayout(nextLayout)
|
|
348
368
|
|
|
349
369
|
eagerValuesRef.value.layout = nextLayout
|
|
350
|
-
emits('layout', nextLayout)
|
|
370
|
+
emits('layout', convertLayoutToNativeUnits(nextLayout))
|
|
351
371
|
|
|
352
372
|
callPanelCallbacks(
|
|
353
373
|
panelDataArray,
|
|
354
374
|
nextLayout,
|
|
355
375
|
panelIdToLastNotifiedSizeMapRef.value,
|
|
376
|
+
getGroupSizeInPixels(),
|
|
356
377
|
)
|
|
357
378
|
}
|
|
358
379
|
}
|
|
@@ -368,6 +389,20 @@ watch(groupSizeInPixels, (nextSize, prevSize) => {
|
|
|
368
389
|
if (!hasPixelSizedPanel(panelDataArray))
|
|
369
390
|
return
|
|
370
391
|
|
|
392
|
+
// Detect if the layout was initialized with an unreliably small container.
|
|
393
|
+
// This happens with nested SplitterGroups using sizeUnit="px": the inner group's
|
|
394
|
+
// ResizeObserver fires before the outer group's flex layout completes, giving a
|
|
395
|
+
// near-zero container size (e.g. 3.45px). When the outer group finishes and the
|
|
396
|
+
// container grows to its real size (e.g. 923px), we must re-initialize rather
|
|
397
|
+
// than recalculate (which would "preserve" the garbage pixel sizes from 3.45px).
|
|
398
|
+
// We guard with initSize < 50 so that legitimately small-but-real containers
|
|
399
|
+
// (e.g. a sidebar at 60px) are not accidentally re-initialized on normal resizes.
|
|
400
|
+
const initSize = groupSizeAtLastLayoutInit.value
|
|
401
|
+
if (initSize != null && initSize > 0 && initSize < 50 && nextSize > initSize * 10) {
|
|
402
|
+
eagerValuesRef.value.panelDataArrayChanged = true
|
|
403
|
+
return
|
|
404
|
+
}
|
|
405
|
+
|
|
371
406
|
const recalculatedLayout = recalculateLayoutForPixelPanels({
|
|
372
407
|
layout: prevLayout,
|
|
373
408
|
panelDataArray,
|
|
@@ -391,12 +426,13 @@ watch(groupSizeInPixels, (nextSize, prevSize) => {
|
|
|
391
426
|
setLayout(nextLayout)
|
|
392
427
|
|
|
393
428
|
eagerValuesRef.value.layout = nextLayout
|
|
394
|
-
emits('layout', nextLayout)
|
|
429
|
+
emits('layout', convertLayoutToNativeUnits(nextLayout))
|
|
395
430
|
|
|
396
431
|
callPanelCallbacks(
|
|
397
432
|
panelDataArray,
|
|
398
433
|
nextLayout,
|
|
399
434
|
panelIdToLastNotifiedSizeMapRef.value,
|
|
435
|
+
getGroupSizeInPixels(),
|
|
400
436
|
)
|
|
401
437
|
}
|
|
402
438
|
})
|
|
@@ -484,12 +520,13 @@ function registerResizeHandle(dragHandleId: string) {
|
|
|
484
520
|
setLayout(nextLayout)
|
|
485
521
|
|
|
486
522
|
eagerValuesRef.value.layout = nextLayout
|
|
487
|
-
emits('layout', nextLayout)
|
|
523
|
+
emits('layout', convertLayoutToNativeUnits(nextLayout))
|
|
488
524
|
|
|
489
525
|
callPanelCallbacks(
|
|
490
526
|
panelDataArray,
|
|
491
527
|
nextLayout,
|
|
492
528
|
panelIdToLastNotifiedSizeMapRef.value,
|
|
529
|
+
getGroupSizeInPixels(),
|
|
493
530
|
)
|
|
494
531
|
}
|
|
495
532
|
}
|
|
@@ -540,12 +577,13 @@ function resizePanel(panelData: PanelData, unsafePanelSize: number) {
|
|
|
540
577
|
setLayout(nextLayout)
|
|
541
578
|
|
|
542
579
|
eagerValuesRef.value.layout = nextLayout
|
|
543
|
-
emits('layout', nextLayout)
|
|
580
|
+
emits('layout', convertLayoutToNativeUnits(nextLayout))
|
|
544
581
|
|
|
545
582
|
callPanelCallbacks(
|
|
546
583
|
panelDataArray,
|
|
547
584
|
nextLayout,
|
|
548
585
|
panelIdToLastNotifiedSizeMapRef.value,
|
|
586
|
+
getGroupSizeInPixels(),
|
|
549
587
|
)
|
|
550
588
|
}
|
|
551
589
|
}
|
|
@@ -682,12 +720,13 @@ function collapsePanel(panelData: PanelData) {
|
|
|
682
720
|
|
|
683
721
|
eagerValuesRef.value.layout = nextLayout
|
|
684
722
|
|
|
685
|
-
emits('layout', nextLayout)
|
|
723
|
+
emits('layout', convertLayoutToNativeUnits(nextLayout))
|
|
686
724
|
|
|
687
725
|
callPanelCallbacks(
|
|
688
726
|
panelDataArray,
|
|
689
727
|
nextLayout,
|
|
690
728
|
panelIdToLastNotifiedSizeMapRef.value,
|
|
729
|
+
getGroupSizeInPixels(),
|
|
691
730
|
)
|
|
692
731
|
}
|
|
693
732
|
}
|
|
@@ -747,12 +786,13 @@ function expandPanel(panelData: PanelData) {
|
|
|
747
786
|
|
|
748
787
|
eagerValuesRef.value.layout = nextLayout
|
|
749
788
|
|
|
750
|
-
emits('layout', nextLayout)
|
|
789
|
+
emits('layout', convertLayoutToNativeUnits(nextLayout))
|
|
751
790
|
|
|
752
791
|
callPanelCallbacks(
|
|
753
792
|
panelDataArray,
|
|
754
793
|
nextLayout,
|
|
755
794
|
panelIdToLastNotifiedSizeMapRef.value,
|
|
795
|
+
getGroupSizeInPixels(),
|
|
756
796
|
)
|
|
757
797
|
}
|
|
758
798
|
}
|