@optiaxiom/react 1.4.5 → 1.5.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 (451) hide show
  1. package/dist/{Link-BoYdGwic.d.ts → Link-CKWcnpT8.d.ts} +1366 -89
  2. package/dist/cjs/{IconMagnifyingGlass-Cx14aYC0.js → IconMagnifyingGlass-DdX-kGbo.js} +403 -376
  3. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-CQHrzlcL.css +22 -0
  4. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-WFV8JCKf.css +6 -0
  5. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-C7an7bjx.css +27 -0
  6. package/dist/cjs/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-ixoJK4Uu.css +6 -0
  7. package/dist/cjs/assets/src/avatar/{Avatar.css.ts.vanilla-DPtRqiKr.css → Avatar.css.ts.vanilla-BLBs1H7Y.css} +18 -18
  8. package/dist/cjs/assets/src/avatar/AvatarGroup.css.ts.vanilla-BopGCQ-R.css +4 -0
  9. package/dist/{esm/assets/src/backdrop/Backdrop.css.ts.vanilla-Dx-5dCIS.css → cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-pOrYXbTf.css} +3 -3
  10. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-CuLdYQ9B.css +46 -0
  11. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-siGQ2kb9.css +6 -0
  12. package/dist/{esm/assets/src/box/Box.css.ts.vanilla-Bc1EpFFv.css → cjs/assets/src/box/Box.css.ts.vanilla-DN4ECRY3.css} +21 -21
  13. package/dist/cjs/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-hg5woSam.css +8 -0
  14. package/dist/cjs/assets/src/breadcrumb/{BreadcrumbLink.css.ts.vanilla-tPsgaO70.css → BreadcrumbLink.css.ts.vanilla-Bb5x75nR.css} +5 -5
  15. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-BaizcQx4.css +9 -0
  16. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-O9AqM-cn.css +151 -0
  17. package/dist/{esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-CoG8NtWh.css → cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-DVnXE0ON.css} +26 -26
  18. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-Bk3EYZsx.css +6 -0
  19. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-DSb7Uxf2.css +6 -0
  20. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-DRIhuJ1b.css +8 -0
  21. package/dist/cjs/assets/src/card/CardCheckbox.css.ts.vanilla-BQmA1GnW.css +11 -0
  22. package/dist/cjs/assets/src/card/CardHeader.css.ts.vanilla-BKZog4uY.css +15 -0
  23. package/dist/cjs/assets/src/card/CardPreview.css.ts.vanilla-rMcmXL4l.css +15 -0
  24. package/dist/cjs/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-BHOxCZ1j.css → CheckboxControl.css.ts.vanilla-DsEEG4cq.css} +7 -7
  25. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-BoAhBZWP.css +10 -0
  26. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-Bhl8iscl.css +34 -0
  27. package/dist/{esm/assets/src/data-table/DataTableBody.css.ts.vanilla-Dvs6hPxM.css → cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-C_DfJtL2.css} +24 -33
  28. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-C_IF3hEV.css +6 -0
  29. package/dist/{esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-DA_qbxeU.css → cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-DNpXsbZo.css} +9 -9
  30. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-4__Sb9ku.css +15 -0
  31. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-BMyUtJSV.css +6 -0
  32. package/dist/cjs/assets/src/dialog/{DialogContent.css.ts.vanilla-DsS2VGDY.css → DialogContent.css.ts.vanilla-D0cw8qnd.css} +10 -10
  33. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-DDjHJ5Rg.css +15 -0
  34. package/dist/cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-C9U-yeAt.css +17 -0
  35. package/dist/{esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-F5ng0xoR.css → cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-BV48zban.css} +7 -7
  36. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-DOwxn4GA.css +7 -0
  37. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-Cqc8wAby.css +37 -0
  38. package/dist/cjs/assets/src/inline-input/{InlineInput.css.ts.vanilla-BzCBwfN1.css → InlineInput.css.ts.vanilla-BGlStM9W.css} +4 -4
  39. package/dist/{esm/assets/src/input/InputControl.css.ts.vanilla-DTGYmare.css → cjs/assets/src/input/InputControl.css.ts.vanilla-nfmZzL1M.css} +8 -8
  40. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-DV9HPDg-.css +70 -0
  41. package/dist/cjs/assets/src/kbd/Kbd.css.ts.vanilla-BjujHWpO.css +9 -0
  42. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-C14Cg9ip.css +7 -0
  43. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css +1 -0
  44. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-BlEAI9ha.css +7 -0
  45. package/dist/{esm/assets/src/link/Link.css.ts.vanilla-BJCeHHTC.css → cjs/assets/src/link/Link.css.ts.vanilla-BW1It0AR.css} +13 -13
  46. package/dist/cjs/assets/src/listbox/{ListboxCheckboxItem.css.ts.vanilla-DN9kKQT8.css → ListboxCheckboxItem.css.ts.vanilla-CO9UYuYz.css} +4 -4
  47. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-C6F6cJM6.css +48 -0
  48. package/dist/cjs/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-CYu7IUFz.css → ListboxItemIndicator.css.ts.vanilla-BYQQkUoP.css} +4 -4
  49. package/dist/cjs/assets/src/menu/MenuDialogContent.css.ts.vanilla-D8P1_hWq.css +7 -0
  50. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-rG8GuTkp.css +6 -0
  51. package/dist/cjs/assets/src/modal/ModalListbox.css.ts.vanilla-Dwc1LppA.css +33 -0
  52. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-CDY2trIw.css +6 -0
  53. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-B_diGx7I.css +9 -0
  54. package/dist/{esm/assets/src/nav/NavItem.css.ts.vanilla-BIB32Kxv.css → cjs/assets/src/nav/NavItem.css.ts.vanilla-BrQFSPpt.css} +13 -13
  55. package/dist/cjs/assets/src/pagination/{Pagination.css.ts.vanilla-wa8ut6PQ.css → Pagination.css.ts.vanilla-BymbFie0.css} +5 -5
  56. package/dist/{esm/assets/src/pill/Pill.css.ts.vanilla-qAQ5gQIP.css → cjs/assets/src/pill/Pill.css.ts.vanilla-OjU6W6Y3.css} +7 -7
  57. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-VHfLy_-i.css +6 -0
  58. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-DI-V-pBk.css +13 -0
  59. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-BM1YCu_Q.css +10 -0
  60. package/dist/{esm/assets/src/separator/Separator.css.ts.vanilla-D3djE9RO.css → cjs/assets/src/separator/Separator.css.ts.vanilla-BqyG84oT.css} +8 -8
  61. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-BDczmgVK.css +6 -0
  62. package/dist/cjs/assets/src/sortable/Sortable.css.ts.vanilla-DC5LTQ8N.css +19 -0
  63. package/dist/cjs/assets/src/sortable/SortableHandle.css.ts.vanilla-BGpVQBe_.css +6 -0
  64. package/dist/cjs/assets/src/sortable/SortableItem.css.ts.vanilla-6ttddd8f.css +6 -0
  65. package/dist/cjs/assets/src/spinner/{Spinner.css.ts.vanilla-rL9r9uUN.css → Spinner.css.ts.vanilla-rC41IFce.css} +4 -4
  66. package/dist/cjs/assets/src/sprinkles/{properties.css.ts.vanilla-DATOtFl_.css → properties.css.ts.vanilla-BbsOICsR.css} +722 -725
  67. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-CSYzwbO_.css +6 -0
  68. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-BezJzmsV.css +45 -0
  69. package/dist/cjs/assets/src/table/Table.css.ts.vanilla-DRTckl_I.css +15 -0
  70. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-CkDN5-4K.css +6 -0
  71. package/dist/cjs/assets/src/table/TableCell.css.ts.vanilla-Bry58N9S.css +17 -0
  72. package/dist/cjs/assets/src/table/TableHeader.css.ts.vanilla-IOX7pyGu.css +8 -0
  73. package/dist/cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-BW37-stS.css +16 -0
  74. package/dist/cjs/assets/src/table/TableRow.css.ts.vanilla-NYW4Uw9y.css +34 -0
  75. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-fFDhnR6L.css +9 -0
  76. package/dist/cjs/assets/src/tabs/{TabsList.css.ts.vanilla-CR1hDfP_.css → TabsList.css.ts.vanilla-CUTelOi-.css} +4 -4
  77. package/dist/{esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-3OozOs6a.css → cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-DvcrmVLh.css} +10 -10
  78. package/dist/{esm/assets/src/text/Text.css.ts.vanilla-CKKtIpha.css → cjs/assets/src/text/Text.css.ts.vanilla-DuuK1SVw.css} +8 -8
  79. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-CCzZmj1B.css +34 -0
  80. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-3sJcBec0.css +104 -0
  81. package/dist/cjs/assets/src/toast/{ToastProvider.css.ts.vanilla-DXIOfwQH.css → ToastProvider.css.ts.vanilla-GL3Lg_SG.css} +9 -9
  82. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-CCXnMKDM.css +25 -0
  83. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CjmvydXp.css +10 -0
  84. package/dist/cjs/assets/src/transition/Transition.css.ts.vanilla-BLq6D2sV.css +35 -0
  85. package/dist/cjs/index.js +577 -294
  86. package/dist/cjs/unstable.js +574 -319
  87. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-CQHrzlcL.css +22 -0
  88. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-WFV8JCKf.css +6 -0
  89. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-C7an7bjx.css +27 -0
  90. package/dist/esm/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-ixoJK4Uu.css +6 -0
  91. package/dist/esm/assets/src/avatar/{Avatar.css.ts.vanilla-DPtRqiKr.css → Avatar.css.ts.vanilla-BLBs1H7Y.css} +18 -18
  92. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-BopGCQ-R.css +4 -0
  93. package/dist/{cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-Dx-5dCIS.css → esm/assets/src/backdrop/Backdrop.css.ts.vanilla-pOrYXbTf.css} +3 -3
  94. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-CuLdYQ9B.css +46 -0
  95. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-siGQ2kb9.css +6 -0
  96. package/dist/{cjs/assets/src/box/Box.css.ts.vanilla-Bc1EpFFv.css → esm/assets/src/box/Box.css.ts.vanilla-DN4ECRY3.css} +21 -21
  97. package/dist/esm/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-hg5woSam.css +8 -0
  98. package/dist/esm/assets/src/breadcrumb/{BreadcrumbLink.css.ts.vanilla-tPsgaO70.css → BreadcrumbLink.css.ts.vanilla-Bb5x75nR.css} +5 -5
  99. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-BaizcQx4.css +9 -0
  100. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-O9AqM-cn.css +151 -0
  101. package/dist/{cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-CoG8NtWh.css → esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-DVnXE0ON.css} +26 -26
  102. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-Bk3EYZsx.css +6 -0
  103. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-DSb7Uxf2.css +6 -0
  104. package/dist/esm/assets/src/card/Card.css.ts.vanilla-DRIhuJ1b.css +8 -0
  105. package/dist/esm/assets/src/card/CardCheckbox.css.ts.vanilla-BQmA1GnW.css +11 -0
  106. package/dist/esm/assets/src/card/CardHeader.css.ts.vanilla-BKZog4uY.css +15 -0
  107. package/dist/esm/assets/src/card/CardPreview.css.ts.vanilla-rMcmXL4l.css +15 -0
  108. package/dist/esm/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-BHOxCZ1j.css → CheckboxControl.css.ts.vanilla-DsEEG4cq.css} +7 -7
  109. package/dist/esm/assets/src/code/Code.css.ts.vanilla-BoAhBZWP.css +10 -0
  110. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-Bhl8iscl.css +34 -0
  111. package/dist/{cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-Dvs6hPxM.css → esm/assets/src/data-table/DataTableBody.css.ts.vanilla-C_DfJtL2.css} +24 -33
  112. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-C_IF3hEV.css +6 -0
  113. package/dist/{cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-DA_qbxeU.css → esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-DNpXsbZo.css} +9 -9
  114. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-4__Sb9ku.css +15 -0
  115. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-BMyUtJSV.css +6 -0
  116. package/dist/esm/assets/src/dialog/{DialogContent.css.ts.vanilla-DsS2VGDY.css → DialogContent.css.ts.vanilla-D0cw8qnd.css} +10 -10
  117. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-DDjHJ5Rg.css +15 -0
  118. package/dist/esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-C9U-yeAt.css +17 -0
  119. package/dist/{cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-F5ng0xoR.css → esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-BV48zban.css} +7 -7
  120. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-DOwxn4GA.css +7 -0
  121. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-Cqc8wAby.css +37 -0
  122. package/dist/esm/assets/src/inline-input/{InlineInput.css.ts.vanilla-BzCBwfN1.css → InlineInput.css.ts.vanilla-BGlStM9W.css} +4 -4
  123. package/dist/{cjs/assets/src/input/InputControl.css.ts.vanilla-DTGYmare.css → esm/assets/src/input/InputControl.css.ts.vanilla-nfmZzL1M.css} +8 -8
  124. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-DV9HPDg-.css +70 -0
  125. package/dist/esm/assets/src/kbd/Kbd.css.ts.vanilla-BjujHWpO.css +9 -0
  126. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-C14Cg9ip.css +7 -0
  127. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css +1 -0
  128. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-BlEAI9ha.css +7 -0
  129. package/dist/{cjs/assets/src/link/Link.css.ts.vanilla-BJCeHHTC.css → esm/assets/src/link/Link.css.ts.vanilla-BW1It0AR.css} +13 -13
  130. package/dist/esm/assets/src/listbox/{ListboxCheckboxItem.css.ts.vanilla-DN9kKQT8.css → ListboxCheckboxItem.css.ts.vanilla-CO9UYuYz.css} +4 -4
  131. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-C6F6cJM6.css +48 -0
  132. package/dist/esm/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-CYu7IUFz.css → ListboxItemIndicator.css.ts.vanilla-BYQQkUoP.css} +4 -4
  133. package/dist/esm/assets/src/menu/MenuDialogContent.css.ts.vanilla-D8P1_hWq.css +7 -0
  134. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-rG8GuTkp.css +6 -0
  135. package/dist/esm/assets/src/modal/ModalListbox.css.ts.vanilla-Dwc1LppA.css +33 -0
  136. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-CDY2trIw.css +6 -0
  137. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-B_diGx7I.css +9 -0
  138. package/dist/{cjs/assets/src/nav/NavItem.css.ts.vanilla-BIB32Kxv.css → esm/assets/src/nav/NavItem.css.ts.vanilla-BrQFSPpt.css} +13 -13
  139. package/dist/esm/assets/src/pagination/{Pagination.css.ts.vanilla-wa8ut6PQ.css → Pagination.css.ts.vanilla-BymbFie0.css} +5 -5
  140. package/dist/{cjs/assets/src/pill/Pill.css.ts.vanilla-qAQ5gQIP.css → esm/assets/src/pill/Pill.css.ts.vanilla-OjU6W6Y3.css} +7 -7
  141. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-VHfLy_-i.css +6 -0
  142. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-DI-V-pBk.css +13 -0
  143. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-BM1YCu_Q.css +10 -0
  144. package/dist/{cjs/assets/src/separator/Separator.css.ts.vanilla-D3djE9RO.css → esm/assets/src/separator/Separator.css.ts.vanilla-BqyG84oT.css} +8 -8
  145. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-BDczmgVK.css +6 -0
  146. package/dist/esm/assets/src/sortable/Sortable.css.ts.vanilla-DC5LTQ8N.css +19 -0
  147. package/dist/esm/assets/src/sortable/SortableHandle.css.ts.vanilla-BGpVQBe_.css +6 -0
  148. package/dist/esm/assets/src/sortable/SortableItem.css.ts.vanilla-6ttddd8f.css +6 -0
  149. package/dist/esm/assets/src/spinner/{Spinner.css.ts.vanilla-rL9r9uUN.css → Spinner.css.ts.vanilla-rC41IFce.css} +4 -4
  150. package/dist/esm/assets/src/sprinkles/{properties.css.ts.vanilla-DATOtFl_.css → properties.css.ts.vanilla-BbsOICsR.css} +722 -725
  151. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-CSYzwbO_.css +6 -0
  152. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-BezJzmsV.css +45 -0
  153. package/dist/esm/assets/src/table/Table.css.ts.vanilla-DRTckl_I.css +15 -0
  154. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-CkDN5-4K.css +6 -0
  155. package/dist/esm/assets/src/table/TableCell.css.ts.vanilla-Bry58N9S.css +17 -0
  156. package/dist/esm/assets/src/table/TableHeader.css.ts.vanilla-IOX7pyGu.css +8 -0
  157. package/dist/esm/assets/src/table/TableHeaderCell.css.ts.vanilla-BW37-stS.css +16 -0
  158. package/dist/esm/assets/src/table/TableRow.css.ts.vanilla-NYW4Uw9y.css +34 -0
  159. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-fFDhnR6L.css +9 -0
  160. package/dist/esm/assets/src/tabs/{TabsList.css.ts.vanilla-CR1hDfP_.css → TabsList.css.ts.vanilla-CUTelOi-.css} +4 -4
  161. package/dist/{cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-3OozOs6a.css → esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-DvcrmVLh.css} +10 -10
  162. package/dist/{cjs/assets/src/text/Text.css.ts.vanilla-CKKtIpha.css → esm/assets/src/text/Text.css.ts.vanilla-DuuK1SVw.css} +8 -8
  163. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-CCzZmj1B.css +34 -0
  164. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-3sJcBec0.css +104 -0
  165. package/dist/esm/assets/src/toast/{ToastProvider.css.ts.vanilla-DXIOfwQH.css → ToastProvider.css.ts.vanilla-GL3Lg_SG.css} +9 -9
  166. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-CCXnMKDM.css +25 -0
  167. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CjmvydXp.css +10 -0
  168. package/dist/esm/assets/src/transition/Transition.css.ts.vanilla-BLq6D2sV.css +35 -0
  169. package/dist/esm/index.js +4 -1
  170. package/dist/esm/node_modules/.pnpm/{@mantine_hooks@7.17.4_react@18.3.1 → @mantine_hooks@8.0.1_react@18.3.1}/node_modules/@mantine/hooks/esm/use-hotkeys/parse-hotkey.js +27 -1
  171. package/dist/esm/packages/react/package.json.js +1 -1
  172. package/dist/esm/packages/react/src/actions/ActionsContent-css.js +4 -4
  173. package/dist/esm/packages/react/src/actions/ActionsContent.js +1 -1
  174. package/dist/esm/packages/react/src/actions/ActionsRoot-css.js +3 -3
  175. package/dist/esm/packages/react/src/alert/Alert-css.js +3 -3
  176. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent-css.js +6 -6
  177. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent.js +1 -1
  178. package/dist/esm/packages/react/src/alert-dialog/AlertDialogFooter-css.js +3 -3
  179. package/dist/esm/packages/react/src/avatar/Avatar-css.js +4 -4
  180. package/dist/esm/packages/react/src/avatar/AvatarGroup-css.js +3 -3
  181. package/dist/esm/packages/react/src/backdrop/Backdrop-css.js +3 -3
  182. package/dist/esm/packages/react/src/badge/Badge-css.js +3 -3
  183. package/dist/esm/packages/react/src/banner/Banner-css.js +3 -3
  184. package/dist/esm/packages/react/src/box/Box-css.js +4 -4
  185. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbItem-css.js +3 -3
  186. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbLink-css.js +3 -3
  187. package/dist/esm/packages/react/src/button/ButtonGroup-css.js +3 -3
  188. package/dist/esm/packages/react/src/button/ButtonLoadable-css.js +5 -5
  189. package/dist/esm/packages/react/src/button/ButtonRoot-css.js +5 -5
  190. package/dist/esm/packages/react/src/button/ButtonRoot.js +0 -1
  191. package/dist/esm/packages/react/src/calendar/Calendar.js +1 -17
  192. package/dist/esm/packages/react/src/calendar/CalendarDayButton-css.js +4 -4
  193. package/dist/esm/packages/react/src/calendar/CalendarMonths-css.js +3 -3
  194. package/dist/esm/packages/react/src/calendar/CalendarNav-css.js +3 -3
  195. package/dist/esm/packages/react/src/card/Card-css.js +4 -5
  196. package/dist/esm/packages/react/src/card/Card.js +2 -23
  197. package/dist/esm/packages/react/src/card/CardAction.js +2 -3
  198. package/dist/esm/packages/react/src/card/CardCheckbox-css.js +7 -0
  199. package/dist/esm/packages/react/src/card/CardCheckbox.js +23 -33
  200. package/dist/esm/packages/react/src/card/CardFooter.js +15 -0
  201. package/dist/esm/packages/react/src/card/CardHeader-css.js +9 -0
  202. package/dist/esm/packages/react/src/card/CardHeader.js +29 -0
  203. package/dist/esm/packages/react/src/card/CardImage-css.js +3 -4
  204. package/dist/esm/packages/react/src/card/CardImage.js +2 -13
  205. package/dist/esm/packages/react/src/card/CardLink.js +1 -1
  206. package/dist/esm/packages/react/src/card/CardPreview-css.js +8 -0
  207. package/dist/esm/packages/react/src/card/CardPreview.js +69 -0
  208. package/dist/esm/packages/react/src/checkbox/Checkbox.js +18 -10
  209. package/dist/esm/packages/react/src/checkbox/CheckboxControl-css.js +6 -6
  210. package/dist/esm/packages/react/src/checkbox/CheckboxRoot.js +2 -2
  211. package/dist/esm/packages/react/src/code/Code-css.js +3 -3
  212. package/dist/esm/packages/react/src/command/Command.js +2 -2
  213. package/dist/esm/packages/react/src/command/CommandItem.js +6 -3
  214. package/dist/esm/packages/react/src/command/useCommandItems.js +6 -2
  215. package/dist/esm/packages/react/src/cover/Cover-css.js +3 -3
  216. package/dist/esm/packages/react/src/data-table/DataTable.js +11 -2
  217. package/dist/esm/packages/react/src/data-table/DataTableAction.js +73 -0
  218. package/dist/esm/packages/react/src/data-table/DataTableBody-css.js +11 -12
  219. package/dist/esm/packages/react/src/data-table/DataTableBody.js +11 -26
  220. package/dist/esm/packages/react/src/data-table/DataTableCheckbox.js +60 -0
  221. package/dist/esm/packages/react/src/data-table/DataTableFooter-css.js +3 -3
  222. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell-css.js +5 -5
  223. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell.js +20 -14
  224. package/dist/esm/packages/react/src/data-table/DataTableLabel.js +19 -0
  225. package/dist/esm/packages/react/src/data-table/DataTableRow.js +164 -0
  226. package/dist/esm/packages/react/src/data-table/DataTableRowContext.js +42 -0
  227. package/dist/esm/packages/react/src/date-input/DateInput-css.js +6 -6
  228. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContent-css.js +1 -1
  229. package/dist/esm/packages/react/src/dialog/DialogBody-css.js +3 -3
  230. package/dist/esm/packages/react/src/dialog/DialogContent-css.js +5 -5
  231. package/dist/esm/packages/react/src/dialog/DialogContent.js +2 -9
  232. package/dist/esm/packages/react/src/dialog/DialogFooter-css.js +1 -1
  233. package/dist/esm/packages/react/src/dialog/DialogHeader-css.js +6 -6
  234. package/dist/esm/packages/react/src/disclosure/DisclosureContent-css.js +4 -4
  235. package/dist/esm/packages/react/src/disclosure/DisclosureContent.js +10 -8
  236. package/dist/esm/packages/react/src/disclosure/DisclosureTrigger-css.js +5 -5
  237. package/dist/esm/packages/react/src/highlight/Highlight-css.js +3 -3
  238. package/dist/esm/packages/react/src/hooks/useResponsiveMatches.js +1 -1
  239. package/dist/esm/packages/react/src/indicator/Indicator-css.js +5 -5
  240. package/dist/esm/packages/react/src/inline-input/InlineInput-css.js +4 -4
  241. package/dist/esm/packages/react/src/input/Input-css.js +1 -1
  242. package/dist/esm/packages/react/src/input/InputAddon.js +4 -1
  243. package/dist/esm/packages/react/src/input/InputControl-css.js +3 -3
  244. package/dist/esm/packages/react/src/input/InputControl.js +27 -2
  245. package/dist/esm/packages/react/src/input/InputRoot-css.js +5 -5
  246. package/dist/esm/packages/react/src/kbd/Kbd-css.js +4 -4
  247. package/dist/esm/packages/react/src/label-menu-button/LabelMenuButton-css.js +5 -5
  248. package/dist/esm/packages/react/src/layers/layers-css.js +3 -3
  249. package/dist/esm/packages/react/src/layout/Layouts-css.js +3 -3
  250. package/dist/esm/packages/react/src/link/Link-css.js +4 -4
  251. package/dist/esm/packages/react/src/link/Link.js +2 -3
  252. package/dist/esm/packages/react/src/listbox/ListboxCheckboxItem-css.js +3 -3
  253. package/dist/esm/packages/react/src/listbox/ListboxItem-css.js +5 -5
  254. package/dist/esm/packages/react/src/listbox/ListboxItemIndicator-css.js +3 -3
  255. package/dist/esm/packages/react/src/menu/Menu.js +31 -12
  256. package/dist/esm/packages/react/src/menu/MenuContent.js +1 -1
  257. package/dist/esm/packages/react/src/menu/MenuDialogContent-css.js +7 -0
  258. package/dist/esm/packages/react/src/menu/MenuDialogContent.js +3 -1
  259. package/dist/esm/packages/react/src/menu/MenuInput-css.js +3 -3
  260. package/dist/esm/packages/react/src/menu/MenuInput.js +1 -1
  261. package/dist/esm/packages/react/src/menu/MenuListbox.js +23 -12
  262. package/dist/esm/packages/react/src/menu/MenuSubContent.js +126 -83
  263. package/dist/esm/packages/react/src/menu/MenuSubInput.js +1 -1
  264. package/dist/esm/packages/react/src/menu/MenuSubTrigger.js +36 -12
  265. package/dist/esm/packages/react/src/menu/MenuTrigger.js +11 -1
  266. package/dist/esm/packages/react/src/modal/ModalListbox-css.js +3 -3
  267. package/dist/esm/packages/react/src/nav/Nav-css.js +3 -3
  268. package/dist/esm/packages/react/src/nav/NavAccountItem-css.js +3 -3
  269. package/dist/esm/packages/react/src/nav/NavBody-css.js +1 -1
  270. package/dist/esm/packages/react/src/nav/NavGroupContent.js +1 -1
  271. package/dist/esm/packages/react/src/nav/NavItem-css.js +6 -6
  272. package/dist/esm/packages/react/src/nav/NavList.js +0 -5
  273. package/dist/esm/packages/react/src/pagination/Pagination-css.js +5 -5
  274. package/dist/esm/packages/react/src/pagination/Pagination.js +1 -2
  275. package/dist/esm/packages/react/src/paper/Paper-css.js +1 -1
  276. package/dist/esm/packages/react/src/pill/Pill-css.js +3 -3
  277. package/dist/esm/packages/react/src/popover/PopoverContent.js +4 -30
  278. package/dist/esm/packages/react/src/progress/Progress-css.js +3 -3
  279. package/dist/esm/packages/react/src/radio/Radio-css.js +8 -8
  280. package/dist/esm/packages/react/src/radio/Radio.js +22 -30
  281. package/dist/esm/packages/react/src/search-input/SearchInput-css.js +5 -5
  282. package/dist/esm/packages/react/src/select/SelectContent.js +1 -1
  283. package/dist/esm/packages/react/src/separator/Separator-css.js +4 -4
  284. package/dist/esm/packages/react/src/separator/Separator.js +8 -2
  285. package/dist/esm/packages/react/src/skeleton/Skeleton-css.js +3 -3
  286. package/dist/esm/packages/react/src/sortable/Sortable-css.js +7 -0
  287. package/dist/esm/packages/react/src/sortable/Sortable.js +66 -0
  288. package/dist/esm/packages/react/src/sortable/SortableContext.js +6 -0
  289. package/dist/esm/packages/react/src/sortable/SortableHandle-css.js +7 -0
  290. package/dist/esm/packages/react/src/sortable/SortableHandle.js +32 -0
  291. package/dist/esm/packages/react/src/sortable/SortableItem-css.js +7 -0
  292. package/dist/esm/packages/react/src/sortable/SortableItem.js +56 -0
  293. package/dist/esm/packages/react/src/sortable/SortableItemContext.js +6 -0
  294. package/dist/esm/packages/react/src/spinner/Spinner-css.js +3 -3
  295. package/dist/esm/packages/react/src/spotlight/Spotlight.js +1 -1
  296. package/dist/esm/packages/react/src/spotlight/SpotlightTrigger.js +3 -3
  297. package/dist/esm/packages/react/src/sprinkles/properties-css.js +4 -4
  298. package/dist/esm/packages/react/src/sprinkles/sprinkles.js +6 -3
  299. package/dist/esm/packages/react/src/sub-nav/SubNav-css.js +3 -3
  300. package/dist/esm/packages/react/src/switch/Switch-css.js +8 -8
  301. package/dist/esm/packages/react/src/switch/Switch.js +16 -24
  302. package/dist/esm/packages/react/src/table/Table-css.js +4 -4
  303. package/dist/esm/packages/react/src/table/Table.js +14 -3
  304. package/dist/esm/packages/react/src/table/TableBody-css.js +3 -3
  305. package/dist/esm/packages/react/src/table/TableCell-css.js +4 -4
  306. package/dist/esm/packages/react/src/table/TableCell.js +2 -2
  307. package/dist/esm/packages/react/src/table/TableHeader-css.js +7 -0
  308. package/dist/esm/packages/react/src/table/TableHeader.js +2 -1
  309. package/dist/esm/packages/react/src/table/TableHeaderCell-css.js +4 -4
  310. package/dist/esm/packages/react/src/table/TableHeaderCell.js +10 -1
  311. package/dist/esm/packages/react/src/table/TableRow-css.js +3 -3
  312. package/dist/esm/packages/react/src/tabs/Tabs-css.js +3 -3
  313. package/dist/esm/packages/react/src/tabs/TabsList-css.js +3 -3
  314. package/dist/esm/packages/react/src/tabs/TabsTrigger-css.js +4 -4
  315. package/dist/esm/packages/react/src/text/Text-css.js +3 -3
  316. package/dist/esm/packages/react/src/textarea/Textarea.js +2 -2
  317. package/dist/esm/packages/react/src/textarea/TextareaAutosize-css.js +5 -5
  318. package/dist/esm/packages/react/src/toast/Toast-css.js +6 -6
  319. package/dist/esm/packages/react/src/toast/ToastProvider-css.js +3 -3
  320. package/dist/esm/packages/react/src/toggle-input/ToggleInput-css.js +4 -4
  321. package/dist/esm/packages/react/src/toggle-input/ToggleInput.js +12 -19
  322. package/dist/esm/packages/react/src/toggle-input/ToggleInputControl-css.js +5 -5
  323. package/dist/esm/packages/react/src/toggle-input/ToggleInputHiddenInput-css.js +3 -3
  324. package/dist/esm/packages/react/src/tooltip/TooltipContent-css.js +1 -1
  325. package/dist/esm/packages/react/src/tooltip/TooltipRoot.js +7 -2
  326. package/dist/esm/packages/react/src/transition/Transition-css.js +3 -3
  327. package/dist/esm/packages/react/src/transition/Transition.js +14 -9
  328. package/dist/esm/packages/react/src/utils/isFocusCaptured.js +14 -0
  329. package/dist/esm/packages/react/src/utils/isHoverSupported.js +1 -1
  330. package/dist/esm/unstable.js +6 -4
  331. package/dist/index.d.ts +521 -135
  332. package/dist/unstable.d.ts +274 -67
  333. package/package.json +35 -33
  334. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-BABdrlmZ.css +0 -22
  335. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-DExKVjQj.css +0 -6
  336. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-BWh92oY5.css +0 -27
  337. package/dist/cjs/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-BSI39Knn.css +0 -6
  338. package/dist/cjs/assets/src/avatar/AvatarGroup.css.ts.vanilla-Cx5atBZp.css +0 -4
  339. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-Dq4Qf-vP.css +0 -46
  340. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-DCktBCQs.css +0 -6
  341. package/dist/cjs/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-wWMHw65i.css +0 -8
  342. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-UH8Wm1GJ.css +0 -9
  343. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-Dx1pjGJE.css +0 -147
  344. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-DLhhwjcr.css +0 -6
  345. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-FBb6V0pK.css +0 -6
  346. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-DVjY_Vvs.css +0 -11
  347. package/dist/cjs/assets/src/card/CardAction.css.ts.vanilla-LsCG0uH3.css +0 -8
  348. package/dist/cjs/assets/src/card/CardImage.css.ts.vanilla-DZkAgxZ2.css +0 -12
  349. package/dist/cjs/assets/src/card/CardOverflow.css.ts.vanilla-DPuwCfiO.css +0 -16
  350. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-CvcuTH71.css +0 -10
  351. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-Dfr_ZXXG.css +0 -34
  352. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-6FI_NI_I.css +0 -6
  353. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-CNZPhQM5.css +0 -15
  354. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-CmIZK1cU.css +0 -6
  355. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-xheREv7l.css +0 -15
  356. package/dist/cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-CuQ5uhBg.css +0 -10
  357. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-viM0wzw7.css +0 -7
  358. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-BGbZpTX4.css +0 -37
  359. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-CUEDvAsn.css +0 -70
  360. package/dist/cjs/assets/src/kbd/Kbd.css.ts.vanilla-DnM-SqYs.css +0 -9
  361. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-CXGSSOar.css +0 -7
  362. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-sGpaWqx5.css +0 -1
  363. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-GMnxoQ4-.css +0 -7
  364. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-BU8QYqxz.css +0 -48
  365. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-B9ESb0EX.css +0 -6
  366. package/dist/cjs/assets/src/modal/ModalListbox.css.ts.vanilla-Dqt3__za.css +0 -33
  367. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-DiyfPdb3.css +0 -6
  368. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-CLaBZvXR.css +0 -9
  369. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-s1nNYPKL.css +0 -6
  370. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-CCO8u4ZD.css +0 -13
  371. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-DPg_qaQp.css +0 -10
  372. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-CTJ8rLzc.css +0 -6
  373. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-C0hPWOPW.css +0 -6
  374. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-X8GV77Cr.css +0 -45
  375. package/dist/cjs/assets/src/table/Table.css.ts.vanilla-C9jWIfZN.css +0 -15
  376. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-Dvewv0g8.css +0 -6
  377. package/dist/cjs/assets/src/table/TableCell.css.ts.vanilla-BXyR8q89.css +0 -11
  378. package/dist/cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-DWjifEIw.css +0 -10
  379. package/dist/cjs/assets/src/table/TableRow.css.ts.vanilla-DKWSCVR_.css +0 -14
  380. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-BvK6EdPH.css +0 -9
  381. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DpxBUCvb.css +0 -34
  382. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-Cz7qYeux.css +0 -104
  383. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-bHOUxPUF.css +0 -25
  384. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-Fry_f6al.css +0 -10
  385. package/dist/cjs/assets/src/transition/Transition.css.ts.vanilla-BRoCqZT7.css +0 -105
  386. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-BABdrlmZ.css +0 -22
  387. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-DExKVjQj.css +0 -6
  388. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-BWh92oY5.css +0 -27
  389. package/dist/esm/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-BSI39Knn.css +0 -6
  390. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-Cx5atBZp.css +0 -4
  391. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-Dq4Qf-vP.css +0 -46
  392. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-DCktBCQs.css +0 -6
  393. package/dist/esm/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-wWMHw65i.css +0 -8
  394. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-UH8Wm1GJ.css +0 -9
  395. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-Dx1pjGJE.css +0 -147
  396. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-DLhhwjcr.css +0 -6
  397. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-FBb6V0pK.css +0 -6
  398. package/dist/esm/assets/src/card/Card.css.ts.vanilla-DVjY_Vvs.css +0 -11
  399. package/dist/esm/assets/src/card/CardAction.css.ts.vanilla-LsCG0uH3.css +0 -8
  400. package/dist/esm/assets/src/card/CardImage.css.ts.vanilla-DZkAgxZ2.css +0 -12
  401. package/dist/esm/assets/src/card/CardOverflow.css.ts.vanilla-DPuwCfiO.css +0 -16
  402. package/dist/esm/assets/src/code/Code.css.ts.vanilla-CvcuTH71.css +0 -10
  403. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-Dfr_ZXXG.css +0 -34
  404. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-6FI_NI_I.css +0 -6
  405. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-CNZPhQM5.css +0 -15
  406. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-CmIZK1cU.css +0 -6
  407. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-xheREv7l.css +0 -15
  408. package/dist/esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-CuQ5uhBg.css +0 -10
  409. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-viM0wzw7.css +0 -7
  410. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-BGbZpTX4.css +0 -37
  411. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-CUEDvAsn.css +0 -70
  412. package/dist/esm/assets/src/kbd/Kbd.css.ts.vanilla-DnM-SqYs.css +0 -9
  413. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-CXGSSOar.css +0 -7
  414. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-sGpaWqx5.css +0 -1
  415. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-GMnxoQ4-.css +0 -7
  416. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-BU8QYqxz.css +0 -48
  417. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-B9ESb0EX.css +0 -6
  418. package/dist/esm/assets/src/modal/ModalListbox.css.ts.vanilla-Dqt3__za.css +0 -33
  419. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-DiyfPdb3.css +0 -6
  420. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-CLaBZvXR.css +0 -9
  421. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-s1nNYPKL.css +0 -6
  422. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-CCO8u4ZD.css +0 -13
  423. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-DPg_qaQp.css +0 -10
  424. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-CTJ8rLzc.css +0 -6
  425. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-C0hPWOPW.css +0 -6
  426. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-X8GV77Cr.css +0 -45
  427. package/dist/esm/assets/src/table/Table.css.ts.vanilla-C9jWIfZN.css +0 -15
  428. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-Dvewv0g8.css +0 -6
  429. package/dist/esm/assets/src/table/TableCell.css.ts.vanilla-BXyR8q89.css +0 -11
  430. package/dist/esm/assets/src/table/TableHeaderCell.css.ts.vanilla-DWjifEIw.css +0 -10
  431. package/dist/esm/assets/src/table/TableRow.css.ts.vanilla-DKWSCVR_.css +0 -14
  432. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-BvK6EdPH.css +0 -9
  433. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DpxBUCvb.css +0 -34
  434. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-Cz7qYeux.css +0 -104
  435. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-bHOUxPUF.css +0 -25
  436. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-Fry_f6al.css +0 -10
  437. package/dist/esm/assets/src/transition/Transition.css.ts.vanilla-BRoCqZT7.css +0 -105
  438. package/dist/esm/packages/react/src/card/CardAction-css.js +0 -8
  439. package/dist/esm/packages/react/src/card/CardContent.js +0 -13
  440. package/dist/esm/packages/react/src/card/CardDescription.js +0 -23
  441. package/dist/esm/packages/react/src/card/CardOverflow-css.js +0 -7
  442. package/dist/esm/packages/react/src/card/CardOverflow.js +0 -26
  443. package/dist/esm/packages/react/src/card/CardTitle.js +0 -29
  444. package/dist/esm/packages/react/src/menu/MenuSub.js +0 -29
  445. /package/dist/esm/node_modules/.pnpm/{@mantine_hooks@7.17.4_react@18.3.1 → @mantine_hooks@8.0.1_react@18.3.1}/node_modules/@mantine/hooks/esm/use-hotkeys/use-hotkeys.js +0 -0
  446. /package/dist/esm/node_modules/.pnpm/{@mantine_hooks@7.17.4_react@18.3.1 → @mantine_hooks@8.0.1_react@18.3.1}/node_modules/@mantine/hooks/esm/use-media-query/use-media-query.js +0 -0
  447. /package/dist/esm/node_modules/.pnpm/{@mantine_hooks@7.17.4_react@18.3.1 → @mantine_hooks@8.0.1_react@18.3.1}/node_modules/@mantine/hooks/esm/use-pagination/use-pagination.js +0 -0
  448. /package/dist/esm/node_modules/.pnpm/{@mantine_hooks@7.17.4_react@18.3.1 → @mantine_hooks@8.0.1_react@18.3.1}/node_modules/@mantine/hooks/esm/use-uncontrolled/use-uncontrolled.js +0 -0
  449. /package/dist/esm/node_modules/.pnpm/{@vanilla-extract_sprinkles@1.6.3_patch_hash_eh2tyazhmaumpwivglvpekok3e_@vanilla-extract_css@1_h2fokeqwgislkw3fqntlep77qq → @vanilla-extract_sprinkles@1.6.3_patch_hash_eh2tyazhmaumpwivglvpekok3e_@vanilla-extract_css@1_xhwggtma63filsfym6perbhgxm}/node_modules/@vanilla-extract/sprinkles/createRuntimeSprinkles/dist/vanilla-extract-sprinkles-createRuntimeSprinkles.esm.js +0 -0
  450. /package/dist/esm/node_modules/.pnpm/{@vanilla-extract_sprinkles@1.6.3_patch_hash_eh2tyazhmaumpwivglvpekok3e_@vanilla-extract_css@1_h2fokeqwgislkw3fqntlep77qq → @vanilla-extract_sprinkles@1.6.3_patch_hash_eh2tyazhmaumpwivglvpekok3e_@vanilla-extract_css@1_xhwggtma63filsfym6perbhgxm}/node_modules/@vanilla-extract/sprinkles/createUtils/dist/vanilla-extract-sprinkles-createUtils.esm.js +0 -0
  451. /package/dist/esm/node_modules/.pnpm/{@vanilla-extract_sprinkles@1.6.3_patch_hash_eh2tyazhmaumpwivglvpekok3e_@vanilla-extract_css@1_h2fokeqwgislkw3fqntlep77qq → @vanilla-extract_sprinkles@1.6.3_patch_hash_eh2tyazhmaumpwivglvpekok3e_@vanilla-extract_css@1_xhwggtma63filsfym6perbhgxm}/node_modules/@vanilla-extract/sprinkles/dist/createSprinkles-74286718.esm.js +0 -0
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-sGpaWqx5.css';
2
- import './../../../../assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-DN9kKQT8.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css';
2
+ import './../../../../assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-CO9UYuYz.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var checkbox = recipeRuntime({base:[{display:'inline-flex'},'jmv7pw']});
5
+ var checkbox = recipeRuntime({base:[{display:'inline-flex'},'jkt830']});
6
6
 
