reka-ui 2.6.0 → 2.6.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/Accordion/AccordionItem.cjs +3 -2
- package/dist/Accordion/AccordionItem.cjs.map +1 -1
- package/dist/Accordion/AccordionItem.js +3 -2
- package/dist/Accordion/AccordionItem.js.map +1 -1
- package/dist/Calendar/useCalendar.cjs.map +1 -1
- package/dist/Calendar/useCalendar.js.map +1 -1
- package/dist/Combobox/ComboboxCancel.cjs +1 -1
- package/dist/Combobox/ComboboxCancel.cjs.map +1 -1
- package/dist/Combobox/ComboboxCancel.js +1 -1
- package/dist/Combobox/ComboboxCancel.js.map +1 -1
- package/dist/Combobox/ComboboxContentImpl.cjs +3 -1
- package/dist/Combobox/ComboboxContentImpl.cjs.map +1 -1
- package/dist/Combobox/ComboboxContentImpl.js +3 -1
- package/dist/Combobox/ComboboxContentImpl.js.map +1 -1
- package/dist/Combobox/ComboboxInput.cjs +2 -2
- package/dist/Combobox/ComboboxInput.cjs.map +1 -1
- package/dist/Combobox/ComboboxInput.js +2 -2
- package/dist/Combobox/ComboboxInput.js.map +1 -1
- package/dist/Combobox/ComboboxRoot.cjs +7 -5
- package/dist/Combobox/ComboboxRoot.cjs.map +1 -1
- package/dist/Combobox/ComboboxRoot.js +7 -5
- package/dist/Combobox/ComboboxRoot.js.map +1 -1
- package/dist/Combobox/ComboboxVirtualizer.cjs +1 -1
- package/dist/Combobox/ComboboxVirtualizer.js +1 -1
- package/dist/DateField/DateFieldRoot.cjs +6 -1
- package/dist/DateField/DateFieldRoot.cjs.map +1 -1
- package/dist/DateField/DateFieldRoot.js +6 -1
- package/dist/DateField/DateFieldRoot.js.map +1 -1
- package/dist/DatePicker/DatePickerRoot.cjs +0 -8
- package/dist/DatePicker/DatePickerRoot.cjs.map +1 -1
- package/dist/DatePicker/DatePickerRoot.js +0 -8
- package/dist/DatePicker/DatePickerRoot.js.map +1 -1
- package/dist/DateRangeField/DateRangeFieldRoot.cjs +2 -1
- package/dist/DateRangeField/DateRangeFieldRoot.cjs.map +1 -1
- package/dist/DateRangeField/DateRangeFieldRoot.js +2 -1
- package/dist/DateRangeField/DateRangeFieldRoot.js.map +1 -1
- package/dist/DateRangePicker/DateRangePickerRoot.cjs +0 -8
- package/dist/DateRangePicker/DateRangePickerRoot.cjs.map +1 -1
- package/dist/DateRangePicker/DateRangePickerRoot.js +0 -8
- package/dist/DateRangePicker/DateRangePickerRoot.js.map +1 -1
- package/dist/DismissableLayer/DismissableLayer.cjs +4 -3
- package/dist/DismissableLayer/DismissableLayer.cjs.map +1 -1
- package/dist/DismissableLayer/DismissableLayer.js +4 -3
- package/dist/DismissableLayer/DismissableLayer.js.map +1 -1
- package/dist/Editable/EditableRoot.cjs +1 -1
- package/dist/Editable/EditableRoot.js +1 -1
- package/dist/Listbox/ListboxVirtualizer.cjs +3 -2
- package/dist/Listbox/ListboxVirtualizer.cjs.map +1 -1
- package/dist/Listbox/ListboxVirtualizer.js +3 -2
- package/dist/Listbox/ListboxVirtualizer.js.map +1 -1
- package/dist/NavigationMenu/NavigationMenuContentImpl.cjs.map +1 -1
- package/dist/NavigationMenu/NavigationMenuContentImpl.js.map +1 -1
- package/dist/PinInput/PinInputInput.cjs +3 -0
- package/dist/PinInput/PinInputInput.cjs.map +1 -1
- package/dist/PinInput/PinInputInput.js +3 -0
- package/dist/PinInput/PinInputInput.js.map +1 -1
- package/dist/PinInput/PinInputRoot.cjs +1 -1
- package/dist/PinInput/PinInputRoot.js +1 -1
- package/dist/RangeCalendar/RangeCalendarCellTrigger.cjs +3 -3
- package/dist/RangeCalendar/RangeCalendarCellTrigger.cjs.map +1 -1
- package/dist/RangeCalendar/RangeCalendarCellTrigger.js +3 -3
- package/dist/RangeCalendar/RangeCalendarCellTrigger.js.map +1 -1
- package/dist/RangeCalendar/RangeCalendarRoot.cjs +10 -8
- package/dist/RangeCalendar/RangeCalendarRoot.cjs.map +1 -1
- package/dist/RangeCalendar/RangeCalendarRoot.js +10 -8
- package/dist/RangeCalendar/RangeCalendarRoot.js.map +1 -1
- package/dist/RangeCalendar/useRangeCalendar.cjs +1 -1
- package/dist/RangeCalendar/useRangeCalendar.cjs.map +1 -1
- package/dist/RangeCalendar/useRangeCalendar.js +1 -1
- package/dist/RangeCalendar/useRangeCalendar.js.map +1 -1
- package/dist/ScrollArea/ScrollAreaScrollbarImpl.cjs +3 -2
- package/dist/ScrollArea/ScrollAreaScrollbarImpl.cjs.map +1 -1
- package/dist/ScrollArea/ScrollAreaScrollbarImpl.js +3 -2
- package/dist/ScrollArea/ScrollAreaScrollbarImpl.js.map +1 -1
- package/dist/Select/SelectArrow.cjs +1 -3
- package/dist/Select/SelectArrow.cjs.map +1 -1
- package/dist/Select/SelectArrow.js +1 -3
- package/dist/Select/SelectArrow.js.map +1 -1
- package/dist/Select/SelectContent.cjs +4 -0
- package/dist/Select/SelectContent.cjs.map +1 -1
- package/dist/Select/SelectContent.js +4 -0
- package/dist/Select/SelectContent.js.map +1 -1
- package/dist/Select/SelectContentImpl.cjs +7 -2
- package/dist/Select/SelectContentImpl.cjs.map +1 -1
- package/dist/Select/SelectContentImpl.js +7 -2
- package/dist/Select/SelectContentImpl.js.map +1 -1
- package/dist/Select/SelectItem.cjs.map +1 -1
- package/dist/Select/SelectItem.js.map +1 -1
- package/dist/Splitter/SplitterGroup.cjs.map +1 -1
- package/dist/Splitter/SplitterGroup.js.map +1 -1
- package/dist/Tabs/TabsIndicator.cjs +18 -12
- package/dist/Tabs/TabsIndicator.cjs.map +1 -1
- package/dist/Tabs/TabsIndicator.js +19 -13
- package/dist/Tabs/TabsIndicator.js.map +1 -1
- package/dist/Tooltip/TooltipContentImpl.cjs +2 -13
- package/dist/Tooltip/TooltipContentImpl.cjs.map +1 -1
- package/dist/Tooltip/TooltipContentImpl.js +3 -14
- package/dist/Tooltip/TooltipContentImpl.js.map +1 -1
- package/dist/Tree/TreeRoot.cjs +1 -1
- package/dist/Tree/TreeRoot.cjs.map +1 -1
- package/dist/Tree/TreeRoot.js +1 -1
- package/dist/Tree/TreeRoot.js.map +1 -1
- package/dist/Tree/TreeVirtualizer.cjs +3 -2
- package/dist/Tree/TreeVirtualizer.cjs.map +1 -1
- package/dist/Tree/TreeVirtualizer.js +3 -2
- package/dist/Tree/TreeVirtualizer.js.map +1 -1
- package/dist/date/useDateField.cjs +5 -6
- package/dist/date/useDateField.cjs.map +1 -1
- package/dist/date/useDateField.js +5 -6
- package/dist/date/useDateField.js.map +1 -1
- package/dist/index.d.cts +824 -819
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +813 -808
- package/dist/index.d.ts.map +1 -1
- package/dist/shared/useFormControl.cjs +1 -1
- package/dist/shared/useFormControl.cjs.map +1 -1
- package/dist/shared/useFormControl.js +3 -3
- package/dist/shared/useFormControl.js.map +1 -1
- package/dist/shared/useForwardExpose.cjs +10 -1
- package/dist/shared/useForwardExpose.cjs.map +1 -1
- package/dist/shared/useForwardExpose.js +10 -1
- package/dist/shared/useForwardExpose.js.map +1 -1
- package/dist/shared/useGraceArea.cjs +3 -0
- package/dist/shared/useGraceArea.cjs.map +1 -1
- package/dist/shared/useGraceArea.js +4 -1
- package/dist/shared/useGraceArea.js.map +1 -1
- package/package.json +3 -3
- package/src/Accordion/AccordionItem.vue +7 -2
- package/src/Calendar/useCalendar.ts +3 -3
- package/src/Combobox/ComboboxCancel.vue +4 -3
- package/src/Combobox/ComboboxContentImpl.vue +3 -2
- package/src/Combobox/ComboboxInput.vue +3 -3
- package/src/Combobox/ComboboxRoot.vue +5 -6
- package/src/DateField/DateFieldRoot.vue +3 -0
- package/src/DatePicker/DatePickerRoot.vue +1 -1
- package/src/DateRangeField/DateRangeFieldRoot.vue +1 -0
- package/src/DateRangePicker/DateRangePickerRoot.vue +1 -1
- package/src/DismissableLayer/DismissableLayer.vue +5 -4
- package/src/Editable/EditableRoot.vue +1 -1
- package/src/Listbox/ListboxVirtualizer.vue +5 -2
- package/src/NavigationMenu/NavigationMenuContentImpl.vue +1 -1
- package/src/NumberField/NumberFieldRoot.vue +1 -1
- package/src/PinInput/PinInputInput.vue +6 -0
- package/src/PinInput/PinInputRoot.vue +3 -3
- package/src/Presence/usePresence.ts +1 -1
- package/src/Primitive/Primitive.ts +19 -19
- package/src/RangeCalendar/RangeCalendarCellTrigger.vue +8 -2
- package/src/RangeCalendar/RangeCalendarRoot.vue +10 -27
- package/src/RangeCalendar/useRangeCalendar.ts +1 -1
- package/src/ScrollArea/ScrollAreaScrollbarImpl.vue +4 -2
- package/src/ScrollArea/ScrollAreaScrollbarVisible.vue +1 -1
- package/src/Select/SelectArrow.vue +1 -3
- package/src/Select/SelectContentImpl.vue +6 -5
- package/src/Select/SelectItem.vue +1 -1
- package/src/Splitter/SplitterGroup.vue +7 -7
- package/src/Splitter/SplitterPanel.vue +1 -1
- package/src/Splitter/utils/registry.ts +1 -1
- package/src/Tabs/TabsIndicator.vue +18 -12
- package/src/Tooltip/TooltipContentImpl.vue +3 -20
- package/src/Tooltip/TooltipTrigger.vue +4 -4
- package/src/Tree/TreeRoot.vue +1 -1
- package/src/Tree/TreeVirtualizer.vue +5 -2
- package/src/index.ts +1 -0
- package/src/shared/date/useDateField.ts +12 -7
- package/src/shared/index.ts +1 -1
- package/src/shared/useFormControl.ts +2 -2
- package/src/shared/useForwardExpose.ts +17 -1
- package/src/shared/useGraceArea.ts +8 -2
- package/src/shared/useId.ts +1 -1
- package/src/shared/useStateMachine.ts +1 -1
- package/src/shared/withDefault.ts +1 -1
|
@@ -4,7 +4,7 @@ const __vueuse_core = require_rolldown_runtime.__toESM(require("@vueuse/core"));
|
|
|
4
4
|
|
|
5
5
|
//#region src/shared/useFormControl.ts
|
|
6
6
|
function useFormControl(el) {
|
|
7
|
-
return (0, vue.computed)(() => (0,
|
|
7
|
+
return (0, vue.computed)(() => (0, vue.toValue)(el) ? Boolean((0, __vueuse_core.unrefElement)(el)?.closest("form")) : true);
|
|
8
8
|
}
|
|
9
9
|
|
|
10
10
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFormControl.cjs","names":["el: MaybeElementRef"],"sources":["../../src/shared/useFormControl.ts"],"sourcesContent":[],"mappings":";;;;;AAIA,SAAgB,eAAeA,IAAqB;AAElD,QAAO,kBAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"useFormControl.cjs","names":["el: MaybeElementRef"],"sources":["../../src/shared/useFormControl.ts"],"sourcesContent":[],"mappings":";;;;;AAIA,SAAgB,eAAeA,IAAqB;AAElD,QAAO,kBAAS,MAAM,iBAAQ,GAAG,GAAG,QAAQ,gCAAa,GAAG,EAAE,QAAQ,OAAO,CAAC,GAAG,KAAK;AACvF"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { computed } from "vue";
|
|
2
|
-
import {
|
|
1
|
+
import { computed, toValue } from "vue";
|
|
2
|
+
import { unrefElement } from "@vueuse/core";
|
|
3
3
|
|
|
4
4
|
//#region src/shared/useFormControl.ts
|
|
5
5
|
function useFormControl(el) {
|
|
6
|
-
return computed(() => toValue
|
|
6
|
+
return computed(() => toValue(el) ? Boolean(unrefElement(el)?.closest("form")) : true);
|
|
7
7
|
}
|
|
8
8
|
|
|
9
9
|
//#endregion
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useFormControl.js","names":["el: MaybeElementRef"],"sources":["../../src/shared/useFormControl.ts"],"sourcesContent":[],"mappings":";;;;AAIA,SAAgB,eAAeA,IAAqB;AAElD,QAAO,SAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"useFormControl.js","names":["el: MaybeElementRef"],"sources":["../../src/shared/useFormControl.ts"],"sourcesContent":[],"mappings":";;;;AAIA,SAAgB,eAAeA,IAAqB;AAElD,QAAO,SAAS,MAAM,QAAQ,GAAG,GAAG,QAAQ,aAAa,GAAG,EAAE,QAAQ,OAAO,CAAC,GAAG,KAAK;AACvF"}
|
|
@@ -35,7 +35,16 @@ function useForwardExpose() {
|
|
|
35
35
|
configurable: true,
|
|
36
36
|
get: () => ref$1 instanceof Element ? ref$1 : ref$1.$el
|
|
37
37
|
});
|
|
38
|
-
|
|
38
|
+
if (!(ref$1 instanceof Element) && !Object.hasOwn(ref$1, "$el")) {
|
|
39
|
+
const childExposed = ref$1.$.exposed;
|
|
40
|
+
const merged = Object.assign({}, ret);
|
|
41
|
+
for (const key in childExposed) Object.defineProperty(merged, key, {
|
|
42
|
+
enumerable: true,
|
|
43
|
+
configurable: true,
|
|
44
|
+
get: () => childExposed[key]
|
|
45
|
+
});
|
|
46
|
+
instance.exposed = merged;
|
|
47
|
+
}
|
|
39
48
|
}
|
|
40
49
|
return {
|
|
41
50
|
forwardRef,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useForwardExpose.cjs","names":["localExpose: Record<string, any> | null","ret: Record<string, any>","ref: Element | T | null","ref"],"sources":["../../src/shared/useForwardExpose.ts"],"sourcesContent":[],"mappings":";;;;;AAKA,SAAgB,mBAAsD;CACpE,MAAM,WAAW,6BAAoB;CAErC,MAAM,aAAa,cAAyB;CAC5C,MAAM,iBAAiB,kBAAsB,MAAM;AAGjD,SAAO,CAAC,SAAS,UAAW,EAAC,SAAS,WAAW,OAAO,IAAI,SAAS,GAAG,WAAW,OAAO,IAAI,qBAAqB,gCAAa,WAAW;CAC5I,EAAC;CAIF,MAAMA,cAA0C,OAAO,OAAO,CAAE,GAAE,SAAS,QAAQ;CACnF,MAAMC,MAA2B,CAAE;AAGnC,MAAK,MAAM,OAAO,SAAS,MACzB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AAIJ,KAAI,OAAO,KAAK,YAAY,CAAC,SAAS,EACpC,MAAK,MAAM,OAAO,YAChB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,YAAa;CACzB,EAAC;AAKN,QAAO,eAAe,KAAK,OAAO;EAChC,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AACF,UAAS,UAAU;CAEnB,SAAS,WAAWC,OAAyB;AAC3C,aAAW,QAAQC;AAEnB,OAAKA,MACH;AAGF,SAAO,eAAe,KAAK,OAAO;GAChC,YAAY;GACZ,cAAc;GACd,KAAK,MAAOA,iBAAe,UAAUA,QAAMA,MAAI;EAChD,EAAC;
|
|
1
|
+
{"version":3,"file":"useForwardExpose.cjs","names":["localExpose: Record<string, any> | null","ret: Record<string, any>","ref: Element | T | null","ref"],"sources":["../../src/shared/useForwardExpose.ts"],"sourcesContent":[],"mappings":";;;;;AAKA,SAAgB,mBAAsD;CACpE,MAAM,WAAW,6BAAoB;CAErC,MAAM,aAAa,cAAyB;CAC5C,MAAM,iBAAiB,kBAAsB,MAAM;AAGjD,SAAO,CAAC,SAAS,UAAW,EAAC,SAAS,WAAW,OAAO,IAAI,SAAS,GAAG,WAAW,OAAO,IAAI,qBAAqB,gCAAa,WAAW;CAC5I,EAAC;CAIF,MAAMA,cAA0C,OAAO,OAAO,CAAE,GAAE,SAAS,QAAQ;CACnF,MAAMC,MAA2B,CAAE;AAGnC,MAAK,MAAM,OAAO,SAAS,MACzB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AAIJ,KAAI,OAAO,KAAK,YAAY,CAAC,SAAS,EACpC,MAAK,MAAM,OAAO,YAChB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,YAAa;CACzB,EAAC;AAKN,QAAO,eAAe,KAAK,OAAO;EAChC,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AACF,UAAS,UAAU;CAEnB,SAAS,WAAWC,OAAyB;AAC3C,aAAW,QAAQC;AAEnB,OAAKA,MACH;AAGF,SAAO,eAAe,KAAK,OAAO;GAChC,YAAY;GACZ,cAAc;GACd,KAAK,MAAOA,iBAAe,UAAUA,QAAMA,MAAI;EAChD,EAAC;AAIF,QAAMA,iBAAe,aAAa,OAAO,OAAOA,OAAK,MAAM,EAAE;GAE3D,MAAM,eAAeA,MAAI,EAAE;GAC3B,MAAM,SAAS,OAAO,OAAO,CAAE,GAAE,IAAI;AAErC,QAAK,MAAM,OAAO,aAChB,QAAO,eAAe,QAAQ,KAAK;IACjC,YAAY;IACZ,cAAc;IACd,KAAK,MAAM,aAAa;GACzB,EAAC;AAGJ,YAAS,UAAU;EACpB;CACF;AAED,QAAO;EAAE;EAAY;EAAY;CAAgB;AAClD"}
|
|
@@ -34,7 +34,16 @@ function useForwardExpose() {
|
|
|
34
34
|
configurable: true,
|
|
35
35
|
get: () => ref$1 instanceof Element ? ref$1 : ref$1.$el
|
|
36
36
|
});
|
|
37
|
-
|
|
37
|
+
if (!(ref$1 instanceof Element) && !Object.hasOwn(ref$1, "$el")) {
|
|
38
|
+
const childExposed = ref$1.$.exposed;
|
|
39
|
+
const merged = Object.assign({}, ret);
|
|
40
|
+
for (const key in childExposed) Object.defineProperty(merged, key, {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
configurable: true,
|
|
43
|
+
get: () => childExposed[key]
|
|
44
|
+
});
|
|
45
|
+
instance.exposed = merged;
|
|
46
|
+
}
|
|
38
47
|
}
|
|
39
48
|
return {
|
|
40
49
|
forwardRef,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useForwardExpose.js","names":["localExpose: Record<string, any> | null","ret: Record<string, any>","ref: Element | T | null","ref"],"sources":["../../src/shared/useForwardExpose.ts"],"sourcesContent":[],"mappings":";;;;AAKA,SAAgB,mBAAsD;CACpE,MAAM,WAAW,oBAAoB;CAErC,MAAM,aAAa,KAAyB;CAC5C,MAAM,iBAAiB,SAAsB,MAAM;AAGjD,SAAO,CAAC,SAAS,UAAW,EAAC,SAAS,WAAW,OAAO,IAAI,SAAS,GAAG,WAAW,OAAO,IAAI,qBAAqB,aAAa,WAAW;CAC5I,EAAC;CAIF,MAAMA,cAA0C,OAAO,OAAO,CAAE,GAAE,SAAS,QAAQ;CACnF,MAAMC,MAA2B,CAAE;AAGnC,MAAK,MAAM,OAAO,SAAS,MACzB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AAIJ,KAAI,OAAO,KAAK,YAAY,CAAC,SAAS,EACpC,MAAK,MAAM,OAAO,YAChB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,YAAa;CACzB,EAAC;AAKN,QAAO,eAAe,KAAK,OAAO;EAChC,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AACF,UAAS,UAAU;CAEnB,SAAS,WAAWC,OAAyB;AAC3C,aAAW,QAAQC;AAEnB,OAAKA,MACH;AAGF,SAAO,eAAe,KAAK,OAAO;GAChC,YAAY;GACZ,cAAc;GACd,KAAK,MAAOA,iBAAe,UAAUA,QAAMA,MAAI;EAChD,EAAC;
|
|
1
|
+
{"version":3,"file":"useForwardExpose.js","names":["localExpose: Record<string, any> | null","ret: Record<string, any>","ref: Element | T | null","ref"],"sources":["../../src/shared/useForwardExpose.ts"],"sourcesContent":[],"mappings":";;;;AAKA,SAAgB,mBAAsD;CACpE,MAAM,WAAW,oBAAoB;CAErC,MAAM,aAAa,KAAyB;CAC5C,MAAM,iBAAiB,SAAsB,MAAM;AAGjD,SAAO,CAAC,SAAS,UAAW,EAAC,SAAS,WAAW,OAAO,IAAI,SAAS,GAAG,WAAW,OAAO,IAAI,qBAAqB,aAAa,WAAW;CAC5I,EAAC;CAIF,MAAMA,cAA0C,OAAO,OAAO,CAAE,GAAE,SAAS,QAAQ;CACnF,MAAMC,MAA2B,CAAE;AAGnC,MAAK,MAAM,OAAO,SAAS,MACzB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AAIJ,KAAI,OAAO,KAAK,YAAY,CAAC,SAAS,EACpC,MAAK,MAAM,OAAO,YAChB,QAAO,eAAe,KAAK,KAAK;EAC9B,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,YAAa;CACzB,EAAC;AAKN,QAAO,eAAe,KAAK,OAAO;EAChC,YAAY;EACZ,cAAc;EACd,KAAK,MAAM,SAAS,MAAM;CAC3B,EAAC;AACF,UAAS,UAAU;CAEnB,SAAS,WAAWC,OAAyB;AAC3C,aAAW,QAAQC;AAEnB,OAAKA,MACH;AAGF,SAAO,eAAe,KAAK,OAAO;GAChC,YAAY;GACZ,cAAc;GACd,KAAK,MAAOA,iBAAe,UAAUA,QAAMA,MAAI;EAChD,EAAC;AAIF,QAAMA,iBAAe,aAAa,OAAO,OAAOA,OAAK,MAAM,EAAE;GAE3D,MAAM,eAAeA,MAAI,EAAE;GAC3B,MAAM,SAAS,OAAO,OAAO,CAAE,GAAE,IAAI;AAErC,QAAK,MAAM,OAAO,aAChB,QAAO,eAAe,QAAQ,KAAK;IACjC,YAAY;IACZ,cAAc;IACd,KAAK,MAAM,aAAa;GACzB,EAAC;AAGJ,YAAS,UAAU;EACpB;CACF;AAED,QAAO;EAAE;EAAY;EAAY;CAAgB;AAClD"}
|
|
@@ -5,6 +5,9 @@ const __vueuse_shared = require_rolldown_runtime.__toESM(require("@vueuse/shared
|
|
|
5
5
|
//#region src/shared/useGraceArea.ts
|
|
6
6
|
function useGraceArea(triggerElement, containerElement) {
|
|
7
7
|
const isPointerInTransit = (0, __vueuse_shared.refAutoReset)(false, 300);
|
|
8
|
+
(0, __vueuse_shared.tryOnScopeDispose)(() => {
|
|
9
|
+
isPointerInTransit.value = false;
|
|
10
|
+
});
|
|
8
11
|
const pointerGraceArea = (0, vue.ref)(null);
|
|
9
12
|
const pointerExit = (0, __vueuse_shared.createEventHook)();
|
|
10
13
|
function handleRemoveGraceArea() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGraceArea.cjs","names":["triggerElement: Ref<HTMLElement | undefined>","containerElement: Ref<HTMLElement | undefined>","event: PointerEvent","hoverTarget: HTMLElement","point: Point","rect: DOMRect","exitPoint: Point","exitSide: Side","paddedExitPoints: Point[]","polygon: Polygon","points: Readonly<Array<P>>","newPoints: Array<P>","a: Point","b: Point","upperHull: Array<P>","lowerHull: Array<P>"],"sources":["../../src/shared/useGraceArea.ts"],"sourcesContent":[],"mappings":";;;;;AAKA,SAAgB,aAAaA,gBAA8CC,kBAAgD;CAEzH,MAAM,qBAAqB,kCAAa,OAAO,IAAI;
|
|
1
|
+
{"version":3,"file":"useGraceArea.cjs","names":["triggerElement: Ref<HTMLElement | undefined>","containerElement: Ref<HTMLElement | undefined>","event: PointerEvent","hoverTarget: HTMLElement","point: Point","rect: DOMRect","exitPoint: Point","exitSide: Side","paddedExitPoints: Point[]","polygon: Polygon","points: Readonly<Array<P>>","newPoints: Array<P>","a: Point","b: Point","upperHull: Array<P>","lowerHull: Array<P>"],"sources":["../../src/shared/useGraceArea.ts"],"sourcesContent":[],"mappings":"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"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { ref, watchEffect } from "vue";
|
|
2
|
-
import { createEventHook, refAutoReset } from "@vueuse/shared";
|
|
2
|
+
import { createEventHook, refAutoReset, tryOnScopeDispose } from "@vueuse/shared";
|
|
3
3
|
|
|
4
4
|
//#region src/shared/useGraceArea.ts
|
|
5
5
|
function useGraceArea(triggerElement, containerElement) {
|
|
6
6
|
const isPointerInTransit = refAutoReset(false, 300);
|
|
7
|
+
tryOnScopeDispose(() => {
|
|
8
|
+
isPointerInTransit.value = false;
|
|
9
|
+
});
|
|
7
10
|
const pointerGraceArea = ref(null);
|
|
8
11
|
const pointerExit = createEventHook();
|
|
9
12
|
function handleRemoveGraceArea() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useGraceArea.js","names":["triggerElement: Ref<HTMLElement | undefined>","containerElement: Ref<HTMLElement | undefined>","event: PointerEvent","hoverTarget: HTMLElement","point: Point","rect: DOMRect","exitPoint: Point","exitSide: Side","paddedExitPoints: Point[]","polygon: Polygon","points: Readonly<Array<P>>","newPoints: Array<P>","a: Point","b: Point","upperHull: Array<P>","lowerHull: Array<P>"],"sources":["../../src/shared/useGraceArea.ts"],"sourcesContent":[],"mappings":";;;;AAKA,SAAgB,aAAaA,gBAA8CC,kBAAgD;CAEzH,MAAM,qBAAqB,aAAa,OAAO,IAAI;
|
|
1
|
+
{"version":3,"file":"useGraceArea.js","names":["triggerElement: Ref<HTMLElement | undefined>","containerElement: Ref<HTMLElement | undefined>","event: PointerEvent","hoverTarget: HTMLElement","point: Point","rect: DOMRect","exitPoint: Point","exitSide: Side","paddedExitPoints: Point[]","polygon: Polygon","points: Readonly<Array<P>>","newPoints: Array<P>","a: Point","b: Point","upperHull: Array<P>","lowerHull: Array<P>"],"sources":["../../src/shared/useGraceArea.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.6.
|
|
4
|
+
"version": "2.6.2",
|
|
5
5
|
"description": "Vue port for Radix UI Primitives.",
|
|
6
6
|
"author": "UnoVue Contributors (https://github.com/unovue)",
|
|
7
7
|
"license": "MIT",
|
|
@@ -91,13 +91,13 @@
|
|
|
91
91
|
"@tsconfig/node18": "^18.2.4",
|
|
92
92
|
"@types/jsdom": "^27.0.0",
|
|
93
93
|
"@types/node": "^24.0.13",
|
|
94
|
-
"@vitejs/plugin-vue": "^6.0.
|
|
94
|
+
"@vitejs/plugin-vue": "^6.0.3",
|
|
95
95
|
"@vitest/coverage-istanbul": "^3.2.4",
|
|
96
96
|
"@vue/test-utils": "^2.4.6",
|
|
97
97
|
"@vue/tsconfig": "^0.7.0",
|
|
98
98
|
"jsdom": "^26.1.0",
|
|
99
99
|
"tsdown": "^0.12.9",
|
|
100
|
-
"vite": "^7.
|
|
100
|
+
"vite": "^7.3.0",
|
|
101
101
|
"vitest": "^3.2.4",
|
|
102
102
|
"vitest-axe": "0.1.0",
|
|
103
103
|
"vitest-canvas-mock": "^0.3.3",
|
|
@@ -43,7 +43,12 @@ export const [injectAccordionItemContext, provideAccordionItemContext]
|
|
|
43
43
|
import { computed } from 'vue'
|
|
44
44
|
import { CollapsibleRoot } from '@/Collapsible'
|
|
45
45
|
|
|
46
|
-
const props =
|
|
46
|
+
const props = withDefaults(
|
|
47
|
+
defineProps<AccordionItemProps>(),
|
|
48
|
+
{
|
|
49
|
+
unmountOnHide: undefined,
|
|
50
|
+
},
|
|
51
|
+
)
|
|
47
52
|
|
|
48
53
|
defineSlots<{
|
|
49
54
|
default?: (props: {
|
|
@@ -115,7 +120,7 @@ function handleArrowKey(e: KeyboardEvent) {
|
|
|
115
120
|
:open="open"
|
|
116
121
|
:as="props.as"
|
|
117
122
|
:as-child="props.asChild"
|
|
118
|
-
:unmount-on-hide="rootContext.unmountOnHide.value"
|
|
123
|
+
:unmount-on-hide="props.unmountOnHide ?? rootContext.unmountOnHide.value"
|
|
119
124
|
@keydown.up.down.left.right.home.end="handleArrowKey"
|
|
120
125
|
>
|
|
121
126
|
<slot :open="open" />
|
|
@@ -327,9 +327,9 @@ export function useCalendar(props: UseCalendarProps) {
|
|
|
327
327
|
const endMonthYear = formatter.fullYear(endMonth, headingFormatOptions.value)
|
|
328
328
|
|
|
329
329
|
const content
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
330
|
+
= startMonthYear === endMonthYear
|
|
331
|
+
? `${startMonthName} - ${endMonthName} ${endMonthYear}`
|
|
332
|
+
: `${startMonthName} ${startMonthYear} - ${endMonthName} ${endMonthYear}`
|
|
333
333
|
|
|
334
334
|
return content
|
|
335
335
|
})
|
|
@@ -23,9 +23,10 @@ function handleClick() {
|
|
|
23
23
|
if (rootContext.inputElement.value) {
|
|
24
24
|
rootContext.inputElement.value.value = ''
|
|
25
25
|
rootContext.inputElement.value.focus()
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
if (rootContext.resetModelValueOnClear?.value) {
|
|
29
|
+
rootContext.modelValue.value = rootContext.multiple.value ? [] : null
|
|
29
30
|
}
|
|
30
31
|
}
|
|
31
32
|
</script>
|
|
@@ -3,7 +3,7 @@ import type { Ref } from 'vue'
|
|
|
3
3
|
import type { DismissableLayerEmits, DismissableLayerProps } from '@/DismissableLayer'
|
|
4
4
|
import type { PopperContentProps } from '@/Popper'
|
|
5
5
|
|
|
6
|
-
import { createContext, useForwardExpose, useForwardProps, useHideOthers } from '@/shared'
|
|
6
|
+
import { createContext, getActiveElement, useForwardExpose, useForwardProps, useHideOthers } from '@/shared'
|
|
7
7
|
import { useBodyScrollLock } from '@/shared/useBodyScrollLock'
|
|
8
8
|
|
|
9
9
|
export type ComboboxContentImplEmits = DismissableLayerEmits
|
|
@@ -80,7 +80,8 @@ onMounted(() => {
|
|
|
80
80
|
})
|
|
81
81
|
|
|
82
82
|
onUnmounted(() => {
|
|
83
|
-
|
|
83
|
+
const activeElement = getActiveElement()
|
|
84
|
+
if (isInputWithinContent.value && (!activeElement || activeElement === document.body)) {
|
|
84
85
|
rootContext.triggerElement.value?.focus()
|
|
85
86
|
}
|
|
86
87
|
})
|
|
@@ -96,10 +96,10 @@ watch(rootContext.modelValue, async () => {
|
|
|
96
96
|
resetSearchTerm()
|
|
97
97
|
}, { immediate: true, deep: true })
|
|
98
98
|
|
|
99
|
-
watch(rootContext.filterState, () => {
|
|
99
|
+
watch(rootContext.filterState, (_newValue, oldValue) => {
|
|
100
100
|
// we exclude virtualized list as the state would be constantly updated,
|
|
101
|
-
// and only change highlight when there
|
|
102
|
-
if (!rootContext.isVirtual.value &&
|
|
101
|
+
// and only change highlight when previously there were no items displayed
|
|
102
|
+
if (!rootContext.isVirtual.value && (oldValue.count === 0)) {
|
|
103
103
|
listboxContext.highlightFirstItem()
|
|
104
104
|
}
|
|
105
105
|
})
|
|
@@ -132,16 +132,15 @@ async function onOpenChange(val: boolean) {
|
|
|
132
132
|
await nextTick()
|
|
133
133
|
primitiveElement.value?.highlightSelected()
|
|
134
134
|
isUserInputted.value = true
|
|
135
|
+
inputElement.value?.focus()
|
|
135
136
|
}
|
|
136
137
|
else {
|
|
137
138
|
isUserInputted.value = false
|
|
139
|
+
setTimeout(() => {
|
|
140
|
+
if (!val && props.resetSearchTermOnBlur)
|
|
141
|
+
resetSearchTerm.trigger()
|
|
142
|
+
}, 1)
|
|
138
143
|
}
|
|
139
|
-
|
|
140
|
-
inputElement.value?.focus()
|
|
141
|
-
setTimeout(() => {
|
|
142
|
-
if (!val && props.resetSearchTermOnBlur)
|
|
143
|
-
resetSearchTerm.trigger()
|
|
144
|
-
}, 1)
|
|
145
144
|
}
|
|
146
145
|
|
|
147
146
|
const resetSearchTerm = createEventHook()
|
|
@@ -303,12 +303,15 @@ defineExpose({
|
|
|
303
303
|
<VisuallyHidden
|
|
304
304
|
:id="id"
|
|
305
305
|
as="input"
|
|
306
|
+
type="date"
|
|
306
307
|
feature="focusable"
|
|
307
308
|
tabindex="-1"
|
|
308
309
|
:value="modelValue ? modelValue.toString() : ''"
|
|
309
310
|
:name="name"
|
|
310
311
|
:disabled="disabled"
|
|
311
312
|
:required="required"
|
|
313
|
+
:max="maxValue"
|
|
314
|
+
:min="minValue"
|
|
312
315
|
@focus="Array.from(segmentElements)?.[0]?.focus()"
|
|
313
316
|
/>
|
|
314
317
|
</Primitive>
|
|
@@ -44,7 +44,7 @@ type DatePickerRootContext = {
|
|
|
44
44
|
closeOnSelect: Ref<boolean>
|
|
45
45
|
}
|
|
46
46
|
|
|
47
|
-
export type DatePickerRootProps = DateFieldRootProps & PopoverRootProps & Pick<CalendarRootProps, 'isDateDisabled' | 'pagedNavigation' | 'weekStartsOn' | 'weekdayFormat' | 'fixedWeeks' | 'numberOfMonths' | 'preventDeselect'> & {
|
|
47
|
+
export type DatePickerRootProps = Omit<DateFieldRootProps, 'as' | 'asChild'> & PopoverRootProps & Pick<CalendarRootProps, 'isDateDisabled' | 'pagedNavigation' | 'weekStartsOn' | 'weekdayFormat' | 'fixedWeeks' | 'numberOfMonths' | 'preventDeselect'> & {
|
|
48
48
|
/** Whether or not to close the popover on date select */
|
|
49
49
|
closeOnSelect?: boolean
|
|
50
50
|
}
|
|
@@ -49,7 +49,7 @@ type DateRangePickerRootContext = {
|
|
|
49
49
|
closeOnSelect?: Ref<boolean>
|
|
50
50
|
}
|
|
51
51
|
|
|
52
|
-
export type DateRangePickerRootProps = DateRangeFieldRootProps & PopoverRootProps & Pick<RangeCalendarRootProps, 'isDateDisabled' | 'pagedNavigation' | 'weekStartsOn' | 'weekdayFormat' | 'fixedWeeks' | 'numberOfMonths' | 'preventDeselect' | 'isDateUnavailable' | 'isDateHighlightable' | 'allowNonContiguousRanges' | 'fixedDate' | 'maximumDays'> & {
|
|
52
|
+
export type DateRangePickerRootProps = Omit<DateRangeFieldRootProps, 'as' | 'asChild'> & PopoverRootProps & Pick<RangeCalendarRootProps, 'isDateDisabled' | 'pagedNavigation' | 'weekStartsOn' | 'weekdayFormat' | 'fixedWeeks' | 'numberOfMonths' | 'preventDeselect' | 'isDateUnavailable' | 'isDateHighlightable' | 'allowNonContiguousRanges' | 'fixedDate' | 'maximumDays'> & {
|
|
53
53
|
/** Whether or not to close the popover on range select */
|
|
54
54
|
closeOnSelect?: boolean
|
|
55
55
|
}
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
reactive,
|
|
12
12
|
watchEffect,
|
|
13
13
|
} from 'vue'
|
|
14
|
-
import { useForwardExpose } from '@/shared'
|
|
14
|
+
import { isNullish, useForwardExpose } from '@/shared'
|
|
15
15
|
|
|
16
16
|
export interface DismissableLayerProps extends PrimitiveProps {
|
|
17
17
|
/**
|
|
@@ -56,6 +56,7 @@ export type DismissableLayerPrivateEmits = DismissableLayerEmits & {
|
|
|
56
56
|
export const context = reactive({
|
|
57
57
|
layersRoot: new Set<HTMLElement>(),
|
|
58
58
|
layersWithOutsidePointerEventsDisabled: new Set<HTMLElement>(),
|
|
59
|
+
originalBodyPointerEvents: undefined as string | undefined,
|
|
59
60
|
branches: new Set<HTMLElement>(),
|
|
60
61
|
})
|
|
61
62
|
</script>
|
|
@@ -137,13 +138,12 @@ onKeyStroke('Escape', (event) => {
|
|
|
137
138
|
emits('dismiss')
|
|
138
139
|
})
|
|
139
140
|
|
|
140
|
-
let originalBodyPointerEvents: string
|
|
141
141
|
watchEffect((cleanupFn) => {
|
|
142
142
|
if (!layerElement.value)
|
|
143
143
|
return
|
|
144
144
|
if (props.disableOutsidePointerEvents) {
|
|
145
145
|
if (context.layersWithOutsidePointerEventsDisabled.size === 0) {
|
|
146
|
-
originalBodyPointerEvents = ownerDocument.value.body.style.pointerEvents
|
|
146
|
+
context.originalBodyPointerEvents = ownerDocument.value.body.style.pointerEvents
|
|
147
147
|
ownerDocument.value.body.style.pointerEvents = 'none'
|
|
148
148
|
}
|
|
149
149
|
context.layersWithOutsidePointerEventsDisabled.add(layerElement.value)
|
|
@@ -154,8 +154,9 @@ watchEffect((cleanupFn) => {
|
|
|
154
154
|
if (
|
|
155
155
|
props.disableOutsidePointerEvents
|
|
156
156
|
&& context.layersWithOutsidePointerEventsDisabled.size === 1
|
|
157
|
+
&& !isNullish(context.originalBodyPointerEvents)
|
|
157
158
|
) {
|
|
158
|
-
ownerDocument.value.body.style.pointerEvents = originalBodyPointerEvents
|
|
159
|
+
ownerDocument.value.body.style.pointerEvents = context.originalBodyPointerEvents
|
|
159
160
|
}
|
|
160
161
|
})
|
|
161
162
|
})
|
|
@@ -5,7 +5,7 @@ export interface ListboxVirtualizerProps<T extends AcceptableValue = AcceptableV
|
|
|
5
5
|
/** Number of items rendered outside the visible area */
|
|
6
6
|
overscan?: number
|
|
7
7
|
/** Estimated size (in px) of each item */
|
|
8
|
-
estimateSize?: number
|
|
8
|
+
estimateSize?: number | ((index: number) => number)
|
|
9
9
|
/** Text content for each item to achieve type-ahead feature */
|
|
10
10
|
textContent?: (option: T) => string
|
|
11
11
|
}
|
|
@@ -64,7 +64,10 @@ const virtualizer = useVirtualizer(
|
|
|
64
64
|
get scrollPaddingEnd() { return padding.value.end },
|
|
65
65
|
get count() { return props.options.length },
|
|
66
66
|
get horizontal() { return rootContext.orientation.value === 'horizontal' },
|
|
67
|
-
estimateSize() {
|
|
67
|
+
estimateSize(index) {
|
|
68
|
+
if (typeof props.estimateSize === 'function')
|
|
69
|
+
return props.estimateSize(index)
|
|
70
|
+
|
|
68
71
|
return props.estimateSize ?? 28
|
|
69
72
|
},
|
|
70
73
|
getScrollElement() { return parentEl.value },
|
|
@@ -103,7 +103,7 @@ function handlePointerDownOutside(ev: PointerDownOutsideEvent) {
|
|
|
103
103
|
i.ref.contains(target),
|
|
104
104
|
)
|
|
105
105
|
const isRootViewport
|
|
106
|
-
|
|
106
|
+
= menuContext.isRootMenu && menuContext.viewport.value?.contains(target)
|
|
107
107
|
|
|
108
108
|
if (isTrigger || isRootViewport || !menuContext.isRootMenu)
|
|
109
109
|
ev.preventDefault()
|
|
@@ -19,7 +19,7 @@ export interface NumberFieldRootProps extends PrimitiveProps, FormFieldProps {
|
|
|
19
19
|
stepSnapping?: boolean
|
|
20
20
|
/** Formatting options for the value displayed in the number field. This also affects what characters are allowed to be typed by the user. */
|
|
21
21
|
formatOptions?: Intl.NumberFormatOptions
|
|
22
|
-
/** The locale to use for formatting
|
|
22
|
+
/** The locale to use for formatting and currencies */
|
|
23
23
|
locale?: string
|
|
24
24
|
/** When `true`, prevents the user from interacting with the Number Field. */
|
|
25
25
|
disabled?: boolean
|
|
@@ -98,6 +98,12 @@ function handleFocus(event: FocusEvent) {
|
|
|
98
98
|
|
|
99
99
|
if (!target.value)
|
|
100
100
|
target.placeholder = ''
|
|
101
|
+
|
|
102
|
+
// #2266, check again after DOM flushes
|
|
103
|
+
setTimeout(() => {
|
|
104
|
+
if (!target.value)
|
|
105
|
+
target.placeholder = ''
|
|
106
|
+
})
|
|
101
107
|
}
|
|
102
108
|
|
|
103
109
|
function handleBlur(event: FocusEvent) {
|
|
@@ -13,8 +13,8 @@ export type PinInputType = 'text' | 'number'
|
|
|
13
13
|
export type PinInputValue<Type extends PinInputType> = [Type] extends ['number'] ? number[] : string[]
|
|
14
14
|
|
|
15
15
|
// provide the mixed arrays because the `type` is dynamic in the context
|
|
16
|
-
export type PinInputContextValue<Type extends PinInputType = 'text'>
|
|
17
|
-
Type extends 'number'
|
|
16
|
+
export type PinInputContextValue<Type extends PinInputType = 'text'>
|
|
17
|
+
= Type extends 'number'
|
|
18
18
|
? Type extends 'string'
|
|
19
19
|
? string[] | number[]
|
|
20
20
|
: number[]
|
|
@@ -29,7 +29,7 @@ export interface PinInputRootProps<Type extends PinInputType = 'text'> extends P
|
|
|
29
29
|
/** The controlled checked state of the pin input. Can be binded as `v-model`. */
|
|
30
30
|
modelValue?: PinInputValue<Type> | null
|
|
31
31
|
/** The default value of the pin inputs when it is initially rendered. Use when you do not need to control its checked state. */
|
|
32
|
-
defaultValue?: PinInputValue<Type>
|
|
32
|
+
defaultValue?: PinInputValue<Type>
|
|
33
33
|
/** The placeholder character to use for empty pin-inputs. */
|
|
34
34
|
placeholder?: string
|
|
35
35
|
/** When `true`, pin inputs will be treated as password. */
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Ref } from 'vue'
|
|
2
|
-
import { useStateMachine } from '@/shared'
|
|
3
2
|
import { defaultWindow } from '@vueuse/core'
|
|
4
3
|
import { isClient } from '@vueuse/shared'
|
|
5
4
|
import { computed, nextTick, onUnmounted, ref, watch } from 'vue'
|
|
5
|
+
import { useStateMachine } from '@/shared'
|
|
6
6
|
|
|
7
7
|
export function usePresence(
|
|
8
8
|
present: Ref<boolean>,
|
|
@@ -2,25 +2,25 @@ import type { Component, PropType } from 'vue'
|
|
|
2
2
|
import { defineComponent, h } from 'vue'
|
|
3
3
|
import { Slot } from './Slot'
|
|
4
4
|
|
|
5
|
-
export type AsTag
|
|
6
|
-
| 'a'
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
5
|
+
export type AsTag
|
|
6
|
+
= | 'a'
|
|
7
|
+
| 'button'
|
|
8
|
+
| 'div'
|
|
9
|
+
| 'form'
|
|
10
|
+
| 'h2'
|
|
11
|
+
| 'h3'
|
|
12
|
+
| 'img'
|
|
13
|
+
| 'input'
|
|
14
|
+
| 'label'
|
|
15
|
+
| 'li'
|
|
16
|
+
| 'nav'
|
|
17
|
+
| 'ol'
|
|
18
|
+
| 'p'
|
|
19
|
+
| 'span'
|
|
20
|
+
| 'svg'
|
|
21
|
+
| 'ul'
|
|
22
|
+
| 'template'
|
|
23
|
+
| ({} & string) // any other string
|
|
24
24
|
|
|
25
25
|
export interface PrimitiveProps {
|
|
26
26
|
/**
|
|
@@ -119,7 +119,13 @@ function changeDate(e: MouseEvent | KeyboardEvent, date: DateValue) {
|
|
|
119
119
|
}
|
|
120
120
|
}
|
|
121
121
|
|
|
122
|
-
if (
|
|
122
|
+
if (
|
|
123
|
+
rootContext.startValue.value
|
|
124
|
+
&& rootContext.endValue.value
|
|
125
|
+
&& isSameDay(rootContext.startValue.value, rootContext.endValue.value)
|
|
126
|
+
&& isSameDay(rootContext.startValue.value, date)
|
|
127
|
+
&& !rootContext.preventDeselect.value
|
|
128
|
+
) {
|
|
123
129
|
rootContext.startValue.value = undefined
|
|
124
130
|
rootContext.endValue.value = undefined
|
|
125
131
|
rootContext.onPlaceholderChange(date)
|
|
@@ -236,7 +242,7 @@ function handleArrowKey(e: KeyboardEvent) {
|
|
|
236
242
|
role="button"
|
|
237
243
|
:aria-label="labelText"
|
|
238
244
|
data-reka-calendar-cell-trigger
|
|
239
|
-
:aria-
|
|
245
|
+
:aria-pressed="isSelectedDate && (allowNonContiguousRanges || !isUnavailable) ? true : undefined"
|
|
240
246
|
:aria-disabled="isDisabled || isUnavailable ? true : undefined"
|
|
241
247
|
:data-highlighted="isHighlighted && (allowNonContiguousRanges || !isUnavailable) ? '' : undefined"
|
|
242
248
|
:data-selection-start="isSelectionStart ? true : undefined"
|
|
@@ -56,10 +56,10 @@ type RangeCalendarRootContext = {
|
|
|
56
56
|
prevPage: (prevPageFunc?: (date: DateValue) => DateValue) => void
|
|
57
57
|
nextPage: (nextPageFunc?: (date: DateValue) => DateValue) => void
|
|
58
58
|
isNextButtonDisabled: (
|
|
59
|
-
nextPageFunc?: (date: DateValue) => DateValue
|
|
59
|
+
nextPageFunc?: (date: DateValue) => DateValue,
|
|
60
60
|
) => boolean
|
|
61
61
|
isPrevButtonDisabled: (
|
|
62
|
-
prevPageFunc?: (date: DateValue) => DateValue
|
|
62
|
+
prevPageFunc?: (date: DateValue) => DateValue,
|
|
63
63
|
) => boolean
|
|
64
64
|
formatter: Formatter
|
|
65
65
|
dir: Ref<Direction>
|
|
@@ -352,35 +352,18 @@ watch([startValue, endValue], ([_startValue, _endValue]) => {
|
|
|
352
352
|
|
|
353
353
|
isEditing.value = true
|
|
354
354
|
if (_endValue && _startValue) {
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
end: _startValue.copy(),
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
else {
|
|
362
|
-
modelValue.value = {
|
|
363
|
-
start: _startValue.copy(),
|
|
364
|
-
end: _endValue.copy(),
|
|
365
|
-
}
|
|
366
|
-
}
|
|
355
|
+
const nextValue = isBefore(_endValue, _startValue)
|
|
356
|
+
? { start: _endValue.copy(), end: _startValue.copy() }
|
|
357
|
+
: { start: _startValue.copy(), end: _endValue.copy() }
|
|
367
358
|
|
|
359
|
+
modelValue.value = { start: nextValue.start, end: nextValue.end }
|
|
368
360
|
isEditing.value = false
|
|
369
|
-
validModelValue.value = { start:
|
|
361
|
+
validModelValue.value = { start: nextValue.start.copy(), end: nextValue.end.copy() }
|
|
370
362
|
}
|
|
371
363
|
else {
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
end: undefined,
|
|
376
|
-
}
|
|
377
|
-
}
|
|
378
|
-
else {
|
|
379
|
-
modelValue.value = {
|
|
380
|
-
start: _endValue?.copy(),
|
|
381
|
-
end: undefined,
|
|
382
|
-
}
|
|
383
|
-
}
|
|
364
|
+
modelValue.value = _startValue
|
|
365
|
+
? { start: _startValue.copy(), end: undefined }
|
|
366
|
+
: { start: _endValue?.copy(), end: undefined }
|
|
384
367
|
}
|
|
385
368
|
})
|
|
386
369
|
|
|
@@ -131,7 +131,7 @@ export function useRangeCalendarState(props: UseRangeCalendarProps) {
|
|
|
131
131
|
if (props.maximumDays?.value && !props.end.value) {
|
|
132
132
|
// Determine the direction of selection and limit to maximum days
|
|
133
133
|
const cappedEnd = isStartBeforeFocused
|
|
134
|
-
? start.add({ days: props.maximumDays.value })
|
|
134
|
+
? start.add({ days: props.maximumDays.value - 1 })
|
|
135
135
|
: start.subtract({ days: props.maximumDays.value })
|
|
136
136
|
|
|
137
137
|
return {
|