@youcan/celeste 0.15.0 → 0.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (393) hide show
  1. package/ai/README.md +1 -1
  2. package/ai/component-registry.json +922 -78
  3. package/ai/icons.json +2 -2
  4. package/ai/tokens.json +2 -2
  5. package/dist/celeste.css +406 -121
  6. package/dist/cjs/chunks/BubbleSelect.cjs +3 -3
  7. package/dist/cjs/chunks/CollapsibleRoot.cjs +1 -1
  8. package/dist/cjs/chunks/Collection.cjs +7 -1
  9. package/dist/cjs/chunks/ComboboxContent.cjs +9 -5
  10. package/dist/cjs/chunks/ComboboxGroup.cjs +2 -2
  11. package/dist/cjs/chunks/ComboboxInput.cjs +10 -6
  12. package/dist/cjs/chunks/ComboboxItem.cjs +4 -3
  13. package/dist/cjs/chunks/ComboboxLabel.cjs +1 -1
  14. package/dist/cjs/chunks/ComboboxRoot.cjs +69 -14
  15. package/dist/cjs/chunks/ComboboxSeparator.cjs +1 -1
  16. package/dist/cjs/chunks/ConfigProvider.cjs +1 -1
  17. package/dist/cjs/chunks/DialogClose.cjs +1 -1
  18. package/dist/cjs/chunks/DialogDescription.cjs +1 -1
  19. package/dist/cjs/chunks/DialogPortal.cjs +22 -19
  20. package/dist/cjs/chunks/DialogRoot.cjs +1 -1
  21. package/dist/cjs/chunks/DialogTitle.cjs +1 -1
  22. package/dist/cjs/chunks/DialogTrigger.cjs +1 -1
  23. package/dist/cjs/chunks/DismissableLayer.cjs +19 -9
  24. package/dist/cjs/chunks/DrawerClose.cjs +40 -0
  25. package/dist/cjs/chunks/DrawerDescription.cjs +37 -0
  26. package/dist/cjs/chunks/DrawerRoot.cjs +366 -0
  27. package/dist/cjs/chunks/DrawerTitle.cjs +37 -0
  28. package/dist/cjs/chunks/DropdownMenuPortal.cjs +2 -2
  29. package/dist/cjs/chunks/DropdownMenuRoot.cjs +1 -1
  30. package/dist/cjs/chunks/FocusScope.cjs +18 -9
  31. package/dist/cjs/chunks/Label.cjs +1 -1
  32. package/dist/cjs/chunks/MenuAnchor.cjs +1 -1
  33. package/dist/cjs/chunks/MenuContentImpl.cjs +2 -2
  34. package/dist/cjs/chunks/MenuGroup.cjs +1 -1
  35. package/dist/cjs/chunks/MenuItemImpl.cjs +3 -2
  36. package/dist/cjs/chunks/MenuRoot.cjs +2 -2
  37. package/dist/cjs/chunks/MenuSub.cjs +1 -1
  38. package/dist/cjs/chunks/PaginationRoot.cjs +1 -1
  39. package/dist/cjs/chunks/PinInputRoot.cjs +1 -1
  40. package/dist/cjs/chunks/PopoverRoot.cjs +1 -1
  41. package/dist/cjs/chunks/PopperAnchor.cjs +1 -1
  42. package/dist/cjs/chunks/PopperArrow.cjs +2 -2
  43. package/dist/cjs/chunks/PopperContent.cjs +2 -2
  44. package/dist/cjs/chunks/PopperRoot.cjs +1 -1
  45. package/dist/cjs/chunks/Presence.cjs +6 -5
  46. package/dist/cjs/chunks/Primitive.cjs +3 -3
  47. package/dist/cjs/chunks/ProgressIndicator.cjs +2 -2
  48. package/dist/cjs/chunks/RadioGroupRoot.cjs +1 -1
  49. package/dist/cjs/chunks/RovingFocusGroup.cjs +1 -1
  50. package/dist/cjs/chunks/RovingFocusItem.cjs +1 -1
  51. package/dist/cjs/chunks/SelectGroup.cjs +1 -1
  52. package/dist/cjs/chunks/SelectItemAlignedPosition.cjs +8 -4
  53. package/dist/cjs/chunks/TabsRoot.cjs +1 -1
  54. package/dist/cjs/chunks/Teleport.cjs +1 -1
  55. package/dist/cjs/chunks/ToggleGroupRoot.cjs +2 -2
  56. package/dist/cjs/chunks/TooltipProvider.cjs +1 -1
  57. package/dist/cjs/chunks/TooltipRoot.cjs +2 -2
  58. package/dist/cjs/chunks/VisuallyHidden.cjs +1 -1
  59. package/dist/cjs/chunks/VisuallyHiddenInput.cjs +2 -2
  60. package/dist/cjs/chunks/calendar.cjs +11 -11
  61. package/dist/cjs/chunks/checkbox.cjs +4 -4
  62. package/dist/cjs/chunks/clamp.cjs +1 -1
  63. package/dist/cjs/chunks/collapsible-content.cjs +1 -1
  64. package/dist/cjs/chunks/collapsible-trigger.cjs +1 -1
  65. package/dist/cjs/chunks/combobox-anchor.cjs +1 -1
  66. package/dist/cjs/chunks/combobox-empty.cjs +1 -1
  67. package/dist/cjs/chunks/combobox-list.cjs +2 -2
  68. package/dist/cjs/chunks/combobox-trigger.cjs +1 -1
  69. package/dist/cjs/chunks/components.cjs +43 -7
  70. package/dist/cjs/chunks/content-divider.cjs +2 -2
  71. package/dist/cjs/chunks/counter-input.cjs +67 -23
  72. package/dist/cjs/chunks/createContext.cjs +1 -1
  73. package/dist/cjs/chunks/dialog-body.cjs +46 -0
  74. package/dist/cjs/chunks/dialog-close.cjs +31 -0
  75. package/dist/cjs/chunks/dialog-content.cjs +39 -0
  76. package/dist/cjs/chunks/dialog-description.cjs +37 -0
  77. package/dist/cjs/chunks/dialog-footer.cjs +46 -0
  78. package/dist/cjs/chunks/dialog-header.cjs +39 -0
  79. package/dist/cjs/chunks/dialog-title.cjs +37 -0
  80. package/dist/cjs/chunks/dialog-trigger.cjs +31 -0
  81. package/dist/cjs/chunks/dialog.cjs +76 -0
  82. package/dist/cjs/chunks/digit-input-slot.cjs +28 -7
  83. package/dist/cjs/chunks/drawer-body.cjs +73 -0
  84. package/dist/cjs/chunks/drawer-close.cjs +27 -0
  85. package/dist/cjs/chunks/drawer-content.cjs +1201 -0
  86. package/dist/cjs/chunks/drawer-description.cjs +40 -0
  87. package/dist/cjs/chunks/drawer-footer.cjs +30 -0
  88. package/dist/cjs/chunks/drawer-header.cjs +75 -0
  89. package/dist/cjs/chunks/drawer-title.cjs +40 -0
  90. package/dist/cjs/chunks/drawer-trigger.cjs +75 -0
  91. package/dist/cjs/chunks/drawer.cjs +54 -0
  92. package/dist/cjs/chunks/dropdown-menu-content.cjs +4 -4
  93. package/dist/cjs/chunks/dropdown-menu-group.cjs +1 -1
  94. package/dist/cjs/chunks/dropdown-menu-item.cjs +2 -2
  95. package/dist/cjs/chunks/dropdown-menu-label.cjs +2 -2
  96. package/dist/cjs/chunks/dropdown-menu-separator.cjs +2 -2
  97. package/dist/cjs/chunks/dropdown-menu-sub-content.cjs +2 -2
  98. package/dist/cjs/chunks/dropdown-menu-sub-trigger.cjs +2 -2
  99. package/dist/cjs/chunks/dropdown-menu-sub.cjs +1 -1
  100. package/dist/cjs/chunks/dropdown-menu-trigger.cjs +1 -1
  101. package/dist/cjs/chunks/getActiveElement.cjs +1 -1
  102. package/dist/cjs/chunks/handleAndDispatchCustomEvent.cjs +1 -1
  103. package/dist/cjs/chunks/isValueEqualOrExist.cjs +1 -1
  104. package/dist/cjs/chunks/modal-content.cjs +11 -6
  105. package/dist/cjs/chunks/nullish.cjs +1 -1
  106. package/dist/cjs/chunks/pagination-content.cjs +2 -2
  107. package/dist/cjs/chunks/pagination-ellipsis.cjs +1 -1
  108. package/dist/cjs/chunks/pagination-first.cjs +1 -1
  109. package/dist/cjs/chunks/pagination-item.cjs +1 -1
  110. package/dist/cjs/chunks/pagination-last.cjs +1 -1
  111. package/dist/cjs/chunks/pagination-next.cjs +1 -1
  112. package/dist/cjs/chunks/pagination-previous.cjs +1 -1
  113. package/dist/cjs/chunks/popover-content.cjs +8 -8
  114. package/dist/cjs/chunks/popover-trigger.cjs +3 -2
  115. package/dist/cjs/chunks/radio-group-item.cjs +5 -5
  116. package/dist/cjs/chunks/range-calendar.cjs +11 -11
  117. package/dist/cjs/chunks/scroll-area.cjs +3 -3
  118. package/dist/cjs/chunks/scroll-bar.cjs +12 -12
  119. package/dist/cjs/chunks/segmented-control-item.cjs +2 -2
  120. package/dist/cjs/chunks/select-content.cjs +4 -4
  121. package/dist/cjs/chunks/select-item.cjs +3 -3
  122. package/dist/cjs/chunks/select-label.cjs +1 -1
  123. package/dist/cjs/chunks/select-separator.cjs +1 -1
  124. package/dist/cjs/chunks/select-trigger.cjs +3 -3
  125. package/dist/cjs/chunks/select-value.cjs +1 -1
  126. package/dist/cjs/chunks/slider.cjs +9 -9
  127. package/dist/cjs/chunks/switch.cjs +2 -2
  128. package/dist/cjs/chunks/tab-menu-content.cjs +1 -1
  129. package/dist/cjs/chunks/tab-menu-item.cjs +1 -1
  130. package/dist/cjs/chunks/tab-menu-list.cjs +1 -1
  131. package/dist/cjs/chunks/tooltip-content.cjs +28 -16
  132. package/dist/cjs/chunks/tooltip-trigger.cjs +5 -5
  133. package/dist/cjs/chunks/useArrowNavigation.cjs +1 -1
  134. package/dist/cjs/chunks/useCalendar.cjs +34 -11
  135. package/dist/cjs/chunks/useComposing.cjs +20 -1
  136. package/dist/cjs/chunks/useDirection.cjs +1 -1
  137. package/dist/cjs/chunks/useEmitAsProps.cjs +1 -1
  138. package/dist/cjs/chunks/useFocusGuards.cjs +1 -1
  139. package/dist/cjs/chunks/useFormControl.cjs +1 -1
  140. package/dist/cjs/chunks/useForwardExpose.cjs +1 -1
  141. package/dist/cjs/chunks/useForwardProps.cjs +1 -1
  142. package/dist/cjs/chunks/useForwardPropsEmits.cjs +1 -1
  143. package/dist/cjs/chunks/useForwardScopeId.cjs +1 -1
  144. package/dist/cjs/chunks/useHideOthers.cjs +1 -1
  145. package/dist/cjs/chunks/useId.cjs +1 -1
  146. package/dist/cjs/chunks/useKbd.cjs +1 -1
  147. package/dist/cjs/chunks/useLocale.cjs +1 -1
  148. package/dist/cjs/chunks/useNonce.cjs +1 -1
  149. package/dist/cjs/chunks/usePrimitiveElement.cjs +1 -1
  150. package/dist/cjs/chunks/useSize.cjs +1 -1
  151. package/dist/cjs/chunks/useTypeahead.cjs +1 -1
  152. package/dist/cjs/chunks/utils.cjs +1 -1
  153. package/dist/cjs/chunks/utils2.cjs +1 -1
  154. package/dist/cjs/chunks/utils3.cjs +1 -1
  155. package/dist/cjs/context.cjs +6 -0
  156. package/dist/cjs/dialog-body.cjs +2 -0
  157. package/dist/cjs/dialog-close.cjs +2 -0
  158. package/dist/cjs/dialog-content.cjs +2 -0
  159. package/dist/cjs/dialog-description.cjs +2 -0
  160. package/dist/cjs/dialog-footer.cjs +2 -0
  161. package/dist/cjs/dialog-header.cjs +2 -0
  162. package/dist/cjs/dialog-title.cjs +2 -0
  163. package/dist/cjs/dialog-trigger.cjs +2 -0
  164. package/dist/cjs/dialog.cjs +2 -0
  165. package/dist/cjs/drawer-body.cjs +2 -0
  166. package/dist/cjs/drawer-close.cjs +2 -0
  167. package/dist/cjs/drawer-content.cjs +2 -0
  168. package/dist/cjs/drawer-description.cjs +2 -0
  169. package/dist/cjs/drawer-footer.cjs +2 -0
  170. package/dist/cjs/drawer-header.cjs +2 -0
  171. package/dist/cjs/drawer-title.cjs +2 -0
  172. package/dist/cjs/drawer-trigger.cjs +2 -0
  173. package/dist/cjs/drawer.cjs +2 -0
  174. package/dist/cjs/index.cjs +43 -7
  175. package/dist/components/dialog/context.d.ts +14 -0
  176. package/dist/components/dialog/dialog-body.d.ts +19 -0
  177. package/dist/components/dialog/dialog-close.d.ts +15 -0
  178. package/dist/components/dialog/dialog-content.d.ts +19 -0
  179. package/dist/components/dialog/dialog-description.d.ts +17 -0
  180. package/dist/components/dialog/dialog-footer.d.ts +19 -0
  181. package/dist/components/dialog/dialog-header.d.ts +13 -0
  182. package/dist/components/dialog/dialog-title.d.ts +17 -0
  183. package/dist/components/dialog/dialog-trigger.d.ts +15 -0
  184. package/dist/components/dialog/dialog.d.ts +28 -0
  185. package/dist/components/dialog/index.d.ts +18 -0
  186. package/dist/components/digit-input/digit-input.d.ts +3 -3
  187. package/dist/components/drawer/drawer-body.d.ts +18 -0
  188. package/dist/components/drawer/drawer-close.d.ts +16 -0
  189. package/dist/components/drawer/drawer-content.d.ts +32 -0
  190. package/dist/components/drawer/drawer-description.d.ts +18 -0
  191. package/dist/components/drawer/drawer-footer.d.ts +17 -0
  192. package/dist/components/drawer/drawer-header.d.ts +24 -0
  193. package/dist/components/drawer/drawer-title.d.ts +18 -0
  194. package/dist/components/drawer/drawer-trigger.d.ts +16 -0
  195. package/dist/components/drawer/drawer.d.ts +30 -0
  196. package/dist/components/drawer/index.d.ts +18 -0
  197. package/dist/components/index.d.ts +2 -0
  198. package/dist/components/modal/modal-content.d.ts +2 -2
  199. package/dist/es/chunks/BubbleSelect.js +3 -3
  200. package/dist/es/chunks/CollapsibleRoot.js +1 -1
  201. package/dist/es/chunks/Collection.js +7 -1
  202. package/dist/es/chunks/ComboboxContent.js +11 -7
  203. package/dist/es/chunks/ComboboxGroup.js +2 -2
  204. package/dist/es/chunks/ComboboxInput.js +10 -6
  205. package/dist/es/chunks/ComboboxItem.js +4 -3
  206. package/dist/es/chunks/ComboboxLabel.js +1 -1
  207. package/dist/es/chunks/ComboboxRoot.js +69 -14
  208. package/dist/es/chunks/ComboboxSeparator.js +1 -1
  209. package/dist/es/chunks/ConfigProvider.js +1 -1
  210. package/dist/es/chunks/DialogClose.js +1 -1
  211. package/dist/es/chunks/DialogDescription.js +1 -1
  212. package/dist/es/chunks/DialogPortal.js +23 -20
  213. package/dist/es/chunks/DialogRoot.js +1 -1
  214. package/dist/es/chunks/DialogTitle.js +1 -1
  215. package/dist/es/chunks/DialogTrigger.js +1 -1
  216. package/dist/es/chunks/DismissableLayer.js +14 -10
  217. package/dist/es/chunks/DrawerClose.js +35 -0
  218. package/dist/es/chunks/DrawerDescription.js +32 -0
  219. package/dist/es/chunks/DrawerRoot.js +325 -0
  220. package/dist/es/chunks/DrawerTitle.js +32 -0
  221. package/dist/es/chunks/DropdownMenuPortal.js +2 -2
  222. package/dist/es/chunks/DropdownMenuRoot.js +1 -1
  223. package/dist/es/chunks/FocusScope.js +13 -10
  224. package/dist/es/chunks/Label.js +1 -1
  225. package/dist/es/chunks/MenuAnchor.js +1 -1
  226. package/dist/es/chunks/MenuContentImpl.js +3 -3
  227. package/dist/es/chunks/MenuGroup.js +1 -1
  228. package/dist/es/chunks/MenuItemImpl.js +3 -2
  229. package/dist/es/chunks/MenuRoot.js +2 -2
  230. package/dist/es/chunks/MenuSub.js +1 -1
  231. package/dist/es/chunks/PaginationRoot.js +1 -1
  232. package/dist/es/chunks/PinInputRoot.js +1 -1
  233. package/dist/es/chunks/PopoverRoot.js +1 -1
  234. package/dist/es/chunks/PopperAnchor.js +1 -1
  235. package/dist/es/chunks/PopperArrow.js +2 -2
  236. package/dist/es/chunks/PopperContent.js +2 -2
  237. package/dist/es/chunks/PopperRoot.js +1 -1
  238. package/dist/es/chunks/Presence.js +6 -5
  239. package/dist/es/chunks/Primitive.js +3 -3
  240. package/dist/es/chunks/ProgressIndicator.js +2 -2
  241. package/dist/es/chunks/RadioGroupRoot.js +1 -1
  242. package/dist/es/chunks/RovingFocusGroup.js +1 -1
  243. package/dist/es/chunks/RovingFocusItem.js +1 -1
  244. package/dist/es/chunks/SelectGroup.js +1 -1
  245. package/dist/es/chunks/SelectItemAlignedPosition.js +9 -5
  246. package/dist/es/chunks/TabsRoot.js +1 -1
  247. package/dist/es/chunks/Teleport.js +1 -1
  248. package/dist/es/chunks/ToggleGroupRoot.js +2 -2
  249. package/dist/es/chunks/TooltipProvider.js +1 -1
  250. package/dist/es/chunks/TooltipRoot.js +2 -2
  251. package/dist/es/chunks/VisuallyHidden.js +1 -1
  252. package/dist/es/chunks/VisuallyHiddenInput.js +2 -2
  253. package/dist/es/chunks/calendar.js +11 -11
  254. package/dist/es/chunks/checkbox.js +4 -4
  255. package/dist/es/chunks/clamp.js +1 -1
  256. package/dist/es/chunks/collapsible-content.js +1 -1
  257. package/dist/es/chunks/collapsible-trigger.js +1 -1
  258. package/dist/es/chunks/combobox-anchor.js +1 -1
  259. package/dist/es/chunks/combobox-empty.js +1 -1
  260. package/dist/es/chunks/combobox-list.js +2 -2
  261. package/dist/es/chunks/combobox-trigger.js +1 -1
  262. package/dist/es/chunks/components.js +43 -7
  263. package/dist/es/chunks/content-divider.js +2 -2
  264. package/dist/es/chunks/counter-input.js +68 -24
  265. package/dist/es/chunks/createContext.js +1 -1
  266. package/dist/es/chunks/dialog-body.js +39 -0
  267. package/dist/es/chunks/dialog-close.js +26 -0
  268. package/dist/es/chunks/dialog-content.js +34 -0
  269. package/dist/es/chunks/dialog-description.js +30 -0
  270. package/dist/es/chunks/dialog-footer.js +39 -0
  271. package/dist/es/chunks/dialog-header.js +34 -0
  272. package/dist/es/chunks/dialog-title.js +30 -0
  273. package/dist/es/chunks/dialog-trigger.js +26 -0
  274. package/dist/es/chunks/dialog.js +71 -0
  275. package/dist/es/chunks/digit-input-slot.js +28 -7
  276. package/dist/es/chunks/drawer-body.js +65 -0
  277. package/dist/es/chunks/drawer-close.js +22 -0
  278. package/dist/es/chunks/drawer-content.js +1193 -0
  279. package/dist/es/chunks/drawer-description.js +33 -0
  280. package/dist/es/chunks/drawer-footer.js +23 -0
  281. package/dist/es/chunks/drawer-header.js +69 -0
  282. package/dist/es/chunks/drawer-title.js +33 -0
  283. package/dist/es/chunks/drawer-trigger.js +70 -0
  284. package/dist/es/chunks/drawer.js +49 -0
  285. package/dist/es/chunks/dropdown-menu-content.js +4 -4
  286. package/dist/es/chunks/dropdown-menu-group.js +1 -1
  287. package/dist/es/chunks/dropdown-menu-item.js +2 -2
  288. package/dist/es/chunks/dropdown-menu-label.js +2 -2
  289. package/dist/es/chunks/dropdown-menu-separator.js +2 -2
  290. package/dist/es/chunks/dropdown-menu-sub-content.js +2 -2
  291. package/dist/es/chunks/dropdown-menu-sub-trigger.js +2 -2
  292. package/dist/es/chunks/dropdown-menu-sub.js +1 -1
  293. package/dist/es/chunks/dropdown-menu-trigger.js +1 -1
  294. package/dist/es/chunks/getActiveElement.js +1 -1
  295. package/dist/es/chunks/handleAndDispatchCustomEvent.js +1 -1
  296. package/dist/es/chunks/isValueEqualOrExist.js +1 -1
  297. package/dist/es/chunks/modal-content.js +12 -7
  298. package/dist/es/chunks/nullish.js +1 -1
  299. package/dist/es/chunks/pagination-content.js +2 -2
  300. package/dist/es/chunks/pagination-ellipsis.js +1 -1
  301. package/dist/es/chunks/pagination-first.js +1 -1
  302. package/dist/es/chunks/pagination-item.js +1 -1
  303. package/dist/es/chunks/pagination-last.js +1 -1
  304. package/dist/es/chunks/pagination-next.js +1 -1
  305. package/dist/es/chunks/pagination-previous.js +1 -1
  306. package/dist/es/chunks/popover-content.js +9 -9
  307. package/dist/es/chunks/popover-trigger.js +3 -2
  308. package/dist/es/chunks/radio-group-item.js +5 -5
  309. package/dist/es/chunks/range-calendar.js +11 -11
  310. package/dist/es/chunks/scroll-area.js +3 -3
  311. package/dist/es/chunks/scroll-bar.js +12 -12
  312. package/dist/es/chunks/segmented-control-item.js +2 -2
  313. package/dist/es/chunks/select-content.js +4 -4
  314. package/dist/es/chunks/select-item.js +3 -3
  315. package/dist/es/chunks/select-label.js +1 -1
  316. package/dist/es/chunks/select-separator.js +1 -1
  317. package/dist/es/chunks/select-trigger.js +3 -3
  318. package/dist/es/chunks/select-value.js +1 -1
  319. package/dist/es/chunks/slider.js +9 -9
  320. package/dist/es/chunks/switch.js +2 -2
  321. package/dist/es/chunks/tab-menu-content.js +1 -1
  322. package/dist/es/chunks/tab-menu-item.js +1 -1
  323. package/dist/es/chunks/tab-menu-list.js +1 -1
  324. package/dist/es/chunks/tooltip-content.js +28 -16
  325. package/dist/es/chunks/tooltip-trigger.js +6 -6
  326. package/dist/es/chunks/useArrowNavigation.js +1 -1
  327. package/dist/es/chunks/useCalendar.js +34 -11
  328. package/dist/es/chunks/useComposing.js +21 -2
  329. package/dist/es/chunks/useDirection.js +1 -1
  330. package/dist/es/chunks/useEmitAsProps.js +1 -1
  331. package/dist/es/chunks/useFocusGuards.js +1 -1
  332. package/dist/es/chunks/useFormControl.js +1 -1
  333. package/dist/es/chunks/useForwardExpose.js +1 -1
  334. package/dist/es/chunks/useForwardProps.js +1 -1
  335. package/dist/es/chunks/useForwardPropsEmits.js +1 -1
  336. package/dist/es/chunks/useForwardScopeId.js +1 -1
  337. package/dist/es/chunks/useHideOthers.js +1 -1
  338. package/dist/es/chunks/useId.js +1 -1
  339. package/dist/es/chunks/useKbd.js +1 -1
  340. package/dist/es/chunks/useLocale.js +1 -1
  341. package/dist/es/chunks/useNonce.js +1 -1
  342. package/dist/es/chunks/usePrimitiveElement.js +1 -1
  343. package/dist/es/chunks/useSize.js +1 -1
  344. package/dist/es/chunks/useTypeahead.js +1 -1
  345. package/dist/es/chunks/utils.js +1 -1
  346. package/dist/es/chunks/utils2.js +1 -1
  347. package/dist/es/chunks/utils3.js +1 -1
  348. package/dist/es/context.js +5 -0
  349. package/dist/es/dialog-body.js +2 -0
  350. package/dist/es/dialog-close.js +2 -0
  351. package/dist/es/dialog-content.js +2 -0
  352. package/dist/es/dialog-description.js +2 -0
  353. package/dist/es/dialog-footer.js +2 -0
  354. package/dist/es/dialog-header.js +2 -0
  355. package/dist/es/dialog-title.js +2 -0
  356. package/dist/es/dialog-trigger.js +2 -0
  357. package/dist/es/dialog.js +2 -0
  358. package/dist/es/drawer-body.js +2 -0
  359. package/dist/es/drawer-close.js +2 -0
  360. package/dist/es/drawer-content.js +2 -0
  361. package/dist/es/drawer-description.js +2 -0
  362. package/dist/es/drawer-footer.js +2 -0
  363. package/dist/es/drawer-header.js +2 -0
  364. package/dist/es/drawer-title.js +2 -0
  365. package/dist/es/drawer-trigger.js +2 -0
  366. package/dist/es/drawer.js +2 -0
  367. package/dist/es/index.js +26 -8
  368. package/package.json +4 -4
  369. package/src/components/dialog/context.ts +4 -0
  370. package/src/components/dialog/dialog-body.vue +30 -0
  371. package/src/components/dialog/dialog-close.vue +16 -0
  372. package/src/components/dialog/dialog-content.vue +23 -0
  373. package/src/components/dialog/dialog-description.vue +28 -0
  374. package/src/components/dialog/dialog-footer.vue +32 -0
  375. package/src/components/dialog/dialog-header.vue +29 -0
  376. package/src/components/dialog/dialog-title.vue +28 -0
  377. package/src/components/dialog/dialog-trigger.vue +16 -0
  378. package/src/components/dialog/dialog.vue +38 -0
  379. package/src/components/dialog/index.ts +18 -0
  380. package/src/components/dialog/stories/dialog.stories.ts +74 -0
  381. package/src/components/drawer/drawer-body.vue +30 -0
  382. package/src/components/drawer/drawer-close.vue +14 -0
  383. package/src/components/drawer/drawer-content.vue +259 -0
  384. package/src/components/drawer/drawer-description.vue +29 -0
  385. package/src/components/drawer/drawer-footer.vue +27 -0
  386. package/src/components/drawer/drawer-header.vue +95 -0
  387. package/src/components/drawer/drawer-title.vue +29 -0
  388. package/src/components/drawer/drawer-trigger.vue +14 -0
  389. package/src/components/drawer/drawer.vue +29 -0
  390. package/src/components/drawer/index.ts +18 -0
  391. package/src/components/drawer/stories/drawer.stories.ts +78 -0
  392. package/src/components/index.ts +2 -0
  393. package/src/components/modal/modal-content.vue +41 -17