7
7
  export { checkbox };
@@ -1,9 +1,9 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-sGpaWqx5.css';
2
- import './../../../../assets/src/listbox/ListboxItem.css.ts.vanilla-BU8QYqxz.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css';
2
+ import './../../../../assets/src/listbox/ListboxItem.css.ts.vanilla-C6F6cJM6.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var description = recipeRuntime({base:[{fontSize:'sm'},'_1teohjo']});
6
- var item = recipeRuntime({base:[{flexDirection:'row',fontSize:'md',gap:'8',p:'8',rounded:'sm',transition:'colors'},'_16eydx3'],variants:{intent:{danger:'i39ghn',neutral:'_1fcquph'}}});
7
- var title = recipeRuntime({base:[{alignItems:'center',flexDirection:'row',gap:'8'},'xb1bcj']});
5
+ var description = recipeRuntime({base:[{fontSize:'sm'},'s5jxi4']});
6
+ var item = recipeRuntime({base:[{flexDirection:'row',fontSize:'md',gap:'8',p:'8',rounded:'sm',transition:'colors'},'yxy22s'],variants:{intent:{danger:'_15iadzr',neutral:'_1k5ucql'}}});
7
+ var title = recipeRuntime({base:[{alignItems:'center',flexDirection:'row',gap:'8'},'_1tmli2q']});
8
8
 
