@optiaxiom/react 1.4.2 → 1.4.4

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 (353) hide show
  1. package/dist/{Link-BsSSg661.d.ts → Link-BoYdGwic.d.ts} +4 -2
  2. package/dist/cjs/{IconMagnifyingGlass-BjiLxA1Q.js → IconMagnifyingGlass-D5o6I9bt.js} +136 -127
  3. package/dist/{esm/assets/src/actions/ActionsContent.css.ts.vanilla-Duc38o-h.css → cjs/assets/src/actions/ActionsContent.css.ts.vanilla-ExtMjC06.css} +7 -7
  4. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-C91HhdTF.css +6 -0
  5. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-Dljmqkhv.css +27 -0
  6. package/dist/cjs/assets/src/alert-dialog/{AlertDialogFooter.css.ts.vanilla-BGtAxWc-.css → AlertDialogFooter.css.ts.vanilla-CNz2NTBb.css} +3 -3
  7. package/dist/cjs/assets/src/avatar/{Avatar.css.ts.vanilla-CyKj87Wo.css → Avatar.css.ts.vanilla-BSHsXBme.css} +18 -18
  8. package/dist/cjs/assets/src/avatar/AvatarGroup.css.ts.vanilla-QKro-bni.css +4 -0
  9. package/dist/{esm/assets/src/backdrop/Backdrop.css.ts.vanilla-BpFaHxTH.css → cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-DduBOaSi.css} +3 -3
  10. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-Dp7cgvWe.css +46 -0
  11. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-BwuqpON2.css +6 -0
  12. package/dist/{esm/assets/src/box/Box.css.ts.vanilla-DbWvc6tT.css → cjs/assets/src/box/Box.css.ts.vanilla-ldPnrP1Y.css} +21 -21
  13. package/dist/cjs/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-Bp3Qd56m.css +8 -0
  14. package/dist/cjs/assets/src/breadcrumb/{BreadcrumbLink.css.ts.vanilla-BgEOOYdV.css → BreadcrumbLink.css.ts.vanilla-Bp_K9fVI.css} +5 -5
  15. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-BvWN61Cn.css +9 -0
  16. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-WHx-aTZW.css +147 -0
  17. package/dist/{esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-C7WAJ5l1.css → cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-BTkNhCf0.css} +24 -24
  18. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-DqrEEQN7.css +6 -0
  19. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-BsHTe1Sr.css +6 -0
  20. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-BFmg0krK.css +11 -0
  21. package/dist/cjs/assets/src/card/CardAction.css.ts.vanilla-BAWrebWw.css +8 -0
  22. package/dist/cjs/assets/src/card/CardImage.css.ts.vanilla-C-HOvABx.css +12 -0
  23. package/dist/{esm/assets/src/card/CardOverflow.css.ts.vanilla-CtSgyKpZ.css → cjs/assets/src/card/CardOverflow.css.ts.vanilla-CWDoONAS.css} +5 -5
  24. package/dist/cjs/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-DGTQN8mt.css → CheckboxControl.css.ts.vanilla-CDC0fy2v.css} +7 -7
  25. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-Cg92YaKp.css +10 -0
  26. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-Bb508Rff.css +34 -0
  27. package/dist/{esm/assets/src/data-table/DataTableBody.css.ts.vanilla-DWW4a5h4.css → cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-C6qwczKB.css} +25 -25
  28. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-BtJiNqG5.css +6 -0
  29. package/dist/cjs/assets/src/data-table/{DataTableHeaderCell.css.ts.vanilla-4iA89ScB.css → DataTableHeaderCell.css.ts.vanilla-BurCdT_Z.css} +9 -9
  30. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-Nbqa08BS.css +15 -0
  31. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-PYE_9Omy.css +6 -0
  32. package/dist/cjs/assets/src/dialog/{DialogContent.css.ts.vanilla-Dw7N6ES4.css → DialogContent.css.ts.vanilla-C64UyTta.css} +10 -10
  33. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-COIerQaX.css +15 -0
  34. package/dist/cjs/assets/src/disclosure/{DisclosureContent.css.ts.vanilla-DebDfqqw.css → DisclosureContent.css.ts.vanilla-HUfpq0Vn.css} +4 -4
  35. package/dist/{esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-CF60qKog.css → cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-CdrxH1iX.css} +7 -7
  36. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-BPbfpjzo.css +7 -0
  37. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-DS0LbUhe.css +37 -0
  38. package/dist/cjs/assets/src/inline-input/{InlineInput.css.ts.vanilla-BefgOCLo.css → InlineInput.css.ts.vanilla-DKc-cWJm.css} +4 -4
  39. package/dist/{esm/assets/src/input/InputControl.css.ts.vanilla-Umo67efj.css → cjs/assets/src/input/InputControl.css.ts.vanilla-BnLQthxH.css} +8 -8
  40. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-Zuc9dU8n.css +70 -0
  41. package/dist/cjs/assets/src/kbd/Kbd.css.ts.vanilla-DYimwKhq.css +9 -0
  42. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-VZEhd-tN.css +7 -0
  43. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css +1 -0
  44. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-Bz6n9eU3.css +7 -0
  45. package/dist/{esm/assets/src/link/Link.css.ts.vanilla-CmN0ZtWP.css → cjs/assets/src/link/Link.css.ts.vanilla-CYIWxhhi.css} +13 -13
  46. package/dist/cjs/assets/src/listbox/{ListboxCheckboxItem.css.ts.vanilla-EchCEMZS.css → ListboxCheckboxItem.css.ts.vanilla-CFpVOqf6.css} +4 -4
  47. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-CwCJTzX5.css +48 -0
  48. package/dist/cjs/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-BjZns1yA.css → ListboxItemIndicator.css.ts.vanilla-CCcfuo_W.css} +4 -4
  49. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-Dc7Ke7O0.css +6 -0
  50. package/dist/cjs/assets/src/modal/ModalListbox.css.ts.vanilla-DaBVrbx4.css +33 -0
  51. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-BV6M1Cbh.css +6 -0
  52. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-afigyV0I.css +9 -0
  53. package/dist/{esm/assets/src/nav/NavItem.css.ts.vanilla-DfBCoksv.css → cjs/assets/src/nav/NavItem.css.ts.vanilla-ACTEqCcA.css} +13 -13
  54. package/dist/cjs/assets/src/pagination/{Pagination.css.ts.vanilla-N6iilZyM.css → Pagination.css.ts.vanilla-D_A3QaT2.css} +5 -5
  55. package/dist/{esm/assets/src/pill/Pill.css.ts.vanilla-BaF_FyuF.css → cjs/assets/src/pill/Pill.css.ts.vanilla-K-Vzw2lp.css} +7 -7
  56. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla--j70ophL.css +6 -0
  57. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-DiPJRBZA.css +13 -0
  58. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-Bjhboj4v.css +10 -0
  59. package/dist/{esm/assets/src/separator/Separator.css.ts.vanilla-wS2qmdRH.css → cjs/assets/src/separator/Separator.css.ts.vanilla-Cj8fLWBy.css} +8 -8
  60. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-B3RW9y-8.css +6 -0
  61. package/dist/cjs/assets/src/spinner/{Spinner.css.ts.vanilla-BBAm6dsH.css → Spinner.css.ts.vanilla-DmSBqOpL.css} +4 -4
  62. package/dist/cjs/assets/src/sprinkles/{properties.css.ts.vanilla-BtYNRlzd.css → properties.css.ts.vanilla-9Wex1qtU.css} +723 -723
  63. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-CGMqvjc_.css +6 -0
  64. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-B9ZI0QKN.css +45 -0
  65. package/dist/cjs/assets/src/table/{Table.css.ts.vanilla-BSjTwPKR.css → Table.css.ts.vanilla-DSclleGu.css} +6 -6
  66. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-B3Pf9AVp.css +6 -0
  67. package/dist/{esm/assets/src/table/TableCell.css.ts.vanilla-k9kt5FQt.css → cjs/assets/src/table/TableCell.css.ts.vanilla-CbrELTkx.css} +4 -4
  68. package/dist/{esm/assets/src/table/TableHeaderCell.css.ts.vanilla-BiMqKBba.css → cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-CIH-9l2P.css} +4 -4
  69. package/dist/cjs/assets/src/table/{TableRow.css.ts.vanilla-03Howrsh.css → TableRow.css.ts.vanilla-DEeo_qVc.css} +5 -5
  70. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-CEQJeIzO.css +9 -0
  71. package/dist/cjs/assets/src/tabs/{TabsList.css.ts.vanilla-CWBAb9gN.css → TabsList.css.ts.vanilla-BXcPkSI5.css} +4 -4
  72. package/dist/{esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-UDAnl5Gd.css → cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-C0G7KLrB.css} +10 -10
  73. package/dist/{esm/assets/src/text/Text.css.ts.vanilla-BbWEqOyL.css → cjs/assets/src/text/Text.css.ts.vanilla-zeEGsCsf.css} +8 -8
  74. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-NV--blpC.css +34 -0
  75. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-BZPHNBjp.css +104 -0
  76. package/dist/cjs/assets/src/toast/{ToastProvider.css.ts.vanilla-zehVa2g8.css → ToastProvider.css.ts.vanilla-DtjlLs05.css} +9 -9
  77. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-DMo_bcI0.css +25 -0
  78. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-C2lcZUpV.css +10 -0
  79. package/dist/{esm/assets/src/transition/Transition.css.ts.vanilla-DcuuYLiM.css → cjs/assets/src/transition/Transition.css.ts.vanilla-BOv9G0rp.css} +26 -26
  80. package/dist/cjs/index.js +135 -135
  81. package/dist/cjs/unstable.js +175 -141
  82. package/dist/{cjs/assets/src/actions/ActionsContent.css.ts.vanilla-Duc38o-h.css → esm/assets/src/actions/ActionsContent.css.ts.vanilla-ExtMjC06.css} +7 -7
  83. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-C91HhdTF.css +6 -0
  84. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-Dljmqkhv.css +27 -0
  85. package/dist/esm/assets/src/alert-dialog/{AlertDialogFooter.css.ts.vanilla-BGtAxWc-.css → AlertDialogFooter.css.ts.vanilla-CNz2NTBb.css} +3 -3
  86. package/dist/esm/assets/src/avatar/{Avatar.css.ts.vanilla-CyKj87Wo.css → Avatar.css.ts.vanilla-BSHsXBme.css} +18 -18
  87. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-QKro-bni.css +4 -0
  88. package/dist/{cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-BpFaHxTH.css → esm/assets/src/backdrop/Backdrop.css.ts.vanilla-DduBOaSi.css} +3 -3
  89. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-Dp7cgvWe.css +46 -0
  90. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-BwuqpON2.css +6 -0
  91. package/dist/{cjs/assets/src/box/Box.css.ts.vanilla-DbWvc6tT.css → esm/assets/src/box/Box.css.ts.vanilla-ldPnrP1Y.css} +21 -21
  92. package/dist/esm/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-Bp3Qd56m.css +8 -0
  93. package/dist/esm/assets/src/breadcrumb/{BreadcrumbLink.css.ts.vanilla-BgEOOYdV.css → BreadcrumbLink.css.ts.vanilla-Bp_K9fVI.css} +5 -5
  94. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-BvWN61Cn.css +9 -0
  95. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-WHx-aTZW.css +147 -0
  96. package/dist/{cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-C7WAJ5l1.css → esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-BTkNhCf0.css} +24 -24
  97. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-DqrEEQN7.css +6 -0
  98. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-BsHTe1Sr.css +6 -0
  99. package/dist/esm/assets/src/card/Card.css.ts.vanilla-BFmg0krK.css +11 -0
  100. package/dist/esm/assets/src/card/CardAction.css.ts.vanilla-BAWrebWw.css +8 -0
  101. package/dist/esm/assets/src/card/CardImage.css.ts.vanilla-C-HOvABx.css +12 -0
  102. package/dist/{cjs/assets/src/card/CardOverflow.css.ts.vanilla-CtSgyKpZ.css → esm/assets/src/card/CardOverflow.css.ts.vanilla-CWDoONAS.css} +5 -5
  103. package/dist/esm/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-DGTQN8mt.css → CheckboxControl.css.ts.vanilla-CDC0fy2v.css} +7 -7
  104. package/dist/esm/assets/src/code/Code.css.ts.vanilla-Cg92YaKp.css +10 -0
  105. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-Bb508Rff.css +34 -0
  106. package/dist/{cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-DWW4a5h4.css → esm/assets/src/data-table/DataTableBody.css.ts.vanilla-C6qwczKB.css} +25 -25
  107. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-BtJiNqG5.css +6 -0
  108. package/dist/esm/assets/src/data-table/{DataTableHeaderCell.css.ts.vanilla-4iA89ScB.css → DataTableHeaderCell.css.ts.vanilla-BurCdT_Z.css} +9 -9
  109. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-Nbqa08BS.css +15 -0
  110. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-PYE_9Omy.css +6 -0
  111. package/dist/esm/assets/src/dialog/{DialogContent.css.ts.vanilla-Dw7N6ES4.css → DialogContent.css.ts.vanilla-C64UyTta.css} +10 -10
  112. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-COIerQaX.css +15 -0
  113. package/dist/esm/assets/src/disclosure/{DisclosureContent.css.ts.vanilla-DebDfqqw.css → DisclosureContent.css.ts.vanilla-HUfpq0Vn.css} +4 -4
  114. package/dist/{cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-CF60qKog.css → esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-CdrxH1iX.css} +7 -7
  115. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-BPbfpjzo.css +7 -0
  116. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-DS0LbUhe.css +37 -0
  117. package/dist/esm/assets/src/inline-input/{InlineInput.css.ts.vanilla-BefgOCLo.css → InlineInput.css.ts.vanilla-DKc-cWJm.css} +4 -4
  118. package/dist/{cjs/assets/src/input/InputControl.css.ts.vanilla-Umo67efj.css → esm/assets/src/input/InputControl.css.ts.vanilla-BnLQthxH.css} +8 -8
  119. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-Zuc9dU8n.css +70 -0
  120. package/dist/esm/assets/src/kbd/Kbd.css.ts.vanilla-DYimwKhq.css +9 -0
  121. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-VZEhd-tN.css +7 -0
  122. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css +1 -0
  123. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-Bz6n9eU3.css +7 -0
  124. package/dist/{cjs/assets/src/link/Link.css.ts.vanilla-CmN0ZtWP.css → esm/assets/src/link/Link.css.ts.vanilla-CYIWxhhi.css} +13 -13
  125. package/dist/esm/assets/src/listbox/{ListboxCheckboxItem.css.ts.vanilla-EchCEMZS.css → ListboxCheckboxItem.css.ts.vanilla-CFpVOqf6.css} +4 -4
  126. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-CwCJTzX5.css +48 -0
  127. package/dist/esm/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-BjZns1yA.css → ListboxItemIndicator.css.ts.vanilla-CCcfuo_W.css} +4 -4
  128. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-Dc7Ke7O0.css +6 -0
  129. package/dist/esm/assets/src/modal/ModalListbox.css.ts.vanilla-DaBVrbx4.css +33 -0
  130. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-BV6M1Cbh.css +6 -0
  131. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-afigyV0I.css +9 -0
  132. package/dist/{cjs/assets/src/nav/NavItem.css.ts.vanilla-DfBCoksv.css → esm/assets/src/nav/NavItem.css.ts.vanilla-ACTEqCcA.css} +13 -13
  133. package/dist/esm/assets/src/pagination/{Pagination.css.ts.vanilla-N6iilZyM.css → Pagination.css.ts.vanilla-D_A3QaT2.css} +5 -5
  134. package/dist/{cjs/assets/src/pill/Pill.css.ts.vanilla-BaF_FyuF.css → esm/assets/src/pill/Pill.css.ts.vanilla-K-Vzw2lp.css} +7 -7
  135. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla--j70ophL.css +6 -0
  136. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-DiPJRBZA.css +13 -0
  137. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-Bjhboj4v.css +10 -0
  138. package/dist/{cjs/assets/src/separator/Separator.css.ts.vanilla-wS2qmdRH.css → esm/assets/src/separator/Separator.css.ts.vanilla-Cj8fLWBy.css} +8 -8
  139. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-B3RW9y-8.css +6 -0
  140. package/dist/esm/assets/src/spinner/{Spinner.css.ts.vanilla-BBAm6dsH.css → Spinner.css.ts.vanilla-DmSBqOpL.css} +4 -4
  141. package/dist/esm/assets/src/sprinkles/{properties.css.ts.vanilla-BtYNRlzd.css → properties.css.ts.vanilla-9Wex1qtU.css} +723 -723
  142. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-CGMqvjc_.css +6 -0
  143. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-B9ZI0QKN.css +45 -0
  144. package/dist/esm/assets/src/table/{Table.css.ts.vanilla-BSjTwPKR.css → Table.css.ts.vanilla-DSclleGu.css} +6 -6
  145. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-B3Pf9AVp.css +6 -0
  146. package/dist/{cjs/assets/src/table/TableCell.css.ts.vanilla-k9kt5FQt.css → esm/assets/src/table/TableCell.css.ts.vanilla-CbrELTkx.css} +4 -4
  147. package/dist/{cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-BiMqKBba.css → esm/assets/src/table/TableHeaderCell.css.ts.vanilla-CIH-9l2P.css} +4 -4
  148. package/dist/esm/assets/src/table/{TableRow.css.ts.vanilla-03Howrsh.css → TableRow.css.ts.vanilla-DEeo_qVc.css} +5 -5
  149. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-CEQJeIzO.css +9 -0
  150. package/dist/esm/assets/src/tabs/{TabsList.css.ts.vanilla-CWBAb9gN.css → TabsList.css.ts.vanilla-BXcPkSI5.css} +4 -4
  151. package/dist/{cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-UDAnl5Gd.css → esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-C0G7KLrB.css} +10 -10
  152. package/dist/{cjs/assets/src/text/Text.css.ts.vanilla-BbWEqOyL.css → esm/assets/src/text/Text.css.ts.vanilla-zeEGsCsf.css} +8 -8
  153. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-NV--blpC.css +34 -0
  154. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-BZPHNBjp.css +104 -0
  155. package/dist/esm/assets/src/toast/{ToastProvider.css.ts.vanilla-zehVa2g8.css → ToastProvider.css.ts.vanilla-DtjlLs05.css} +9 -9
  156. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-DMo_bcI0.css +25 -0
  157. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-C2lcZUpV.css +10 -0
  158. package/dist/{cjs/assets/src/transition/Transition.css.ts.vanilla-DcuuYLiM.css → esm/assets/src/transition/Transition.css.ts.vanilla-BOv9G0rp.css} +26 -26
  159. package/dist/esm/packages/react/package.json.js +1 -1
  160. package/dist/esm/packages/react/src/actions/ActionsContent-css.js +4 -4
  161. package/dist/esm/packages/react/src/actions/ActionsRoot-css.js +3 -3
  162. package/dist/esm/packages/react/src/alert/Alert-css.js +3 -3
  163. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent-css.js +6 -6
  164. package/dist/esm/packages/react/src/alert-dialog/AlertDialogFooter-css.js +3 -3
  165. package/dist/esm/packages/react/src/avatar/Avatar-css.js +4 -4
  166. package/dist/esm/packages/react/src/avatar/AvatarGroup-css.js +3 -3
  167. package/dist/esm/packages/react/src/backdrop/Backdrop-css.js +3 -3
  168. package/dist/esm/packages/react/src/badge/Badge-css.js +3 -3
  169. package/dist/esm/packages/react/src/banner/Banner-css.js +3 -3
  170. package/dist/esm/packages/react/src/box/Box-css.js +4 -4
  171. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbItem-css.js +3 -3
  172. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbLink-css.js +3 -3
  173. package/dist/esm/packages/react/src/button/ButtonGroup-css.js +3 -3
  174. package/dist/esm/packages/react/src/button/ButtonLoadable-css.js +5 -5
  175. package/dist/esm/packages/react/src/button/ButtonRoot-css.js +5 -5
  176. package/dist/esm/packages/react/src/calendar/CalendarDayButton-css.js +4 -4
  177. package/dist/esm/packages/react/src/calendar/CalendarMonths-css.js +3 -3
  178. package/dist/esm/packages/react/src/calendar/CalendarNav-css.js +3 -3
  179. package/dist/esm/packages/react/src/card/Card-css.js +5 -5
  180. package/dist/esm/packages/react/src/card/CardAction-css.js +4 -4
  181. package/dist/esm/packages/react/src/card/CardImage-css.js +3 -3
  182. package/dist/esm/packages/react/src/card/CardOverflow-css.js +3 -3
  183. package/dist/esm/packages/react/src/checkbox/CheckboxControl-css.js +6 -6
  184. package/dist/esm/packages/react/src/code/Code-css.js +3 -3
  185. package/dist/esm/packages/react/src/command/Command.js +2 -4
  186. package/dist/esm/packages/react/src/command/CommandInput.js +1 -8
  187. package/dist/esm/packages/react/src/command/CommandItem.js +4 -1
  188. package/dist/esm/packages/react/src/cover/Cover-css.js +3 -3
  189. package/dist/esm/packages/react/src/data-table/DataTableBody-css.js +11 -11
  190. package/dist/esm/packages/react/src/data-table/DataTableFooter-css.js +3 -3
  191. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell-css.js +5 -5
  192. package/dist/esm/packages/react/src/date-input/DateInput-css.js +6 -6
  193. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContent-css.js +1 -1
  194. package/dist/esm/packages/react/src/dialog/DialogBody-css.js +3 -3
  195. package/dist/esm/packages/react/src/dialog/DialogContent-css.js +5 -5
  196. package/dist/esm/packages/react/src/dialog/DialogContent.js +3 -2
  197. package/dist/esm/packages/react/src/dialog/DialogFooter-css.js +1 -1
  198. package/dist/esm/packages/react/src/dialog/DialogHeader-css.js +6 -6
  199. package/dist/esm/packages/react/src/disclosure/DisclosureContent-css.js +4 -4
  200. package/dist/esm/packages/react/src/disclosure/DisclosureTrigger-css.js +5 -5
  201. package/dist/esm/packages/react/src/downshift/usePortalPatch.js +4 -4
  202. package/dist/esm/packages/react/src/highlight/Highlight-css.js +3 -3
  203. package/dist/esm/packages/react/src/indicator/Indicator-css.js +5 -5
  204. package/dist/esm/packages/react/src/inline-input/InlineInput-css.js +4 -4
  205. package/dist/esm/packages/react/src/input/Input-css.js +1 -1
  206. package/dist/esm/packages/react/src/input/InputControl-css.js +3 -3
  207. package/dist/esm/packages/react/src/input/InputRoot-css.js +5 -5
  208. package/dist/esm/packages/react/src/kbd/Kbd-css.js +4 -4
  209. package/dist/esm/packages/react/src/label-menu-button/LabelMenuButton-css.js +5 -5
  210. package/dist/esm/packages/react/src/layers/layers-css.js +3 -3
  211. package/dist/esm/packages/react/src/layout/Layouts-css.js +3 -3
  212. package/dist/esm/packages/react/src/link/Link-css.js +4 -4
  213. package/dist/esm/packages/react/src/listbox/ListboxCheckboxItem-css.js +3 -3
  214. package/dist/esm/packages/react/src/listbox/ListboxItem-css.js +5 -5
  215. package/dist/esm/packages/react/src/listbox/ListboxItemIndicator-css.js +3 -3
  216. package/dist/esm/packages/react/src/listbox/ListboxItemized.js +1 -1
  217. package/dist/esm/packages/react/src/listbox/ListboxVirtualized.js +5 -1
  218. package/dist/esm/packages/react/src/listbox/utils.js +16 -0
  219. package/dist/esm/packages/react/src/menu/Menu.js +12 -7
  220. package/dist/esm/packages/react/src/menu/MenuContent.js +11 -3
  221. package/dist/esm/packages/react/src/menu/MenuDialogContent.js +2 -2
  222. package/dist/esm/packages/react/src/menu/MenuInput-css.js +3 -3
  223. package/dist/esm/packages/react/src/menu/MenuInput.js +26 -3
  224. package/dist/esm/packages/react/src/menu/MenuListbox.js +5 -20
  225. package/dist/esm/packages/react/src/menu/MenuPopoverContent.js +10 -7
  226. package/dist/esm/packages/react/src/menu/MenuSub.js +2 -2
  227. package/dist/esm/packages/react/src/menu/MenuSubContent.js +4 -22
  228. package/dist/esm/packages/react/src/menu/MenuSubInput.js +48 -0
  229. package/dist/esm/packages/react/src/modal/ModalListbox-css.js +3 -3
  230. package/dist/esm/packages/react/src/nav/Nav-css.js +3 -3
  231. package/dist/esm/packages/react/src/nav/NavAccountItem-css.js +3 -3
  232. package/dist/esm/packages/react/src/nav/NavBody-css.js +1 -1
  233. package/dist/esm/packages/react/src/nav/NavItem-css.js +6 -6
  234. package/dist/esm/packages/react/src/pagination/Pagination-css.js +5 -5
  235. package/dist/esm/packages/react/src/paper/Paper-css.js +1 -1
  236. package/dist/esm/packages/react/src/pill/Pill-css.js +3 -3
  237. package/dist/esm/packages/react/src/progress/Progress-css.js +3 -3
  238. package/dist/esm/packages/react/src/radio/Radio-css.js +8 -8
  239. package/dist/esm/packages/react/src/search-input/SearchInput-css.js +5 -5
  240. package/dist/esm/packages/react/src/select/SelectContent.js +5 -19
  241. package/dist/esm/packages/react/src/select/SelectItem.js +4 -2
  242. package/dist/esm/packages/react/src/separator/Separator-css.js +3 -3
  243. package/dist/esm/packages/react/src/skeleton/Skeleton-css.js +3 -3
  244. package/dist/esm/packages/react/src/spinner/Spinner-css.js +3 -3
  245. package/dist/esm/packages/react/src/sprinkles/properties-css.js +4 -4
  246. package/dist/esm/packages/react/src/sub-nav/SubNav-css.js +3 -3
  247. package/dist/esm/packages/react/src/switch/Switch-css.js +8 -8
  248. package/dist/esm/packages/react/src/table/Table-css.js +4 -4
  249. package/dist/esm/packages/react/src/table/TableBody-css.js +3 -3
  250. package/dist/esm/packages/react/src/table/TableCell-css.js +4 -4
  251. package/dist/esm/packages/react/src/table/TableHeaderCell-css.js +4 -4
  252. package/dist/esm/packages/react/src/table/TableRow-css.js +3 -3
  253. package/dist/esm/packages/react/src/tabs/Tabs-css.js +3 -3
  254. package/dist/esm/packages/react/src/tabs/TabsList-css.js +3 -3
  255. package/dist/esm/packages/react/src/tabs/TabsTrigger-css.js +4 -4
  256. package/dist/esm/packages/react/src/text/Text-css.js +3 -3
  257. package/dist/esm/packages/react/src/textarea/TextareaAutosize-css.js +5 -5
  258. package/dist/esm/packages/react/src/toast/Toast-css.js +6 -6
  259. package/dist/esm/packages/react/src/toast/ToastProvider-css.js +3 -3
  260. package/dist/esm/packages/react/src/toggle-input/ToggleInput-css.js +4 -4
  261. package/dist/esm/packages/react/src/toggle-input/ToggleInputControl-css.js +5 -5
  262. package/dist/esm/packages/react/src/toggle-input/ToggleInputHiddenInput-css.js +3 -3
  263. package/dist/esm/packages/react/src/tooltip/TooltipContent-css.js +1 -1
  264. package/dist/esm/packages/react/src/transition/Transition-css.js +3 -3
  265. package/dist/index.d.ts +4 -4
  266. package/dist/unstable.d.ts +12 -4
  267. package/package.json +1 -1
  268. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-BvvyEVfl.css +0 -6
  269. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-Qq8hS6EI.css +0 -27
  270. package/dist/cjs/assets/src/avatar/AvatarGroup.css.ts.vanilla-CtEnSPR9.css +0 -4
  271. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-BtD1EVS4.css +0 -46
  272. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-Cgx7aOt1.css +0 -6
  273. package/dist/cjs/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-wdVgLGW7.css +0 -8
  274. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-_3WF_OeZ.css +0 -9
  275. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-wenJY4iS.css +0 -147
  276. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-t950Aqm0.css +0 -6
  277. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-BsiMwzCv.css +0 -6
  278. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-CeV55mqZ.css +0 -11
  279. package/dist/cjs/assets/src/card/CardAction.css.ts.vanilla-Dce_0Pc1.css +0 -8
  280. package/dist/cjs/assets/src/card/CardImage.css.ts.vanilla-D2Gqrwc_.css +0 -12
  281. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-Dnfr3Vxy.css +0 -10
  282. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-CN4saWWS.css +0 -34
  283. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-DBoP6Kvc.css +0 -6
  284. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-BeKrSNLT.css +0 -15
  285. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-CxORpAHs.css +0 -6
  286. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-B0jOOZOg.css +0 -15
  287. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-BQ-HgINf.css +0 -7
  288. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-Cjujsk5K.css +0 -37
  289. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-CcnoYBa5.css +0 -70
  290. package/dist/cjs/assets/src/kbd/Kbd.css.ts.vanilla-BWLxKhaq.css +0 -9
  291. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-DG7o3Whh.css +0 -7
  292. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css +0 -1
  293. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-DaN63rMj.css +0 -7
  294. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-Db6pUIcT.css +0 -48
  295. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-6hAHuZDQ.css +0 -6
  296. package/dist/cjs/assets/src/modal/ModalListbox.css.ts.vanilla-BujxQe95.css +0 -33
  297. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-DZNEs4wz.css +0 -6
  298. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-BabWpGiw.css +0 -9
  299. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-BxgD8eTg.css +0 -6
  300. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-cvZuNdDW.css +0 -13
  301. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-CDfb1V5j.css +0 -10
  302. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-DgBlFXT9.css +0 -6
  303. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-DWYL9QWl.css +0 -6
  304. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-ChXA8gON.css +0 -45
  305. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-D81P1Jen.css +0 -6
  306. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-BI9LmxxN.css +0 -9
  307. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-w-OpbJUR.css +0 -34
  308. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-C3_SIEFX.css +0 -104
  309. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-DbD4jaVm.css +0 -25
  310. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-B4BajJh3.css +0 -10
  311. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-BvvyEVfl.css +0 -6
  312. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-Qq8hS6EI.css +0 -27
  313. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-CtEnSPR9.css +0 -4
  314. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-BtD1EVS4.css +0 -46
  315. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-Cgx7aOt1.css +0 -6
  316. package/dist/esm/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-wdVgLGW7.css +0 -8
  317. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-_3WF_OeZ.css +0 -9
  318. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-wenJY4iS.css +0 -147
  319. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-t950Aqm0.css +0 -6
  320. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-BsiMwzCv.css +0 -6
  321. package/dist/esm/assets/src/card/Card.css.ts.vanilla-CeV55mqZ.css +0 -11
  322. package/dist/esm/assets/src/card/CardAction.css.ts.vanilla-Dce_0Pc1.css +0 -8
  323. package/dist/esm/assets/src/card/CardImage.css.ts.vanilla-D2Gqrwc_.css +0 -12
  324. package/dist/esm/assets/src/code/Code.css.ts.vanilla-Dnfr3Vxy.css +0 -10
  325. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-CN4saWWS.css +0 -34
  326. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-DBoP6Kvc.css +0 -6
  327. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-BeKrSNLT.css +0 -15
  328. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-CxORpAHs.css +0 -6
  329. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-B0jOOZOg.css +0 -15
  330. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-BQ-HgINf.css +0 -7
  331. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-Cjujsk5K.css +0 -37
  332. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-CcnoYBa5.css +0 -70
  333. package/dist/esm/assets/src/kbd/Kbd.css.ts.vanilla-BWLxKhaq.css +0 -9
  334. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-DG7o3Whh.css +0 -7
  335. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css +0 -1
  336. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-DaN63rMj.css +0 -7
  337. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-Db6pUIcT.css +0 -48
  338. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-6hAHuZDQ.css +0 -6
  339. package/dist/esm/assets/src/modal/ModalListbox.css.ts.vanilla-BujxQe95.css +0 -33
  340. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-DZNEs4wz.css +0 -6
  341. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-BabWpGiw.css +0 -9
  342. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-BxgD8eTg.css +0 -6
  343. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-cvZuNdDW.css +0 -13
  344. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-CDfb1V5j.css +0 -10
  345. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-DgBlFXT9.css +0 -6
  346. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-DWYL9QWl.css +0 -6
  347. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-ChXA8gON.css +0 -45
  348. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-D81P1Jen.css +0 -6
  349. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-BI9LmxxN.css +0 -9
  350. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-w-OpbJUR.css +0 -34
  351. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-C3_SIEFX.css +0 -104
  352. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-DbD4jaVm.css +0 -25
  353. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-B4BajJh3.css +0 -10