@@ -3,7 +3,8 @@ import { t as createContext } from "./createContext.js";
3
3
  import { t as getActiveElement } from "./getActiveElement.js";
4
4
  import { p as refAutoReset } from "./dist.js";
5
5
  import { t as Primitive } from "./Primitive.js";
6
- import { n as useBodyScrollLock, t as FocusScope_default } from "./FocusScope.js";
6
+ import { t as DismissableLayer_default } from "./DismissableLayer.js";
7
+ import { r as useBodyScrollLock, t as FocusScope_default } from "./FocusScope.js";
7
8
  import { t as useFocusGuards } from "./useFocusGuards.js";
8
9
  import { t as useForwardExpose } from "./useForwardExpose.js";
9
10
  import { t as useForwardProps } from "./useForwardProps.js";
@@ -11,11 +12,10 @@ import { t as useForwardPropsEmits } from "./useForwardPropsEmits.js";
11
12
  import { t as useHideOthers } from "./useHideOthers.js";
12
13
  import { t as useId } from "./useId.js";
13
14
  import { t as Presence_default } from "./Presence.js";
14
- import { t as DismissableLayer_default } from "./DismissableLayer.js";
15
15
  import { t as useCollection } from "./Collection.js";
16
16
  import { n as PopperContent_default } from "./PopperContent.js";