9
9
  export { description, item, title };
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-sGpaWqx5.css';
2
- import './../../../../assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-CYu7IUFz.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css';
2
+ import './../../../../assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-BYQQkUoP.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var indicator = recipeRuntime({base:['hdvefq'],variants:{active:{false:{},true:'r7300f'}}});
5
+ var indicator = recipeRuntime({base:['_1mk0ber'],variants:{active:{false:{},true:'_167le8m'}}});
6
6
 
7
7
  export { indicator };
@@ -24,8 +24,8 @@ import { MenuSubProvider } from './MenuSubContext.js';
24
24
  function Menu({
25
25
  children,
26
26
  defaultOpen = false,
27
- initialInputVisible,
28
27
  inputValue: inputValueProp,
28
+ inputVisible: inputVisibleProp,
29
29
  onInputValueChange,
30
30
  onOpenChange,
31
31
  open: openProp,
@@ -65,11 +65,15 @@ function Menu({
65
65
  }
66
66
  } else {
67
67
  if (open) {
68
- setActiveItemStack([]);
68
+ setActiveItemStack(
69
+ (activeItemStack2) => activeItemStack2.length ? [] : activeItemStack2
70
+ );
69
71
  }
70
72
  }
71
73
  }, [open, size]);
74
+ const contentRef = useRef(null);
72
75
  const inputRef = useRef(null);
