reka-ui 2.0.2 → 2.1.1

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.
Files changed (95) hide show
  1. package/dist/AlertDialog/AlertDialogRoot.cjs +2 -2
  2. package/dist/AlertDialog/AlertDialogRoot.cjs.map +1 -1
  3. package/dist/AlertDialog/AlertDialogRoot.js +3 -3
  4. package/dist/AlertDialog/AlertDialogRoot.js.map +1 -1
  5. package/dist/Calendar/CalendarCellTrigger.cjs +7 -5
  6. package/dist/Calendar/CalendarCellTrigger.cjs.map +1 -1
  7. package/dist/Calendar/CalendarCellTrigger.js +7 -5
  8. package/dist/Calendar/CalendarCellTrigger.js.map +1 -1
  9. package/dist/Combobox/ComboboxItem.cjs +0 -3
  10. package/dist/Combobox/ComboboxItem.cjs.map +1 -1
  11. package/dist/Combobox/ComboboxItem.js +1 -3
  12. package/dist/Combobox/ComboboxItem.js.map +1 -1
  13. package/dist/Combobox/ComboboxRoot.cjs +9 -1
  14. package/dist/Combobox/ComboboxRoot.cjs.map +1 -1
  15. package/dist/Combobox/ComboboxRoot.js +10 -2
  16. package/dist/Combobox/ComboboxRoot.js.map +1 -1
  17. package/dist/HoverCard/HoverCardRoot.cjs.map +1 -1
  18. package/dist/HoverCard/HoverCardRoot.js.map +1 -1
  19. package/dist/NavigationMenu/NavigationMenuSub.cjs +11 -1
  20. package/dist/NavigationMenu/NavigationMenuSub.cjs.map +1 -1
  21. package/dist/NavigationMenu/NavigationMenuSub.js +12 -2
  22. package/dist/NavigationMenu/NavigationMenuSub.js.map +1 -1
  23. package/dist/NavigationMenu/NavigationMenuViewport.cjs +2 -3
  24. package/dist/NavigationMenu/NavigationMenuViewport.cjs.map +1 -1
  25. package/dist/NavigationMenu/NavigationMenuViewport.js +2 -3
  26. package/dist/NavigationMenu/NavigationMenuViewport.js.map +1 -1
  27. package/dist/NumberField/NumberFieldInput.cjs +2 -0
  28. package/dist/NumberField/NumberFieldInput.cjs.map +1 -1
  29. package/dist/NumberField/NumberFieldInput.js +2 -0
  30. package/dist/NumberField/NumberFieldInput.js.map +1 -1
  31. package/dist/NumberField/NumberFieldRoot.cjs +5 -2
  32. package/dist/NumberField/NumberFieldRoot.cjs.map +1 -1
  33. package/dist/NumberField/NumberFieldRoot.js +5 -2
  34. package/dist/NumberField/NumberFieldRoot.js.map +1 -1
  35. package/dist/RangeCalendar/RangeCalendarCellTrigger.cjs +6 -4
  36. package/dist/RangeCalendar/RangeCalendarCellTrigger.cjs.map +1 -1
  37. package/dist/RangeCalendar/RangeCalendarCellTrigger.js +6 -4
  38. package/dist/RangeCalendar/RangeCalendarCellTrigger.js.map +1 -1
  39. package/dist/RangeCalendar/RangeCalendarRoot.cjs +3 -3
  40. package/dist/RangeCalendar/RangeCalendarRoot.cjs.map +1 -1
  41. package/dist/RangeCalendar/RangeCalendarRoot.js +3 -3
  42. package/dist/RangeCalendar/RangeCalendarRoot.js.map +1 -1
  43. package/dist/Select/SelectContentImpl.cjs +15 -5
  44. package/dist/Select/SelectContentImpl.cjs.map +1 -1
  45. package/dist/Select/SelectContentImpl.js +15 -5
  46. package/dist/Select/SelectContentImpl.js.map +1 -1
  47. package/dist/Slider/SliderHorizontal.cjs +19 -9
  48. package/dist/Slider/SliderHorizontal.cjs.map +1 -1
  49. package/dist/Slider/SliderHorizontal.js +20 -10
  50. package/dist/Slider/SliderHorizontal.js.map +1 -1
  51. package/dist/Slider/SliderRoot.cjs +5 -3
  52. package/dist/Slider/SliderRoot.cjs.map +1 -1
  53. package/dist/Slider/SliderRoot.js +5 -3
  54. package/dist/Slider/SliderRoot.js.map +1 -1
  55. package/dist/Slider/SliderThumb.cjs +2 -2
  56. package/dist/Slider/SliderThumb.cjs.map +1 -1
  57. package/dist/Slider/SliderThumb.js +2 -2
  58. package/dist/Slider/SliderThumb.js.map +1 -1
  59. package/dist/Slider/SliderThumbImpl.cjs +7 -1
  60. package/dist/Slider/SliderThumbImpl.cjs.map +1 -1
  61. package/dist/Slider/SliderThumbImpl.js +7 -1
  62. package/dist/Slider/SliderThumbImpl.js.map +1 -1
  63. package/dist/Slider/SliderVertical.cjs +19 -9
  64. package/dist/Slider/SliderVertical.cjs.map +1 -1
  65. package/dist/Slider/SliderVertical.js +20 -10
  66. package/dist/Slider/SliderVertical.js.map +1 -1
  67. package/dist/TagsInput/TagsInputItemDelete.cjs +2 -1
  68. package/dist/TagsInput/TagsInputItemDelete.cjs.map +1 -1
  69. package/dist/TagsInput/TagsInputItemDelete.js +2 -1
  70. package/dist/TagsInput/TagsInputItemDelete.js.map +1 -1
  71. package/dist/Toast/ToastClose.cjs +2 -2
  72. package/dist/Toast/ToastClose.cjs.map +1 -1
  73. package/dist/Toast/ToastClose.js +2 -2
  74. package/dist/Toast/ToastClose.js.map +1 -1
  75. package/dist/Toast/ToastRoot.cjs +3 -0
  76. package/dist/Toast/ToastRoot.cjs.map +1 -1
  77. package/dist/Toast/ToastRoot.js +3 -0
  78. package/dist/Toast/ToastRoot.js.map +1 -1
  79. package/dist/Toast/ToastRootImpl.cjs +6 -3
  80. package/dist/Toast/ToastRootImpl.cjs.map +1 -1
  81. package/dist/Toast/ToastRootImpl.js +6 -3
  82. package/dist/Toast/ToastRootImpl.js.map +1 -1
  83. package/dist/Toggle/Toggle.cjs +6 -1
  84. package/dist/Toggle/Toggle.cjs.map +1 -1
  85. package/dist/Toggle/Toggle.js +6 -1
  86. package/dist/Toggle/Toggle.js.map +1 -1
  87. package/dist/ToggleGroup/ToggleGroupItem.cjs +2 -2
  88. package/dist/ToggleGroup/ToggleGroupItem.cjs.map +1 -1
  89. package/dist/ToggleGroup/ToggleGroupItem.js +3 -3
  90. package/dist/ToggleGroup/ToggleGroupItem.js.map +1 -1
  91. package/dist/date.d.ts +2 -0
  92. package/dist/index.cjs +4 -4
  93. package/dist/index.d.ts +59 -16
  94. package/dist/index.js +2 -2
  95. package/package.json +2 -2