@@ -15,17 +15,17 @@ function usePortalPatch(open, getInitialHighlightedIndex) {
15
15
  setPlaced(false);
16
16
  }
17
17
  }, [open, setPlaced]);
18
- const [highlightedIndex, setHighlightedIndex] = useState(
19
- getInitialHighlightedIndex
20
- );
18
+ const [highlightedIndex, setHighlightedIndex] = useState(-1);
21
19
  const getInitialHighlightedIndexStable = useEffectEvent(
22
20
  getInitialHighlightedIndex
23
21
  );
24
22
  useEffect(() => {
25
23
  if (!placed) {
24
+ setHighlightedIndex(-1);
25
+ } else if (open) {
26
26
  setHighlightedIndex(getInitialHighlightedIndexStable);
27
27
  }
28
- }, [getInitialHighlightedIndexStable, placed]);
28
+ }, [getInitialHighlightedIndexStable, open, placed]);
29
29
  return [
30
30
  /**
31
31
  * Downshift attempts to scroll to the currently selected item when the menu
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/highlight/Highlight.css.ts.vanilla-BQ-HgINf.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/highlight/Highlight.css.ts.vanilla-BPbfpjzo.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var mark = recipeRuntime({base:'_1n7kjql'});
5
+ var mark = recipeRuntime({base:'_1daokz3'});
6
6
 
7
7
  export { mark };
@@ -1,9 +1,9 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/indicator/Indicator.css.ts.vanilla-Cjujsk5K.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/indicator/Indicator.css.ts.vanilla-DS0LbUhe.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var badge = recipeRuntime({base:'_137fjow',variants:{offset:{false:{px:'0',py:'0'},true:[{px:'4',py:'0'},'eqngm7']},ping:{false:{},true:[{animation:'ping',color:'transparent',pointerEvents:'none'},'_9p1ft3']}}});
6
- var floating = recipeRuntime({base:[{display:'inline-flex',pointerEvents:'none',z:'10'},'_1ar0chj'],variants:{offset:{false:'_10a5rnm',true:{}},position:{'bottom-right':'_1r1gxcx','top-right':'t4l9g6'}}});
7
- var indicator = recipeRuntime({base:[{display:'inline-flex'},'_1tqgnss']});
5
+ var badge = recipeRuntime({base:'_10hxl4a',variants:{offset:{false:{px:'0',py:'0'},true:[{px:'4',py:'0'},'hacc8h']},ping:{false:{},true:[{animation:'ping',color:'transparent',pointerEvents:'none'},'_27iaf']}}});
6
+ var floating = recipeRuntime({base:[{display:'inline-flex',pointerEvents:'none',z:'10'},'rhz1as'],variants:{offset:{false:'q0dacf',true:{}},position:{'bottom-right':'f07d87','top-right':'i9bmk1'}}});
7
+ var indicator = recipeRuntime({base:[{display:'inline-flex'},'_1evqik3']});
8
8
 
9
9
  export { badge, floating, indicator };
@@ -1,8 +1,8 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/inline-input/InlineInput.css.ts.vanilla-BefgOCLo.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/inline-input/InlineInput.css.ts.vanilla-DKc-cWJm.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var editor = recipeRuntime({base:'u6tpk6',variants:{empty:{false:{},true:'s43ae9'}}});
6
- var input = recipeRuntime({base:'_1tpyq8r'});
5
+ var editor = recipeRuntime({base:'j4c5g0',variants:{empty:{false:{},true:'_1uu00r'}}});
6
+ var input = recipeRuntime({base:'efmxos'});
7
7
 
8
8
  export { editor, input };
@@ -1,4 +1,4 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
2
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
3
3
 
4
4
  var addon = recipeRuntime({base:{display:'flex',flex:'none'}});
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/input/InputControl.css.ts.vanilla-Umo67efj.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/input/InputControl.css.ts.vanilla-BnLQthxH.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var control = recipeRuntime({base:['z2djls',{bg:'transparent',flex:'auto',w:'full'},'qo03tw','nfs1ov'],variants:{size:{md:{},lg:{},xl:['c2ayqn']}}});
5
+ var control = recipeRuntime({base:['_1gsxk40',{bg:'transparent',flex:'auto',w:'full'},'_116un6b','ekj1as'],variants:{size:{md:{},lg:{},xl:['_1ch428j']}}});
6
6
 
7
7
  export { control };
@@ -1,9 +1,9 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/avatar/AvatarGroup.css.ts.vanilla-CtEnSPR9.css';
3
- import './../../../../assets/src/input/InputControl.css.ts.vanilla-Umo67efj.css';
4
- import './../../../../assets/src/input/InputRoot.css.ts.vanilla-CcnoYBa5.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/avatar/AvatarGroup.css.ts.vanilla-QKro-bni.css';
3
+ import './../../../../assets/src/input/InputControl.css.ts.vanilla-BnLQthxH.css';
4
+ import './../../../../assets/src/input/InputRoot.css.ts.vanilla-Zuc9dU8n.css';
5
5
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
6
6
 
7
- var root = recipeRuntime({base:[{flexDirection:'row',gap:'0'},'b8kp']});
7
+ var root = recipeRuntime({base:[{flexDirection:'row',gap:'0'},'_1i461uj']});
8
8
 
9
9
  export { root };
@@ -1,8 +1,8 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/kbd/Kbd.css.ts.vanilla-BWLxKhaq.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/kbd/Kbd.css.ts.vanilla-DYimwKhq.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var kbd = recipeRuntime({base:{alignItems:'center',color:'fg.secondary',display:'inline-flex',flexDirection:'row',fontFamily:'sans',gap:'2',whiteSpace:'nowrap'},variants:{variant:{outline:[{bg:'bg.secondary',border:'1',borderB:'2',borderColor:'border.secondary',px:'6',rounded:'sm'},'_1ldwtbh'],subtle:{}}}});
6
- var keys = recipeRuntime({base:'l7ejyp'});
5
+ var kbd = recipeRuntime({base:{alignItems:'center',color:'fg.secondary',display:'inline-flex',flexDirection:'row',fontFamily:'sans',gap:'2',whiteSpace:'nowrap'},variants:{variant:{outline:[{bg:'bg.secondary',border:'1',borderB:'2',borderColor:'border.secondary',px:'6',rounded:'sm'},'zf3o5d'],subtle:{}}}});
6
+ var keys = recipeRuntime({base:'edg5lb'});
7
7
 
8
8
  export { kbd, keys };
@@ -1,10 +1,10 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/avatar/AvatarGroup.css.ts.vanilla-CtEnSPR9.css';
3
- import './../../../../assets/src/button/ButtonRoot.css.ts.vanilla-wenJY4iS.css';
4
- import './../../../../assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-DG7o3Whh.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/avatar/AvatarGroup.css.ts.vanilla-QKro-bni.css';
3
+ import './../../../../assets/src/button/ButtonRoot.css.ts.vanilla-WHx-aTZW.css';
4
+ import './../../../../assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-VZEhd-tN.css';
5
5
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
6
6
 
7
- var button = recipeRuntime({base:[{justifyContent:'space-between'},'_1d23h7g']});
7
+ var button = recipeRuntime({base:[{justifyContent:'space-between'},'_16ei0q6']});
8
8
  var content = recipeRuntime({base:[{fontSize:'sm',transition:'all'}],variants:{filled:{false:{h:'0'},true:{h:'16'}}}});
9
9
  var label = recipeRuntime({base:[{color:'fg.secondary',cursor:'pointer',maxW:'full',transition:'all'}],variants:{filled:{false:{fontSize:'md'},true:{fontSize:'xs'}}}});
10
10
 
@@ -1,9 +1,9 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
2
 
3
3
  var axiom = 'optiaxiom';
4
4
  var base = 'optiaxiom.base';
5
- var components = 'optiaxiom.rgvlm2';
6
- var reset = 'optiaxiom.n30gg1';
5
+ var components = 'optiaxiom.uavbkh';
6
+ var reset = 'optiaxiom._1jt75cv';
7
7
  var theme = 'optiaxiom.theme';
8
8
 
9
9
  export { axiom, base, components, reset, theme };
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/layout/Layouts.css.ts.vanilla-DaN63rMj.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/layout/Layouts.css.ts.vanilla-Bz6n9eU3.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var layout = recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'u43gs0']});
5
+ var layout = recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'v7jbk6']});
6
6
 
7
7
  export { layout };
@@ -1,8 +1,8 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/link/Link.css.ts.vanilla-CmN0ZtWP.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/link/Link.css.ts.vanilla-CYIWxhhi.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var icon = recipeRuntime({base:[{display:'inline-flex',ml:'4'},'_13p68xx']});
6
- var link = recipeRuntime({base:['p05lqq','_8g3cdx'],variants:{appearance:{'default':'v32nvs',inverse:'_1dsm2cc',subtle:'_13izy59'}}});
5
+ var icon = recipeRuntime({base:[{display:'inline-flex',ml:'4'},'_1y5jxuf']});
6
+ var link = recipeRuntime({base:['pjsgj3','ezms3d'],variants:{appearance:{'default':'_2kcoqv',inverse:'_6x1ekb',subtle:'_14ut6ci'}}});
7
7
 
8
8
  export { icon, link };
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-EchCEMZS.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-CFpVOqf6.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var checkbox = recipeRuntime({base:[{display:'inline-flex'},'_19vdpzq']});
5
+ var checkbox = recipeRuntime({base:[{display:'inline-flex'},'lu5qkk']});
6
6
 
7
7
  export { checkbox };
@@ -1,9 +1,9 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/listbox/ListboxItem.css.ts.vanilla-Db6pUIcT.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/listbox/ListboxItem.css.ts.vanilla-CwCJTzX5.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var description = recipeRuntime({base:[{fontSize:'sm'},'_35eawe']});
6
- var item = recipeRuntime({base:[{flexDirection:'row',fontSize:'md',gap:'8',p:'8',rounded:'sm',transition:'colors'},'_45efk1'],variants:{intent:{danger:'_7xv4xd',neutral:'_9cszuu'}}});
7
- var title = recipeRuntime({base:[{alignItems:'center',flexDirection:'row',gap:'8'},'_1ofj5p']});
5
+ var description = recipeRuntime({base:[{fontSize:'sm'},'_1e6cay6']});
6
+ var item = recipeRuntime({base:[{flexDirection:'row',fontSize:'md',gap:'8',p:'8',rounded:'sm',transition:'colors'},'_1vwa25a'],variants:{intent:{danger:'_1wn6zbp',neutral:'_7f4pwg'}}});
7
+ var title = recipeRuntime({base:[{alignItems:'center',flexDirection:'row',gap:'8'},'_1x1pxg7']});
8
8
 
9
9
  export { description, item, title };
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-BjZns1yA.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-CCcfuo_W.css';
3
3
  import { recipeRuntime } from '../vanilla-extract/recipeRuntime.js';
4
4
 
5
- var indicator = recipeRuntime({base:['_10mv2lf'],variants:{active:{false:{},true:'na60m9'}}});
5
+ var indicator = recipeRuntime({base:['_1was5dg'],variants:{active:{false:{},true:'_1dhe9a2'}}});
6
6
 
7
7
  export { indicator };
@@ -45,7 +45,7 @@ const ListboxItemized = forwardRef(
45
45
  children: /* @__PURE__ */ jsx(Skeleton, {})
46
46
  },
