@optiaxiom/react 1.5.12 → 1.6.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 (426) hide show
  1. package/dist/{Link-6qDl0Vlu.d.ts → MenuTrigger-DvwPuq1e.d.ts} +207 -100
  2. package/dist/cjs/{IconMagnifyingGlass-D8vtCTv8.js → Calendar-DeFvN9Q7.js} +3004 -1925
  3. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-DoI8PDtf.css +22 -0
  4. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-tHSYOlOC.css +15 -0
  5. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B37jkGGv.css +30 -0
  6. package/dist/cjs/assets/src/alert-dialog/{AlertDialogFooter.css.ts.vanilla-s53b04Z2.css → AlertDialogFooter.css.ts.vanilla-Bkudqqbi.css} +3 -3
  7. package/dist/cjs/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-CQGpoENI.css +7 -0
  8. package/dist/cjs/assets/src/avatar/{Avatar.css.ts.vanilla-BGhTiWoU.css → Avatar.css.ts.vanilla-Bst3QQKP.css} +18 -18
  9. package/dist/cjs/assets/src/backdrop/{Backdrop.css.ts.vanilla-DiBXDt_-.css → Backdrop.css.ts.vanilla-CALA90nz.css} +3 -3
  10. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-2rYZVOjE.css +48 -0
  11. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-BNj--UTE.css +6 -0
  12. package/dist/{esm/assets/src/box/Box.css.ts.vanilla-jA6luvmM.css → cjs/assets/src/box/Box.css.ts.vanilla-C9Jp-afl.css} +21 -21
  13. package/dist/cjs/assets/src/breadcrumb/{Breadcrumb.css.ts.vanilla-uXvMcI8t.css → Breadcrumb.css.ts.vanilla-CBTQaPXV.css} +6 -6
  14. package/dist/{esm/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-FhBweSZC.css → cjs/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-BUzEect5.css} +4 -4
  15. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-Bxh_ULm6.css +9 -0
  16. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-NRfGpLC5.css +160 -0
  17. package/dist/cjs/assets/src/calendar/Calendar.css.ts.vanilla-BQyE5PQC.css +6 -0
  18. package/dist/{esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-RZa63GHY.css → cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-CjFgIpFk.css} +24 -24
  19. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-DXXPZEhx.css +6 -0
  20. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-CRkpsZDY.css +6 -0
  21. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-Hs5Pkofj.css +8 -0
  22. package/dist/cjs/assets/src/card/{CardCheckbox.css.ts.vanilla-B3KEO8ug.css → CardCheckbox.css.ts.vanilla-DCAAYZXK.css} +4 -4
  23. package/dist/cjs/assets/src/card/CardHeader.css.ts.vanilla-luJQig6j.css +15 -0
  24. package/dist/{esm/assets/src/card/CardPreview.css.ts.vanilla-BCx-HNHX.css → cjs/assets/src/card/CardPreview.css.ts.vanilla-CucF3b8H.css} +4 -4
  25. package/dist/cjs/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-Do3aVO0U.css → CheckboxControl.css.ts.vanilla-COjoWpaY.css} +7 -7
  26. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-UD6OaKqV.css +10 -0
  27. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-Dd1TuHZH.css +34 -0
  28. package/dist/{esm/assets/src/data-table/DataTableBody.css.ts.vanilla-B26OoBSh.css → cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-D9-b9UaP.css} +24 -24
  29. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-CLiftSrp.css +6 -0
  30. package/dist/{esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-Ct6nicA8.css → cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-pFZ2WwSF.css} +9 -9
  31. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-Bv1GEist.css +15 -0
  32. package/dist/{esm/assets/src/aside/Aside.css.ts.vanilla-D8I9LruE.css → cjs/assets/src/details-panel/DetailsPanel.css.ts.vanilla-DbyfuQZW.css} +4 -4
  33. package/dist/cjs/assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-B9PeAY2B.css +7 -0
  34. package/dist/cjs/assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-0tNwGZhH.css +8 -0
  35. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-DOGGV28d.css +4 -0
  36. package/dist/{esm/assets/src/dialog/DialogContent.css.ts.vanilla-CRMcitky.css → cjs/assets/src/dialog/DialogContent.css.ts.vanilla-D-n9WxBM.css} +14 -14
  37. package/dist/cjs/assets/src/dialog/DialogFooter.css.ts.vanilla-XnfJ6MTr.css +7 -0
  38. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-DgNn_B8T.css +19 -0
  39. package/dist/{esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-DT81rVtB.css → cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-BnRQ3Stq.css} +6 -6
  40. package/dist/cjs/assets/src/disclosure/{DisclosureTrigger.css.ts.vanilla-Cp3Y3AhR.css → DisclosureTrigger.css.ts.vanilla-eRkTu0_A.css} +7 -7
  41. package/dist/cjs/assets/src/file-upload/FileUpload.css.ts.vanilla-DLM3eS_3.css +6 -0
  42. package/dist/cjs/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-DB6nbjFD.css +20 -0
  43. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-BMG9b1M6.css +7 -0
  44. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-BIuep_l7.css +36 -0
  45. package/dist/cjs/assets/src/inline-input/{InlineInput.css.ts.vanilla-CppDo8A5.css → InlineInput.css.ts.vanilla-N7NyR1Nc.css} +4 -4
  46. package/dist/{esm/assets/src/input/InputControl.css.ts.vanilla-BSTjbqi6.css → cjs/assets/src/input/InputControl.css.ts.vanilla-hAFf3Mfl.css} +8 -8
  47. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-CSO4MjY1.css +70 -0
  48. package/dist/cjs/assets/src/kbd/{Kbd.css.ts.vanilla-DVoNXiqH.css → Kbd.css.ts.vanilla-CUmTjqaB.css} +3 -3
  49. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-BZZSLcmA.css +7 -0
  50. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-HAbbH3QD.css +1 -0
  51. package/dist/cjs/assets/src/layout/Layout.css.ts.vanilla-C5ApP3eM.css +14 -0
  52. package/dist/cjs/assets/src/layout/LayoutContent.css.ts.vanilla-CuBfvR2E.css +6 -0
  53. package/dist/cjs/assets/src/link/{Link.css.ts.vanilla-DyhepTCa.css → Link.css.ts.vanilla-FmnqKb8N.css} +13 -13
  54. package/dist/cjs/assets/src/listbox/{ListboxCheckboxItem.css.ts.vanilla-DLC3uNn3.css → ListboxCheckboxItem.css.ts.vanilla-BApYZm7e.css} +4 -4
  55. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-C6BcrKLW.css +49 -0
  56. package/dist/cjs/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla--JWwyvlJ.css → ListboxItemIndicator.css.ts.vanilla-D1JMNazk.css} +4 -4
  57. package/dist/cjs/assets/src/menu/MenuDialogContent.css.ts.vanilla-iZtIHQzP.css +7 -0
  58. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-5hlCSUOo.css +6 -0
  59. package/dist/cjs/assets/src/modal/{ModalListbox.css.ts.vanilla-bFaHbs2i.css → ModalListbox.css.ts.vanilla-Drfxjxm8.css} +13 -13
  60. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-WfgO_ucI.css +6 -0
  61. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-CziLxn_G.css +9 -0
  62. package/dist/cjs/assets/src/nav/{NavItem.css.ts.vanilla-M4eCoxUx.css → NavItem.css.ts.vanilla-Cnw5Dhu0.css} +13 -13
  63. package/dist/{esm/assets/src/pagination/Pagination.css.ts.vanilla--zPaPkSP.css → cjs/assets/src/pagination/Pagination.css.ts.vanilla-CNar55xI.css} +5 -5
  64. package/dist/cjs/assets/src/pill/Pill.css.ts.vanilla-B1Gt2jvi.css +21 -0
  65. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-DveT9nDh.css +6 -0
  66. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-DYPaAnvs.css +13 -0
  67. package/dist/cjs/assets/src/resizable/ResizableHandle.css.ts.vanilla-DTSlJbIc.css +19 -0
  68. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-CPVSJvqn.css +10 -0
  69. package/dist/{esm/assets/src/separator/Separator.css.ts.vanilla-C5usFFY5.css → cjs/assets/src/separator/Separator.css.ts.vanilla-pSAuV9dj.css} +8 -8
  70. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-DBrAoXht.css +6 -0
  71. package/dist/cjs/assets/src/sortable/SortableHandle.css.ts.vanilla-C5TcdosY.css +6 -0
  72. package/dist/{esm/assets/src/sortable/SortableItem.css.ts.vanilla-av6KdyJG.css → cjs/assets/src/sortable/SortableItem.css.ts.vanilla-a92ljo5W.css} +6 -6
  73. package/dist/cjs/assets/src/spinner/{Spinner.css.ts.vanilla-DaCr50R7.css → Spinner.css.ts.vanilla-CQyBRIHZ.css} +4 -4
  74. package/dist/cjs/assets/src/sprinkles/{properties.css.ts.vanilla-BCr4StHC.css → properties.css.ts.vanilla-BwCBaoVS.css} +722 -722
  75. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-BLNq06ol.css +6 -0
  76. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-Br1qBOsE.css +45 -0
  77. package/dist/{esm/assets/src/table/Table.css.ts.vanilla-B5fXVTLH.css → cjs/assets/src/table/Table.css.ts.vanilla-mnBYb5mY.css} +6 -6
  78. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-DrVhKZm9.css +6 -0
  79. package/dist/{esm/assets/src/table/TableCell.css.ts.vanilla-BZhgU46E.css → cjs/assets/src/table/TableCell.css.ts.vanilla-C_6bLy2n.css} +6 -6
  80. package/dist/cjs/assets/src/table/TableHeader.css.ts.vanilla-BycUL2yY.css +8 -0
  81. package/dist/{esm/assets/src/table/TableHeaderCell.css.ts.vanilla-BM0lcH63.css → cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-BPBrZX7v.css} +6 -6
  82. package/dist/cjs/assets/src/table/{TableRow.css.ts.vanilla-BvEQe29g.css → TableRow.css.ts.vanilla-CNo7CnFy.css} +8 -8
  83. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-CO0WvjpF.css +9 -0
  84. package/dist/cjs/assets/src/tabs/{TabsList.css.ts.vanilla-DG8LI6sU.css → TabsList.css.ts.vanilla-gt_-jlfb.css} +4 -4
  85. package/dist/cjs/assets/src/tabs/{TabsTrigger.css.ts.vanilla-BFCNQ5BZ.css → TabsTrigger.css.ts.vanilla-Ck1h6t5b.css} +10 -10
  86. package/dist/cjs/assets/src/text/{Text.css.ts.vanilla-CBt1-R9H.css → Text.css.ts.vanilla-DdHpTRFW.css} +8 -8
  87. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-XqCm5uQV.css +34 -0
  88. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-DLXJty7N.css +104 -0
  89. package/dist/cjs/assets/src/toast/{ToastProvider.css.ts.vanilla-BX_FmYj8.css → ToastProvider.css.ts.vanilla-DyQdcVOA.css} +9 -9
  90. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-KCnQEoQ7.css +25 -0
  91. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CZ7-b0Xo.css +10 -0
  92. package/dist/{esm/assets/src/transition/Transition.css.ts.vanilla-fwzto6JB.css → cjs/assets/src/transition/Transition.css.ts.vanilla-DKv9Opyw.css} +12 -12
  93. package/dist/cjs/index.js +802 -464
  94. package/dist/cjs/unstable.js +564 -1604
  95. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-DoI8PDtf.css +22 -0
  96. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-tHSYOlOC.css +15 -0
  97. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B37jkGGv.css +30 -0
  98. package/dist/esm/assets/src/alert-dialog/{AlertDialogFooter.css.ts.vanilla-s53b04Z2.css → AlertDialogFooter.css.ts.vanilla-Bkudqqbi.css} +3 -3
  99. package/dist/esm/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-CQGpoENI.css +7 -0
  100. package/dist/esm/assets/src/avatar/{Avatar.css.ts.vanilla-BGhTiWoU.css → Avatar.css.ts.vanilla-Bst3QQKP.css} +18 -18
  101. package/dist/esm/assets/src/backdrop/{Backdrop.css.ts.vanilla-DiBXDt_-.css → Backdrop.css.ts.vanilla-CALA90nz.css} +3 -3
  102. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-2rYZVOjE.css +48 -0
  103. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-BNj--UTE.css +6 -0
  104. package/dist/{cjs/assets/src/box/Box.css.ts.vanilla-jA6luvmM.css → esm/assets/src/box/Box.css.ts.vanilla-C9Jp-afl.css} +21 -21
  105. package/dist/esm/assets/src/breadcrumb/{Breadcrumb.css.ts.vanilla-uXvMcI8t.css → Breadcrumb.css.ts.vanilla-CBTQaPXV.css} +6 -6
  106. package/dist/{cjs/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-FhBweSZC.css → esm/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-BUzEect5.css} +4 -4
  107. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-Bxh_ULm6.css +9 -0
  108. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-NRfGpLC5.css +160 -0
  109. package/dist/esm/assets/src/calendar/Calendar.css.ts.vanilla-BQyE5PQC.css +6 -0
  110. package/dist/{cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-RZa63GHY.css → esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-CjFgIpFk.css} +24 -24
  111. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-DXXPZEhx.css +6 -0
  112. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-CRkpsZDY.css +6 -0
  113. package/dist/esm/assets/src/card/Card.css.ts.vanilla-Hs5Pkofj.css +8 -0
  114. package/dist/esm/assets/src/card/{CardCheckbox.css.ts.vanilla-B3KEO8ug.css → CardCheckbox.css.ts.vanilla-DCAAYZXK.css} +4 -4
  115. package/dist/esm/assets/src/card/CardHeader.css.ts.vanilla-luJQig6j.css +15 -0
  116. package/dist/{cjs/assets/src/card/CardPreview.css.ts.vanilla-BCx-HNHX.css → esm/assets/src/card/CardPreview.css.ts.vanilla-CucF3b8H.css} +4 -4
  117. package/dist/esm/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-Do3aVO0U.css → CheckboxControl.css.ts.vanilla-COjoWpaY.css} +7 -7
  118. package/dist/esm/assets/src/code/Code.css.ts.vanilla-UD6OaKqV.css +10 -0
  119. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-Dd1TuHZH.css +34 -0
  120. package/dist/{cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-B26OoBSh.css → esm/assets/src/data-table/DataTableBody.css.ts.vanilla-D9-b9UaP.css} +24 -24
  121. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-CLiftSrp.css +6 -0
  122. package/dist/{cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-Ct6nicA8.css → esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-pFZ2WwSF.css} +9 -9
  123. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-Bv1GEist.css +15 -0
  124. package/dist/{cjs/assets/src/aside/Aside.css.ts.vanilla-D8I9LruE.css → esm/assets/src/details-panel/DetailsPanel.css.ts.vanilla-DbyfuQZW.css} +4 -4
  125. package/dist/esm/assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-B9PeAY2B.css +7 -0
  126. package/dist/esm/assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-0tNwGZhH.css +8 -0
  127. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-DOGGV28d.css +4 -0
  128. package/dist/{cjs/assets/src/dialog/DialogContent.css.ts.vanilla-CRMcitky.css → esm/assets/src/dialog/DialogContent.css.ts.vanilla-D-n9WxBM.css} +14 -14
  129. package/dist/esm/assets/src/dialog/DialogFooter.css.ts.vanilla-XnfJ6MTr.css +7 -0
  130. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-DgNn_B8T.css +19 -0
  131. package/dist/{cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-DT81rVtB.css → esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-BnRQ3Stq.css} +6 -6
  132. package/dist/esm/assets/src/disclosure/{DisclosureTrigger.css.ts.vanilla-Cp3Y3AhR.css → DisclosureTrigger.css.ts.vanilla-eRkTu0_A.css} +7 -7
  133. package/dist/esm/assets/src/file-upload/FileUpload.css.ts.vanilla-DLM3eS_3.css +6 -0
  134. package/dist/esm/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-DB6nbjFD.css +20 -0
  135. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-BMG9b1M6.css +7 -0
  136. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-BIuep_l7.css +36 -0
  137. package/dist/esm/assets/src/inline-input/{InlineInput.css.ts.vanilla-CppDo8A5.css → InlineInput.css.ts.vanilla-N7NyR1Nc.css} +4 -4
  138. package/dist/{cjs/assets/src/input/InputControl.css.ts.vanilla-BSTjbqi6.css → esm/assets/src/input/InputControl.css.ts.vanilla-hAFf3Mfl.css} +8 -8
  139. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-CSO4MjY1.css +70 -0
  140. package/dist/esm/assets/src/kbd/{Kbd.css.ts.vanilla-DVoNXiqH.css → Kbd.css.ts.vanilla-CUmTjqaB.css} +3 -3
  141. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-BZZSLcmA.css +7 -0
  142. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-HAbbH3QD.css +1 -0
  143. package/dist/esm/assets/src/layout/Layout.css.ts.vanilla-C5ApP3eM.css +14 -0
  144. package/dist/esm/assets/src/layout/LayoutContent.css.ts.vanilla-CuBfvR2E.css +6 -0
  145. package/dist/esm/assets/src/link/{Link.css.ts.vanilla-DyhepTCa.css → Link.css.ts.vanilla-FmnqKb8N.css} +13 -13
  146. package/dist/esm/assets/src/listbox/{ListboxCheckboxItem.css.ts.vanilla-DLC3uNn3.css → ListboxCheckboxItem.css.ts.vanilla-BApYZm7e.css} +4 -4
  147. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-C6BcrKLW.css +49 -0
  148. package/dist/esm/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla--JWwyvlJ.css → ListboxItemIndicator.css.ts.vanilla-D1JMNazk.css} +4 -4
  149. package/dist/esm/assets/src/menu/MenuDialogContent.css.ts.vanilla-iZtIHQzP.css +7 -0
  150. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-5hlCSUOo.css +6 -0
  151. package/dist/esm/assets/src/modal/{ModalListbox.css.ts.vanilla-bFaHbs2i.css → ModalListbox.css.ts.vanilla-Drfxjxm8.css} +13 -13
  152. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-WfgO_ucI.css +6 -0
  153. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-CziLxn_G.css +9 -0
  154. package/dist/esm/assets/src/nav/{NavItem.css.ts.vanilla-M4eCoxUx.css → NavItem.css.ts.vanilla-Cnw5Dhu0.css} +13 -13
  155. package/dist/{cjs/assets/src/pagination/Pagination.css.ts.vanilla--zPaPkSP.css → esm/assets/src/pagination/Pagination.css.ts.vanilla-CNar55xI.css} +5 -5
  156. package/dist/esm/assets/src/pill/Pill.css.ts.vanilla-B1Gt2jvi.css +21 -0
  157. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-DveT9nDh.css +6 -0
  158. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-DYPaAnvs.css +13 -0
  159. package/dist/esm/assets/src/resizable/ResizableHandle.css.ts.vanilla-DTSlJbIc.css +19 -0
  160. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-CPVSJvqn.css +10 -0
  161. package/dist/{cjs/assets/src/separator/Separator.css.ts.vanilla-C5usFFY5.css → esm/assets/src/separator/Separator.css.ts.vanilla-pSAuV9dj.css} +8 -8
  162. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-DBrAoXht.css +6 -0
  163. package/dist/esm/assets/src/sortable/SortableHandle.css.ts.vanilla-C5TcdosY.css +6 -0
  164. package/dist/{cjs/assets/src/sortable/SortableItem.css.ts.vanilla-av6KdyJG.css → esm/assets/src/sortable/SortableItem.css.ts.vanilla-a92ljo5W.css} +6 -6
  165. package/dist/esm/assets/src/spinner/{Spinner.css.ts.vanilla-DaCr50R7.css → Spinner.css.ts.vanilla-CQyBRIHZ.css} +4 -4
  166. package/dist/esm/assets/src/sprinkles/{properties.css.ts.vanilla-BCr4StHC.css → properties.css.ts.vanilla-BwCBaoVS.css} +722 -722
  167. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-BLNq06ol.css +6 -0
  168. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-Br1qBOsE.css +45 -0
  169. package/dist/{cjs/assets/src/table/Table.css.ts.vanilla-B5fXVTLH.css → esm/assets/src/table/Table.css.ts.vanilla-mnBYb5mY.css} +6 -6
  170. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-DrVhKZm9.css +6 -0
  171. package/dist/{cjs/assets/src/table/TableCell.css.ts.vanilla-BZhgU46E.css → esm/assets/src/table/TableCell.css.ts.vanilla-C_6bLy2n.css} +6 -6
  172. package/dist/esm/assets/src/table/TableHeader.css.ts.vanilla-BycUL2yY.css +8 -0
  173. package/dist/{cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-BM0lcH63.css → esm/assets/src/table/TableHeaderCell.css.ts.vanilla-BPBrZX7v.css} +6 -6
  174. package/dist/esm/assets/src/table/{TableRow.css.ts.vanilla-BvEQe29g.css → TableRow.css.ts.vanilla-CNo7CnFy.css} +8 -8
  175. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-CO0WvjpF.css +9 -0
  176. package/dist/esm/assets/src/tabs/{TabsList.css.ts.vanilla-DG8LI6sU.css → TabsList.css.ts.vanilla-gt_-jlfb.css} +4 -4
  177. package/dist/esm/assets/src/tabs/{TabsTrigger.css.ts.vanilla-BFCNQ5BZ.css → TabsTrigger.css.ts.vanilla-Ck1h6t5b.css} +10 -10
  178. package/dist/esm/assets/src/text/{Text.css.ts.vanilla-CBt1-R9H.css → Text.css.ts.vanilla-DdHpTRFW.css} +8 -8
  179. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-XqCm5uQV.css +34 -0
  180. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-DLXJty7N.css +104 -0
  181. package/dist/esm/assets/src/toast/{ToastProvider.css.ts.vanilla-BX_FmYj8.css → ToastProvider.css.ts.vanilla-DyQdcVOA.css} +9 -9
  182. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-KCnQEoQ7.css +25 -0
  183. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CZ7-b0Xo.css +10 -0
  184. package/dist/{cjs/assets/src/transition/Transition.css.ts.vanilla-fwzto6JB.css → esm/assets/src/transition/Transition.css.ts.vanilla-DKv9Opyw.css} +12 -12
  185. package/dist/esm/index.js +12 -0
  186. package/dist/esm/packages/react/package.json.js +1 -1
  187. package/dist/esm/packages/react/src/actions/ActionsContent-css.js +4 -4
  188. package/dist/esm/packages/react/src/actions/ActionsRoot-css.js +3 -3
  189. package/dist/esm/packages/react/src/alert/Alert-css.js +4 -4
  190. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent-css.js +6 -6
  191. package/dist/esm/packages/react/src/alert-dialog/AlertDialogFooter-css.js +3 -3
  192. package/dist/esm/packages/react/src/alert-dialog/AlertDialogHeader-css.js +3 -3
  193. package/dist/esm/packages/react/src/alert-dialog/AlertDialogHeader.js +1 -2
  194. package/dist/esm/packages/react/src/avatar/Avatar-css.js +4 -4
  195. package/dist/esm/packages/react/src/avatar/AvatarGroup-css.js +3 -3
  196. package/dist/esm/packages/react/src/backdrop/Backdrop-css.js +3 -3
  197. package/dist/esm/packages/react/src/badge/Badge-css.js +3 -3
  198. package/dist/esm/packages/react/src/banner/Banner-css.js +3 -3
  199. package/dist/esm/packages/react/src/box/Box-css.js +4 -4
  200. package/dist/esm/packages/react/src/breadcrumb/Breadcrumb-css.js +4 -4
  201. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbNode-css.js +3 -3
  202. package/dist/esm/packages/react/src/button/ButtonGroup-css.js +3 -3
  203. package/dist/esm/packages/react/src/button/ButtonLabel.js +2 -2
  204. package/dist/esm/packages/react/src/button/ButtonLoadable-css.js +5 -5
  205. package/dist/esm/packages/react/src/button/ButtonRoot-css.js +5 -5
  206. package/dist/esm/packages/react/src/calendar/Calendar-css.js +3 -3
  207. package/dist/esm/packages/react/src/calendar/CalendarDayButton-css.js +4 -4
  208. package/dist/esm/packages/react/src/calendar/CalendarMonths-css.js +3 -3
  209. package/dist/esm/packages/react/src/calendar/CalendarNav-css.js +3 -3
  210. package/dist/esm/packages/react/src/card/Card-css.js +4 -4
  211. package/dist/esm/packages/react/src/card/CardCheckbox-css.js +3 -3
  212. package/dist/esm/packages/react/src/card/CardHeader-css.js +5 -5
  213. package/dist/esm/packages/react/src/card/CardImage-css.js +1 -1
  214. package/dist/esm/packages/react/src/card/CardPreview-css.js +4 -4
  215. package/dist/esm/packages/react/src/checkbox/CheckboxControl-css.js +6 -6
  216. package/dist/esm/packages/react/src/code/Code-css.js +3 -3
  217. package/dist/esm/packages/react/src/cover/Cover-css.js +3 -3
  218. package/dist/esm/packages/react/src/data-table/DataTableBody-css.js +10 -10
  219. package/dist/esm/packages/react/src/data-table/DataTableFooter-css.js +3 -3
  220. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell-css.js +5 -5
  221. package/dist/esm/packages/react/src/date-input/DateInput-css.js +6 -6
  222. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContent-css.js +1 -1
  223. package/dist/esm/packages/react/src/details-panel/DetailsPanel-css.js +7 -0
  224. package/dist/esm/packages/react/src/{aside/Aside.js → details-panel/DetailsPanel.js} +7 -7
  225. package/dist/esm/packages/react/src/details-panel/DetailsPanelBody.js +11 -0
  226. package/dist/esm/packages/react/src/details-panel/DetailsPanelContext.js +6 -0
  227. package/dist/esm/packages/react/src/details-panel/DetailsPanelFooter-css.js +7 -0
  228. package/dist/esm/packages/react/src/details-panel/DetailsPanelFooter.js +13 -0
  229. package/dist/esm/packages/react/src/details-panel/DetailsPanelHeader-css.js +7 -0
  230. package/dist/esm/packages/react/src/{aside/AsideHeader.js → details-panel/DetailsPanelHeader.js} +7 -7
  231. package/dist/esm/packages/react/src/dialog/DialogBody-css.js +3 -3
  232. package/dist/esm/packages/react/src/dialog/DialogContent-css.js +8 -8
  233. package/dist/esm/packages/react/src/dialog/DialogFooter-css.js +3 -3
  234. package/dist/esm/packages/react/src/dialog/DialogHeader-css.js +7 -7
  235. package/dist/esm/packages/react/src/disclosure/DisclosureContent-css.js +4 -4
  236. package/dist/esm/packages/react/src/disclosure/DisclosureTrigger-css.js +5 -5
  237. package/dist/esm/packages/react/src/file-upload/FileUpload-css.js +7 -0
  238. package/dist/esm/packages/react/src/file-upload/FileUpload.js +8 -11
  239. package/dist/esm/packages/react/src/file-upload/FileUploadDropzone-css.js +3 -3
  240. package/dist/esm/packages/react/src/file-upload/FileUploadDropzone.js +52 -29
  241. package/dist/esm/packages/react/src/file-upload/FileUploadTrigger.js +36 -0
  242. package/dist/esm/packages/react/src/file-upload/useDraggingOverBody.js +22 -0
  243. package/dist/esm/packages/react/src/file-upload/useFileUploadTrigger.js +10 -0
  244. package/dist/esm/packages/react/src/highlight/Highlight-css.js +3 -3
  245. package/dist/esm/packages/react/src/icons/IconPlusSolid.js +20 -0
  246. package/dist/esm/packages/react/src/indicator/Indicator-css.js +5 -5
  247. package/dist/esm/packages/react/src/inline-input/InlineInput-css.js +4 -4
  248. package/dist/esm/packages/react/src/input/Input-css.js +1 -1
  249. package/dist/esm/packages/react/src/input/InputControl-css.js +3 -3
  250. package/dist/esm/packages/react/src/input/InputRoot-css.js +5 -5
  251. package/dist/esm/packages/react/src/kbd/Kbd-css.js +3 -3
  252. package/dist/esm/packages/react/src/label-menu-button/LabelMenuButton-css.js +5 -5
  253. package/dist/esm/packages/react/src/layers/layers-css.js +3 -3
  254. package/dist/esm/packages/react/src/layout/Layout-css.js +7 -0
  255. package/dist/esm/packages/react/src/layout/Layout.js +19 -19
  256. package/dist/esm/packages/react/src/layout/LayoutContent-css.js +7 -0
  257. package/dist/esm/packages/react/src/layout/LayoutContent.js +23 -0
  258. package/dist/esm/packages/react/src/link/Link-css.js +4 -4
  259. package/dist/esm/packages/react/src/listbox/ListboxCheckboxItem-css.js +3 -3
  260. package/dist/esm/packages/react/src/listbox/ListboxItem-css.js +5 -5
  261. package/dist/esm/packages/react/src/listbox/ListboxItemIndicator-css.js +3 -3
  262. package/dist/esm/packages/react/src/listbox/ListboxItemized.js +1 -1
  263. package/dist/esm/packages/react/src/menu/MenuDialogContent-css.js +3 -3
  264. package/dist/esm/packages/react/src/menu/MenuInput-css.js +3 -3
  265. package/dist/esm/packages/react/src/modal/ModalListbox-css.js +3 -3
  266. package/dist/esm/packages/react/src/nav/Nav-css.js +3 -3
  267. package/dist/esm/packages/react/src/nav/NavAccountItem-css.js +3 -3
  268. package/dist/esm/packages/react/src/nav/NavBody-css.js +1 -1
  269. package/dist/esm/packages/react/src/nav/NavItem-css.js +6 -6
  270. package/dist/esm/packages/react/src/pagination/Pagination-css.js +5 -5
  271. package/dist/esm/packages/react/src/paper/Paper-css.js +1 -1
  272. package/dist/esm/packages/react/src/pill/Pill-css.js +3 -3
  273. package/dist/esm/packages/react/src/pill/Pill.js +37 -7
  274. package/dist/esm/packages/react/src/pill/PillGroup.js +1 -1
  275. package/dist/esm/packages/react/src/pill-menu/PillMenu.js +93 -0
  276. package/dist/esm/packages/react/src/pill-menu/PillMenuContent.js +32 -0
  277. package/dist/esm/packages/react/src/pill-menu/PillMenuContext.js +6 -0
  278. package/dist/esm/packages/react/src/pill-menu/PillMenuImpl.js +45 -0
  279. package/dist/esm/packages/react/src/pill-menu/PillMenuPill.js +48 -0
  280. package/dist/esm/packages/react/src/pill-menu/PillMenuTrigger.js +46 -0
  281. package/dist/esm/packages/react/src/popover/PopoverAnchor.js +28 -3
  282. package/dist/esm/packages/react/src/progress/Progress-css.js +3 -3
  283. package/dist/esm/packages/react/src/radio/Radio-css.js +8 -8
  284. package/dist/esm/packages/react/src/resizable/ResizableHandle-css.js +4 -4
  285. package/dist/esm/packages/react/src/search-input/SearchInput-css.js +5 -5
  286. package/dist/esm/packages/react/src/segmented-control/SegmentedControlItem.js +2 -2
  287. package/dist/esm/packages/react/src/select/SelectContent.js +1 -1
  288. package/dist/esm/packages/react/src/select/SelectTrigger.js +8 -7
  289. package/dist/esm/packages/react/src/separator/Separator-css.js +3 -3
  290. package/dist/esm/packages/react/src/skeleton/Skeleton-css.js +3 -3
  291. package/dist/esm/packages/react/src/sortable/SortableHandle-css.js +3 -3
  292. package/dist/esm/packages/react/src/sortable/SortableItem-css.js +3 -3
  293. package/dist/esm/packages/react/src/spinner/Spinner-css.js +3 -3
  294. package/dist/esm/packages/react/src/sprinkles/properties-css.js +4 -4
  295. package/dist/esm/packages/react/src/sub-nav/SubNav-css.js +3 -3
  296. package/dist/esm/packages/react/src/switch/Switch-css.js +8 -8
  297. package/dist/esm/packages/react/src/table/Table-css.js +4 -4
  298. package/dist/esm/packages/react/src/table/TableBody-css.js +3 -3
  299. package/dist/esm/packages/react/src/table/TableCell-css.js +4 -4
  300. package/dist/esm/packages/react/src/table/TableHeader-css.js +3 -3
  301. package/dist/esm/packages/react/src/table/TableHeaderCell-css.js +4 -4
  302. package/dist/esm/packages/react/src/table/TableRow-css.js +3 -3
  303. package/dist/esm/packages/react/src/tabs/Tabs-css.js +3 -3
  304. package/dist/esm/packages/react/src/tabs/TabsList-css.js +3 -3
  305. package/dist/esm/packages/react/src/tabs/TabsTrigger-css.js +4 -4
  306. package/dist/esm/packages/react/src/text/Text-css.js +3 -3
  307. package/dist/esm/packages/react/src/textarea/TextareaAutosize-css.js +5 -5
  308. package/dist/esm/packages/react/src/toast/Toast-css.js +6 -6
  309. package/dist/esm/packages/react/src/toast/ToastProvider-css.js +3 -3
  310. package/dist/esm/packages/react/src/toggle-input/ToggleInput-css.js +4 -4
  311. package/dist/esm/packages/react/src/toggle-input/ToggleInputControl-css.js +5 -5
  312. package/dist/esm/packages/react/src/toggle-input/ToggleInputHiddenInput-css.js +3 -3
  313. package/dist/esm/packages/react/src/tooltip/Tooltip.js +1 -1
  314. package/dist/esm/packages/react/src/tooltip/TooltipContent-css.js +1 -1
  315. package/dist/esm/packages/react/src/transition/Transition-css.js +3 -3
  316. package/dist/esm/unstable.js +10 -16
  317. package/dist/index.d.ts +307 -10
  318. package/dist/unstable.d.ts +182 -467
  319. package/package.json +2 -1
  320. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-DTr9eRBE.css +0 -22
  321. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-B7h_yFuM.css +0 -9
  322. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B4feTMLC.css +0 -30
  323. package/dist/cjs/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-56qu1R0j.css +0 -7
  324. package/dist/cjs/assets/src/aside/AsideFooter.css.ts.vanilla-y8yDI0fr.css +0 -7
  325. package/dist/cjs/assets/src/aside/AsideHeader.css.ts.vanilla-CejzEB0N.css +0 -8
  326. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-bZMSkRwm.css +0 -48
  327. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-jZ9ac4Uz.css +0 -6
  328. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-CYepgMdX.css +0 -9
  329. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-BG5to307.css +0 -163
  330. package/dist/cjs/assets/src/calendar/Calendar.css.ts.vanilla-kMJUc7NJ.css +0 -6
  331. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-Br8fuywW.css +0 -6
  332. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-CwDIoSC_.css +0 -6
  333. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-MbnD7gBb.css +0 -8
  334. package/dist/cjs/assets/src/card/CardHeader.css.ts.vanilla-OdMImZCz.css +0 -15
  335. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-Ck8rEd-O.css +0 -10
  336. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-a4tx-RQ7.css +0 -34
  337. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-DxDLw-Ui.css +0 -6
  338. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-kWm-j_lk.css +0 -15
  339. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-K3l0nH6T.css +0 -4
  340. package/dist/cjs/assets/src/dialog/DialogFooter.css.ts.vanilla-CNlvDxcq.css +0 -7
  341. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-CdzDxpmh.css +0 -19
  342. package/dist/cjs/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-B7ehcGlv.css +0 -19
  343. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-DHb3EFeq.css +0 -7
  344. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-BAYk07S8.css +0 -36
  345. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-DPGbXYA8.css +0 -70
  346. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-CPYMqtT2.css +0 -7
  347. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-BpEx1Goo.css +0 -1
  348. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-C554AxO9.css +0 -7
  349. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-DWVzcUNa.css +0 -49
  350. package/dist/cjs/assets/src/menu/MenuDialogContent.css.ts.vanilla-BWnEzB-t.css +0 -7
  351. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-DMBizVVP.css +0 -6
  352. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-ByjIMN9O.css +0 -6
  353. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-BziyUkfn.css +0 -9
  354. package/dist/cjs/assets/src/pill/Pill.css.ts.vanilla-D3C3mWkw.css +0 -27
  355. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-9-3QEZYO.css +0 -6
  356. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-Dh4mAtuW.css +0 -13
  357. package/dist/cjs/assets/src/resizable/ResizableHandle.css.ts.vanilla-BNNhK72V.css +0 -19
  358. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-CIizjMmy.css +0 -10
  359. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-8phcKv_U.css +0 -6
  360. package/dist/cjs/assets/src/sortable/SortableHandle.css.ts.vanilla-BmPyewiH.css +0 -6
  361. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-C_zxxYQa.css +0 -6
  362. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-BmPqyXXI.css +0 -45
  363. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-YEb1Og4p.css +0 -6
  364. package/dist/cjs/assets/src/table/TableHeader.css.ts.vanilla-B625b2V0.css +0 -8
  365. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-CIcsofMy.css +0 -9
  366. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DmZTbvW3.css +0 -34
  367. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-BE2UiRiM.css +0 -104
  368. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-C2jvsiCc.css +0 -25
  369. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-wVgUnaJz.css +0 -10
  370. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-DTr9eRBE.css +0 -22
  371. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-B7h_yFuM.css +0 -9
  372. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B4feTMLC.css +0 -30
  373. package/dist/esm/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-56qu1R0j.css +0 -7
  374. package/dist/esm/assets/src/aside/AsideFooter.css.ts.vanilla-y8yDI0fr.css +0 -7
  375. package/dist/esm/assets/src/aside/AsideHeader.css.ts.vanilla-CejzEB0N.css +0 -8
  376. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-bZMSkRwm.css +0 -48
  377. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-jZ9ac4Uz.css +0 -6
  378. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-CYepgMdX.css +0 -9
  379. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-BG5to307.css +0 -163
  380. package/dist/esm/assets/src/calendar/Calendar.css.ts.vanilla-kMJUc7NJ.css +0 -6
  381. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-Br8fuywW.css +0 -6
  382. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-CwDIoSC_.css +0 -6
  383. package/dist/esm/assets/src/card/Card.css.ts.vanilla-MbnD7gBb.css +0 -8
  384. package/dist/esm/assets/src/card/CardHeader.css.ts.vanilla-OdMImZCz.css +0 -15
  385. package/dist/esm/assets/src/code/Code.css.ts.vanilla-Ck8rEd-O.css +0 -10
  386. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-a4tx-RQ7.css +0 -34
  387. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-DxDLw-Ui.css +0 -6
  388. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-kWm-j_lk.css +0 -15
  389. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-K3l0nH6T.css +0 -4
  390. package/dist/esm/assets/src/dialog/DialogFooter.css.ts.vanilla-CNlvDxcq.css +0 -7
  391. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-CdzDxpmh.css +0 -19
  392. package/dist/esm/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-B7ehcGlv.css +0 -19
  393. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-DHb3EFeq.css +0 -7
  394. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-BAYk07S8.css +0 -36
  395. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-DPGbXYA8.css +0 -70
  396. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-CPYMqtT2.css +0 -7
  397. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-BpEx1Goo.css +0 -1
  398. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-C554AxO9.css +0 -7
  399. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-DWVzcUNa.css +0 -49
  400. package/dist/esm/assets/src/menu/MenuDialogContent.css.ts.vanilla-BWnEzB-t.css +0 -7
  401. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-DMBizVVP.css +0 -6
  402. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-ByjIMN9O.css +0 -6
  403. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-BziyUkfn.css +0 -9
  404. package/dist/esm/assets/src/pill/Pill.css.ts.vanilla-D3C3mWkw.css +0 -27
  405. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-9-3QEZYO.css +0 -6
  406. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-Dh4mAtuW.css +0 -13
  407. package/dist/esm/assets/src/resizable/ResizableHandle.css.ts.vanilla-BNNhK72V.css +0 -19
  408. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-CIizjMmy.css +0 -10
  409. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-8phcKv_U.css +0 -6
  410. package/dist/esm/assets/src/sortable/SortableHandle.css.ts.vanilla-BmPyewiH.css +0 -6
  411. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-C_zxxYQa.css +0 -6
  412. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-BmPqyXXI.css +0 -45
  413. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-YEb1Og4p.css +0 -6
  414. package/dist/esm/assets/src/table/TableHeader.css.ts.vanilla-B625b2V0.css +0 -8
  415. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-CIcsofMy.css +0 -9
  416. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DmZTbvW3.css +0 -34
  417. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-BE2UiRiM.css +0 -104
  418. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-C2jvsiCc.css +0 -25
  419. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-wVgUnaJz.css +0 -10
  420. package/dist/esm/packages/react/src/aside/Aside-css.js +0 -7
  421. package/dist/esm/packages/react/src/aside/AsideBody.js +0 -13
  422. package/dist/esm/packages/react/src/aside/AsideContext.js +0 -6
  423. package/dist/esm/packages/react/src/aside/AsideFooter-css.js +0 -7
  424. package/dist/esm/packages/react/src/aside/AsideFooter.js +0 -15
  425. package/dist/esm/packages/react/src/aside/AsideHeader-css.js +0 -7
  426. package/dist/esm/packages/react/src/layout/Layouts-css.js +0 -7
