reka-ui 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (902) hide show
  1. package/dist/Accordion/AccordionHeader.cjs.map +1 -1
  2. package/dist/Accordion/AccordionHeader.js.map +1 -1
  3. package/dist/Accordion/AccordionItem.cjs.map +1 -1
  4. package/dist/Accordion/AccordionItem.js.map +1 -1
  5. package/dist/Accordion/AccordionRoot.cjs.map +1 -1
  6. package/dist/Accordion/AccordionRoot.js.map +1 -1
  7. package/dist/Accordion/AccordionTrigger.cjs.map +1 -1
  8. package/dist/Accordion/AccordionTrigger.js.map +1 -1
  9. package/dist/AlertDialog/AlertDialogCancel.cjs.map +1 -1
  10. package/dist/AlertDialog/AlertDialogCancel.js.map +1 -1
  11. package/dist/AspectRatio/AspectRatio.cjs.map +1 -1
  12. package/dist/AspectRatio/AspectRatio.js.map +1 -1
  13. package/dist/Avatar/AvatarFallback.cjs +11 -14
  14. package/dist/Avatar/AvatarFallback.cjs.map +1 -1
  15. package/dist/Avatar/AvatarFallback.js +12 -15
  16. package/dist/Avatar/AvatarFallback.js.map +1 -1
  17. package/dist/Avatar/AvatarImage.cjs +3 -2
  18. package/dist/Avatar/AvatarImage.cjs.map +1 -1
  19. package/dist/Avatar/AvatarImage.js +3 -2
  20. package/dist/Avatar/AvatarImage.js.map +1 -1
  21. package/dist/Avatar/AvatarRoot.cjs +1 -1
  22. package/dist/Avatar/AvatarRoot.cjs.map +1 -1
  23. package/dist/Avatar/AvatarRoot.js +1 -1
  24. package/dist/Avatar/AvatarRoot.js.map +1 -1
  25. package/dist/Avatar/utils.cjs +43 -16
  26. package/dist/Avatar/utils.cjs.map +1 -1
  27. package/dist/Avatar/utils.js +44 -17
  28. package/dist/Avatar/utils.js.map +1 -1
  29. package/dist/Calendar/CalendarCell.cjs +3 -3
  30. package/dist/Calendar/CalendarCell.cjs.map +1 -1
  31. package/dist/Calendar/CalendarCell.js +3 -3
  32. package/dist/Calendar/CalendarCell.js.map +1 -1
  33. package/dist/Calendar/CalendarCellTrigger.cjs +5 -1
  34. package/dist/Calendar/CalendarCellTrigger.cjs.map +1 -1
  35. package/dist/Calendar/CalendarCellTrigger.js +5 -1
  36. package/dist/Calendar/CalendarCellTrigger.js.map +1 -1
  37. package/dist/Calendar/CalendarGrid.cjs.map +1 -1
  38. package/dist/Calendar/CalendarGrid.js.map +1 -1
  39. package/dist/Calendar/CalendarHeading.cjs +1 -1
  40. package/dist/Calendar/CalendarHeading.cjs.map +1 -1
  41. package/dist/Calendar/CalendarHeading.js +1 -1
  42. package/dist/Calendar/CalendarHeading.js.map +1 -1
  43. package/dist/Calendar/CalendarNext.cjs.map +1 -1
  44. package/dist/Calendar/CalendarNext.js.map +1 -1
  45. package/dist/Calendar/CalendarPrev.cjs.map +1 -1
  46. package/dist/Calendar/CalendarPrev.js.map +1 -1
  47. package/dist/Calendar/CalendarRoot.cjs +7 -4
  48. package/dist/Calendar/CalendarRoot.cjs.map +1 -1
  49. package/dist/Calendar/CalendarRoot.js +7 -4
  50. package/dist/Calendar/CalendarRoot.js.map +1 -1
  51. package/dist/Calendar/useCalendar.cjs.map +1 -1
  52. package/dist/Calendar/useCalendar.js.map +1 -1
  53. package/dist/Checkbox/CheckboxGroupRoot.cjs +1 -1
  54. package/dist/Checkbox/CheckboxGroupRoot.cjs.map +1 -1
  55. package/dist/Checkbox/CheckboxGroupRoot.js +1 -1
  56. package/dist/Checkbox/CheckboxGroupRoot.js.map +1 -1
  57. package/dist/Checkbox/CheckboxIndicator.cjs.map +1 -1
  58. package/dist/Checkbox/CheckboxIndicator.js.map +1 -1
  59. package/dist/Checkbox/CheckboxRoot.cjs +1 -1
  60. package/dist/Checkbox/CheckboxRoot.cjs.map +1 -1
  61. package/dist/Checkbox/CheckboxRoot.js +1 -1
  62. package/dist/Checkbox/CheckboxRoot.js.map +1 -1
  63. package/dist/Collapsible/CollapsibleContent.cjs +1 -1
  64. package/dist/Collapsible/CollapsibleContent.cjs.map +1 -1
  65. package/dist/Collapsible/CollapsibleContent.js +1 -1
  66. package/dist/Collapsible/CollapsibleContent.js.map +1 -1
  67. package/dist/Collapsible/CollapsibleRoot.cjs +2 -0
  68. package/dist/Collapsible/CollapsibleRoot.cjs.map +1 -1
  69. package/dist/Collapsible/CollapsibleRoot.js +2 -0
  70. package/dist/Collapsible/CollapsibleRoot.js.map +1 -1
  71. package/dist/Collapsible/CollapsibleTrigger.cjs +1 -1
  72. package/dist/Collapsible/CollapsibleTrigger.js +1 -1
  73. package/dist/Collection/Collection.cjs.map +1 -1
  74. package/dist/Collection/Collection.js.map +1 -1
  75. package/dist/Combobox/ComboboxAnchor.cjs.map +1 -1
  76. package/dist/Combobox/ComboboxAnchor.js.map +1 -1
  77. package/dist/Combobox/ComboboxArrow.cjs.map +1 -1
  78. package/dist/Combobox/ComboboxArrow.js.map +1 -1
  79. package/dist/Combobox/ComboboxCancel.cjs +1 -0
  80. package/dist/Combobox/ComboboxCancel.cjs.map +1 -1
  81. package/dist/Combobox/ComboboxCancel.js +1 -0
  82. package/dist/Combobox/ComboboxCancel.js.map +1 -1
  83. package/dist/Combobox/ComboboxContent.cjs.map +1 -1
  84. package/dist/Combobox/ComboboxContent.js.map +1 -1
  85. package/dist/Combobox/ComboboxContentImpl.cjs +2 -2
  86. package/dist/Combobox/ComboboxContentImpl.cjs.map +1 -1
  87. package/dist/Combobox/ComboboxContentImpl.js +2 -2
  88. package/dist/Combobox/ComboboxContentImpl.js.map +1 -1
  89. package/dist/Combobox/ComboboxEmpty.cjs.map +1 -1
  90. package/dist/Combobox/ComboboxEmpty.js.map +1 -1
  91. package/dist/Combobox/ComboboxGroup.cjs +1 -1
  92. package/dist/Combobox/ComboboxGroup.cjs.map +1 -1
  93. package/dist/Combobox/ComboboxGroup.js +1 -1
  94. package/dist/Combobox/ComboboxGroup.js.map +1 -1
  95. package/dist/Combobox/ComboboxInput.cjs +9 -1
  96. package/dist/Combobox/ComboboxInput.cjs.map +1 -1
  97. package/dist/Combobox/ComboboxInput.js +9 -1
  98. package/dist/Combobox/ComboboxInput.js.map +1 -1
  99. package/dist/Combobox/ComboboxItem.cjs +4 -3
  100. package/dist/Combobox/ComboboxItem.cjs.map +1 -1
  101. package/dist/Combobox/ComboboxItem.js +4 -3
  102. package/dist/Combobox/ComboboxItem.js.map +1 -1
  103. package/dist/Combobox/ComboboxLabel.cjs +1 -1
  104. package/dist/Combobox/ComboboxLabel.js +1 -1
  105. package/dist/Combobox/ComboboxRoot.cjs +1 -2
  106. package/dist/Combobox/ComboboxRoot.cjs.map +1 -1
  107. package/dist/Combobox/ComboboxRoot.js +1 -2
  108. package/dist/Combobox/ComboboxRoot.js.map +1 -1
  109. package/dist/Combobox/ComboboxTrigger.cjs.map +1 -1
  110. package/dist/Combobox/ComboboxTrigger.js.map +1 -1
  111. package/dist/Combobox/ComboboxViewport.cjs.map +1 -1
  112. package/dist/Combobox/ComboboxViewport.js.map +1 -1
  113. package/dist/Combobox/ComboboxVirtualizer.cjs.map +1 -1
  114. package/dist/Combobox/ComboboxVirtualizer.js.map +1 -1
  115. package/dist/ConfigProvider/ConfigProvider.cjs.map +1 -1
  116. package/dist/ConfigProvider/ConfigProvider.js.map +1 -1
  117. package/dist/ContextMenu/ContextMenuContent.cjs.map +1 -1
  118. package/dist/ContextMenu/ContextMenuContent.js.map +1 -1
  119. package/dist/ContextMenu/ContextMenuPortal.cjs.map +1 -1
  120. package/dist/ContextMenu/ContextMenuPortal.js.map +1 -1
  121. package/dist/ContextMenu/ContextMenuRoot.cjs.map +1 -1
  122. package/dist/ContextMenu/ContextMenuRoot.js.map +1 -1
  123. package/dist/ContextMenu/ContextMenuSub.cjs.map +1 -1
  124. package/dist/ContextMenu/ContextMenuSub.js.map +1 -1
  125. package/dist/ContextMenu/ContextMenuTrigger.cjs +2 -2
  126. package/dist/ContextMenu/ContextMenuTrigger.cjs.map +1 -1
  127. package/dist/ContextMenu/ContextMenuTrigger.js +2 -2
  128. package/dist/ContextMenu/ContextMenuTrigger.js.map +1 -1
  129. package/dist/DateField/DateFieldInput.cjs +1 -0
  130. package/dist/DateField/DateFieldInput.cjs.map +1 -1
  131. package/dist/DateField/DateFieldInput.js +1 -0
  132. package/dist/DateField/DateFieldInput.js.map +1 -1
  133. package/dist/DateField/DateFieldRoot.cjs +7 -1
  134. package/dist/DateField/DateFieldRoot.cjs.map +1 -1
  135. package/dist/DateField/DateFieldRoot.js +7 -1
  136. package/dist/DateField/DateFieldRoot.js.map +1 -1
  137. package/dist/DatePicker/DatePickerArrow.cjs.map +1 -1
  138. package/dist/DatePicker/DatePickerArrow.js.map +1 -1
  139. package/dist/DatePicker/DatePickerCalendar.cjs.map +1 -1
  140. package/dist/DatePicker/DatePickerCalendar.js.map +1 -1
  141. package/dist/DatePicker/DatePickerCell.cjs.map +1 -1
  142. package/dist/DatePicker/DatePickerCell.js.map +1 -1
  143. package/dist/DatePicker/DatePickerCellTrigger.cjs.map +1 -1
  144. package/dist/DatePicker/DatePickerCellTrigger.js.map +1 -1
  145. package/dist/DatePicker/DatePickerClose.cjs.map +1 -1
  146. package/dist/DatePicker/DatePickerClose.js.map +1 -1
  147. package/dist/DatePicker/DatePickerContent.cjs +8 -3
  148. package/dist/DatePicker/DatePickerContent.cjs.map +1 -1
  149. package/dist/DatePicker/DatePickerContent.js +9 -4
  150. package/dist/DatePicker/DatePickerContent.js.map +1 -1
  151. package/dist/DatePicker/DatePickerGrid.cjs.map +1 -1
  152. package/dist/DatePicker/DatePickerGrid.js.map +1 -1
  153. package/dist/DatePicker/DatePickerGridBody.cjs.map +1 -1
  154. package/dist/DatePicker/DatePickerGridBody.js.map +1 -1
  155. package/dist/DatePicker/DatePickerGridHead.cjs.map +1 -1
  156. package/dist/DatePicker/DatePickerGridHead.js.map +1 -1
  157. package/dist/DatePicker/DatePickerGridRow.cjs.map +1 -1
  158. package/dist/DatePicker/DatePickerGridRow.js.map +1 -1
  159. package/dist/DatePicker/DatePickerHeadCell.cjs.map +1 -1
  160. package/dist/DatePicker/DatePickerHeadCell.js.map +1 -1
  161. package/dist/DatePicker/DatePickerHeader.cjs.map +1 -1
  162. package/dist/DatePicker/DatePickerHeader.js.map +1 -1
  163. package/dist/DatePicker/DatePickerHeading.cjs.map +1 -1
  164. package/dist/DatePicker/DatePickerHeading.js.map +1 -1
  165. package/dist/DatePicker/DatePickerInput.cjs.map +1 -1
  166. package/dist/DatePicker/DatePickerInput.js.map +1 -1
  167. package/dist/DatePicker/DatePickerNext.cjs.map +1 -1
  168. package/dist/DatePicker/DatePickerNext.js.map +1 -1
  169. package/dist/DatePicker/DatePickerPrev.cjs.map +1 -1
  170. package/dist/DatePicker/DatePickerPrev.js.map +1 -1
  171. package/dist/DatePicker/DatePickerRoot.cjs +1 -0
  172. package/dist/DatePicker/DatePickerRoot.cjs.map +1 -1
  173. package/dist/DatePicker/DatePickerRoot.js +1 -0
  174. package/dist/DatePicker/DatePickerRoot.js.map +1 -1
  175. package/dist/DatePicker/DatePickerTrigger.cjs.map +1 -1
  176. package/dist/DatePicker/DatePickerTrigger.js.map +1 -1
  177. package/dist/DateRangeField/DateRangeFieldInput.cjs +1 -0
  178. package/dist/DateRangeField/DateRangeFieldInput.cjs.map +1 -1
  179. package/dist/DateRangeField/DateRangeFieldInput.js +1 -0
  180. package/dist/DateRangeField/DateRangeFieldInput.js.map +1 -1
  181. package/dist/DateRangeField/DateRangeFieldRoot.cjs +13 -9
  182. package/dist/DateRangeField/DateRangeFieldRoot.cjs.map +1 -1
  183. package/dist/DateRangeField/DateRangeFieldRoot.js +13 -9
  184. package/dist/DateRangeField/DateRangeFieldRoot.js.map +1 -1
  185. package/dist/DateRangePicker/DateRangePickerAnchor.cjs.map +1 -1
  186. package/dist/DateRangePicker/DateRangePickerAnchor.js.map +1 -1
  187. package/dist/DateRangePicker/DateRangePickerArrow.cjs.map +1 -1
  188. package/dist/DateRangePicker/DateRangePickerArrow.js.map +1 -1
  189. package/dist/DateRangePicker/DateRangePickerCalendar.cjs +3 -1
  190. package/dist/DateRangePicker/DateRangePickerCalendar.cjs.map +1 -1
  191. package/dist/DateRangePicker/DateRangePickerCalendar.js +3 -1
  192. package/dist/DateRangePicker/DateRangePickerCalendar.js.map +1 -1
  193. package/dist/DateRangePicker/DateRangePickerCell.cjs.map +1 -1
  194. package/dist/DateRangePicker/DateRangePickerCell.js.map +1 -1
  195. package/dist/DateRangePicker/DateRangePickerClose.cjs.map +1 -1
  196. package/dist/DateRangePicker/DateRangePickerClose.js.map +1 -1
  197. package/dist/DateRangePicker/DateRangePickerContent.cjs +8 -3
  198. package/dist/DateRangePicker/DateRangePickerContent.cjs.map +1 -1
  199. package/dist/DateRangePicker/DateRangePickerContent.js +9 -4
  200. package/dist/DateRangePicker/DateRangePickerContent.js.map +1 -1
  201. package/dist/DateRangePicker/DateRangePickerGrid.cjs.map +1 -1
  202. package/dist/DateRangePicker/DateRangePickerGrid.js.map +1 -1
  203. package/dist/DateRangePicker/DateRangePickerGridBody.cjs.map +1 -1
  204. package/dist/DateRangePicker/DateRangePickerGridBody.js.map +1 -1
  205. package/dist/DateRangePicker/DateRangePickerGridHead.cjs.map +1 -1
  206. package/dist/DateRangePicker/DateRangePickerGridHead.js.map +1 -1
  207. package/dist/DateRangePicker/DateRangePickerGridRow.cjs.map +1 -1
  208. package/dist/DateRangePicker/DateRangePickerGridRow.js.map +1 -1
  209. package/dist/DateRangePicker/DateRangePickerHeadCell.cjs.map +1 -1
  210. package/dist/DateRangePicker/DateRangePickerHeadCell.js.map +1 -1
  211. package/dist/DateRangePicker/DateRangePickerHeader.cjs.map +1 -1
  212. package/dist/DateRangePicker/DateRangePickerHeader.js.map +1 -1
  213. package/dist/DateRangePicker/DateRangePickerHeading.cjs.map +1 -1
  214. package/dist/DateRangePicker/DateRangePickerHeading.js.map +1 -1
  215. package/dist/DateRangePicker/DateRangePickerInput.cjs.map +1 -1
  216. package/dist/DateRangePicker/DateRangePickerInput.js.map +1 -1
  217. package/dist/DateRangePicker/DateRangePickerNext.cjs.map +1 -1
  218. package/dist/DateRangePicker/DateRangePickerNext.js.map +1 -1
  219. package/dist/DateRangePicker/DateRangePickerPrev.cjs.map +1 -1
  220. package/dist/DateRangePicker/DateRangePickerPrev.js.map +1 -1
  221. package/dist/DateRangePicker/DateRangePickerRoot.cjs +9 -2
  222. package/dist/DateRangePicker/DateRangePickerRoot.cjs.map +1 -1
  223. package/dist/DateRangePicker/DateRangePickerRoot.js +9 -2
  224. package/dist/DateRangePicker/DateRangePickerRoot.js.map +1 -1
  225. package/dist/DateRangePicker/DateRangePickerTrigger.cjs.map +1 -1
  226. package/dist/DateRangePicker/DateRangePickerTrigger.js.map +1 -1
  227. package/dist/Dialog/DialogClose.cjs +1 -1
  228. package/dist/Dialog/DialogClose.cjs.map +1 -1
  229. package/dist/Dialog/DialogClose.js +1 -1
  230. package/dist/Dialog/DialogClose.js.map +1 -1
  231. package/dist/Dialog/DialogContent.cjs.map +1 -1
  232. package/dist/Dialog/DialogContent.js.map +1 -1
  233. package/dist/Dialog/DialogContentImpl.cjs.map +1 -1
  234. package/dist/Dialog/DialogContentImpl.js.map +1 -1
  235. package/dist/Dialog/DialogContentModal.cjs.map +1 -1
  236. package/dist/Dialog/DialogContentModal.js.map +1 -1
  237. package/dist/Dialog/DialogContentNonModal.cjs.map +1 -1
  238. package/dist/Dialog/DialogContentNonModal.js.map +1 -1
  239. package/dist/Dialog/DialogDescription.cjs.map +1 -1
  240. package/dist/Dialog/DialogDescription.js.map +1 -1
  241. package/dist/Dialog/DialogOverlay.cjs.map +1 -1
  242. package/dist/Dialog/DialogOverlay.js.map +1 -1
  243. package/dist/Dialog/DialogOverlayImpl.cjs.map +1 -1
  244. package/dist/Dialog/DialogOverlayImpl.js.map +1 -1
  245. package/dist/Dialog/DialogRoot.cjs +4 -1
  246. package/dist/Dialog/DialogRoot.cjs.map +1 -1
  247. package/dist/Dialog/DialogRoot.js +4 -1
  248. package/dist/Dialog/DialogRoot.js.map +1 -1
  249. package/dist/Dialog/DialogTitle.cjs.map +1 -1
  250. package/dist/Dialog/DialogTitle.js.map +1 -1
  251. package/dist/Dialog/DialogTrigger.cjs +1 -1
  252. package/dist/Dialog/DialogTrigger.cjs.map +1 -1
  253. package/dist/Dialog/DialogTrigger.js +1 -1
  254. package/dist/Dialog/DialogTrigger.js.map +1 -1
  255. package/dist/Dialog/utils.cjs.map +1 -1
  256. package/dist/Dialog/utils.js.map +1 -1
  257. package/dist/DismissableLayer/DismissableLayer.cjs.map +1 -1
  258. package/dist/DismissableLayer/DismissableLayer.js.map +1 -1
  259. package/dist/DismissableLayer/DismissableLayerBranch.cjs.map +1 -1
  260. package/dist/DismissableLayer/DismissableLayerBranch.js.map +1 -1
  261. package/dist/DismissableLayer/utils.cjs +11 -6
  262. package/dist/DismissableLayer/utils.cjs.map +1 -1
  263. package/dist/DismissableLayer/utils.js +12 -7
  264. package/dist/DismissableLayer/utils.js.map +1 -1
  265. package/dist/DropdownMenu/DropdownMenuContent.cjs +1 -1
  266. package/dist/DropdownMenu/DropdownMenuContent.cjs.map +1 -1
  267. package/dist/DropdownMenu/DropdownMenuContent.js +1 -1
  268. package/dist/DropdownMenu/DropdownMenuContent.js.map +1 -1
  269. package/dist/DropdownMenu/DropdownMenuRoot.cjs.map +1 -1
  270. package/dist/DropdownMenu/DropdownMenuRoot.js.map +1 -1
  271. package/dist/DropdownMenu/DropdownMenuSub.cjs.map +1 -1
  272. package/dist/DropdownMenu/DropdownMenuSub.js.map +1 -1
  273. package/dist/DropdownMenu/DropdownMenuTrigger.cjs +1 -1
  274. package/dist/DropdownMenu/DropdownMenuTrigger.cjs.map +1 -1
  275. package/dist/DropdownMenu/DropdownMenuTrigger.js +1 -1
  276. package/dist/DropdownMenu/DropdownMenuTrigger.js.map +1 -1
  277. package/dist/Editable/EditableInput.cjs.map +1 -1
  278. package/dist/Editable/EditableInput.js.map +1 -1
  279. package/dist/Editable/EditablePreview.cjs.map +1 -1
  280. package/dist/Editable/EditablePreview.js.map +1 -1
  281. package/dist/Editable/EditableRoot.cjs +1 -1
  282. package/dist/Editable/EditableRoot.cjs.map +1 -1
  283. package/dist/Editable/EditableRoot.js +1 -1
  284. package/dist/Editable/EditableRoot.js.map +1 -1
  285. package/dist/FocusScope/FocusScope.cjs +1 -1
  286. package/dist/FocusScope/FocusScope.cjs.map +1 -1
  287. package/dist/FocusScope/FocusScope.js +1 -1
  288. package/dist/FocusScope/FocusScope.js.map +1 -1
  289. package/dist/HoverCard/HoverCardContent.cjs +1 -1
  290. package/dist/HoverCard/HoverCardContent.cjs.map +1 -1
  291. package/dist/HoverCard/HoverCardContent.js +1 -1
  292. package/dist/HoverCard/HoverCardContent.js.map +1 -1
  293. package/dist/HoverCard/HoverCardContentImpl.cjs +3 -3
  294. package/dist/HoverCard/HoverCardContentImpl.cjs.map +1 -1
  295. package/dist/HoverCard/HoverCardContentImpl.js +3 -3
  296. package/dist/HoverCard/HoverCardContentImpl.js.map +1 -1
  297. package/dist/HoverCard/HoverCardRoot.cjs.map +1 -1
  298. package/dist/HoverCard/HoverCardRoot.js.map +1 -1
  299. package/dist/HoverCard/HoverCardTrigger.cjs +1 -1
  300. package/dist/HoverCard/HoverCardTrigger.cjs.map +1 -1
  301. package/dist/HoverCard/HoverCardTrigger.js +1 -1
  302. package/dist/HoverCard/HoverCardTrigger.js.map +1 -1
  303. package/dist/Listbox/ListboxContent.cjs +1 -1
  304. package/dist/Listbox/ListboxContent.cjs.map +1 -1
  305. package/dist/Listbox/ListboxContent.js +1 -1
  306. package/dist/Listbox/ListboxContent.js.map +1 -1
  307. package/dist/Listbox/ListboxFilter.cjs.map +1 -1
  308. package/dist/Listbox/ListboxFilter.js.map +1 -1
  309. package/dist/Listbox/ListboxItem.cjs +2 -2
  310. package/dist/Listbox/ListboxItem.cjs.map +1 -1
  311. package/dist/Listbox/ListboxItem.js +2 -2
  312. package/dist/Listbox/ListboxItem.js.map +1 -1
  313. package/dist/Listbox/ListboxItemIndicator.cjs.map +1 -1
  314. package/dist/Listbox/ListboxItemIndicator.js.map +1 -1
  315. package/dist/Listbox/ListboxRoot.cjs +3 -3
  316. package/dist/Listbox/ListboxRoot.cjs.map +1 -1
  317. package/dist/Listbox/ListboxRoot.js +3 -3
  318. package/dist/Listbox/ListboxRoot.js.map +1 -1
  319. package/dist/Listbox/ListboxVirtualizer.cjs +4 -4
  320. package/dist/Listbox/ListboxVirtualizer.cjs.map +1 -1
  321. package/dist/Listbox/ListboxVirtualizer.js +4 -4
  322. package/dist/Listbox/ListboxVirtualizer.js.map +1 -1
  323. package/dist/Menu/MenuAnchor.cjs.map +1 -1
  324. package/dist/Menu/MenuAnchor.js.map +1 -1
  325. package/dist/Menu/MenuCheckboxItem.cjs +1 -1
  326. package/dist/Menu/MenuCheckboxItem.cjs.map +1 -1
  327. package/dist/Menu/MenuCheckboxItem.js +1 -1
  328. package/dist/Menu/MenuCheckboxItem.js.map +1 -1
  329. package/dist/Menu/MenuContent.cjs.map +1 -1
  330. package/dist/Menu/MenuContent.js.map +1 -1
  331. package/dist/Menu/MenuContentImpl.cjs +2 -2
  332. package/dist/Menu/MenuContentImpl.cjs.map +1 -1
  333. package/dist/Menu/MenuContentImpl.js +2 -2
  334. package/dist/Menu/MenuContentImpl.js.map +1 -1
  335. package/dist/Menu/MenuItem.cjs.map +1 -1
  336. package/dist/Menu/MenuItem.js.map +1 -1
  337. package/dist/Menu/MenuItemImpl.cjs +1 -1
  338. package/dist/Menu/MenuItemImpl.cjs.map +1 -1
  339. package/dist/Menu/MenuItemImpl.js +1 -1
  340. package/dist/Menu/MenuItemImpl.js.map +1 -1
  341. package/dist/Menu/MenuItemIndicator.cjs.map +1 -1
  342. package/dist/Menu/MenuItemIndicator.js.map +1 -1
  343. package/dist/Menu/MenuRadioGroup.cjs.map +1 -1
  344. package/dist/Menu/MenuRadioGroup.js.map +1 -1
  345. package/dist/Menu/MenuRadioItem.cjs +1 -1
  346. package/dist/Menu/MenuRadioItem.cjs.map +1 -1
  347. package/dist/Menu/MenuRadioItem.js +1 -1
  348. package/dist/Menu/MenuRadioItem.js.map +1 -1
  349. package/dist/Menu/MenuRoot.cjs +1 -1
  350. package/dist/Menu/MenuRoot.cjs.map +1 -1
  351. package/dist/Menu/MenuRoot.js +1 -1
  352. package/dist/Menu/MenuRoot.js.map +1 -1
  353. package/dist/Menu/MenuRootContentModal.cjs.map +1 -1
  354. package/dist/Menu/MenuRootContentModal.js.map +1 -1
  355. package/dist/Menu/MenuRootContentNonModal.cjs.map +1 -1
  356. package/dist/Menu/MenuRootContentNonModal.js.map +1 -1
  357. package/dist/Menu/MenuSub.cjs.map +1 -1
  358. package/dist/Menu/MenuSub.js.map +1 -1
  359. package/dist/Menu/MenuSubContent.cjs.map +1 -1
  360. package/dist/Menu/MenuSubContent.js.map +1 -1
  361. package/dist/Menu/MenuSubTrigger.cjs +1 -1
  362. package/dist/Menu/MenuSubTrigger.cjs.map +1 -1
  363. package/dist/Menu/MenuSubTrigger.js +1 -1
  364. package/dist/Menu/MenuSubTrigger.js.map +1 -1
  365. package/dist/Menubar/MenubarContent.cjs +1 -1
  366. package/dist/Menubar/MenubarContent.cjs.map +1 -1
  367. package/dist/Menubar/MenubarContent.js +1 -1
  368. package/dist/Menubar/MenubarContent.js.map +1 -1
  369. package/dist/Menubar/MenubarGroup.cjs.map +1 -1
  370. package/dist/Menubar/MenubarGroup.js.map +1 -1
  371. package/dist/Menubar/MenubarMenu.cjs.map +1 -1
  372. package/dist/Menubar/MenubarMenu.js.map +1 -1
  373. package/dist/Menubar/MenubarRoot.cjs.map +1 -1
  374. package/dist/Menubar/MenubarRoot.js.map +1 -1
  375. package/dist/Menubar/MenubarSub.cjs.map +1 -1
  376. package/dist/Menubar/MenubarSub.js.map +1 -1
  377. package/dist/Menubar/MenubarSubContent.cjs.map +1 -1
  378. package/dist/Menubar/MenubarSubContent.js.map +1 -1
  379. package/dist/Menubar/MenubarTrigger.cjs +1 -1
  380. package/dist/Menubar/MenubarTrigger.cjs.map +1 -1
  381. package/dist/Menubar/MenubarTrigger.js +1 -1
  382. package/dist/Menubar/MenubarTrigger.js.map +1 -1
  383. package/dist/NavigationMenu/NavigationMenuContent.cjs +1 -1
  384. package/dist/NavigationMenu/NavigationMenuContent.cjs.map +1 -1
  385. package/dist/NavigationMenu/NavigationMenuContent.js +1 -1
  386. package/dist/NavigationMenu/NavigationMenuContent.js.map +1 -1
  387. package/dist/NavigationMenu/NavigationMenuContentImpl.cjs +1 -1
  388. package/dist/NavigationMenu/NavigationMenuContentImpl.cjs.map +1 -1
  389. package/dist/NavigationMenu/NavigationMenuContentImpl.js +1 -1
  390. package/dist/NavigationMenu/NavigationMenuContentImpl.js.map +1 -1
  391. package/dist/NavigationMenu/NavigationMenuIndicator.cjs.map +1 -1
  392. package/dist/NavigationMenu/NavigationMenuIndicator.js.map +1 -1
  393. package/dist/NavigationMenu/NavigationMenuItem.cjs.map +1 -1
  394. package/dist/NavigationMenu/NavigationMenuItem.js.map +1 -1
  395. package/dist/NavigationMenu/NavigationMenuLink.cjs.map +1 -1
  396. package/dist/NavigationMenu/NavigationMenuLink.js.map +1 -1
  397. package/dist/NavigationMenu/NavigationMenuList.cjs.map +1 -1
  398. package/dist/NavigationMenu/NavigationMenuList.js.map +1 -1
  399. package/dist/NavigationMenu/NavigationMenuRoot.cjs.map +1 -1
  400. package/dist/NavigationMenu/NavigationMenuRoot.js.map +1 -1
  401. package/dist/NavigationMenu/NavigationMenuSub.cjs.map +1 -1
  402. package/dist/NavigationMenu/NavigationMenuSub.js.map +1 -1
  403. package/dist/NavigationMenu/NavigationMenuTrigger.cjs.map +1 -1
  404. package/dist/NavigationMenu/NavigationMenuTrigger.js.map +1 -1
  405. package/dist/NavigationMenu/NavigationMenuViewport.cjs.map +1 -1
  406. package/dist/NavigationMenu/NavigationMenuViewport.js.map +1 -1
  407. package/dist/NumberField/NumberFieldDecrement.cjs +1 -1
  408. package/dist/NumberField/NumberFieldDecrement.cjs.map +1 -1
  409. package/dist/NumberField/NumberFieldDecrement.js +1 -1
  410. package/dist/NumberField/NumberFieldDecrement.js.map +1 -1
  411. package/dist/NumberField/NumberFieldIncrement.cjs.map +1 -1
  412. package/dist/NumberField/NumberFieldIncrement.js.map +1 -1
  413. package/dist/NumberField/NumberFieldInput.cjs +3 -3
  414. package/dist/NumberField/NumberFieldInput.cjs.map +1 -1
  415. package/dist/NumberField/NumberFieldInput.js +3 -3
  416. package/dist/NumberField/NumberFieldInput.js.map +1 -1
  417. package/dist/NumberField/NumberFieldRoot.cjs +8 -5
  418. package/dist/NumberField/NumberFieldRoot.cjs.map +1 -1
  419. package/dist/NumberField/NumberFieldRoot.js +8 -5
  420. package/dist/NumberField/NumberFieldRoot.js.map +1 -1
  421. package/dist/NumberField/utils.cjs.map +1 -1
  422. package/dist/NumberField/utils.js +1 -1
  423. package/dist/NumberField/utils.js.map +1 -1
  424. package/dist/Pagination/PaginationList.cjs.map +1 -1
  425. package/dist/Pagination/PaginationList.js.map +1 -1
  426. package/dist/Pagination/PaginationRoot.cjs.map +1 -1
  427. package/dist/Pagination/PaginationRoot.js.map +1 -1
  428. package/dist/Pagination/utils.cjs.map +1 -1
  429. package/dist/Pagination/utils.js.map +1 -1
  430. package/dist/PinInput/PinInputInput.cjs +1 -1
  431. package/dist/PinInput/PinInputInput.cjs.map +1 -1
  432. package/dist/PinInput/PinInputInput.js +1 -1
  433. package/dist/PinInput/PinInputInput.js.map +1 -1
  434. package/dist/PinInput/PinInputRoot.cjs.map +1 -1
  435. package/dist/PinInput/PinInputRoot.js.map +1 -1
  436. package/dist/Popover/PopoverAnchor.cjs.map +1 -1
  437. package/dist/Popover/PopoverAnchor.js.map +1 -1
  438. package/dist/Popover/PopoverClose.cjs.map +1 -1
  439. package/dist/Popover/PopoverClose.js.map +1 -1
  440. package/dist/Popover/PopoverContent.cjs.map +1 -1
  441. package/dist/Popover/PopoverContent.js.map +1 -1
  442. package/dist/Popover/PopoverContentImpl.cjs +1 -1
  443. package/dist/Popover/PopoverContentImpl.cjs.map +1 -1
  444. package/dist/Popover/PopoverContentImpl.js +1 -1
  445. package/dist/Popover/PopoverContentImpl.js.map +1 -1
  446. package/dist/Popover/PopoverContentModal.cjs +1 -1
  447. package/dist/Popover/PopoverContentModal.cjs.map +1 -1
  448. package/dist/Popover/PopoverContentModal.js +1 -1
  449. package/dist/Popover/PopoverContentModal.js.map +1 -1
  450. package/dist/Popover/PopoverContentNonModal.cjs.map +1 -1
  451. package/dist/Popover/PopoverContentNonModal.js.map +1 -1
  452. package/dist/Popover/PopoverRoot.cjs.map +1 -1
  453. package/dist/Popover/PopoverRoot.js.map +1 -1
  454. package/dist/Popover/PopoverTrigger.cjs +1 -1
  455. package/dist/Popover/PopoverTrigger.cjs.map +1 -1
  456. package/dist/Popover/PopoverTrigger.js +1 -1
  457. package/dist/Popover/PopoverTrigger.js.map +1 -1
  458. package/dist/Popper/PopperAnchor.cjs.map +1 -1
  459. package/dist/Popper/PopperAnchor.js.map +1 -1
  460. package/dist/Popper/PopperArrow.cjs.map +1 -1
  461. package/dist/Popper/PopperArrow.js.map +1 -1
  462. package/dist/Popper/PopperContent.cjs +2 -2
  463. package/dist/Popper/PopperContent.cjs.map +1 -1
  464. package/dist/Popper/PopperContent.js +2 -2
  465. package/dist/Popper/PopperContent.js.map +1 -1
  466. package/dist/Popper/PopperRoot.cjs.map +1 -1
  467. package/dist/Popper/PopperRoot.js.map +1 -1
  468. package/dist/Presence/Presence.cjs +1 -1
  469. package/dist/Presence/Presence.cjs.map +1 -1
  470. package/dist/Presence/Presence.js +1 -1
  471. package/dist/Presence/Presence.js.map +1 -1
  472. package/dist/Presence/usePresence.cjs +2 -2
  473. package/dist/Presence/usePresence.cjs.map +1 -1
  474. package/dist/Presence/usePresence.js +2 -2
  475. package/dist/Presence/usePresence.js.map +1 -1
  476. package/dist/Primitive/Primitive.cjs.map +1 -1
  477. package/dist/Primitive/Primitive.js.map +1 -1
  478. package/dist/Primitive/Slot.cjs +1 -9
  479. package/dist/Primitive/Slot.cjs.map +1 -1
  480. package/dist/Primitive/Slot.js +1 -9
  481. package/dist/Primitive/Slot.js.map +1 -1
  482. package/dist/Primitive/usePrimitiveElement.cjs.map +1 -1
  483. package/dist/Primitive/usePrimitiveElement.js.map +1 -1
  484. package/dist/Progress/ProgressIndicator.cjs.map +1 -1
  485. package/dist/Progress/ProgressIndicator.js.map +1 -1
  486. package/dist/Progress/ProgressRoot.cjs +3 -2
  487. package/dist/Progress/ProgressRoot.cjs.map +1 -1
  488. package/dist/Progress/ProgressRoot.js +3 -2
  489. package/dist/Progress/ProgressRoot.js.map +1 -1
  490. package/dist/RadioGroup/Radio.cjs.map +1 -1
  491. package/dist/RadioGroup/Radio.js.map +1 -1
  492. package/dist/RadioGroup/RadioGroupIndicator.cjs.map +1 -1
  493. package/dist/RadioGroup/RadioGroupIndicator.js.map +1 -1
  494. package/dist/RadioGroup/RadioGroupItem.cjs +1 -1
  495. package/dist/RadioGroup/RadioGroupItem.cjs.map +1 -1
  496. package/dist/RadioGroup/RadioGroupItem.js +1 -1
  497. package/dist/RadioGroup/RadioGroupItem.js.map +1 -1
  498. package/dist/RadioGroup/RadioGroupRoot.cjs.map +1 -1
  499. package/dist/RadioGroup/RadioGroupRoot.js.map +1 -1
  500. package/dist/RadioGroup/utils.cjs.map +1 -1
  501. package/dist/RadioGroup/utils.js.map +1 -1
  502. package/dist/RangeCalendar/RangeCalendarCell.cjs +3 -3
  503. package/dist/RangeCalendar/RangeCalendarCell.cjs.map +1 -1
  504. package/dist/RangeCalendar/RangeCalendarCell.js +3 -3
  505. package/dist/RangeCalendar/RangeCalendarCell.js.map +1 -1
  506. package/dist/RangeCalendar/RangeCalendarCellTrigger.cjs +28 -9
  507. package/dist/RangeCalendar/RangeCalendarCellTrigger.cjs.map +1 -1
  508. package/dist/RangeCalendar/RangeCalendarCellTrigger.js +28 -9
  509. package/dist/RangeCalendar/RangeCalendarCellTrigger.js.map +1 -1
  510. package/dist/RangeCalendar/RangeCalendarHeading.cjs +1 -1
  511. package/dist/RangeCalendar/RangeCalendarHeading.cjs.map +1 -1
  512. package/dist/RangeCalendar/RangeCalendarHeading.js +1 -1
  513. package/dist/RangeCalendar/RangeCalendarHeading.js.map +1 -1
  514. package/dist/RangeCalendar/RangeCalendarNext.cjs.map +1 -1
  515. package/dist/RangeCalendar/RangeCalendarNext.js.map +1 -1
  516. package/dist/RangeCalendar/RangeCalendarPrev.cjs.map +1 -1
  517. package/dist/RangeCalendar/RangeCalendarPrev.js.map +1 -1
  518. package/dist/RangeCalendar/RangeCalendarRoot.cjs +32 -10
  519. package/dist/RangeCalendar/RangeCalendarRoot.cjs.map +1 -1
  520. package/dist/RangeCalendar/RangeCalendarRoot.js +32 -10
  521. package/dist/RangeCalendar/RangeCalendarRoot.js.map +1 -1
  522. package/dist/RangeCalendar/useRangeCalendar.cjs +26 -3
  523. package/dist/RangeCalendar/useRangeCalendar.cjs.map +1 -1
  524. package/dist/RangeCalendar/useRangeCalendar.js +26 -3
  525. package/dist/RangeCalendar/useRangeCalendar.js.map +1 -1
  526. package/dist/RovingFocus/RovingFocusGroup.cjs +1 -1
  527. package/dist/RovingFocus/RovingFocusGroup.cjs.map +1 -1
  528. package/dist/RovingFocus/RovingFocusGroup.js +1 -1
  529. package/dist/RovingFocus/RovingFocusGroup.js.map +1 -1
  530. package/dist/RovingFocus/RovingFocusItem.cjs +1 -1
  531. package/dist/RovingFocus/RovingFocusItem.cjs.map +1 -1
  532. package/dist/RovingFocus/RovingFocusItem.js +1 -1
  533. package/dist/RovingFocus/RovingFocusItem.js.map +1 -1
  534. package/dist/ScrollArea/ScrollAreaCorner.cjs.map +1 -1
  535. package/dist/ScrollArea/ScrollAreaCorner.js.map +1 -1
  536. package/dist/ScrollArea/ScrollAreaCornerImpl.cjs +1 -1
  537. package/dist/ScrollArea/ScrollAreaCornerImpl.cjs.map +1 -1
  538. package/dist/ScrollArea/ScrollAreaCornerImpl.js +1 -1
  539. package/dist/ScrollArea/ScrollAreaCornerImpl.js.map +1 -1
  540. package/dist/ScrollArea/ScrollAreaRoot.cjs.map +1 -1
  541. package/dist/ScrollArea/ScrollAreaRoot.js.map +1 -1
  542. package/dist/ScrollArea/ScrollAreaScrollbar.cjs +1 -1
  543. package/dist/ScrollArea/ScrollAreaScrollbar.cjs.map +1 -1
  544. package/dist/ScrollArea/ScrollAreaScrollbar.js +1 -1
  545. package/dist/ScrollArea/ScrollAreaScrollbar.js.map +1 -1
  546. package/dist/ScrollArea/ScrollAreaScrollbarAuto.cjs.map +1 -1
  547. package/dist/ScrollArea/ScrollAreaScrollbarAuto.js.map +1 -1
  548. package/dist/ScrollArea/ScrollAreaScrollbarHover.cjs.map +1 -1
  549. package/dist/ScrollArea/ScrollAreaScrollbarHover.js.map +1 -1
  550. package/dist/ScrollArea/ScrollAreaScrollbarImpl.cjs.map +1 -1
  551. package/dist/ScrollArea/ScrollAreaScrollbarImpl.js.map +1 -1
  552. package/dist/ScrollArea/ScrollAreaScrollbarScroll.cjs.map +1 -1
  553. package/dist/ScrollArea/ScrollAreaScrollbarScroll.js.map +1 -1
  554. package/dist/ScrollArea/ScrollAreaScrollbarVisible.cjs.map +1 -1
  555. package/dist/ScrollArea/ScrollAreaScrollbarVisible.js.map +1 -1
  556. package/dist/ScrollArea/ScrollAreaScrollbarX.cjs.map +1 -1
  557. package/dist/ScrollArea/ScrollAreaScrollbarX.js.map +1 -1
  558. package/dist/ScrollArea/ScrollAreaScrollbarY.cjs.map +1 -1
  559. package/dist/ScrollArea/ScrollAreaScrollbarY.js.map +1 -1
  560. package/dist/ScrollArea/ScrollAreaThumb.cjs.map +1 -1
  561. package/dist/ScrollArea/ScrollAreaThumb.js.map +1 -1
  562. package/dist/ScrollArea/ScrollAreaViewport.cjs +1 -1
  563. package/dist/ScrollArea/ScrollAreaViewport.cjs.map +1 -1
  564. package/dist/ScrollArea/ScrollAreaViewport.js +1 -1
  565. package/dist/ScrollArea/ScrollAreaViewport.js.map +1 -1
  566. package/dist/ScrollArea/utils.cjs.map +1 -1
  567. package/dist/ScrollArea/utils.js.map +1 -1
  568. package/dist/Select/SelectArrow.cjs +1 -1
  569. package/dist/Select/SelectArrow.cjs.map +1 -1
  570. package/dist/Select/SelectArrow.js +1 -1
  571. package/dist/Select/SelectArrow.js.map +1 -1
  572. package/dist/Select/SelectContent.cjs.map +1 -1
  573. package/dist/Select/SelectContent.js.map +1 -1
  574. package/dist/Select/SelectContentImpl.cjs +4 -4
  575. package/dist/Select/SelectContentImpl.cjs.map +1 -1
  576. package/dist/Select/SelectContentImpl.js +4 -4
  577. package/dist/Select/SelectContentImpl.js.map +1 -1
  578. package/dist/Select/SelectItem.cjs +1 -1
  579. package/dist/Select/SelectItem.cjs.map +1 -1
  580. package/dist/Select/SelectItem.js +1 -1
  581. package/dist/Select/SelectItem.js.map +1 -1
  582. package/dist/Select/SelectItemAlignedPosition.cjs +2 -2
  583. package/dist/Select/SelectItemAlignedPosition.cjs.map +1 -1
  584. package/dist/Select/SelectItemAlignedPosition.js +2 -2
  585. package/dist/Select/SelectItemAlignedPosition.js.map +1 -1
  586. package/dist/Select/SelectItemIndicator.cjs.map +1 -1
  587. package/dist/Select/SelectItemIndicator.js.map +1 -1
  588. package/dist/Select/SelectItemText.cjs.map +1 -1
  589. package/dist/Select/SelectItemText.js.map +1 -1
  590. package/dist/Select/SelectPopperPosition.cjs +1 -1
  591. package/dist/Select/SelectPopperPosition.cjs.map +1 -1
  592. package/dist/Select/SelectPopperPosition.js +1 -1
  593. package/dist/Select/SelectPopperPosition.js.map +1 -1
  594. package/dist/Select/SelectProvider.cjs.map +1 -1
  595. package/dist/Select/SelectProvider.js.map +1 -1
  596. package/dist/Select/SelectRoot.cjs +5 -3
  597. package/dist/Select/SelectRoot.cjs.map +1 -1
  598. package/dist/Select/SelectRoot.js +5 -3
  599. package/dist/Select/SelectRoot.js.map +1 -1
  600. package/dist/Select/SelectScrollButtonImpl.cjs.map +1 -1
  601. package/dist/Select/SelectScrollButtonImpl.js.map +1 -1
  602. package/dist/Select/SelectScrollDownButton.cjs +1 -1
  603. package/dist/Select/SelectScrollDownButton.cjs.map +1 -1
  604. package/dist/Select/SelectScrollDownButton.js +1 -1
  605. package/dist/Select/SelectScrollDownButton.js.map +1 -1
  606. package/dist/Select/SelectTrigger.cjs +3 -3
  607. package/dist/Select/SelectTrigger.cjs.map +1 -1
  608. package/dist/Select/SelectTrigger.js +3 -3
  609. package/dist/Select/SelectTrigger.js.map +1 -1
  610. package/dist/Select/SelectValue.cjs +2 -1
  611. package/dist/Select/SelectValue.cjs.map +1 -1
  612. package/dist/Select/SelectValue.js +2 -1
  613. package/dist/Select/SelectValue.js.map +1 -1
  614. package/dist/Select/SelectViewport.cjs +1 -1
  615. package/dist/Select/SelectViewport.cjs.map +1 -1
  616. package/dist/Select/SelectViewport.js +1 -1
  617. package/dist/Select/SelectViewport.js.map +1 -1
  618. package/dist/Select/utils.cjs +4 -0
  619. package/dist/Select/utils.cjs.map +1 -1
  620. package/dist/Select/utils.js +4 -1
  621. package/dist/Select/utils.js.map +1 -1
  622. package/dist/Slider/SliderHorizontal.cjs +7 -4
  623. package/dist/Slider/SliderHorizontal.cjs.map +1 -1
  624. package/dist/Slider/SliderHorizontal.js +7 -4
  625. package/dist/Slider/SliderHorizontal.js.map +1 -1
  626. package/dist/Slider/SliderRange.cjs +2 -2
  627. package/dist/Slider/SliderRange.cjs.map +1 -1
  628. package/dist/Slider/SliderRange.js +2 -2
  629. package/dist/Slider/SliderRange.js.map +1 -1
  630. package/dist/Slider/SliderRoot.cjs +1 -1
  631. package/dist/Slider/SliderRoot.cjs.map +1 -1
  632. package/dist/Slider/SliderRoot.js +1 -1
  633. package/dist/Slider/SliderRoot.js.map +1 -1
  634. package/dist/Slider/SliderThumb.cjs +1 -1
  635. package/dist/Slider/SliderThumb.cjs.map +1 -1
  636. package/dist/Slider/SliderThumb.js +1 -1
  637. package/dist/Slider/SliderThumb.js.map +1 -1
  638. package/dist/Slider/SliderThumbImpl.cjs +2 -2
  639. package/dist/Slider/SliderThumbImpl.cjs.map +1 -1
  640. package/dist/Slider/SliderThumbImpl.js +2 -2
  641. package/dist/Slider/SliderThumbImpl.js.map +1 -1
  642. package/dist/Slider/SliderVertical.cjs +7 -4
  643. package/dist/Slider/SliderVertical.cjs.map +1 -1
  644. package/dist/Slider/SliderVertical.js +7 -4
  645. package/dist/Slider/SliderVertical.js.map +1 -1
  646. package/dist/Slider/utils.cjs +1 -1
  647. package/dist/Slider/utils.cjs.map +1 -1
  648. package/dist/Slider/utils.js +1 -1
  649. package/dist/Slider/utils.js.map +1 -1
  650. package/dist/Splitter/SplitterGroup.cjs +5 -5
  651. package/dist/Splitter/SplitterGroup.cjs.map +1 -1
  652. package/dist/Splitter/SplitterGroup.js +5 -5
  653. package/dist/Splitter/SplitterGroup.js.map +1 -1
  654. package/dist/Splitter/SplitterPanel.cjs +16 -10
  655. package/dist/Splitter/SplitterPanel.cjs.map +1 -1
  656. package/dist/Splitter/SplitterPanel.js +16 -10
  657. package/dist/Splitter/SplitterPanel.js.map +1 -1
  658. package/dist/Splitter/SplitterResizeHandle.cjs +1 -1
  659. package/dist/Splitter/SplitterResizeHandle.cjs.map +1 -1
  660. package/dist/Splitter/SplitterResizeHandle.js +1 -1
  661. package/dist/Splitter/SplitterResizeHandle.js.map +1 -1
  662. package/dist/Stepper/StepperDescription.cjs +1 -1
  663. package/dist/Stepper/StepperDescription.cjs.map +1 -1
  664. package/dist/Stepper/StepperDescription.js +1 -1
  665. package/dist/Stepper/StepperDescription.js.map +1 -1
  666. package/dist/Stepper/StepperIndicator.cjs.map +1 -1
  667. package/dist/Stepper/StepperIndicator.js.map +1 -1
  668. package/dist/Stepper/StepperItem.cjs.map +1 -1
  669. package/dist/Stepper/StepperItem.js.map +1 -1
  670. package/dist/Stepper/StepperRoot.cjs +30 -3
  671. package/dist/Stepper/StepperRoot.cjs.map +1 -1
  672. package/dist/Stepper/StepperRoot.js +30 -3
  673. package/dist/Stepper/StepperRoot.js.map +1 -1
  674. package/dist/Stepper/StepperSeparator.cjs.map +1 -1
  675. package/dist/Stepper/StepperSeparator.js.map +1 -1
  676. package/dist/Stepper/StepperTitle.cjs.map +1 -1
  677. package/dist/Stepper/StepperTitle.js.map +1 -1
  678. package/dist/Stepper/StepperTrigger.cjs +1 -1
  679. package/dist/Stepper/StepperTrigger.cjs.map +1 -1
  680. package/dist/Stepper/StepperTrigger.js +1 -1
  681. package/dist/Stepper/StepperTrigger.js.map +1 -1
  682. package/dist/Switch/SwitchRoot.cjs.map +1 -1
  683. package/dist/Switch/SwitchRoot.js.map +1 -1
  684. package/dist/Switch/SwitchThumb.cjs.map +1 -1
  685. package/dist/Switch/SwitchThumb.js.map +1 -1
  686. package/dist/Tabs/TabsContent.cjs +1 -1
  687. package/dist/Tabs/TabsContent.cjs.map +1 -1
  688. package/dist/Tabs/TabsContent.js +1 -1
  689. package/dist/Tabs/TabsContent.js.map +1 -1
  690. package/dist/Tabs/TabsIndicator.cjs.map +1 -1
  691. package/dist/Tabs/TabsIndicator.js.map +1 -1
  692. package/dist/Tabs/TabsList.cjs +1 -1
  693. package/dist/Tabs/TabsList.cjs.map +1 -1
  694. package/dist/Tabs/TabsList.js +1 -1
  695. package/dist/Tabs/TabsList.js.map +1 -1
  696. package/dist/Tabs/TabsRoot.cjs.map +1 -1
  697. package/dist/Tabs/TabsRoot.js.map +1 -1
  698. package/dist/Tabs/TabsTrigger.cjs.map +1 -1
  699. package/dist/Tabs/TabsTrigger.js.map +1 -1
  700. package/dist/TagsInput/TagsInputClear.cjs +1 -1
  701. package/dist/TagsInput/TagsInputClear.cjs.map +1 -1
  702. package/dist/TagsInput/TagsInputClear.js +1 -1
  703. package/dist/TagsInput/TagsInputClear.js.map +1 -1
  704. package/dist/TagsInput/TagsInputInput.cjs +2 -1
  705. package/dist/TagsInput/TagsInputInput.cjs.map +1 -1
  706. package/dist/TagsInput/TagsInputInput.js +2 -1
  707. package/dist/TagsInput/TagsInputInput.js.map +1 -1
  708. package/dist/TagsInput/TagsInputItem.cjs.map +1 -1
  709. package/dist/TagsInput/TagsInputItem.js.map +1 -1
  710. package/dist/TagsInput/TagsInputItemDelete.cjs +1 -1
  711. package/dist/TagsInput/TagsInputItemDelete.cjs.map +1 -1
  712. package/dist/TagsInput/TagsInputItemDelete.js +1 -1
  713. package/dist/TagsInput/TagsInputItemDelete.js.map +1 -1
  714. package/dist/TagsInput/TagsInputItemText.cjs +1 -1
  715. package/dist/TagsInput/TagsInputItemText.cjs.map +1 -1
  716. package/dist/TagsInput/TagsInputItemText.js +1 -1
  717. package/dist/TagsInput/TagsInputItemText.js.map +1 -1
  718. package/dist/TagsInput/TagsInputRoot.cjs +1 -1
  719. package/dist/TagsInput/TagsInputRoot.cjs.map +1 -1
  720. package/dist/TagsInput/TagsInputRoot.js +1 -1
  721. package/dist/TagsInput/TagsInputRoot.js.map +1 -1
  722. package/dist/TimeField/TimeFieldInput.cjs +1 -0
  723. package/dist/TimeField/TimeFieldInput.cjs.map +1 -1
  724. package/dist/TimeField/TimeFieldInput.js +1 -0
  725. package/dist/TimeField/TimeFieldInput.js.map +1 -1
  726. package/dist/TimeField/TimeFieldRoot.cjs +12 -3
  727. package/dist/TimeField/TimeFieldRoot.cjs.map +1 -1
  728. package/dist/TimeField/TimeFieldRoot.js +12 -3
  729. package/dist/TimeField/TimeFieldRoot.js.map +1 -1
  730. package/dist/Toast/ToastAnnounce.cjs +1 -1
  731. package/dist/Toast/ToastAnnounce.cjs.map +1 -1
  732. package/dist/Toast/ToastAnnounce.js +1 -1
  733. package/dist/Toast/ToastAnnounce.js.map +1 -1
  734. package/dist/Toast/ToastProvider.cjs.map +1 -1
  735. package/dist/Toast/ToastProvider.js.map +1 -1
  736. package/dist/Toast/ToastRoot.cjs +28 -20
  737. package/dist/Toast/ToastRoot.cjs.map +1 -1
  738. package/dist/Toast/ToastRoot.js +28 -20
  739. package/dist/Toast/ToastRoot.js.map +1 -1
  740. package/dist/Toast/ToastRootImpl.cjs +2 -2
  741. package/dist/Toast/ToastRootImpl.cjs.map +1 -1
  742. package/dist/Toast/ToastRootImpl.js +2 -2
  743. package/dist/Toast/ToastRootImpl.js.map +1 -1
  744. package/dist/Toast/ToastViewport.cjs +2 -2
  745. package/dist/Toast/ToastViewport.cjs.map +1 -1
  746. package/dist/Toast/ToastViewport.js +2 -2
  747. package/dist/Toast/ToastViewport.js.map +1 -1
  748. package/dist/Toggle/Toggle.cjs.map +1 -1
  749. package/dist/Toggle/Toggle.js.map +1 -1
  750. package/dist/ToggleGroup/ToggleGroupItem.cjs.map +1 -1
  751. package/dist/ToggleGroup/ToggleGroupItem.js.map +1 -1
  752. package/dist/ToggleGroup/ToggleGroupRoot.cjs.map +1 -1
  753. package/dist/ToggleGroup/ToggleGroupRoot.js.map +1 -1
  754. package/dist/Toolbar/ToolbarSeparator.cjs +1 -1
  755. package/dist/Toolbar/ToolbarSeparator.js +1 -1
  756. package/dist/Toolbar/ToolbarToggleGroup.cjs +1 -1
  757. package/dist/Toolbar/ToolbarToggleGroup.cjs.map +1 -1
  758. package/dist/Toolbar/ToolbarToggleGroup.js +1 -1
  759. package/dist/Toolbar/ToolbarToggleGroup.js.map +1 -1
  760. package/dist/Toolbar/ToolbarToggleItem.cjs.map +1 -1
  761. package/dist/Toolbar/ToolbarToggleItem.js.map +1 -1
  762. package/dist/Tooltip/TooltipContent.cjs +1 -1
  763. package/dist/Tooltip/TooltipContent.cjs.map +1 -1
  764. package/dist/Tooltip/TooltipContent.js +1 -1
  765. package/dist/Tooltip/TooltipContent.js.map +1 -1
  766. package/dist/Tooltip/TooltipContentHoverable.cjs.map +1 -1
  767. package/dist/Tooltip/TooltipContentHoverable.js.map +1 -1
  768. package/dist/Tooltip/TooltipContentImpl.cjs +3 -3
  769. package/dist/Tooltip/TooltipContentImpl.cjs.map +1 -1
  770. package/dist/Tooltip/TooltipContentImpl.js +3 -3
  771. package/dist/Tooltip/TooltipContentImpl.js.map +1 -1
  772. package/dist/Tooltip/TooltipRoot.cjs.map +1 -1
  773. package/dist/Tooltip/TooltipRoot.js.map +1 -1
  774. package/dist/Tooltip/TooltipTrigger.cjs +4 -1
  775. package/dist/Tooltip/TooltipTrigger.cjs.map +1 -1
  776. package/dist/Tooltip/TooltipTrigger.js +4 -1
  777. package/dist/Tooltip/TooltipTrigger.js.map +1 -1
  778. package/dist/Tree/TreeItem.cjs +4 -1
  779. package/dist/Tree/TreeItem.cjs.map +1 -1
  780. package/dist/Tree/TreeItem.js +4 -1
  781. package/dist/Tree/TreeItem.js.map +1 -1
  782. package/dist/Tree/TreeRoot.cjs +28 -2
  783. package/dist/Tree/TreeRoot.cjs.map +1 -1
  784. package/dist/Tree/TreeRoot.js +28 -2
  785. package/dist/Tree/TreeRoot.js.map +1 -1
  786. package/dist/Tree/TreeVirtualizer.cjs +2 -2
  787. package/dist/Tree/TreeVirtualizer.cjs.map +1 -1
  788. package/dist/Tree/TreeVirtualizer.js +2 -2
  789. package/dist/Tree/TreeVirtualizer.js.map +1 -1
  790. package/dist/Tree/utils.cjs.map +1 -1
  791. package/dist/Tree/utils.js.map +1 -1
  792. package/dist/Viewport/Viewport.cjs.map +1 -1
  793. package/dist/Viewport/Viewport.js.map +1 -1
  794. package/dist/VisuallyHidden/VisuallyHiddenInput.cjs.map +1 -1
  795. package/dist/VisuallyHidden/VisuallyHiddenInput.js.map +1 -1
  796. package/dist/VisuallyHidden/VisuallyHiddenInputBubble.cjs.map +1 -1
  797. package/dist/VisuallyHidden/VisuallyHiddenInputBubble.js.map +1 -1
  798. package/dist/composables/useWindowSplitterBehavior.cjs.map +1 -1
  799. package/dist/composables/useWindowSplitterBehavior.js.map +1 -1
  800. package/dist/composables/useWindowSplitterPanelGroupBehavior.cjs +3 -3
  801. package/dist/composables/useWindowSplitterPanelGroupBehavior.cjs.map +1 -1
  802. package/dist/composables/useWindowSplitterPanelGroupBehavior.js +3 -3
  803. package/dist/composables/useWindowSplitterPanelGroupBehavior.js.map +1 -1
  804. package/dist/date/calendar.cjs +1 -1
  805. package/dist/date/calendar.cjs.map +1 -1
  806. package/dist/date/calendar.js +1 -1
  807. package/dist/date/calendar.js.map +1 -1
  808. package/dist/date/comparators.cjs +6 -4
  809. package/dist/date/comparators.cjs.map +1 -1
  810. package/dist/date/comparators.js +6 -4
  811. package/dist/date/comparators.js.map +1 -1
  812. package/dist/date/parser.cjs +22 -7
  813. package/dist/date/parser.cjs.map +1 -1
  814. package/dist/date/parser.js +23 -8
  815. package/dist/date/parser.js.map +1 -1
  816. package/dist/date/useDateField.cjs +21 -6
  817. package/dist/date/useDateField.cjs.map +1 -1
  818. package/dist/date/useDateField.js +21 -6
  819. package/dist/date/useDateField.js.map +1 -1
  820. package/dist/date/utils.cjs +37 -8
  821. package/dist/date/utils.cjs.map +1 -1
  822. package/dist/date/utils.js +36 -9
  823. package/dist/date/utils.js.map +1 -1
  824. package/dist/date.d.ts +2 -2
  825. package/dist/index.cjs +347 -347
  826. package/dist/index.cjs.map +1 -1
  827. package/dist/index.d.ts +1558 -1552
  828. package/dist/index.js +161 -161
  829. package/dist/index.js.map +1 -1
  830. package/dist/shared/createContext.cjs.map +1 -1
  831. package/dist/shared/createContext.js.map +1 -1
  832. package/dist/shared/renderSlotFragments.cjs.map +1 -1
  833. package/dist/shared/renderSlotFragments.js.map +1 -1
  834. package/dist/shared/useArrowNavigation.cjs.map +1 -1
  835. package/dist/shared/useArrowNavigation.js.map +1 -1
  836. package/dist/shared/useBodyScrollLock.cjs +3 -3
  837. package/dist/shared/useBodyScrollLock.cjs.map +1 -1
  838. package/dist/shared/useBodyScrollLock.js +3 -3
  839. package/dist/shared/useBodyScrollLock.js.map +1 -1
  840. package/dist/shared/useDateFormatter.cjs +12 -10
  841. package/dist/shared/useDateFormatter.cjs.map +1 -1
  842. package/dist/shared/useDateFormatter.js +12 -10
  843. package/dist/shared/useDateFormatter.js.map +1 -1
  844. package/dist/shared/useDirection.cjs.map +1 -1
  845. package/dist/shared/useDirection.js.map +1 -1
  846. package/dist/shared/useFilter.cjs.map +1 -1
  847. package/dist/shared/useFilter.js.map +1 -1
  848. package/dist/shared/useFormControl.cjs.map +1 -1
  849. package/dist/shared/useFormControl.js.map +1 -1
  850. package/dist/shared/useForwardExpose.cjs.map +1 -1
  851. package/dist/shared/useForwardExpose.js.map +1 -1
  852. package/dist/shared/useForwardProps.cjs +4 -2
  853. package/dist/shared/useForwardProps.cjs.map +1 -1
  854. package/dist/shared/useForwardProps.js +5 -3
  855. package/dist/shared/useForwardProps.js.map +1 -1
  856. package/dist/shared/useForwardPropsEmits.cjs.map +1 -1
  857. package/dist/shared/useForwardPropsEmits.js.map +1 -1
  858. package/dist/shared/useGraceArea.cjs +1 -1
  859. package/dist/shared/useGraceArea.cjs.map +1 -1
  860. package/dist/shared/useGraceArea.js +1 -1
  861. package/dist/shared/useGraceArea.js.map +1 -1
  862. package/dist/shared/useHideOthers.cjs.map +1 -1
  863. package/dist/shared/useHideOthers.js.map +1 -1
  864. package/dist/shared/useId.cjs +2 -2
  865. package/dist/shared/useId.cjs.map +1 -1
  866. package/dist/shared/useId.js +2 -2
  867. package/dist/shared/useId.js.map +1 -1
  868. package/dist/shared/useLocale.cjs.map +1 -1
  869. package/dist/shared/useLocale.js.map +1 -1
  870. package/dist/shared/useNonce.cjs.map +1 -1
  871. package/dist/shared/useNonce.js.map +1 -1
  872. package/dist/shared/useSelectionBehavior.cjs +2 -2
  873. package/dist/shared/useSelectionBehavior.cjs.map +1 -1
  874. package/dist/shared/useSelectionBehavior.js +2 -2
  875. package/dist/shared/useSelectionBehavior.js.map +1 -1
  876. package/dist/shared/useSingleOrMultipleValue.cjs +1 -1
  877. package/dist/shared/useSingleOrMultipleValue.cjs.map +1 -1
  878. package/dist/shared/useSingleOrMultipleValue.js +1 -1
  879. package/dist/shared/useSingleOrMultipleValue.js.map +1 -1
  880. package/dist/shared/useSize.cjs.map +1 -1
  881. package/dist/shared/useSize.js.map +1 -1
  882. package/dist/shared/useStateMachine.cjs.map +1 -1
  883. package/dist/shared/useStateMachine.js.map +1 -1
  884. package/dist/shared/withDefault.cjs.map +1 -1
  885. package/dist/shared/withDefault.js.map +1 -1
  886. package/dist/utils/calculate.cjs +1 -1
  887. package/dist/utils/calculate.cjs.map +1 -1
  888. package/dist/utils/calculate.js +1 -1
  889. package/dist/utils/calculate.js.map +1 -1
  890. package/dist/utils/dom.cjs.map +1 -1
  891. package/dist/utils/dom.js.map +1 -1
  892. package/dist/utils/registry.cjs +1 -1
  893. package/dist/utils/registry.cjs.map +1 -1
  894. package/dist/utils/registry.js +1 -1
  895. package/dist/utils/registry.js.map +1 -1
  896. package/dist/utils/resizePanel.cjs +1 -1
  897. package/dist/utils/resizePanel.cjs.map +1 -1
  898. package/dist/utils/resizePanel.js +1 -1
  899. package/dist/utils/resizePanel.js.map +1 -1
  900. package/dist/utils/style.cjs.map +1 -1
  901. package/dist/utils/style.js.map +1 -1
  902. package/package.json +7 -8