47
47
  item
48
- )) }) : typeof children === "function" ? items.length > VIRTUALIZE_THRESHOLD ? /* @__PURE__ */ jsx(ListboxVirtualized, { highlightedItem, items, children }) : items.length > 0 ? items.map((item, index) => /* @__PURE__ */ jsx(Fragment$1, { children: children(item, index) }, itemToKey(item))) : /* @__PURE__ */ jsx(ListboxEmpty, { children: empty }) : items.length > 0 ? children : /* @__PURE__ */ jsx(ListboxEmpty, { children: empty })
48
+ )) }) : typeof children === "function" ? items.length > VIRTUALIZE_THRESHOLD ? /* @__PURE__ */ jsx(ListboxVirtualized, { highlightedItem, items, children }) : items.length > 0 ? items.map((item, index) => /* @__PURE__ */ jsx(Fragment$1, { children: children(item, index, items[index - 1]) }, itemToKey(item))) : /* @__PURE__ */ jsx(ListboxEmpty, { children: empty }) : items.length > 0 ? children : /* @__PURE__ */ jsx(ListboxEmpty, { children: empty })
49
49
  }
50
50
  );
51
51
  }
@@ -73,7 +73,11 @@ const ListboxVirtualized = forwardRef(({ children, highlightedItem, items, ...pr
73
73
  {
74
74
  "data-index": virtualItem.index,
75
75
  ref: rowVirtualizer.measureElement,
76
- children: children(items[virtualItem.index], virtualItem.index)
76
+ children: children(
77
+ items[virtualItem.index],
78
+ virtualItem.index,
79
+ items[virtualItem.index - 1]
80
+ )
77
81
  },
78
82
  virtualItem.key
79
83
  ))
@@ -0,0 +1,16 @@
1
+ const shouldShowSeparator = (group, prevItem) => {
2
+ const isFirstItem = !prevItem;
3
+ return !isFirstItem && !isSameGroup(group, prevItem?.group) && (group?.separator || prevItem?.group?.separator);
4
+ };
5
+ const shouldShowGroup = (group, prevItem) => {
6
+ const show = !isSameGroup(group, prevItem?.group);
7
+ return show && !!group && !group.hidden;
8
+ };
9
+ const isSameGroup = (group1, group2) => {
10
+ if (group1 === group2) {
11
+ return true;
12
+ }
13
+ return group1?.label === group2?.label;
14
+ };
15
+
16
+ export { shouldShowGroup, shouldShowSeparator };
@@ -51,7 +51,7 @@ function Menu({
51
51
  onChange: onInputValueChange,
52
52
  prop: inputValueProp
53
53
  });
54
- const [activeItems, setActiveItems] = useState();
54
+ const [activeItemStack, setActiveItemStack] = useState([]);
55
55
  const [subMenuOpen, setSubMenuOpen] = useState(false);
56
56
  useEffect(() => {
57
57
  if (inputValue && size === "sm") {
@@ -65,7 +65,7 @@ function Menu({
65
65
  }
66
66
  } else {
67
67
  if (open) {
68
- setActiveItems(void 0);
68
+ setActiveItemStack([]);
69
69
  }
70
70
  }
71
71
  }, [open, size]);
@@ -77,8 +77,8 @@ function Menu({
77
77
  "\u2026",
78
78
  ""
79
79
  ) : resolveItemProperty(option.label, { inputValue })
80
- })) : activeItems ?? optionsProp,
81
- [activeItems, inputValue, optionsProp, size]
80
+ })) : activeItemStack.length ? activeItemStack[activeItemStack.length - 1] : optionsProp,
81
+ [activeItemStack, inputValue, optionsProp, size]
82
82
  );