@@ -1,97 +1,93 @@
1
1
  "use client";
2
2
  'use strict';
3
3
 
4
+ var Calendar = require('./Calendar-DeFvN9Q7.js');
4
5
  var jsxRuntime = require('react/jsx-runtime');
5
6
  var reactId = require('@radix-ui/react-id');
6
7
  var reactSlot = require('@radix-ui/react-slot');
7
8
  var React = require('react');
8
- var IconMagnifyingGlass = require('./IconMagnifyingGlass-D8vtCTv8.js');
9
- require('./assets/src/layers/layers.css.ts.vanilla-BpEx1Goo.css');
10
- require('./assets/src/aside/Aside.css.ts.vanilla-D8I9LruE.css');
9
+ require('./assets/src/layers/layers.css.ts.vanilla-HAbbH3QD.css');
10
+ require('./assets/src/details-panel/DetailsPanel.css.ts.vanilla-DbyfuQZW.css');
11
11
  var reactContext = require('@radix-ui/react-context');
12
- require('./assets/src/aside/AsideFooter.css.ts.vanilla-y8yDI0fr.css');
13
- require('./assets/src/aside/AsideHeader.css.ts.vanilla-CejzEB0N.css');
14
- var reactUseControllableState = require('@radix-ui/react-use-controllable-state');
15
- var downshift = require('downshift');
16
- var reactComposeRefs = require('@radix-ui/react-compose-refs');
17
- var clsx = require('clsx');
18
- require('./assets/src/menu/MenuDialogContent.css.ts.vanilla-BWnEzB-t.css');
19
- require('./assets/src/menu/MenuInput.css.ts.vanilla-DMBizVVP.css');
20
- require('./assets/src/breadcrumb/Breadcrumb.css.ts.vanilla-uXvMcI8t.css');
21
- require('./assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-FhBweSZC.css');
22
- require('./assets/src/cover/Cover.css.ts.vanilla-a4tx-RQ7.css');
23
- require('./assets/src/card/Card.css.ts.vanilla-MbnD7gBb.css');
24
- require('./assets/src/card/CardCheckbox.css.ts.vanilla-B3KEO8ug.css');
25
- require('./assets/src/card/CardHeader.css.ts.vanilla-OdMImZCz.css');
26
- require('./assets/src/card/CardPreview.css.ts.vanilla-BCx-HNHX.css');
12
+ require('./assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-B9PeAY2B.css');
13
+ require('./assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-0tNwGZhH.css');
27
14
  var reactDropzone = require('react-dropzone');