@@ -49,7 +49,12 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
49
49
  onClick: togglePressed
50
50
  }, {
51
51
  default: vue.withCtx(() => [
52
- vue.renderSlot(_ctx.$slots, "default", { modelValue: vue.unref(modelValue) }),
52
+ vue.renderSlot(_ctx.$slots, "default", {
53
+ modelValue: vue.unref(modelValue),
54
+ disabled: _ctx.disabled,
55
+ pressed: vue.unref(modelValue),
56
+ state: dataState.value
57
+ }),
53
58
  vue.unref(isFormControl) && _ctx.name && !vue.unref(toggleGroupContext) ? (vue.openBlock(), vue.createBlock(VisuallyHidden_VisuallyHiddenInput._sfc_main, {
54
59
  key: 0,
55
60
  type: "checkbox",
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.cjs","sources":["../../src/Toggle/Toggle.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { PrimitiveProps } from '@/Primitive'\nimport { useFormControl, useForwardExpose } from '@/shared'\nimport VisuallyHiddenInput from '@/VisuallyHidden/VisuallyHiddenInput.vue'\nimport type { FormFieldProps } from '@/shared/types'\nimport { injectToggleGroupRootContext } from '@/ToggleGroup/ToggleGroupRoot.vue'\n\nexport type ToggleEmits = {\n /** Event handler called when the value of the toggle changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport type DataState = 'on' | 'off'\n\nexport interface ToggleProps extends PrimitiveProps, FormFieldProps {\n /**\n * The pressed state of the toggle when it is initially rendered. Use when you do not need to control its open state.\n */\n defaultValue?: boolean\n /**\n * The controlled pressed state of the toggle. Can be bind as `v-model`.\n */\n modelValue?: boolean | null\n /**\n * When `true`, prevents the user from interacting with the toggle.\n */\n disabled?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { type Ref, computed } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleProps>(), {\n modelValue: undefined,\n disabled: false,\n as: 'button',\n})\n\nconst emits = defineEmits<ToggleEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current pressed state */\n modelValue: typeof modelValue.value\n }) => any\n}>()\n\nconst { forwardRef, currentElement } = useForwardExpose()\nconst toggleGroupContext = injectToggleGroupRootContext(null)\n\nconst modelValue = useVModel(props, 'modelValue', emits, {\n defaultValue: props.defaultValue,\n passive: (props.modelValue === undefined) as false,\n}) as Ref<boolean>\n\nfunction togglePressed() {\n modelValue.value = !modelValue.value\n}\n\nconst dataState = computed<DataState>(() => {\n return modelValue.value ? 'on' : 'off'\n})\n\nconst isFormControl = useFormControl(currentElement)\n</script>\n\n<template>\n <Primitive\n :ref=\"forwardRef\"\n :type=\"as === 'button' ? 'button' : undefined\"\n :as-child=\"props.asChild\"\n :as=\"as\"\n :aria-pressed=\"modelValue\"\n :data-state=\"dataState\"\n :data-disabled=\"disabled ? '' : undefined\"\n :disabled=\"disabled\"\n @click=\"togglePressed\"\n >\n <slot :model-value=\"modelValue\" />\n\n <VisuallyHiddenInput\n v-if=\"isFormControl && name && !toggleGroupContext\"\n type=\"checkbox\"\n :name=\"name\"\n :value=\"modelValue\"\n :required=\"required\"\n />\n </Primitive>\n</template>\n"],"names":["useForwardExpose","injectToggleGroupRootContext","useVModel","computed","useFormControl"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAmCA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAMd,IAAA,MAAM,KAAQ,GAAA,MAAA;AASd,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAIA,wCAAiB,EAAA;AACxD,IAAM,MAAA,kBAAA,GAAqBC,yDAA6B,IAAI,CAAA;AAE5D,IAAA,MAAM,UAAa,GAAAC,cAAA,CAAU,KAAO,EAAA,YAAA,EAAc,KAAO,EAAA;AAAA,MACvD,cAAc,KAAM,CAAA,YAAA;AAAA,MACpB,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAA,SAAS,aAAgB,GAAA;AACvB,MAAW,UAAA,CAAA,KAAA,GAAQ,CAAC,UAAW,CAAA,KAAA;AAAA;AAGjC,IAAM,MAAA,SAAA,GAAYC,aAAoB,MAAM;AAC1C,MAAO,OAAA,UAAA,CAAW,QAAQ,IAAO,GAAA,KAAA;AAAA,KAClC,CAAA;AAED,IAAM,MAAA,aAAA,GAAgBC,qCAAe,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Toggle.cjs","sources":["../../src/Toggle/Toggle.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { PrimitiveProps } from '@/Primitive'\nimport { useFormControl, useForwardExpose } from '@/shared'\nimport VisuallyHiddenInput from '@/VisuallyHidden/VisuallyHiddenInput.vue'\nimport type { FormFieldProps } from '@/shared/types'\nimport { injectToggleGroupRootContext } from '@/ToggleGroup/ToggleGroupRoot.vue'\n\nexport type ToggleEmits = {\n /** Event handler called when the value of the toggle changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport type DataState = 'on' | 'off'\n\nexport interface ToggleProps extends PrimitiveProps, FormFieldProps {\n /**\n * The pressed state of the toggle when it is initially rendered. Use when you do not need to control its open state.\n */\n defaultValue?: boolean\n /**\n * The controlled pressed state of the toggle. Can be bind as `v-model`.\n */\n modelValue?: boolean | null\n /**\n * When `true`, prevents the user from interacting with the toggle.\n */\n disabled?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { type Ref, computed } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleProps>(), {\n modelValue: undefined,\n disabled: false,\n as: 'button',\n})\n\nconst emits = defineEmits<ToggleEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current value */\n modelValue: typeof modelValue.value\n /** Current state */\n state: typeof dataState.value\n /** Current pressed state */\n pressed: typeof modelValue.value\n /** Current disabled state */\n disabled: boolean\n }) => any\n}>()\n\nconst { forwardRef, currentElement } = useForwardExpose()\nconst toggleGroupContext = injectToggleGroupRootContext(null)\n\nconst modelValue = useVModel(props, 'modelValue', emits, {\n defaultValue: props.defaultValue,\n passive: (props.modelValue === undefined) as false,\n}) as Ref<boolean>\n\nfunction togglePressed() {\n modelValue.value = !modelValue.value\n}\n\nconst dataState = computed<DataState>(() => {\n return modelValue.value ? 'on' : 'off'\n})\n\nconst isFormControl = useFormControl(currentElement)\n</script>\n\n<template>\n <Primitive\n :ref=\"forwardRef\"\n :type=\"as === 'button' ? 'button' : undefined\"\n :as-child=\"props.asChild\"\n :as=\"as\"\n :aria-pressed=\"modelValue\"\n :data-state=\"dataState\"\n :data-disabled=\"disabled ? '' : undefined\"\n :disabled=\"disabled\"\n @click=\"togglePressed\"\n >\n <slot\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :pressed=\"modelValue\"\n :state=\"dataState\"\n />\n\n <VisuallyHiddenInput\n v-if=\"isFormControl && name && !toggleGroupContext\"\n type=\"checkbox\"\n :name=\"name\"\n :value=\"modelValue\"\n :required=\"required\"\n />\n </Primitive>\n</template>\n"],"names":["useForwardExpose","injectToggleGroupRootContext","useVModel","computed","useFormControl"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAmCA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAMd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAed,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAIA,wCAAiB,EAAA;AACxD,IAAM,MAAA,kBAAA,GAAqBC,yDAA6B,IAAI,CAAA;AAE5D,IAAA,MAAM,UAAa,GAAAC,cAAA,CAAU,KAAO,EAAA,YAAA,EAAc,KAAO,EAAA;AAAA,MACvD,cAAc,KAAM,CAAA,YAAA;AAAA,MACpB,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAA,SAAS,aAAgB,GAAA;AACvB,MAAW,UAAA,CAAA,KAAA,GAAQ,CAAC,UAAW,CAAA,KAAA;AAAA;AAGjC,IAAM,MAAA,SAAA,GAAYC,aAAoB,MAAM;AAC1C,MAAO,OAAA,UAAA,CAAW,QAAQ,IAAO,GAAA,KAAA;AAAA,KAClC,CAAA;AAED,IAAM,MAAA,aAAA,GAAgBC,qCAAe,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -47,7 +47,12 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
47
47
  onClick: togglePressed
48
48
  }, {
49
49
  default: withCtx(() => [
50
- renderSlot(_ctx.$slots, "default", { modelValue: unref(modelValue) }),
50
+ renderSlot(_ctx.$slots, "default", {
51
+ modelValue: unref(modelValue),
52
+ disabled: _ctx.disabled,
53
+ pressed: unref(modelValue),
54
+ state: dataState.value
55
+ }),
51
56
  unref(isFormControl) && _ctx.name && !unref(toggleGroupContext) ? (openBlock(), createBlock(_sfc_main$1, {
52
57
  key: 0,
53
58
  type: "checkbox",
@@ -1 +1 @@
1
- {"version":3,"file":"Toggle.js","sources":["../../src/Toggle/Toggle.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { PrimitiveProps } from '@/Primitive'\nimport { useFormControl, useForwardExpose } from '@/shared'\nimport VisuallyHiddenInput from '@/VisuallyHidden/VisuallyHiddenInput.vue'\nimport type { FormFieldProps } from '@/shared/types'\nimport { injectToggleGroupRootContext } from '@/ToggleGroup/ToggleGroupRoot.vue'\n\nexport type ToggleEmits = {\n /** Event handler called when the value of the toggle changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport type DataState = 'on' | 'off'\n\nexport interface ToggleProps extends PrimitiveProps, FormFieldProps {\n /**\n * The pressed state of the toggle when it is initially rendered. Use when you do not need to control its open state.\n */\n defaultValue?: boolean\n /**\n * The controlled pressed state of the toggle. Can be bind as `v-model`.\n */\n modelValue?: boolean | null\n /**\n * When `true`, prevents the user from interacting with the toggle.\n */\n disabled?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { type Ref, computed } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleProps>(), {\n modelValue: undefined,\n disabled: false,\n as: 'button',\n})\n\nconst emits = defineEmits<ToggleEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current pressed state */\n modelValue: typeof modelValue.value\n }) => any\n}>()\n\nconst { forwardRef, currentElement } = useForwardExpose()\nconst toggleGroupContext = injectToggleGroupRootContext(null)\n\nconst modelValue = useVModel(props, 'modelValue', emits, {\n defaultValue: props.defaultValue,\n passive: (props.modelValue === undefined) as false,\n}) as Ref<boolean>\n\nfunction togglePressed() {\n modelValue.value = !modelValue.value\n}\n\nconst dataState = computed<DataState>(() => {\n return modelValue.value ? 'on' : 'off'\n})\n\nconst isFormControl = useFormControl(currentElement)\n</script>\n\n<template>\n <Primitive\n :ref=\"forwardRef\"\n :type=\"as === 'button' ? 'button' : undefined\"\n :as-child=\"props.asChild\"\n :as=\"as\"\n :aria-pressed=\"modelValue\"\n :data-state=\"dataState\"\n :data-disabled=\"disabled ? '' : undefined\"\n :disabled=\"disabled\"\n @click=\"togglePressed\"\n >\n <slot :model-value=\"modelValue\" />\n\n <VisuallyHiddenInput\n v-if=\"isFormControl && name && !toggleGroupContext\"\n type=\"checkbox\"\n :name=\"name\"\n :value=\"modelValue\"\n :required=\"required\"\n />\n </Primitive>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAmCA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAMd,IAAA,MAAM,KAAQ,GAAA,MAAA;AASd,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAI,gBAAiB,EAAA;AACxD,IAAM,MAAA,kBAAA,GAAqB,6BAA6B,IAAI,CAAA;AAE5D,IAAA,MAAM,UAAa,GAAA,SAAA,CAAU,KAAO,EAAA,YAAA,EAAc,KAAO,EAAA;AAAA,MACvD,cAAc,KAAM,CAAA,YAAA;AAAA,MACpB,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAA,SAAS,aAAgB,GAAA;AACvB,MAAW,UAAA,CAAA,KAAA,GAAQ,CAAC,UAAW,CAAA,KAAA;AAAA;AAGjC,IAAM,MAAA,SAAA,GAAY,SAAoB,MAAM;AAC1C,MAAO,OAAA,UAAA,CAAW,QAAQ,IAAO,GAAA,KAAA;AAAA,KAClC,CAAA;AAED,IAAM,MAAA,aAAA,GAAgB,eAAe,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Toggle.js","sources":["../../src/Toggle/Toggle.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { PrimitiveProps } from '@/Primitive'\nimport { useFormControl, useForwardExpose } from '@/shared'\nimport VisuallyHiddenInput from '@/VisuallyHidden/VisuallyHiddenInput.vue'\nimport type { FormFieldProps } from '@/shared/types'\nimport { injectToggleGroupRootContext } from '@/ToggleGroup/ToggleGroupRoot.vue'\n\nexport type ToggleEmits = {\n /** Event handler called when the value of the toggle changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport type DataState = 'on' | 'off'\n\nexport interface ToggleProps extends PrimitiveProps, FormFieldProps {\n /**\n * The pressed state of the toggle when it is initially rendered. Use when you do not need to control its open state.\n */\n defaultValue?: boolean\n /**\n * The controlled pressed state of the toggle. Can be bind as `v-model`.\n */\n modelValue?: boolean | null\n /**\n * When `true`, prevents the user from interacting with the toggle.\n */\n disabled?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { type Ref, computed } from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleProps>(), {\n modelValue: undefined,\n disabled: false,\n as: 'button',\n})\n\nconst emits = defineEmits<ToggleEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current value */\n modelValue: typeof modelValue.value\n /** Current state */\n state: typeof dataState.value\n /** Current pressed state */\n pressed: typeof modelValue.value\n /** Current disabled state */\n disabled: boolean\n }) => any\n}>()\n\nconst { forwardRef, currentElement } = useForwardExpose()\nconst toggleGroupContext = injectToggleGroupRootContext(null)\n\nconst modelValue = useVModel(props, 'modelValue', emits, {\n defaultValue: props.defaultValue,\n passive: (props.modelValue === undefined) as false,\n}) as Ref<boolean>\n\nfunction togglePressed() {\n modelValue.value = !modelValue.value\n}\n\nconst dataState = computed<DataState>(() => {\n return modelValue.value ? 'on' : 'off'\n})\n\nconst isFormControl = useFormControl(currentElement)\n</script>\n\n<template>\n <Primitive\n :ref=\"forwardRef\"\n :type=\"as === 'button' ? 'button' : undefined\"\n :as-child=\"props.asChild\"\n :as=\"as\"\n :aria-pressed=\"modelValue\"\n :data-state=\"dataState\"\n :data-disabled=\"disabled ? '' : undefined\"\n :disabled=\"disabled\"\n @click=\"togglePressed\"\n >\n <slot\n :model-value=\"modelValue\"\n :disabled=\"disabled\"\n :pressed=\"modelValue\"\n :state=\"dataState\"\n />\n\n <VisuallyHiddenInput\n v-if=\"isFormControl && name && !toggleGroupContext\"\n type=\"checkbox\"\n :name=\"name\"\n :value=\"modelValue\"\n :required=\"required\"\n />\n </Primitive>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAmCA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAMd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAed,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAI,gBAAiB,EAAA;AACxD,IAAM,MAAA,kBAAA,GAAqB,6BAA6B,IAAI,CAAA;AAE5D,IAAA,MAAM,UAAa,GAAA,SAAA,CAAU,KAAO,EAAA,YAAA,EAAc,KAAO,EAAA;AAAA,MACvD,cAAc,KAAM,CAAA,YAAA;AAAA,MACpB,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAA,SAAS,aAAgB,GAAA;AACvB,MAAW,UAAA,CAAA,KAAA,GAAQ,CAAC,UAAW,CAAA,KAAA;AAAA;AAGjC,IAAM,MAAA,SAAA,GAAY,SAAoB,MAAM;AAC1C,MAAO,OAAA,UAAA,CAAW,QAAQ,IAAO,GAAA,KAAA;AAAA,KAClC,CAAA;AAED,IAAM,MAAA,aAAA,GAAgB,eAAe,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -35,8 +35,8 @@ const _sfc_main = /* @__PURE__ */ vue.defineComponent({
35
35
  "model-value": pressed.value,
36
36
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => vue.unref(rootContext).changeModelValue(_ctx.value))
37
37
  }), {
38
- default: vue.withCtx(() => [
39
- vue.renderSlot(_ctx.$slots, "default")
38
+ default: vue.withCtx((slotProps) => [
39
+ vue.renderSlot(_ctx.$slots, "default", vue.normalizeProps(vue.guardReactiveProps(slotProps)))
40
40
  ]),
41
41
  _: 3
42
42
  }, 16, ["disabled", "model-value"])
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroupItem.cjs","sources":["../../src/ToggleGroup/ToggleGroupItem.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { ToggleProps } from '@/Toggle'\nimport { isValueEqualOrExist, useForwardExpose } from '@/shared'\nimport type { AcceptableValue } from '@/shared/types'\n\nexport interface ToggleGroupItemProps extends Omit<ToggleProps, 'name' | 'required' | 'modelValue' | 'defaultValue'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: AcceptableValue\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { injectToggleGroupRootContext } from './ToggleGroupRoot.vue'\nimport { Toggle } from '@/Toggle'\nimport { RovingFocusItem } from '@/RovingFocus'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleGroupItemProps>(), {\n as: 'button',\n})\n\nconst rootContext = injectToggleGroupRootContext()\nconst disabled = computed(() => rootContext.disabled?.value || props.disabled)\nconst pressed = computed(() => isValueEqualOrExist(rootContext.modelValue.value, props.value))\n\nconst { forwardRef } = useForwardExpose()\n</script>\n\n<template>\n <component\n :is=\"rootContext.rovingFocus.value ? RovingFocusItem : Primitive\"\n as-child\n :focusable=\"!disabled\"\n :active=\"pressed\"\n >\n <Toggle\n v-bind=\"props\"\n :ref=\"forwardRef\"\n :disabled=\"disabled\"\n :model-value=\"pressed\"\n @update:model-value=\"rootContext.changeModelValue(value)\"\n >\n <slot />\n </Toggle>\n </component>\n</template>\n"],"names":["injectToggleGroupRootContext","computed","isValueEqualOrExist","useForwardExpose"],"mappings":";;;;;;;;;;;;;;;;;;;AAoBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,cAAcA,wDAA6B,EAAA;AACjD,IAAA,MAAM,WAAWC,YAAS,CAAA,MAAM,YAAY,QAAU,EAAA,KAAA,IAAS,MAAM,QAAQ,CAAA;AAC7E,IAAM,MAAA,OAAA,GAAUA,aAAS,MAAMC,8CAAA,CAAoB,YAAY,UAAW,CAAA,KAAA,EAAO,KAAM,CAAA,KAAK,CAAC,CAAA;AAE7F,IAAM,MAAA,EAAE,UAAW,EAAA,GAAIC,wCAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ToggleGroupItem.cjs","sources":["../../src/ToggleGroup/ToggleGroupItem.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { ToggleProps } from '@/Toggle'\nimport { isValueEqualOrExist, useForwardExpose } from '@/shared'\nimport type { AcceptableValue } from '@/shared/types'\n\nexport interface ToggleGroupItemProps extends Omit<ToggleProps, 'name' | 'required' | 'modelValue' | 'defaultValue'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: AcceptableValue\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { injectToggleGroupRootContext } from './ToggleGroupRoot.vue'\nimport { Toggle } from '@/Toggle'\nimport { RovingFocusItem } from '@/RovingFocus'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleGroupItemProps>(), {\n as: 'button',\n})\n\nconst rootContext = injectToggleGroupRootContext()\nconst disabled = computed(() => rootContext.disabled?.value || props.disabled)\nconst pressed = computed(() => isValueEqualOrExist(rootContext.modelValue.value, props.value))\n\nconst { forwardRef } = useForwardExpose()\n</script>\n\n<template>\n <component\n :is=\"rootContext.rovingFocus.value ? RovingFocusItem : Primitive\"\n as-child\n :focusable=\"!disabled\"\n :active=\"pressed\"\n >\n <Toggle\n v-bind=\"props\"\n :ref=\"forwardRef\"\n v-slot=\"slotProps\"\n :disabled=\"disabled\"\n :model-value=\"pressed\"\n @update:model-value=\"rootContext.changeModelValue(value)\"\n >\n <slot v-bind=\"slotProps\" />\n </Toggle>\n </component>\n</template>\n"],"names":["injectToggleGroupRootContext","computed","isValueEqualOrExist","useForwardExpose"],"mappings":";;;;;;;;;;;;;;;;;;;AAoBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,cAAcA,wDAA6B,EAAA;AACjD,IAAA,MAAM,WAAWC,YAAS,CAAA,MAAM,YAAY,QAAU,EAAA,KAAA,IAAS,MAAM,QAAQ,CAAA;AAC7E,IAAM,MAAA,OAAA,GAAUA,aAAS,MAAMC,8CAAA,CAAoB,YAAY,UAAW,CAAA,KAAA,EAAO,KAAM,CAAA,KAAK,CAAC,CAAA;AAE7F,IAAM,MAAA,EAAE,UAAW,EAAA,GAAIC,wCAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,4 +1,4 @@
1
- import { defineComponent, computed, openBlock, createBlock, resolveDynamicComponent, unref, withCtx, createVNode, mergeProps, renderSlot } from 'vue';
1
+ import { defineComponent, computed, openBlock, createBlock, resolveDynamicComponent, unref, withCtx, createVNode, mergeProps, renderSlot, normalizeProps, guardReactiveProps } from 'vue';
2
2
  import { _ as _sfc_main$1 } from '../RovingFocus/RovingFocusItem.js';
3
3
  import { i as isValueEqualOrExist } from '../shared/isValueEqualOrExist.js';
4
4
  import { u as useForwardExpose } from '../shared/useForwardExpose.js';
@@ -33,8 +33,8 @@ const _sfc_main = /* @__PURE__ */ defineComponent({
33
33
  "model-value": pressed.value,
34
34
  "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => unref(rootContext).changeModelValue(_ctx.value))
35
35
  }), {
36
- default: withCtx(() => [
37
- renderSlot(_ctx.$slots, "default")
36
+ default: withCtx((slotProps) => [
37
+ renderSlot(_ctx.$slots, "default", normalizeProps(guardReactiveProps(slotProps)))
38
38
  ]),
39
39
  _: 3
40
40
  }, 16, ["disabled", "model-value"])
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleGroupItem.js","sources":["../../src/ToggleGroup/ToggleGroupItem.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { ToggleProps } from '@/Toggle'\nimport { isValueEqualOrExist, useForwardExpose } from '@/shared'\nimport type { AcceptableValue } from '@/shared/types'\n\nexport interface ToggleGroupItemProps extends Omit<ToggleProps, 'name' | 'required' | 'modelValue' | 'defaultValue'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: AcceptableValue\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { injectToggleGroupRootContext } from './ToggleGroupRoot.vue'\nimport { Toggle } from '@/Toggle'\nimport { RovingFocusItem } from '@/RovingFocus'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleGroupItemProps>(), {\n as: 'button',\n})\n\nconst rootContext = injectToggleGroupRootContext()\nconst disabled = computed(() => rootContext.disabled?.value || props.disabled)\nconst pressed = computed(() => isValueEqualOrExist(rootContext.modelValue.value, props.value))\n\nconst { forwardRef } = useForwardExpose()\n</script>\n\n<template>\n <component\n :is=\"rootContext.rovingFocus.value ? RovingFocusItem : Primitive\"\n as-child\n :focusable=\"!disabled\"\n :active=\"pressed\"\n >\n <Toggle\n v-bind=\"props\"\n :ref=\"forwardRef\"\n :disabled=\"disabled\"\n :model-value=\"pressed\"\n @update:model-value=\"rootContext.changeModelValue(value)\"\n >\n <slot />\n </Toggle>\n </component>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAoBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,cAAc,4BAA6B,EAAA;AACjD,IAAA,MAAM,WAAW,QAAS,CAAA,MAAM,YAAY,QAAU,EAAA,KAAA,IAAS,MAAM,QAAQ,CAAA;AAC7E,IAAM,MAAA,OAAA,GAAU,SAAS,MAAM,mBAAA,CAAoB,YAAY,UAAW,CAAA,KAAA,EAAO,KAAM,CAAA,KAAK,CAAC,CAAA;AAE7F,IAAM,MAAA,EAAE,UAAW,EAAA,GAAI,gBAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ToggleGroupItem.js","sources":["../../src/ToggleGroup/ToggleGroupItem.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { ToggleProps } from '@/Toggle'\nimport { isValueEqualOrExist, useForwardExpose } from '@/shared'\nimport type { AcceptableValue } from '@/shared/types'\n\nexport interface ToggleGroupItemProps extends Omit<ToggleProps, 'name' | 'required' | 'modelValue' | 'defaultValue'> {\n /**\n * A string value for the toggle group item. All items within a toggle group should use a unique value.\n */\n value: AcceptableValue\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { injectToggleGroupRootContext } from './ToggleGroupRoot.vue'\nimport { Toggle } from '@/Toggle'\nimport { RovingFocusItem } from '@/RovingFocus'\nimport { Primitive } from '@/Primitive'\n\nconst props = withDefaults(defineProps<ToggleGroupItemProps>(), {\n as: 'button',\n})\n\nconst rootContext = injectToggleGroupRootContext()\nconst disabled = computed(() => rootContext.disabled?.value || props.disabled)\nconst pressed = computed(() => isValueEqualOrExist(rootContext.modelValue.value, props.value))\n\nconst { forwardRef } = useForwardExpose()\n</script>\n\n<template>\n <component\n :is=\"rootContext.rovingFocus.value ? RovingFocusItem : Primitive\"\n as-child\n :focusable=\"!disabled\"\n :active=\"pressed\"\n >\n <Toggle\n v-bind=\"props\"\n :ref=\"forwardRef\"\n v-slot=\"slotProps\"\n :disabled=\"disabled\"\n :model-value=\"pressed\"\n @update:model-value=\"rootContext.changeModelValue(value)\"\n >\n <slot v-bind=\"slotProps\" />\n </Toggle>\n </component>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAoBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,cAAc,4BAA6B,EAAA;AACjD,IAAA,MAAM,WAAW,QAAS,CAAA,MAAM,YAAY,QAAU,EAAA,KAAA,IAAS,MAAM,QAAQ,CAAA;AAC7E,IAAM,MAAA,OAAA,GAAU,SAAS,MAAM,mBAAA,CAAoB,YAAY,UAAW,CAAA,KAAA,EAAO,KAAM,CAAA,KAAK,CAAC,CAAA;AAE7F,IAAM,MAAA,EAAE,UAAW,EAAA,GAAI,gBAAiB,EAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/date.d.ts CHANGED
@@ -48,6 +48,8 @@ declare type DateRange = {
48
48
  end: DateValue | undefined;
49
49
  };
50
50
 
51
+ export { DateValue }
52
+
51
53
  export declare function endOfDecade(dateObj: DateValue): DateValue;
52
54
 
53
55
  /**
package/dist/index.cjs CHANGED
@@ -282,6 +282,7 @@ const shared_createContext = require('./shared/createContext.cjs');
282
282
  const Collapsible_CollapsibleRoot = require('./Collapsible/CollapsibleRoot.cjs');
283
283
  const Collapsible_CollapsibleTrigger = require('./Collapsible/CollapsibleTrigger.cjs');
284
284
  const Collapsible_CollapsibleContent = require('./Collapsible/CollapsibleContent.cjs');
285
+ const Listbox_ListboxItem = require('./Listbox/ListboxItem.cjs');
285
286
  const DateRangeField_DateRangeFieldRoot = require('./DateRangeField/DateRangeFieldRoot.cjs');
286
287
  const DateRangeField_DateRangeFieldInput = require('./DateRangeField/DateRangeFieldInput.cjs');
287
288
  const Dialog_DialogRoot = require('./Dialog/DialogRoot.cjs');
@@ -294,7 +295,6 @@ const Dialog_DialogDescription = require('./Dialog/DialogDescription.cjs');
294
295
  const Listbox_ListboxRoot = require('./Listbox/ListboxRoot.cjs');
295
296
  const Listbox_ListboxContent = require('./Listbox/ListboxContent.cjs');
296
297
  const Listbox_ListboxFilter = require('./Listbox/ListboxFilter.cjs');
297
- const Listbox_ListboxItem = require('./Listbox/ListboxItem.cjs');
298
298
  const Listbox_ListboxItemIndicator = require('./Listbox/ListboxItemIndicator.cjs');
299
299
  const Listbox_ListboxVirtualizer = require('./Listbox/ListboxVirtualizer.cjs');
300
300
  const Listbox_ListboxGroup = require('./Listbox/ListboxGroup.cjs');
@@ -395,7 +395,6 @@ exports.ComboboxContent = Combobox_ComboboxContent._sfc_main;
395
395
  exports.ComboboxViewport = Combobox_ComboboxViewport._sfc_main;
396
396
  exports.ComboboxVirtualizer = Combobox_ComboboxVirtualizer._sfc_main;
397
397
  exports.ComboboxItem = Combobox_ComboboxItem._sfc_main;
398
- exports.injectComboboxItemContext = Combobox_ComboboxItem.injectComboboxItemContext;
399
398
  exports.ComboboxItemIndicator = Combobox_ComboboxItemIndicator._sfc_main;
400
399
  exports.ComboboxSeparator = Combobox_ComboboxSeparator._sfc_main;
401
400
  exports.ComboboxArrow = Combobox_ComboboxArrow._sfc_main;
@@ -667,6 +666,9 @@ exports.CollapsibleRoot = Collapsible_CollapsibleRoot._sfc_main;
667
666
  exports.injectCollapsibleRootContext = Collapsible_CollapsibleRoot.injectCollapsibleRootContext;
668
667
  exports.CollapsibleTrigger = Collapsible_CollapsibleTrigger._sfc_main;
669
668
  exports.CollapsibleContent = Collapsible_CollapsibleContent._sfc_main;
669
+ exports.ListboxItem = Listbox_ListboxItem._sfc_main;
670
+ exports.injectComboboxItemContext = Listbox_ListboxItem.injectListboxItemContext;
671
+ exports.injectListboxItemContext = Listbox_ListboxItem.injectListboxItemContext;
670
672
  exports.DateRangeFieldRoot = DateRangeField_DateRangeFieldRoot._sfc_main;
671
673
  exports.injectDateRangeFieldRootContext = DateRangeField_DateRangeFieldRoot.injectDateRangeFieldRootContext;
672
674
  exports.DateRangeFieldInput = DateRangeField_DateRangeFieldInput._sfc_main;
@@ -682,8 +684,6 @@ exports.ListboxRoot = Listbox_ListboxRoot._sfc_main;
682
684
  exports.injectListboxRootContext = Listbox_ListboxRoot.injectListboxRootContext;
683
685
  exports.ListboxContent = Listbox_ListboxContent._sfc_main;
684
686
  exports.ListboxFilter = Listbox_ListboxFilter._sfc_main;
685
- exports.ListboxItem = Listbox_ListboxItem._sfc_main;
686
- exports.injectListboxItemContext = Listbox_ListboxItem.injectListboxItemContext;
687
687
  exports.ListboxItemIndicator = Listbox_ListboxItemIndicator._sfc_main;
688
688
  exports.ListboxVirtualizer = Listbox_ListboxVirtualizer._sfc_main;
689
689
  exports.ListboxGroup = Listbox_ListboxGroup._sfc_main;
package/dist/index.d.ts CHANGED
@@ -2057,7 +2057,9 @@ export declare const AlertDialogRoot: __VLS_WithTemplateSlots_6<DefineComponent<
2057
2057
  }, string, PublicProps, Readonly<AlertDialogProps> & Readonly<{
2058
2058
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
2059
2059
  }>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
2060
- default?(_: {}): any;
2060
+ default?(_: {
2061
+ open: boolean;
2062
+ }): any;
2061
2063
  }>;
2062
2064
 
2063
2065
  export declare const AlertDialogTitle: __VLS_WithTemplateSlots_12<DefineComponent<AlertDialogTitleProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<AlertDialogTitleProps> & Readonly<{}>, {
@@ -2620,6 +2622,10 @@ onContentFound?: ((args_0?: void | undefined) => any) | undefined;
2620
2622
  default?(_: {}): any;
2621
2623
  }>;
2622
2624
 
2625
+ export declare type CollapsibleContentEmits = {
2626
+ contentFound: [void];
2627
+ };
2628
+
2623
2629
  export declare interface CollapsibleContentProps extends PrimitiveProps {
2624
2630
  /**
2625
2631
  * Used to force mounting when more control is needed. Useful when
@@ -2832,10 +2838,6 @@ export declare const ComboboxItem: <T extends AcceptableValue = AcceptableValue>
2832
2838
  } | undefined;
2833
2839
  };
2834
2840
 
2835
- declare interface ComboboxItemContext {
2836
- isSelected: Ref<boolean>;
2837
- }
2838
-
2839
2841
  export declare type ComboboxItemEmits<T = AcceptableValue> = ListboxItemEmits<T>;
2840
2842
 
2841
2843
  export declare const ComboboxItemIndicator: __VLS_WithTemplateSlots_45<DefineComponent<ComboboxItemIndicatorProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ComboboxItemIndicatorProps> & Readonly<{}>, {
@@ -3493,6 +3495,8 @@ export declare function createContext<ContextValue>(providerComponentName: strin
3493
3495
 
3494
3496
  declare type DataOrientation = 'vertical' | 'horizontal';
3495
3497
 
3498
+ declare type DataState = 'on' | 'off';
3499
+
3496
3500
  declare const DATE_SEGMENT_PARTS: readonly ["day", "month", "year"];
3497
3501
 
3498
3502
  declare type DateAndTimeSegmentObj = DateSegmentObj & TimeSegmentObj;
@@ -4201,6 +4205,8 @@ declare type DateSegmentObj = {
4201
4205
 
4202
4206
  declare type DateSegmentPart = (typeof DATE_SEGMENT_PARTS)[number];
4203
4207
 
4208
+ export { DateValue }
4209
+
4204
4210
  declare type DayPeriod = 'AM' | 'PM' | null;
4205
4211
 
4206
4212
  export declare const DialogClose: __VLS_WithTemplateSlots_114<DefineComponent<DialogCloseProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<DialogCloseProps> & Readonly<{}>, {
@@ -4996,7 +5002,7 @@ export declare const HoverCardRoot: __VLS_WithTemplateSlots_140<DefineComponent<
4996
5002
  }, string, PublicProps, Readonly<HoverCardRootProps> & Readonly<{
4997
5003
  "onUpdate:open"?: ((value: boolean) => any) | undefined;
4998
5004
  }>, {
4999
- defaultOpen: false;
5005
+ defaultOpen: boolean;
5000
5006
  open: boolean;
5001
5007
  openDelay: number;
5002
5008
  closeDelay: number;
@@ -5031,7 +5037,7 @@ export declare type HoverCardRootEmits = {
5031
5037
 
5032
5038
  export declare interface HoverCardRootProps {
5033
5039
  /** The open state of the hover card when it is initially rendered. Use when you do not need to control its open state. */
5034
- defaultOpen?: false;
5040
+ defaultOpen?: boolean;
5035
5041
  /** The controlled open state of the hover card. Can be binded as `v-model:open`. */
5036
5042
  open?: boolean;
5037
5043
  /** The duration from when the mouse enters the trigger until the hover card opens. */
@@ -5069,8 +5075,6 @@ export declare const injectCollapsibleRootContext: <T extends CollapsibleRootCon
5069
5075
 
5070
5076
  export declare const injectComboboxGroupContext: <T extends ComboboxGroupContext | null | undefined = ComboboxGroupContext>(fallback?: T | undefined) => T extends null ? ComboboxGroupContext | null : ComboboxGroupContext;
5071
5077
 
5072
- export declare const injectComboboxItemContext: <T extends ComboboxItemContext | null | undefined = ComboboxItemContext>(fallback?: T | undefined) => T extends null ? ComboboxItemContext | null : ComboboxItemContext;
5073
-
5074
5078
  export declare const injectComboboxRootContext: <T extends ComboboxRootContext<AcceptableValue> | null | undefined = ComboboxRootContext<AcceptableValue>>(fallback?: T | undefined) => T extends null ? ComboboxRootContext<AcceptableValue> | null : ComboboxRootContext<AcceptableValue>;
5075
5079
 
5076
5080
  export declare const injectConfigProviderContext: <T extends ConfigProviderContextValue | null | undefined = ConfigProviderContextValue>(fallback?: T | undefined) => T extends null ? ConfigProviderContextValue | null : ConfigProviderContextValue;
@@ -5095,7 +5099,9 @@ export declare const injectHoverCardRootContext: <T extends HoverCardRootContext
5095
5099
 
5096
5100
  export declare const injectListboxGroupContext: <T extends ListboxGroupContext | null | undefined = ListboxGroupContext>(fallback?: T | undefined) => T extends null ? ListboxGroupContext | null : ListboxGroupContext;
5097
5101
 
5098
- export declare const injectListboxItemContext: <T extends ListboxItemContext | null | undefined = ListboxItemContext>(fallback?: T | undefined) => T extends null ? ListboxItemContext | null : ListboxItemContext;
5102
+ declare const injectListboxItemContext: <T extends ListboxItemContext | null | undefined = ListboxItemContext>(fallback?: T | undefined) => T extends null ? ListboxItemContext | null : ListboxItemContext;
5103
+ export { injectListboxItemContext as injectComboboxItemContext }
5104
+ export { injectListboxItemContext }
5099
5105
 
5100
5106
  export declare const injectListboxRootContext: <T extends ListboxRootContext<AcceptableValue> | null | undefined = ListboxRootContext<AcceptableValue>>(fallback?: T | undefined) => T extends null ? ListboxRootContext<AcceptableValue> | null : ListboxRootContext<AcceptableValue>;
5101
5107
 
@@ -6060,7 +6066,7 @@ declare interface MountingOptions<Props> {
6060
6066
  attrs?: Record<string, unknown>;
6061
6067
  }
6062
6068
 
6063
- declare interface MultipleCalendarRootProps extends BaseCalendarRootProps {
6069
+ export declare interface MultipleCalendarRootProps extends BaseCalendarRootProps {
6064
6070
  /** The controlled checked state of the calendar. Can be bound as `v-model`. */
6065
6071
  modelValue?: DateValue[] | undefined;
6066
6072
  /** Whether or not multiple dates can be selected */
@@ -6385,6 +6391,7 @@ export declare const NumberFieldRoot: __VLS_WithTemplateSlots_177<DefineComponen
6385
6391
  defaultValue: number;
6386
6392
  as: AsTag | Component;
6387
6393
  step: number;
6394
+ stepSnapping: boolean;
6388
6395
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
6389
6396
  default?(_: {
6390
6397
  modelValue: number;
@@ -6404,6 +6411,7 @@ declare interface NumberFieldRootContext {
6404
6411
  validate: (val: string) => boolean;
6405
6412
  applyInputValue: (val: string) => void;
6406
6413
  disabled: Ref<boolean>;
6414
+ disableWheelChange: Ref<boolean>;
6407
6415
  max: Ref<number | undefined>;
6408
6416
  min: Ref<number | undefined>;
6409
6417
  isDecreaseDisabled: Ref<boolean>;
@@ -6424,12 +6432,16 @@ export declare interface NumberFieldRootProps extends PrimitiveProps, FormFieldP
6424
6432
  max?: number;
6425
6433
  /** The amount that the input value changes with each increment or decrement "tick". */
6426
6434
  step?: number;
6435
+ /** When `false`, prevents the value from snapping to the nearest increment of the step value */
6436
+ stepSnapping?: boolean;
6427
6437
  /** Formatting options for the value displayed in the number field. This also affects what characters are allowed to be typed by the user. */
6428
6438
  formatOptions?: Intl.NumberFormatOptions;
6429
6439
  /** The locale to use for formatting dates */
6430
6440
  locale?: string;
6431
6441
  /** When `true`, prevents the user from interacting with the Number Field. */
6432
6442
  disabled?: boolean;
6443
+ /** When `true`, prevents the value from changing on wheel scroll. */
6444
+ disableWheelChange?: boolean;
6433
6445
  /** Id of the element */
6434
6446
  id?: string;
6435
6447
  }
@@ -8133,7 +8145,7 @@ declare type Side = (typeof SIDE_OPTIONS)[number];
8133
8145
 
8134
8146
  declare const SIDE_OPTIONS: readonly ["top", "right", "bottom", "left"];
8135
8147
 
8136
- declare interface SingleCalendarRootProps extends BaseCalendarRootProps {
8148
+ export declare interface SingleCalendarRootProps extends BaseCalendarRootProps {
8137
8149
  /** The controlled checked state of the calendar. Can be bound as `v-model`. */
8138
8150
  modelValue?: DateValue | undefined;
8139
8151
  /** Whether or not multiple dates can be selected */
@@ -8181,12 +8193,14 @@ onValueCommit?: ((payload: number[]) => any) | undefined;
8181
8193
  }>, {
8182
8194
  defaultValue: number[];
8183
8195
  disabled: boolean;
8196
+ as: AsTag | Component;
8184
8197
  orientation: DataOrientation;
8185
8198
  step: number;
8186
8199
  min: number;
8187
8200
  max: number;
8188
8201
  inverted: boolean;
8189
8202
  minStepsBetweenThumbs: number;
8203
+ thumbAlignment: ThumbAlignment;
8190
8204
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, Readonly<{
8191
8205
  default: (props: {
8192
8206
  /** Current slider values */
@@ -8208,6 +8222,7 @@ declare interface SliderRootContext {
8208
8222
  currentModelValue: ComputedRef<number[]>;
8209
8223
  valueIndexToChangeRef: Ref<number>;
8210
8224
  thumbElements: Ref<HTMLElement[]>;
8225
+ thumbAlignment: Ref<ThumbAlignment>;
8211
8226
  }
8212
8227
 
8213
8228
  export declare type SliderRootEmits = {
@@ -8244,9 +8259,18 @@ export declare interface SliderRootProps extends PrimitiveProps, FormFieldProps
8244
8259
  step?: number;
8245
8260
  /** The minimum permitted steps between multiple thumbs. */
8246
8261
  minStepsBetweenThumbs?: number;
8262
+ /**
8263
+ * The alignment of the slider thumb.
8264
+ * - `contain`: thumbs will be contained within the bounds of the track.
8265
+ * - `overflow`: thumbs will not be bound by the track. No extra offset will be added.
8266
+ * @defaultValue 'contain'
8267
+ */
8268
+ thumbAlignment?: ThumbAlignment;
8247
8269
  }
8248
8270
 
8249
- export declare const SliderThumb: __VLS_WithTemplateSlots_236<DefineComponent<SliderThumbProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<SliderThumbProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
8271
+ export declare const SliderThumb: __VLS_WithTemplateSlots_236<DefineComponent<SliderThumbProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<SliderThumbProps> & Readonly<{}>, {
8272
+ as: AsTag | Component;
8273
+ }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
8250
8274
  default?(_: {}): any;
8251
8275
  }>;
8252
8276
 
@@ -9071,6 +9095,8 @@ declare interface TeleportProps {
9071
9095
  forceMount?: boolean;
9072
9096
  }
9073
9097
 
9098
+ declare type ThumbAlignment = 'contain' | 'overflow';
9099
+
9074
9100
  declare const TIME_SEGMENT_PARTS: readonly ["hour", "minute", "second", "dayPeriod"];
9075
9101
 
9076
9102
  export declare const TimeFieldInput: __VLS_WithTemplateSlots_260<DefineComponent<TimeFieldInputProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<TimeFieldInputProps> & Readonly<{}>, {}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
@@ -9404,13 +9430,25 @@ as: AsTag | Component;
9404
9430
  modelValue: boolean | null;
9405
9431
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, Readonly<{
9406
9432
  default: (props: {
9407
- /** Current pressed state */
9433
+ /** Current value */
9408
9434
  modelValue: boolean;
9435
+ /** Current state */
9436
+ state: DataState;
9437
+ /** Current pressed state */
9438
+ pressed: boolean;
9439
+ /** Current disabled state */
9440
+ disabled: boolean;
9409
9441
  }) => any;
9410
9442
  }> & {
9411
9443
  default: (props: {
9412
- /** Current pressed state */
9444
+ /** Current value */
9413
9445
  modelValue: boolean;
9446
+ /** Current state */
9447
+ state: DataState;
9448
+ /** Current pressed state */
9449
+ pressed: boolean;
9450
+ /** Current disabled state */
9451
+ disabled: boolean;
9414
9452
  }) => any;
9415
9453
  }>;
9416
9454
 
@@ -9422,7 +9460,12 @@ export declare type ToggleEmits = {
9422
9460
  export declare const ToggleGroupItem: __VLS_WithTemplateSlots_272<DefineComponent<ToggleGroupItemProps, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {}, string, PublicProps, Readonly<ToggleGroupItemProps> & Readonly<{}>, {
9423
9461
  as: AsTag | Component;
9424
9462
  }, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>, {
9425
- default?(_: {}): any;
9463
+ default?(_: {
9464
+ modelValue: boolean;
9465
+ state: DataState;
9466
+ pressed: boolean;
9467
+ disabled: boolean;
9468
+ }): any;
9426
9469
  }>;
9427
9470
 
9428
9471
  export declare interface ToggleGroupItemProps extends Omit<ToggleProps, 'name' | 'required' | 'modelValue' | 'defaultValue'> {
package/dist/index.js CHANGED
@@ -44,7 +44,7 @@ export { _ as ComboboxLabel } from './Combobox/ComboboxLabel.js';
44
44
  export { _ as ComboboxContent } from './Combobox/ComboboxContent.js';
45
45
  export { _ as ComboboxViewport } from './Combobox/ComboboxViewport.js';
46
46
  export { _ as ComboboxVirtualizer } from './Combobox/ComboboxVirtualizer.js';
47
- export { _ as ComboboxItem, i as injectComboboxItemContext } from './Combobox/ComboboxItem.js';
47
+ export { _ as ComboboxItem } from './Combobox/ComboboxItem.js';
48
48
  export { _ as ComboboxItemIndicator } from './Combobox/ComboboxItemIndicator.js';
49
49
  export { _ as ComboboxSeparator } from './Combobox/ComboboxSeparator.js';
50
50
  export { _ as ComboboxArrow } from './Combobox/ComboboxArrow.js';
@@ -278,6 +278,7 @@ export { c as createContext } from './shared/createContext.js';
278
278
  export { _ as CollapsibleRoot, i as injectCollapsibleRootContext } from './Collapsible/CollapsibleRoot.js';
279
279
  export { _ as CollapsibleTrigger } from './Collapsible/CollapsibleTrigger.js';
280
280
  export { _ as CollapsibleContent } from './Collapsible/CollapsibleContent.js';
281
+ export { _ as ListboxItem, i as injectComboboxItemContext, i as injectListboxItemContext } from './Listbox/ListboxItem.js';
281
282
  export { _ as DateRangeFieldRoot, i as injectDateRangeFieldRootContext } from './DateRangeField/DateRangeFieldRoot.js';
282
283
  export { _ as DateRangeFieldInput } from './DateRangeField/DateRangeFieldInput.js';
283
284
  export { _ as DialogRoot, i as injectDialogRootContext } from './Dialog/DialogRoot.js';
@@ -290,7 +291,6 @@ export { _ as DialogDescription } from './Dialog/DialogDescription.js';
290
291
  export { _ as ListboxRoot, i as injectListboxRootContext } from './Listbox/ListboxRoot.js';
291
292
  export { _ as ListboxContent } from './Listbox/ListboxContent.js';
292
293
  export { _ as ListboxFilter } from './Listbox/ListboxFilter.js';
293
- export { _ as ListboxItem, i as injectListboxItemContext } from './Listbox/ListboxItem.js';
294
294
  export { _ as ListboxItemIndicator } from './Listbox/ListboxItemIndicator.js';
295
295
  export { _ as ListboxVirtualizer } from './Listbox/ListboxVirtualizer.js';
296
296
  export { _ as ListboxGroup, i as injectListboxGroupContext } from './Listbox/ListboxGroup.js';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "reka-ui",
3
3
  "type": "module",
4
- "version": "2.0.2",
4
+ "version": "2.1.1",
5
5
  "description": "Vue port for Radix UI Primitives.",
6
6
  "author": "UnoVue Contributors (https://github.com/unovue)",
7
7
  "license": "MIT",
@@ -101,7 +101,7 @@
101
101
  "@vueuse/shared": "^12.5.0",
102
102
  "aria-hidden": "^1.2.4",
103
103
  "defu": "^6.1.4",
104
- "ohash": "^1.1.4"
104
+ "ohash": "^2.0.11"
105
105
  },
106
106
  "devDependencies": {
107
107
  "@iconify/vue": "^4.3.0",