83
83
  const hasSelectableItem = useMemo(
84
84
  () => options.filter((item) => "selected" in item).length > options.length / 2,
@@ -103,10 +103,11 @@ function Menu({
103
103
  if (size === "lg") {
104
104
  setInputVisible(inputDefaultVisibleRef.current);
105
105
  }
106
- }, [activeItems, size]);
106
+ }, [activeItemStack, size]);
107
107
  return /* @__PURE__ */ jsx(Comp, { onOpenChange: setOpen, open, children: /* @__PURE__ */ jsx(
108
108
  MenuProvider,
109
109
  {
110
+ activeItemStack,
110
111
  inputRef,
111
112
  inputVisible,
112
113
  onSelect: (item, { dismiss }) => {
@@ -117,6 +118,7 @@ function Menu({
117
118
  },
118
119
  open,
119
120
  placeholder,
121
+ setActiveItemStack,
120
122
  setOpen,
121
123
  size,
122
124
  children: /* @__PURE__ */ jsx(
@@ -130,7 +132,10 @@ function Menu({
130
132
  onSelect: (item, { dismiss }) => {
131
133
  if (item.subOptions?.length) {
132
134
  if (size === "lg") {
133
- setActiveItems(item.subOptions);
135
+ setActiveItemStack((stack) => [
136
+ ...stack ?? [],
137
+ item.subOptions ?? []
138
+ ]);
134
139
  } else {
135
140
  setSubMenuOpen(true);
136
141
  }
@@ -141,7 +146,7 @@ function Menu({
141
146
  }
142
147
  }
143
148
  },
144
- open,
149
+ open: open ? activeItemStack.length + 1 : false,
145
150
  options,
146
151
  ...props,
147
152
  children: /* @__PURE__ */ jsx(
@@ -1,6 +1,7 @@
1
1
  "use client";
2
2
  import { jsxs, 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
6
  import { useFieldContext } from '../field/FieldContext.js';
6
7
  import { VisuallyHidden } from '../visually-hidden/VisuallyHidden.js';
@@ -12,9 +13,11 @@ import { MenuPopoverContent } from './MenuPopoverContent.js';
12
13
  import { useMenuSubContext } from './MenuSubContext.js';
13
14
 
14
15
  const MenuContent = forwardRef(
15
- ({ children, onPointerDown, ...props }, ref) => {
16
+ ({ children, onPointerDown, ...props }, outerRef) => {
17
+ const innerRef = useRef(null);
18
+ const ref = useComposedRefs(innerRef, outerRef);
16
19
  const { labelId } = useFieldContext("@optiaxiom/react/MenuContent");
17
- const { inputVisible, placeholder, size } = useMenuContext(
20
+ const { activeItemStack, inputVisible, placeholder, size } = useMenuContext(
18
21
  "@optiaxiom/react/MenuContent"
19
22
  );
20
23
  const { empty, loading } = useCommandContext(
@@ -22,6 +25,11 @@ const MenuContent = forwardRef(
22
25
  );
23
26
  const { setOpen } = useMenuSubContext("@optiaxiom/react/MenuContent");
24
27
  const Comp = size === "sm" ? MenuPopoverContent : MenuDialogContent;
28
+ useEffect(() => {
29
+ innerRef.current?.animate([{ scale: 1 }, { scale: 0.97 }, { scale: 1 }], {
30
+ duration: 150
31
+ });
32
+ }, [activeItemStack]);
25
33
  return /* @__PURE__ */ jsxs(
26
34
  Comp,
27
35
  {
@@ -21,8 +21,8 @@ const MenuDialogContent = forwardRef(
21
21
  ...props
22
22
  }, ref) => {
23
23
  return /* @__PURE__ */ jsxs(DialogContent, { ref, transitionType: "pop", ...props, children: [
24
- /* @__PURE__ */ jsx(VisuallyHidden, { tabIndex: -1, children: /* @__PURE__ */ jsx(DialogHeader, { children: ariaLabel }) }),
25
- children
24
+ children,
25
+ /* @__PURE__ */ jsx(VisuallyHidden, { tabIndex: -1, children: /* @__PURE__ */ jsx(DialogHeader, { children: ariaLabel }) })
26
26
  ] });
27
27
  }
28
28
  );
@@ -1,7 +1,7 @@
1
- import './../../../../assets/src/layers/layers.css.ts.vanilla-Dzoqz3a_.css';
2
- import './../../../../assets/src/menu/MenuInput.css.ts.vanilla-6hAHuZDQ.css';
1
+ import './../../../../assets/src/layers/layers.css.ts.vanilla-DgDqM1Tx.css';
2
+ import './../../../../assets/src/menu/MenuInput.css.ts.vanilla-Dc7Ke7O0.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'},'_9z3r59']}}});
5
+ var input = recipeRuntime({variants:{size:{sm:{m:'4'},lg:[{border:'0',borderB:'1',borderColor:'border.secondary',rounded:'none'},'qh2ew4']}}});
6
6
 
7
7
  export { input };
@@ -14,11 +14,13 @@ import { useMenuContext } from './MenuContext.js';
14
14
  import { input } from './MenuInput-css.js';
15
15
 
16
16
  const MenuInput = forwardRef(
17
- ({ className, ...props }, outerRef) => {
18
- const { inputRef, open, size } = useMenuContext(
17
+ ({ className, onKeyDown, ...props }, outerRef) => {
18
+ const { inputRef, open, setActiveItemStack, size } = useMenuContext(
19
+ "@optiaxiom/react/MenuInput"
20
+ );
21
+ const { downshift, highlightedItem } = useCommandContext(
19
22
  "@optiaxiom/react/MenuInput"
20
23
  );
21
- const { downshift } = useCommandContext("@optiaxiom/react/MenuInput");
22
24
  const ref = useComposedRefs(inputRef, outerRef);
23
25
  const [minWidth, setMinWidth] = useState(160);
24
26
  const containerRef = useRef(null);
@@ -34,6 +36,27 @@ const MenuInput = forwardRef(
34
36
  return /* @__PURE__ */ jsx(Box, { ref: containerRef, style: { minWidth }, children: /* @__PURE__ */ jsx(
35
37
  CommandInput,
36
38
  {
39
+ onKeyDown: (event) => {
40
+ onKeyDown?.(event);
41
+ if (event.defaultPrevented) {
42
+ return;
43
+ }
44
+ if (!(event.target instanceof HTMLInputElement)) {
45
+ return;
46
+ }
47
+ if (event.target.value) {
48
+ return;
49
+ }
50
+ if (event.key === "Backspace" && size === "lg") {
51
+ event.preventDefault();
52
+ setActiveItemStack(
53
+ (stack) => stack.length ? stack.slice(0, -1) : stack
54
+ );
55
+ } else if (event.key === "ArrowRight" && highlightedItem?.subOptions?.length && size === "sm") {
56
+ event.preventDefault();
57
+ downshift.selectItem(highlightedItem);
58
+ }
59
+ },
37
60
  ref,
38
61
  size: size === "sm" ? "md" : "xl",
39
62
  ...input({ size }, className),
@@ -18,6 +18,7 @@ import { ListboxLabel } from '../listbox/ListboxLabel.js';
18
18
  import '../listbox/ListboxRadioItem.js';
19
19
  import { ListboxSeparator } from '../listbox/ListboxSeparator.js';
20
20
  import '../listbox/ListboxSwitchItem.js';
21
+ import { shouldShowSeparator, shouldShowGroup } from '../listbox/utils.js';
21
22
  import { Tooltip } from '../tooltip/Tooltip.js';
22
23
  import '../tooltip/TooltipContent.js';
23
24
  import '../tooltip/TooltipProvider.js';
@@ -32,29 +33,13 @@ import { MenuSub } from './MenuSub.js';
32
33
  const MenuListbox = forwardRef(
33
34
  ({ children, ...props }, ref) => {
34
35
  const { size } = useMenuContext("@optiaxiom/react/MenuListbox");
35
- let isFirstItem = true;
36
- let lastGroup = void 0;
37
- const shouldShowSeparator = (group) => {
38
- const show = !isFirstItem;
39
- isFirstItem = false;
40
- return show && group !== lastGroup && (group?.separator || lastGroup?.separator);
41
- };
42
- const shouldShowGroup = (group) => {
43
- const show = group !== lastGroup;
44
- lastGroup = group;
45
- return show && !!group && !group?.hidden;
46
- };
47
- return /* @__PURE__ */ jsx(CommandListbox, { ref, ...props, children: children ?? ((item, index) => {
48
- if (index === 0) {
49
- isFirstItem = true;
50
- lastGroup = void 0;
51
- }
36
+ return /* @__PURE__ */ jsx(CommandListbox, { ref, ...props, children: children ?? ((item, index, prevItem) => {
52
37
  const Comp = item.subOptions?.length ? size === "sm" ? MenuSub : MenuItem : "selected" in item ? item.multi ? MenuCheckboxItem : MenuRadioItem : MenuItem;
53
38
  const group = item.group;
54
39
  return /* @__PURE__ */ jsxs(Fragment, { children: [
55
- shouldShowSeparator(group) && /* @__PURE__ */ jsx(ListboxSeparator, {}),
56
- shouldShowGroup(group) && /* @__PURE__ */ jsx(ListboxLabel, { children: group.name }),
57
- Comp === MenuSub ? /* @__PURE__ */ jsx(Comp, { item }) : /* @__PURE__ */ jsx(Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsx(Comp, { item }) })
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 }) })
58
43
  ] });
59
44
  }) });
60
45
  }
@@ -17,16 +17,19 @@ const MenuPopoverContent = forwardRef(({ style, ...props }, outerRef) => {
17
17
  if (!open || props.side === "top") {
18
18
  return;
19
19
  }
20
- requestAnimationFrame(() => {
21
- if (innerRef.current?.dataset.side !== "top") {
22
- return;
20
+ const observer = new ResizeObserver((entries) => {
21
+ for (const entry of entries) {
22
+ setMinHeight(entry.borderBoxSize[0].blockSize);
23
23
  }
24
- const rect = innerRef.current.getBoundingClientRect();
25
- if (rect.height > minHeight) {
26
- setMinHeight(rect.height);
24
+ });
25
+ setMinHeight(0);
26
+ requestAnimationFrame(() => {
27
+ if (innerRef.current?.dataset.side === "top") {
28
+ observer.observe(innerRef.current);
27
29
  }
28
30
  });
29
- }, [minHeight, open, props.side]);
31
+ return () => observer.disconnect();
32
+ }, [open, props.side]);
30
33
  return /* @__PURE__ */ jsx(
31
34
  PopoverContent,
32
35
  {
@@ -15,12 +15,12 @@ import { MenuSubContent } from './MenuSubContent.js';
15
15
  import { useMenuSubContext } from './MenuSubContext.js';
16
16
  import { MenuSubTrigger } from './MenuSubTrigger.js';
17
17
 
18
- function MenuSub({ item }) {
18
+ function MenuSub({ index, item }) {
19
19
  const { highlightedItem } = useCommandContext("@optiaxiom/react/MenuSub");
20
20
  const { open } = useMenuSubContext("@optiaxiom/react/MenuSub");
21
21
  const contentRef = useRef(null);
22
22
  return /* @__PURE__ */ jsxs(Popover, { open: open && highlightedItem === item, children: [
23
- /* @__PURE__ */ jsx(Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsx(MenuSubTrigger, { contentRef, item }) }),
23
+ /* @__PURE__ */ jsx(Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsx(MenuSubTrigger, { contentRef, index, item }) }),
24
24
  /* @__PURE__ */ jsx(MenuSubContent, { item, ref: contentRef })
25
25
  ] });
26
26
  }
@@ -2,7 +2,7 @@
2
2
  import { jsx, jsxs } from 'react/jsx-runtime';
3
3
  import { forwardRef, useMemo, useRef, useState, useEffect } from 'react';
4
4
  import { Command } from '../command/Command.js';
5
- import { CommandInput } from '../command/CommandInput.js';
5
+ import '../command/CommandInput.js';
6
6
  import '../command/CommandItem.js';
7
7
  import '../command/CommandListbox.js';
8
8
  import { useCommandContext } from '../command/CommandContext.js';
@@ -15,6 +15,7 @@ import { VisuallyHidden } from '../visually-hidden/VisuallyHidden.js';
15
15
  import { useMenuContext } from './MenuContext.js';
16
16
  import { MenuListbox } from './MenuListbox.js';
17
17
  import { useMenuSubContext, MenuSubProvider } from './MenuSubContext.js';
18
+ import { MenuSubInput } from './MenuSubInput.js';
18
19
 
19
20
  const MenuSubContent = forwardRef(
20
21
  ({ align = "start", children, item, side = "right", ...props }, ref) => {
@@ -25,11 +26,7 @@ const MenuSubContent = forwardRef(
25
26
  const { setInputValue } = useCommandContext(
26
27
  "@optiaxiom/react/MenuSubContent"
27
28
  );
28
- const {
29
- inputRef: parentInputRef,
30
- open: parentSubMenuOpen,
31
- setOpen
32
- } = useMenuSubContext("@optiaxiom/react/MenuSubContent");
29
+ const { inputRef: parentInputRef, open: parentSubMenuOpen } = useMenuSubContext("@optiaxiom/react/MenuSubContent");
33
30
  const { open } = usePopoverContext("@optiaxiom/react/MenuSubContent");
34
31
  const inputRef = useRef(null);
35
32
  const [subMenuOpen, setSubMenuOpen] = useState(false);
@@ -101,22 +98,7 @@ const MenuSubContent = forwardRef(
101
98
  open: true,
102
99
  options,
103
100
  children: [
104
- /* @__PURE__ */ jsx(VisuallyHidden, { disabled: item.subOptionsInputVisible, children: /* @__PURE__ */ jsx(
105
- CommandInput,
106
- {
107
- m: "4",
108
- onKeyDown: (event) => {
109
- if (!(event.target instanceof HTMLInputElement)) {
110
- return;
111
- }
112
- if (!event.target.value && event.key === "ArrowLeft") {
113
- event.preventDefault();
114
- setOpen(false);
115
- }
116
- },
117
- ref: inputRef
118
- }
119
- ) }),
101
+ /* @__PURE__ */ jsx(VisuallyHidden, { disabled: item.subOptionsInputVisible, children: /* @__PURE__ */ jsx(MenuSubInput, { ref: inputRef }) }),
120
102
  /* @__PURE__ */ jsx(
121
103
  MenuSubProvider,
122
104
  {
@@ -0,0 +1,48 @@
1
+ "use client";
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef } from 'react';
4
+ import '../command/Command.js';
5
+ import { CommandInput } from '../command/CommandInput.js';
6
+ import '../command/CommandItem.js';
7
+ import '../command/CommandListbox.js';
8
+ import { useCommandContext } from '../command/CommandContext.js';
9
+ import { useMenuSubContext } from './MenuSubContext.js';
10
+
11
+ const MenuSubInput = forwardRef(
12
+ ({ onKeyDown, ...props }, ref) => {
13
+ const { downshift, highlightedItem } = useCommandContext(
14
+ "@optiaxiom/react/MenuSubInput"
15
+ );
16
+ const { setOpen } = useMenuSubContext("@optiaxiom/react/MenuSubInput");
17
+ return /* @__PURE__ */ jsx(
18
+ CommandInput,
19
+ {
20
+ m: "4",
21
+ onKeyDown: (event) => {
22
+ onKeyDown?.(event);
23
+ if (event.defaultPrevented) {
24
+ return;
25
+ }
26
+ if (!(event.target instanceof HTMLInputElement)) {
27
+ return;
28
+ }
29
+ if (event.target.value) {
30
+ return;
31
+ }
32
+ if (event.key === "ArrowLeft") {
33
+ event.preventDefault();
34
+ setOpen(false);
35
+ } else if (event.key === "ArrowRight" && highlightedItem?.subOptions?.length) {
36
+ event.preventDefault();
37
+ downshift.selectItem(highlightedItem);
38
+ }
39
+ },
40
+ ref,
41
+ ...props
42
+ }
43
+ );
44
+ }
45
+ );
46
+ MenuSubInput.displayName = "@optiaxiom/react/MenuSubInput";
47
+
48
+ export { MenuSubInput };