28
- require('./assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-B7ehcGlv.css');
29
- require('./assets/src/highlight/Highlight.css.ts.vanilla-DHb3EFeq.css');
30
- require('./assets/src/inline-input/InlineInput.css.ts.vanilla-CppDo8A5.css');
15
+ require('./assets/src/file-upload/FileUpload.css.ts.vanilla-DLM3eS_3.css');
16
+ require('./assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-DB6nbjFD.css');
17
+ require('./assets/src/highlight/Highlight.css.ts.vanilla-BMG9b1M6.css');
18
+ var reactUseControllableState = require('@radix-ui/react-use-controllable-state');
19
+ require('./assets/src/inline-input/InlineInput.css.ts.vanilla-N7NyR1Nc.css');
31
20
  var ResizablePrimitive = require('react-resizable-panels');
32
- require('./assets/src/resizable/ResizableHandle.css.ts.vanilla-BNNhK72V.css');
33
- require('./assets/src/layout/Layouts.css.ts.vanilla-C554AxO9.css');
34
- require('./assets/src/pill/Pill.css.ts.vanilla-D3C3mWkw.css');
21
+ require('./assets/src/resizable/ResizableHandle.css.ts.vanilla-DTSlJbIc.css');
22
+ require('./assets/src/layout/Layout.css.ts.vanilla-C5ApP3eM.css');
23
+ require('./assets/src/layout/LayoutContent.css.ts.vanilla-CuBfvR2E.css');
24
+ require('./assets/src/pill/Pill.css.ts.vanilla-B1Gt2jvi.css');
25
+ var reactComposeRefs = require('@radix-ui/react-compose-refs');
26
+ var RadixRovingFocus = require('@radix-ui/react-roving-focus');
35
27
  var helpers = require('@dnd-kit/helpers');
36
28
  var react = require('@dnd-kit/react');
37
- require('./assets/src/sortable/SortableHandle.css.ts.vanilla-BmPyewiH.css');
29
+ require('./assets/src/sortable/SortableHandle.css.ts.vanilla-C5TcdosY.css');
38
30
  var sortable = require('@dnd-kit/react/sortable');
39
- require('./assets/src/sortable/SortableItem.css.ts.vanilla-av6KdyJG.css');
40
- require('./assets/src/dialog/DialogBody.css.ts.vanilla-K3l0nH6T.css');
41
- require('./assets/src/actions/ActionsContent.css.ts.vanilla-DTr9eRBE.css');
42
- require('./assets/src/table/Table.css.ts.vanilla-B5fXVTLH.css');
43
- require('./assets/src/table/TableBody.css.ts.vanilla-YEb1Og4p.css');
44
- require('./assets/src/table/TableRow.css.ts.vanilla-BvEQe29g.css');
45
- require('./assets/src/table/TableCell.css.ts.vanilla-BZhgU46E.css');
46
- require('./assets/src/table/TableHeader.css.ts.vanilla-B625b2V0.css');
47
- require('./assets/src/table/TableHeaderCell.css.ts.vanilla-BM0lcH63.css');
48
- require('./assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-Ct6nicA8.css');
49
- require('react-day-picker');
31
+ require('./assets/src/sortable/SortableItem.css.ts.vanilla-a92ljo5W.css');
32
+ require('clsx');
33
+ require('./assets/src/menu/MenuDialogContent.css.ts.vanilla-iZtIHQzP.css');
34
+ require('downshift');
35
+ require('./assets/src/input/InputControl.css.ts.vanilla-hAFf3Mfl.css');
36
+ require('./assets/src/dialog/DialogBody.css.ts.vanilla-DOGGV28d.css');
37
+ require('./assets/src/input/InputRoot.css.ts.vanilla-CSO4MjY1.css');
38
+ require('./assets/src/menu/MenuInput.css.ts.vanilla-5hlCSUOo.css');
39
+ require('@radix-ui/react-dialog');
40
+ require('./assets/src/dialog/DialogBody.css.ts.vanilla-DOGGV28d.css');
41
+ require('@vanilla-extract/dynamic');
42
+ require('./assets/src/backdrop/Backdrop.css.ts.vanilla-CALA90nz.css');
43
+ require('./assets/src/dialog/DialogContent.css.ts.vanilla-D-n9WxBM.css');
44
+ require('./assets/src/dialog/DialogFooter.css.ts.vanilla-XnfJ6MTr.css');
45
+ require('./assets/src/dialog/DialogHeader.css.ts.vanilla-DgNn_B8T.css');
46
+ require('@radix-ui/react-popover');
50
47
  require('@radix-ui/react-popper');
48
+ require('./assets/src/dialog/DialogBody.css.ts.vanilla-DOGGV28d.css');
49
+ require('./assets/src/actions/ActionsContent.css.ts.vanilla-DoI8PDtf.css');
50
+ require('./assets/src/cover/Cover.css.ts.vanilla-Dd1TuHZH.css');
51
+ require('./assets/src/table/Table.css.ts.vanilla-mnBYb5mY.css');
52
+ require('./assets/src/table/TableBody.css.ts.vanilla-DrVhKZm9.css');
53
+ require('./assets/src/table/TableRow.css.ts.vanilla-CNo7CnFy.css');
54
+ require('./assets/src/table/TableCell.css.ts.vanilla-C_6bLy2n.css');
55
+ require('./assets/src/table/TableHeader.css.ts.vanilla-BycUL2yY.css');
56
+ require('./assets/src/table/TableHeaderCell.css.ts.vanilla-BPBrZX7v.css');
57
+ require('./assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-pFZ2WwSF.css');
58
+ require('react-day-picker');
59
+ require('@optiaxiom/globals/fonts');
60
+ require('./assets/src/sprinkles/properties.css.ts.vanilla-BwCBaoVS.css');
61
+ require('./assets/src/box/Box.css.ts.vanilla-C9Jp-afl.css');
51
62
  require('@optiaxiom/globals');
52
- require('@radix-ui/react-tooltip');
53
- require('./assets/src/calendar/Calendar.css.ts.vanilla-kMJUc7NJ.css');
54
- require('./assets/src/calendar/CalendarDayButton.css.ts.vanilla-RZa63GHY.css');
55
- require('./assets/src/calendar/CalendarMonths.css.ts.vanilla-Br8fuywW.css');
56
- require('./assets/src/calendar/CalendarNav.css.ts.vanilla-CwDIoSC_.css');
57
- require('./assets/src/input/InputControl.css.ts.vanilla-BSTjbqi6.css');
58
- require('./assets/src/dialog/DialogBody.css.ts.vanilla-K3l0nH6T.css');
59
- require('./assets/src/input/InputRoot.css.ts.vanilla-DPGbXYA8.css');
60
- require('@radix-ui/react-popover');
61
- require('./assets/src/dialog/DialogBody.css.ts.vanilla-K3l0nH6T.css');
62
- require('./assets/src/toggle-input/ToggleInput.css.ts.vanilla-C2jvsiCc.css');
63
- require('./assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-wVgUnaJz.css');
64
- require('./assets/src/checkbox/CheckboxControl.css.ts.vanilla-Do3aVO0U.css');
65
- require('./assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-DLC3uNn3.css');
66
- require('./assets/src/listbox/ListboxItem.css.ts.vanilla-DWVzcUNa.css');
67
- require('./assets/src/listbox/ListboxItemIndicator.css.ts.vanilla--JWwyvlJ.css');
68
- require('./assets/src/skeleton/Skeleton.css.ts.vanilla-8phcKv_U.css');
63
+ require('@radix-ui/react-visually-hidden');
64
+ require('./assets/src/dialog/DialogBody.css.ts.vanilla-DOGGV28d.css');
65
+ require('./assets/src/toggle-input/ToggleInput.css.ts.vanilla-KCnQEoQ7.css');
66
+ require('./assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CZ7-b0Xo.css');
67
+ require('./assets/src/checkbox/CheckboxControl.css.ts.vanilla-COjoWpaY.css');
68
+ require('./assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-BApYZm7e.css');
69
+ require('./assets/src/text/Text.css.ts.vanilla-DdHpTRFW.css');
70
+ require('./assets/src/listbox/ListboxItem.css.ts.vanilla-C6BcrKLW.css');
71
+ require('./assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-D1JMNazk.css');
72
+ require('./assets/src/skeleton/Skeleton.css.ts.vanilla-DBrAoXht.css');
69
73
  require('@tanstack/react-virtual');
70
74
  require('@radix-ui/react-separator');
71
- require('./assets/src/separator/Separator.css.ts.vanilla-C5usFFY5.css');
72
- require('./assets/src/switch/Switch.css.ts.vanilla-BmPqyXXI.css');
73
- require('./assets/src/modal/ModalListbox.css.ts.vanilla-bFaHbs2i.css');
74
- require('@radix-ui/react-dialog');
75
- require('./assets/src/dialog/DialogBody.css.ts.vanilla-K3l0nH6T.css');
76
- require('@vanilla-extract/dynamic');
77
- require('./assets/src/backdrop/Backdrop.css.ts.vanilla-DiBXDt_-.css');
75
+ require('./assets/src/separator/Separator.css.ts.vanilla-pSAuV9dj.css');
76
+ require('./assets/src/switch/Switch.css.ts.vanilla-Br1qBOsE.css');
78
77
  require('@radix-ui/react-dismissable-layer');
79
78
  require('@radix-ui/react-focus-guards');
80
79
  require('react-remove-scroll');
80
+ require('./assets/src/transition/Transition.css.ts.vanilla-DKv9Opyw.css');
81
+ require('./assets/src/modal/ModalListbox.css.ts.vanilla-Drfxjxm8.css');
81
82
  require('@radix-ui/react-portal');
82
- require('./assets/src/dialog/DialogContent.css.ts.vanilla-CRMcitky.css');
83
- require('./assets/src/dialog/DialogFooter.css.ts.vanilla-CNlvDxcq.css');
84
- require('./assets/src/text/Text.css.ts.vanilla-CBt1-R9H.css');
85
- require('@radix-ui/react-visually-hidden');
86
- require('./assets/src/dialog/DialogHeader.css.ts.vanilla-CdzDxpmh.css');
87
- require('./assets/src/button/ButtonRoot.css.ts.vanilla-BG5to307.css');
88
- require('./assets/src/button/ButtonLoadable.css.ts.vanilla-CYepgMdX.css');
89
- require('./assets/src/spinner/Spinner.css.ts.vanilla-DaCr50R7.css');
90
- require('./assets/src/transition/Transition.css.ts.vanilla-fwzto6JB.css');
91
- require('@optiaxiom/globals/fonts');
92
- require('./assets/src/sprinkles/properties.css.ts.vanilla-BCr4StHC.css');
93
- require('./assets/src/box/Box.css.ts.vanilla-jA6luvmM.css');
94
- require('./assets/src/link/Link.css.ts.vanilla-DyhepTCa.css');
83
+ require('@radix-ui/react-tooltip');
84
+ require('./assets/src/button/ButtonRoot.css.ts.vanilla-NRfGpLC5.css');
85
+ require('./assets/src/button/ButtonLoadable.css.ts.vanilla-Bxh_ULm6.css');
86
+ require('./assets/src/spinner/Spinner.css.ts.vanilla-CQyBRIHZ.css');
87
+ require('./assets/src/calendar/Calendar.css.ts.vanilla-BQyE5PQC.css');
88
+ require('./assets/src/calendar/CalendarDayButton.css.ts.vanilla-CjFgIpFk.css');
89
+ require('./assets/src/calendar/CalendarMonths.css.ts.vanilla-DXXPZEhx.css');
90
+ require('./assets/src/calendar/CalendarNav.css.ts.vanilla-CRkpsZDY.css');
95
91
 
96
92
  function _interopNamespaceDefault(e) {
97
93
  var n = Object.create(null);
@@ -111,6 +107,7 @@ function _interopNamespaceDefault(e) {
111
107
  }
112
108
 
113
109
  var ResizablePrimitive__namespace = /*#__PURE__*/_interopNamespaceDefault(ResizablePrimitive);
110
+ var RadixRovingFocus__namespace = /*#__PURE__*/_interopNamespaceDefault(RadixRovingFocus);
114
111
 
115
112
  const keyNameMap = {
116
113
  " ": "space",
@@ -213,18 +210,18 @@ function useHotkeys(hotkeys, tagsToIgnore = ["INPUT", "TEXTAREA", "SELECT"], tri
213
210
  }, [hotkeys]);
214
211
  }
215
212
 
216
- var root$1 = IconMagnifyingGlass.recipeRuntime({base:[{bg:'bg.default',borderColor:'border.secondary',borderL:'1',color:'fg.default',display:'flex',flexDirection:'column',h:'full',overflow:'auto'},'_1i5ei9w']});
213
+ var root$1 = Calendar.recipeRuntime({base:[{bg:'bg.default',borderColor:'border.secondary',borderL:'1',color:'fg.default',display:'flex',flexDirection:'column',h:'full',overflow:'auto'},'_1urbzl2']});
217
214
 
218
- const [AsideProvider, useAsideContext] = reactContext.createContext("@optiaxiom/react/Aside");
215
+ const [DetailsPanelProvider, useDetailsPanelContext] = reactContext.createContext("@optiaxiom/react/DetailsPanel");
219
216
 
220
- const Slot$1 = reactSlot.createSlot("@optiaxiom/react/Aside");
221
- const Aside = React.forwardRef(
217
+ const Slot$2 = reactSlot.createSlot("@optiaxiom/react/DetailsPanel");
218
+ const DetailsPanel = React.forwardRef(
222
219
  ({ asChild, children, className, ...props }, ref) => {
223
- const Comp = asChild ? Slot$1 : "aside";
220
+ const Comp = asChild ? Slot$2 : "aside";
224
221
  const labelId = reactId.useId();
225
222
  const descriptionId = reactId.useId();
226
- return /* @__PURE__ */ jsxRuntime.jsx(AsideProvider, { descriptionId, labelId, children: /* @__PURE__ */ jsxRuntime.jsx(
227
- IconMagnifyingGlass.Box,
223
+ return /* @__PURE__ */ jsxRuntime.jsx(DetailsPanelProvider, { descriptionId, labelId, children: /* @__PURE__ */ jsxRuntime.jsx(
224
+ Calendar.Box,
228
225
  {
229
226
  "aria-describedby": descriptionId,
230
227
  "aria-labelledby": labelId,
@@ -237,35 +234,31 @@ const Aside = React.forwardRef(
237
234
  ) });
238
235
  }
239
236
  );
240
- Aside.displayName = "@optiaxiom/react/Aside";
237
+ DetailsPanel.displayName = "@optiaxiom/react/DetailsPanel";
241
238
 
242
- const AsideBody = React.forwardRef(
243
- ({ children, ...props }, ref) => {
244
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { flex: "1", fontSize: "md", px: "16", ref, ...props, children });
245
- }
246
- );
247
- AsideBody.displayName = "@optiaxiom/react/AsideBody";
239
+ const DetailsPanelBody = React.forwardRef(({ children, ...props }, ref) => {
240
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { flex: "1", fontSize: "md", px: "16", ref, ...props, children });
241
+ });
242
+ DetailsPanelBody.displayName = "@optiaxiom/react/DetailsPanelBody";
248
243
 
249
- var footer = IconMagnifyingGlass.recipeRuntime({base:[{bg:'bg.default',flexDirection:'row',gap:'8',p:'16',pt:'8'},'_1mf1fzo']});
244
+ var footer = Calendar.recipeRuntime({base:[{bg:'bg.default',flexDirection:'row',gap:'8',p:'16',pt:'8'},'lgo3ha']});
250
245
 
251
- const AsideFooter = React.forwardRef(
252
- ({ children, className, ...props }, ref) => {
253
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ButtonProvider, { size: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { ref, ...footer({}, className), ...props, children }) });
254
- }
255
- );
256
- AsideFooter.displayName = "@optiaxiom/react/AsideFooter";
246
+ const DetailsPanelFooter = React.forwardRef(({ children, className, ...props }, ref) => {
247
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.ButtonProvider, { size: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { ref, ...footer({}, className), ...props, children }) });
248
+ });
249
+ DetailsPanelFooter.displayName = "@optiaxiom/react/DetailsPanelFooter";
257
250
 