17
- import { computed, createBlock, createVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, ref, renderSlot, resolveDynamicComponent, toRefs, unref, withCtx, withKeys, withModifiers } from "vue";
18
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxContent.js
17
+ import { computed, createBlock, createVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, ref, renderSlot, resolveDynamicComponent, toHandlers, toRefs, unref, watch, withCtx, withKeys, withModifiers } from "vue";
18
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxContent.js
19
19
  var ListboxContent_default = /* @__PURE__ */ defineComponent({
20
20
  __name: "ListboxContent",
21
21
  props: {
@@ -81,7 +81,7 @@ var ListboxContent_default = /* @__PURE__ */ defineComponent({
81
81
  }
82
82
  });
83
83
  //#endregion
84
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxContentImpl.js
84
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxContentImpl.js
85
85
  var [injectComboboxContentContext, provideComboboxContentContext] = /*#__PURE__*/ createContext("ComboboxContent");
86
86
  var ComboboxContentImpl_default = /* @__PURE__ */ defineComponent({
87
87
  __name: "ComboboxContentImpl",
@@ -203,6 +203,8 @@ var ComboboxContentImpl_default = /* @__PURE__ */ defineComponent({
203
203
  const emits = __emit;
204
204
  const { position } = toRefs(props);
205
205
  const rootContext = injectComboboxRootContext();
206
+ const contentId = Symbol("ComboboxContent");
207
+ watch(position, (value) => rootContext.onContentPositionChange(contentId, value), { immediate: true });
206
208
  const isEmpty = computed(() => rootContext.ignoreFilter.value ? rootContext.allItems.value.size === 0 : rootContext.filterState.value.count === 0);
207
209
  const { forwardRef, currentElement } = useForwardExpose();
208
210
  useBodyScrollLock(props.bodyLock);
@@ -230,6 +232,7 @@ var ComboboxContentImpl_default = /* @__PURE__ */ defineComponent({
230
232
  }
231
233
  });
232
234
  onUnmounted(() => {
235
+ rootContext.onContentUnmount(contentId);
233
236
  const activeElement = getActiveElement();
234
237
  if (isInputWithinContent.value && (!activeElement || activeElement === document.body)) rootContext.triggerElement.value?.focus();
235
238
  });
@@ -238,6 +241,7 @@ var ComboboxContentImpl_default = /* @__PURE__ */ defineComponent({
238
241
  const control = (target instanceof Element ? target.closest("label") : null)?.control;
239
242
  return !!control && !!rootContext.parentElement.value?.contains(control);
240
243
  }
244
+ const popperContentEvents = { placed: () => rootContext.onContentPlaced(contentId) };
241
245
  return (_ctx, _cache) => {
242
246
  return openBlock(), createBlock(unref(ListboxContent_default), { "as-child": "" }, {
243
247
  default: withCtx(() => [createVNode(unref(FocusScope_default), {
@@ -275,7 +279,7 @@ var ComboboxContentImpl_default = /* @__PURE__ */ defineComponent({
275
279
  outline: "none",
276
280
  ...unref(position) === "popper" ? popperStyle : {}
277
281
  }
278
- }), {
282
+ }, toHandlers(unref(position) === "popper" ? popperContentEvents : {})), {
279
283
  default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
280
284
  _: 3
281
285
  }, 16, [
@@ -295,7 +299,7 @@ var ComboboxContentImpl_default = /* @__PURE__ */ defineComponent({
295
299
  }
296
300
  });
297
301
  //#endregion
298
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxContent.js
302
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxContent.js
299
303
  var ComboboxContent_default = /* @__PURE__ */ defineComponent({
300
304
  __name: "ComboboxContent",
301
305
  props: {
@@ -3,7 +3,7 @@ import { t as createContext } from "./createContext.js";
3
3
  import { t as Primitive } from "./Primitive.js";
4
4
  import { t as useId } from "./useId.js";
5
5
  import { computed, createBlock, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, renderSlot, unref, withCtx } from "vue";
6
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxGroup.js
6
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxGroup.js
7
7
  var [injectListboxGroupContext, provideListboxGroupContext] = /*#__PURE__*/ createContext("ListboxGroup");
8
8
  var ListboxGroup_default = /* @__PURE__ */ defineComponent({
9
9
  __name: "ListboxGroup",
@@ -30,7 +30,7 @@ var ListboxGroup_default = /* @__PURE__ */ defineComponent({
30
30
  }
31
31
  });
32
32
  //#endregion
33
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxGroup.js
33
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxGroup.js
34
34
  var [injectComboboxGroupContext, provideComboboxGroupContext] = /*#__PURE__*/ createContext("ComboboxGroup");
35
35
  var ComboboxGroup_default = /* @__PURE__ */ defineComponent({
36
36
  __name: "ComboboxGroup",
@@ -4,7 +4,7 @@ import { t as Primitive } from "./Primitive.js";
4
4
  import { t as useComposing } from "./useComposing.js";
5
5
  import { t as usePrimitiveElement } from "./usePrimitiveElement.js";
6
6
  import { computed, createBlock, defineComponent, isRef, nextTick, onMounted, onUnmounted, openBlock, ref, renderSlot, unref, watch, watchSyncEffect, withCtx, withKeys } from "vue";
7
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxFilter.js
7
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxFilter.js
8
8
  var ListboxFilter_default = /* @__PURE__ */ defineComponent({
9
9
  __name: "ListboxFilter",
10
10
  props: {
@@ -51,7 +51,7 @@ var ListboxFilter_default = /* @__PURE__ */ defineComponent({
51
51
  onUnmounted(() => {
52
52
  rootContext.focusable.value = true;
53
53
  });
54
- const { isComposing, handleCompositionStart, handleCompositionEnd } = useComposing((event) => {
54
+ const { isComposing, shouldDeferInput, handleCompositionStart, handleCompositionUpdate, handleCompositionEnd } = useComposing((event) => {
55
55
  modelValue.value = event.target.value;
56
56
  rootContext.onCompositionEnd();
57
57
  rootContext.highlightFirstItem();
@@ -61,7 +61,7 @@ var ListboxFilter_default = /* @__PURE__ */ defineComponent({
61
61
  handleCompositionStart();
62
62
  }
63
63
  function handleInput(event) {
64
- if (isComposing.value) return;
64
+ if (shouldDeferInput.value) return;
65
65
  modelValue.value = event.target.value;
66
66
  rootContext.highlightFirstItem();
67
67
  }
@@ -94,6 +94,7 @@ var ListboxFilter_default = /* @__PURE__ */ defineComponent({
94
94
  ]), withKeys(handleKeydownEnter, ["enter"])],
95
95
  onInput: handleInput,
96
96
  onCompositionstart: onCompositionStart,
97
+ onCompositionupdate: unref(handleCompositionUpdate),
97
98
  onCompositionend: unref(handleCompositionEnd)
98
99
  }, {
99
100
  default: withCtx(() => [renderSlot(_ctx.$slots, "default", { modelValue: unref(modelValue) })]),
@@ -106,13 +107,14 @@ var ListboxFilter_default = /* @__PURE__ */ defineComponent({
106
107
  "data-disabled",
107
108
  "aria-disabled",
108
109
  "aria-activedescendant",
110
+ "onCompositionupdate",
109
111
  "onCompositionend"
110
112
  ]);
111
113
  };
112
114
  }
113
115
  });
114
116
  //#endregion
115
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxInput.js
117
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxInput.js
116
118
  var ComboboxInput_default = /* @__PURE__ */ defineComponent({
117
119
  __name: "ComboboxInput",
118
120
  props: {
@@ -153,7 +155,7 @@ var ComboboxInput_default = /* @__PURE__ */ defineComponent({
153
155
  onMounted(() => {
154
156
  if (currentElement.value) rootContext.onInputElementChange(currentElement.value);
155
157
  });
156
- const { isComposing, handleCompositionStart, handleCompositionEnd } = useComposing((event) => {
158
+ const { isComposing, shouldDeferInput, handleCompositionStart, handleCompositionUpdate, handleCompositionEnd } = useComposing((event) => {
157
159
  const el = event.target;
158
160
  if (el) processInputValue(el.value);
159
161
  });
@@ -174,7 +176,7 @@ var ComboboxInput_default = /* @__PURE__ */ defineComponent({
174
176
  } else rootContext.filterSearch.value = value;
175
177
  }
176
178
  function handleInput(event) {
177
- if (isComposing.value) return;
179
+ if (shouldDeferInput.value) return;
178
180
  processInputValue(event.target.value);
179
181
  }
180
182
  function handleFocus() {
@@ -238,6 +240,7 @@ var ComboboxInput_default = /* @__PURE__ */ defineComponent({
238
240
  onFocus: handleFocus,
239
241
  onBlur: handleBlur,
240
242
  onCompositionstart: unref(handleCompositionStart),
243
+ onCompositionupdate: unref(handleCompositionUpdate),
241
244
  onCompositionend: unref(handleCompositionEnd)
242
245
  }, {
243
246
  default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
@@ -251,6 +254,7 @@ var ComboboxInput_default = /* @__PURE__ */ defineComponent({
251
254
  "aria-expanded",
252
255
  "aria-controls",
253
256
  "onCompositionstart",
257
+ "onCompositionupdate",
254
258
  "onCompositionend"
255
259
  ]);
256
260
  };
@@ -8,7 +8,7 @@ import { t as usePrimitiveElement } from "./usePrimitiveElement.js";
8
8
  import { t as useCollection } from "./Collection.js";
9
9
  import { n as injectComboboxGroupContext } from "./ComboboxGroup.js";
10
10
  import { computed, createBlock, createCommentVNode, createTextVNode, createVNode, defineComponent, mergeProps, onMounted, onUnmounted, openBlock, renderSlot, toDisplayString, unref, withCtx, withKeys, withMemo, withModifiers } from "vue";
11
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxItem.js
11
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxItem.js
12
12
  var LISTBOX_SELECT = "listbox.select";
13
13
  var [injectListboxItemContext, provideListboxItemContext] = /*#__PURE__*/ createContext("ListboxItem");
14
14
  var ListboxItem_default = /* @__PURE__ */ defineComponent({
@@ -65,7 +65,8 @@ var ListboxItem_default = /* @__PURE__ */ defineComponent({
65
65
  isHighlighted.value,
66
66
  isSelected.value,
67
67
  disabled.value,
68
- unref(rootContext).focusable.value
68
+ unref(rootContext).focusable.value,
69
+ ...Object.entries(_ctx.$attrs).flat()
69
70
  ], () => createVNode(unref(Primitive), mergeProps({ id: unref(id) }, _ctx.$attrs, {
70
71
  ref: unref(forwardRef),
71
72
  role: "option",
@@ -104,7 +105,7 @@ var ListboxItem_default = /* @__PURE__ */ defineComponent({
104
105
  }
105
106
  });
106
107
  //#endregion
107
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxItem.js
108
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxItem.js
108
109
  var ComboboxItem_default = /* @__PURE__ */ defineComponent({
109
110
  __name: "ComboboxItem",
110
111
  props: {
@@ -3,7 +3,7 @@ import { t as useForwardExpose } from "./useForwardExpose.js";
3
3
  import { t as useId } from "./useId.js";
4
4
  import { n as injectComboboxGroupContext } from "./ComboboxGroup.js";
5
5
  import { createBlock, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
6
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxLabel.js
6
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxLabel.js
7
7
  var ComboboxLabel_default = /* @__PURE__ */ defineComponent({
8
8
  __name: "ComboboxLabel",
9
9
  props: {
@@ -13,7 +13,7 @@ import { t as VisuallyHiddenInput_default } from "./VisuallyHiddenInput.js";
13
13
  import { i as getFocusIntent } from "./utils2.js";
14
14
  import { t as PopperRoot_default } from "./PopperRoot.js";
15
15
  import { computed, createBlock, createCommentVNode, createVNode, defineComponent, getCurrentInstance, isRef, mergeProps, nextTick, onMounted, openBlock, ref, renderSlot, toRefs, unref, watch, withCtx } from "vue";
16
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/shared/arrays.js
16
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/shared/arrays.js
17
17
  /**
18
18
  * The function `findValuesBetween` takes an array and two values, then returns a subarray containing
19
19
  * elements between the first occurrence of the start value and the first occurrence of the end value
@@ -36,7 +36,7 @@ function findValuesBetween(array, start, end) {
36
36
  return array.slice(minIndex, maxIndex + 1);
37
37
  }
38
38
  //#endregion
39
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/shared/useFilter.js
39
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/shared/useFilter.js
40
40
  /**
41
41
  * Provides locale-aware string filtering functions.
42
42
  * Uses `Intl.Collator` for comparison to ensure proper Unicode handling.
@@ -74,12 +74,11 @@ function useFilter(options) {
74
74
  if (substring.length === 0) return true;
75
75
  string = string.normalize("NFC");
76
76
  substring = substring.normalize("NFC");
77
- let scan = 0;
77
+ if (substring.length > string.length) return false;
78
+ const compare = collator.value.compare;
79
+ if (string.includes(substring)) return true;
78
80
  const sliceLen = substring.length;
79
- for (; scan + sliceLen <= string.length; scan++) {
80
- const slice = string.slice(scan, scan + sliceLen);
81
- if (collator.value.compare(substring, slice) === 0) return true;
82
- }
81
+ for (let scan = 0; scan + sliceLen <= string.length; scan++) if (compare(substring, string.slice(scan, scan + sliceLen)) === 0) return true;
83
82
  return false;
84
83
  };
85
84
  return {
@@ -89,7 +88,7 @@ function useFilter(options) {
89
88
  };
90
89
  }
91
90
  //#endregion
92
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/utils.js
91
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/utils.js
93
92
  function valueComparator(value, currentValue, comparator) {
94
93
  if (value === void 0) return false;
95
94
  else if (Array.isArray(value)) return value.some((val) => compare(val, currentValue, comparator));
@@ -103,8 +102,9 @@ function compare(value, currentValue, comparator) {
103
102
  return isEqual(value, currentValue);
104
103
  }
105
104
  //#endregion
106
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxRoot.js
105
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Listbox/ListboxRoot.js
107
106
  var [injectListboxRootContext, provideListboxRootContext] = /*#__PURE__*/ createContext("ListboxRoot");
107
+ var [injectListboxHighlightScrollContext, provideListboxHighlightScrollContext] = /*#__PURE__*/ createContext("ListboxHighlightScroll");
108
108
  var ListboxRoot_default = /* @__PURE__ */ defineComponent({
109
109
  __name: "ListboxRoot",
110
110
  props: {
@@ -173,11 +173,16 @@ var ListboxRoot_default = /* @__PURE__ */ defineComponent({
173
173
  const props = __props;
174
174
  const emits = __emit;
175
175
  const { multiple, highlightOnHover, orientation, disabled, selectionBehavior, dir: propDir } = toRefs(props);
176
- const { getItems } = useCollection({ isProvider: true });
176
+ const { getItems, getItem } = useCollection({ isProvider: true });
177
177
  const { handleTypeaheadSearch } = useTypeahead();
178
178
  const { primitiveElement, currentElement } = usePrimitiveElement();
179
179
  const kbd = useKbd();
180
180
  const dir = useDirection(propDir);
181
+ const highlightScrollContext = injectListboxHighlightScrollContext(null);
182
+ provideListboxHighlightScrollContext({
183
+ suppressHighlightScroll: ref(false),
184
+ onHighlightScrollRequest: () => {}
185
+ });
181
186
  const isFormControl = useFormControl(currentElement);
182
187
  const firstValue = ref();
183
188
  const isUserAction = ref(false);
@@ -219,9 +224,15 @@ var ListboxRoot_default = /* @__PURE__ */ defineComponent({
219
224
  function changeHighlight(el, scrollIntoView = true, focus) {
220
225
  if (!el) return;
221
226
  highlightedElement.value = el;
222
- if (focus ?? focusable.value) highlightedElement.value.focus();
223
- if (scrollIntoView) highlightedElement.value.scrollIntoView({ block: "nearest" });
224
- const highlightedItem = getItems().find((i) => i.ref === el);
227
+ const suppressHighlightScroll = highlightScrollContext?.suppressHighlightScroll.value ?? false;
228
+ if (focus ?? focusable.value) if (suppressHighlightScroll) highlightedElement.value.focus({ preventScroll: true });
229
+ else highlightedElement.value.focus();
230
+ if (suppressHighlightScroll) highlightScrollContext?.onHighlightScrollRequest(scrollIntoView ? () => {
231
+ const element = highlightedElement.value;
232
+ if (element?.isConnected) element.scrollIntoView({ block: "nearest" });
233
+ } : void 0);
234
+ else if (scrollIntoView) highlightedElement.value.scrollIntoView({ block: "nearest" });
235
+ const highlightedItem = getItem(el);
225
236
  emits("highlight", highlightedItem);
226
237
  }
227
238
  function highlightItem(value) {
@@ -429,7 +440,49 @@ var ListboxRoot_default = /* @__PURE__ */ defineComponent({
429
440
  }
430
441
  });
431
442
  //#endregion
432
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxRoot.js
443
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/useComboboxContentPositioning.js
444
+ function useComboboxContentPositioning(open) {
445
+ const contentPosition = ref("inline");
446
+ const contentPlaced = ref(false);
447
+ const currentContent = ref();
448
+ const suppressHighlightScroll = computed(() => contentPosition.value === "popper" && !contentPlaced.value);
449
+ let pendingHighlightScroll;
450
+ provideListboxHighlightScrollContext({
451
+ suppressHighlightScroll,
452
+ onHighlightScrollRequest(scroll) {
453
+ pendingHighlightScroll = scroll;
454
+ }
455
+ });
456
+ function onContentPositionChange(content, position) {
457
+ if (currentContent.value !== content || contentPosition.value !== position) {
458
+ contentPlaced.value = false;
459
+ pendingHighlightScroll = void 0;
460
+ }
461
+ currentContent.value = content;
462
+ contentPosition.value = position;
463
+ }
464
+ function onContentPlaced(content) {
465
+ if (currentContent.value !== content || contentPosition.value !== "popper" || contentPlaced.value) return;
466
+ contentPlaced.value = true;
467
+ const scroll = pendingHighlightScroll;
468
+ pendingHighlightScroll = void 0;
469
+ if (open.value) scroll?.();
470
+ }
471
+ function onContentUnmount(content) {
472
+ if (currentContent.value !== content) return;
473
+ currentContent.value = void 0;
474
+ contentPosition.value = "inline";
475
+ contentPlaced.value = false;
476
+ pendingHighlightScroll = void 0;
477
+ }
478
+ return {
479
+ onContentPositionChange,
480
+ onContentPlaced,
481
+ onContentUnmount
482
+ };
483
+ }
484
+ //#endregion
485
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxRoot.js
433
486
  var [injectComboboxRootContext, provideComboboxRootContext] = /*#__PURE__*/ createContext("ComboboxRoot");
434
487
  var ComboboxRoot_default = /* @__PURE__ */ defineComponent({
435
488
  __name: "ComboboxRoot",
@@ -559,6 +612,7 @@ var ComboboxRoot_default = /* @__PURE__ */ defineComponent({
559
612
  const inputElement = ref();
560
613
  const triggerElement = ref();
561
614
  const highlightedElement = computed(() => primitiveElement.value?.highlightedElement ?? void 0);
615
+ const contentPositioning = useComboboxContentPositioning(open);
562
616
  const allItems = ref(/* @__PURE__ */ new Map());
563
617
  const allGroups = ref(/* @__PURE__ */ new Map());
564
618
  const { contains } = useFilter({ sensitivity: "base" });
@@ -608,6 +662,7 @@ var ComboboxRoot_default = /* @__PURE__ */ defineComponent({
608
662
  disabled,
609
663
  open,
610
664
  onOpenChange,
665
+ ...contentPositioning,
611
666
  contentId: "",
612
667
  isUserInputted,
613
668
  isVirtual,
@@ -1,7 +1,7 @@
1
1
  import { t as Primitive } from "./Primitive.js";
2
2
  import { t as useForwardExpose } from "./useForwardExpose.js";
3
3
  import { createBlock, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
4
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxSeparator.js
4
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Combobox/ComboboxSeparator.js
5
5
  var ComboboxSeparator_default = /* @__PURE__ */ defineComponent({
6
6
  __name: "ComboboxSeparator",
7
7
  props: {
@@ -1,6 +1,6 @@
1
1
  import { t as createContext } from "./createContext.js";
2
2
  import { defineComponent, renderSlot, toRefs } from "vue";
3
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/ConfigProvider/ConfigProvider.js
3
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/ConfigProvider/ConfigProvider.js
4
4
  var [injectConfigProviderContext, provideConfigProviderContext] = /*#__PURE__*/ createContext("ConfigProvider");
5
5
  var ConfigProvider_default = /* @__PURE__ */ defineComponent({
6
6
  inheritAttrs: false,
@@ -2,7 +2,7 @@ import { t as Primitive } from "./Primitive.js";
2
2
  import { t as useForwardExpose } from "./useForwardExpose.js";
3
3
  import { n as injectDialogRootContext } from "./DialogRoot.js";
4
4
  import { createBlock, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
5
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogClose.js
5
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogClose.js
6
6
  var DialogClose_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "DialogClose",
8
8
  props: {
@@ -2,7 +2,7 @@ import { t as Primitive } from "./Primitive.js";
2
2
  import { t as useForwardExpose } from "./useForwardExpose.js";
3
3
  import { n as injectDialogRootContext } from "./DialogRoot.js";
4
4
  import { createBlock, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
5
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogDescription.js
5
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogDescription.js
6
6
  var DialogDescription_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "DialogDescription",
8
8
  props: {
@@ -1,17 +1,17 @@
1
1
  import { t as getActiveElement } from "./getActiveElement.js";
2
2
  import { t as Primitive } from "./Primitive.js";
3
- import { n as useBodyScrollLock, t as FocusScope_default } from "./FocusScope.js";
3
+ import { t as DismissableLayer_default } from "./DismissableLayer.js";
4
+ import { r as useBodyScrollLock, t as FocusScope_default } from "./FocusScope.js";
4
5
  import { t as useEmitAsProps } from "./useEmitAsProps.js";
5
6
  import { t as useForwardExpose } from "./useForwardExpose.js";
6
7
  import { t as useHideOthers } from "./useHideOthers.js";
7
8
  import { t as useId } from "./useId.js";
8
9
  import { t as Presence_default } from "./Presence.js";
9
10
  import { n as injectDialogRootContext } from "./DialogRoot.js";
10
- import { t as DismissableLayer_default } from "./DismissableLayer.js";
11
11
  import { c as getOpenState } from "./utils.js";
12
12
  import { t as Teleport_default } from "./Teleport.js";
13
13
  import { computed, createBlock, createCommentVNode, createVNode, defineComponent, guardReactiveProps, mergeProps, normalizeProps, onMounted, openBlock, ref, renderSlot, unref, vShow, watch, withCtx, withDirectives, withModifiers } from "vue";
14
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/utils.js
14
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/utils.js
15
15
  var DEFAULT_TITLE_NAME = "DialogTitle";
16
16
  var DEFAULT_CONTENT_NAME = "DialogContent";
17
17
  function useWarning({ titleName = DEFAULT_TITLE_NAME, contentName = DEFAULT_CONTENT_NAME, componentLink = "dialog.html#title", titleId, descriptionId, contentElement }) {
@@ -30,7 +30,7 @@ For more information, see https://www.reka-ui.com/docs/components/${componentLin
30
30
  });
31
31
  }
32
32
  //#endregion
33
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContentImpl.js
33
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContentImpl.js
34
34
  var DialogContentImpl_default = /* @__PURE__ */ defineComponent({
35
35
  __name: "DialogContentImpl",
36
36
  props: {
@@ -131,7 +131,7 @@ var DialogContentImpl_default = /* @__PURE__ */ defineComponent({
131
131
  }
132
132
  });
133
133
  //#endregion
134
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContentModal.js
134
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContentModal.js
135
135
  var DialogContentModal_default = /* @__PURE__ */ defineComponent({
136
136
  __name: "DialogContentModal",
137
137
  props: {
@@ -219,7 +219,7 @@ var DialogContentModal_default = /* @__PURE__ */ defineComponent({
219
219
  }
220
220
  });
221
221
  //#endregion
222
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContentNonModal.js
222
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContentNonModal.js
223
223
  var DialogContentNonModal_default = /* @__PURE__ */ defineComponent({
224
224
  __name: "DialogContentNonModal",
225
225
  props: {
@@ -307,7 +307,7 @@ var DialogContentNonModal_default = /* @__PURE__ */ defineComponent({
307
307
  }
308
308
  });
309
309
  //#endregion
310
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContent.js
310
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogContent.js
311
311
  var DialogContent_default = /* @__PURE__ */ defineComponent({
312
312
  __name: "DialogContent",
313
313
  props: {
@@ -343,15 +343,16 @@ var DialogContent_default = /* @__PURE__ */ defineComponent({
343
343
  const rootContext = injectDialogRootContext();
344
344
  const emitsAsProps = useEmitAsProps(emits);
345
345
  const { forwardRef } = useForwardExpose();
346
+ const staysMounted = computed(() => props.forceMount || !rootContext.unmountOnHide.value);
346
347
  return (_ctx, _cache) => {
347
348
  return openBlock(), createBlock(unref(Presence_default), {
348
- present: _ctx.forceMount || unref(rootContext).open.value,
349
- "force-mount": _ctx.forceMount || !unref(rootContext).unmountOnHide.value
349
+ present: unref(rootContext).open.value,
350
+ "force-mount": staysMounted.value
350
351
  }, {
351
352
  default: withCtx(({ present }) => [unref(rootContext).modal.value ? withDirectives((openBlock(), createBlock(DialogContentModal_default, mergeProps({
352
353
  key: 0,
353
354
  ref: unref(forwardRef),
354
- present: unref(rootContext).unmountOnHide.value || present
355
+ present: staysMounted.value ? present : true
355
356
  }, {
356
357
  ...props,
357
358
  ...unref(emitsAsProps),
@@ -359,10 +360,10 @@ var DialogContent_default = /* @__PURE__ */ defineComponent({
359
360
  }), {
360
361
  default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
361
362
  _: 2
362
- }, 1040, ["present"])), [[vShow, unref(rootContext).unmountOnHide.value || present]]) : withDirectives((openBlock(), createBlock(DialogContentNonModal_default, mergeProps({
363
+ }, 1040, ["present"])), [[vShow, _ctx.forceMount || unref(rootContext).unmountOnHide.value || present]]) : withDirectives((openBlock(), createBlock(DialogContentNonModal_default, mergeProps({
363
364
  key: 1,
364
365
  ref: unref(forwardRef),
365
- present: unref(rootContext).unmountOnHide.value || present
366
+ present: staysMounted.value ? present : true
366
367
  }, {
367
368
  ...props,
368
369
  ...unref(emitsAsProps),
@@ -370,14 +371,14 @@ var DialogContent_default = /* @__PURE__ */ defineComponent({
370
371
  }), {
371
372
  default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
372
373
  _: 2
373
- }, 1040, ["present"])), [[vShow, unref(rootContext).unmountOnHide.value || present]])]),
374
+ }, 1040, ["present"])), [[vShow, _ctx.forceMount || unref(rootContext).unmountOnHide.value || present]])]),
374
375
  _: 3
375
376
  }, 8, ["present", "force-mount"]);
376
377
  };
377
378
  }
378
379
  });
379
380
  //#endregion
380
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogOverlayImpl.js
381
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogOverlayImpl.js
381
382
  var DialogOverlayImpl_default = /* @__PURE__ */ defineComponent({
382
383
  __name: "DialogOverlayImpl",
383
384
  props: {
@@ -424,7 +425,7 @@ var DialogOverlayImpl_default = /* @__PURE__ */ defineComponent({
424
425
  }
425
426
  });
426
427
  //#endregion
427
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogOverlay.js
428
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogOverlay.js
428
429
  var DialogOverlay_default = /* @__PURE__ */ defineComponent({
429
430
  __name: "DialogOverlay",
430
431
  props: {
@@ -442,19 +443,21 @@ var DialogOverlay_default = /* @__PURE__ */ defineComponent({
442
443
  }
443
444
  },
444
445
  setup(__props) {
446
+ const props = __props;
445
447
  const rootContext = injectDialogRootContext();
446
448
  const { forwardRef } = useForwardExpose();
449
+ const staysMounted = computed(() => props.forceMount || !rootContext.unmountOnHide.value);
447
450
  return (_ctx, _cache) => {
448
451
  return unref(rootContext)?.modal.value ? (openBlock(), createBlock(unref(Presence_default), {
449
452
  key: 0,
450
- present: _ctx.forceMount || unref(rootContext).open.value,
451
- "force-mount": _ctx.forceMount || !unref(rootContext).unmountOnHide.value
453
+ present: unref(rootContext).open.value,
454
+ "force-mount": staysMounted.value
452
455
  }, {
453
456
  default: withCtx(({ present }) => [withDirectives(createVNode(DialogOverlayImpl_default, mergeProps(_ctx.$attrs, {
454
457
  ref: unref(forwardRef),
455
458
  as: _ctx.as,
456
459
  "as-child": _ctx.asChild,
457
- present: unref(rootContext).unmountOnHide.value || present
460
+ present: staysMounted.value ? present : true
458
461
  }), {
459
462
  default: withCtx(() => [renderSlot(_ctx.$slots, "default")]),
460
463
  _: 2
@@ -462,14 +465,14 @@ var DialogOverlay_default = /* @__PURE__ */ defineComponent({
462
465
  "as",
463
466
  "as-child",
464
467
  "present"
465
- ]), [[vShow, unref(rootContext).unmountOnHide.value || present]])]),
468
+ ]), [[vShow, _ctx.forceMount || unref(rootContext).unmountOnHide.value || present]])]),
466
469
  _: 3
467
470
  }, 8, ["present", "force-mount"])) : createCommentVNode("v-if", true);
468
471
  };
469
472
  }
470
473
  });
471
474
  //#endregion
472
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogPortal.js
475
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogPortal.js
473
476
  var DialogPortal_default = /* @__PURE__ */ defineComponent({
474
477
  __name: "DialogPortal",
475
478
  props: {
@@ -1,7 +1,7 @@
1
1
  import { t as createContext } from "./createContext.js";
2
2
  import { p as useVModel } from "./dist2.js";
3
3
  import { defineComponent, ref, renderSlot, toRefs, unref } from "vue";
4
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogRoot.js
4
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogRoot.js
5
5
  var [injectDialogRootContext, provideDialogRootContext] = /*#__PURE__*/ createContext("DialogRoot");
6
6
  var DialogRoot_default = /* @__PURE__ */ defineComponent({
7
7
  inheritAttrs: false,
@@ -2,7 +2,7 @@ import { t as Primitive } from "./Primitive.js";
2
2
  import { t as useForwardExpose } from "./useForwardExpose.js";
3
3
  import { n as injectDialogRootContext } from "./DialogRoot.js";
4
4
  import { createBlock, defineComponent, mergeProps, openBlock, renderSlot, unref, withCtx } from "vue";
5
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogTitle.js
5
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogTitle.js
6
6
  var DialogTitle_default = /* @__PURE__ */ defineComponent({
7
7
  __name: "DialogTitle",
8
8
  props: {
@@ -3,7 +3,7 @@ import { t as useForwardExpose } from "./useForwardExpose.js";
3
3
  import { t as useId } from "./useId.js";
4
4
  import { n as injectDialogRootContext } from "./DialogRoot.js";
5
5
  import { createBlock, defineComponent, mergeProps, onMounted, openBlock, renderSlot, unref, withCtx } from "vue";
6
- //#region ../../node_modules/.pnpm/reka-ui@2.10.1_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogTrigger.js
6
+ //#region ../../node_modules/.pnpm/reka-ui@2.10.5_vue@3.5.41_typescript@6.0.3_/node_modules/reka-ui/dist/Dialog/DialogTrigger.js
7
7
  var DialogTrigger_default = /* @__PURE__ */ defineComponent({
8
8
  __name: "DialogTrigger",
9
9
  props: {