76
+ const triggerRef = useRef(null);
73
77
  const options = useMemo(
74
78
  () => size === "sm" ? optionsProp.map((option) => ({
75
79
  ...option,
@@ -77,7 +81,18 @@ function Menu({
77
81
  "\u2026",
78
82
  ""
79
83
  ) : resolveItemProperty(option.label, { inputValue })
80
- })) : activeItemStack.length ? activeItemStack[activeItemStack.length - 1] : optionsProp,
84
+ })) : activeItemStack.length ? activeItemStack.reduce((result, stackItem) => {
85
+ const stackKey = stackItem.key ?? resolveItemProperty(stackItem.label, { inputValue });
86
+ for (const resultItem of result) {
87
+ const resultKey = resultItem.key ?? resolveItemProperty(resultItem.label, { inputValue });
88
+ if (resultKey === stackKey) {
89
+ return resolveItemProperty(resultItem.subOptions, {
90
+ inputValue
91
+ }) ?? [];
92
+ }
93
+ }
94
+ throw new Error(`Could not find item: ${stackKey}`);
95
+ }, optionsProp) : optionsProp,
81
96
  [activeItemStack, inputValue, optionsProp, size]
82
97
  );
83
98
  const hasSelectableItem = useMemo(
@@ -85,7 +100,7 @@ function Menu({
85
100
  [options]
86
101
  );
87
102
  const inputDefaultVisibleRef = useRef(hasSelectableItem);
88
- inputDefaultVisibleRef.current = initialInputVisible !== void 0 ? initialInputVisible : hasSelectableItem || false;
103
+ inputDefaultVisibleRef.current = inputVisibleProp === "always" ? true : hasSelectableItem || false;
89
104
  const [inputVisible, setInputVisible] = useState(
90
105
  inputDefaultVisibleRef.current
91
106
  );
@@ -117,25 +132,28 @@ function Menu({
117
132
  }
118
133
  },
119
134
  open,
120
- placeholder,
135
+ placeholder: activeItemStack.length ? resolveItemProperty(
136
+ activeItemStack[activeItemStack.length - 1].label,
137
+ { inputValue }
138
+ ) : placeholder,
121
139
  setActiveItemStack,
122
140
  setOpen,
123
141
  size,
124
142
  children: /* @__PURE__ */ jsx(
125
143
  Command,
126
144
  {
145
+ enabled: open ? activeItemStack.length + 1 : false,
127
146
  inputValue,
128
147
  onHover: (item) => {
129
- setSubMenuOpen(!!item.subOptions?.length);
148
+ setSubMenuOpen(
149
+ typeof item.subOptions === "function" || !!item.subOptions?.length
150
+ );
130
151
  },
131
152
  onInputValueChange: setInputValue,
132
153
  onSelect: (item, { dismiss }) => {
133
- if (item.subOptions?.length) {
154
+ if (typeof item.subOptions === "function" || item.subOptions?.length) {
134
155
  if (size === "lg") {
135
- setActiveItemStack((stack) => [
136
- ...stack ?? [],
137
- item.subOptions ?? []
138
- ]);
156
+ setActiveItemStack((stack) => [...stack ?? [], item]);
139
157
  } else {
140
158
  setSubMenuOpen(true);
141
159
  }
@@ -146,15 +164,16 @@ function Menu({
146
164
  }
147
165
  }
148
166
  },
149
- open: open ? activeItemStack.length + 1 : false,
150
167
  options,
151
168
  ...props,
152
169
  children: /* @__PURE__ */ jsx(
153
170
  MenuSubProvider,
154
171
  {
172
+ contentRef,
155
173
  inputRef,
156
174
  open: subMenuOpen,
157
175
  setOpen: setSubMenuOpen,
176
+ triggerRef,
158
177
  children
159
178
  }
160
179
  )
@@ -39,7 +39,7 @@ const MenuContent = forwardRef(
39
39
  if (event.defaultPrevented) {
40
40
  return;
41
41
  }
42
- if (event.target instanceof HTMLElement && event.target.closest('[role="option"]')) {
42
+ if (event.target instanceof Element && event.target.closest('[role="option"]')) {
43
43
  return;
44
44
  }
45
45
  event.preventDefault();
@@ -0,0 +1,7 @@
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css';
2
+ import './../../../../assets/src/menu/MenuDialogContent.css.ts.vanilla-D8P1_hWq.css';
3
+ import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
+
5
+ var content = recipeRuntime({base:'lp6tc4'});
6
+
7
+ export { content };
@@ -10,17 +10,19 @@ import '../dialog/DialogForm.js';
10
10
  import { DialogHeader } from '../dialog/DialogHeader.js';
11
11
  import '../dialog/DialogTrigger.js';
12
12
  import { VisuallyHidden } from '../visually-hidden/VisuallyHidden.js';
13
+ import { content } from './MenuDialogContent-css.js';
13
14
 
14
15
  const MenuDialogContent = forwardRef(
15
16
  ({
16
17
  align: _align,
17
18
  "aria-label": ariaLabel,
18
19
  children,
20
+ className,
19
21
  side: _side,
20
22
  sideOffset: _sideOffset,
21
23
  ...props
22
24
  }, ref) => {
23
- return /* @__PURE__ */ jsxs(DialogContent, { ref, transitionType: "pop", ...props, children: [
25
+ return /* @__PURE__ */ jsxs(DialogContent, { ref, ...content({}, className), ...props, children: [
24
26
  children,
25
27
  /* @__PURE__ */ jsx(VisuallyHidden, { tabIndex: -1, children: /* @__PURE__ */ jsx(DialogHeader, { children: ariaLabel }) })
26
28
  ] });
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-sGpaWqx5.css';
2
- import './../../../../assets/src/menu/MenuInput.css.ts.vanilla-B9ESb0EX.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-Dclj4WBX.css';
2
+ import './../../../../assets/src/menu/MenuInput.css.ts.vanilla-rG8GuTkp.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var input = recipeRuntime({variants:{size:{sm:{m:'4'},lg:[{border:'0',borderB:'1',borderColor:'border.secondary',rounded:'none'},'_1fvwxh9']}}});
5
+ var input = recipeRuntime({variants:{size:{sm:{m:'4'},lg:[{border:'0',borderB:'1',borderColor:'border.secondary',rounded:'none'},'_17xoloo']}}});
6
6
 
7
7
  export { input };
@@ -52,7 +52,7 @@ const MenuInput = forwardRef(
52
52
  setActiveItemStack(
53
53
  (stack) => stack.length ? stack.slice(0, -1) : stack
54
54
  );
55
- } else if (event.key === "ArrowRight" && highlightedItem?.subOptions?.length && size === "sm") {
55
+ } else if (event.key === "ArrowRight" && (typeof highlightedItem?.subOptions === "function" || highlightedItem?.subOptions?.length) && size === "sm") {
56
56
  event.preventDefault();
57
57
  downshift.selectItem(highlightedItem);
58
58
  }
@@ -1,11 +1,11 @@
1
1
  "use client";
2
- import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
2
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef } from 'react';
4
4
  import '../command/Command.js';
5
5
  import '../command/CommandInput.js';
6
6
  import '../command/CommandItem.js';
7
7
  import { CommandListbox } from '../command/CommandListbox.js';
8
- import { resolveItemProperty } from '../command/CommandContext.js';
8
+ import { useCommandContext, resolveItemProperty } from '../command/CommandContext.js';
9
9
  import '../listbox/Listbox.js';
10
10
  import '../listbox/ListboxCheckboxItem.js';
11
11
  import '../listbox/ListboxEmpty.js';
@@ -19,6 +19,10 @@ import '../listbox/ListboxRadioItem.js';
19
19
  import { ListboxSeparator } from '../listbox/ListboxSeparator.js';
20
20
  import '../listbox/ListboxSwitchItem.js';
21
21
  import { shouldShowSeparator, shouldShowGroup } from '../listbox/utils.js';
22
+ import { Popover } from '../popover/Popover.js';
23
+ import '../popover/PopoverAnchor.js';
24
+ import '../popover/PopoverContent.js';
25
+ import '../popover/PopoverTrigger.js';
22
26
  import { Tooltip } from '../tooltip/Tooltip.js';
23
27
  import '../tooltip/TooltipContent.js';
24
28
  import '../tooltip/TooltipProvider.js';
@@ -28,20 +32,27 @@ import { MenuCheckboxItem } from './MenuCheckboxItem.js';
28
32
  import { useMenuContext } from './MenuContext.js';
29
33
  import { MenuItem } from './MenuItem.js';
30
34
  import { MenuRadioItem } from './MenuRadioItem.js';
31
- import { MenuSub } from './MenuSub.js';
35
+ import { MenuSubContent } from './MenuSubContent.js';
36
+ import { useMenuSubContext } from './MenuSubContext.js';
37
+ import { MenuSubTrigger } from './MenuSubTrigger.js';
32
38
 
33
39
  const MenuListbox = forwardRef(
34
40
  ({ children, ...props }, ref) => {
41
+ const { inputValue } = useCommandContext("@optiaxiom/react/MenuListbox");
35
42
  const { size } = useMenuContext("@optiaxiom/react/MenuListbox");
36
- return /* @__PURE__ */ jsx(CommandListbox, { ref, ...props, children: children ?? ((item, index, prevItem) => {
37
- const Comp = item.subOptions?.length ? size === "sm" ? MenuSub : MenuItem : "selected" in item ? item.multi ? MenuCheckboxItem : MenuRadioItem : MenuItem;
38
- const group = item.group;
39
- return /* @__PURE__ */ jsxs(Fragment, { children: [
40
- shouldShowSeparator(group, prevItem) && /* @__PURE__ */ jsx(ListboxSeparator, {}),
41
- shouldShowGroup(group, prevItem) && /* @__PURE__ */ jsx(ListboxLabel, { children: group.label }),
42
- Comp === MenuSub ? /* @__PURE__ */ jsx(Comp, { index, item }) : /* @__PURE__ */ jsx(Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsx(Comp, { index, item }) })
43
- ] });
44
- }) });
43
+ const { open } = useMenuSubContext("@optiaxiom/react/MenuListbox");
44
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
45
+ /* @__PURE__ */ jsx(CommandListbox, { ref, ...props, children: children ?? ((item, index, prevItem) => {
46
+ const Comp = typeof item.subOptions === "function" || item.subOptions?.length ? size === "sm" ? MenuSubTrigger : MenuItem : "selected" in item ? item.multi ? MenuCheckboxItem : MenuRadioItem : MenuItem;
47
+ const group = item.group;
48
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
49
+ shouldShowSeparator(group, prevItem) && /* @__PURE__ */ jsx(ListboxSeparator, {}),
50
+ shouldShowGroup(group, prevItem) && /* @__PURE__ */ jsx(ListboxLabel, { children: group.label }),
51
+ Comp === MenuSubTrigger ? /* @__PURE__ */ jsx(Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsx(MenuSubTrigger, { index, item }) }) : /* @__PURE__ */ jsx(Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsx(Comp, { index, item }) })
52
+ ] });
53
+ }) }),
54
+ !inputValue && size === "sm" && /* @__PURE__ */ jsx(Popover, { open, children: /* @__PURE__ */ jsx(MenuSubContent, {}) })
55
+ ] });
45
56
  }
46
57
  );
47
58
  MenuListbox.displayName = "@optiaxiom/react/MenuListbox";
@@ -1,13 +1,14 @@
1
1
  "use client";
2
- import { jsx, jsxs } from 'react/jsx-runtime';
3
- import { forwardRef, useMemo, useRef, useState, useEffect } from 'react';
2
+ import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
3
+ import { useComposedRefs } from '@radix-ui/react-compose-refs';
4
+ import { forwardRef, useRef, useState, useMemo, useEffect } from 'react';
4
5
  import { Command } from '../command/Command.js';
5
6
  import '../command/CommandInput.js';
6
7
  import '../command/CommandItem.js';
7
8
  import '../command/CommandListbox.js';
8
- import { useCommandContext } from '../command/CommandContext.js';
9
+ import { useCommandContext, resolveItemProperty } from '../command/CommandContext.js';
9
10
  import '../popover/Popover.js';
10
- import '../popover/PopoverAnchor.js';
11
+ import { PopoverAnchor } from '../popover/PopoverAnchor.js';
11
12
  import { PopoverContent } from '../popover/PopoverContent.js';
12
13
  import '../popover/PopoverTrigger.js';
13
14
  import { usePopoverContext } from '../popover/PopoverContext.js';
@@ -18,100 +19,142 @@ import { useMenuSubContext, MenuSubProvider } from './MenuSubContext.js';
18
19
  import { MenuSubInput } from './MenuSubInput.js';
19
20
 
20
21
  const MenuSubContent = forwardRef(
21
- ({ align = "start", children, item, side = "right", ...props }, ref) => {
22
- const options = useMemo(() => item.subOptions ?? [], [item]);
22
+ ({ align = "start", children, side = "right", ...props }, outerRef) => {
23
23
  const { onSelect, setOpen: setRootMenuOpen } = useMenuContext(
24
24
  "@optiaxiom/react/MenuSubContent"
25
25
  );
26
- const { setInputValue } = useCommandContext(
26
+ const {
27
+ highlightedItem,
28
+ inputValue: parentInputValue,
29
+ setInputValue: setParentInputValue
30
+ } = useCommandContext("@optiaxiom/react/MenuSubContent");
31
+ const {
32
+ contentRef: parentContentRef,
33
+ inputRef: parentInputRef,
34
+ open: parentSubMenuOpen,
35
+ triggerRef: parentTriggerRef
36
+ } = useMenuSubContext("@optiaxiom/react/MenuSubContent");
37
+ const { open, presence } = usePopoverContext(
27
38
  "@optiaxiom/react/MenuSubContent"
28
39
  );
29
- const { inputRef: parentInputRef, open: parentSubMenuOpen } = useMenuSubContext("@optiaxiom/react/MenuSubContent");
30
- const { open } = usePopoverContext("@optiaxiom/react/MenuSubContent");
40
+ const ref = useComposedRefs(parentContentRef, outerRef);
41
+ const itemRef = useRef(highlightedItem);
42
+ if (parentSubMenuOpen && highlightedItem && (typeof highlightedItem.subOptions === "function" || !!highlightedItem.subOptions?.length)) {
43
+ itemRef.current = highlightedItem;
44
+ }
45
+ const item = itemRef.current;
46
+ const [inputValue, setInputValue] = useState("");
47
+ const options = useMemo(
48
+ () => resolveItemProperty(item?.subOptions, { inputValue }) ?? [],
49
+ [inputValue, item]
50
+ );
51
+ const contentRef = useRef(null);
31
52
  const inputRef = useRef(null);
53
+ const triggerRef = useRef(null);
32
54
  const [subMenuOpen, setSubMenuOpen] = useState(false);
33
55
  useEffect(() => {
34
56
  if (!open) {
35
57
  setSubMenuOpen(false);
36
58
  }
37
59
  }, [open]);
38
- return /* @__PURE__ */ jsx(
39
- PopoverContent,
40
- {
41
- align,
42
- alignOffset: item.subOptionsInputVisible ? -46 : -4,
43
- minW: "trigger",
44
- onCloseAutoFocus: (event) => {
45
- if (parentSubMenuOpen) {
46
- return;
47
- }
48
- event.preventDefault();
49
- parentInputRef.current?.focus();
50
- },
51
- onEscapeKeyDown: () => setRootMenuOpen(false),
52
- onPointerDown: (event) => {
53
- if (event.defaultPrevented) {
54
- return;
55
- }
56
- if (event.target instanceof HTMLElement && event.target.closest('[role="option"]')) {
57
- return;
58
- }
59
- event.preventDefault();
60
- },
61
- onPointerEnter: () => {
62
- if (item.subOptionsInputVisible) {
63
- inputRef.current?.focus();
64
- }
65
- },
66
- onPointerLeave: (event) => {
67
- if (item.subOptionsInputVisible) {
60
+ useEffect(() => {
61
+ return () => {
62
+ setInputValue("");
63
+ setSubMenuOpen(false);
64
+ };
65
+ }, [item]);
66
+ if (!item || !(open || presence)) {
67
+ return null;
68
+ }
69
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
70
+ /* @__PURE__ */ jsx(PopoverAnchor, { virtualRef: parentTriggerRef }),
71
+ /* @__PURE__ */ jsx(
72
+ PopoverContent,
73
+ {
74
+ align,
75
+ alignOffset: item.subOptionsInputVisible ? -46 : -4,
76
+ minW: "trigger",
77
+ onCloseAutoFocus: (event) => {
78
+ if (parentSubMenuOpen) {
79
+ return;
80
+ }
81
+ event.preventDefault();
68
82
  parentInputRef.current?.focus();
69
- event.stopPropagation();
70
- }
71
- },
72
- p: "4",
73
- ref,
74
- side,
75
- sideOffset: 0,
76
- ...props,
77
- children: children ?? /* @__PURE__ */ jsxs(
78
- Command,
79
- {
80
- onHover: (item2) => {
81
- setSubMenuOpen(!!item2.subOptions?.length);
82
- },
83
- onInputValueChange: (inputValue) => {
84
- if (item.subOptionsInputVisible) {
85
- return;
86
- }
83
+ },
84
+ onEscapeKeyDown: () => setRootMenuOpen(false),
85
+ onPointerDown: (event) => {
86
+ if (event.defaultPrevented) {
87
+ return;
88
+ }
89
+ if (event.target instanceof Element && event.target.closest('[role="option"]')) {
90
+ return;
91
+ }
92
+ event.preventDefault();
93
+ },
94
+ onPointerEnter: () => {
95
+ if (item.subOptionsInputVisible) {
96
+ inputRef.current?.focus();
97
+ }
98
+ },
99
+ onPointerLeave: (event) => {
100
+ if (item.subOptionsInputVisible) {
87
101
  parentInputRef.current?.focus();
88
- setInputValue(inputValue);
89
- },
90
- onSelect: (item2, { dismiss }) => {
91
- if (item2.subOptions?.length) {
92
- setSubMenuOpen(true);
93
- } else {
94
- onSelect(item2, { dismiss });
95
- }
96
- },
97
- open: true,
98
- options,
99
- children: [
100
- /* @__PURE__ */ jsx(VisuallyHidden, { disabled: item.subOptionsInputVisible, children: /* @__PURE__ */ jsx(MenuSubInput, { ref: inputRef }) }),
101
- /* @__PURE__ */ jsx(
102
- MenuSubProvider,
103
- {
104
- inputRef,
105
- open: subMenuOpen,
106
- setOpen: setSubMenuOpen,
107
- children: /* @__PURE__ */ jsx(MenuListbox, { onScroll: () => setSubMenuOpen(false) })
102
+ event.stopPropagation();
103
+ }
104
+ },
105
+ p: "4",
106
+ ref,
107
+ side,
108
+ sideOffset: 0,
109
+ ...props,
110
+ children: children ?? /* @__PURE__ */ jsxs(
111
+ Command,
112
+ {
113
+ enabled: true,
114
+ inputValue,
115
+ onHover: (item2) => {
116
+ setSubMenuOpen(
117
+ typeof item2.subOptions === "function" || !!item2.subOptions?.length
118
+ );
119
+ },
120
+ onInputValueChange: (inputValue2) => {
121
+ if (item.subOptionsInputVisible) {
122
+ setInputValue(inputValue2);
123
+ return;
108
124
  }
109
- )
110
- ]
111
- }
112
- )
113
- }
114
- );
125
+ parentInputRef.current?.focus();
126
+ setParentInputValue(inputValue2);
127
+ },
128
+ onSelect: (item2, { dismiss }) => {
129
+ if (typeof item2.subOptions === "function" || item2.subOptions?.length) {
130
+ setSubMenuOpen(true);
131
+ } else {
132
+ onSelect(item2, { dismiss });
133
+ }
134
+ },
135
+ options,
136
+ children: [
137
+ /* @__PURE__ */ jsx(VisuallyHidden, { disabled: item.subOptionsInputVisible, children: /* @__PURE__ */ jsx(MenuSubInput, { ref: inputRef }) }),
138
+ /* @__PURE__ */ jsx(
139
+ MenuSubProvider,
140
+ {
141
+ contentRef,
142
+ inputRef,
143
+ open: subMenuOpen,
144
+ setOpen: setSubMenuOpen,
145
+ triggerRef,
146
+ children: /* @__PURE__ */ jsx(MenuListbox, { onScroll: () => setSubMenuOpen(false) })
147
+ }
148
+ )
149
+ ]
150
+ },
151
+ item.key ?? resolveItemProperty(item.label, {
152
+ inputValue: parentInputValue
153
+ })
154
+ )
155
+ }
156
+ )
157
+ ] });
115
158
  }
116
159
  );
117
160
  MenuSubContent.displayName = "@optiaxiom/react/MenuSubContent";
@@ -32,7 +32,7 @@ const MenuSubInput = forwardRef(
32
32
  if (event.key === "ArrowLeft") {
33
33
  event.preventDefault();
34
34
  setOpen(false);
35
- } else if (event.key === "ArrowRight" && highlightedItem?.subOptions?.length) {
35
+ } else if (event.key === "ArrowRight" && (typeof highlightedItem?.subOptions === "function" || highlightedItem?.subOptions?.length)) {
36
36
  event.preventDefault();
37
37
  downshift.selectItem(highlightedItem);
38
38
  }
@@ -1,29 +1,37 @@
1
1
  "use client";
2
2
  import { jsx } from 'react/jsx-runtime';
3
- import { forwardRef } from 'react';
3
+ import { useComposedRefs } from '@radix-ui/react-compose-refs';
4
+ import { forwardRef, useRef, useEffect } from 'react';
4
5
  import { useCommandContext } from '../command/CommandContext.js';
5
- import { FilteredSlot } from '../filtered-slot/FilteredSlot.js';
6
6
  import { IconAngleRight } from '../icons/IconAngleRight.js';
7
- import '../popover/Popover.js';
8
- import '../popover/PopoverAnchor.js';
9
- import '../popover/PopoverContent.js';
10
- import { PopoverTrigger } from '../popover/PopoverTrigger.js';
11
7
  import { usePopoverContext } from '../popover/PopoverContext.js';
12
8
  import { MenuItem } from './MenuItem.js';
9
+ import { useMenuSubContext } from './MenuSubContext.js';
13
10
 
14
11
  const MenuSubTrigger = forwardRef(
15
12
  ({
16
13
  children,
17
- contentRef,
18
14
  item,
19
15
  onPointerDown,
20
16
  onPointerEnter,
21
17
  onPointerLeave,
18
+ onPointerMove,
22
19
  ...props
23
- }, ref) => {
20
+ }, outerRef) => {
24
21
  const { downshift, highlightedItem, pauseInteractionRef } = useCommandContext("@optiaxiom/react/MenuSubTrigger");
25
22
  const { open } = usePopoverContext("@optiaxiom/react/MenuSubTrigger");
26
- return /* @__PURE__ */ jsx(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx(FilteredSlot, { exclude: "type", children: /* @__PURE__ */ jsx(
23
+ const { contentRef, triggerRef } = useMenuSubContext(
24
+ "@optiaxiom/react/MenuSubTrigger"
25
+ );
26
+ const pointerEnterRef = useRef(false);
27
+ const innerRef = useRef();
28
+ const ref = useComposedRefs(innerRef, outerRef);
29
+ useEffect(() => {
30
+ if (open && highlightedItem === item && innerRef.current) {
31
+ triggerRef.current = innerRef.current;
32
+ }
33
+ }, [highlightedItem, item, open, triggerRef]);
34
+ return /* @__PURE__ */ jsx(
27
35
  MenuItem,
28
36
  {
29
37
  addonAfter: /* @__PURE__ */ jsx(IconAngleRight, {}),
@@ -36,17 +44,23 @@ const MenuSubTrigger = forwardRef(
36
44
  },
37
45
  onPointerEnter: (event) => {
38
46
  onPointerEnter?.(event);
39
- if (highlightedItem !== item) {
47
+ if (event.defaultPrevented) {
40
48
  return;
41
49
  }
42
- downshift.selectItem(item);
50
+ if (highlightedItem === item) {
51
+ pointerEnterRef.current = true;
52
+ }
43
53
  },
44
54
  onPointerLeave: (event) => {
45
55
  onPointerLeave?.(event);
56
+ pointerEnterRef.current = false;
46
57
  const box = contentRef.current?.getBoundingClientRect();
47
58
  if (!box) {
48
59
  return;
49
60
  }
61
+ if (pauseInteractionRef.current.isInsideTriangle) {
62
+ return;
63
+ }
50
64
  const bottom = {
51
65
  x: box.left,
52
66
  y: box.top + box.height
@@ -67,11 +81,21 @@ const MenuSubTrigger = forwardRef(
67
81
  pauseInteractionRef.current.isInsideTriangle = null;
68
82
  }, 20);
69
83
  },
84
+ onPointerMove: (event) => {
85
+ onPointerMove?.(event);
86
+ if (event.defaultPrevented) {
87
+ return;
88
+ }
89
+ if (pointerEnterRef.current && downshift.isOpen) {
90
+ downshift.selectItem(item);
91
+ }
92
+ pointerEnterRef.current = false;
93
+ },
70
94
  ref,
71
95
  ...props,
72
96
  children
73
97
  }
74
- ) }) });
98
+ );
75
99
  }
76
100
  );
77
101
  MenuSubTrigger.displayName = "@optiaxiom/react/MenuSubTrigger";
@@ -21,7 +21,13 @@ import { PopoverTrigger } from '../popover/PopoverTrigger.js';
21
21
  import { useMenuContext } from './MenuContext.js';
22
22
 
23
23
  const MenuTrigger = forwardRef(
24
- ({ "aria-labelledby": ariaLabelledBy, asChild, children, ...props }, outerRef) => {
24
+ ({
25
+ "aria-labelledby": ariaLabelledBy,
26
+ asChild,
27
+ children,
28
+ onKeyDown,
29
+ ...props
30
+ }, outerRef) => {
25
31
  const { setOpen, size } = useMenuContext("@optiaxiom/react/MenuTrigger");
26
32
  const Comp = size === "sm" ? PopoverTrigger : DialogTrigger;
27
33
  const buttonRef = useRef(null);
@@ -33,6 +39,10 @@ const MenuTrigger = forwardRef(
33
39
  "aria-labelledby": labelId,
34
40
  asChild: true,
35
41
  onKeyDown: (event) => {
42
+ onKeyDown?.(event);
43
+ if (event.defaultPrevented) {
44
+ return;
45
+ }
36
46
  switch (event.key) {
37
47
  case "ArrowDown":
38
48
  setOpen(true);