258
- var header$1 = IconMagnifyingGlass.recipeRuntime({base:[{bg:'bg.default',display:'flex',flexWrap:'wrap',p:'16',pb:'8'},'bxb7pp']});
251
+ var header = Calendar.recipeRuntime({base:[{bg:'bg.default',display:'flex',flexWrap:'wrap',p:'16',pb:'8'},'xxmqss']});
259
252
 
260
- const AsideHeader = React.forwardRef(
253
+ const DetailsPanelHeader = React.forwardRef(
261
254
  ({ addonAfter, addonBefore, children, className, description, ...props }, ref) => {
262
- const { descriptionId, labelId } = useAsideContext(
263
- "@optiaxiom/react/AsideHeader"
255
+ const { descriptionId, labelId } = useDetailsPanelContext(
256
+ "@optiaxiom/react/DetailsPanelHeader"
264
257
  );
265
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ButtonProvider, { size: "sm", children: /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { ref, ...header$1({}, className), ...props, children: [
266
- addonBefore && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { flexDirection: "row", gap: "8", children: addonBefore }),
258
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.ButtonProvider, { size: "sm", children: /* @__PURE__ */ jsxRuntime.jsxs(Calendar.Box, { ref, ...header({}, className), ...props, children: [
259
+ addonBefore && /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { flexDirection: "row", gap: "8", children: addonBefore }),
267
260
  /* @__PURE__ */ jsxRuntime.jsx(
268
- IconMagnifyingGlass.Heading,
261
+ Calendar.Heading,
269
262
  {
270
263
  flex: "1",
271
264
  fontSize: "lg",
@@ -275,1502 +268,206 @@ const AsideHeader = React.forwardRef(
275
268
  children
276
269
  }
277
270
  ),
278
- addonAfter && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { flexDirection: "row", gap: "8", children: addonAfter }),
271
+ addonAfter && /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { flexDirection: "row", gap: "8", children: addonAfter }),
279
272
  description && /* @__PURE__ */ jsxRuntime.jsx(
280
- IconMagnifyingGlass.Text,
273
+ Calendar.Text,
281
274
  {
282
275
  asChild: true,
283
276
  color: "fg.secondary",
284
277
  fontSize: "sm",
285
278
  id: descriptionId,
286
279
  w: "full",
287
- children: IconMagnifyingGlass.fallbackSpan(description)
280
+ children: Calendar.fallbackSpan(description)
288
281
  }
289
282
  )
290
283
  ] }) });
291
284
  }
292
285
  );
293
- AsideHeader.displayName = "@optiaxiom/react/AsideHeader";
294
-
295
- const resolveItemProperty = (property, ...context) => typeof property === "function" ? property(...context) : property;
296
- const [CommandProvider, useCommandContext] = reactContext.createContext("@optiaxiom/react/Command");
297
-
298
- const collator = new Intl.Collator(void 0, {
299
- sensitivity: "base",
300
- usage: "search"
301
- });
302
- function fuzzysearch(haystack, needle) {
303
- const hlen = haystack.length;
304
- const nlen = needle.length;
305
- if (nlen > hlen) {
306
- return false;
307
- }
308
- if (nlen === hlen) {
309
- return collator.compare(needle, haystack) === 0;
310
- }
311
- outer:
312
- for (let i = 0, j = 0; i < nlen; i++) {
313
- const nch = needle.charAt(i);
314
- while (j < hlen) {
315
- if (collator.compare(haystack.charAt(j++), nch) === 0) {
316
- continue outer;
317
- }
318
- }
319
- return false;
320
- }
321
- return true;
322
- }
323
- function score(item, inputValue) {
324
- if (!inputValue || item.skipFilterScoring) {
325
- return 0;
326
- }
327
- const label = resolveItemProperty(item.label, { inputValue }).normalize().toLowerCase();
328
- inputValue = inputValue.toLowerCase();
329
- let score2 = 0;
330
- if (label === inputValue) {
331
- score2 = 1;
332
- } else if (label.includes(inputValue)) {
333
- score2 = 0.75;
334
- if (label.startsWith(inputValue)) {
335
- score2 += 0.1;
336
- }
337
- } else if (item.keywords?.toLowerCase().includes(inputValue)) {
338
- score2 = 0.5;
339
- }
340
- if (item.parentOption) {
341
- score2 -= -0.1;
342
- }
343
- return score2;
344
- }
345
-
346
- const useCommandItems = ({
347
- inputValue,
348
- options
349
- }) => {
350
- const filterFn = IconMagnifyingGlass.useEffectEvent((item, inputValue2) => {
351
- const string = resolveItemProperty(item.label, {
352
- inputValue: inputValue2
353
- }).normalize();
354
- return "visible" in item ? resolveItemProperty(item.visible, { inputValue: inputValue2 }) : inputValue2 ? fuzzysearch(string, inputValue2) || item.keywords && fuzzysearch(item.keywords, inputValue2) : true;
355
- });
356
- return React.useMemo(() => {
357
- const substring = (inputValue ?? "").normalize();
358
- const callback = (parentOption) => (item) => {
359
- return item.subOptions && substring ? resolveItemProperty(item.subOptions, { inputValue }).flatMap(
360
- callback(item)
361
- ) : filterFn(item, substring) ? [
362
- parentOption ? {
363
- ...item,
364
- key: [
365
- parentOption.key ?? resolveItemProperty(parentOption.label, {
366
- inputValue
367
- }),
368
- item.key ?? resolveItemProperty(item.label, { inputValue })
369
- ].join("-"),
370
- parentOption
371
- } : item
372
- ] : [];
373
- };
374
- return options.flatMap(callback()).sort((a, b) => {
375
- return (b.group?.priority ?? 0) + score(b, substring) - ((a.group?.priority ?? 0) + score(a, substring));
376
- });
377
- }, [options, filterFn, inputValue]);
378
- };
286
+ DetailsPanelHeader.displayName = "@optiaxiom/react/DetailsPanelHeader";
379
287
 
380
- function Command({
381
- children,
382
- empty,
383
- enabled,
384
- inputValue: inputValueProp,
385
- loading,
386
- onHover,
387
- onInputValueChange,
388
- onSelect: onItemSelect,
389
- options
390
- }) {
391
- const [inputValue, setInputValue] = reactUseControllableState.useControllableState({
392
- caller: "@optiaxiom/react/Command",
393
- defaultProp: "",
394
- onChange: onInputValueChange,
395
- prop: inputValueProp
396
- });
397
- const items = useCommandItems({ inputValue, options });
398
- const [highlightedIndex, setHighlightedIndex] = IconMagnifyingGlass.useHighlightedIndex(enabled);
399
- const pauseInteractionRef = React.useRef({
400
- isInsideTriangle: null,
401
- timer: void 0
402
- });
403
- const highlightedItemRef = React.useRef(null);
404
- const downshift$1 = downshift.useCombobox({
405
- highlightedIndex: highlightedIndex === -1 ? items.findIndex((item) => !resolveItemProperty(item.disabledReason)) : highlightedIndex,
406
- inputValue,
407
- isItemDisabled: (item) => Boolean(resolveItemProperty(item?.disabledReason)),
408
- isOpen: !!enabled,
409
- items,
410
- itemToString: (item) => item !== null ? resolveItemProperty(item.label, { inputValue }) : "",
411
- onHighlightedIndexChange({ highlightedIndex: highlightedIndex2, type }) {
412
- setHighlightedIndex(highlightedIndex2);
413
- if (highlightedIndex2 !== -1) {
414
- onHover?.(
415
- items[highlightedIndex2],
416
- type === downshift.useCombobox.stateChangeTypes.FunctionSetHighlightedIndex || type === downshift.useCombobox.stateChangeTypes.ItemMouseMove
417
- );
418
- }
419
- },
420
- onSelectedItemChange({ selectedItem, type }) {
421
- if (type !== downshift.useCombobox.stateChangeTypes.InputBlur && selectedItem !== null) {
422
- onItemSelect?.(selectedItem, {
423
- dismiss: type !== downshift.useCombobox.stateChangeTypes.FunctionSelectItem || !("selected" in selectedItem)
424
- });
425
- downshift$1.selectItem(null);
426
- }
427
- },
428
- scrollIntoView(node) {
429
- node?.scrollIntoView({ block: "nearest" });
430
- },
431
- selectedItem: null,
432
- stateReducer: (state, actionAndChanges) => {
433
- const { changes, type } = actionAndChanges;
434
- switch (type) {
435
- case downshift.useCombobox.stateChangeTypes.InputBlur:
436
- case downshift.useCombobox.stateChangeTypes.InputClick:
437
- case downshift.useCombobox.stateChangeTypes.InputKeyDownEnter:
438
- case downshift.useCombobox.stateChangeTypes.InputKeyDownEscape:
439
- case downshift.useCombobox.stateChangeTypes.ItemClick:
440
- case downshift.useCombobox.stateChangeTypes.MenuMouseLeave:
441
- return {
442
- ...changes,
443
- /**
444
- * Keep the selected option highlighted rather than resetting to -1
445
- */
446
- highlightedIndex: state.highlightedIndex
447
- };
448
- default:
449
- return changes;
450
- }
451
- }
452
- });
453
- downshift$1.getInputProps({}, { suppressRefError: true });
454
- downshift$1.getMenuProps({}, { suppressRefError: true });
455
- return /* @__PURE__ */ jsxRuntime.jsx(
456
- CommandProvider,
457
- {
458
- downshift: downshift$1,
459
- empty,
460
- enabled: Boolean(enabled),
461
- highlightedItem: items[downshift$1.highlightedIndex],
462
- highlightedItemRef,
463
- inputValue,
464
- items,
465
- loading,
466
- pauseInteractionRef,
467
- setHighlightedIndex,
468
- setInputValue,
469
- children
470
- }
471
- );
472
- }
473
- Command.displayName = "@optiaxiom/react/Command";
288
+ var upload = Calendar.recipeRuntime({base:[{color:'fg.default'},'_1qxv31l']});
474
289
 
475
- const CommandInput = React.forwardRef(
476
- ({ onBlur, onKeyDown, size, ...props }, ref) => {
477
- const { downshift, highlightedItem, highlightedItemRef, setInputValue } = useCommandContext("@optiaxiom/react/CommandInput");
478
- const setInputValueStable = IconMagnifyingGlass.useEffectEvent(setInputValue);
479
- React.useEffect(() => {
480
- setInputValueStable("");
481
- }, [setInputValueStable]);
482
- const preventDownshiftBlurRef = React.useRef(false);
483
- return /* @__PURE__ */ jsxRuntime.jsx(
484
- IconMagnifyingGlass.Input,
485
- {
486
- addonBefore: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconMagnifyingGlass, {}),
487
- htmlSize: 1,
488
- size,
489
- ...downshift.getInputProps({
490
- "aria-label": props.placeholder,
491
- ref,
492
- ...props,
493
- onBlur: (event) => {
494
- onBlur?.(event);
495
- if (event.defaultPrevented) {
496
- return;
497
- }
498
- if (preventDownshiftBlurRef.current) {
499
- Object.assign(event, { preventDownshiftDefault: true });
500
- preventDownshiftBlurRef.current = false;
501
- }
502
- },
503
- onChange: (event) => {
504
- setInputValue("value" in event.target ? event.target.value : "");
505
- },
506
- onKeyDown: (event) => {
507
- onKeyDown?.(event);
508
- if (event.defaultPrevented) {
509
- return;
510
- }
511
- if (!(event.target instanceof HTMLInputElement)) {
512
- return;
513
- }
514
- if (!highlightedItem) {
515
- return;
516
- }
517
- if (!event.target.value && event.key === " ") {
518
- event.preventDefault();
519
- downshift.selectItem(highlightedItem);
520
- } else if (event.key === "Enter") {
521
- if (highlightedItemRef.current instanceof HTMLAnchorElement) {
522
- const { view: _view, ...eventInit } = event;
523
- event.preventDefault();
524
- Object.assign(event, { preventDownshiftDefault: true });
525
- preventDownshiftBlurRef.current = true;
526
- highlightedItemRef.current.dispatchEvent(
527
- new MouseEvent("click", eventInit)
528
- );
529
- }
530
- }
531
- }
532
- })
533
- }
534
- );
535
- }
536
- );
537
- CommandInput.displayName = "@optiaxiom/react/CommandInput";
290
+ const [FileUploadProvider, useFileUploadContext] = reactContext.createContext("@optiaxiom/react/FileUpload");
538
291
 
539
- const CommandItem = React.forwardRef(
540
- ({
541
- asChild,
542
- children,
543
- index,
544
- item,
545
- onClick,
546
- onMouseLeave,
547
- onMouseMove,
548
- selected,
549
- size,
550
- ...props
551
- }, outerRef) => {
552
- const {
553
- downshift,
554
- enabled,
555
- highlightedItem,
556
- highlightedItemRef,
557
- inputValue,
558
- items,
559
- pauseInteractionRef
560
- } = useCommandContext("@optiaxiom/react/CommandItem");
561
- const ref = reactComposeRefs.useComposedRefs(
562
- highlightedItem === item ? highlightedItemRef : void 0,
563
- outerRef
564
- );
565
- const itemProps = downshift.getItemProps({
566
- "aria-posinset": index + 1,
567
- "aria-selected": selected ?? resolveItemProperty(item.selected),
568
- "aria-setsize": items.length,
569
- item,
570
- onClick: (event) => {
571
- onClick?.(event);
572
- if (event.currentTarget instanceof HTMLAnchorElement) {
573
- if (event.altKey || event.metaKey || event.shiftKey) {
574
- Object.assign(event, {
575
- preventDownshiftDefault: true
576
- });
577
- } else {
578
- if (item.execute) {
579
- event.preventDefault();
580
- }
581
- }
582
- }
583
- },
584
- onMouseLeave: (event) => {
585
- onMouseLeave?.(event);
586
- window.clearTimeout(pauseInteractionRef.current.timer);
587
- },
588
- onMouseMove: (event) => {
589
- onMouseMove?.(event);
590
- if (event.defaultPrevented) {
591
- return;
592
- }
593
- if (!enabled || resolveItemProperty(item.disabledReason)) {
594
- event.preventDefault();
595
- Object.assign(event.nativeEvent, {
596
- preventDownshiftDefault: true
597
- });
598
- return;
599
- }
600
- if (!pauseInteractionRef.current.isInsideTriangle) {
601
- return;
602
- }
603
- if (pauseInteractionRef.current.isInsideTriangle({
604
- x: event.clientX,
605
- y: event.clientY
606
- })) {
607
- event.preventDefault();
608
- Object.assign(event.nativeEvent, {
609
- preventDownshiftDefault: true
610
- });
611
- window.clearTimeout(pauseInteractionRef.current.timer);
612
- pauseInteractionRef.current.timer = window.setTimeout(() => {
613
- pauseInteractionRef.current.isInsideTriangle = null;
614
- downshift.setHighlightedIndex(index);
615
- }, 20);
616
- } else {
617
- pauseInteractionRef.current.isInsideTriangle = null;
292
+ const FileUpload = React.forwardRef(
293
+ ({ accept, children, className, onFilesDrop, ...props }, ref) => {
294
+ const { getInputProps, getRootProps, isDragActive, open } = reactDropzone.useDropzone({
295
+ accept,
296
+ noClick: true,
297
+ noKeyboard: true,
298
+ onDrop: (acceptedFiles) => {
299
+ if (acceptedFiles.length) {
300
+ onFilesDrop?.(acceptedFiles);
618
301
  }
619
- },
620
- ref,
621
- ...props
302
+ }
622
303
  });
623
- const detail = resolveItemProperty(item.detail, { inputValue });
624
304
  return /* @__PURE__ */ jsxRuntime.jsx(
625
- IconMagnifyingGlass.Box,
305
+ FileUploadProvider,
626
306
  {
627
- asChild,
628
- "data-disabled": itemProps["aria-disabled"] ? "" : void 0,
629
- "data-highlighted": highlightedItem === item ? "" : void 0,
630
- size,
631
- tabIndex: -1,
632
- ...itemProps,
633
- ...item.href && { href: item.href },
634
- children: IconMagnifyingGlass.decorateChildren(
635
- { asChild, children },
636
- (children2) => children2 ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
637
- item.parentOption && !item.parentOption.hiddenInSearchContext && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
638
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { color: "fg.secondary", children: resolveItemProperty(item.parentOption.label, {
639
- inputValue
640
- }) }),
641
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, h: "10", w: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconAngleRight, {}) })
642
- ] }),
643
- resolveItemProperty(item.label, { inputValue }),
644
- detail && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { color: "fg.secondary", flex: "1", children: detail })
645
- ] })
646
- )
307
+ getInputProps,
308
+ getRootProps,
309
+ isDragActive,
310
+ openFileDialog: open,
311
+ children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { ref, ...upload({}, className), ...props, children })
647
312
  }
648
313
  );
649
314
  }
650
315
  );
651
- CommandItem.displayName = "@optiaxiom/react/CommandItem";
316
+ FileUpload.displayName = "@optiaxiom/react/FileUpload";
652
317
 
653
- const CommandListbox = React.forwardRef(
654
- ({ children, size, ...props }, ref) => {
655
- const {
656
- downshift,
657
- highlightedItem,
658
- highlightedItemRef,
659
- inputValue,
660
- items
661
- } = useCommandContext("@optiaxiom/react/CommandListbox");
662
- return /* @__PURE__ */ jsxRuntime.jsx(
663
- IconMagnifyingGlass.ListboxItemized,
664
- {
665
- highlightedItem,
666
- items,
667
- itemToKey: (item) => item.key ?? resolveItemProperty(item.label, { inputValue }),
668
- onPlacedChange: (placed) => {
669
- if (placed && highlightedItemRef.current) {
670
- highlightedItemRef.current.scrollIntoView({ block: "nearest" });
671
- }
672
- },
673
- size,
674
- ...downshift.getMenuProps({ ref, ...props }),
675
- children
676
- }
677
- );
678
- }
318
+ const IconFileImportSolid = Calendar.withIcon(
319
+ {
320
+ name: "IconFileImportSolid",
321
+ viewBox: "0 0 512 512"
322
+ },
323
+ // <!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
324
+ /* @__PURE__ */ jsxRuntime.jsx(
325
+ "path",
326
+ {
327
+ d: "M128 64c0-35.3 28.7-64 64-64L352 0l0 128c0 17.7 14.3 32 32 32l128 0 0 288c0 35.3-28.7 64-64 64l-256 0c-35.3 0-64-28.7-64-64l0-112 174.1 0-39 39c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l80-80c9.4-9.4 9.4-24.6 0-33.9l-80-80c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l39 39L128 288l0-224zm0 224l0 48L24 336c-13.3 0-24-10.7-24-24s10.7-24 24-24l104 0zM512 128l-128 0L384 0 512 128z",
328
+ fill: "currentColor"
329
+ }
330
+ )
679
331
  );
680
- CommandListbox.displayName = "@optiaxiom/react/CommandListbox";
681
-
682
- const [MenuProvider, useMenuContext] = reactContext.createContext("@optiaxiom/react/Menu");
683
332
 
684
- function MenuPopover(props) {
685
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Popover, { ...props });
686
- }
687
- MenuPopover.displayName = "@optiaxiom/react/MenuPopover";
688
-
689
- const [MenuSubProvider, useMenuSubContext] = reactContext.createContext("@optiaxiom/react/MenuSub");
333
+ var dropzone = Calendar.recipeRuntime({base:[{alignItems:'center',bg:'bg.secondary',border:'1',fontSize:'md',justifyContent:'center',p:'32',rounded:'md',textAlign:'center',transition:'colors',z:'10'},'icu0r6'],variants:{drag:{false:{},true:['_1cqzvag']},hidden:{false:'_6h6z4a',true:'w0itao'},overlay:{false:{},true:'gy68n6'}}});
690
334
 