@@ -4,8 +4,8 @@ const vue = require('vue');
4
4
  const core = require('@vueuse/core');
5
5
  const Popper_PopperRoot = require('../Popper/PopperRoot.cjs');
6
6
  const shared_useIsUsingKeyboard = require('../shared/useIsUsingKeyboard.cjs');
7
- const shared_useDirection = require('../shared/useDirection.cjs');
8
7
  const shared_createContext = require('../shared/createContext.cjs');
8
+ const shared_useDirection = require('../shared/useDirection.cjs');
9
9
 
10
10
  const [injectMenuContext, provideMenuContext] = shared_createContext.createContext(["MenuRoot", "MenuSub"], "MenuContext");
11
11
  const [injectMenuRootContext, provideMenuRootContext] = shared_createContext.createContext("MenuRoot");
@@ -1 +1 @@
1
- {"version":3,"file":"MenuRoot.cjs","sources":["../../src/Menu/MenuRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from './utils'\nimport { createContext, useDirection } from '@/shared'\nimport { useIsUsingKeyboard } from '@/shared/useIsUsingKeyboard'\n\nexport interface MenuContext {\n open: Ref<boolean>\n onOpenChange: (open: boolean) => void\n content: Ref<HTMLElement | undefined>\n onContentChange: (content: HTMLElement | undefined) => void\n}\n\nexport interface MenuRootContext {\n onClose: () => void\n dir: Ref<Direction>\n isUsingKeyboardRef: Ref<boolean>\n modal: Ref<boolean>\n}\n\nexport interface MenuProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /**\n * The modality of the dropdown menu.\n *\n * When set to `true`, interaction with outside elements will be disabled and only menu content will be visible to screen readers.\n */\n modal?: boolean\n}\n\nexport type MenuEmits = {\n 'update:open': [payload: boolean]\n}\n\nexport const [injectMenuContext, provideMenuContext]\n = createContext<MenuContext>(['MenuRoot', 'MenuSub'], 'MenuContext')\n\nexport const [injectMenuRootContext, provideMenuRootContext]\n = createContext<MenuRootContext>('MenuRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport {\n ref,\n toRefs,\n} from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { PopperRoot } from '@/Popper'\n\nconst props = withDefaults(defineProps<MenuProps>(), {\n open: false,\n modal: true,\n})\nconst emits = defineEmits<MenuEmits>()\nconst { modal, dir: propDir } = toRefs(props)\nconst dir = useDirection(propDir)\n\nconst open = useVModel(props, 'open', emits)\n\nconst content = ref<HTMLElement>()\nconst isUsingKeyboardRef = useIsUsingKeyboard()\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuRootContext({\n onClose: () => {\n open.value = false\n },\n isUsingKeyboardRef,\n dir,\n modal,\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":["createContext","toRefs","useDirection","useVModel","ref","useIsUsingKeyboard"],"mappings":";;;;;;;;;AAyCa,MAAA,CAAC,mBAAmB,kBAAkB,CAAA,GAC/CA,mCAA2B,CAAC,UAAA,EAAY,SAAS,CAAA,EAAG,aAAa;AAE9D,MAAM,CAAC,qBAAA,EAAuB,sBAAsB,CAAA,GACvDA,mCAA+B,UAAU;;;;;;;;;;AAW7C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAA,MAAM,EAAE,KAAO,EAAA,GAAA,EAAK,OAAQ,EAAA,GAAIC,WAAO,KAAK,CAAA;AAC5C,IAAM,MAAA,GAAA,GAAMC,iCAAa,OAAO,CAAA;AAEhC,IAAA,MAAM,IAAO,GAAAC,cAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAK,CAAA;AAE3C,IAAA,MAAM,UAAUC,OAAiB,EAAA;AACjC,IAAA,MAAM,qBAAqBC,4CAAmB,EAAA;AAE9C,IAAmB,kBAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAuB,sBAAA,CAAA;AAAA,MACrB,SAAS,MAAM;AACb,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,kBAAA;AAAA,MACA,GAAA;AAAA,MACA;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuRoot.cjs","sources":["../../src/Menu/MenuRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from './utils'\nimport { createContext, useDirection } from '@/shared'\nimport { useIsUsingKeyboard } from '@/shared/useIsUsingKeyboard'\n\nexport interface MenuContext {\n open: Ref<boolean>\n onOpenChange: (open: boolean) => void\n content: Ref<HTMLElement | undefined>\n onContentChange: (content: HTMLElement | undefined) => void\n}\n\nexport interface MenuRootContext {\n onClose: () => void\n dir: Ref<Direction>\n isUsingKeyboardRef: Ref<boolean>\n modal: Ref<boolean>\n}\n\nexport interface MenuProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /**\n * The modality of the dropdown menu.\n *\n * When set to `true`, interaction with outside elements will be disabled and only menu content will be visible to screen readers.\n */\n modal?: boolean\n}\n\nexport type MenuEmits = {\n 'update:open': [payload: boolean]\n}\n\nexport const [injectMenuContext, provideMenuContext]\n = createContext<MenuContext>(['MenuRoot', 'MenuSub'], 'MenuContext')\n\nexport const [injectMenuRootContext, provideMenuRootContext]\n = createContext<MenuRootContext>('MenuRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport {\n ref,\n toRefs,\n} from 'vue'\nimport { PopperRoot } from '@/Popper'\n\nconst props = withDefaults(defineProps<MenuProps>(), {\n open: false,\n modal: true,\n})\nconst emits = defineEmits<MenuEmits>()\nconst { modal, dir: propDir } = toRefs(props)\nconst dir = useDirection(propDir)\n\nconst open = useVModel(props, 'open', emits)\n\nconst content = ref<HTMLElement>()\nconst isUsingKeyboardRef = useIsUsingKeyboard()\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuRootContext({\n onClose: () => {\n open.value = false\n },\n isUsingKeyboardRef,\n dir,\n modal,\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":["createContext","toRefs","useDirection","useVModel","ref","useIsUsingKeyboard"],"mappings":";;;;;;;;;AAyCa,MAAA,CAAC,mBAAmB,kBAAkB,CAAA,GAC/CA,mCAA2B,CAAC,UAAA,EAAY,SAAS,CAAA,EAAG,aAAa;AAE9D,MAAM,CAAC,qBAAA,EAAuB,sBAAsB,CAAA,GACvDA,mCAA+B,UAAU;;;;;;;;;;AAW7C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAA,MAAM,EAAE,KAAO,EAAA,GAAA,EAAK,OAAQ,EAAA,GAAIC,WAAO,KAAK,CAAA;AAC5C,IAAM,MAAA,GAAA,GAAMC,iCAAa,OAAO,CAAA;AAEhC,IAAA,MAAM,IAAO,GAAAC,cAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAK,CAAA;AAE3C,IAAA,MAAM,UAAUC,OAAiB,EAAA;AACjC,IAAA,MAAM,qBAAqBC,4CAAmB,EAAA;AAE9C,IAAmB,kBAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAuB,sBAAA,CAAA;AAAA,MACrB,SAAS,MAAM;AACb,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,kBAAA;AAAA,MACA,GAAA;AAAA,MACA;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;"}
@@ -2,8 +2,8 @@ import { defineComponent, toRefs, ref, createBlock, openBlock, unref, withCtx, r
2
2
  import { useVModel } from '@vueuse/core';
3
3
  import { _ as _sfc_main$1 } from '../Popper/PopperRoot.js';
4
4
  import { u as useIsUsingKeyboard } from '../shared/useIsUsingKeyboard.js';
5
- import { u as useDirection } from '../shared/useDirection.js';
6
5
  import { c as createContext } from '../shared/createContext.js';
6
+ import { u as useDirection } from '../shared/useDirection.js';
7
7
 
8
8
  const [injectMenuContext, provideMenuContext] = createContext(["MenuRoot", "MenuSub"], "MenuContext");
9
9
  const [injectMenuRootContext, provideMenuRootContext] = createContext("MenuRoot");
@@ -1 +1 @@
1
- {"version":3,"file":"MenuRoot.js","sources":["../../src/Menu/MenuRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from './utils'\nimport { createContext, useDirection } from '@/shared'\nimport { useIsUsingKeyboard } from '@/shared/useIsUsingKeyboard'\n\nexport interface MenuContext {\n open: Ref<boolean>\n onOpenChange: (open: boolean) => void\n content: Ref<HTMLElement | undefined>\n onContentChange: (content: HTMLElement | undefined) => void\n}\n\nexport interface MenuRootContext {\n onClose: () => void\n dir: Ref<Direction>\n isUsingKeyboardRef: Ref<boolean>\n modal: Ref<boolean>\n}\n\nexport interface MenuProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /**\n * The modality of the dropdown menu.\n *\n * When set to `true`, interaction with outside elements will be disabled and only menu content will be visible to screen readers.\n */\n modal?: boolean\n}\n\nexport type MenuEmits = {\n 'update:open': [payload: boolean]\n}\n\nexport const [injectMenuContext, provideMenuContext]\n = createContext<MenuContext>(['MenuRoot', 'MenuSub'], 'MenuContext')\n\nexport const [injectMenuRootContext, provideMenuRootContext]\n = createContext<MenuRootContext>('MenuRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport {\n ref,\n toRefs,\n} from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { PopperRoot } from '@/Popper'\n\nconst props = withDefaults(defineProps<MenuProps>(), {\n open: false,\n modal: true,\n})\nconst emits = defineEmits<MenuEmits>()\nconst { modal, dir: propDir } = toRefs(props)\nconst dir = useDirection(propDir)\n\nconst open = useVModel(props, 'open', emits)\n\nconst content = ref<HTMLElement>()\nconst isUsingKeyboardRef = useIsUsingKeyboard()\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuRootContext({\n onClose: () => {\n open.value = false\n },\n isUsingKeyboardRef,\n dir,\n modal,\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":[],"mappings":";;;;;;;AAyCa,MAAA,CAAC,mBAAmB,kBAAkB,CAAA,GAC/C,cAA2B,CAAC,UAAA,EAAY,SAAS,CAAA,EAAG,aAAa;AAE9D,MAAM,CAAC,qBAAA,EAAuB,sBAAsB,CAAA,GACvD,cAA+B,UAAU;;;;;;;;;;AAW7C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAA,MAAM,EAAE,KAAO,EAAA,GAAA,EAAK,OAAQ,EAAA,GAAI,OAAO,KAAK,CAAA;AAC5C,IAAM,MAAA,GAAA,GAAM,aAAa,OAAO,CAAA;AAEhC,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAK,CAAA;AAE3C,IAAA,MAAM,UAAU,GAAiB,EAAA;AACjC,IAAA,MAAM,qBAAqB,kBAAmB,EAAA;AAE9C,IAAmB,kBAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAuB,sBAAA,CAAA;AAAA,MACrB,SAAS,MAAM;AACb,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,kBAAA;AAAA,MACA,GAAA;AAAA,MACA;AAAA,KACD,CAAA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuRoot.js","sources":["../../src/Menu/MenuRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from './utils'\nimport { createContext, useDirection } from '@/shared'\nimport { useIsUsingKeyboard } from '@/shared/useIsUsingKeyboard'\n\nexport interface MenuContext {\n open: Ref<boolean>\n onOpenChange: (open: boolean) => void\n content: Ref<HTMLElement | undefined>\n onContentChange: (content: HTMLElement | undefined) => void\n}\n\nexport interface MenuRootContext {\n onClose: () => void\n dir: Ref<Direction>\n isUsingKeyboardRef: Ref<boolean>\n modal: Ref<boolean>\n}\n\nexport interface MenuProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /**\n * The modality of the dropdown menu.\n *\n * When set to `true`, interaction with outside elements will be disabled and only menu content will be visible to screen readers.\n */\n modal?: boolean\n}\n\nexport type MenuEmits = {\n 'update:open': [payload: boolean]\n}\n\nexport const [injectMenuContext, provideMenuContext]\n = createContext<MenuContext>(['MenuRoot', 'MenuSub'], 'MenuContext')\n\nexport const [injectMenuRootContext, provideMenuRootContext]\n = createContext<MenuRootContext>('MenuRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport {\n ref,\n toRefs,\n} from 'vue'\nimport { PopperRoot } from '@/Popper'\n\nconst props = withDefaults(defineProps<MenuProps>(), {\n open: false,\n modal: true,\n})\nconst emits = defineEmits<MenuEmits>()\nconst { modal, dir: propDir } = toRefs(props)\nconst dir = useDirection(propDir)\n\nconst open = useVModel(props, 'open', emits)\n\nconst content = ref<HTMLElement>()\nconst isUsingKeyboardRef = useIsUsingKeyboard()\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuRootContext({\n onClose: () => {\n open.value = false\n },\n isUsingKeyboardRef,\n dir,\n modal,\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":[],"mappings":";;;;;;;AAyCa,MAAA,CAAC,mBAAmB,kBAAkB,CAAA,GAC/C,cAA2B,CAAC,UAAA,EAAY,SAAS,CAAA,EAAG,aAAa;AAE9D,MAAM,CAAC,qBAAA,EAAuB,sBAAsB,CAAA,GACvD,cAA+B,UAAU;;;;;;;;;;AAW7C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAId,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAA,MAAM,EAAE,KAAO,EAAA,GAAA,EAAK,OAAQ,EAAA,GAAI,OAAO,KAAK,CAAA;AAC5C,IAAM,MAAA,GAAA,GAAM,aAAa,OAAO,CAAA;AAEhC,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAK,CAAA;AAE3C,IAAA,MAAM,UAAU,GAAiB,EAAA;AACjC,IAAA,MAAM,qBAAqB,kBAAmB,EAAA;AAE9C,IAAmB,kBAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAuB,sBAAA,CAAA;AAAA,MACrB,SAAS,MAAM;AACb,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,kBAAA;AAAA,MACA,GAAA;AAAA,MACA;AAAA,KACD,CAAA;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuRootContentModal.cjs","sources":["../../src/Menu/MenuRootContentModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport MenuContentImpl, { type MenuContentImplEmits, type MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\nimport { useForwardExpose, useForwardPropsEmits, useHideOthers } from '@/shared'\n\nconst props = defineProps<MenuRootContentModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n\nconst { forwardRef, currentElement } = useForwardExpose()\nuseHideOthers(currentElement)\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :ref=\"forwardRef\"\n :trap-focus=\"menuContext.open.value\"\n :disable-outside-pointer-events=\"menuContext.open.value\"\n :disable-outside-scroll=\"true\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n @focus-outside.prevent=\"emits('focusOutside', $event)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":["useForwardPropsEmits","injectMenuContext","useForwardExpose","useHideOthers"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAcC,+BAAkB,EAAA;AAKtC,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAIC,wCAAiB,EAAA;AACxD,IAAAC,kCAAA,CAAc,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuRootContentModal.cjs","sources":["../../src/Menu/MenuRootContentModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { MenuContentImplEmits, MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { useForwardExpose, useForwardPropsEmits, useHideOthers } from '@/shared'\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\n\nconst props = defineProps<MenuRootContentModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n\nconst { forwardRef, currentElement } = useForwardExpose()\nuseHideOthers(currentElement)\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :ref=\"forwardRef\"\n :trap-focus=\"menuContext.open.value\"\n :disable-outside-pointer-events=\"menuContext.open.value\"\n :disable-outside-scroll=\"true\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n @focus-outside.prevent=\"emits('focusOutside', $event)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":["useForwardPropsEmits","injectMenuContext","useForwardExpose","useHideOthers"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAcC,+BAAkB,EAAA;AAKtC,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAIC,wCAAiB,EAAA;AACxD,IAAAC,kCAAA,CAAc,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuRootContentModal.js","sources":["../../src/Menu/MenuRootContentModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport MenuContentImpl, { type MenuContentImplEmits, type MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\nimport { useForwardExpose, useForwardPropsEmits, useHideOthers } from '@/shared'\n\nconst props = defineProps<MenuRootContentModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n\nconst { forwardRef, currentElement } = useForwardExpose()\nuseHideOthers(currentElement)\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :ref=\"forwardRef\"\n :trap-focus=\"menuContext.open.value\"\n :disable-outside-pointer-events=\"menuContext.open.value\"\n :disable-outside-scroll=\"true\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n @focus-outside.prevent=\"emits('focusOutside', $event)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAc,iBAAkB,EAAA;AAKtC,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAI,gBAAiB,EAAA;AACxD,IAAA,aAAA,CAAc,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuRootContentModal.js","sources":["../../src/Menu/MenuRootContentModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { MenuContentImplEmits, MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { useForwardExpose, useForwardPropsEmits, useHideOthers } from '@/shared'\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\n\nconst props = defineProps<MenuRootContentModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n\nconst { forwardRef, currentElement } = useForwardExpose()\nuseHideOthers(currentElement)\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :ref=\"forwardRef\"\n :trap-focus=\"menuContext.open.value\"\n :disable-outside-pointer-events=\"menuContext.open.value\"\n :disable-outside-scroll=\"true\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n @focus-outside.prevent=\"emits('focusOutside', $event)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAc,iBAAkB,EAAA;AAKtC,IAAA,MAAM,EAAE,UAAA,EAAY,cAAe,EAAA,GAAI,gBAAiB,EAAA;AACxD,IAAA,aAAA,CAAc,cAAc,CAAA;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuRootContentNonModal.cjs","sources":["../../src/Menu/MenuRootContentNonModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport MenuContentImpl, { type MenuContentImplEmits, type MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\nimport { useForwardPropsEmits } from '@/shared'\n\nconst props = defineProps<MenuRootContentNonModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentNonModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :trap-focus=\"false\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":["useForwardPropsEmits","injectMenuContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAcC,+BAAkB,EAAA;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuRootContentNonModal.cjs","sources":["../../src/Menu/MenuRootContentNonModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { MenuContentImplEmits, MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { useForwardPropsEmits } from '@/shared'\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\n\nconst props = defineProps<MenuRootContentNonModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentNonModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :trap-focus=\"false\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":["useForwardPropsEmits","injectMenuContext"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAcC,+BAAkB,EAAA;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuRootContentNonModal.js","sources":["../../src/Menu/MenuRootContentNonModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport MenuContentImpl, { type MenuContentImplEmits, type MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\nimport { useForwardPropsEmits } from '@/shared'\n\nconst props = defineProps<MenuRootContentNonModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentNonModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :trap-focus=\"false\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAc,iBAAkB,EAAA;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuRootContentNonModal.js","sources":["../../src/Menu/MenuRootContentNonModal.vue"],"sourcesContent":["<script setup lang=\"ts\">\nimport type { MenuContentImplEmits, MenuRootContentTypeProps } from './MenuContentImpl.vue'\nimport { useForwardPropsEmits } from '@/shared'\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext } from './MenuRoot.vue'\n\nconst props = defineProps<MenuRootContentNonModalProps>()\nconst emits = defineEmits<MenuRootContentModalEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\n\ninterface MenuRootContentNonModalProps extends MenuRootContentTypeProps {}\ntype MenuRootContentModalEmits = MenuContentImplEmits\n</script>\n\n<template>\n <MenuContentImpl\n v-bind=\"forwarded\"\n :trap-focus=\"false\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n @dismiss=\"menuContext.onOpenChange(false)\"\n >\n <slot />\n </MenuContentImpl>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAc,iBAAkB,EAAA;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSub.cjs","sources":["../../src/Menu/MenuSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { MenuContext } from './MenuRoot.vue'\nimport { createContext } from '@/shared'\n\nexport interface MenuSubContext {\n contentId: string\n triggerId: string\n trigger: Ref<HTMLElement | undefined>\n onTriggerChange: (trigger: HTMLElement | undefined) => void\n parentMenuContext?: MenuContext\n}\n\nexport const [injectMenuSubContext, provideMenuSubContext]\n = createContext<MenuSubContext>('MenuSub')\n\nexport interface MenuSubProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n}\n\nexport type MenuSubEmits = {\n /** Event handler called when the open state of the submenu changes. */\n 'update:open': [payload: boolean]\n}\n</script>\n\n<script setup lang=\"ts\">\nimport {\n ref,\n watchEffect,\n} from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { injectMenuContext, provideMenuContext } from './MenuRoot.vue'\nimport { PopperRoot } from '@/Popper'\n\nconst props = withDefaults(defineProps<MenuSubProps>(), {\n open: undefined,\n})\nconst emits = defineEmits<MenuSubEmits>()\n\nconst open = useVModel(props, 'open', emits, {\n defaultValue: false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n\nconst parentMenuContext = injectMenuContext()\nconst trigger = ref<HTMLElement>()\nconst content = ref<HTMLElement>()\n\n// Prevent the parent menu from reopening with open submenus.\nwatchEffect((cleanupFn) => {\n if (parentMenuContext?.open.value === false)\n open.value = false\n cleanupFn(() => (open.value = false))\n})\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuSubContext({\n triggerId: '',\n contentId: '',\n trigger,\n onTriggerChange: (element) => {\n trigger.value = element\n },\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":["createContext","useVModel","injectMenuContext","ref","watchEffect","provideMenuContext"],"mappings":";;;;;;;;AAaO,MAAM,CAAC,oBAAA,EAAsB,qBAAqB,CAAA,GACrDA,mCAA8B,SAAS;;;;;;;;AAsB3C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAA,MAAM,IAAO,GAAAC,cAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAO,EAAA;AAAA,MAC3C,YAAc,EAAA,KAAA;AAAA,MACd,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;AAED,IAAA,MAAM,oBAAoBC,+BAAkB,EAAA;AAC5C,IAAA,MAAM,UAAUC,OAAiB,EAAA;AACjC,IAAA,MAAM,UAAUA,OAAiB,EAAA;AAGjC,IAAAC,eAAA,CAAY,CAAC,SAAc,KAAA;AACzB,MAAI,IAAA,iBAAA,EAAmB,KAAK,KAAU,KAAA,KAAA;AACpC,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AACf,MAAU,SAAA,CAAA,MAAO,IAAK,CAAA,KAAA,GAAQ,KAAM,CAAA;AAAA,KACrC,CAAA;AAED,IAAmBC,gCAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAsB,qBAAA,CAAA;AAAA,MACpB,SAAW,EAAA,EAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuSub.cjs","sources":["../../src/Menu/MenuSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { MenuContext } from './MenuRoot.vue'\nimport { createContext } from '@/shared'\n\nexport interface MenuSubContext {\n contentId: string\n triggerId: string\n trigger: Ref<HTMLElement | undefined>\n onTriggerChange: (trigger: HTMLElement | undefined) => void\n parentMenuContext?: MenuContext\n}\n\nexport const [injectMenuSubContext, provideMenuSubContext]\n = createContext<MenuSubContext>('MenuSub')\n\nexport interface MenuSubProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n}\n\nexport type MenuSubEmits = {\n /** Event handler called when the open state of the submenu changes. */\n 'update:open': [payload: boolean]\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport {\n ref,\n watchEffect,\n} from 'vue'\nimport { PopperRoot } from '@/Popper'\nimport { injectMenuContext, provideMenuContext } from './MenuRoot.vue'\n\nconst props = withDefaults(defineProps<MenuSubProps>(), {\n open: undefined,\n})\nconst emits = defineEmits<MenuSubEmits>()\n\nconst open = useVModel(props, 'open', emits, {\n defaultValue: false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n\nconst parentMenuContext = injectMenuContext()\nconst trigger = ref<HTMLElement>()\nconst content = ref<HTMLElement>()\n\n// Prevent the parent menu from reopening with open submenus.\nwatchEffect((cleanupFn) => {\n if (parentMenuContext?.open.value === false)\n open.value = false\n cleanupFn(() => (open.value = false))\n})\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuSubContext({\n triggerId: '',\n contentId: '',\n trigger,\n onTriggerChange: (element) => {\n trigger.value = element\n },\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":["createContext","useVModel","injectMenuContext","ref","watchEffect","provideMenuContext"],"mappings":";;;;;;;;AAaO,MAAM,CAAC,oBAAA,EAAsB,qBAAqB,CAAA,GACrDA,mCAA8B,SAAS;;;;;;;;AAsB3C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAA,MAAM,IAAO,GAAAC,cAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAO,EAAA;AAAA,MAC3C,YAAc,EAAA,KAAA;AAAA,MACd,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;AAED,IAAA,MAAM,oBAAoBC,+BAAkB,EAAA;AAC5C,IAAA,MAAM,UAAUC,OAAiB,EAAA;AACjC,IAAA,MAAM,UAAUA,OAAiB,EAAA;AAGjC,IAAAC,eAAA,CAAY,CAAC,SAAc,KAAA;AACzB,MAAI,IAAA,iBAAA,EAAmB,KAAK,KAAU,KAAA,KAAA;AACpC,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AACf,MAAU,SAAA,CAAA,MAAO,IAAK,CAAA,KAAA,GAAQ,KAAM,CAAA;AAAA,KACrC,CAAA;AAED,IAAmBC,gCAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAsB,qBAAA,CAAA;AAAA,MACpB,SAAW,EAAA,EAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSub.js","sources":["../../src/Menu/MenuSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { MenuContext } from './MenuRoot.vue'\nimport { createContext } from '@/shared'\n\nexport interface MenuSubContext {\n contentId: string\n triggerId: string\n trigger: Ref<HTMLElement | undefined>\n onTriggerChange: (trigger: HTMLElement | undefined) => void\n parentMenuContext?: MenuContext\n}\n\nexport const [injectMenuSubContext, provideMenuSubContext]\n = createContext<MenuSubContext>('MenuSub')\n\nexport interface MenuSubProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n}\n\nexport type MenuSubEmits = {\n /** Event handler called when the open state of the submenu changes. */\n 'update:open': [payload: boolean]\n}\n</script>\n\n<script setup lang=\"ts\">\nimport {\n ref,\n watchEffect,\n} from 'vue'\nimport { useVModel } from '@vueuse/core'\nimport { injectMenuContext, provideMenuContext } from './MenuRoot.vue'\nimport { PopperRoot } from '@/Popper'\n\nconst props = withDefaults(defineProps<MenuSubProps>(), {\n open: undefined,\n})\nconst emits = defineEmits<MenuSubEmits>()\n\nconst open = useVModel(props, 'open', emits, {\n defaultValue: false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n\nconst parentMenuContext = injectMenuContext()\nconst trigger = ref<HTMLElement>()\nconst content = ref<HTMLElement>()\n\n// Prevent the parent menu from reopening with open submenus.\nwatchEffect((cleanupFn) => {\n if (parentMenuContext?.open.value === false)\n open.value = false\n cleanupFn(() => (open.value = false))\n})\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuSubContext({\n triggerId: '',\n contentId: '',\n trigger,\n onTriggerChange: (element) => {\n trigger.value = element\n },\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":[],"mappings":";;;;;;AAaO,MAAM,CAAC,oBAAA,EAAsB,qBAAqB,CAAA,GACrD,cAA8B,SAAS;;;;;;;;AAsB3C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAO,EAAA;AAAA,MAC3C,YAAc,EAAA,KAAA;AAAA,MACd,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;AAED,IAAA,MAAM,oBAAoB,iBAAkB,EAAA;AAC5C,IAAA,MAAM,UAAU,GAAiB,EAAA;AACjC,IAAA,MAAM,UAAU,GAAiB,EAAA;AAGjC,IAAA,WAAA,CAAY,CAAC,SAAc,KAAA;AACzB,MAAI,IAAA,iBAAA,EAAmB,KAAK,KAAU,KAAA,KAAA;AACpC,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AACf,MAAU,SAAA,CAAA,MAAO,IAAK,CAAA,KAAA,GAAQ,KAAM,CAAA;AAAA,KACrC,CAAA;AAED,IAAmB,kBAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAsB,qBAAA,CAAA;AAAA,MACpB,SAAW,EAAA,EAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuSub.js","sources":["../../src/Menu/MenuSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { MenuContext } from './MenuRoot.vue'\nimport { createContext } from '@/shared'\n\nexport interface MenuSubContext {\n contentId: string\n triggerId: string\n trigger: Ref<HTMLElement | undefined>\n onTriggerChange: (trigger: HTMLElement | undefined) => void\n parentMenuContext?: MenuContext\n}\n\nexport const [injectMenuSubContext, provideMenuSubContext]\n = createContext<MenuSubContext>('MenuSub')\n\nexport interface MenuSubProps {\n /** The controlled open state of the menu. Can be used as `v-model:open`. */\n open?: boolean\n}\n\nexport type MenuSubEmits = {\n /** Event handler called when the open state of the submenu changes. */\n 'update:open': [payload: boolean]\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport {\n ref,\n watchEffect,\n} from 'vue'\nimport { PopperRoot } from '@/Popper'\nimport { injectMenuContext, provideMenuContext } from './MenuRoot.vue'\n\nconst props = withDefaults(defineProps<MenuSubProps>(), {\n open: undefined,\n})\nconst emits = defineEmits<MenuSubEmits>()\n\nconst open = useVModel(props, 'open', emits, {\n defaultValue: false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n\nconst parentMenuContext = injectMenuContext()\nconst trigger = ref<HTMLElement>()\nconst content = ref<HTMLElement>()\n\n// Prevent the parent menu from reopening with open submenus.\nwatchEffect((cleanupFn) => {\n if (parentMenuContext?.open.value === false)\n open.value = false\n cleanupFn(() => (open.value = false))\n})\n\nprovideMenuContext({\n open,\n onOpenChange: (value) => {\n open.value = value\n },\n content,\n onContentChange: (element) => {\n content.value = element\n },\n})\n\nprovideMenuSubContext({\n triggerId: '',\n contentId: '',\n trigger,\n onTriggerChange: (element) => {\n trigger.value = element\n },\n})\n</script>\n\n<template>\n <PopperRoot>\n <slot />\n </PopperRoot>\n</template>\n"],"names":[],"mappings":";;;;;;AAaO,MAAM,CAAC,oBAAA,EAAsB,qBAAqB,CAAA,GACrD,cAA8B,SAAS;;;;;;;;AAsB3C,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,KAAO,EAAA;AAAA,MAC3C,YAAc,EAAA,KAAA;AAAA,MACd,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;AAED,IAAA,MAAM,oBAAoB,iBAAkB,EAAA;AAC5C,IAAA,MAAM,UAAU,GAAiB,EAAA;AACjC,IAAA,MAAM,UAAU,GAAiB,EAAA;AAGjC,IAAA,WAAA,CAAY,CAAC,SAAc,KAAA;AACzB,MAAI,IAAA,iBAAA,EAAmB,KAAK,KAAU,KAAA,KAAA;AACpC,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AACf,MAAU,SAAA,CAAA,MAAO,IAAK,CAAA,KAAA,GAAQ,KAAM,CAAA;AAAA,KACrC,CAAA;AAED,IAAmB,kBAAA,CAAA;AAAA,MACjB,IAAA;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAA,IAAA,CAAK,KAAQ,GAAA,KAAA;AAAA,OACf;AAAA,MACA,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;AAED,IAAsB,qBAAA,CAAA;AAAA,MACpB,SAAW,EAAA,EAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX,OAAA;AAAA,MACA,eAAA,EAAiB,CAAC,OAAY,KAAA;AAC5B,QAAA,OAAA,CAAQ,KAAQ,GAAA,OAAA;AAAA;AAClB,KACD,CAAA;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSubContent.cjs","sources":["../../src/Menu/MenuSubContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n MenuContentImplEmits,\n MenuContentImplProps,\n} from './MenuContentImpl.vue'\n\nexport type MenuSubContentEmits = MenuContentImplEmits\n\n// reference: https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1152\nexport interface MenuSubContentProps extends Omit<MenuContentImplProps, 'disableOutsidePointerEvents' | 'disableOutsideScroll' | 'trapFocus' | 'side' | 'align'> {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with Vue animation libraries.\n */\n forceMount?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { SUB_CLOSE_KEYS } from './utils'\nimport { Presence } from '@/Presence'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\n\nconst props = withDefaults(defineProps<MenuSubContentProps>(), {\n prioritizePosition: true,\n})\nconst emits = defineEmits<MenuSubContentEmits>()\n\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst menuSubContext = injectMenuSubContext()\n\nconst { forwardRef, currentElement: subContentElement } = useForwardExpose()\n\nmenuSubContext.contentId ||= useId(undefined, 'reka-menu-sub-content')\n</script>\n\n<template>\n <Presence :present=\"forceMount || menuContext.open.value\">\n <MenuContentImpl\n v-bind=\"forwarded\"\n :id=\"menuSubContext.contentId\"\n :ref=\"forwardRef\"\n :aria-labelledby=\"menuSubContext.triggerId\"\n align=\"start\"\n :side=\"rootContext.dir.value === 'rtl' ? 'left' : 'right'\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n :trap-focus=\"false\"\n @open-auto-focus.prevent=\"(event) => {\n // when opening a submenu, focus content for keyboard users only\n if (rootContext.isUsingKeyboardRef.value) subContentElement?.focus();\n }\"\n @close-auto-focus.prevent\n @focus-outside=\"\n (event) => {\n if (event.defaultPrevented) return;\n // We prevent closing when the trigger is focused to avoid triggering a re-open animation\n // on pointer interaction.\n if (event.target !== menuSubContext.trigger.value)\n menuContext.onOpenChange(false);\n }\n \"\n @escape-key-down=\"\n (event) => {\n rootContext.onClose();\n // ensure pressing escape in submenu doesn't escape full screen mode\n event.preventDefault();\n }\n \"\n @keydown=\"(event: KeyboardEvent) => {\n // Submenu key events bubble through portals. We only care about keys in this menu.\n const isKeyDownInside = (event.currentTarget as HTMLElement)?.contains(event.target as HTMLElement);\n const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir.value].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n menuContext.onOpenChange(false);\n // We focus manually because we prevented it in `onCloseAutoFocus`\n menuSubContext.trigger.value?.focus();\n // prevent window from scrolling\n event.preventDefault();\n }\n }\"\n >\n <slot />\n </MenuContentImpl>\n </Presence>\n</template>\n"],"names":["useForwardPropsEmits","injectMenuContext","injectMenuRootContext","injectMenuSubContext","useForwardExpose","useId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAcC,+BAAkB,EAAA;AACtC,IAAA,MAAM,cAAcC,mCAAsB,EAAA;AAC1C,IAAA,MAAM,iBAAiBC,iCAAqB,EAAA;AAE5C,IAAA,MAAM,EAAE,UAAA,EAAY,cAAgB,EAAA,iBAAA,KAAsBC,wCAAiB,EAAA;AAE3E,IAAe,cAAA,CAAA,SAAA,KAAcC,kBAAM,CAAA,MAAA,EAAW,uBAAuB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuSubContent.cjs","sources":["../../src/Menu/MenuSubContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n MenuContentImplEmits,\n MenuContentImplProps,\n} from './MenuContentImpl.vue'\n\nexport type MenuSubContentEmits = MenuContentImplEmits\n\n// reference: https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1152\nexport interface MenuSubContentProps extends Omit<MenuContentImplProps, 'disableOutsidePointerEvents' | 'disableOutsideScroll' | 'trapFocus' | 'side' | 'align'> {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with Vue animation libraries.\n */\n forceMount?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { Presence } from '@/Presence'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { SUB_CLOSE_KEYS } from './utils'\n\nconst props = withDefaults(defineProps<MenuSubContentProps>(), {\n prioritizePosition: true,\n})\nconst emits = defineEmits<MenuSubContentEmits>()\n\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst menuSubContext = injectMenuSubContext()\n\nconst { forwardRef, currentElement: subContentElement } = useForwardExpose()\n\nmenuSubContext.contentId ||= useId(undefined, 'reka-menu-sub-content')\n</script>\n\n<template>\n <Presence :present=\"forceMount || menuContext.open.value\">\n <MenuContentImpl\n v-bind=\"forwarded\"\n :id=\"menuSubContext.contentId\"\n :ref=\"forwardRef\"\n :aria-labelledby=\"menuSubContext.triggerId\"\n align=\"start\"\n :side=\"rootContext.dir.value === 'rtl' ? 'left' : 'right'\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n :trap-focus=\"false\"\n @open-auto-focus.prevent=\"(event) => {\n // when opening a submenu, focus content for keyboard users only\n if (rootContext.isUsingKeyboardRef.value) subContentElement?.focus();\n }\"\n @close-auto-focus.prevent\n @focus-outside=\"\n (event) => {\n if (event.defaultPrevented) return;\n // We prevent closing when the trigger is focused to avoid triggering a re-open animation\n // on pointer interaction.\n if (event.target !== menuSubContext.trigger.value)\n menuContext.onOpenChange(false);\n }\n \"\n @escape-key-down=\"\n (event) => {\n rootContext.onClose();\n // ensure pressing escape in submenu doesn't escape full screen mode\n event.preventDefault();\n }\n \"\n @keydown=\"(event: KeyboardEvent) => {\n // Submenu key events bubble through portals. We only care about keys in this menu.\n const isKeyDownInside = (event.currentTarget as HTMLElement)?.contains(event.target as HTMLElement);\n const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir.value].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n menuContext.onOpenChange(false);\n // We focus manually because we prevented it in `onCloseAutoFocus`\n menuSubContext.trigger.value?.focus();\n // prevent window from scrolling\n event.preventDefault();\n }\n }\"\n >\n <slot />\n </MenuContentImpl>\n </Presence>\n</template>\n"],"names":["useForwardPropsEmits","injectMenuContext","injectMenuRootContext","injectMenuSubContext","useForwardExpose","useId"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAcC,+BAAkB,EAAA;AACtC,IAAA,MAAM,cAAcC,mCAAsB,EAAA;AAC1C,IAAA,MAAM,iBAAiBC,iCAAqB,EAAA;AAE5C,IAAA,MAAM,EAAE,UAAA,EAAY,cAAgB,EAAA,iBAAA,KAAsBC,wCAAiB,EAAA;AAE3E,IAAe,cAAA,CAAA,SAAA,KAAcC,kBAAM,CAAA,MAAA,EAAW,uBAAuB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSubContent.js","sources":["../../src/Menu/MenuSubContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n MenuContentImplEmits,\n MenuContentImplProps,\n} from './MenuContentImpl.vue'\n\nexport type MenuSubContentEmits = MenuContentImplEmits\n\n// reference: https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1152\nexport interface MenuSubContentProps extends Omit<MenuContentImplProps, 'disableOutsidePointerEvents' | 'disableOutsideScroll' | 'trapFocus' | 'side' | 'align'> {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with Vue animation libraries.\n */\n forceMount?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { SUB_CLOSE_KEYS } from './utils'\nimport { Presence } from '@/Presence'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\n\nconst props = withDefaults(defineProps<MenuSubContentProps>(), {\n prioritizePosition: true,\n})\nconst emits = defineEmits<MenuSubContentEmits>()\n\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst menuSubContext = injectMenuSubContext()\n\nconst { forwardRef, currentElement: subContentElement } = useForwardExpose()\n\nmenuSubContext.contentId ||= useId(undefined, 'reka-menu-sub-content')\n</script>\n\n<template>\n <Presence :present=\"forceMount || menuContext.open.value\">\n <MenuContentImpl\n v-bind=\"forwarded\"\n :id=\"menuSubContext.contentId\"\n :ref=\"forwardRef\"\n :aria-labelledby=\"menuSubContext.triggerId\"\n align=\"start\"\n :side=\"rootContext.dir.value === 'rtl' ? 'left' : 'right'\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n :trap-focus=\"false\"\n @open-auto-focus.prevent=\"(event) => {\n // when opening a submenu, focus content for keyboard users only\n if (rootContext.isUsingKeyboardRef.value) subContentElement?.focus();\n }\"\n @close-auto-focus.prevent\n @focus-outside=\"\n (event) => {\n if (event.defaultPrevented) return;\n // We prevent closing when the trigger is focused to avoid triggering a re-open animation\n // on pointer interaction.\n if (event.target !== menuSubContext.trigger.value)\n menuContext.onOpenChange(false);\n }\n \"\n @escape-key-down=\"\n (event) => {\n rootContext.onClose();\n // ensure pressing escape in submenu doesn't escape full screen mode\n event.preventDefault();\n }\n \"\n @keydown=\"(event: KeyboardEvent) => {\n // Submenu key events bubble through portals. We only care about keys in this menu.\n const isKeyDownInside = (event.currentTarget as HTMLElement)?.contains(event.target as HTMLElement);\n const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir.value].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n menuContext.onOpenChange(false);\n // We focus manually because we prevented it in `onCloseAutoFocus`\n menuSubContext.trigger.value?.focus();\n // prevent window from scrolling\n event.preventDefault();\n }\n }\"\n >\n <slot />\n </MenuContentImpl>\n </Presence>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAc,iBAAkB,EAAA;AACtC,IAAA,MAAM,cAAc,qBAAsB,EAAA;AAC1C,IAAA,MAAM,iBAAiB,oBAAqB,EAAA;AAE5C,IAAA,MAAM,EAAE,UAAA,EAAY,cAAgB,EAAA,iBAAA,KAAsB,gBAAiB,EAAA;AAE3E,IAAe,cAAA,CAAA,SAAA,KAAc,KAAM,CAAA,MAAA,EAAW,uBAAuB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenuSubContent.js","sources":["../../src/Menu/MenuSubContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n MenuContentImplEmits,\n MenuContentImplProps,\n} from './MenuContentImpl.vue'\n\nexport type MenuSubContentEmits = MenuContentImplEmits\n\n// reference: https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1152\nexport interface MenuSubContentProps extends Omit<MenuContentImplProps, 'disableOutsidePointerEvents' | 'disableOutsideScroll' | 'trapFocus' | 'side' | 'align'> {\n /**\n * Used to force mounting when more control is needed. Useful when\n * controlling animation with Vue animation libraries.\n */\n forceMount?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { Presence } from '@/Presence'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\nimport MenuContentImpl from './MenuContentImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { SUB_CLOSE_KEYS } from './utils'\n\nconst props = withDefaults(defineProps<MenuSubContentProps>(), {\n prioritizePosition: true,\n})\nconst emits = defineEmits<MenuSubContentEmits>()\n\nconst forwarded = useForwardPropsEmits(props, emits)\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst menuSubContext = injectMenuSubContext()\n\nconst { forwardRef, currentElement: subContentElement } = useForwardExpose()\n\nmenuSubContext.contentId ||= useId(undefined, 'reka-menu-sub-content')\n</script>\n\n<template>\n <Presence :present=\"forceMount || menuContext.open.value\">\n <MenuContentImpl\n v-bind=\"forwarded\"\n :id=\"menuSubContext.contentId\"\n :ref=\"forwardRef\"\n :aria-labelledby=\"menuSubContext.triggerId\"\n align=\"start\"\n :side=\"rootContext.dir.value === 'rtl' ? 'left' : 'right'\"\n :disable-outside-pointer-events=\"false\"\n :disable-outside-scroll=\"false\"\n :trap-focus=\"false\"\n @open-auto-focus.prevent=\"(event) => {\n // when opening a submenu, focus content for keyboard users only\n if (rootContext.isUsingKeyboardRef.value) subContentElement?.focus();\n }\"\n @close-auto-focus.prevent\n @focus-outside=\"\n (event) => {\n if (event.defaultPrevented) return;\n // We prevent closing when the trigger is focused to avoid triggering a re-open animation\n // on pointer interaction.\n if (event.target !== menuSubContext.trigger.value)\n menuContext.onOpenChange(false);\n }\n \"\n @escape-key-down=\"\n (event) => {\n rootContext.onClose();\n // ensure pressing escape in submenu doesn't escape full screen mode\n event.preventDefault();\n }\n \"\n @keydown=\"(event: KeyboardEvent) => {\n // Submenu key events bubble through portals. We only care about keys in this menu.\n const isKeyDownInside = (event.currentTarget as HTMLElement)?.contains(event.target as HTMLElement);\n const isCloseKey = SUB_CLOSE_KEYS[rootContext.dir.value].includes(event.key);\n if (isKeyDownInside && isCloseKey) {\n menuContext.onOpenChange(false);\n // We focus manually because we prevented it in `onCloseAutoFocus`\n menuSubContext.trigger.value?.focus();\n // prevent window from scrolling\n event.preventDefault();\n }\n }\"\n >\n <slot />\n </MenuContentImpl>\n </Presence>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AAEd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AAEnD,IAAA,MAAM,cAAc,iBAAkB,EAAA;AACtC,IAAA,MAAM,cAAc,qBAAsB,EAAA;AAC1C,IAAA,MAAM,iBAAiB,oBAAqB,EAAA;AAE5C,IAAA,MAAM,EAAE,UAAA,EAAY,cAAgB,EAAA,iBAAA,KAAsB,gBAAiB,EAAA;AAE3E,IAAe,cAAA,CAAA,SAAA,KAAc,KAAM,CAAA,MAAA,EAAW,uBAAuB,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1,9 +1,9 @@
1
1
  'use strict';
2
2
 
3
3
  const vue = require('vue');
4
+ const Menu_MenuAnchor = require('./MenuAnchor.cjs');
4
5
  const Menu_MenuItemImpl = require('./MenuItemImpl.cjs');
5
6
  const Menu_utils = require('./utils.cjs');
6
- const Menu_MenuAnchor = require('./MenuAnchor.cjs');
7
7
  const shared_useId = require('../shared/useId.cjs');
8
8
  const Menu_MenuRoot = require('./MenuRoot.cjs');
9
9
  const Menu_MenuSub = require('./MenuSub.cjs');
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSubTrigger.cjs","sources":["../../src/Menu/MenuSubTrigger.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuItemImplProps } from './MenuItemImpl.vue'\nimport type { Side } from './utils'\n\nexport interface MenuSubTriggerProps extends MenuItemImplProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { type ComponentPublicInstance, nextTick, onUnmounted, ref } from 'vue'\nimport MenuItemImpl from './MenuItemImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { injectMenuContentContext } from './MenuContentImpl.vue'\nimport { useId } from '@/shared'\nimport { SUB_OPEN_KEYS, getOpenState, isMouseEvent } from './utils'\nimport MenuAnchor from './MenuAnchor.vue'\n\nconst props = defineProps<MenuSubTriggerProps>()\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst subContext = injectMenuSubContext()\nconst contentContext = injectMenuContentContext()\n\nconst openTimerRef = ref<number | null>(null)\n\nsubContext.triggerId ||= useId(undefined, 'reka-menu-sub-trigger')\n\nfunction clearOpenTimer() {\n if (openTimerRef.value)\n window.clearTimeout(openTimerRef.value)\n openTimerRef.value = null\n}\n\nonUnmounted(() => {\n clearOpenTimer()\n})\n\nfunction handlePointerMove(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n const defaultPrevented = contentContext.onItemEnter(event)\n if (defaultPrevented)\n return\n\n if (!props.disabled && !menuContext.open.value && !openTimerRef.value) {\n contentContext.onPointerGraceIntentChange(null)\n openTimerRef.value = window.setTimeout(() => {\n menuContext.onOpenChange(true)\n clearOpenTimer()\n }, 100)\n }\n}\n\nasync function handlePointerLeave(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n clearOpenTimer()\n\n const contentRect = menuContext.content.value?.getBoundingClientRect()\n if (contentRect?.width) {\n // TODO (Radix UI): make sure to update this when we change positioning logic\n // https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1088\n const side = menuContext.content.value?.dataset.side as Side\n\n const rightSide = side === 'right'\n const bleed = rightSide ? -5 : +5\n const contentNearEdge = contentRect[rightSide ? 'left' : 'right']\n const contentFarEdge = contentRect[rightSide ? 'right' : 'left']\n\n contentContext.onPointerGraceIntentChange({\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n { x: event.clientX + bleed, y: event.clientY },\n { x: contentNearEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.bottom },\n { x: contentNearEdge, y: contentRect.bottom },\n ],\n side,\n })\n\n window.clearTimeout(contentContext.pointerGraceTimerRef.value)\n contentContext.pointerGraceTimerRef.value = window.setTimeout(\n () => contentContext.onPointerGraceIntentChange(null),\n 300,\n )\n }\n else {\n const defaultPrevented = contentContext.onTriggerLeave(event)\n if (defaultPrevented)\n return\n\n // There's 100ms where the user may leave an item before the submenu was opened.\n contentContext.onPointerGraceIntentChange(null)\n }\n}\n\nasync function handleKeyDown(event: KeyboardEvent) {\n const isTypingAhead = contentContext.searchRef.value !== ''\n if (props.disabled || (isTypingAhead && event.key === ' '))\n return\n if (SUB_OPEN_KEYS[rootContext.dir.value].includes(event.key)) {\n menuContext.onOpenChange(true)\n\n await nextTick()\n // The trigger may hold focus if opened via pointer interaction\n // so we ensure content is given focus again when switching to keyboard.\n menuContext.content.value?.focus()\n // prevent window from scrolling\n event.preventDefault()\n }\n}\n</script>\n\n<template>\n <MenuAnchor as-child>\n <MenuItemImpl\n v-bind=\"props\"\n :id=\"subContext.triggerId\"\n :ref=\"\n (vnode: ComponentPublicInstance) => {\n // @ts-ignore\n subContext?.onTriggerChange(vnode?.$el);\n return undefined\n }\n \"\n aria-haspopup=\"menu\"\n :aria-expanded=\"menuContext.open.value\"\n :aria-controls=\"subContext.contentId\"\n :data-state=\"getOpenState(menuContext.open.value)\"\n @click=\"\n async (event) => {\n if (props.disabled || event.defaultPrevented) return;\n /**\n * We manually focus because iOS Safari doesn't always focus on click (e.g. buttons)\n * and we rely heavily on `onFocusOutside` for submenus to close when switching\n * between separate submenus.\n */\n event.currentTarget.focus();\n if (!menuContext.open.value) menuContext.onOpenChange(true);\n }\n \"\n @pointermove=\"handlePointerMove\"\n @pointerleave=\"handlePointerLeave\"\n @keydown=\"handleKeyDown\"\n >\n <slot />\n </MenuItemImpl>\n </MenuAnchor>\n</template>\n"],"names":["injectMenuContext","injectMenuRootContext","injectMenuSubContext","injectMenuContentContext","ref","useId","onUnmounted","isMouseEvent","SUB_OPEN_KEYS","nextTick"],"mappings":"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"}
1
+ {"version":3,"file":"MenuSubTrigger.cjs","sources":["../../src/Menu/MenuSubTrigger.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuItemImplProps } from './MenuItemImpl.vue'\nimport type { Side } from './utils'\n\nexport interface MenuSubTriggerProps extends MenuItemImplProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport type { ComponentPublicInstance } from 'vue'\nimport { nextTick, onUnmounted, ref } from 'vue'\nimport { useId } from '@/shared'\nimport MenuAnchor from './MenuAnchor.vue'\nimport { injectMenuContentContext } from './MenuContentImpl.vue'\nimport MenuItemImpl from './MenuItemImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { getOpenState, isMouseEvent, SUB_OPEN_KEYS } from './utils'\n\nconst props = defineProps<MenuSubTriggerProps>()\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst subContext = injectMenuSubContext()\nconst contentContext = injectMenuContentContext()\n\nconst openTimerRef = ref<number | null>(null)\n\nsubContext.triggerId ||= useId(undefined, 'reka-menu-sub-trigger')\n\nfunction clearOpenTimer() {\n if (openTimerRef.value)\n window.clearTimeout(openTimerRef.value)\n openTimerRef.value = null\n}\n\nonUnmounted(() => {\n clearOpenTimer()\n})\n\nfunction handlePointerMove(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n const defaultPrevented = contentContext.onItemEnter(event)\n if (defaultPrevented)\n return\n\n if (!props.disabled && !menuContext.open.value && !openTimerRef.value) {\n contentContext.onPointerGraceIntentChange(null)\n openTimerRef.value = window.setTimeout(() => {\n menuContext.onOpenChange(true)\n clearOpenTimer()\n }, 100)\n }\n}\n\nasync function handlePointerLeave(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n clearOpenTimer()\n\n const contentRect = menuContext.content.value?.getBoundingClientRect()\n if (contentRect?.width) {\n // TODO (Radix UI): make sure to update this when we change positioning logic\n // https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1088\n const side = menuContext.content.value?.dataset.side as Side\n\n const rightSide = side === 'right'\n const bleed = rightSide ? -5 : +5\n const contentNearEdge = contentRect[rightSide ? 'left' : 'right']\n const contentFarEdge = contentRect[rightSide ? 'right' : 'left']\n\n contentContext.onPointerGraceIntentChange({\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n { x: event.clientX + bleed, y: event.clientY },\n { x: contentNearEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.bottom },\n { x: contentNearEdge, y: contentRect.bottom },\n ],\n side,\n })\n\n window.clearTimeout(contentContext.pointerGraceTimerRef.value)\n contentContext.pointerGraceTimerRef.value = window.setTimeout(\n () => contentContext.onPointerGraceIntentChange(null),\n 300,\n )\n }\n else {\n const defaultPrevented = contentContext.onTriggerLeave(event)\n if (defaultPrevented)\n return\n\n // There's 100ms where the user may leave an item before the submenu was opened.\n contentContext.onPointerGraceIntentChange(null)\n }\n}\n\nasync function handleKeyDown(event: KeyboardEvent) {\n const isTypingAhead = contentContext.searchRef.value !== ''\n if (props.disabled || (isTypingAhead && event.key === ' '))\n return\n if (SUB_OPEN_KEYS[rootContext.dir.value].includes(event.key)) {\n menuContext.onOpenChange(true)\n\n await nextTick()\n // The trigger may hold focus if opened via pointer interaction\n // so we ensure content is given focus again when switching to keyboard.\n menuContext.content.value?.focus()\n // prevent window from scrolling\n event.preventDefault()\n }\n}\n</script>\n\n<template>\n <MenuAnchor as-child>\n <MenuItemImpl\n v-bind=\"props\"\n :id=\"subContext.triggerId\"\n :ref=\"\n (vnode: ComponentPublicInstance) => {\n // @ts-ignore\n subContext?.onTriggerChange(vnode?.$el);\n return undefined\n }\n \"\n aria-haspopup=\"menu\"\n :aria-expanded=\"menuContext.open.value\"\n :aria-controls=\"subContext.contentId\"\n :data-state=\"getOpenState(menuContext.open.value)\"\n @click=\"\n async (event) => {\n if (props.disabled || event.defaultPrevented) return;\n /**\n * We manually focus because iOS Safari doesn't always focus on click (e.g. buttons)\n * and we rely heavily on `onFocusOutside` for submenus to close when switching\n * between separate submenus.\n */\n event.currentTarget.focus();\n if (!menuContext.open.value) menuContext.onOpenChange(true);\n }\n \"\n @pointermove=\"handlePointerMove\"\n @pointerleave=\"handlePointerLeave\"\n @keydown=\"handleKeyDown\"\n >\n <slot />\n </MenuItemImpl>\n </MenuAnchor>\n</template>\n"],"names":["injectMenuContext","injectMenuRootContext","injectMenuSubContext","injectMenuContentContext","ref","useId","onUnmounted","isMouseEvent","SUB_OPEN_KEYS","nextTick"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { defineComponent, ref, onUnmounted, createBlock, openBlock, withCtx, createVNode, mergeProps, unref, renderSlot, nextTick } from 'vue';
2
+ import { _ as _sfc_main$1 } from './MenuAnchor.js';
2
3
  import { _ as _sfc_main$2 } from './MenuItemImpl.js';
3
4
  import { g as getOpenState, c as isMouseEvent, e as SUB_OPEN_KEYS } from './utils.js';
4
- import { _ as _sfc_main$1 } from './MenuAnchor.js';
5
5
  import { u as useId } from '../shared/useId.js';
6
6
  import { i as injectMenuContext, a as injectMenuRootContext } from './MenuRoot.js';
7
7
  import { i as injectMenuSubContext } from './MenuSub.js';
@@ -1 +1 @@
1
- {"version":3,"file":"MenuSubTrigger.js","sources":["../../src/Menu/MenuSubTrigger.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuItemImplProps } from './MenuItemImpl.vue'\nimport type { Side } from './utils'\n\nexport interface MenuSubTriggerProps extends MenuItemImplProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { type ComponentPublicInstance, nextTick, onUnmounted, ref } from 'vue'\nimport MenuItemImpl from './MenuItemImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { injectMenuContentContext } from './MenuContentImpl.vue'\nimport { useId } from '@/shared'\nimport { SUB_OPEN_KEYS, getOpenState, isMouseEvent } from './utils'\nimport MenuAnchor from './MenuAnchor.vue'\n\nconst props = defineProps<MenuSubTriggerProps>()\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst subContext = injectMenuSubContext()\nconst contentContext = injectMenuContentContext()\n\nconst openTimerRef = ref<number | null>(null)\n\nsubContext.triggerId ||= useId(undefined, 'reka-menu-sub-trigger')\n\nfunction clearOpenTimer() {\n if (openTimerRef.value)\n window.clearTimeout(openTimerRef.value)\n openTimerRef.value = null\n}\n\nonUnmounted(() => {\n clearOpenTimer()\n})\n\nfunction handlePointerMove(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n const defaultPrevented = contentContext.onItemEnter(event)\n if (defaultPrevented)\n return\n\n if (!props.disabled && !menuContext.open.value && !openTimerRef.value) {\n contentContext.onPointerGraceIntentChange(null)\n openTimerRef.value = window.setTimeout(() => {\n menuContext.onOpenChange(true)\n clearOpenTimer()\n }, 100)\n }\n}\n\nasync function handlePointerLeave(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n clearOpenTimer()\n\n const contentRect = menuContext.content.value?.getBoundingClientRect()\n if (contentRect?.width) {\n // TODO (Radix UI): make sure to update this when we change positioning logic\n // https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1088\n const side = menuContext.content.value?.dataset.side as Side\n\n const rightSide = side === 'right'\n const bleed = rightSide ? -5 : +5\n const contentNearEdge = contentRect[rightSide ? 'left' : 'right']\n const contentFarEdge = contentRect[rightSide ? 'right' : 'left']\n\n contentContext.onPointerGraceIntentChange({\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n { x: event.clientX + bleed, y: event.clientY },\n { x: contentNearEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.bottom },\n { x: contentNearEdge, y: contentRect.bottom },\n ],\n side,\n })\n\n window.clearTimeout(contentContext.pointerGraceTimerRef.value)\n contentContext.pointerGraceTimerRef.value = window.setTimeout(\n () => contentContext.onPointerGraceIntentChange(null),\n 300,\n )\n }\n else {\n const defaultPrevented = contentContext.onTriggerLeave(event)\n if (defaultPrevented)\n return\n\n // There's 100ms where the user may leave an item before the submenu was opened.\n contentContext.onPointerGraceIntentChange(null)\n }\n}\n\nasync function handleKeyDown(event: KeyboardEvent) {\n const isTypingAhead = contentContext.searchRef.value !== ''\n if (props.disabled || (isTypingAhead && event.key === ' '))\n return\n if (SUB_OPEN_KEYS[rootContext.dir.value].includes(event.key)) {\n menuContext.onOpenChange(true)\n\n await nextTick()\n // The trigger may hold focus if opened via pointer interaction\n // so we ensure content is given focus again when switching to keyboard.\n menuContext.content.value?.focus()\n // prevent window from scrolling\n event.preventDefault()\n }\n}\n</script>\n\n<template>\n <MenuAnchor as-child>\n <MenuItemImpl\n v-bind=\"props\"\n :id=\"subContext.triggerId\"\n :ref=\"\n (vnode: ComponentPublicInstance) => {\n // @ts-ignore\n subContext?.onTriggerChange(vnode?.$el);\n return undefined\n }\n \"\n aria-haspopup=\"menu\"\n :aria-expanded=\"menuContext.open.value\"\n :aria-controls=\"subContext.contentId\"\n :data-state=\"getOpenState(menuContext.open.value)\"\n @click=\"\n async (event) => {\n if (props.disabled || event.defaultPrevented) return;\n /**\n * We manually focus because iOS Safari doesn't always focus on click (e.g. buttons)\n * and we rely heavily on `onFocusOutside` for submenus to close when switching\n * between separate submenus.\n */\n event.currentTarget.focus();\n if (!menuContext.open.value) menuContext.onOpenChange(true);\n }\n \"\n @pointermove=\"handlePointerMove\"\n @pointerleave=\"handlePointerLeave\"\n @keydown=\"handleKeyDown\"\n >\n <slot />\n </MenuItemImpl>\n </MenuAnchor>\n</template>\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MenuSubTrigger.js","sources":["../../src/Menu/MenuSubTrigger.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuItemImplProps } from './MenuItemImpl.vue'\nimport type { Side } from './utils'\n\nexport interface MenuSubTriggerProps extends MenuItemImplProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport type { ComponentPublicInstance } from 'vue'\nimport { nextTick, onUnmounted, ref } from 'vue'\nimport { useId } from '@/shared'\nimport MenuAnchor from './MenuAnchor.vue'\nimport { injectMenuContentContext } from './MenuContentImpl.vue'\nimport MenuItemImpl from './MenuItemImpl.vue'\nimport { injectMenuContext, injectMenuRootContext } from './MenuRoot.vue'\nimport { injectMenuSubContext } from './MenuSub.vue'\nimport { getOpenState, isMouseEvent, SUB_OPEN_KEYS } from './utils'\n\nconst props = defineProps<MenuSubTriggerProps>()\n\nconst menuContext = injectMenuContext()\nconst rootContext = injectMenuRootContext()\nconst subContext = injectMenuSubContext()\nconst contentContext = injectMenuContentContext()\n\nconst openTimerRef = ref<number | null>(null)\n\nsubContext.triggerId ||= useId(undefined, 'reka-menu-sub-trigger')\n\nfunction clearOpenTimer() {\n if (openTimerRef.value)\n window.clearTimeout(openTimerRef.value)\n openTimerRef.value = null\n}\n\nonUnmounted(() => {\n clearOpenTimer()\n})\n\nfunction handlePointerMove(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n const defaultPrevented = contentContext.onItemEnter(event)\n if (defaultPrevented)\n return\n\n if (!props.disabled && !menuContext.open.value && !openTimerRef.value) {\n contentContext.onPointerGraceIntentChange(null)\n openTimerRef.value = window.setTimeout(() => {\n menuContext.onOpenChange(true)\n clearOpenTimer()\n }, 100)\n }\n}\n\nasync function handlePointerLeave(event: PointerEvent) {\n if (!isMouseEvent(event))\n return\n clearOpenTimer()\n\n const contentRect = menuContext.content.value?.getBoundingClientRect()\n if (contentRect?.width) {\n // TODO (Radix UI): make sure to update this when we change positioning logic\n // https://github.com/radix-ui/primitives/blob/main/packages/react/menu/src/Menu.tsx#L1088\n const side = menuContext.content.value?.dataset.side as Side\n\n const rightSide = side === 'right'\n const bleed = rightSide ? -5 : +5\n const contentNearEdge = contentRect[rightSide ? 'left' : 'right']\n const contentFarEdge = contentRect[rightSide ? 'right' : 'left']\n\n contentContext.onPointerGraceIntentChange({\n area: [\n // Apply a bleed on clientX to ensure that our exit point is\n // consistently within polygon bounds\n { x: event.clientX + bleed, y: event.clientY },\n { x: contentNearEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.top },\n { x: contentFarEdge, y: contentRect.bottom },\n { x: contentNearEdge, y: contentRect.bottom },\n ],\n side,\n })\n\n window.clearTimeout(contentContext.pointerGraceTimerRef.value)\n contentContext.pointerGraceTimerRef.value = window.setTimeout(\n () => contentContext.onPointerGraceIntentChange(null),\n 300,\n )\n }\n else {\n const defaultPrevented = contentContext.onTriggerLeave(event)\n if (defaultPrevented)\n return\n\n // There's 100ms where the user may leave an item before the submenu was opened.\n contentContext.onPointerGraceIntentChange(null)\n }\n}\n\nasync function handleKeyDown(event: KeyboardEvent) {\n const isTypingAhead = contentContext.searchRef.value !== ''\n if (props.disabled || (isTypingAhead && event.key === ' '))\n return\n if (SUB_OPEN_KEYS[rootContext.dir.value].includes(event.key)) {\n menuContext.onOpenChange(true)\n\n await nextTick()\n // The trigger may hold focus if opened via pointer interaction\n // so we ensure content is given focus again when switching to keyboard.\n menuContext.content.value?.focus()\n // prevent window from scrolling\n event.preventDefault()\n }\n}\n</script>\n\n<template>\n <MenuAnchor as-child>\n <MenuItemImpl\n v-bind=\"props\"\n :id=\"subContext.triggerId\"\n :ref=\"\n (vnode: ComponentPublicInstance) => {\n // @ts-ignore\n subContext?.onTriggerChange(vnode?.$el);\n return undefined\n }\n \"\n aria-haspopup=\"menu\"\n :aria-expanded=\"menuContext.open.value\"\n :aria-controls=\"subContext.contentId\"\n :data-state=\"getOpenState(menuContext.open.value)\"\n @click=\"\n async (event) => {\n if (props.disabled || event.defaultPrevented) return;\n /**\n * We manually focus because iOS Safari doesn't always focus on click (e.g. buttons)\n * and we rely heavily on `onFocusOutside` for submenus to close when switching\n * between separate submenus.\n */\n event.currentTarget.focus();\n if (!menuContext.open.value) menuContext.onOpenChange(true);\n }\n \"\n @pointermove=\"handlePointerMove\"\n @pointerleave=\"handlePointerLeave\"\n @keydown=\"handleKeyDown\"\n >\n <slot />\n </MenuItemImpl>\n </MenuAnchor>\n</template>\n"],"names":[],"mappings":"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"}
@@ -6,9 +6,9 @@ const shared_useTypeahead = require('../shared/useTypeahead.cjs');
6
6
  const Collection_Collection = require('../Collection/Collection.cjs');
7
7
  const shared_useForwardPropsEmits = require('../shared/useForwardPropsEmits.cjs');
8
8
  const shared_useForwardExpose = require('../shared/useForwardExpose.cjs');
9
+ const Menubar_MenubarMenu = require('./MenubarMenu.cjs');
9
10
  const shared_useId = require('../shared/useId.cjs');
10
11
  const Menubar_MenubarRoot = require('./MenubarRoot.cjs');
11
- const Menubar_MenubarMenu = require('./MenubarMenu.cjs');
12
12
 
13
13
  const _sfc_main = /* @__PURE__ */ vue.defineComponent({
14
14
  __name: "MenubarContent",
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarContent.cjs","sources":["../../src/Menubar/MenubarContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuContentEmits, MenuContentProps } from '@/Menu'\nimport { useCollection } from '@/Collection'\n\nexport type MenubarContentEmits = MenuContentEmits\n\nexport interface MenubarContentProps extends MenuContentProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\nimport { injectMenubarMenuContext } from './MenubarMenu.vue'\nimport { MenuContent } from '@/Menu'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\nimport { wrapArray } from '@/shared/useTypeahead'\n\nconst props = withDefaults(defineProps<MenubarContentProps>(), {\n align: 'start',\n})\nconst emits = defineEmits<MenubarContentEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\nuseForwardExpose()\n\nconst rootContext = injectMenubarRootContext()\nconst menuContext = injectMenubarMenuContext()\n\nmenuContext.contentId ||= useId(undefined, 'reka-menubar-content')\n\nconst { getItems } = useCollection({ key: 'Menubar' })\n\nconst hasInteractedOutsideRef = ref(false)\n\nfunction handleArrowNavigation(event: KeyboardEvent) {\n const target = event.target as HTMLElement\n const targetIsSubTrigger = target.hasAttribute(\n 'data-reka-menubar-subtrigger',\n )\n\n const prevMenuKey = rootContext.dir.value === 'rtl' ? 'ArrowRight' : 'ArrowLeft'\n const isPrevKey = prevMenuKey === event.key\n const isNextKey = !isPrevKey\n\n // Prevent navigation when we're opening a submenu\n if (isNextKey && targetIsSubTrigger)\n return\n\n let candidateValues = getItems().filter(i => i.ref.dataset.disabled !== '').map(i => i.ref.dataset.value)\n if (isPrevKey)\n candidateValues.reverse()\n\n const currentIndex = candidateValues.indexOf(menuContext.value)\n\n candidateValues = rootContext.loop.value\n ? wrapArray(candidateValues, currentIndex + 1)\n : candidateValues.slice(currentIndex + 1)\n\n const [nextValue] = candidateValues\n if (nextValue)\n rootContext.onMenuOpen(nextValue)\n}\n</script>\n\n<template>\n <MenuContent\n v-bind=\"forwarded\"\n :id=\"menuContext.contentId\"\n data-reka-menubar-content=\"\"\n :aria-labelledby=\"menuContext.triggerId\"\n :style=\"{\n '--reka-menubar-content-transform-origin':\n 'var(--reka-popper-transform-origin)',\n '--reka-menubar-content-available-width':\n 'var(--reka-popper-available-width)',\n '--reka-menubar-content-available-height':\n 'var(--reka-popper-available-height)',\n '--reka-menubar-trigger-width': 'var(--reka-popper-anchor-width)',\n '--reka-menubar-trigger-height': 'var(--reka-popper-anchor-height)',\n }\"\n @close-auto-focus=\"(event) => {\n const menubarOpen = Boolean(rootContext.modelValue.value);\n if (!menubarOpen && !hasInteractedOutsideRef) {\n menuContext.triggerElement.value?.focus();\n }\n\n hasInteractedOutsideRef = false;\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\"\n @focus-outside=\"(event) => {\n const target = event.target as HTMLElement;\n const isMenubarTrigger = getItems().filter(i => i.ref.dataset.disabled !== '').some((i) => i.ref.contains(target));\n if (isMenubarTrigger) event.preventDefault();\n }\"\n @interact-outside=\"\n (event) => {\n hasInteractedOutsideRef = true;\n }\n \"\n @entry-focus=\"(event) => {\n if (!menuContext.wasKeyboardTriggerOpenRef.value) event.preventDefault()\n }\"\n @keydown.arrow-right.arrow-left=\"handleArrowNavigation\"\n >\n <slot />\n </MenuContent>\n</template>\n"],"names":["useForwardPropsEmits","useForwardExpose","injectMenubarRootContext","injectMenubarMenuContext","useId","useCollection","ref","wrapArray"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AACnD,IAAiBC,wCAAA,EAAA;AAEjB,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAC7C,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAE7C,IAAY,WAAA,CAAA,SAAA,KAAcC,kBAAM,CAAA,MAAA,EAAW,sBAAsB,CAAA;AAEjE,IAAA,MAAM,EAAE,QAAS,EAAA,GAAIC,oCAAc,EAAE,GAAA,EAAK,WAAW,CAAA;AAErD,IAAM,MAAA,uBAAA,GAA0BC,QAAI,KAAK,CAAA;AAEzC,IAAA,SAAS,sBAAsB,KAAsB,EAAA;AACnD,MAAA,MAAM,SAAS,KAAM,CAAA,MAAA;AACrB,MAAA,MAAM,qBAAqB,MAAO,CAAA,YAAA;AAAA,QAChC;AAAA,OACF;AAEA,MAAA,MAAM,WAAc,GAAA,WAAA,CAAY,GAAI,CAAA,KAAA,KAAU,QAAQ,YAAe,GAAA,WAAA;AACrE,MAAM,MAAA,SAAA,GAAY,gBAAgB,KAAM,CAAA,GAAA;AACxC,MAAA,MAAM,YAAY,CAAC,SAAA;AAGnB,MAAA,IAAI,SAAa,IAAA,kBAAA;AACf,QAAA;AAEF,MAAA,IAAI,kBAAkB,QAAS,EAAA,CAAE,MAAO,CAAA,CAAA,CAAA,KAAK,EAAE,GAAI,CAAA,OAAA,CAAQ,QAAa,KAAA,EAAE,EAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,QAAQ,KAAK,CAAA;AACxG,MAAI,IAAA,SAAA;AACF,QAAA,eAAA,CAAgB,OAAQ,EAAA;AAE1B,MAAA,MAAM,YAAe,GAAA,eAAA,CAAgB,OAAQ,CAAA,WAAA,CAAY,KAAK,CAAA;AAE9D,MAAkB,eAAA,GAAA,WAAA,CAAY,IAAK,CAAA,KAAA,GAC/BC,6BAAU,CAAA,eAAA,EAAiB,YAAe,GAAA,CAAC,CAC3C,GAAA,eAAA,CAAgB,KAAM,CAAA,YAAA,GAAe,CAAC,CAAA;AAE1C,MAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA;AACpB,MAAI,IAAA,SAAA;AACF,QAAA,WAAA,CAAY,WAAW,SAAS,CAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarContent.cjs","sources":["../../src/Menubar/MenubarContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuContentEmits, MenuContentProps } from '@/Menu'\nimport { useCollection } from '@/Collection'\n\nexport type MenubarContentEmits = MenuContentEmits\n\nexport interface MenubarContentProps extends MenuContentProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { MenuContent } from '@/Menu'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\nimport { wrapArray } from '@/shared/useTypeahead'\nimport { injectMenubarMenuContext } from './MenubarMenu.vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\n\nconst props = withDefaults(defineProps<MenubarContentProps>(), {\n align: 'start',\n})\nconst emits = defineEmits<MenubarContentEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\nuseForwardExpose()\n\nconst rootContext = injectMenubarRootContext()\nconst menuContext = injectMenubarMenuContext()\n\nmenuContext.contentId ||= useId(undefined, 'reka-menubar-content')\n\nconst { getItems } = useCollection({ key: 'Menubar' })\n\nconst hasInteractedOutsideRef = ref(false)\n\nfunction handleArrowNavigation(event: KeyboardEvent) {\n const target = event.target as HTMLElement\n const targetIsSubTrigger = target.hasAttribute(\n 'data-reka-menubar-subtrigger',\n )\n\n const prevMenuKey = rootContext.dir.value === 'rtl' ? 'ArrowRight' : 'ArrowLeft'\n const isPrevKey = prevMenuKey === event.key\n const isNextKey = !isPrevKey\n\n // Prevent navigation when we're opening a submenu\n if (isNextKey && targetIsSubTrigger)\n return\n\n let candidateValues = getItems().filter(i => i.ref.dataset.disabled !== '').map(i => i.ref.dataset.value)\n if (isPrevKey)\n candidateValues.reverse()\n\n const currentIndex = candidateValues.indexOf(menuContext.value)\n\n candidateValues = rootContext.loop.value\n ? wrapArray(candidateValues, currentIndex + 1)\n : candidateValues.slice(currentIndex + 1)\n\n const [nextValue] = candidateValues\n if (nextValue)\n rootContext.onMenuOpen(nextValue)\n}\n</script>\n\n<template>\n <MenuContent\n v-bind=\"forwarded\"\n :id=\"menuContext.contentId\"\n data-reka-menubar-content=\"\"\n :aria-labelledby=\"menuContext.triggerId\"\n :style=\"{\n '--reka-menubar-content-transform-origin':\n 'var(--reka-popper-transform-origin)',\n '--reka-menubar-content-available-width':\n 'var(--reka-popper-available-width)',\n '--reka-menubar-content-available-height':\n 'var(--reka-popper-available-height)',\n '--reka-menubar-trigger-width': 'var(--reka-popper-anchor-width)',\n '--reka-menubar-trigger-height': 'var(--reka-popper-anchor-height)',\n }\"\n @close-auto-focus=\"(event) => {\n const menubarOpen = Boolean(rootContext.modelValue.value);\n if (!menubarOpen && !hasInteractedOutsideRef) {\n menuContext.triggerElement.value?.focus();\n }\n\n hasInteractedOutsideRef = false;\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\"\n @focus-outside=\"(event) => {\n const target = event.target as HTMLElement;\n const isMenubarTrigger = getItems().filter(i => i.ref.dataset.disabled !== '').some((i) => i.ref.contains(target));\n if (isMenubarTrigger) event.preventDefault();\n }\"\n @interact-outside=\"\n (event) => {\n hasInteractedOutsideRef = true;\n }\n \"\n @entry-focus=\"(event) => {\n if (!menuContext.wasKeyboardTriggerOpenRef.value) event.preventDefault()\n }\"\n @keydown.arrow-right.arrow-left=\"handleArrowNavigation\"\n >\n <slot />\n </MenuContent>\n</template>\n"],"names":["useForwardPropsEmits","useForwardExpose","injectMenubarRootContext","injectMenubarMenuContext","useId","useCollection","ref","wrapArray"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AACnD,IAAiBC,wCAAA,EAAA;AAEjB,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAC7C,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAE7C,IAAY,WAAA,CAAA,SAAA,KAAcC,kBAAM,CAAA,MAAA,EAAW,sBAAsB,CAAA;AAEjE,IAAA,MAAM,EAAE,QAAS,EAAA,GAAIC,oCAAc,EAAE,GAAA,EAAK,WAAW,CAAA;AAErD,IAAM,MAAA,uBAAA,GAA0BC,QAAI,KAAK,CAAA;AAEzC,IAAA,SAAS,sBAAsB,KAAsB,EAAA;AACnD,MAAA,MAAM,SAAS,KAAM,CAAA,MAAA;AACrB,MAAA,MAAM,qBAAqB,MAAO,CAAA,YAAA;AAAA,QAChC;AAAA,OACF;AAEA,MAAA,MAAM,WAAc,GAAA,WAAA,CAAY,GAAI,CAAA,KAAA,KAAU,QAAQ,YAAe,GAAA,WAAA;AACrE,MAAM,MAAA,SAAA,GAAY,gBAAgB,KAAM,CAAA,GAAA;AACxC,MAAA,MAAM,YAAY,CAAC,SAAA;AAGnB,MAAA,IAAI,SAAa,IAAA,kBAAA;AACf,QAAA;AAEF,MAAA,IAAI,kBAAkB,QAAS,EAAA,CAAE,MAAO,CAAA,CAAA,CAAA,KAAK,EAAE,GAAI,CAAA,OAAA,CAAQ,QAAa,KAAA,EAAE,EAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,QAAQ,KAAK,CAAA;AACxG,MAAI,IAAA,SAAA;AACF,QAAA,eAAA,CAAgB,OAAQ,EAAA;AAE1B,MAAA,MAAM,YAAe,GAAA,eAAA,CAAgB,OAAQ,CAAA,WAAA,CAAY,KAAK,CAAA;AAE9D,MAAkB,eAAA,GAAA,WAAA,CAAY,IAAK,CAAA,KAAA,GAC/BC,6BAAU,CAAA,eAAA,EAAiB,YAAe,GAAA,CAAC,CAC3C,GAAA,eAAA,CAAgB,KAAM,CAAA,YAAA,GAAe,CAAC,CAAA;AAE1C,MAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA;AACpB,MAAI,IAAA,SAAA;AACF,QAAA,WAAA,CAAY,WAAW,SAAS,CAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -4,9 +4,9 @@ import { w as wrapArray } from '../shared/useTypeahead.js';
4
4
  import { u as useCollection } from '../Collection/Collection.js';
5
5
  import { u as useForwardPropsEmits } from '../shared/useForwardPropsEmits.js';
6
6
  import { u as useForwardExpose } from '../shared/useForwardExpose.js';
7
+ import { i as injectMenubarMenuContext } from './MenubarMenu.js';
7
8
  import { u as useId } from '../shared/useId.js';
8
9
  import { i as injectMenubarRootContext } from './MenubarRoot.js';
9
- import { i as injectMenubarMenuContext } from './MenubarMenu.js';
10
10
 
11
11
  const _sfc_main = /* @__PURE__ */ defineComponent({
12
12
  __name: "MenubarContent",
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarContent.js","sources":["../../src/Menubar/MenubarContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuContentEmits, MenuContentProps } from '@/Menu'\nimport { useCollection } from '@/Collection'\n\nexport type MenubarContentEmits = MenuContentEmits\n\nexport interface MenubarContentProps extends MenuContentProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\nimport { injectMenubarMenuContext } from './MenubarMenu.vue'\nimport { MenuContent } from '@/Menu'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\nimport { wrapArray } from '@/shared/useTypeahead'\n\nconst props = withDefaults(defineProps<MenubarContentProps>(), {\n align: 'start',\n})\nconst emits = defineEmits<MenubarContentEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\nuseForwardExpose()\n\nconst rootContext = injectMenubarRootContext()\nconst menuContext = injectMenubarMenuContext()\n\nmenuContext.contentId ||= useId(undefined, 'reka-menubar-content')\n\nconst { getItems } = useCollection({ key: 'Menubar' })\n\nconst hasInteractedOutsideRef = ref(false)\n\nfunction handleArrowNavigation(event: KeyboardEvent) {\n const target = event.target as HTMLElement\n const targetIsSubTrigger = target.hasAttribute(\n 'data-reka-menubar-subtrigger',\n )\n\n const prevMenuKey = rootContext.dir.value === 'rtl' ? 'ArrowRight' : 'ArrowLeft'\n const isPrevKey = prevMenuKey === event.key\n const isNextKey = !isPrevKey\n\n // Prevent navigation when we're opening a submenu\n if (isNextKey && targetIsSubTrigger)\n return\n\n let candidateValues = getItems().filter(i => i.ref.dataset.disabled !== '').map(i => i.ref.dataset.value)\n if (isPrevKey)\n candidateValues.reverse()\n\n const currentIndex = candidateValues.indexOf(menuContext.value)\n\n candidateValues = rootContext.loop.value\n ? wrapArray(candidateValues, currentIndex + 1)\n : candidateValues.slice(currentIndex + 1)\n\n const [nextValue] = candidateValues\n if (nextValue)\n rootContext.onMenuOpen(nextValue)\n}\n</script>\n\n<template>\n <MenuContent\n v-bind=\"forwarded\"\n :id=\"menuContext.contentId\"\n data-reka-menubar-content=\"\"\n :aria-labelledby=\"menuContext.triggerId\"\n :style=\"{\n '--reka-menubar-content-transform-origin':\n 'var(--reka-popper-transform-origin)',\n '--reka-menubar-content-available-width':\n 'var(--reka-popper-available-width)',\n '--reka-menubar-content-available-height':\n 'var(--reka-popper-available-height)',\n '--reka-menubar-trigger-width': 'var(--reka-popper-anchor-width)',\n '--reka-menubar-trigger-height': 'var(--reka-popper-anchor-height)',\n }\"\n @close-auto-focus=\"(event) => {\n const menubarOpen = Boolean(rootContext.modelValue.value);\n if (!menubarOpen && !hasInteractedOutsideRef) {\n menuContext.triggerElement.value?.focus();\n }\n\n hasInteractedOutsideRef = false;\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\"\n @focus-outside=\"(event) => {\n const target = event.target as HTMLElement;\n const isMenubarTrigger = getItems().filter(i => i.ref.dataset.disabled !== '').some((i) => i.ref.contains(target));\n if (isMenubarTrigger) event.preventDefault();\n }\"\n @interact-outside=\"\n (event) => {\n hasInteractedOutsideRef = true;\n }\n \"\n @entry-focus=\"(event) => {\n if (!menuContext.wasKeyboardTriggerOpenRef.value) event.preventDefault()\n }\"\n @keydown.arrow-right.arrow-left=\"handleArrowNavigation\"\n >\n <slot />\n </MenuContent>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AACnD,IAAiB,gBAAA,EAAA;AAEjB,IAAA,MAAM,cAAc,wBAAyB,EAAA;AAC7C,IAAA,MAAM,cAAc,wBAAyB,EAAA;AAE7C,IAAY,WAAA,CAAA,SAAA,KAAc,KAAM,CAAA,MAAA,EAAW,sBAAsB,CAAA;AAEjE,IAAA,MAAM,EAAE,QAAS,EAAA,GAAI,cAAc,EAAE,GAAA,EAAK,WAAW,CAAA;AAErD,IAAM,MAAA,uBAAA,GAA0B,IAAI,KAAK,CAAA;AAEzC,IAAA,SAAS,sBAAsB,KAAsB,EAAA;AACnD,MAAA,MAAM,SAAS,KAAM,CAAA,MAAA;AACrB,MAAA,MAAM,qBAAqB,MAAO,CAAA,YAAA;AAAA,QAChC;AAAA,OACF;AAEA,MAAA,MAAM,WAAc,GAAA,WAAA,CAAY,GAAI,CAAA,KAAA,KAAU,QAAQ,YAAe,GAAA,WAAA;AACrE,MAAM,MAAA,SAAA,GAAY,gBAAgB,KAAM,CAAA,GAAA;AACxC,MAAA,MAAM,YAAY,CAAC,SAAA;AAGnB,MAAA,IAAI,SAAa,IAAA,kBAAA;AACf,QAAA;AAEF,MAAA,IAAI,kBAAkB,QAAS,EAAA,CAAE,MAAO,CAAA,CAAA,CAAA,KAAK,EAAE,GAAI,CAAA,OAAA,CAAQ,QAAa,KAAA,EAAE,EAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,QAAQ,KAAK,CAAA;AACxG,MAAI,IAAA,SAAA;AACF,QAAA,eAAA,CAAgB,OAAQ,EAAA;AAE1B,MAAA,MAAM,YAAe,GAAA,eAAA,CAAgB,OAAQ,CAAA,WAAA,CAAY,KAAK,CAAA;AAE9D,MAAkB,eAAA,GAAA,WAAA,CAAY,IAAK,CAAA,KAAA,GAC/B,SAAU,CAAA,eAAA,EAAiB,YAAe,GAAA,CAAC,CAC3C,GAAA,eAAA,CAAgB,KAAM,CAAA,YAAA,GAAe,CAAC,CAAA;AAE1C,MAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA;AACpB,MAAI,IAAA,SAAA;AACF,QAAA,WAAA,CAAY,WAAW,SAAS,CAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarContent.js","sources":["../../src/Menubar/MenubarContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuContentEmits, MenuContentProps } from '@/Menu'\nimport { useCollection } from '@/Collection'\n\nexport type MenubarContentEmits = MenuContentEmits\n\nexport interface MenubarContentProps extends MenuContentProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { ref } from 'vue'\nimport { MenuContent } from '@/Menu'\nimport { useForwardExpose, useForwardPropsEmits, useId } from '@/shared'\nimport { wrapArray } from '@/shared/useTypeahead'\nimport { injectMenubarMenuContext } from './MenubarMenu.vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\n\nconst props = withDefaults(defineProps<MenubarContentProps>(), {\n align: 'start',\n})\nconst emits = defineEmits<MenubarContentEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\nuseForwardExpose()\n\nconst rootContext = injectMenubarRootContext()\nconst menuContext = injectMenubarMenuContext()\n\nmenuContext.contentId ||= useId(undefined, 'reka-menubar-content')\n\nconst { getItems } = useCollection({ key: 'Menubar' })\n\nconst hasInteractedOutsideRef = ref(false)\n\nfunction handleArrowNavigation(event: KeyboardEvent) {\n const target = event.target as HTMLElement\n const targetIsSubTrigger = target.hasAttribute(\n 'data-reka-menubar-subtrigger',\n )\n\n const prevMenuKey = rootContext.dir.value === 'rtl' ? 'ArrowRight' : 'ArrowLeft'\n const isPrevKey = prevMenuKey === event.key\n const isNextKey = !isPrevKey\n\n // Prevent navigation when we're opening a submenu\n if (isNextKey && targetIsSubTrigger)\n return\n\n let candidateValues = getItems().filter(i => i.ref.dataset.disabled !== '').map(i => i.ref.dataset.value)\n if (isPrevKey)\n candidateValues.reverse()\n\n const currentIndex = candidateValues.indexOf(menuContext.value)\n\n candidateValues = rootContext.loop.value\n ? wrapArray(candidateValues, currentIndex + 1)\n : candidateValues.slice(currentIndex + 1)\n\n const [nextValue] = candidateValues\n if (nextValue)\n rootContext.onMenuOpen(nextValue)\n}\n</script>\n\n<template>\n <MenuContent\n v-bind=\"forwarded\"\n :id=\"menuContext.contentId\"\n data-reka-menubar-content=\"\"\n :aria-labelledby=\"menuContext.triggerId\"\n :style=\"{\n '--reka-menubar-content-transform-origin':\n 'var(--reka-popper-transform-origin)',\n '--reka-menubar-content-available-width':\n 'var(--reka-popper-available-width)',\n '--reka-menubar-content-available-height':\n 'var(--reka-popper-available-height)',\n '--reka-menubar-trigger-width': 'var(--reka-popper-anchor-width)',\n '--reka-menubar-trigger-height': 'var(--reka-popper-anchor-height)',\n }\"\n @close-auto-focus=\"(event) => {\n const menubarOpen = Boolean(rootContext.modelValue.value);\n if (!menubarOpen && !hasInteractedOutsideRef) {\n menuContext.triggerElement.value?.focus();\n }\n\n hasInteractedOutsideRef = false;\n // Always prevent auto focus because we either focus manually or want user agent focus\n event.preventDefault();\n }\"\n @focus-outside=\"(event) => {\n const target = event.target as HTMLElement;\n const isMenubarTrigger = getItems().filter(i => i.ref.dataset.disabled !== '').some((i) => i.ref.contains(target));\n if (isMenubarTrigger) event.preventDefault();\n }\"\n @interact-outside=\"\n (event) => {\n hasInteractedOutsideRef = true;\n }\n \"\n @entry-focus=\"(event) => {\n if (!menuContext.wasKeyboardTriggerOpenRef.value) event.preventDefault()\n }\"\n @keydown.arrow-right.arrow-left=\"handleArrowNavigation\"\n >\n <slot />\n </MenuContent>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAY,oBAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AACnD,IAAiB,gBAAA,EAAA;AAEjB,IAAA,MAAM,cAAc,wBAAyB,EAAA;AAC7C,IAAA,MAAM,cAAc,wBAAyB,EAAA;AAE7C,IAAY,WAAA,CAAA,SAAA,KAAc,KAAM,CAAA,MAAA,EAAW,sBAAsB,CAAA;AAEjE,IAAA,MAAM,EAAE,QAAS,EAAA,GAAI,cAAc,EAAE,GAAA,EAAK,WAAW,CAAA;AAErD,IAAM,MAAA,uBAAA,GAA0B,IAAI,KAAK,CAAA;AAEzC,IAAA,SAAS,sBAAsB,KAAsB,EAAA;AACnD,MAAA,MAAM,SAAS,KAAM,CAAA,MAAA;AACrB,MAAA,MAAM,qBAAqB,MAAO,CAAA,YAAA;AAAA,QAChC;AAAA,OACF;AAEA,MAAA,MAAM,WAAc,GAAA,WAAA,CAAY,GAAI,CAAA,KAAA,KAAU,QAAQ,YAAe,GAAA,WAAA;AACrE,MAAM,MAAA,SAAA,GAAY,gBAAgB,KAAM,CAAA,GAAA;AACxC,MAAA,MAAM,YAAY,CAAC,SAAA;AAGnB,MAAA,IAAI,SAAa,IAAA,kBAAA;AACf,QAAA;AAEF,MAAA,IAAI,kBAAkB,QAAS,EAAA,CAAE,MAAO,CAAA,CAAA,CAAA,KAAK,EAAE,GAAI,CAAA,OAAA,CAAQ,QAAa,KAAA,EAAE,EAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,QAAQ,KAAK,CAAA;AACxG,MAAI,IAAA,SAAA;AACF,QAAA,eAAA,CAAgB,OAAQ,EAAA;AAE1B,MAAA,MAAM,YAAe,GAAA,eAAA,CAAgB,OAAQ,CAAA,WAAA,CAAY,KAAK,CAAA;AAE9D,MAAkB,eAAA,GAAA,WAAA,CAAY,IAAK,CAAA,KAAA,GAC/B,SAAU,CAAA,eAAA,EAAiB,YAAe,GAAA,CAAC,CAC3C,GAAA,eAAA,CAAgB,KAAM,CAAA,YAAA,GAAe,CAAC,CAAA;AAE1C,MAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA;AACpB,MAAI,IAAA,SAAA;AACF,QAAA,WAAA,CAAY,WAAW,SAAS,CAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarGroup.cjs","sources":["../../src/Menubar/MenubarGroup.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuGroupProps } from '@/Menu'\n\nexport interface MenubarGroupProps extends MenuGroupProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { useForwardExpose } from '@/shared'\nimport { MenuGroup } from '@/Menu'\n\nconst props = defineProps<MenubarGroupProps>()\nuseForwardExpose()\n</script>\n\n<template>\n <MenuGroup v-bind=\"props\">\n <slot />\n </MenuGroup>\n</template>\n"],"names":["useForwardExpose"],"mappings":";;;;;;;;;;;;;AAUA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAiBA,wCAAA,EAAA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarGroup.cjs","sources":["../../src/Menubar/MenubarGroup.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuGroupProps } from '@/Menu'\n\nexport interface MenubarGroupProps extends MenuGroupProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { MenuGroup } from '@/Menu'\nimport { useForwardExpose } from '@/shared'\n\nconst props = defineProps<MenubarGroupProps>()\nuseForwardExpose()\n</script>\n\n<template>\n <MenuGroup v-bind=\"props\">\n <slot />\n </MenuGroup>\n</template>\n"],"names":["useForwardExpose"],"mappings":";;;;;;;;;;;;;AAUA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAiBA,wCAAA,EAAA;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarGroup.js","sources":["../../src/Menubar/MenubarGroup.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuGroupProps } from '@/Menu'\n\nexport interface MenubarGroupProps extends MenuGroupProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { useForwardExpose } from '@/shared'\nimport { MenuGroup } from '@/Menu'\n\nconst props = defineProps<MenubarGroupProps>()\nuseForwardExpose()\n</script>\n\n<template>\n <MenuGroup v-bind=\"props\">\n <slot />\n </MenuGroup>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;AAUA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAiB,gBAAA,EAAA;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarGroup.js","sources":["../../src/Menubar/MenubarGroup.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuGroupProps } from '@/Menu'\n\nexport interface MenubarGroupProps extends MenuGroupProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { MenuGroup } from '@/Menu'\nimport { useForwardExpose } from '@/shared'\n\nconst props = defineProps<MenubarGroupProps>()\nuseForwardExpose()\n</script>\n\n<template>\n <MenuGroup v-bind=\"props\">\n <slot />\n </MenuGroup>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;AAUA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAiB,gBAAA,EAAA;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarMenu.cjs","sources":["../../src/Menubar/MenubarMenu.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport { createContext, useForwardExpose, useId } from '@/shared'\n\nexport interface MenubarMenuProps {\n /**\n * A unique value that associates the item with an active value when the navigation menu is controlled.\n *\n * This prop is managed automatically when uncontrolled.\n */\n value?: string\n}\n\ntype MenubarMenuContext = {\n value: string\n triggerId: string\n triggerElement: Ref<HTMLElement | undefined>\n contentId: string\n wasKeyboardTriggerOpenRef: Ref<boolean>\n}\n\nexport const [injectMenubarMenuContext, provideMenubarMenuContext]\n = createContext<MenubarMenuContext>('MenubarMenu')\n</script>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\nimport { MenuRoot } from '@/Menu'\n\nconst props = defineProps<MenubarMenuProps>()\n\nconst value = useId(props.value)\nconst rootContext = injectMenubarRootContext()\nuseForwardExpose()\n\nconst triggerElement = ref<HTMLElement>()\nconst wasKeyboardTriggerOpenRef = ref(false)\n\nconst open = computed(() => rootContext.modelValue.value === value)\n\nwatch(open, () => {\n if (!open.value)\n wasKeyboardTriggerOpenRef.value = false\n})\n\nprovideMenubarMenuContext({\n value,\n triggerElement,\n triggerId: value,\n contentId: '',\n wasKeyboardTriggerOpenRef,\n})\n</script>\n\n<template>\n <MenuRoot\n :open=\"open\"\n :modal=\"false\"\n :dir=\"rootContext.dir.value\"\n @update:open=\"\n (value) => {\n // Menu only calls `@update:open` when dismissing so we\n // want to close our MenuBar based on the same events.\n if (!value) rootContext.onMenuClose();\n }\n \"\n >\n <slot />\n </MenuRoot>\n</template>\n"],"names":["createContext","useId","injectMenubarRootContext","useForwardExpose","ref","computed","watch"],"mappings":";;;;;;;;;AAqBO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7DA,mCAAkC,aAAa;;;;;;;AAQnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAEd,IAAM,MAAA,KAAA,GAAQC,kBAAM,CAAA,KAAA,CAAM,KAAK,CAAA;AAC/B,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAC7C,IAAiBC,wCAAA,EAAA;AAEjB,IAAA,MAAM,iBAAiBC,OAAiB,EAAA;AACxC,IAAM,MAAA,yBAAA,GAA4BA,QAAI,KAAK,CAAA;AAE3C,IAAA,MAAM,OAAOC,YAAS,CAAA,MAAM,WAAY,CAAA,UAAA,CAAW,UAAU,KAAK,CAAA;AAElE,IAAAC,SAAA,CAAM,MAAM,MAAM;AAChB,MAAA,IAAI,CAAC,IAAK,CAAA,KAAA;AACR,QAAA,yBAAA,CAA0B,KAAQ,GAAA,KAAA;AAAA,KACrC,CAAA;AAED,IAA0B,yBAAA,CAAA;AAAA,MACxB,KAAA;AAAA,MACA,cAAA;AAAA,MACA,SAAW,EAAA,KAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarMenu.cjs","sources":["../../src/Menubar/MenubarMenu.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport { createContext, useForwardExpose, useId } from '@/shared'\n\nexport interface MenubarMenuProps {\n /**\n * A unique value that associates the item with an active value when the navigation menu is controlled.\n *\n * This prop is managed automatically when uncontrolled.\n */\n value?: string\n}\n\ntype MenubarMenuContext = {\n value: string\n triggerId: string\n triggerElement: Ref<HTMLElement | undefined>\n contentId: string\n wasKeyboardTriggerOpenRef: Ref<boolean>\n}\n\nexport const [injectMenubarMenuContext, provideMenubarMenuContext]\n = createContext<MenubarMenuContext>('MenubarMenu')\n</script>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue'\nimport { MenuRoot } from '@/Menu'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\n\nconst props = defineProps<MenubarMenuProps>()\n\nconst value = useId(props.value)\nconst rootContext = injectMenubarRootContext()\nuseForwardExpose()\n\nconst triggerElement = ref<HTMLElement>()\nconst wasKeyboardTriggerOpenRef = ref(false)\n\nconst open = computed(() => rootContext.modelValue.value === value)\n\nwatch(open, () => {\n if (!open.value)\n wasKeyboardTriggerOpenRef.value = false\n})\n\nprovideMenubarMenuContext({\n value,\n triggerElement,\n triggerId: value,\n contentId: '',\n wasKeyboardTriggerOpenRef,\n})\n</script>\n\n<template>\n <MenuRoot\n :open=\"open\"\n :modal=\"false\"\n :dir=\"rootContext.dir.value\"\n @update:open=\"\n (value) => {\n // Menu only calls `@update:open` when dismissing so we\n // want to close our MenuBar based on the same events.\n if (!value) rootContext.onMenuClose();\n }\n \"\n >\n <slot />\n </MenuRoot>\n</template>\n"],"names":["createContext","useId","injectMenubarRootContext","useForwardExpose","ref","computed","watch"],"mappings":";;;;;;;;;AAqBO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7DA,mCAAkC,aAAa;;;;;;;AAQnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAEd,IAAM,MAAA,KAAA,GAAQC,kBAAM,CAAA,KAAA,CAAM,KAAK,CAAA;AAC/B,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAC7C,IAAiBC,wCAAA,EAAA;AAEjB,IAAA,MAAM,iBAAiBC,OAAiB,EAAA;AACxC,IAAM,MAAA,yBAAA,GAA4BA,QAAI,KAAK,CAAA;AAE3C,IAAA,MAAM,OAAOC,YAAS,CAAA,MAAM,WAAY,CAAA,UAAA,CAAW,UAAU,KAAK,CAAA;AAElE,IAAAC,SAAA,CAAM,MAAM,MAAM;AAChB,MAAA,IAAI,CAAC,IAAK,CAAA,KAAA;AACR,QAAA,yBAAA,CAA0B,KAAQ,GAAA,KAAA;AAAA,KACrC,CAAA;AAED,IAA0B,yBAAA,CAAA;AAAA,MACxB,KAAA;AAAA,MACA,cAAA;AAAA,MACA,SAAW,EAAA,KAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarMenu.js","sources":["../../src/Menubar/MenubarMenu.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport { createContext, useForwardExpose, useId } from '@/shared'\n\nexport interface MenubarMenuProps {\n /**\n * A unique value that associates the item with an active value when the navigation menu is controlled.\n *\n * This prop is managed automatically when uncontrolled.\n */\n value?: string\n}\n\ntype MenubarMenuContext = {\n value: string\n triggerId: string\n triggerElement: Ref<HTMLElement | undefined>\n contentId: string\n wasKeyboardTriggerOpenRef: Ref<boolean>\n}\n\nexport const [injectMenubarMenuContext, provideMenubarMenuContext]\n = createContext<MenubarMenuContext>('MenubarMenu')\n</script>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\nimport { MenuRoot } from '@/Menu'\n\nconst props = defineProps<MenubarMenuProps>()\n\nconst value = useId(props.value)\nconst rootContext = injectMenubarRootContext()\nuseForwardExpose()\n\nconst triggerElement = ref<HTMLElement>()\nconst wasKeyboardTriggerOpenRef = ref(false)\n\nconst open = computed(() => rootContext.modelValue.value === value)\n\nwatch(open, () => {\n if (!open.value)\n wasKeyboardTriggerOpenRef.value = false\n})\n\nprovideMenubarMenuContext({\n value,\n triggerElement,\n triggerId: value,\n contentId: '',\n wasKeyboardTriggerOpenRef,\n})\n</script>\n\n<template>\n <MenuRoot\n :open=\"open\"\n :modal=\"false\"\n :dir=\"rootContext.dir.value\"\n @update:open=\"\n (value) => {\n // Menu only calls `@update:open` when dismissing so we\n // want to close our MenuBar based on the same events.\n if (!value) rootContext.onMenuClose();\n }\n \"\n >\n <slot />\n </MenuRoot>\n</template>\n"],"names":[],"mappings":";;;;;;;AAqBO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7D,cAAkC,aAAa;;;;;;;AAQnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAEd,IAAM,MAAA,KAAA,GAAQ,KAAM,CAAA,KAAA,CAAM,KAAK,CAAA;AAC/B,IAAA,MAAM,cAAc,wBAAyB,EAAA;AAC7C,IAAiB,gBAAA,EAAA;AAEjB,IAAA,MAAM,iBAAiB,GAAiB,EAAA;AACxC,IAAM,MAAA,yBAAA,GAA4B,IAAI,KAAK,CAAA;AAE3C,IAAA,MAAM,OAAO,QAAS,CAAA,MAAM,WAAY,CAAA,UAAA,CAAW,UAAU,KAAK,CAAA;AAElE,IAAA,KAAA,CAAM,MAAM,MAAM;AAChB,MAAA,IAAI,CAAC,IAAK,CAAA,KAAA;AACR,QAAA,yBAAA,CAA0B,KAAQ,GAAA,KAAA;AAAA,KACrC,CAAA;AAED,IAA0B,yBAAA,CAAA;AAAA,MACxB,KAAA;AAAA,MACA,cAAA;AAAA,MACA,SAAW,EAAA,KAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarMenu.js","sources":["../../src/Menubar/MenubarMenu.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport { createContext, useForwardExpose, useId } from '@/shared'\n\nexport interface MenubarMenuProps {\n /**\n * A unique value that associates the item with an active value when the navigation menu is controlled.\n *\n * This prop is managed automatically when uncontrolled.\n */\n value?: string\n}\n\ntype MenubarMenuContext = {\n value: string\n triggerId: string\n triggerElement: Ref<HTMLElement | undefined>\n contentId: string\n wasKeyboardTriggerOpenRef: Ref<boolean>\n}\n\nexport const [injectMenubarMenuContext, provideMenubarMenuContext]\n = createContext<MenubarMenuContext>('MenubarMenu')\n</script>\n\n<script setup lang=\"ts\">\nimport { computed, ref, watch } from 'vue'\nimport { MenuRoot } from '@/Menu'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\n\nconst props = defineProps<MenubarMenuProps>()\n\nconst value = useId(props.value)\nconst rootContext = injectMenubarRootContext()\nuseForwardExpose()\n\nconst triggerElement = ref<HTMLElement>()\nconst wasKeyboardTriggerOpenRef = ref(false)\n\nconst open = computed(() => rootContext.modelValue.value === value)\n\nwatch(open, () => {\n if (!open.value)\n wasKeyboardTriggerOpenRef.value = false\n})\n\nprovideMenubarMenuContext({\n value,\n triggerElement,\n triggerId: value,\n contentId: '',\n wasKeyboardTriggerOpenRef,\n})\n</script>\n\n<template>\n <MenuRoot\n :open=\"open\"\n :modal=\"false\"\n :dir=\"rootContext.dir.value\"\n @update:open=\"\n (value) => {\n // Menu only calls `@update:open` when dismissing so we\n // want to close our MenuBar based on the same events.\n if (!value) rootContext.onMenuClose();\n }\n \"\n >\n <slot />\n </MenuRoot>\n</template>\n"],"names":[],"mappings":";;;;;;;AAqBO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7D,cAAkC,aAAa;;;;;;;AAQnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAEd,IAAM,MAAA,KAAA,GAAQ,KAAM,CAAA,KAAA,CAAM,KAAK,CAAA;AAC/B,IAAA,MAAM,cAAc,wBAAyB,EAAA;AAC7C,IAAiB,gBAAA,EAAA;AAEjB,IAAA,MAAM,iBAAiB,GAAiB,EAAA;AACxC,IAAM,MAAA,yBAAA,GAA4B,IAAI,KAAK,CAAA;AAE3C,IAAA,MAAM,OAAO,QAAS,CAAA,MAAM,WAAY,CAAA,UAAA,CAAW,UAAU,KAAK,CAAA;AAElE,IAAA,KAAA,CAAM,MAAM,MAAM;AAChB,MAAA,IAAI,CAAC,IAAK,CAAA,KAAA;AACR,QAAA,yBAAA,CAA0B,KAAQ,GAAA,KAAA;AAAA,KACrC,CAAA;AAED,IAA0B,yBAAA,CAAA;AAAA,MACxB,KAAA;AAAA,MACA,cAAA;AAAA,MACA,SAAW,EAAA,KAAA;AAAA,MACX,SAAW,EAAA,EAAA;AAAA,MACX;AAAA,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarRoot.cjs","sources":["../../src/Menubar/MenubarRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from '../shared/types'\nimport { createContext, useDirection, useForwardExpose } from '@/shared'\nimport { useCollection } from '@/Collection'\n\nexport interface MenubarRootProps {\n /** The controlled value of the menu to open. Can be used as `v-model`. */\n modelValue?: string\n /** The value of the menu that should be open when initially rendered. Use when you do not need to control the value state. */\n defaultValue?: string\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /** When `true`, keyboard navigation will loop from last item to first, and vice versa. */\n loop?: boolean\n}\nexport type MenubarRootEmits = {\n /** Event handler called when the value changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport interface MenubarRootContext {\n modelValue: Ref<string>\n dir: Ref<Direction>\n loop: Ref<boolean>\n onMenuOpen: (value: string) => void\n onMenuClose: () => void\n onMenuToggle: (value: string) => void\n}\n\nexport const [injectMenubarRootContext, provideMenubarRootContext]\n = createContext<MenubarRootContext>('MenubarRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport { ref, toRefs } from 'vue'\nimport { Primitive } from '@/Primitive'\nimport { RovingFocusGroup } from '@/RovingFocus'\nimport { useVModel } from '@vueuse/core'\n\nconst props = withDefaults(defineProps<MenubarRootProps>(), {\n loop: false,\n})\nconst emit = defineEmits<MenubarRootEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current input values */\n modelValue: typeof modelValue.value\n }) => any\n}>()\n\nconst { forwardRef } = useForwardExpose()\nconst { CollectionSlot } = useCollection({ key: 'Menubar', isProvider: true })\n\nconst modelValue = useVModel(props, 'modelValue', emit, {\n defaultValue: props.defaultValue ?? '',\n passive: (props.modelValue === undefined) as false,\n}) as Ref<string>\n\nconst currentTabStopId = ref<string | null>(null)\n\nconst { dir: propDir, loop } = toRefs(props)\nconst dir = useDirection(propDir)\nprovideMenubarRootContext({\n modelValue,\n dir,\n loop,\n onMenuOpen: (value) => {\n modelValue.value = value\n currentTabStopId.value = value\n },\n onMenuClose: () => {\n modelValue.value = ''\n },\n onMenuToggle: (value) => {\n modelValue.value = modelValue.value ? '' : value\n // `openMenuOpen` and `onMenuToggle` are called exclusively so we\n // need to update the id in either case.\n currentTabStopId.value = value\n },\n})\n</script>\n\n<template>\n <CollectionSlot>\n <RovingFocusGroup\n v-model:current-tab-stop-id=\"currentTabStopId\"\n orientation=\"horizontal\"\n :loop=\"loop\"\n :dir=\"dir\"\n as-child\n >\n <Primitive\n :ref=\"forwardRef\"\n role=\"menubar\"\n >\n <slot :model-value=\"modelValue\" />\n </Primitive>\n </RovingFocusGroup>\n </CollectionSlot>\n</template>\n"],"names":["createContext","useForwardExpose","useCollection","useVModel","ref","toRefs","useDirection"],"mappings":";;;;;;;;;;;AAkCO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7DA,mCAAkC,aAAa;;;;;;;;;;;AASnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAM,MAAA,EAAE,UAAW,EAAA,GAAIC,wCAAiB,EAAA;AACxC,IAAM,MAAA,EAAE,gBAAmB,GAAAC,mCAAA,CAAc,EAAE,GAAK,EAAA,SAAA,EAAW,UAAY,EAAA,IAAA,EAAM,CAAA;AAE7E,IAAA,MAAM,UAAa,GAAAC,cAAA,CAAU,KAAO,EAAA,YAAA,EAAc,IAAM,EAAA;AAAA,MACtD,YAAA,EAAc,MAAM,YAAgB,IAAA,EAAA;AAAA,MACpC,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmBC,QAAmB,IAAI,CAAA;AAEhD,IAAA,MAAM,EAAE,GAAK,EAAA,OAAA,EAAS,IAAK,EAAA,GAAIC,WAAO,KAAK,CAAA;AAC3C,IAAM,MAAA,GAAA,GAAMC,iCAAa,OAAO,CAAA;AAChC,IAA0B,yBAAA,CAAA;AAAA,MACxB,UAAA;AAAA,MACA,GAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA,EAAY,CAAC,KAAU,KAAA;AACrB,QAAA,UAAA,CAAW,KAAQ,GAAA,KAAA;AACnB,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA,OAC3B;AAAA,MACA,aAAa,MAAM;AACjB,QAAA,UAAA,CAAW,KAAQ,GAAA,EAAA;AAAA,OACrB;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAW,UAAA,CAAA,KAAA,GAAQ,UAAW,CAAA,KAAA,GAAQ,EAAK,GAAA,KAAA;AAG3C,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA;AAC3B,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarRoot.cjs","sources":["../../src/Menubar/MenubarRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from '../shared/types'\nimport { useCollection } from '@/Collection'\nimport { createContext, useDirection, useForwardExpose } from '@/shared'\n\nexport interface MenubarRootProps {\n /** The controlled value of the menu to open. Can be used as `v-model`. */\n modelValue?: string\n /** The value of the menu that should be open when initially rendered. Use when you do not need to control the value state. */\n defaultValue?: string\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /** When `true`, keyboard navigation will loop from last item to first, and vice versa. */\n loop?: boolean\n}\nexport type MenubarRootEmits = {\n /** Event handler called when the value changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport interface MenubarRootContext {\n modelValue: Ref<string>\n dir: Ref<Direction>\n loop: Ref<boolean>\n onMenuOpen: (value: string) => void\n onMenuClose: () => void\n onMenuToggle: (value: string) => void\n}\n\nexport const [injectMenubarRootContext, provideMenubarRootContext]\n = createContext<MenubarRootContext>('MenubarRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { ref, toRefs } from 'vue'\nimport { Primitive } from '@/Primitive'\nimport { RovingFocusGroup } from '@/RovingFocus'\n\nconst props = withDefaults(defineProps<MenubarRootProps>(), {\n loop: false,\n})\nconst emit = defineEmits<MenubarRootEmits>()\n\ndefineSlots<{\n default?: (props: {\n /** Current input values */\n modelValue: typeof modelValue.value\n }) => any\n}>()\n\nconst { forwardRef } = useForwardExpose()\nconst { CollectionSlot } = useCollection({ key: 'Menubar', isProvider: true })\n\nconst modelValue = useVModel(props, 'modelValue', emit, {\n defaultValue: props.defaultValue ?? '',\n passive: (props.modelValue === undefined) as false,\n}) as Ref<string>\n\nconst currentTabStopId = ref<string | null>(null)\n\nconst { dir: propDir, loop } = toRefs(props)\nconst dir = useDirection(propDir)\nprovideMenubarRootContext({\n modelValue,\n dir,\n loop,\n onMenuOpen: (value) => {\n modelValue.value = value\n currentTabStopId.value = value\n },\n onMenuClose: () => {\n modelValue.value = ''\n },\n onMenuToggle: (value) => {\n modelValue.value = modelValue.value ? '' : value\n // `openMenuOpen` and `onMenuToggle` are called exclusively so we\n // need to update the id in either case.\n currentTabStopId.value = value\n },\n})\n</script>\n\n<template>\n <CollectionSlot>\n <RovingFocusGroup\n v-model:current-tab-stop-id=\"currentTabStopId\"\n orientation=\"horizontal\"\n :loop=\"loop\"\n :dir=\"dir\"\n as-child\n >\n <Primitive\n :ref=\"forwardRef\"\n role=\"menubar\"\n >\n <slot :model-value=\"modelValue\" />\n </Primitive>\n </RovingFocusGroup>\n </CollectionSlot>\n</template>\n"],"names":["createContext","useForwardExpose","useCollection","useVModel","ref","toRefs","useDirection"],"mappings":";;;;;;;;;;;AAkCO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7DA,mCAAkC,aAAa;;;;;;;;;;;AASnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAM,MAAA,EAAE,UAAW,EAAA,GAAIC,wCAAiB,EAAA;AACxC,IAAM,MAAA,EAAE,gBAAmB,GAAAC,mCAAA,CAAc,EAAE,GAAK,EAAA,SAAA,EAAW,UAAY,EAAA,IAAA,EAAM,CAAA;AAE7E,IAAA,MAAM,UAAa,GAAAC,cAAA,CAAU,KAAO,EAAA,YAAA,EAAc,IAAM,EAAA;AAAA,MACtD,YAAA,EAAc,MAAM,YAAgB,IAAA,EAAA;AAAA,MACpC,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmBC,QAAmB,IAAI,CAAA;AAEhD,IAAA,MAAM,EAAE,GAAK,EAAA,OAAA,EAAS,IAAK,EAAA,GAAIC,WAAO,KAAK,CAAA;AAC3C,IAAM,MAAA,GAAA,GAAMC,iCAAa,OAAO,CAAA;AAChC,IAA0B,yBAAA,CAAA;AAAA,MACxB,UAAA;AAAA,MACA,GAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA,EAAY,CAAC,KAAU,KAAA;AACrB,QAAA,UAAA,CAAW,KAAQ,GAAA,KAAA;AACnB,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA,OAC3B;AAAA,MACA,aAAa,MAAM;AACjB,QAAA,UAAA,CAAW,KAAQ,GAAA,EAAA;AAAA,OACrB;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAW,UAAA,CAAA,KAAA,GAAQ,UAAW,CAAA,KAAA,GAAQ,EAAK,GAAA,KAAA;AAG3C,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA;AAC3B,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarRoot.js","sources":["../../src/Menubar/MenubarRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from '../shared/types'\nimport { createContext, useDirection, useForwardExpose } from '@/shared'\nimport { useCollection } from '@/Collection'\n\nexport interface MenubarRootProps {\n /** The controlled value of the menu to open. Can be used as `v-model`. */\n modelValue?: string\n /** The value of the menu that should be open when initially rendered. Use when you do not need to control the value state. */\n defaultValue?: string\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /** When `true`, keyboard navigation will loop from last item to first, and vice versa. */\n loop?: boolean\n}\nexport type MenubarRootEmits = {\n /** Event handler called when the value changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport interface MenubarRootContext {\n modelValue: Ref<string>\n dir: Ref<Direction>\n loop: Ref<boolean>\n onMenuOpen: (value: string) => void\n onMenuClose: () => void\n onMenuToggle: (value: string) => void\n}\n\nexport const [injectMenubarRootContext, provideMenubarRootContext]\n = createContext<MenubarRootContext>('MenubarRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport { ref, toRefs } from 'vue'\nimport { Primitive } from '@/Primitive'\nimport { RovingFocusGroup } from '@/RovingFocus'\nimport { useVModel } from '@vueuse/core'\n\nconst props = withDefaults(defineProps<MenubarRootProps>(), {\n loop: false,\n})\nconst emit = defineEmits<MenubarRootEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current input values */\n modelValue: typeof modelValue.value\n }) => any\n}>()\n\nconst { forwardRef } = useForwardExpose()\nconst { CollectionSlot } = useCollection({ key: 'Menubar', isProvider: true })\n\nconst modelValue = useVModel(props, 'modelValue', emit, {\n defaultValue: props.defaultValue ?? '',\n passive: (props.modelValue === undefined) as false,\n}) as Ref<string>\n\nconst currentTabStopId = ref<string | null>(null)\n\nconst { dir: propDir, loop } = toRefs(props)\nconst dir = useDirection(propDir)\nprovideMenubarRootContext({\n modelValue,\n dir,\n loop,\n onMenuOpen: (value) => {\n modelValue.value = value\n currentTabStopId.value = value\n },\n onMenuClose: () => {\n modelValue.value = ''\n },\n onMenuToggle: (value) => {\n modelValue.value = modelValue.value ? '' : value\n // `openMenuOpen` and `onMenuToggle` are called exclusively so we\n // need to update the id in either case.\n currentTabStopId.value = value\n },\n})\n</script>\n\n<template>\n <CollectionSlot>\n <RovingFocusGroup\n v-model:current-tab-stop-id=\"currentTabStopId\"\n orientation=\"horizontal\"\n :loop=\"loop\"\n :dir=\"dir\"\n as-child\n >\n <Primitive\n :ref=\"forwardRef\"\n role=\"menubar\"\n >\n <slot :model-value=\"modelValue\" />\n </Primitive>\n </RovingFocusGroup>\n </CollectionSlot>\n</template>\n"],"names":[],"mappings":";;;;;;;;;AAkCO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7D,cAAkC,aAAa;;;;;;;;;;;AASnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAM,MAAA,EAAE,UAAW,EAAA,GAAI,gBAAiB,EAAA;AACxC,IAAM,MAAA,EAAE,gBAAmB,GAAA,aAAA,CAAc,EAAE,GAAK,EAAA,SAAA,EAAW,UAAY,EAAA,IAAA,EAAM,CAAA;AAE7E,IAAA,MAAM,UAAa,GAAA,SAAA,CAAU,KAAO,EAAA,YAAA,EAAc,IAAM,EAAA;AAAA,MACtD,YAAA,EAAc,MAAM,YAAgB,IAAA,EAAA;AAAA,MACpC,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmB,IAAmB,IAAI,CAAA;AAEhD,IAAA,MAAM,EAAE,GAAK,EAAA,OAAA,EAAS,IAAK,EAAA,GAAI,OAAO,KAAK,CAAA;AAC3C,IAAM,MAAA,GAAA,GAAM,aAAa,OAAO,CAAA;AAChC,IAA0B,yBAAA,CAAA;AAAA,MACxB,UAAA;AAAA,MACA,GAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA,EAAY,CAAC,KAAU,KAAA;AACrB,QAAA,UAAA,CAAW,KAAQ,GAAA,KAAA;AACnB,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA,OAC3B;AAAA,MACA,aAAa,MAAM;AACjB,QAAA,UAAA,CAAW,KAAQ,GAAA,EAAA;AAAA,OACrB;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAW,UAAA,CAAA,KAAA,GAAQ,UAAW,CAAA,KAAA,GAAQ,EAAK,GAAA,KAAA;AAG3C,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA;AAC3B,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarRoot.js","sources":["../../src/Menubar/MenubarRoot.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { Direction } from '../shared/types'\nimport { useCollection } from '@/Collection'\nimport { createContext, useDirection, useForwardExpose } from '@/shared'\n\nexport interface MenubarRootProps {\n /** The controlled value of the menu to open. Can be used as `v-model`. */\n modelValue?: string\n /** The value of the menu that should be open when initially rendered. Use when you do not need to control the value state. */\n defaultValue?: string\n /**\n * The reading direction of the combobox when applicable.\n *\n * If omitted, inherits globally from `ConfigProvider` or assumes LTR (left-to-right) reading mode.\n */\n dir?: Direction\n /** When `true`, keyboard navigation will loop from last item to first, and vice versa. */\n loop?: boolean\n}\nexport type MenubarRootEmits = {\n /** Event handler called when the value changes. */\n 'update:modelValue': [value: boolean]\n}\n\nexport interface MenubarRootContext {\n modelValue: Ref<string>\n dir: Ref<Direction>\n loop: Ref<boolean>\n onMenuOpen: (value: string) => void\n onMenuClose: () => void\n onMenuToggle: (value: string) => void\n}\n\nexport const [injectMenubarRootContext, provideMenubarRootContext]\n = createContext<MenubarRootContext>('MenubarRoot')\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { ref, toRefs } from 'vue'\nimport { Primitive } from '@/Primitive'\nimport { RovingFocusGroup } from '@/RovingFocus'\n\nconst props = withDefaults(defineProps<MenubarRootProps>(), {\n loop: false,\n})\nconst emit = defineEmits<MenubarRootEmits>()\n\ndefineSlots<{\n default?: (props: {\n /** Current input values */\n modelValue: typeof modelValue.value\n }) => any\n}>()\n\nconst { forwardRef } = useForwardExpose()\nconst { CollectionSlot } = useCollection({ key: 'Menubar', isProvider: true })\n\nconst modelValue = useVModel(props, 'modelValue', emit, {\n defaultValue: props.defaultValue ?? '',\n passive: (props.modelValue === undefined) as false,\n}) as Ref<string>\n\nconst currentTabStopId = ref<string | null>(null)\n\nconst { dir: propDir, loop } = toRefs(props)\nconst dir = useDirection(propDir)\nprovideMenubarRootContext({\n modelValue,\n dir,\n loop,\n onMenuOpen: (value) => {\n modelValue.value = value\n currentTabStopId.value = value\n },\n onMenuClose: () => {\n modelValue.value = ''\n },\n onMenuToggle: (value) => {\n modelValue.value = modelValue.value ? '' : value\n // `openMenuOpen` and `onMenuToggle` are called exclusively so we\n // need to update the id in either case.\n currentTabStopId.value = value\n },\n})\n</script>\n\n<template>\n <CollectionSlot>\n <RovingFocusGroup\n v-model:current-tab-stop-id=\"currentTabStopId\"\n orientation=\"horizontal\"\n :loop=\"loop\"\n :dir=\"dir\"\n as-child\n >\n <Primitive\n :ref=\"forwardRef\"\n role=\"menubar\"\n >\n <slot :model-value=\"modelValue\" />\n </Primitive>\n </RovingFocusGroup>\n </CollectionSlot>\n</template>\n"],"names":[],"mappings":";;;;;;;;;AAkCO,MAAM,CAAC,wBAAA,EAA0B,yBAAyB,CAAA,GAC7D,cAAkC,aAAa;;;;;;;;;;;AASnD,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAM,MAAA,EAAE,UAAW,EAAA,GAAI,gBAAiB,EAAA;AACxC,IAAM,MAAA,EAAE,gBAAmB,GAAA,aAAA,CAAc,EAAE,GAAK,EAAA,SAAA,EAAW,UAAY,EAAA,IAAA,EAAM,CAAA;AAE7E,IAAA,MAAM,UAAa,GAAA,SAAA,CAAU,KAAO,EAAA,YAAA,EAAc,IAAM,EAAA;AAAA,MACtD,YAAA,EAAc,MAAM,YAAgB,IAAA,EAAA;AAAA,MACpC,OAAA,EAAU,MAAM,UAAe,KAAA;AAAA,KAChC,CAAA;AAED,IAAM,MAAA,gBAAA,GAAmB,IAAmB,IAAI,CAAA;AAEhD,IAAA,MAAM,EAAE,GAAK,EAAA,OAAA,EAAS,IAAK,EAAA,GAAI,OAAO,KAAK,CAAA;AAC3C,IAAM,MAAA,GAAA,GAAM,aAAa,OAAO,CAAA;AAChC,IAA0B,yBAAA,CAAA;AAAA,MACxB,UAAA;AAAA,MACA,GAAA;AAAA,MACA,IAAA;AAAA,MACA,UAAA,EAAY,CAAC,KAAU,KAAA;AACrB,QAAA,UAAA,CAAW,KAAQ,GAAA,KAAA;AACnB,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA,OAC3B;AAAA,MACA,aAAa,MAAM;AACjB,QAAA,UAAA,CAAW,KAAQ,GAAA,EAAA;AAAA,OACrB;AAAA,MACA,YAAA,EAAc,CAAC,KAAU,KAAA;AACvB,QAAW,UAAA,CAAA,KAAA,GAAQ,UAAW,CAAA,KAAA,GAAQ,EAAK,GAAA,KAAA;AAG3C,QAAA,gBAAA,CAAiB,KAAQ,GAAA,KAAA;AAAA;AAC3B,KACD,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarSub.cjs","sources":["../../src/Menubar/MenubarSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuSubEmits, MenuSubProps } from '@/Menu'\nimport type { Ref } from 'vue'\n\nexport type MenubarSubEmits = MenuSubEmits\nexport interface MenubarSubProps extends MenuSubProps {\n /** The open state of the submenu when it is initially rendered. Use when you do not need to control its open state. */\n defaultOpen?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { MenuSub } from '@/Menu'\nimport { useForwardExpose } from '@/shared'\n\nconst props = withDefaults(defineProps<MenubarSubProps>(), {\n open: undefined,\n})\nconst emit = defineEmits<MenubarSubEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current open state */\n open: typeof open.value\n }) => any\n}>()\n\nuseForwardExpose()\nconst open = useVModel(props, 'open', emit, {\n defaultValue: props.defaultOpen ?? false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n</script>\n\n<template>\n <MenuSub v-model:open=\"open\">\n <slot :open=\"open\" />\n </MenuSub>\n</template>\n"],"names":["useForwardExpose","useVModel"],"mappings":";;;;;;;;;;;;;;;AAgBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAiBA,wCAAA,EAAA;AACjB,IAAA,MAAM,IAAO,GAAAC,cAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,IAAM,EAAA;AAAA,MAC1C,YAAA,EAAc,MAAM,WAAe,IAAA,KAAA;AAAA,MACnC,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarSub.cjs","sources":["../../src/Menubar/MenubarSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { MenuSubEmits, MenuSubProps } from '@/Menu'\n\nexport type MenubarSubEmits = MenuSubEmits\nexport interface MenubarSubProps extends MenuSubProps {\n /** The open state of the submenu when it is initially rendered. Use when you do not need to control its open state. */\n defaultOpen?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { MenuSub } from '@/Menu'\nimport { useForwardExpose } from '@/shared'\n\nconst props = withDefaults(defineProps<MenubarSubProps>(), {\n open: undefined,\n})\nconst emit = defineEmits<MenubarSubEmits>()\n\ndefineSlots<{\n default?: (props: {\n /** Current open state */\n open: typeof open.value\n }) => any\n}>()\n\nuseForwardExpose()\nconst open = useVModel(props, 'open', emit, {\n defaultValue: props.defaultOpen ?? false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n</script>\n\n<template>\n <MenuSub v-model:open=\"open\">\n <slot :open=\"open\" />\n </MenuSub>\n</template>\n"],"names":["useForwardExpose","useVModel"],"mappings":";;;;;;;;;;;;;;;AAgBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAiBA,wCAAA,EAAA;AACjB,IAAA,MAAM,IAAO,GAAAC,cAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,IAAM,EAAA;AAAA,MAC1C,YAAA,EAAc,MAAM,WAAe,IAAA,KAAA;AAAA,MACnC,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarSub.js","sources":["../../src/Menubar/MenubarSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { MenuSubEmits, MenuSubProps } from '@/Menu'\nimport type { Ref } from 'vue'\n\nexport type MenubarSubEmits = MenuSubEmits\nexport interface MenubarSubProps extends MenuSubProps {\n /** The open state of the submenu when it is initially rendered. Use when you do not need to control its open state. */\n defaultOpen?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { MenuSub } from '@/Menu'\nimport { useForwardExpose } from '@/shared'\n\nconst props = withDefaults(defineProps<MenubarSubProps>(), {\n open: undefined,\n})\nconst emit = defineEmits<MenubarSubEmits>()\n\ndefineSlots<{\n default: (props: {\n /** Current open state */\n open: typeof open.value\n }) => any\n}>()\n\nuseForwardExpose()\nconst open = useVModel(props, 'open', emit, {\n defaultValue: props.defaultOpen ?? false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n</script>\n\n<template>\n <MenuSub v-model:open=\"open\">\n <slot :open=\"open\" />\n </MenuSub>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;AAgBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAiB,gBAAA,EAAA;AACjB,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,IAAM,EAAA;AAAA,MAC1C,YAAA,EAAc,MAAM,WAAe,IAAA,KAAA;AAAA,MACnC,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarSub.js","sources":["../../src/Menubar/MenubarSub.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type { Ref } from 'vue'\nimport type { MenuSubEmits, MenuSubProps } from '@/Menu'\n\nexport type MenubarSubEmits = MenuSubEmits\nexport interface MenubarSubProps extends MenuSubProps {\n /** The open state of the submenu when it is initially rendered. Use when you do not need to control its open state. */\n defaultOpen?: boolean\n}\n</script>\n\n<script setup lang=\"ts\">\nimport { useVModel } from '@vueuse/core'\nimport { MenuSub } from '@/Menu'\nimport { useForwardExpose } from '@/shared'\n\nconst props = withDefaults(defineProps<MenubarSubProps>(), {\n open: undefined,\n})\nconst emit = defineEmits<MenubarSubEmits>()\n\ndefineSlots<{\n default?: (props: {\n /** Current open state */\n open: typeof open.value\n }) => any\n}>()\n\nuseForwardExpose()\nconst open = useVModel(props, 'open', emit, {\n defaultValue: props.defaultOpen ?? false,\n passive: (props.open === undefined) as false,\n}) as Ref<boolean>\n</script>\n\n<template>\n <MenuSub v-model:open=\"open\">\n <slot :open=\"open\" />\n </MenuSub>\n</template>\n"],"names":[],"mappings":";;;;;;;;;;;;;AAgBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AAGd,IAAA,MAAM,IAAO,GAAA,MAAA;AASb,IAAiB,gBAAA,EAAA;AACjB,IAAA,MAAM,IAAO,GAAA,SAAA,CAAU,KAAO,EAAA,MAAA,EAAQ,IAAM,EAAA;AAAA,MAC1C,YAAA,EAAc,MAAM,WAAe,IAAA,KAAA;AAAA,MACnC,OAAA,EAAU,MAAM,IAAS,KAAA;AAAA,KAC1B,CAAA;;;;;;;;;;;;;;;;;"}
@@ -1 +1 @@
1
- {"version":3,"file":"MenubarSubContent.cjs","sources":["../../src/Menubar/MenubarSubContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n MenuSubContentEmits,\n MenuSubContentProps,\n} from '@/Menu'\nimport { useCollection } from '@/Collection'\n\nexport type MenubarSubContentEmits = MenuSubContentEmits\n\nexport interface MenubarSubContentProps extends MenuSubContentProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\nimport { injectMenubarMenuContext } from './MenubarMenu.vue'\nimport { MenuSubContent } from '@/Menu'\nimport { useForwardExpose, useForwardPropsEmits } from '@/shared'\nimport { wrapArray } from '@/shared/useTypeahead'\n\nconst props = defineProps<MenubarSubContentProps>()\nconst emits = defineEmits<MenubarSubContentEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\nuseForwardExpose()\n\nconst { getItems } = useCollection({ key: 'Menubar' })\n\nconst rootContext = injectMenubarRootContext()\nconst menuContext = injectMenubarMenuContext()\n\nfunction handleArrowNavigation(event: KeyboardEvent) {\n const target = event.target as HTMLElement\n const targetIsSubTrigger = target.hasAttribute(\n 'data-reka-menubar-subtrigger',\n )\n\n // Prevent navigation when we're opening a submenu\n if (targetIsSubTrigger)\n return\n\n let candidateValues = getItems().filter(i => i.ref.dataset.disabled !== '').map(i => i.ref.dataset.value)\n const currentIndex = candidateValues.indexOf(menuContext.value)\n\n candidateValues = rootContext.loop.value\n ? wrapArray(candidateValues, currentIndex + 1)\n : candidateValues.slice(currentIndex + 1)\n\n const [nextValue] = candidateValues\n if (nextValue)\n rootContext.onMenuOpen(nextValue)\n}\n</script>\n\n<template>\n <MenuSubContent\n v-bind=\"forwarded\"\n data-reka-menubar-content=\"\"\n :style=\"{\n '--reka-menubar-content-transform-origin':\n 'var(--reka-popper-transform-origin)',\n '--reka-menubar-content-available-width':\n 'var(--reka-popper-available-width)',\n '--reka-menubar-content-available-height':\n 'var(--reka-popper-available-height)',\n '--reka-menubar-trigger-width': 'var(--reka-popper-anchor-width)',\n '--reka-menubar-trigger-height': 'var(--reka-popper-anchor-height)',\n }\"\n @keydown.arrow-right=\"handleArrowNavigation\"\n >\n <slot />\n </MenuSubContent>\n</template>\n"],"names":["useForwardPropsEmits","useForwardExpose","useCollection","injectMenubarRootContext","injectMenubarMenuContext","wrapArray"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AACnD,IAAiBC,wCAAA,EAAA;AAEjB,IAAA,MAAM,EAAE,QAAS,EAAA,GAAIC,oCAAc,EAAE,GAAA,EAAK,WAAW,CAAA;AAErD,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAC7C,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAE7C,IAAA,SAAS,sBAAsB,KAAsB,EAAA;AACnD,MAAA,MAAM,SAAS,KAAM,CAAA,MAAA;AACrB,MAAA,MAAM,qBAAqB,MAAO,CAAA,YAAA;AAAA,QAChC;AAAA,OACF;AAGA,MAAI,IAAA,kBAAA;AACF,QAAA;AAEF,MAAA,IAAI,kBAAkB,QAAS,EAAA,CAAE,MAAO,CAAA,CAAA,CAAA,KAAK,EAAE,GAAI,CAAA,OAAA,CAAQ,QAAa,KAAA,EAAE,EAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,QAAQ,KAAK,CAAA;AACxG,MAAA,MAAM,YAAe,GAAA,eAAA,CAAgB,OAAQ,CAAA,WAAA,CAAY,KAAK,CAAA;AAE9D,MAAkB,eAAA,GAAA,WAAA,CAAY,IAAK,CAAA,KAAA,GAC/BC,6BAAU,CAAA,eAAA,EAAiB,YAAe,GAAA,CAAC,CAC3C,GAAA,eAAA,CAAgB,KAAM,CAAA,YAAA,GAAe,CAAC,CAAA;AAE1C,MAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA;AACpB,MAAI,IAAA,SAAA;AACF,QAAA,WAAA,CAAY,WAAW,SAAS,CAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"MenubarSubContent.cjs","sources":["../../src/Menubar/MenubarSubContent.vue"],"sourcesContent":["<script lang=\"ts\">\nimport type {\n MenuSubContentEmits,\n MenuSubContentProps,\n} from '@/Menu'\nimport { useCollection } from '@/Collection'\n\nexport type MenubarSubContentEmits = MenuSubContentEmits\n\nexport interface MenubarSubContentProps extends MenuSubContentProps {}\n</script>\n\n<script setup lang=\"ts\">\nimport { MenuSubContent } from '@/Menu'\nimport { useForwardExpose, useForwardPropsEmits } from '@/shared'\nimport { wrapArray } from '@/shared/useTypeahead'\nimport { injectMenubarMenuContext } from './MenubarMenu.vue'\nimport { injectMenubarRootContext } from './MenubarRoot.vue'\n\nconst props = defineProps<MenubarSubContentProps>()\nconst emits = defineEmits<MenubarSubContentEmits>()\nconst forwarded = useForwardPropsEmits(props, emits)\nuseForwardExpose()\n\nconst { getItems } = useCollection({ key: 'Menubar' })\n\nconst rootContext = injectMenubarRootContext()\nconst menuContext = injectMenubarMenuContext()\n\nfunction handleArrowNavigation(event: KeyboardEvent) {\n const target = event.target as HTMLElement\n const targetIsSubTrigger = target.hasAttribute(\n 'data-reka-menubar-subtrigger',\n )\n\n // Prevent navigation when we're opening a submenu\n if (targetIsSubTrigger)\n return\n\n let candidateValues = getItems().filter(i => i.ref.dataset.disabled !== '').map(i => i.ref.dataset.value)\n const currentIndex = candidateValues.indexOf(menuContext.value)\n\n candidateValues = rootContext.loop.value\n ? wrapArray(candidateValues, currentIndex + 1)\n : candidateValues.slice(currentIndex + 1)\n\n const [nextValue] = candidateValues\n if (nextValue)\n rootContext.onMenuOpen(nextValue)\n}\n</script>\n\n<template>\n <MenuSubContent\n v-bind=\"forwarded\"\n data-reka-menubar-content=\"\"\n :style=\"{\n '--reka-menubar-content-transform-origin':\n 'var(--reka-popper-transform-origin)',\n '--reka-menubar-content-available-width':\n 'var(--reka-popper-available-width)',\n '--reka-menubar-content-available-height':\n 'var(--reka-popper-available-height)',\n '--reka-menubar-trigger-width': 'var(--reka-popper-anchor-width)',\n '--reka-menubar-trigger-height': 'var(--reka-popper-anchor-height)',\n }\"\n @keydown.arrow-right=\"handleArrowNavigation\"\n >\n <slot />\n </MenuSubContent>\n</template>\n"],"names":["useForwardPropsEmits","useForwardExpose","useCollection","injectMenubarRootContext","injectMenubarMenuContext","wrapArray"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,IAAA,MAAM,KAAQ,GAAA,OAAA;AACd,IAAA,MAAM,KAAQ,GAAA,MAAA;AACd,IAAM,MAAA,SAAA,GAAYA,gDAAqB,CAAA,KAAA,EAAO,KAAK,CAAA;AACnD,IAAiBC,wCAAA,EAAA;AAEjB,IAAA,MAAM,EAAE,QAAS,EAAA,GAAIC,oCAAc,EAAE,GAAA,EAAK,WAAW,CAAA;AAErD,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAC7C,IAAA,MAAM,cAAcC,4CAAyB,EAAA;AAE7C,IAAA,SAAS,sBAAsB,KAAsB,EAAA;AACnD,MAAA,MAAM,SAAS,KAAM,CAAA,MAAA;AACrB,MAAA,MAAM,qBAAqB,MAAO,CAAA,YAAA;AAAA,QAChC;AAAA,OACF;AAGA,MAAI,IAAA,kBAAA;AACF,QAAA;AAEF,MAAA,IAAI,kBAAkB,QAAS,EAAA,CAAE,MAAO,CAAA,CAAA,CAAA,KAAK,EAAE,GAAI,CAAA,OAAA,CAAQ,QAAa,KAAA,EAAE,EAAE,GAAI,CAAA,CAAA,CAAA,KAAK,CAAE,CAAA,GAAA,CAAI,QAAQ,KAAK,CAAA;AACxG,MAAA,MAAM,YAAe,GAAA,eAAA,CAAgB,OAAQ,CAAA,WAAA,CAAY,KAAK,CAAA;AAE9D,MAAkB,eAAA,GAAA,WAAA,CAAY,IAAK,CAAA,KAAA,GAC/BC,6BAAU,CAAA,eAAA,EAAiB,YAAe,GAAA,CAAC,CAC3C,GAAA,eAAA,CAAgB,KAAM,CAAA,YAAA,GAAe,CAAC,CAAA;AAE1C,MAAM,MAAA,CAAC,SAAS,CAAI,GAAA,eAAA;AACpB,MAAI,IAAA,SAAA;AACF,QAAA,WAAA,CAAY,WAAW,SAAS,CAAA;AAAA;;;;;;;;;;;;;;;;;;;;;;;;"}