691
- function Menu({
692
- children,
693
- defaultOpen = false,
694
- inputValue: inputValueProp,
695
- inputVisible: inputVisibleProp,
696
- onInputValueChange,
697
- onOpenChange,
698
- open: openProp,
699
- options: optionsProp,
700
- placeholder = "Filter...",
701
- size: sizeProp,
702
- ...props
703
- }) {
704
- const size = IconMagnifyingGlass.useResponsiveMatches({
705
- base: "lg",
706
- sm: sizeProp ?? "sm"
707
- });
708
- const Comp = size === "sm" ? MenuPopover : IconMagnifyingGlass.Dialog;
709
- const [open, setOpen] = reactUseControllableState.useControllableState({
710
- caller: "@optiaxiom/react/Menu",
711
- defaultProp: defaultOpen,
712
- onChange: onOpenChange,
713
- prop: openProp
714
- });
715
- const [inputValue, setInputValue] = reactUseControllableState.useControllableState({
716
- caller: "@optiaxiom/react/Menu",
717
- defaultProp: "",
718
- onChange: onInputValueChange,
719
- prop: inputValueProp
720
- });
721
- const [activeItemStack, setActiveItemStack] = React.useState([]);
722
- const [subMenuOpen, setSubMenuOpen] = React.useState(false);
723
- React.useEffect(() => {
724
- if (inputValue && size === "sm") {
725
- setSubMenuOpen(false);
726
- }
727
- }, [inputValue, size]);
728
- React.useEffect(() => {
729
- if (size === "sm") {
730
- if (!open) {
731
- setSubMenuOpen(false);
732
- }
733
- } else {
734
- if (open) {
735
- setActiveItemStack(
736
- (activeItemStack2) => activeItemStack2.length ? [] : activeItemStack2
737
- );
738
- }
739
- }
740
- }, [open, size]);
741
- const contentRef = React.useRef(null);
742
- const inputRef = React.useRef(null);
743
- const itemRef = React.useRef(null);
744
- const triggerRef = React.useRef(null);
745
- const options = React.useMemo(
746
- () => size === "sm" ? optionsProp.map((option) => ({
747
- ...option,
748
- label: option.subOptions ? resolveItemProperty(option.label, { inputValue }).replace(
749
- "\u2026",
750
- ""
751
- ) : resolveItemProperty(option.label, { inputValue })
752
- })) : activeItemStack.length ? activeItemStack.reduce((result, stackItem) => {
753
- const stackKey = stackItem.key ?? resolveItemProperty(stackItem.label, { inputValue });
754
- for (const resultItem of result) {
755
- const resultKey = resultItem.key ?? resolveItemProperty(resultItem.label, { inputValue });
756
- if (resultKey === stackKey) {
757
- return resolveItemProperty(resultItem.subOptions, {
758
- inputValue
759
- }) ?? [];
760
- }
761
- }
762
- throw new Error(`Could not find item: ${stackKey}`);
763
- }, optionsProp) : optionsProp,
764
- [activeItemStack, inputValue, optionsProp, size]
765
- );
766
- const hasSelectableItem = React.useMemo(
767
- () => options.filter((item) => "selected" in item).length > options.length / 2,
768
- [options]
769
- );
770
- const inputDefaultVisibleRef = React.useRef(hasSelectableItem);
771
- inputDefaultVisibleRef.current = inputVisibleProp === "always" ? true : hasSelectableItem || false;
772
- const [inputVisible, setInputVisible] = React.useState(
773
- inputDefaultVisibleRef.current
335
+ const Slot$1 = reactSlot.createSlot("@optiaxiom/react/FileUploadTrigger");
336
+ const FileUploadTrigger = React.forwardRef(({ asChild, children, onClick, ...props }, ref) => {
337
+ const { boxProps, restProps } = Calendar.extractBoxProps(props);
338
+ const Comp = asChild ? Slot$1 : Calendar.Button;
339
+ const { openFileDialog } = useFileUploadContext(
340
+ "@optiaxiom/react/FileUploadTrigger"
774
341
  );
775
- React.useEffect(() => {
776
- if (inputValue) {
777
- setInputVisible(true);
778
- }
779
- }, [inputValue]);
780
- React.useEffect(() => {
781
- if (open) {
782
- setInputVisible(inputDefaultVisibleRef.current);
783
- }
784
- }, [open]);
785
- React.useEffect(() => {
786
- if (size === "lg") {
787
- setInputVisible(inputDefaultVisibleRef.current);
788
- }
789
- }, [activeItemStack, size]);
790
- return /* @__PURE__ */ jsxRuntime.jsx(Comp, { onOpenChange: setOpen, open, children: /* @__PURE__ */ jsxRuntime.jsx(
791
- MenuProvider,
342
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { asChild: true, ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx(
343
+ Comp,
792
344
  {
793
- activeItemStack,
794
- inputRef,
795
- inputVisible,
796
- onSelect: (item, { dismiss }) => {
797
- item.execute?.({ dismiss, inputValue });
798
- if (typeof openProp === "undefined" && dismiss) {
799
- setOpen(false);
345
+ onClick: (event) => {
346
+ onClick?.(event);
347
+ if (event.defaultPrevented) {
348
+ return;
800
349
  }
350
+ openFileDialog();
801
351
  },
802
- open,
803
- placeholder: activeItemStack.length ? resolveItemProperty(
804
- activeItemStack[activeItemStack.length - 1].label,
805
- { inputValue }
806
- ) : placeholder,
807
- setActiveItemStack,
808
- setOpen,
809
- size,
810
- triggerRef,
811
- children: /* @__PURE__ */ jsxRuntime.jsx(
812
- Command,
813
- {
814
- enabled: open ? activeItemStack.length + 1 : false,
815
- inputValue,
816
- onHover: (item, pointer) => {
817
- setSubMenuOpen(
818
- pointer && (typeof item.subOptions === "function" || !!item.subOptions?.length)
819
- );
820
- },
821
- onInputValueChange: setInputValue,
822
- onSelect: (item, { dismiss }) => {
823
- if (typeof item.subOptions === "function" || item.subOptions?.length) {
824
- if (size === "lg") {
825
- setActiveItemStack((stack) => [...stack ?? [], item]);
826
- } else {
827
- setSubMenuOpen(true);
828
- }
829
- } else {
830
- item.execute?.({ dismiss, inputValue });
831
- if (typeof openProp === "undefined" && dismiss) {
832
- setOpen(false);
833
- }
834
- }
835
- },
836
- options,
837
- ...props,
838
- children: /* @__PURE__ */ jsxRuntime.jsx(
839
- MenuSubProvider,
840
- {
841
- contentRef,
842
- inputRef,
843
- itemRef,
844
- open: subMenuOpen,
845
- setOpen: setSubMenuOpen,
846
- children
847
- }
848
- )
849
- }
850
- )
352
+ ref,
353
+ ...restProps,
354
+ children: children || "Select files"
851
355
  }
852
356
  ) });
853
- }
854
- Menu.displayName = "@optiaxiom/react/Menu";
357
+ });
358
+ FileUploadTrigger.displayName = "@optiaxiom/react/FileUploadTrigger";
855
359
 
856
- var content$1 = IconMagnifyingGlass.recipeRuntime({base:'_5ah2yc'});
360
+ const useDraggingOverBody = () => {
361
+ const [isDragging, setIsDragging] = React.useState(false);
362
+ const dropRef = React.useRef();
363
+ React.useEffect(() => {
364
+ const over = () => {
365
+ setIsDragging(true);
366
+ window.clearTimeout(dropRef.current);
367
+ dropRef.current = window.setTimeout(() => {
368
+ setIsDragging(false);
369
+ }, 100);
370
+ };
371
+ document.body.addEventListener("dragover", over);
372
+ return () => {
373
+ document.body.removeEventListener("dragover", over);
374
+ };
375
+ }, []);
376
+ return isDragging;
377
+ };
857
378
 
858
- const MenuDialogContent = React.forwardRef(
379
+ const FileUploadDropzone = React.forwardRef(
859
380
  ({
860
- align: _align,
861
- "aria-label": ariaLabel,
862
381
  children,
863
382
  className,
864
- minW: _minW,
865
- side: _side,
866
- sideOffset: _sideOffset,
383
+ description,
384
+ label = "Drop your files here",
385
+ overlay,
867
386
  ...props
868
387
  }, ref) => {
869
- const { labelId: fieldLabelId } = IconMagnifyingGlass.useFieldContext(
870
- "@optiaxiom/react/MenuDialogContent"
388
+ const { getInputProps, getRootProps, isDragActive } = useFileUploadContext(
389
+ "@optiaxiom/react/FileUploadDropzone"
871
390
  );
872
- const { triggerRef } = useMenuContext("@optiaxiom/react/MenuDialogContent");
873
- const labelId = React.useId();
391
+ const isDraggingOverBody = useDraggingOverBody();
874
392
  return /* @__PURE__ */ jsxRuntime.jsxs(
875
- IconMagnifyingGlass.DialogContent,
393
+ Calendar.Flex,
876
394
  {
877
- "aria-labelledby": clsx(fieldLabelId ?? triggerRef.current?.id, labelId),
878
395
  ref,
879
- ...content$1({}, className),
880
- ...props,
396
+ ...getRootProps({
397
+ ...dropzone(
398
+ {
399
+ drag: isDragActive,
400
+ hidden: overlay && !isDraggingOverBody,
401
+ overlay
402
+ },
403
+ className
404
+ ),
405
+ ...props
406
+ }),
881
407
  children: [
882
- children,
883
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("h2", { id: labelId, children: ariaLabel || "Menu" }) }),
884
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { tabIndex: -1, children: /* @__PURE__ */ jsxRuntime.jsx(
885
- IconMagnifyingGlass.DialogHeader,
408
+ /* @__PURE__ */ jsxRuntime.jsx(
409
+ "input",
886
410
  {
887
- children: "Menu"
411
+ ...getInputProps({
412
+ "aria-description": description,
413
+ "aria-label": label
414
+ })
888
415
  }
889
- ) })
416
+ ),
417
+ /* @__PURE__ */ jsxRuntime.jsxs(Calendar.Flex, { alignItems: "center", gap: "8", children: [
418
+ /* @__PURE__ */ jsxRuntime.jsx(Calendar.Icon, { asChild: true, color: "fg.secondary", children: /* @__PURE__ */ jsxRuntime.jsx(IconFileImportSolid, {}) }),
419
+ /* @__PURE__ */ jsxRuntime.jsx(Calendar.Text, { children: label }),
420
+ description && /* @__PURE__ */ jsxRuntime.jsx(Calendar.Text, { color: "fg.tertiary", fontSize: "sm", children: description })
421
+ ] }),
422
+ !overlay && (children ?? /* @__PURE__ */ jsxRuntime.jsx(FileUploadTrigger, {}))
890
423
  ]
891
424
  }
892
425
  );
893
426
  }
894
427
  );
895
- MenuDialogContent.displayName = "@optiaxiom/react/MenuDialogContent";
896
-
897
- var input$1 = IconMagnifyingGlass.recipeRuntime({variants:{size:{sm:{m:'4'},lg:[{border:'0',borderB:'1',borderColor:'border.secondary',rounded:'none'},'_1r6dzy8']}}});
428
+ FileUploadDropzone.displayName = "@optiaxiom/react/FileUploadDropzone";
898
429
 
899
- const MenuInput = React.forwardRef(
900
- ({ className, onKeyDown, ...props }, outerRef) => {
901
- const { inputRef, open, setActiveItemStack, size } = useMenuContext(
902
- "@optiaxiom/react/MenuInput"
903
- );
904
- const { downshift, highlightedItem } = useCommandContext(
905
- "@optiaxiom/react/MenuInput"
906
- );
907
- const ref = reactComposeRefs.useComposedRefs(inputRef, outerRef);
908
- const containerRef = React.useRef(null);
909
- React.useEffect(() => {
910
- if (!containerRef.current) {
911
- return;
912
- }
913
- const rect = containerRef.current.getBoundingClientRect();
914
- if (open) {
915
- containerRef.current.style.minWidth = `${rect.width}px`;
916
- }
917
- }, [downshift.inputValue, open]);
918
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ref: containerRef, style: { minWidth: 160 }, children: /* @__PURE__ */ jsxRuntime.jsx(
919
- CommandInput,
920
- {
921
- onKeyDown: (event) => {
922
- onKeyDown?.(event);
923
- if (event.defaultPrevented) {
924
- return;
925
- }
926
- if (!(event.target instanceof HTMLInputElement)) {
927
- return;
928
- }
929
- if (event.target.value) {
930
- return;
931
- }
932
- if (event.key === "Backspace" && size === "lg") {
933
- event.preventDefault();
934
- setActiveItemStack(
935
- (stack) => stack.length ? stack.slice(0, -1) : stack
936
- );
937
- } else if (event.key === "ArrowRight" && (typeof highlightedItem?.subOptions === "function" || highlightedItem?.subOptions?.length) && size === "sm") {
938
- event.preventDefault();
939
- downshift.selectItem(highlightedItem);
940
- }
941
- },
942
- ref,
943
- size: size === "sm" ? "md" : "xl",
944
- ...input$1({ size }, className),
945
- ...props
946
- }
947
- ) });
948
- }
949
- );
950
- MenuInput.displayName = "@optiaxiom/react/MenuInput";
430
+ const useFileUploadTrigger = () => {
431
+ const { openFileDialog } = useFileUploadContext(
432
+ "@optiaxiom/react/useFileUploadOpen"
433
+ );
434
+ return openFileDialog;
435
+ };
951
436
 
952
- const MenuCheckboxItem = React.forwardRef(({ children, ...props }, ref) => {
953
- const Comp = props.item.href ? "a" : "div";
954
- const { inputValue } = useCommandContext("@optiaxiom/react/MenuCheckboxItem");
955
- return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
956
- IconMagnifyingGlass.ListboxCheckboxItem,
957
- {
958
- addonBefore: resolveItemProperty(props.item.addon, { inputValue }),
959
- asChild: true,
960
- description: resolveItemProperty(props.item.description, {
961
- inputValue
962
- }),
963
- onCheckedChange: () => !resolveItemProperty(props.item.disabledReason) && props.item.execute?.({ dismiss: false, inputValue }),
964
- children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { ...props.item.href && { href: props.item.href }, children })
965
- }
966
- ) });
967
- });
968
- MenuCheckboxItem.displayName = "@optiaxiom/react/MenuCheckboxItem";
437
+ var mark = Calendar.recipeRuntime({base:'zhi35o'});
969
438
 
970
- const MenuItem = React.forwardRef(
971
- ({ children, ...props }, ref) => {
972
- const Comp = props.item.href ? "a" : "div";
973
- const { inputValue } = useCommandContext("@optiaxiom/react/MenuItem");
974
- return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
975
- IconMagnifyingGlass.ListboxItem,
976
- {
977
- addonBefore: resolveItemProperty(props.item.addon, { inputValue }),
978
- asChild: true,
979
- description: resolveItemProperty(props.item.description, {
980
- inputValue
981
- }),
982
- intent: props.item.intent,
983
- children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { ...props.item.href && { href: props.item.href }, children })
984
- }
985
- ) });
439
+ const useHighlightedChunks = (content, query) => {
440
+ const terms = React.useMemo(
441
+ () => (Array.isArray(query) ? query : query ? [query] : []).map((q) => typeof q === "string" ? q.trim() : q).filter(Boolean),
442
+ [query]
443
+ );
444
+ if (terms.length === 0) {
445
+ return [{ chunk: content, highlighted: false }];
986
446
  }
987
- );
988
- MenuItem.displayName = "@optiaxiom/react/MenuItem";
447
+ const pattern = new RegExp(
448
+ "(" + terms.map(
449
+ (term) => term instanceof RegExp ? term.source : `(?![^<>]*>)(^|\\b)(?=[^/.])${escapeRegExp(term)}`
450
+ ).join("|") + ")",
451
+ "gi"
452
+ );
453
+ return content.split(pattern).map((chunk) => ({ chunk, highlighted: pattern.test(chunk) }));
454
+ };
455
+ function escapeRegExp(string) {
456
+ return string.replace(/[/\-\\^$*+?.()|[\]{}]/g, "\\$&");
457
+ }
989
458
 
990
- const MenuRadioItem = React.forwardRef(
991
- ({ children, ...props }, ref) => {
992
- const Comp = props.item.href ? "a" : "div";
993
- const { inputValue } = useCommandContext("@optiaxiom/react/MenuRadioItem");
994
- return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
995
- IconMagnifyingGlass.ListboxRadioItem,
996
- {
997
- addonBefore: resolveItemProperty(props.item.addon, { inputValue }),
998
- asChild: true,
999
- description: resolveItemProperty(props.item.description, {
1000
- inputValue
1001
- }),
1002
- children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { ...props.item.href && { href: props.item.href }, children })
1003
- }
1004
- ) });
459
+ const Highlight = React.forwardRef(
460
+ ({ children = (chunk) => chunk, content, query, ...props }, ref) => {
461
+ const chunks = useHighlightedChunks(content || "", query);
462
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { ref, ...props, children: chunks.map(({ chunk, highlighted }, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: highlighted ? children(
463
+ /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { asChild: true, ...mark(), children: /* @__PURE__ */ jsxRuntime.jsx("mark", { children: chunk }) })
464
+ ) : chunk }, index)) });
1005
465
  }
1006
466
  );
1007
- MenuRadioItem.displayName = "@optiaxiom/react/MenuRadioItem";
467
+ Highlight.displayName = "@optiaxiom/react/Highlight";
1008
468
 
1009
- const MenuSubInput = React.forwardRef(
1010
- ({ onKeyDown, ...props }, ref) => {
1011
- const { downshift, highlightedItem } = useCommandContext(
1012
- "@optiaxiom/react/MenuSubInput"
1013
- );
1014
- const { setOpen } = useMenuSubContext("@optiaxiom/react/MenuSubInput");
1015
- return /* @__PURE__ */ jsxRuntime.jsx(
1016
- CommandInput,
1017
- {
1018
- m: "4",
1019
- onKeyDown: (event) => {
1020
- onKeyDown?.(event);
1021
- if (event.defaultPrevented) {
1022
- return;
1023
- }
1024
- if (!(event.target instanceof HTMLInputElement)) {
1025
- return;
1026
- }
1027
- if (event.target.value) {
1028
- return;
1029
- }
1030
- if (event.key === "ArrowLeft") {
1031
- event.preventDefault();
1032
- setOpen(false);
1033
- } else if (event.key === "ArrowRight" && (typeof highlightedItem?.subOptions === "function" || highlightedItem?.subOptions?.length)) {
1034
- event.preventDefault();
1035
- downshift.selectItem(highlightedItem);
1036
- }
1037
- },
1038
- ref,
1039
- ...props
1040
- }
1041
- );
1042
- }
1043
- );
1044
- MenuSubInput.displayName = "@optiaxiom/react/MenuSubInput";
1045
-
1046
- const MenuSubContent = React.forwardRef(
1047
- ({ align = "start", side = "right", ...props }, outerRef) => {
1048
- const { onSelect, setOpen: setRootMenuOpen } = useMenuContext(
1049
- "@optiaxiom/react/MenuSubContent"
1050
- );
1051
- const {
1052
- highlightedItem: item,
1053
- inputValue: parentInputValue,
1054
- setInputValue: setParentInputValue
1055
- } = useCommandContext("@optiaxiom/react/MenuSubContent");
1056
- const {
1057
- contentRef: parentContentRef,
1058
- inputRef: parentInputRef,
1059
- itemRef: parentItemRef
1060
- } = useMenuSubContext("@optiaxiom/react/MenuSubContent");
1061
- const { open, presence } = IconMagnifyingGlass.usePopoverContext(
1062
- "@optiaxiom/react/MenuSubContent"
1063
- );
1064
- const labelId = reactId.useId();
1065
- const ref = reactComposeRefs.useComposedRefs(parentContentRef, outerRef);
1066
- const [inputValue, setInputValue] = React.useState("");
1067
- const options = React.useMemo(
1068
- () => resolveItemProperty(item?.subOptions, { inputValue }) ?? [],
1069
- [inputValue, item]
1070
- );
1071
- const contentRef = React.useRef(null);
1072
- const inputRef = React.useRef(null);
1073
- const itemRef = React.useRef(null);
1074
- const [subMenuOpen, setSubMenuOpen] = React.useState(false);
1075
- React.useEffect(() => {
1076
- if (!open) {
1077
- setSubMenuOpen(false);
1078
- }
1079
- }, [open]);
1080
- React.useEffect(() => {
1081
- return () => {
1082
- setInputValue("");
1083
- setSubMenuOpen(false);
1084
- };
1085
- }, [item]);
1086
- if (!item || !(open || presence)) {
1087
- return null;
1088
- }
1089
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1090
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.PopoverAnchor, { virtualRef: parentItemRef }),
1091
- /* @__PURE__ */ jsxRuntime.jsxs(
1092
- IconMagnifyingGlass.PopoverContent,
1093
- {
1094
- align,
1095
- alignOffset: item.subOptionsInputVisible ? -46 : -4,
1096
- "aria-labelledby": clsx(parentItemRef.current?.id, labelId),
1097
- onCloseAutoFocus: (event) => {
1098
- event.preventDefault();
1099
- parentInputRef.current?.focus();
1100
- },
1101
- onEscapeKeyDown: () => setRootMenuOpen(false),
1102
- onPointerDown: (event) => {
1103
- if (event.defaultPrevented) {
1104
- return;
1105
- }
1106
- if (event.target instanceof Element && event.target.closest('[role="option"]')) {
1107
- return;
1108
- }
1109
- event.preventDefault();
1110
- inputRef.current?.focus();
1111
- },
1112
- onPointerEnter: () => {
1113
- if (item.subOptionsInputVisible) {
1114
- inputRef.current?.focus();
1115
- }
1116
- },
1117
- onPointerLeave: (event) => {
1118
- if (item.subOptionsInputVisible) {
1119
- parentInputRef.current?.focus();
1120
- event.stopPropagation();
1121
- }
1122
- },
1123
- p: "4",
1124
- ref,
1125
- side,
1126
- sideOffset: 0,
1127
- ...props,
1128
- children: [
1129
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx("h2", { id: labelId, children: "Submenu" }) }),
1130
- /* @__PURE__ */ jsxRuntime.jsxs(
1131
- Command,
1132
- {
1133
- enabled: true,
1134
- inputValue,
1135
- onHover: (item2, pointer) => {
1136
- setSubMenuOpen(
1137
- pointer && (typeof item2.subOptions === "function" || !!item2.subOptions?.length)
1138
- );
1139
- },
1140
- onInputValueChange: (inputValue2) => {
1141
- if (item.subOptionsInputVisible) {
1142
- setInputValue(inputValue2);
1143
- return;
1144
- }
1145
- parentInputRef.current?.focus();
1146
- setParentInputValue(inputValue2);
1147
- },
1148
- onSelect: (item2, { dismiss }) => {
1149
- if (typeof item2.subOptions === "function" || item2.subOptions?.length) {
1150
- setSubMenuOpen(true);
1151
- } else {
1152
- onSelect(item2, { dismiss });
1153
- }
1154
- },
1155
- options,
1156
- children: [
1157
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { disabled: item.subOptionsInputVisible, children: /* @__PURE__ */ jsxRuntime.jsx(MenuSubInput, { placeholder: "Filter...", ref: inputRef }) }),
1158
- /* @__PURE__ */ jsxRuntime.jsx(
1159
- MenuSubProvider,
1160
- {
1161
- contentRef,
1162
- inputRef,
1163
- itemRef,
1164
- open: subMenuOpen,
1165
- setOpen: setSubMenuOpen,
1166
- children: /* @__PURE__ */ jsxRuntime.jsx(MenuListbox, { onScroll: () => setSubMenuOpen(false) })
1167
- }
1168
- )
1169
- ]
1170
- },
1171
- item.key ?? resolveItemProperty(item.label, {
1172
- inputValue: parentInputValue
1173
- })
1174
- )
1175
- ]
1176
- }
1177
- )
1178
- ] });
1179
- }
1180
- );
1181
- MenuSubContent.displayName = "@optiaxiom/react/MenuSubContent";
1182
-
1183
- const MenuSubTrigger = React.forwardRef(
1184
- ({
1185
- children,
1186
- item,
1187
- onPointerDown,
1188
- onPointerEnter,
1189
- onPointerLeave,
1190
- onPointerMove,
1191
- ...props
1192
- }, outerRef) => {
1193
- const { downshift, enabled, highlightedItem, pauseInteractionRef } = useCommandContext("@optiaxiom/react/MenuSubTrigger");
1194
- const { open } = IconMagnifyingGlass.usePopoverContext("@optiaxiom/react/MenuSubTrigger");
1195
- const { contentRef, itemRef } = useMenuSubContext(
1196
- "@optiaxiom/react/MenuSubTrigger"
1197
- );
1198
- const pointerEnterRef = React.useRef(false);
1199
- const innerRef = React.useRef();
1200
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1201
- React.useEffect(() => {
1202
- if (open && highlightedItem === item && innerRef.current) {
1203
- itemRef.current = innerRef.current;
1204
- }
1205
- }, [highlightedItem, item, open, itemRef]);
1206
- return /* @__PURE__ */ jsxRuntime.jsx(
1207
- MenuItem,
1208
- {
1209
- addonAfter: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconAngleRight, {}),
1210
- item,
1211
- onPointerDown: (event) => {
1212
- onPointerDown?.(event);
1213
- if (open) {
1214
- event.preventDefault();
1215
- }
1216
- },
1217
- onPointerEnter: (event) => {
1218
- onPointerEnter?.(event);
1219
- if (event.defaultPrevented) {
1220
- return;
1221
- }
1222
- if (highlightedItem === item) {
1223
- pointerEnterRef.current = true;
1224
- }
1225
- },
1226
- onPointerLeave: (event) => {
1227
- onPointerLeave?.(event);
1228
- pointerEnterRef.current = false;
1229
- const box = contentRef.current?.getBoundingClientRect();
1230
- if (!box) {
1231
- return;
1232
- }
1233
- if (pauseInteractionRef.current.isInsideTriangle) {
1234
- return;
1235
- }
1236
- const bottom = {
1237
- x: box.left,
1238
- y: box.top + box.height
1239
- };
1240
- const side = {
1241
- x: event.clientX + 10 * (box.left > event.clientX ? -1 : 1),
1242
- y: event.clientY
1243
- };
1244
- const top = {
1245
- x: box.left,
1246
- y: box.top
1247
- };
1248
- pauseInteractionRef.current.isInsideTriangle = (target) => {
1249
- const b0 = (top.x - side.x) * (bottom.y - side.y) - (bottom.x - side.x) * (top.y - side.y), b1 = ((top.x - target.x) * (bottom.y - target.y) - (bottom.x - target.x) * (top.y - target.y)) / b0, b2 = ((bottom.x - target.x) * (side.y - target.y) - (side.x - target.x) * (bottom.y - target.y)) / b0, b3 = ((side.x - target.x) * (top.y - target.y) - (top.x - target.x) * (side.y - target.y)) / b0;
1250
- return b1 > 0 && b2 > 0 && b3 > 0;
1251
- };
1252
- pauseInteractionRef.current.timer = window.setTimeout(() => {
1253
- pauseInteractionRef.current.isInsideTriangle = null;
1254
- }, 20);
1255
- },
1256
- onPointerMove: (event) => {
1257
- onPointerMove?.(event);
1258
- if (event.defaultPrevented) {
1259
- return;
1260
- }
1261
- if (pointerEnterRef.current && enabled) {
1262
- downshift.selectItem(item);
1263
- }
1264
- pointerEnterRef.current = false;
1265
- },
1266
- ref,
1267
- ...props,
1268
- children
1269
- }
1270
- );
1271
- }
1272
- );
1273
- MenuSubTrigger.displayName = "@optiaxiom/react/MenuSubTrigger";
1274
-
1275
- const MenuSwitchItem = React.forwardRef(
1276
- ({ children, ...props }, ref) => {
1277
- const Comp = props.item.href ? "a" : "div";
1278
- const { inputValue } = useCommandContext("@optiaxiom/react/MenuSwitchItem");
1279
- return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
1280
- IconMagnifyingGlass.ListboxSwitchItem,
1281
- {
1282
- addonBefore: resolveItemProperty(props.item.addon, { inputValue }),
1283
- asChild: true,
1284
- description: resolveItemProperty(props.item.description, {
1285
- inputValue
1286
- }),
1287
- onCheckedChange: () => !resolveItemProperty(props.item.disabledReason) && props.item.execute?.({ dismiss: false, inputValue }),
1288
- children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { ...props.item.href && { href: props.item.href }, children })
1289
- }
1290
- ) });
1291
- }
1292
- );
1293
- MenuSwitchItem.displayName = "@optiaxiom/react/MenuSwitchItem";
1294
-
1295
- const MenuListbox = React.forwardRef(
1296
- ({ children, ...props }, ref) => {
1297
- const { inputValue } = useCommandContext("@optiaxiom/react/MenuListbox");
1298
- const { size } = useMenuContext("@optiaxiom/react/MenuListbox");
1299
- const { open } = useMenuSubContext("@optiaxiom/react/MenuListbox");
1300
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1301
- /* @__PURE__ */ jsxRuntime.jsx(CommandListbox, { ref, ...props, children: children ?? ((item, index, prevItem) => {
1302
- const Comp = typeof item.subOptions === "function" || item.subOptions?.length ? size === "sm" ? MenuSubTrigger : MenuItem : "selected" in item ? item.multi ? MenuCheckboxItem : item.switch ? MenuSwitchItem : MenuRadioItem : MenuItem;
1303
- const group = item.group;
1304
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1305
- IconMagnifyingGlass.shouldShowSeparator(group, prevItem) && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ListboxSeparator, {}),
1306
- IconMagnifyingGlass.shouldShowGroup(group, prevItem) && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ListboxLabel, { children: group.label }),
1307
- Comp === MenuSubTrigger ? /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsxRuntime.jsx(MenuSubTrigger, { index, item }) }) : /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { index, item }) })
1308
- ] });
1309
- }) }),
1310
- !inputValue && size === "sm" && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Popover, { open, children: /* @__PURE__ */ jsxRuntime.jsx(MenuSubContent, {}) })
1311
- ] });
1312
- }
1313
- );
1314
- MenuListbox.displayName = "@optiaxiom/react/MenuListbox";
1315
-
1316
- const MenuPopoverContent = React.forwardRef(({ "aria-label": ariaLabel, children, ...props }, ref) => {
1317
- const { labelId: fieldLabelId } = IconMagnifyingGlass.useFieldContext(
1318
- "@optiaxiom/react/MenuPopoverContent"
1319
- );
1320
- const { triggerRef } = useMenuContext("@optiaxiom/react/MenuPopoverContent");
1321
- const labelId = reactId.useId();
1322
- return /* @__PURE__ */ jsxRuntime.jsxs(
1323
- IconMagnifyingGlass.PopoverContent,
1324
- {
1325
- "aria-labelledby": clsx(fieldLabelId ?? triggerRef.current?.id, labelId),
1326
- ref,
1327
- ...props,
1328
- children: [
1329
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { id: labelId, children: ariaLabel || "Menu" }),
1330
- children
1331
- ]
1332
- }
1333
- );
1334
- });
1335
- MenuPopoverContent.displayName = "@optiaxiom/react/MenuPopoverContent";
1336
-
1337
- const MenuContent = React.forwardRef(
1338
- ({ children, onPointerDown, ...props }, outerRef) => {
1339
- const innerRef = React.useRef(null);
1340
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1341
- const { activeItemStack, inputRef, inputVisible, placeholder, size } = useMenuContext("@optiaxiom/react/MenuContent");
1342
- const { empty, loading } = useCommandContext(
1343
- "@optiaxiom/react/MenuContent"
1344
- );
1345
- const { setOpen } = useMenuSubContext("@optiaxiom/react/MenuContent");
1346
- const Comp = size === "sm" ? MenuPopoverContent : MenuDialogContent;
1347
- React.useEffect(() => {
1348
- innerRef.current?.animate([{ scale: 1 }, { scale: 0.97 }, { scale: 1 }], {
1349
- duration: 150
1350
- });
1351
- }, [activeItemStack]);
1352
- return /* @__PURE__ */ jsxRuntime.jsxs(
1353
- Comp,
1354
- {
1355
- onPointerDown: (event) => {
1356
- onPointerDown?.(event);
1357
- if (event.defaultPrevented) {
1358
- return;
1359
- }
1360
- if (event.target instanceof Element && event.target.closest('[role="option"]')) {
1361
- return;
1362
- }
1363
- event.preventDefault();
1364
- inputRef.current?.focus();
1365
- },
1366
- overflow: "hidden",
1367
- p: size === "sm" ? "4" : "0",
1368
- ref,
1369
- ...props,
1370
- children: [
1371
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { disabled: inputVisible, children: /* @__PURE__ */ jsxRuntime.jsx(
1372
- MenuInput,
1373
- {
1374
- addonAfter: (loading === "both" || loading === "spinner") && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Spinner, { size: "2xs" }),
1375
- placeholder
1376
- }
1377
- ) }),
1378
- /* @__PURE__ */ jsxRuntime.jsx(
1379
- MenuListbox,
1380
- {
1381
- empty,
1382
- loading: loading === true ? "both" : loading || void 0,
1383
- onScroll: () => setOpen(false),
1384
- p: size === "lg" ? "6" : "0",
1385
- children
1386
- }
1387
- )
1388
- ]
1389
- }
1390
- );
1391
- }
1392
- );
1393
- MenuContent.displayName = "@optiaxiom/react/MenuContent";
1394
-
1395
- const MenuTrigger = React.forwardRef(
1396
- ({
1397
- "aria-labelledby": ariaLabelledBy,
1398
- asChild,
1399
- children,
1400
- onKeyDown,
1401
- ...props
1402
- }, outerRef) => {
1403
- const { setOpen, size, triggerRef } = useMenuContext(
1404
- "@optiaxiom/react/MenuTrigger"
1405
- );
1406
- const Comp = size === "sm" ? IconMagnifyingGlass.PopoverTrigger : IconMagnifyingGlass.DialogTrigger;
1407
- const ref = reactComposeRefs.useComposedRefs(outerRef, triggerRef);
1408
- const id = reactId.useId();
1409
- const labelId = IconMagnifyingGlass.useFieldLabelTrigger(triggerRef, ariaLabelledBy);
1410
- return /* @__PURE__ */ jsxRuntime.jsx(
1411
- Comp,
1412
- {
1413
- "aria-labelledby": labelId,
1414
- asChild: true,
1415
- id,
1416
- onKeyDown: (event) => {
1417
- onKeyDown?.(event);
1418
- if (event.defaultPrevented) {
1419
- return;
1420
- }
1421
- switch (event.key) {
1422
- case "ArrowDown":
1423
- event.preventDefault();
1424
- setOpen(true);
1425
- }
1426
- },
1427
- ref,
1428
- ...props,
1429
- children: asChild ? children : /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.AngleMenuButton, { children })
1430
- }
1431
- );
1432
- }
1433
- );
1434
- MenuTrigger.displayName = "@optiaxiom/react/MenuTrigger";
1435
-
1436
- var link = IconMagnifyingGlass.recipeRuntime({base:'_8pczvn'});
1437
- var list = IconMagnifyingGlass.recipeRuntime({base:[{alignItems:'center',color:'fg.default',display:'flex',fontSize:'md',gap:'8'},'_16ukv1']});
1438
-
1439
- var item$1 = IconMagnifyingGlass.recipeRuntime({base:[{alignItems:'center',display:'inline-flex',gap:'4',whiteSpace:'nowrap'},'_1q53pp4']});
1440
-
1441
- const BreadcrumbNode = React.forwardRef(
1442
- ({ addonAfter, children, className, ...props }, ref) => {
1443
- const { boxProps, restProps } = IconMagnifyingGlass.extractBoxProps(props);
1444
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, ...item$1({}, className), ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsxs("li", { ref, ...restProps, children: [
1445
- children,
1446
- addonAfter && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { asChild: true, flex: "none", flexDirection: "row", gap: "4", children: IconMagnifyingGlass.fallbackSpan(addonAfter) })
1447
- ] }) });
1448
- }
1449
- );
1450
- BreadcrumbNode.displayName = "@optiaxiom/react/BreadcrumbNode";
1451
-
1452
- const Breadcrumb = React.forwardRef(
1453
- ({ className, items, maxItems = 3, ...props }, ref) => {
1454
- const { boxProps, restProps } = IconMagnifyingGlass.extractBoxProps(props);
1455
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, className, ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Breadcrumb", ref, ...restProps, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, ...list(), children: /* @__PURE__ */ jsxRuntime.jsx("ol", { children: renderItems(items, maxItems, (item, index) => /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbNode, { addonAfter: item.addonAfter, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Tooltip, { auto: true, content: item.label, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { asChild: true, truncate: true, children: index === items.length - 1 ? /* @__PURE__ */ jsxRuntime.jsx(
1456
- IconMagnifyingGlass.Box,
1457
- {
1458
- "aria-current": index === items.length - 1 ? "page" : void 0,
1459
- children: item.label
1460
- }
1461
- ) : item.href ? /* @__PURE__ */ jsxRuntime.jsx(
1462
- IconMagnifyingGlass.Link,
1463
- {
1464
- appearance: "subtle",
1465
- href: item.href,
1466
- ...link(),
1467
- children: item.label
1468
- }
1469
- ) : item.execute ? /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Link, { appearance: "subtle", asChild: true, ...link(), children: /* @__PURE__ */ jsxRuntime.jsx("button", { onClick: () => item.execute?.(), children: item.label }) }) : null }) }) })) }) }) }) });
1470
- }
1471
- );
1472
- Breadcrumb.displayName = "@optiaxiom/react/Breadcrumb";
1473
- const renderItems = (items, limit = items.length, renderItem) => {
1474
- if (limit < 0) {
1475
- limit = 0;
1476
- }
1477
- if (limit > items.length || typeof limit !== "number") {
1478
- limit = items.length;
1479
- }
1480
- const boundaries = [
1481
- 0,
1482
- Math.floor(limit / 2),
1483
- items.length - Math.ceil(limit / 2),
1484
- items.length
1485
- ];
1486
- return [
1487
- ...items.slice(boundaries[0], boundaries[1]).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: renderItem(item, index) }, "left" + index)),
1488
- boundaries[2] > boundaries[1] && /* @__PURE__ */ jsxRuntime.jsx(BreadcrumbNode, { children: /* @__PURE__ */ jsxRuntime.jsxs(Menu, { options: items.slice(boundaries[1], boundaries[2]), children: [
1489
- /* @__PURE__ */ jsxRuntime.jsx(
1490
- MenuTrigger,
1491
- {
1492
- appearance: "subtle",
1493
- "aria-label": "More items",
1494
- icon: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, color: "fg.tertiary", children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconEllipsisSolid, {}) })
1495
- }
1496
- ),
1497
- /* @__PURE__ */ jsxRuntime.jsx(MenuContent, {})
1498
- ] }) }, "ellipsis"),
1499
- ...items.slice(boundaries[2], boundaries[3]).map((item, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: renderItem(item, boundaries[2] + index) }, "right" + index))
1500
- ];
1501
- };
1502
-
1503
- var card = IconMagnifyingGlass.recipeRuntime({base:['se4d87',{alignItems:'start',bg:'bg.default',border:'1',borderColor:'border.tertiary',color:'fg.default',fontSize:'md',gap:'8',p:'16'},'_1qjx2rj']});
1504
-
1505
- const [CardProvider, useCardContext] = reactContext.createContext("@optiaxiom/react/Card");
1506
-
1507
- const Card = React.forwardRef(
1508
- ({ children, className, ...props }, ref) => {
1509
- const descriptionId = reactId.useId();
1510
- const labelId = reactId.useId();
1511
- return /* @__PURE__ */ jsxRuntime.jsx(CardProvider, { descriptionId, labelId, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ActionsRoot, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { ref, ...card({}, className), ...props, children }) }) });
1512
- }
1513
- );
1514
- Card.displayName = "@optiaxiom/react/Card";
1515
-
1516
- const CardAction = React.forwardRef(
1517
- ({ children, ...props }, ref) => {
1518
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ActionsContent, { flex: "1", ref, ...props, children });
1519
- }
1520
- );
1521
- CardAction.displayName = "@optiaxiom/react/CardAction";
1522
-
1523
- var checkbox = IconMagnifyingGlass.recipeRuntime({base:['eerirm']});
1524
-
1525
- const CardCheckbox = React.forwardRef(
1526
- ({ className, onChange, ...props }, ref) => {
1527
- const labelPrefixId = reactId.useId();
1528
- const { labelId } = useCardContext("@optiaxiom/react/CardCheckbox");
1529
- const [checked, setChecked] = reactUseControllableState.useControllableState({
1530
- caller: "@optiaxiom/react/CardCheckbox",
1531
- defaultProp: props.defaultChecked,
1532
- prop: props.checked
1533
- });
1534
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1535
- /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.VisuallyHidden, { id: labelPrefixId, children: [
1536
- "Check to ",
1537
- checked ? "unselect" : "select"
1538
- ] }),
1539
- /* @__PURE__ */ jsxRuntime.jsx(
1540
- IconMagnifyingGlass.Checkbox,
1541
- {
1542
- "aria-labelledby": clsx(labelPrefixId, labelId),
1543
- onChange: (event) => {
1544
- onChange?.(event);
1545
- setChecked(event.target.checked);
1546
- },
1547
- ref,
1548
- ...checkbox({}, className),
1549
- ...props
1550
- }
1551
- )
1552
- ] });
1553
- }
1554
- );
1555
- CardCheckbox.displayName = "@optiaxiom/react/CardCheckbox";
1556
-
1557
- const CardFooter = React.forwardRef(
1558
- ({ children, ...props }, ref) => {
1559
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { alignSelf: "stretch", mt: "auto", ref, ...props, children });
1560
- }
1561
- );
1562
- CardFooter.displayName = "@optiaxiom/react/CardFooter";
1563
-
1564
- var addon = IconMagnifyingGlass.recipeRuntime({base:[{flex:'none',flexDirection:'row',gap:'8'}],variants:{slot:{after:'tj5zb2',before:'_1d7bacd'}}});
1565
- var content = IconMagnifyingGlass.recipeRuntime({base:[{flex:'1'},'_9dft3b']});
1566
- var header = IconMagnifyingGlass.recipeRuntime({base:[{alignSelf:'stretch',flexDirection:'row',gap:'12',justifyContent:'space-between'},'xuqo62']});
1567
-
1568
- const CardHeader = React.forwardRef(
1569
- ({ addonAfter, addonBefore, children, className, description, ...props }, ref) => {
1570
- const { descriptionId, labelId } = useCardContext(
1571
- "@optiaxiom/react/CardHeader"
1572
- );
1573
- return /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Flex, { ref, ...header({}, className), ...props, children: [
1574
- /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { ...content(), children: [
1575
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Heading, { fontSize: "md", fontWeight: "500", id: labelId, level: "2", children }),
1576
- description && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { color: "fg.tertiary", fontSize: "sm", id: descriptionId, children: description })
1577
- ] }),
1578
- addonBefore && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { ...addon({ slot: "before" }), children: addonBefore }),
1579
- addonAfter && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { ...addon({ slot: "after" }), children: addonAfter })
1580
- ] });
1581
- }
1582
- );
1583
- CardHeader.displayName = "@optiaxiom/react/CardHeader";
1584
-
1585
- var image = IconMagnifyingGlass.recipeRuntime({base:{objectFit:'cover',rounded:'inherit',size:'full'}});
1586
-
1587
- const CardImage = React.forwardRef(
1588
- ({ alt = "", asChild, children, className, src, ...props }, ref) => {
1589
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, ref, ...image({}, className), ...props, children: asChild ? children : /* @__PURE__ */ jsxRuntime.jsx("img", { alt, src }) });
1590
- }
1591
- );
1592
- CardImage.displayName = "@optiaxiom/react/CardImage";
1593
-
1594
- const CardLink = React.forwardRef(
1595
- ({ ...props }, ref) => {
1596
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Link, { appearance: "subtle", cover: true, ref, ...props });
1597
- }
1598
- );
1599
- CardLink.displayName = "@optiaxiom/react/CardLink";
1600
-
1601
- var overlay = IconMagnifyingGlass.recipeRuntime({base:[{display:'flex',flexWrap:'wrap'},'eh46zx']});
1602
- var preview = IconMagnifyingGlass.recipeRuntime({base:[{alignSelf:'stretch',display:'grid',placeItems:'center'},'_1nas6u9']});
1603
-
1604
- const CardPreview = React.forwardRef(
1605
- ({
1606
- addonBottomLeft,
1607
- addonBottomRight,
1608
- addonTopLeft,
1609
- addonTopRight,
1610
- children,
1611
- className,
1612
- ...props
1613
- }, ref) => {
1614
- return /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { ref, ...preview({}, className), ...props, children: [
1615
- children,
1616
- (addonTopLeft || addonTopRight) && /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { ...overlay(), children: [
1617
- /* @__PURE__ */ jsxRuntime.jsx(
1618
- IconMagnifyingGlass.Box,
1619
- {
1620
- alignItems: "center",
1621
- alignSelf: "start",
1622
- display: "flex",
1623
- justifyContent: "space-between",
1624
- children: addonTopLeft
1625
- }
1626
- ),
1627
- /* @__PURE__ */ jsxRuntime.jsx(
1628
- IconMagnifyingGlass.Box,
1629
- {
1630
- alignItems: "center",
1631
- alignSelf: "start",
1632
- display: "flex",
1633
- justifyContent: "space-between",
1634
- children: addonTopRight
1635
- }
1636
- ),
1637
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { w: "full" }),
1638
- /* @__PURE__ */ jsxRuntime.jsx(
1639
- IconMagnifyingGlass.Box,
1640
- {
1641
- alignItems: "center",
1642
- alignSelf: "end",
1643
- display: "flex",
1644
- justifyContent: "space-between",
1645
- children: addonBottomLeft
1646
- }
1647
- ),
1648
- /* @__PURE__ */ jsxRuntime.jsx(
1649
- IconMagnifyingGlass.Box,
1650
- {
1651
- alignItems: "center",
1652
- alignSelf: "end",
1653
- display: "flex",
1654
- justifyContent: "space-between",
1655
- children: addonBottomRight
1656
- }
1657
- )
1658
- ] })
1659
- ] });
1660
- }
1661
- );
1662
- CardPreview.displayName = "@optiaxiom/react/CardPreview";
1663
-
1664
- const [FileUploadProvider, useFileUploadContext] = reactContext.createContext("@optiaxiom/react/FileUpload");
1665
-
1666
- const FileUpload = React.forwardRef(
1667
- ({ accept, children, onFilesDrop, ...props }, ref) => {
1668
- const {
1669
- getInputProps,
1670
- getRootProps,
1671
- isDragAccept,
1672
- isDragActive,
1673
- isDragReject
1674
- } = reactDropzone.useDropzone({
1675
- accept,
1676
- onDrop: (acceptedFiles) => {
1677
- if (acceptedFiles.length) {
1678
- onFilesDrop?.(acceptedFiles);
1679
- }
1680
- }
1681
- });
1682
- return /* @__PURE__ */ jsxRuntime.jsx(
1683
- FileUploadProvider,
1684
- {
1685
- getInputProps,
1686
- getRootProps,
1687
- isDragAccept: isDragActive && isDragAccept,
1688
- isDragReject: isDragActive && isDragReject,
1689
- children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { color: "fg.default", ref, ...props, children })
1690
- }
1691
- );
1692
- }
1693
- );
1694
- FileUpload.displayName = "@optiaxiom/react/FileUpload";
1695
-
1696
- const IconFileImportSolid = IconMagnifyingGlass.withIcon(
1697
- {
1698
- name: "IconFileImportSolid",
1699
- viewBox: "0 0 512 512"
1700
- },
1701
- // <!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
1702
- /* @__PURE__ */ jsxRuntime.jsx(
1703
- "path",
1704
- {
1705
- d: "M128 64c0-35.3 28.7-64 64-64L352 0l0 128c0 17.7 14.3 32 32 32l128 0 0 288c0 35.3-28.7 64-64 64l-256 0c-35.3 0-64-28.7-64-64l0-112 174.1 0-39 39c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l80-80c9.4-9.4 9.4-24.6 0-33.9l-80-80c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l39 39L128 288l0-224zm0 224l0 48L24 336c-13.3 0-24-10.7-24-24s10.7-24 24-24l104 0zM512 128l-128 0L384 0 512 128z",
1706
- fill: "currentColor"
1707
- }
1708
- )
1709
- );
1710
-
1711
- var dropzone = IconMagnifyingGlass.recipeRuntime({base:[{alignItems:'center',border:'1',cursor:'pointer',display:'flex',flexDirection:'column',fontSize:'md',gap:'8',justifyContent:'center',p:'16',rounded:'lg',textAlign:'center',transition:'colors'},'gx5wdj'],variants:{drag:{accept:[{borderColor:'border.success'},'l5sijz'],'default':'_1387npu',reject:[{borderColor:'border.error'},'_1b8t850']}}});
1712
-
1713
- const FileUploadDropzone = React.forwardRef(({ children, className, ...props }, ref) => {
1714
- const { getInputProps, getRootProps, isDragAccept, isDragReject } = useFileUploadContext("@optiaxiom/react/FileUploadDropzone");
1715
- const id = reactId.useId();
1716
- return /* @__PURE__ */ jsxRuntime.jsxs(
1717
- IconMagnifyingGlass.Box,
1718
- {
1719
- ref,
1720
- ...getRootProps({
1721
- ...dropzone(
1722
- {
1723
- drag: isDragAccept ? "accept" : isDragReject ? "reject" : "default"
1724
- },
1725
- className
1726
- ),
1727
- ...props
1728
- }),
1729
- children: [
1730
- /* @__PURE__ */ jsxRuntime.jsx("input", { "aria-labelledby": id, ...getInputProps() }),
1731
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Icon, { asChild: true, color: "fg.secondary", children: /* @__PURE__ */ jsxRuntime.jsx(IconFileImportSolid, {}) }),
1732
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { "aria-hidden": true, id, children: "Drag and drop or click to upload" }),
1733
- children
1734
- ]
1735
- }
1736
- );
1737
- });
1738
- FileUploadDropzone.displayName = "@optiaxiom/react/FileUploadDropzone";
1739
-
1740
- var mark = IconMagnifyingGlass.recipeRuntime({base:'_3vivuf'});
1741
-
1742
- const useHighlightedChunks = (content, query) => {
1743
- const terms = React.useMemo(
1744
- () => (Array.isArray(query) ? query : query ? [query] : []).map((q) => typeof q === "string" ? q.trim() : q).filter(Boolean),
1745
- [query]
1746
- );
1747
- if (terms.length === 0) {
1748
- return [{ chunk: content, highlighted: false }];
1749
- }
1750
- const pattern = new RegExp(
1751
- "(" + terms.map(
1752
- (term) => term instanceof RegExp ? term.source : `(?![^<>]*>)(^|\\b)(?=[^/.])${escapeRegExp(term)}`
1753
- ).join("|") + ")",
1754
- "gi"
1755
- );
1756
- return content.split(pattern).map((chunk) => ({ chunk, highlighted: pattern.test(chunk) }));
1757
- };
1758
- function escapeRegExp(string) {
1759
- return string.replace(/[/\-\\^$*+?.()|[\]{}]/g, "\\$&");
1760
- }
1761
-
1762
- const Highlight = React.forwardRef(
1763
- ({ children = (chunk) => chunk, content, query, ...props }, ref) => {
1764
- const chunks = useHighlightedChunks(content || "", query);
1765
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ref, ...props, children: chunks.map(({ chunk, highlighted }, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: highlighted ? children(
1766
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, ...mark(), children: /* @__PURE__ */ jsxRuntime.jsx("mark", { children: chunk }) })
1767
- ) : chunk }, index)) });
1768
- }
1769
- );
1770
- Highlight.displayName = "@optiaxiom/react/Highlight";
1771
-
1772
- var editor = IconMagnifyingGlass.recipeRuntime({base:'_1chopd0',variants:{empty:{false:{},true:'_172b1ql'}}});
1773
- var input = IconMagnifyingGlass.recipeRuntime({base:'to9nrm'});
469
+ var editor = Calendar.recipeRuntime({base:'_1ssosau',variants:{empty:{false:{},true:'_6nf29j'}}});
470
+ var input = Calendar.recipeRuntime({base:'_1f40vzs'});
1774
471
 
1775
472
  const InlineInput = React.forwardRef(
1776
473
  ({
@@ -1809,8 +506,8 @@ const InlineInput = React.forwardRef(
1809
506
  }
1810
507
  }
1811
508
  }, [multiline, value]);
1812
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ref, ...input({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
1813
- IconMagnifyingGlass.Box,
509
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { ref, ...input({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
510
+ Calendar.Box,
1814
511
  {
1815
512
  "aria-multiline": multiline,
1816
513
  "aria-readonly": disabled,
@@ -1856,11 +553,11 @@ const Resizable = ({ ...props }) => {
1856
553
  };
1857
554
  Resizable.displayName = "@optiaxiom/react/Resizable";
1858
555
 
1859
- var handle$1 = IconMagnifyingGlass.recipeRuntime({base:[{border:'1',h:'56',rounded:'sm',w:'12'},'rmt8il']});
1860
- var root = IconMagnifyingGlass.recipeRuntime({base:[{justifyContent:'center',rounded:'sm',z:'10'},'kemtbh']});
556
+ var handle$1 = Calendar.recipeRuntime({base:[{border:'1',h:'56',rounded:'sm',w:'12'},'achgs1']});
557
+ var root = Calendar.recipeRuntime({base:[{justifyContent:'center',rounded:'sm',z:'10'},'_23ywip']});
1861
558
 
1862
559
  const ResizableHandle = (props) => {
1863
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { asChild: true, ...root(), children: /* @__PURE__ */ jsxRuntime.jsx(ResizablePrimitive__namespace.PanelResizeHandle, { ...props, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ...handle$1() }) }) });
560
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { asChild: true, ...root(), children: /* @__PURE__ */ jsxRuntime.jsx(ResizablePrimitive__namespace.PanelResizeHandle, { ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { ...handle$1() }) }) });
1864
561
  };
1865
562
  ResizableHandle.displayName = "@optiaxiom/react/ResizableHandle";
1866
563
 
@@ -1869,32 +566,32 @@ const ResizablePanel = ({ ...props }) => {
1869
566
  };
1870
567
  ResizablePanel.displayName = "@optiaxiom/react/ResizablePanel";
1871
568
 
1872
- var layout = IconMagnifyingGlass.recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'urndrg']});
569
+ var layout = Calendar.recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'_1vk4zlb'],variants:{size:{full:'h9r0y',screen:'_16rna53'}}});
1873
570
 
1874
571
  const Layout = React.forwardRef(
1875
- ({ aside, children, className, header, resizable, sidebar, ...props }, ref) => {
1876
- return /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { ref, ...layout({}, className), ...props, children: [
572
+ ({
573
+ children,
574
+ className,
575
+ detailsPanel,
576
+ header,
577
+ resizable,
578
+ sidebar,
579
+ size = "screen",
580
+ ...props
581
+ }, ref) => {
582
+ return /* @__PURE__ */ jsxRuntime.jsxs(Calendar.Box, { ref, ...layout({ size }, className), ...props, children: [
1877
583
  header,
1878
- /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { alignItems: "stretch", display: "flex", flex: "1", overflow: "auto", children: [
584
+ /* @__PURE__ */ jsxRuntime.jsxs(Calendar.Box, { display: "flex", flex: "1", overflow: "auto", children: [
1879
585
  sidebar,
1880
586
  resizable ? /* @__PURE__ */ jsxRuntime.jsxs(Resizable, { direction: "horizontal", children: [
1881
- /* @__PURE__ */ jsxRuntime.jsx(ResizablePanel, { children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { h: "full", overflow: "auto", px: "32", py: "24", children }) }),
1882
- aside && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
587
+ /* @__PURE__ */ jsxRuntime.jsx(ResizablePanel, { minSize: 33, children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { asChild: true, h: "full", children }) }),
588
+ detailsPanel && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1883
589
  /* @__PURE__ */ jsxRuntime.jsx(ResizableHandle, {}),
1884
- /* @__PURE__ */ jsxRuntime.jsx(ResizablePanel, { defaultSize: 33, children: aside })
590
+ /* @__PURE__ */ jsxRuntime.jsx(ResizablePanel, { defaultSize: 33, minSize: 33, children: detailsPanel })
1885
591
  ] })
1886
- ] }) : /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { alignItems: "stretch", display: "flex", flex: "1", children: [
1887
- /* @__PURE__ */ jsxRuntime.jsx(
1888
- IconMagnifyingGlass.Box,
1889
- {
1890
- overflow: "auto",
1891
- px: "32",
1892
- py: "24",
1893
- w: aside ? "2/3" : void 0,
1894
- children
1895
- }
1896
- ),
1897
- aside && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { w: "1/3", children: aside })
592
+ ] }) : /* @__PURE__ */ jsxRuntime.jsxs(Calendar.Box, { display: "flex", flex: "1", children: [
593
+ /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { asChild: true, w: detailsPanel ? "2/3" : "full", children }),
594
+ detailsPanel && /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { w: "1/3", children: detailsPanel })
1898
595
  ] })
1899
596
  ] })
1900
597
  ] });
@@ -1902,24 +599,72 @@ const Layout = React.forwardRef(
1902
599
  );
1903
600
  Layout.displayName = "@optiaxiom/react/Layout";
1904
601
 
1905
- var pill = IconMagnifyingGlass.recipeRuntime({base:[{alignItems:'center',color:'fg.default',display:'flex',fontSize:'sm',gap:'4',px:'6',rounded:'md',whiteSpace:'nowrap'},'n6ny1z'],variants:{size:{xs:{h:'xs'},sm:{h:'sm'}}}});
602
+ var content = Calendar.recipeRuntime({base:[{overflow:'auto',px:'32',py:'24'},'xp3uzw']});
603
+
604
+ const LayoutContent = React.forwardRef(
605
+ ({ children, className, ...props }, ref) => {
606
+ return /* @__PURE__ */ jsxRuntime.jsx(
607
+ Calendar.Flex,
608
+ {
609
+ ref,
610
+ tabIndex: 0,
611
+ ...content({}, className),
612
+ ...props,
613
+ children
614
+ }
615
+ );
616
+ }
617
+ );
618
+ LayoutContent.displayName = "@optiaxiom/react/LayoutContent";
619
+
620
+ var pill = Calendar.recipeRuntime({base:[{alignItems:'center',color:'fg.default',display:'flex',fontSize:'sm',gap:'4',px:'6',rounded:'md',transition:'colors',whiteSpace:'nowrap'},'z39rqt'],variants:{interactive:{false:{},true:'e5urnp'},size:{xs:{h:'xs'},sm:{h:'sm'}}}});
1906
621
 
1907
622
  const Slot = reactSlot.createSlot("@optiaxiom/react/Pill");
1908
623
  const Pill = React.forwardRef(
1909
- ({ asChild, children, className, disabled, size = "sm", ...props }, ref) => {
1910
- const Comp = asChild ? Slot : "button";
1911
- const { boxProps, restProps } = IconMagnifyingGlass.extractBoxProps(props);
624
+ ({
625
+ asChild,
626
+ children,
627
+ className,
628
+ disabled,
629
+ onClick,
630
+ onDismiss,
631
+ size = "sm",
632
+ ...props
633
+ }, ref) => {
634
+ const Comp = asChild ? Slot : onClick || onDismiss ? "button" : "span";
635
+ const { boxProps, restProps } = Calendar.extractBoxProps(props);
1912
636
  return /* @__PURE__ */ jsxRuntime.jsx(
1913
- IconMagnifyingGlass.Box,
637
+ Calendar.Box,
1914
638
  {
1915
639
  asChild: true,
1916
640
  "data-disabled": disabled ? "" : void 0,
1917
- ...pill({ size }, className),
641
+ ...pill(
642
+ {
643
+ interactive: Boolean(onClick || onDismiss),
644
+ size
645
+ },
646
+ className
647
+ ),
1918
648
  ...boxProps,
1919
- children: /* @__PURE__ */ jsxRuntime.jsxs(Comp, { disabled, ref, ...restProps, children: [
1920
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { truncate: true, children }),
1921
- /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Icon, { asChild: true, h: "12", ml: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconX, {}) })
1922
- ] })
649
+ children: /* @__PURE__ */ jsxRuntime.jsxs(
650
+ Comp,
651
+ {
652
+ disabled,
653
+ onClick: (event) => {
654
+ onClick?.(event);
655
+ if (event.defaultPrevented) {
656
+ return;
657
+ }
658
+ onDismiss?.();
659
+ },
660
+ ref,
661
+ ...restProps,
662
+ children: [
663
+ /* @__PURE__ */ jsxRuntime.jsx(Calendar.Text, { truncate: true, children }),
664
+ onDismiss && /* @__PURE__ */ jsxRuntime.jsx(Calendar.Icon, { asChild: true, h: "12", ml: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.IconX, {}) })
665
+ ]
666
+ }
667
+ )
1923
668
  }
1924
669
  );
1925
670
  }
@@ -1928,11 +673,232 @@ Pill.displayName = "@optiaxiom/react/Pill";
1928
673
 
1929
674
  const PillGroup = React.forwardRef(
1930
675
  ({ children, ...props }, ref) => {
1931
- return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { flexDirection: "row", gap: "12", ref, ...props, children });
676
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { flexDirection: "row", flexWrap: "wrap", gap: "8", ref, ...props, children });
1932
677
  }
1933
678
  );
1934
679
  PillGroup.displayName = "@optiaxiom/react/PillGroup";
1935
680
 
681
+ const [PillMenuProvider, usePillMenuContext] = reactContext.createContext("@optiaxiom/react/PillMenu");
682
+
683
+ const PillMenuPill = React.forwardRef(
684
+ ({ item, onKeyDown, ...props }, ref) => {
685
+ const { options } = usePillMenuContext("@optiaxiom/react/PillMenuPill");
686
+ const { open, setOpen } = Calendar.useMenuContext("@optiaxiom/react/PillMenuPill");
687
+ const { inputValue } = Calendar.useCommandContext("@optiaxiom/react/PillMenuPill");
688
+ const index = options.indexOf(item);
689
+ const hasInteractedInsideRef = React.useRef(false);
690
+ return /* @__PURE__ */ jsxRuntime.jsx(
691
+ Pill,
692
+ {
693
+ onClick: () => {
694
+ if (hasInteractedInsideRef.current) {
695
+ hasInteractedInsideRef.current = false;
696
+ return;
697
+ }
698
+ setOpen(!open);
699
+ },
700
+ onKeyDown: (event) => {
701
+ if (event.key === "Backspace") {
702
+ if (index === 0 || index !== options.length - 1) {
703
+ event.key = index > 0 ? "ArrowLeft" : "ArrowRight";
704
+ }
705
+ item.execute?.({ dismiss: false, inputValue });
706
+ }
707
+ onKeyDown?.(event);
708
+ },
709
+ onPointerDown: () => {
710
+ hasInteractedInsideRef.current = Boolean(open);
711
+ },
712
+ ref,
713
+ ...props,
714
+ children: Calendar.resolveItemProperty(item.label, { inputValue })
715
+ }
716
+ );
717
+ }
718
+ );
719
+ PillMenuPill.displayName = "@optiaxiom/react/PillMenuPill";
720
+
721
+ const PillMenuImpl = React.forwardRef(
722
+ ({ children, ...props }, outerRef) => {
723
+ const { options } = usePillMenuContext("@optiaxiom/react/PillMenuImpl");
724
+ const { size } = Calendar.useMenuContext("@optiaxiom/react/PillMenuImpl");
725
+ const { inputValue } = Calendar.useCommandContext("@optiaxiom/react/PillMenuImpl");
726
+ const innerRef = React.useRef(null);
727
+ const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
728
+ return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
729
+ /* @__PURE__ */ jsxRuntime.jsx(PillGroup, { asChild: true, ref, role: "toolbar", ...props, children: /* @__PURE__ */ jsxRuntime.jsxs(RadixRovingFocus__namespace.Root, { orientation: "horizontal", children: [
730
+ options.slice(0, -1).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
731
+ RadixRovingFocus__namespace.Item,
732
+ {
733
+ asChild: true,
734
+ children: /* @__PURE__ */ jsxRuntime.jsx(PillMenuPill, { item })
735
+ },
736
+ item.key ?? Calendar.resolveItemProperty(item.label, { inputValue })
737
+ )),
738
+ /* @__PURE__ */ jsxRuntime.jsxs(PillGroup, { children: [
739
+ options.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(RadixRovingFocus__namespace.Item, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(PillMenuPill, { item: options[options.length - 1] }) }, "pill"),
740
+ children
741
+ ] })
742
+ ] }) }),
743
+ size === "sm" && /* @__PURE__ */ jsxRuntime.jsx(Calendar.PopoverAnchor, { staticRef: innerRef })
744
+ ] });
745
+ }
746
+ );
747
+ PillMenuImpl.displayName = "@optiaxiom/react/PillMenuImpl";
748
+
749
+ const PillMenu = React.forwardRef(
750
+ ({
751
+ children,
752
+ defaultOpen = false,
753
+ empty,
754
+ inputValue,
755
+ inputVisible,
756
+ loading,
757
+ onInputValueChange,
758
+ onOpenChange,
759
+ open: openProp,
760
+ options,
761
+ placeholder,
762
+ ...props
763
+ }, ref) => {
764
+ const [open, setOpen] = reactUseControllableState.useControllableState({
765
+ caller: "@optiaxiom/react/PillMenu",
766
+ defaultProp: defaultOpen,
767
+ onChange: onOpenChange,
768
+ prop: openProp
769
+ });
770
+ const [optionIndexes, setOptionIndexes] = React.useState(
771
+ () => groupOptions(options)
772
+ );
773
+ return /* @__PURE__ */ jsxRuntime.jsx(
774
+ PillMenuProvider,
775
+ {
776
+ options: options.filter((item) => Calendar.resolveItemProperty(item.selected)),
777
+ children: /* @__PURE__ */ jsxRuntime.jsx(
778
+ Calendar.Menu,
779
+ {
780
+ empty,
781
+ inputValue,
782
+ inputVisible,
783
+ loading,
784
+ onInputValueChange,
785
+ onOpenChange: (open2) => {
786
+ setOpen(open2);
787
+ if (open2) {
788
+ setOptionIndexes(groupOptions(options));
789
+ }
790
+ },
791
+ open,
792
+ options: React.useMemo(
793
+ () => optionIndexes.map(({ group, index }) => ({
794
+ ...options[index],
795
+ ...group && {
796
+ group: {
797
+ hidden: true,
798
+ label: group,
799
+ separator: true
800
+ }
801
+ }
802
+ })),
803
+ [optionIndexes, options]
804
+ ),
805
+ placeholder,
806
+ children: /* @__PURE__ */ jsxRuntime.jsx(PillMenuImpl, { ref, ...props, children })
807
+ }
808
+ )
809
+ }
810
+ );
811
+ }
812
+ );
813
+ PillMenu.displayName = "@optiaxiom/react/PillMenu";
814
+ const groupOptions = (options) => options.map((option, index) => ({
815
+ index,
816
+ option
817
+ })).sort(({ index: aIndex, option: a }, { index: bIndex, option: b }) => {
818
+ if (Calendar.resolveItemProperty(a.selected) === Calendar.resolveItemProperty(b.selected)) {
819
+ return aIndex - bIndex;
820
+ } else if (Calendar.resolveItemProperty(a.selected)) {
821
+ return -1;
822
+ } else {
823
+ return 1;
824
+ }
825
+ }).map(({ index, option }) => ({
826
+ group: Calendar.resolveItemProperty(option.selected) ? "selected" : void 0,
827
+ index
828
+ }));
829
+
830
+ const PillMenuContent = React.forwardRef(
831
+ (props, ref) => {
832
+ const lastFocusRef = React.useRef();
833
+ return /* @__PURE__ */ jsxRuntime.jsx(
834
+ Calendar.MenuContent,
835
+ {
836
+ onCloseAutoFocus: (event) => {
837
+ if (lastFocusRef.current instanceof HTMLElement && lastFocusRef.current !== document.body && document.body.contains(lastFocusRef.current)) {
838
+ event.preventDefault();
839
+ lastFocusRef.current.focus();
840
+ }
841
+ lastFocusRef.current = void 0;
842
+ },
843
+ onOpenAutoFocus: () => {
844
+ lastFocusRef.current = document.activeElement ?? void 0;
845
+ },
846
+ ref,
847
+ ...props
848
+ }
849
+ );
850
+ }
851
+ );
852
+ PillMenuContent.displayName = "@optiaxiom/react/PillMenuContent";
853
+
854
+ const IconPlusSolid = Calendar.withIcon(
855
+ {
856
+ name: "IconPlusSolid",
857
+ viewBox: "0 0 448 512"
858
+ },
859
+ // <!--!Font Awesome Free 6.7.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2025 Fonticons, Inc.-->
860
+ /* @__PURE__ */ jsxRuntime.jsx(
861
+ "path",
862
+ {
863
+ d: "M256 80c0-17.7-14.3-32-32-32s-32 14.3-32 32l0 144L48 224c-17.7 0-32 14.3-32 32s14.3 32 32 32l144 0 0 144c0 17.7 14.3 32 32 32s32-14.3 32-32l0-144 144 0c17.7 0 32-14.3 32-32s-14.3-32-32-32l-144 0 0-144z",
864
+ fill: "currentColor"
865
+ }
866
+ )
867
+ );
868
+
869
+ const PillMenuTrigger = React.forwardRef(({ onKeyDown, ...props }, outerRef) => {
870
+ const { options } = usePillMenuContext("@optiaxiom/react/PillMenuTrigger");
871
+ const { inputValue } = Calendar.useCommandContext("@optiaxiom/react/PillMenuTrigger");
872
+ const innerRef = React.useRef(null);
873
+ const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
874
+ return /* @__PURE__ */ jsxRuntime.jsx(RadixRovingFocus__namespace.Item, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
875
+ Calendar.MenuTrigger,
876
+ {
877
+ appearance: options.length ? "subtle" : "default",
878
+ "aria-label": props["aria-label"],
879
+ icon: /* @__PURE__ */ jsxRuntime.jsx(IconPlusSolid, {}),
880
+ onKeyDown: (event) => {
881
+ onKeyDown?.(event);
882
+ if (event.defaultPrevented) {
883
+ return;
884
+ }
885
+ if (event.key === "Backspace") {
886
+ if (options.length) {
887
+ const last = options.length - 1;
888
+ options[last].execute?.({ dismiss: false, inputValue });
889
+ }
890
+ }
891
+ },
892
+ ref,
893
+ rounded: options.length ? "full" : void 0,
894
+ size: "sm",
895
+ ...props,
896
+ children: options.length ? void 0 : props["aria-label"]
897
+ }
898
+ ) }, "trigger");
899
+ });
900
+ PillMenuTrigger.displayName = "@optiaxiom/react/PillMenuTrigger";
901
+
1936
902
  const [SortableProvider, useSortableContext] = reactContext.createContext("@optiaxiom/react/Sortable");
1937
903
 
1938
904
  const Sortable = React.forwardRef(
@@ -1967,7 +933,7 @@ const Sortable = React.forwardRef(
1967
933
  onDragStart: () => {
1968
934
  setItemsState(itemsProp ?? []);
1969
935
  },
1970
- children: /* @__PURE__ */ jsxRuntime.jsx(SortableProvider, { cacheRef, isSorting: itemsState !== null, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { ref, ...props, children: children?.(items) }) })
936
+ children: /* @__PURE__ */ jsxRuntime.jsx(SortableProvider, { cacheRef, isSorting: itemsState !== null, children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { ref, ...props, children: children?.(items) }) })
1971
937
  }
1972
938
  );
1973
939
  }
@@ -1990,12 +956,12 @@ const SortableGroup = React.forwardRef(
1990
956
  type: "group"
1991
957
  });
1992
958
  const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1993
- return /* @__PURE__ */ jsxRuntime.jsx(SortableGroupProvider, { id, setHasDropTarget, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { ref, ...props, children: typeof children === "function" ? children(isDropTarget || hasDropTarget) : children }) });
959
+ return /* @__PURE__ */ jsxRuntime.jsx(SortableGroupProvider, { id, setHasDropTarget, children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Flex, { ref, ...props, children: typeof children === "function" ? children(isDropTarget || hasDropTarget) : children }) });
1994
960
  }
1995
961
  );
1996
962
  SortableGroup.displayName = "@optiaxiom/react/SortableGroup";
1997
963
 
1998
- var handle = IconMagnifyingGlass.recipeRuntime({base:'_1ron25l'});
964
+ var handle = Calendar.recipeRuntime({base:'lotvi6'});
1999
965
 
2000
966
  const [SortableItemProvider, useSortableItemContext] = reactContext.createContext("@optiaxiom/react/SortableItem");
2001
967
 
@@ -2006,7 +972,7 @@ const SortableHandle = React.forwardRef(
2006
972
  );
2007
973
  const ref = reactComposeRefs.useComposedRefs(handleRef, outerRef);
2008
974
  return /* @__PURE__ */ jsxRuntime.jsx(
2009
- IconMagnifyingGlass.Box,
975
+ Calendar.Box,
2010
976
  {
2011
977
  "aria-label": "draggable",
2012
978
  "data-state": isDragging ? "active" : void 0,
@@ -2020,7 +986,7 @@ const SortableHandle = React.forwardRef(
2020
986
  );
2021
987
  SortableHandle.displayName = "@optiaxiom/react/SortableHandle";
2022
988
 
2023
- var item = IconMagnifyingGlass.recipeRuntime({base:'_18neqq5',variants:{handle:{false:{},true:'_1o1w3ko'}}});
989
+ var item = Calendar.recipeRuntime({base:'_13b2frh',variants:{handle:{false:{},true:'_1dgl42i'}}});
2024
990
 
2025
991
  const SortableItem = React.forwardRef(
2026
992
  ({ children, className, index, item: id, ...props }, outerRef) => {
@@ -2056,7 +1022,7 @@ const SortableItem = React.forwardRef(
2056
1022
  cacheRef.current.set(id, children);
2057
1023
  }
2058
1024
  return /* @__PURE__ */ jsxRuntime.jsx(SortableItemProvider, { handleRef, isDragging, children: /* @__PURE__ */ jsxRuntime.jsx(
2059
- IconMagnifyingGlass.Box,
1025
+ Calendar.Box,
2060
1026
  {
2061
1027
  "data-sortable-dragging": isDragging ? "" : void 0,
2062
1028
  ref,
@@ -2070,52 +1036,45 @@ const SortableItem = React.forwardRef(
2070
1036
  SortableItem.displayName = "@optiaxiom/react/SortableItem";
2071
1037
 
2072
1038
  function Spotlight({ children, ...props }) {
2073
- return /* @__PURE__ */ jsxRuntime.jsx(Menu, { inputVisible: "always", size: "lg", ...props, children });
1039
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.Menu, { inputVisible: "always", size: "lg", ...props, children });
2074
1040
  }
2075
1041
  Spotlight.displayName = "@optiaxiom/react/Spotlight";
2076
1042
 
2077
1043
  const SpotlightContent = React.forwardRef((props, ref) => {
2078
- return /* @__PURE__ */ jsxRuntime.jsx(MenuContent, { "aria-label": "Quick search", ref, ...props });
1044
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.MenuContent, { "aria-label": "Quick search", ref, ...props });
2079
1045
  });
2080
1046
  SpotlightContent.displayName = "@optiaxiom/react/SpotlightContent";
2081
1047
 
2082
1048
  const DEFAULT_HOTKEY = "mod+K";
2083
1049
  const SpotlightTrigger = React.forwardRef(({ children, ...props }, ref) => {
2084
- const { open, setOpen } = useMenuContext("@optiaxiom/react/SpotlightTrigger");
1050
+ const { open, setOpen } = Calendar.useMenuContext("@optiaxiom/react/SpotlightTrigger");
2085
1051
  useHotkeys([[DEFAULT_HOTKEY, () => setOpen(!open)]]);
2086
- return /* @__PURE__ */ jsxRuntime.jsx(MenuTrigger, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconMagnifyingGlass, {}), children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { color: "fg.tertiary", children }) }) });
1052
+ return /* @__PURE__ */ jsxRuntime.jsx(Calendar.MenuTrigger, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(Calendar.IconMagnifyingGlass, {}), children: /* @__PURE__ */ jsxRuntime.jsx(Calendar.Box, { color: "fg.tertiary", children }) }) });
2087
1053
  });
2088
1054
  SpotlightTrigger.displayName = "@optiaxiom/react/SpotlightTrigger";
2089
1055
 
2090
- exports.Calendar = IconMagnifyingGlass.Calendar;
2091
- exports.DataTableHeaderCell = IconMagnifyingGlass.DataTableHeaderCell;
2092
- exports.Aside = Aside;
2093
- exports.AsideBody = AsideBody;
2094
- exports.AsideFooter = AsideFooter;
2095
- exports.AsideHeader = AsideHeader;
2096
- exports.Breadcrumb = Breadcrumb;
2097
- exports.Card = Card;
2098
- exports.CardAction = CardAction;
2099
- exports.CardCheckbox = CardCheckbox;
2100
- exports.CardFooter = CardFooter;
2101
- exports.CardHeader = CardHeader;
2102
- exports.CardImage = CardImage;
2103
- exports.CardLink = CardLink;
2104
- exports.CardPreview = CardPreview;
2105
- exports.Command = Command;
2106
- exports.CommandInput = CommandInput;
2107
- exports.CommandItem = CommandItem;
2108
- exports.CommandListbox = CommandListbox;
1056
+ exports.Calendar = Calendar.Calendar;
1057
+ exports.Command = Calendar.Command;
1058
+ exports.CommandInput = Calendar.CommandInput;
1059
+ exports.CommandItem = Calendar.CommandItem;
1060
+ exports.CommandListbox = Calendar.CommandListbox;
1061
+ exports.DataTableHeaderCell = Calendar.DataTableHeaderCell;
1062
+ exports.DetailsPanel = DetailsPanel;
1063
+ exports.DetailsPanelBody = DetailsPanelBody;
1064
+ exports.DetailsPanelFooter = DetailsPanelFooter;
1065
+ exports.DetailsPanelHeader = DetailsPanelHeader;
2109
1066
  exports.FileUpload = FileUpload;
2110
1067
  exports.FileUploadDropzone = FileUploadDropzone;
1068
+ exports.FileUploadTrigger = FileUploadTrigger;
2111
1069
  exports.Highlight = Highlight;
2112
1070
  exports.InlineInput = InlineInput;
2113
1071
  exports.Layout = Layout;
2114
- exports.Menu = Menu;
2115
- exports.MenuContent = MenuContent;
2116
- exports.MenuTrigger = MenuTrigger;
1072
+ exports.LayoutContent = LayoutContent;
2117
1073
  exports.Pill = Pill;
2118
1074
  exports.PillGroup = PillGroup;
1075
+ exports.PillMenu = PillMenu;
1076
+ exports.PillMenuContent = PillMenuContent;
1077
+ exports.PillMenuTrigger = PillMenuTrigger;
2119
1078
  exports.Sortable = Sortable;
2120
1079
  exports.SortableGroup = SortableGroup;
2121
1080
  exports.SortableHandle = SortableHandle;
@@ -2123,3 +1082,4 @@ exports.SortableItem = SortableItem;
2123
1082
  exports.Spotlight = Spotlight;
2124
1083
  exports.SpotlightContent = SpotlightContent;
2125
1084
  exports.SpotlightTrigger = SpotlightTrigger;
1085
+ exports.useFileUploadTrigger = useFileUploadTrigger;