@optiaxiom/react 1.9.37 → 1.9.38

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 (845) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/Flex-CatAtV5e.js +9058 -0
  3. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-C_A1xOmq.css +22 -0
  4. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-BCNiQRRI.css +6 -0
  5. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-D0lPy_5q.css +30 -0
  6. package/dist/cjs/assets/src/alert-dialog/{AlertDialogFooter.css.ts.vanilla-CiUBpfos.css → AlertDialogFooter.css.ts.vanilla-Bkomil9Q.css} +3 -3
  7. package/dist/cjs/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-a8ApVQii.css +7 -0
  8. package/dist/cjs/assets/src/avatar/{Avatar.css.ts.vanilla-DNZoLzIy.css → Avatar.css.ts.vanilla-BJawMxIe.css} +18 -18
  9. package/dist/{esm/assets/src/backdrop/Backdrop.css.ts.vanilla-BtFuvQar.css → cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-C4ao_trb.css} +3 -3
  10. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-DUK3KBDx.css +51 -0
  11. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-NyUX3jfQ.css +6 -0
  12. package/dist/{esm/assets/src/box/Box.css.ts.vanilla-BJLbpRx8.css → cjs/assets/src/box/Box.css.ts.vanilla-CyL3FCS7.css} +21 -21
  13. package/dist/cjs/assets/src/breadcrumb/{Breadcrumb.css.ts.vanilla-Dv2eEbMT.css → Breadcrumb.css.ts.vanilla-Bd1LpazS.css} +6 -6
  14. package/dist/{esm/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-Cxf-ZgXw.css → cjs/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-BkIexNlM.css} +4 -4
  15. package/dist/cjs/assets/src/button/ButtonGroup.css.ts.vanilla-CdFjsC3-.css +4 -0
  16. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-BVD9RP-X.css +9 -0
  17. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-g3vHDS5O.css +213 -0
  18. package/dist/cjs/assets/src/calendar/Calendar.css.ts.vanilla-0AO3Yw1N.css +6 -0
  19. package/dist/{esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-BvVmb_Bl.css → cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-D9UOKwWn.css} +24 -24
  20. package/dist/cjs/assets/src/calendar/CalendarGrid.css.ts.vanilla-DEl68hnX.css +7 -0
  21. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-pd6nmf6Y.css +6 -0
  22. package/dist/cjs/assets/src/calendar/CalendarNextMonthButton.css.ts.vanilla-b9p8AbO5.css +8 -0
  23. package/dist/cjs/assets/src/calendar/CalendarPreviousMonthButton.css.ts.vanilla-BlGeI6AQ.css +8 -0
  24. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-DNZjkOCP.css +8 -0
  25. package/dist/{esm/assets/src/card/CardCheckbox.css.ts.vanilla-B5dRW86I.css → cjs/assets/src/card/CardCheckbox.css.ts.vanilla-yIkzexfh.css} +4 -4
  26. package/dist/cjs/assets/src/card/CardHeader.css.ts.vanilla-BvtgzziL.css +15 -0
  27. package/dist/cjs/assets/src/card/{CardPreview.css.ts.vanilla-B3lBpMAR.css → CardPreview.css.ts.vanilla-SrK1qh3G.css} +4 -4
  28. package/dist/cjs/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-B76TQBQN.css → CheckboxControl.css.ts.vanilla-CZ5yhl4s.css} +7 -7
  29. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-w1i6azH8.css +10 -0
  30. package/dist/cjs/assets/src/command/CommandItem.css.ts.vanilla-DVCEHxe6.css +6 -0
  31. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-CDEZj-Lo.css +34 -0
  32. package/dist/cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-nTomqeST.css +71 -0
  33. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-m-yfg6w-.css +6 -0
  34. package/dist/{esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-CPYdpifD.css → cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-C2eVr_Ks.css} +9 -9
  35. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-CDgWlycK.css +15 -0
  36. package/dist/cjs/assets/src/details-panel/{DetailsPanel.css.ts.vanilla-C2p1WJX2.css → DetailsPanel.css.ts.vanilla-BmU9ZKmg.css} +4 -4
  37. package/dist/cjs/assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-CaB9gcz_.css +7 -0
  38. package/dist/cjs/assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-B8JJZUBe.css +8 -0
  39. package/dist/{esm/assets/src/dialog/DialogContent.css.ts.vanilla-C9Pj5Wjn.css → cjs/assets/src/dialog/DialogContent.css.ts.vanilla-BFQb_k2s.css} +14 -14
  40. package/dist/cjs/assets/src/dialog/DialogFooter.css.ts.vanilla-ZqnJDt4j.css +7 -0
  41. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-DBBYNbGY.css +19 -0
  42. package/dist/{esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-CPmTjTKh.css → cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-B_Xy98Fz.css} +6 -6
  43. package/dist/{esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla--oF9Sg7z.css → cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-DknQaBCc.css} +6 -6
  44. package/dist/cjs/assets/src/file-upload/FileUpload.css.ts.vanilla-8KhYu3AA.css +6 -0
  45. package/dist/{esm/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-D36soXN2.css → cjs/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-BJPhhPd_.css} +9 -9
  46. package/dist/{esm/assets/src/file-upload/FileUploadListItem.css.ts.vanilla-C6nNsc-0.css → cjs/assets/src/file-upload/FileUploadListItem.css.ts.vanilla-fzvHNKs7.css} +4 -4
  47. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla--3Y-w0WQ.css +7 -0
  48. package/dist/cjs/assets/src/hover-card/HoverCardTrigger.css.ts.vanilla-BSgG8_zG.css +6 -0
  49. package/dist/cjs/assets/src/icon/{Icon.css.ts.vanilla-CJGFAqV6.css → Icon.css.ts.vanilla-dVd84DU6.css} +1 -1
  50. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-C21VOdcO.css +36 -0
  51. package/dist/cjs/assets/src/inline-input/{InlineInput.css.ts.vanilla-JPjAPfCT.css → InlineInput.css.ts.vanilla-B6dLoCLC.css} +4 -4
  52. package/dist/cjs/assets/src/input/Input.css.ts.vanilla-u6dHHiyE.css +9 -0
  53. package/dist/{esm/assets/src/input/InputControl.css.ts.vanilla-NLNP1OKO.css → cjs/assets/src/input/InputControl.css.ts.vanilla-BmOe1icm.css} +8 -8
  54. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-Cv5bospX.css +71 -0
  55. package/dist/cjs/assets/src/kbd/{Kbd.css.ts.vanilla-Ba-i4MxU.css → Kbd.css.ts.vanilla-BsUt6H-q.css} +3 -3
  56. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-Dhb4Jq6F.css +7 -0
  57. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-D2KEETGI.css +1 -0
  58. package/dist/{esm/assets/src/layout/Layout.css.ts.vanilla-Cr1gGYkW.css → cjs/assets/src/layout/Layout.css.ts.vanilla-DrhQALKH.css} +5 -5
  59. package/dist/cjs/assets/src/layout/LayoutContent.css.ts.vanilla-BD8baLK5.css +6 -0
  60. package/dist/{esm/assets/src/link/Link.css.ts.vanilla-Bm9zbaOD.css → cjs/assets/src/link/Link.css.ts.vanilla-BMk97AlZ.css} +13 -13
  61. package/dist/cjs/assets/src/listbox/Listbox.css.ts.vanilla-CXF55v5e.css +6 -0
  62. package/dist/{esm/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-Bd5q3I94.css → cjs/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-C_SmsrJ7.css} +4 -4
  63. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-DwpCpfGs.css +53 -0
  64. package/dist/cjs/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-ChCP5x-4.css → ListboxItemIndicator.css.ts.vanilla-hagNMK83.css} +4 -4
  65. package/dist/cjs/assets/src/menu/MenuDialogContent.css.ts.vanilla-CmoxpNjN.css +7 -0
  66. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-BvnfLD4w.css +6 -0
  67. package/dist/cjs/assets/src/modal/{ModalListbox.css.ts.vanilla-Ck7k8ENz.css → ModalListbox.css.ts.vanilla-NcwHywdl.css} +13 -13
  68. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-CWeRAcPY.css +6 -0
  69. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-DiA3Cmkz.css +9 -0
  70. package/dist/cjs/assets/src/nav/{NavItem.css.ts.vanilla-C2BdWr1e.css → NavItem.css.ts.vanilla-DkhnVsAB.css} +13 -13
  71. package/dist/{esm/assets/src/pagination/Pagination.css.ts.vanilla-wb15Iea4.css → cjs/assets/src/pagination/Pagination.css.ts.vanilla-C5NvzDXz.css} +5 -5
  72. package/dist/cjs/assets/src/pill/{Pill.css.ts.vanilla-Vo0uosxJ.css → Pill.css.ts.vanilla-CMUfd1c9.css} +6 -6
  73. package/dist/cjs/assets/src/pill-menu/{PillMenuTrigger.css.ts.vanilla-BV8IJ_3K.css → PillMenuTrigger.css.ts.vanilla-CL7LNm67.css} +7 -7
  74. package/dist/{esm/assets/src/progress/Progress.css.ts.vanilla-C-tP-ceK.css → cjs/assets/src/progress/Progress.css.ts.vanilla-Dn33S0hk.css} +4 -4
  75. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-CkFX2LnT.css +13 -0
  76. package/dist/cjs/assets/src/range/{Range.css.ts.vanilla-BpxPPrUH.css → Range.css.ts.vanilla-RRJfcxzG.css} +23 -23
  77. package/dist/cjs/assets/src/resizable/ResizableHandle.css.ts.vanilla-BSMn5mzL.css +19 -0
  78. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-xK0JoetK.css +10 -0
  79. package/dist/cjs/assets/src/separator/{Separator.css.ts.vanilla-C0HRBU1o.css → Separator.css.ts.vanilla-DhAb99fn.css} +8 -8
  80. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-CT_XEUMT.css +6 -0
  81. package/dist/cjs/assets/src/sortable/SortableHandle.css.ts.vanilla-DCdQQF8R.css +6 -0
  82. package/dist/cjs/assets/src/sortable/{SortableItem.css.ts.vanilla-aOh5KkMj.css → SortableItem.css.ts.vanilla-C0cu5qKt.css} +6 -6
  83. package/dist/cjs/assets/src/spinner/{Spinner.css.ts.vanilla-B-jTBYux.css → Spinner.css.ts.vanilla-DAIkCdXp.css} +4 -4
  84. package/dist/cjs/assets/src/sprinkles/{properties.css.ts.vanilla-BPB7SjyV.css → properties.css.ts.vanilla-ClO7W1Uv.css} +727 -727
  85. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-AaNhWT5G.css +6 -0
  86. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-BfOWyAqR.css +45 -0
  87. package/dist/cjs/assets/src/table/Table.css.ts.vanilla-D0C1krBH.css +18 -0
  88. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-U76qkL6H.css +6 -0
  89. package/dist/{esm/assets/src/table/TableCell.css.ts.vanilla-Dx0a-QsD.css → cjs/assets/src/table/TableCell.css.ts.vanilla-BXE1CD3J.css} +6 -6
  90. package/dist/cjs/assets/src/table/TableHeader.css.ts.vanilla-C_u5lwM5.css +8 -0
  91. package/dist/cjs/assets/src/table/{TableHeaderCell.css.ts.vanilla-Zlwkeywl.css → TableHeaderCell.css.ts.vanilla-CCQu3wV_.css} +6 -6
  92. package/dist/{esm/assets/src/table/TableRow.css.ts.vanilla-B3Y4o06J.css → cjs/assets/src/table/TableRow.css.ts.vanilla-2OQgDRrf.css} +8 -8
  93. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-BrXq8b-U.css +9 -0
  94. package/dist/cjs/assets/src/tabs/{TabsList.css.ts.vanilla-C2rTmVBw.css → TabsList.css.ts.vanilla-BbpgOd_F.css} +4 -4
  95. package/dist/{esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-C3itHkdQ.css → cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-enwO4JhO.css} +10 -10
  96. package/dist/{esm/assets/src/text/Text.css.ts.vanilla-Chg73Eev.css → cjs/assets/src/text/Text.css.ts.vanilla-DVHbnw6z.css} +8 -8
  97. package/dist/cjs/assets/src/textarea/Textarea.css.ts.vanilla-Cw2AxPV-.css +6 -0
  98. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DpOXxpP_.css +44 -0
  99. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-p9YwaT0s.css +104 -0
  100. package/dist/cjs/assets/src/toast/{ToastProvider.css.ts.vanilla-CQjeGxVv.css → ToastProvider.css.ts.vanilla-C0CRHKeJ.css} +9 -9
  101. package/dist/cjs/assets/src/toast/ToastTitle.css.ts.vanilla-BW1KKYDr.css +6 -0
  102. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-Bo7OdqI0.css +25 -0
  103. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-BLPpfzH3.css +10 -0
  104. package/dist/cjs/assets/src/transition/{Transition.css.ts.vanilla-BCVKHkFp.css → Transition.css.ts.vanilla-D249Gczs.css} +12 -12
  105. package/dist/cjs/css-runtime.js +71 -73
  106. package/dist/cjs/index.js +4454 -3366
  107. package/dist/cjs/unstable.js +1912 -1772
  108. package/dist/css-runtime.d.ts +202 -219
  109. package/dist/esm/_virtual/_rolldown/runtime.js +13 -0
  110. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-C_A1xOmq.css +22 -0
  111. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-BCNiQRRI.css +6 -0
  112. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-D0lPy_5q.css +30 -0
  113. package/dist/esm/assets/src/alert-dialog/{AlertDialogFooter.css.ts.vanilla-CiUBpfos.css → AlertDialogFooter.css.ts.vanilla-Bkomil9Q.css} +3 -3
  114. package/dist/esm/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-a8ApVQii.css +7 -0
  115. package/dist/esm/assets/src/avatar/{Avatar.css.ts.vanilla-DNZoLzIy.css → Avatar.css.ts.vanilla-BJawMxIe.css} +18 -18
  116. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-CdFjsC3-.css +4 -0
  117. package/dist/{cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-BtFuvQar.css → esm/assets/src/backdrop/Backdrop.css.ts.vanilla-C4ao_trb.css} +3 -3
  118. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-DUK3KBDx.css +51 -0
  119. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-NyUX3jfQ.css +6 -0
  120. package/dist/{cjs/assets/src/box/Box.css.ts.vanilla-BJLbpRx8.css → esm/assets/src/box/Box.css.ts.vanilla-CyL3FCS7.css} +21 -21
  121. package/dist/esm/assets/src/breadcrumb/{Breadcrumb.css.ts.vanilla-Dv2eEbMT.css → Breadcrumb.css.ts.vanilla-Bd1LpazS.css} +6 -6
  122. package/dist/{cjs/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-Cxf-ZgXw.css → esm/assets/src/breadcrumb/BreadcrumbNode.css.ts.vanilla-BkIexNlM.css} +4 -4
  123. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-BVD9RP-X.css +9 -0
  124. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-g3vHDS5O.css +213 -0
  125. package/dist/esm/assets/src/calendar/Calendar.css.ts.vanilla-0AO3Yw1N.css +6 -0
  126. package/dist/{cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-BvVmb_Bl.css → esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-D9UOKwWn.css} +24 -24
  127. package/dist/esm/assets/src/calendar/CalendarGrid.css.ts.vanilla-DEl68hnX.css +7 -0
  128. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-pd6nmf6Y.css +6 -0
  129. package/dist/esm/assets/src/calendar/CalendarNextMonthButton.css.ts.vanilla-b9p8AbO5.css +8 -0
  130. package/dist/esm/assets/src/calendar/CalendarPreviousMonthButton.css.ts.vanilla-BlGeI6AQ.css +8 -0
  131. package/dist/esm/assets/src/card/Card.css.ts.vanilla-DNZjkOCP.css +8 -0
  132. package/dist/{cjs/assets/src/card/CardCheckbox.css.ts.vanilla-B5dRW86I.css → esm/assets/src/card/CardCheckbox.css.ts.vanilla-yIkzexfh.css} +4 -4
  133. package/dist/esm/assets/src/card/CardHeader.css.ts.vanilla-BvtgzziL.css +15 -0
  134. package/dist/esm/assets/src/card/{CardPreview.css.ts.vanilla-B3lBpMAR.css → CardPreview.css.ts.vanilla-SrK1qh3G.css} +4 -4
  135. package/dist/esm/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-B76TQBQN.css → CheckboxControl.css.ts.vanilla-CZ5yhl4s.css} +7 -7
  136. package/dist/esm/assets/src/code/Code.css.ts.vanilla-w1i6azH8.css +10 -0
  137. package/dist/esm/assets/src/command/CommandItem.css.ts.vanilla-DVCEHxe6.css +6 -0
  138. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-CDEZj-Lo.css +34 -0
  139. package/dist/esm/assets/src/data-table/DataTableBody.css.ts.vanilla-nTomqeST.css +71 -0
  140. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-m-yfg6w-.css +6 -0
  141. package/dist/{cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-CPYdpifD.css → esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-C2eVr_Ks.css} +9 -9
  142. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-CDgWlycK.css +15 -0
  143. package/dist/esm/assets/src/details-panel/{DetailsPanel.css.ts.vanilla-C2p1WJX2.css → DetailsPanel.css.ts.vanilla-BmU9ZKmg.css} +4 -4
  144. package/dist/esm/assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-CaB9gcz_.css +7 -0
  145. package/dist/esm/assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-B8JJZUBe.css +8 -0
  146. package/dist/{cjs/assets/src/dialog/DialogContent.css.ts.vanilla-C9Pj5Wjn.css → esm/assets/src/dialog/DialogContent.css.ts.vanilla-BFQb_k2s.css} +14 -14
  147. package/dist/esm/assets/src/dialog/DialogFooter.css.ts.vanilla-ZqnJDt4j.css +7 -0
  148. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-DBBYNbGY.css +19 -0
  149. package/dist/{cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-CPmTjTKh.css → esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-B_Xy98Fz.css} +6 -6
  150. package/dist/{cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla--oF9Sg7z.css → esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-DknQaBCc.css} +6 -6
  151. package/dist/esm/assets/src/file-upload/FileUpload.css.ts.vanilla-8KhYu3AA.css +6 -0
  152. package/dist/{cjs/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-D36soXN2.css → esm/assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-BJPhhPd_.css} +9 -9
  153. package/dist/{cjs/assets/src/file-upload/FileUploadListItem.css.ts.vanilla-C6nNsc-0.css → esm/assets/src/file-upload/FileUploadListItem.css.ts.vanilla-fzvHNKs7.css} +4 -4
  154. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla--3Y-w0WQ.css +7 -0
  155. package/dist/esm/assets/src/hover-card/HoverCardTrigger.css.ts.vanilla-BSgG8_zG.css +6 -0
  156. package/dist/esm/assets/src/icon/{Icon.css.ts.vanilla-CJGFAqV6.css → Icon.css.ts.vanilla-dVd84DU6.css} +1 -1
  157. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-C21VOdcO.css +36 -0
  158. package/dist/esm/assets/src/inline-input/{InlineInput.css.ts.vanilla-JPjAPfCT.css → InlineInput.css.ts.vanilla-B6dLoCLC.css} +4 -4
  159. package/dist/esm/assets/src/input/Input.css.ts.vanilla-u6dHHiyE.css +9 -0
  160. package/dist/{cjs/assets/src/input/InputControl.css.ts.vanilla-NLNP1OKO.css → esm/assets/src/input/InputControl.css.ts.vanilla-BmOe1icm.css} +8 -8
  161. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-Cv5bospX.css +71 -0
  162. package/dist/esm/assets/src/kbd/{Kbd.css.ts.vanilla-Ba-i4MxU.css → Kbd.css.ts.vanilla-BsUt6H-q.css} +3 -3
  163. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-Dhb4Jq6F.css +7 -0
  164. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-D2KEETGI.css +1 -0
  165. package/dist/{cjs/assets/src/layout/Layout.css.ts.vanilla-Cr1gGYkW.css → esm/assets/src/layout/Layout.css.ts.vanilla-DrhQALKH.css} +5 -5
  166. package/dist/esm/assets/src/layout/LayoutContent.css.ts.vanilla-BD8baLK5.css +6 -0
  167. package/dist/{cjs/assets/src/link/Link.css.ts.vanilla-Bm9zbaOD.css → esm/assets/src/link/Link.css.ts.vanilla-BMk97AlZ.css} +13 -13
  168. package/dist/esm/assets/src/listbox/Listbox.css.ts.vanilla-CXF55v5e.css +6 -0
  169. package/dist/{cjs/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-Bd5q3I94.css → esm/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-C_SmsrJ7.css} +4 -4
  170. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-DwpCpfGs.css +53 -0
  171. package/dist/esm/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-ChCP5x-4.css → ListboxItemIndicator.css.ts.vanilla-hagNMK83.css} +4 -4
  172. package/dist/esm/assets/src/menu/MenuDialogContent.css.ts.vanilla-CmoxpNjN.css +7 -0
  173. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-BvnfLD4w.css +6 -0
  174. package/dist/esm/assets/src/modal/{ModalListbox.css.ts.vanilla-Ck7k8ENz.css → ModalListbox.css.ts.vanilla-NcwHywdl.css} +13 -13
  175. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-CWeRAcPY.css +6 -0
  176. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-DiA3Cmkz.css +9 -0
  177. package/dist/esm/assets/src/nav/{NavItem.css.ts.vanilla-C2BdWr1e.css → NavItem.css.ts.vanilla-DkhnVsAB.css} +13 -13
  178. package/dist/{cjs/assets/src/pagination/Pagination.css.ts.vanilla-wb15Iea4.css → esm/assets/src/pagination/Pagination.css.ts.vanilla-C5NvzDXz.css} +5 -5
  179. package/dist/esm/assets/src/pill/{Pill.css.ts.vanilla-Vo0uosxJ.css → Pill.css.ts.vanilla-CMUfd1c9.css} +6 -6
  180. package/dist/esm/assets/src/pill-menu/{PillMenuTrigger.css.ts.vanilla-BV8IJ_3K.css → PillMenuTrigger.css.ts.vanilla-CL7LNm67.css} +7 -7
  181. package/dist/{cjs/assets/src/progress/Progress.css.ts.vanilla-C-tP-ceK.css → esm/assets/src/progress/Progress.css.ts.vanilla-Dn33S0hk.css} +4 -4
  182. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-CkFX2LnT.css +13 -0
  183. package/dist/esm/assets/src/range/{Range.css.ts.vanilla-BpxPPrUH.css → Range.css.ts.vanilla-RRJfcxzG.css} +23 -23
  184. package/dist/esm/assets/src/resizable/ResizableHandle.css.ts.vanilla-BSMn5mzL.css +19 -0
  185. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-xK0JoetK.css +10 -0
  186. package/dist/esm/assets/src/separator/{Separator.css.ts.vanilla-C0HRBU1o.css → Separator.css.ts.vanilla-DhAb99fn.css} +8 -8
  187. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-CT_XEUMT.css +6 -0
  188. package/dist/esm/assets/src/sortable/SortableHandle.css.ts.vanilla-DCdQQF8R.css +6 -0
  189. package/dist/esm/assets/src/sortable/{SortableItem.css.ts.vanilla-aOh5KkMj.css → SortableItem.css.ts.vanilla-C0cu5qKt.css} +6 -6
  190. package/dist/esm/assets/src/spinner/{Spinner.css.ts.vanilla-B-jTBYux.css → Spinner.css.ts.vanilla-DAIkCdXp.css} +4 -4
  191. package/dist/esm/assets/src/sprinkles/{properties.css.ts.vanilla-BPB7SjyV.css → properties.css.ts.vanilla-ClO7W1Uv.css} +727 -727
  192. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-AaNhWT5G.css +6 -0
  193. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-BfOWyAqR.css +45 -0
  194. package/dist/esm/assets/src/table/Table.css.ts.vanilla-D0C1krBH.css +18 -0
  195. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-U76qkL6H.css +6 -0
  196. package/dist/{cjs/assets/src/table/TableCell.css.ts.vanilla-Dx0a-QsD.css → esm/assets/src/table/TableCell.css.ts.vanilla-BXE1CD3J.css} +6 -6
  197. package/dist/esm/assets/src/table/TableHeader.css.ts.vanilla-C_u5lwM5.css +8 -0
  198. package/dist/esm/assets/src/table/{TableHeaderCell.css.ts.vanilla-Zlwkeywl.css → TableHeaderCell.css.ts.vanilla-CCQu3wV_.css} +6 -6
  199. package/dist/{cjs/assets/src/table/TableRow.css.ts.vanilla-B3Y4o06J.css → esm/assets/src/table/TableRow.css.ts.vanilla-2OQgDRrf.css} +8 -8
  200. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-BrXq8b-U.css +9 -0
  201. package/dist/esm/assets/src/tabs/{TabsList.css.ts.vanilla-C2rTmVBw.css → TabsList.css.ts.vanilla-BbpgOd_F.css} +4 -4
  202. package/dist/{cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-C3itHkdQ.css → esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-enwO4JhO.css} +10 -10
  203. package/dist/{cjs/assets/src/text/Text.css.ts.vanilla-Chg73Eev.css → esm/assets/src/text/Text.css.ts.vanilla-DVHbnw6z.css} +8 -8
  204. package/dist/esm/assets/src/textarea/Textarea.css.ts.vanilla-Cw2AxPV-.css +6 -0
  205. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DpOXxpP_.css +44 -0
  206. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-p9YwaT0s.css +104 -0
  207. package/dist/esm/assets/src/toast/{ToastProvider.css.ts.vanilla-CQjeGxVv.css → ToastProvider.css.ts.vanilla-C0CRHKeJ.css} +9 -9
  208. package/dist/esm/assets/src/toast/ToastTitle.css.ts.vanilla-BW1KKYDr.css +6 -0
  209. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-Bo7OdqI0.css +25 -0
  210. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-BLPpfzH3.css +10 -0
  211. package/dist/esm/assets/src/transition/{Transition.css.ts.vanilla-BCVKHkFp.css → Transition.css.ts.vanilla-D249Gczs.css} +12 -12
  212. package/dist/esm/css-runtime.js +4 -4
  213. package/dist/esm/index.js +158 -158
  214. package/dist/esm/layers/layers-css.js +16 -7
  215. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-debounced-callback/use-debounced-callback.js +87 -89
  216. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-hotkeys/parse-hotkey.js +61 -65
  217. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-hotkeys/use-hotkeys.js +30 -28
  218. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-media-query/use-media-query.js +25 -30
  219. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-pagination/use-pagination.js +64 -69
  220. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-uncontrolled/use-uncontrolled.js +20 -21
  221. package/dist/esm/node_modules/.pnpm/@mantine_hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/utils/use-callback-ref/use-callback-ref.js +9 -8
  222. package/dist/esm/node_modules/.pnpm/@vanilla-extract_sprinkles@1.6.5_patch_hash_530004842e1937cf2ffe2728e2a18629c5dd638aa44_2d8dc8a2e1437882c3e115bf7a65883f/node_modules/@vanilla-extract/sprinkles/createRuntimeSprinkles/dist/vanilla-extract-sprinkles-createRuntimeSprinkles.esm.js +6 -6
  223. package/dist/esm/node_modules/.pnpm/@vanilla-extract_sprinkles@1.6.5_patch_hash_530004842e1937cf2ffe2728e2a18629c5dd638aa44_2d8dc8a2e1437882c3e115bf7a65883f/node_modules/@vanilla-extract/sprinkles/createUtils/dist/vanilla-extract-sprinkles-createUtils.esm.js +30 -53
  224. package/dist/esm/node_modules/.pnpm/@vanilla-extract_sprinkles@1.6.5_patch_hash_530004842e1937cf2ffe2728e2a18629c5dd638aa44_2d8dc8a2e1437882c3e115bf7a65883f/node_modules/@vanilla-extract/sprinkles/dist/createSprinkles-74286718.esm.js +86 -179
  225. package/dist/esm/packages/react/package.js +4 -0
  226. package/dist/esm/packages/react/src/actions/ActionsContent-css.js +18 -8
  227. package/dist/esm/packages/react/src/actions/ActionsContent.js +14 -13
  228. package/dist/esm/packages/react/src/actions/ActionsRoot-css.js +6 -6
  229. package/dist/esm/packages/react/src/actions/ActionsRoot.js +14 -13
  230. package/dist/esm/packages/react/src/alert/Alert-css.js +47 -9
  231. package/dist/esm/packages/react/src/alert/Alert.js +64 -53
  232. package/dist/esm/packages/react/src/alert-dialog/AlertDialog.js +26 -20
  233. package/dist/esm/packages/react/src/alert-dialog/AlertDialogAction.js +28 -27
  234. package/dist/esm/packages/react/src/alert-dialog/AlertDialogBody.js +25 -24
  235. package/dist/esm/packages/react/src/alert-dialog/AlertDialogCancel.js +34 -38
  236. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent-css.js +30 -10
  237. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent.js +104 -120
  238. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContext.js +4 -3
  239. package/dist/esm/packages/react/src/alert-dialog/AlertDialogFooter-css.js +12 -6
  240. package/dist/esm/packages/react/src/alert-dialog/AlertDialogFooter.js +19 -8
  241. package/dist/esm/packages/react/src/alert-dialog/AlertDialogHeader-css.js +13 -7
  242. package/dist/esm/packages/react/src/alert-dialog/AlertDialogHeader.js +29 -16
  243. package/dist/esm/packages/react/src/alert-dialog/AlertDialogTrigger.js +16 -8
  244. package/dist/esm/packages/react/src/angle-menu-button/AngleMenuButton.js +21 -8
  245. package/dist/esm/packages/react/src/auth-provider/AuthProvider.js +22 -23
  246. package/dist/esm/packages/react/src/auth-provider/useAuthContext.js +6 -5
  247. package/dist/esm/packages/react/src/avatar/Avatar-css.js +65 -10
  248. package/dist/esm/packages/react/src/avatar/Avatar.js +68 -51
  249. package/dist/esm/packages/react/src/avatar/AvatarContext.js +5 -4
  250. package/dist/esm/packages/react/src/avatar/AvatarGroup-css.js +6 -6
  251. package/dist/esm/packages/react/src/avatar/AvatarGroup.js +37 -14
  252. package/dist/esm/packages/react/src/axiom-provider/AxiomProvider.js +27 -35
  253. package/dist/esm/packages/react/src/backdrop/Backdrop-css.js +10 -7
  254. package/dist/esm/packages/react/src/backdrop/Backdrop.js +11 -11
  255. package/dist/esm/packages/react/src/badge/Badge-css.js +32 -7
  256. package/dist/esm/packages/react/src/badge/Badge.js +30 -29
  257. package/dist/esm/packages/react/src/banner/Banner-css.js +41 -9
  258. package/dist/esm/packages/react/src/banner/Banner.js +57 -51
  259. package/dist/esm/packages/react/src/box/Box-css.js +7 -7
  260. package/dist/esm/packages/react/src/box/Box.js +36 -28
  261. package/dist/esm/packages/react/src/box/extractBoxProps.js +12 -16
  262. package/dist/esm/packages/react/src/breadcrumb/Breadcrumb-css.js +14 -8
  263. package/dist/esm/packages/react/src/breadcrumb/Breadcrumb.js +90 -66
  264. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbNode-css.js +12 -7
  265. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbNode.js +27 -20
  266. package/dist/esm/packages/react/src/button/Button.js +92 -82
  267. package/dist/esm/packages/react/src/button/ButtonAddon.js +18 -13
  268. package/dist/esm/packages/react/src/button/ButtonContext.js +4 -3
  269. package/dist/esm/packages/react/src/button/ButtonGroup-css.js +6 -6
  270. package/dist/esm/packages/react/src/button/ButtonGroup.js +20 -22
  271. package/dist/esm/packages/react/src/button/ButtonLabel.js +21 -11
  272. package/dist/esm/packages/react/src/button/ButtonLoadable-css.js +8 -8
  273. package/dist/esm/packages/react/src/button/ButtonLoadable.js +14 -13
  274. package/dist/esm/packages/react/src/button/ButtonRoot-css.js +111 -8
  275. package/dist/esm/packages/react/src/button/ButtonRoot.js +78 -69
  276. package/dist/esm/packages/react/src/calendar/Calendar-css.js +11 -6
  277. package/dist/esm/packages/react/src/calendar/Calendar.js +167 -211
  278. package/dist/esm/packages/react/src/calendar/CalendarCaptionLabel.js +27 -39
  279. package/dist/esm/packages/react/src/calendar/CalendarChevron.js +8 -10
  280. package/dist/esm/packages/react/src/calendar/CalendarContext.js +4 -3
  281. package/dist/esm/packages/react/src/calendar/CalendarDay.js +13 -8
  282. package/dist/esm/packages/react/src/calendar/CalendarDayButton-css.js +33 -8
  283. package/dist/esm/packages/react/src/calendar/CalendarDayButton.js +36 -55
  284. package/dist/esm/packages/react/src/calendar/CalendarGrid-css.js +11 -7
  285. package/dist/esm/packages/react/src/calendar/CalendarGrid.js +93 -102
  286. package/dist/esm/packages/react/src/calendar/CalendarMonthCaption.js +15 -12
  287. package/dist/esm/packages/react/src/calendar/CalendarMonthGrid.js +86 -118
  288. package/dist/esm/packages/react/src/calendar/CalendarMonths-css.js +9 -6
  289. package/dist/esm/packages/react/src/calendar/CalendarMonths.js +14 -7
  290. package/dist/esm/packages/react/src/calendar/CalendarNextMonthButton-css.js +7 -7
  291. package/dist/esm/packages/react/src/calendar/CalendarNextMonthButton.js +25 -44
  292. package/dist/esm/packages/react/src/calendar/CalendarPreviousMonthButton-css.js +6 -6
  293. package/dist/esm/packages/react/src/calendar/CalendarPreviousMonthButton.js +25 -44
  294. package/dist/esm/packages/react/src/calendar/CalendarWeek.js +15 -8
  295. package/dist/esm/packages/react/src/calendar/CalendarWeekday.js +16 -8
  296. package/dist/esm/packages/react/src/calendar/CalendarWeekdays.js +24 -11
  297. package/dist/esm/packages/react/src/calendar/toTimeZoneName.js +4 -6
  298. package/dist/esm/packages/react/src/calendar/utils.js +13 -12
  299. package/dist/esm/packages/react/src/card/Card-css.js +21 -7
  300. package/dist/esm/packages/react/src/card/Card.js +31 -17
  301. package/dist/esm/packages/react/src/card/CardAction.js +16 -11
  302. package/dist/esm/packages/react/src/card/CardCheckbox-css.js +6 -6
  303. package/dist/esm/packages/react/src/card/CardCheckbox.js +37 -41
  304. package/dist/esm/packages/react/src/card/CardContext.js +4 -3
  305. package/dist/esm/packages/react/src/card/CardFooter.js +17 -12
  306. package/dist/esm/packages/react/src/card/CardHeader-css.js +22 -9
  307. package/dist/esm/packages/react/src/card/CardHeader.js +47 -46
  308. package/dist/esm/packages/react/src/card/CardImage-css.js +9 -5
  309. package/dist/esm/packages/react/src/card/CardImage.js +21 -13
  310. package/dist/esm/packages/react/src/card/CardLink.js +17 -10
  311. package/dist/esm/packages/react/src/card/CardPreview-css.js +14 -7
  312. package/dist/esm/packages/react/src/card/CardPreview.js +50 -66
  313. package/dist/esm/packages/react/src/checkbox/Checkbox.js +34 -35
  314. package/dist/esm/packages/react/src/checkbox/CheckboxContent.js +12 -14
  315. package/dist/esm/packages/react/src/checkbox/CheckboxControl-css.js +28 -11
  316. package/dist/esm/packages/react/src/checkbox/CheckboxControl.js +22 -25
  317. package/dist/esm/packages/react/src/checkbox/CheckboxRoot.js +25 -31
  318. package/dist/esm/packages/react/src/cleanup.js +6 -8
  319. package/dist/esm/packages/react/src/clock/Clock.js +79 -85
  320. package/dist/esm/packages/react/src/clock/utils.js +14 -21
  321. package/dist/esm/packages/react/src/code/Code-css.js +6 -6
  322. package/dist/esm/packages/react/src/code/Code.js +29 -16
  323. package/dist/esm/packages/react/src/command/Command.js +92 -101
  324. package/dist/esm/packages/react/src/command/CommandContext.js +7 -6
  325. package/dist/esm/packages/react/src/command/CommandInput.js +60 -80
  326. package/dist/esm/packages/react/src/command/CommandItem-css.js +6 -6
  327. package/dist/esm/packages/react/src/command/CommandItem.js +116 -151
  328. package/dist/esm/packages/react/src/command/CommandListbox.js +23 -43
  329. package/dist/esm/packages/react/src/command/fuzzysearch.js +30 -44
  330. package/dist/esm/packages/react/src/command/useCommandItems.js +56 -76
  331. package/dist/esm/packages/react/src/cover/Cover-css.js +15 -6
  332. package/dist/esm/packages/react/src/cover/Cover.js +21 -18
  333. package/dist/esm/packages/react/src/data-table/DataTable.js +30 -31
  334. package/dist/esm/packages/react/src/data-table/DataTableAction.js +53 -70
  335. package/dist/esm/packages/react/src/data-table/DataTableBody-css.js +39 -14
  336. package/dist/esm/packages/react/src/data-table/DataTableBody.js +180 -235
  337. package/dist/esm/packages/react/src/data-table/DataTableCheckbox.js +42 -54
  338. package/dist/esm/packages/react/src/data-table/DataTableContext.js +4 -3
  339. package/dist/esm/packages/react/src/data-table/DataTableExpandableCell.js +48 -43
  340. package/dist/esm/packages/react/src/data-table/DataTableExpandableHeader.js +16 -10
  341. package/dist/esm/packages/react/src/data-table/DataTableFooter-css.js +13 -7
  342. package/dist/esm/packages/react/src/data-table/DataTableFooter.js +78 -81
  343. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell-css.js +37 -9
  344. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell.js +76 -74
  345. package/dist/esm/packages/react/src/data-table/DataTableLabel.js +17 -16
  346. package/dist/esm/packages/react/src/data-table/DataTableRow.js +128 -189
  347. package/dist/esm/packages/react/src/data-table/DataTableRowContext.js +37 -45
  348. package/dist/esm/packages/react/src/date-input/DateInput-css.js +10 -10
  349. package/dist/esm/packages/react/src/date-input/DateInput.js +154 -191
  350. package/dist/esm/packages/react/src/date-range-picker/DateRangePicker.js +60 -67
  351. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContent-css.js +8 -5
  352. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContent.js +61 -76
  353. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContext.js +4 -3
  354. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerTrigger.js +37 -50
  355. package/dist/esm/packages/react/src/details-panel/DetailsPanel-css.js +16 -7
  356. package/dist/esm/packages/react/src/details-panel/DetailsPanel.js +39 -31
  357. package/dist/esm/packages/react/src/details-panel/DetailsPanelBody.js +18 -18
  358. package/dist/esm/packages/react/src/details-panel/DetailsPanelContext.js +4 -3
  359. package/dist/esm/packages/react/src/details-panel/DetailsPanelFooter-css.js +11 -6
  360. package/dist/esm/packages/react/src/details-panel/DetailsPanelFooter.js +19 -8
  361. package/dist/esm/packages/react/src/details-panel/DetailsPanelHeader-css.js +12 -6
  362. package/dist/esm/packages/react/src/details-panel/DetailsPanelHeader.js +52 -49
  363. package/dist/esm/packages/react/src/dialog/Dialog.js +63 -63
  364. package/dist/esm/packages/react/src/dialog/DialogBody-css.js +15 -7
  365. package/dist/esm/packages/react/src/dialog/DialogBody.js +17 -11
  366. package/dist/esm/packages/react/src/dialog/DialogClose.js +30 -32
  367. package/dist/esm/packages/react/src/dialog/DialogContent-css.js +36 -12
  368. package/dist/esm/packages/react/src/dialog/DialogContent.js +91 -109
  369. package/dist/esm/packages/react/src/dialog/DialogContentImpl.js +32 -38
  370. package/dist/esm/packages/react/src/dialog/DialogContext.js +4 -3
  371. package/dist/esm/packages/react/src/dialog/DialogFooter-css.js +15 -7
  372. package/dist/esm/packages/react/src/dialog/DialogFooter.js +24 -16
  373. package/dist/esm/packages/react/src/dialog/DialogForm.js +24 -22
  374. package/dist/esm/packages/react/src/dialog/DialogHeader-css.js +27 -11
  375. package/dist/esm/packages/react/src/dialog/DialogHeader.js +51 -55
  376. package/dist/esm/packages/react/src/dialog/DialogTrigger.js +18 -12
  377. package/dist/esm/packages/react/src/dialog-kit/DialogKitContext.js +4 -3
  378. package/dist/esm/packages/react/src/dialog-kit/DialogKitProvider.js +22 -38
  379. package/dist/esm/packages/react/src/dialog-kit/dialogkit.js +69 -81
  380. package/dist/esm/packages/react/src/dialog-kit/useDialogKit.js +17 -16
  381. package/dist/esm/packages/react/src/disclosure/Disclosure.js +53 -36
  382. package/dist/esm/packages/react/src/disclosure/DisclosureContent-css.js +13 -7
  383. package/dist/esm/packages/react/src/disclosure/DisclosureContent.js +44 -30
  384. package/dist/esm/packages/react/src/disclosure/DisclosureContext.js +4 -3
  385. package/dist/esm/packages/react/src/disclosure/DisclosureTrigger-css.js +24 -9
  386. package/dist/esm/packages/react/src/disclosure/DisclosureTrigger.js +60 -37
  387. package/dist/esm/packages/react/src/downshift/useHighlightedIndex.js +16 -27
  388. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenu.js +39 -32
  389. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuCheckboxItem.js +15 -17
  390. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuContent.js +44 -41
  391. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuContext.js +4 -3
  392. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuGroup.js +15 -9
  393. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuItem.js +27 -36
  394. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuLabel.js +18 -9
  395. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuNestedContext.js +4 -3
  396. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSeparator.js +15 -17
  397. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSub.js +37 -39
  398. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSubContent.js +31 -23
  399. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSubContext.js +4 -3
  400. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSubTrigger.js +17 -18
  401. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuTrigger.js +20 -21
  402. package/dist/esm/packages/react/src/ellipsis-menu-button/EllipsisMenuButton.js +23 -17
  403. package/dist/esm/packages/react/src/field/Field.js +73 -82
  404. package/dist/esm/packages/react/src/field/FieldContext.js +9 -8
  405. package/dist/esm/packages/react/src/field/FieldLabel.js +70 -84
  406. package/dist/esm/packages/react/src/file-upload/FileUpload-css.js +10 -6
  407. package/dist/esm/packages/react/src/file-upload/FileUpload.js +33 -28
  408. package/dist/esm/packages/react/src/file-upload/FileUploadContext.js +4 -3
  409. package/dist/esm/packages/react/src/file-upload/FileUploadDropzone-css.js +43 -7
  410. package/dist/esm/packages/react/src/file-upload/FileUploadDropzone.js +74 -77
  411. package/dist/esm/packages/react/src/file-upload/FileUploadList.js +17 -18
  412. package/dist/esm/packages/react/src/file-upload/FileUploadListItem-css.js +19 -8
  413. package/dist/esm/packages/react/src/file-upload/FileUploadListItem.js +113 -73
  414. package/dist/esm/packages/react/src/file-upload/FileUploadTrigger.js +35 -35
  415. package/dist/esm/packages/react/src/file-upload/useContainerSize.js +14 -20
  416. package/dist/esm/packages/react/src/file-upload/useDraggingOverBody.js +27 -39
  417. package/dist/esm/packages/react/src/file-upload/useFileUploadDragging.js +27 -39
  418. package/dist/esm/packages/react/src/file-upload/useFileUploadDrop.js +75 -127
  419. package/dist/esm/packages/react/src/file-upload/useFileUploadTrigger.js +8 -10
  420. package/dist/esm/packages/react/src/file-upload/useStickyPosition.js +36 -41
  421. package/dist/esm/packages/react/src/filtered-slot/FilteredSlot.js +13 -14
  422. package/dist/esm/packages/react/src/flex/Flex.js +34 -35
  423. package/dist/esm/packages/react/src/focus-bookmark/FocusBookmarkProvider.js +25 -33
  424. package/dist/esm/packages/react/src/focus-bookmark/FocusBookmarkProviderContext.js +4 -3
  425. package/dist/esm/packages/react/src/focus-bookmark/FocusBookmarkRestore.js +18 -28
  426. package/dist/esm/packages/react/src/grid/Grid.js +20 -21
  427. package/dist/esm/packages/react/src/group/Group.js +34 -29
  428. package/dist/esm/packages/react/src/heading/Heading.js +50 -32
  429. package/dist/esm/packages/react/src/highlight/Highlight-css.js +7 -7
  430. package/dist/esm/packages/react/src/highlight/Highlight.js +25 -17
  431. package/dist/esm/packages/react/src/highlight/useHighlightedChunks.js +15 -18
  432. package/dist/esm/packages/react/src/hooks/useEffectEvent.js +11 -10
  433. package/dist/esm/packages/react/src/hooks/useFieldLabelTrigger.js +15 -19
  434. package/dist/esm/packages/react/src/hooks/useObserveValue.js +24 -31
  435. package/dist/esm/packages/react/src/hooks/useResponsiveMatches.js +12 -18
  436. package/dist/esm/packages/react/src/hover-card/HoverCard.js +35 -40
  437. package/dist/esm/packages/react/src/hover-card/HoverCardContent.js +48 -53
  438. package/dist/esm/packages/react/src/hover-card/HoverCardContext.js +3 -3
  439. package/dist/esm/packages/react/src/hover-card/HoverCardTrigger-css.js +7 -7
  440. package/dist/esm/packages/react/src/hover-card/HoverCardTrigger.js +22 -10
  441. package/dist/esm/packages/react/src/icon/Icon-css.js +10 -7
  442. package/dist/esm/packages/react/src/icon/Icon.js +14 -13
  443. package/dist/esm/packages/react/src/icons/CheckboxCheck.js +16 -22
  444. package/dist/esm/packages/react/src/icons/IconAngleDown.js +13 -19
  445. package/dist/esm/packages/react/src/icons/IconAngleLeft.js +13 -19
  446. package/dist/esm/packages/react/src/icons/IconAngleRight.js +13 -19
  447. package/dist/esm/packages/react/src/icons/IconCalendar.js +10 -18
  448. package/dist/esm/packages/react/src/icons/IconCheck.js +10 -18
  449. package/dist/esm/packages/react/src/icons/IconCircleCheckSolid.js +11 -18
  450. package/dist/esm/packages/react/src/icons/IconCircleExclamationSolid.js +11 -18
  451. package/dist/esm/packages/react/src/icons/IconCircleInfoSolid.js +11 -18
  452. package/dist/esm/packages/react/src/icons/IconCircleQuestion.js +13 -19
  453. package/dist/esm/packages/react/src/icons/IconEllipsis.js +24 -38
  454. package/dist/esm/packages/react/src/icons/IconEllipsisSolid.js +11 -18
  455. package/dist/esm/packages/react/src/icons/IconFileImport.js +8 -16
  456. package/dist/esm/packages/react/src/icons/IconFileSolid.js +11 -18
  457. package/dist/esm/packages/react/src/icons/IconMagnifyingGlass.js +18 -30
  458. package/dist/esm/packages/react/src/icons/IconMinus.js +12 -18
  459. package/dist/esm/packages/react/src/icons/IconOpal.js +14 -20
  460. package/dist/esm/packages/react/src/icons/IconPlus.js +8 -16
  461. package/dist/esm/packages/react/src/icons/IconSort.js +12 -18
  462. package/dist/esm/packages/react/src/icons/IconSortDown.js +12 -18
  463. package/dist/esm/packages/react/src/icons/IconSortUp.js +12 -18
  464. package/dist/esm/packages/react/src/icons/IconTrashCan.js +11 -18
  465. package/dist/esm/packages/react/src/icons/IconTriangleExclamation.js +13 -19
  466. package/dist/esm/packages/react/src/icons/IconTriangleExclamationSolid.js +11 -18
  467. package/dist/esm/packages/react/src/icons/IconUpRightFromSquare.js +27 -39
  468. package/dist/esm/packages/react/src/icons/IconUserSolid.js +11 -18
  469. package/dist/esm/packages/react/src/icons/IconUsersSolid.js +11 -18
  470. package/dist/esm/packages/react/src/icons/IconX.js +10 -18
  471. package/dist/esm/packages/react/src/icons/withIcon.js +17 -28
  472. package/dist/esm/packages/react/src/indicator/Indicator-css.js +51 -9
  473. package/dist/esm/packages/react/src/indicator/Indicator.js +49 -42
  474. package/dist/esm/packages/react/src/inline-input/InlineInput-css.js +13 -7
  475. package/dist/esm/packages/react/src/inline-input/InlineInput.js +68 -86
  476. package/dist/esm/packages/react/src/input/Input-css.js +32 -9
  477. package/dist/esm/packages/react/src/input/Input.js +54 -61
  478. package/dist/esm/packages/react/src/input/InputAddon.js +27 -32
  479. package/dist/esm/packages/react/src/input/InputContext.js +4 -3
  480. package/dist/esm/packages/react/src/input/InputControl-css.js +22 -6
  481. package/dist/esm/packages/react/src/input/InputControl.js +63 -91
  482. package/dist/esm/packages/react/src/input/InputRoot-css.js +9 -9
  483. package/dist/esm/packages/react/src/input/InputRoot.js +28 -46
  484. package/dist/esm/packages/react/src/kbd/Kbd-css.js +30 -7
  485. package/dist/esm/packages/react/src/kbd/Kbd.js +48 -42
  486. package/dist/esm/packages/react/src/label-menu-button/LabelMenuButton-css.js +31 -11
  487. package/dist/esm/packages/react/src/label-menu-button/LabelMenuButton.js +53 -47
  488. package/dist/esm/packages/react/src/layers/layers-css.js +17 -9
  489. package/dist/esm/packages/react/src/layout/Layout-css.js +17 -6
  490. package/dist/esm/packages/react/src/layout/Layout.js +51 -40
  491. package/dist/esm/packages/react/src/layout/LayoutContent-css.js +12 -6
  492. package/dist/esm/packages/react/src/layout/LayoutContent.js +18 -20
  493. package/dist/esm/packages/react/src/link/Link-css.js +18 -8
  494. package/dist/esm/packages/react/src/link/Link.js +54 -47
  495. package/dist/esm/packages/react/src/listbox/Listbox-css.js +13 -7
  496. package/dist/esm/packages/react/src/listbox/Listbox.js +14 -13
  497. package/dist/esm/packages/react/src/listbox/ListboxCheckboxItem-css.js +6 -6
  498. package/dist/esm/packages/react/src/listbox/ListboxCheckboxItem.js +38 -45
  499. package/dist/esm/packages/react/src/listbox/ListboxEmpty.js +22 -26
  500. package/dist/esm/packages/react/src/listbox/ListboxGroup.js +23 -15
  501. package/dist/esm/packages/react/src/listbox/ListboxGroupContext.js +4 -3
  502. package/dist/esm/packages/react/src/listbox/ListboxItem-css.js +36 -10
  503. package/dist/esm/packages/react/src/listbox/ListboxItem.js +65 -57
  504. package/dist/esm/packages/react/src/listbox/ListboxItemIndicator-css.js +12 -6
  505. package/dist/esm/packages/react/src/listbox/ListboxItemIndicator.js +17 -19
  506. package/dist/esm/packages/react/src/listbox/ListboxItemized.js +48 -60
  507. package/dist/esm/packages/react/src/listbox/ListboxLabel.js +21 -14
  508. package/dist/esm/packages/react/src/listbox/ListboxRadioItem.js +18 -25
  509. package/dist/esm/packages/react/src/listbox/ListboxSeparator.js +16 -6
  510. package/dist/esm/packages/react/src/listbox/ListboxSwitchItem.js +33 -43
  511. package/dist/esm/packages/react/src/listbox/ListboxVirtualized.js +75 -85
  512. package/dist/esm/packages/react/src/listbox/utils.js +6 -9
  513. package/dist/esm/packages/react/src/menu/Menu.js +149 -197
  514. package/dist/esm/packages/react/src/menu/MenuCheckboxItem.js +34 -41
  515. package/dist/esm/packages/react/src/menu/MenuContent.js +63 -70
  516. package/dist/esm/packages/react/src/menu/MenuContext.js +4 -3
  517. package/dist/esm/packages/react/src/menu/MenuDialogContent-css.js +7 -7
  518. package/dist/esm/packages/react/src/menu/MenuDialogContent.js +37 -56
  519. package/dist/esm/packages/react/src/menu/MenuInput-css.js +14 -6
  520. package/dist/esm/packages/react/src/menu/MenuInput.js +44 -66
  521. package/dist/esm/packages/react/src/menu/MenuItem.js +35 -55
  522. package/dist/esm/packages/react/src/menu/MenuListbox.js +52 -57
  523. package/dist/esm/packages/react/src/menu/MenuPopover.js +6 -8
  524. package/dist/esm/packages/react/src/menu/MenuPopoverContent.js +44 -49
  525. package/dist/esm/packages/react/src/menu/MenuRadioItem.js +25 -37
  526. package/dist/esm/packages/react/src/menu/MenuSubContent.js +116 -165
  527. package/dist/esm/packages/react/src/menu/MenuSubContext.js +4 -3
  528. package/dist/esm/packages/react/src/menu/MenuSubInput.js +29 -45
  529. package/dist/esm/packages/react/src/menu/MenuSubTrigger.js +82 -101
  530. package/dist/esm/packages/react/src/menu/MenuSwitchItem.js +36 -45
  531. package/dist/esm/packages/react/src/menu/MenuTrigger.js +48 -63
  532. package/dist/esm/packages/react/src/menu/useMenuSurface.js +30 -54
  533. package/dist/esm/packages/react/src/modal/ModalLayer.js +51 -41
  534. package/dist/esm/packages/react/src/modal/ModalListbox-css.js +24 -6
  535. package/dist/esm/packages/react/src/modal/ModalListbox.js +24 -30
  536. package/dist/esm/packages/react/src/nav/Nav-css.js +15 -7
  537. package/dist/esm/packages/react/src/nav/Nav.js +36 -26
  538. package/dist/esm/packages/react/src/nav/NavAccountItem-css.js +19 -7
  539. package/dist/esm/packages/react/src/nav/NavAccountItem.js +61 -35
  540. package/dist/esm/packages/react/src/nav/NavBody-css.js +19 -5
  541. package/dist/esm/packages/react/src/nav/NavBody.js +20 -22
  542. package/dist/esm/packages/react/src/nav/NavFooter.js +23 -25
  543. package/dist/esm/packages/react/src/nav/NavGroup.js +40 -30
  544. package/dist/esm/packages/react/src/nav/NavGroupContent.js +22 -21
  545. package/dist/esm/packages/react/src/nav/NavGroupContext.js +8 -4
  546. package/dist/esm/packages/react/src/nav/NavGroupTrigger.js +42 -53
  547. package/dist/esm/packages/react/src/nav/NavHeader.js +20 -12
  548. package/dist/esm/packages/react/src/nav/NavItem-css.js +33 -9
  549. package/dist/esm/packages/react/src/nav/NavItem.js +78 -68
  550. package/dist/esm/packages/react/src/nav/NavList.js +22 -23
  551. package/dist/esm/packages/react/src/nav/NavSeparator.js +16 -8
  552. package/dist/esm/packages/react/src/nested-dialog-context/NestedDialogContext.js +4 -3
  553. package/dist/esm/packages/react/src/nested-dialog-context/useNestedDialogCount.js +27 -16
  554. package/dist/esm/packages/react/src/pagination/Pagination-css.js +18 -9
  555. package/dist/esm/packages/react/src/pagination/Pagination.js +118 -134
  556. package/dist/esm/packages/react/src/paper/Paper-css.js +21 -5
  557. package/dist/esm/packages/react/src/paper/Paper.js +16 -11
  558. package/dist/esm/packages/react/src/pill/Pill-css.js +28 -6
  559. package/dist/esm/packages/react/src/pill/Pill.js +52 -65
  560. package/dist/esm/packages/react/src/pill/PillGroup.js +17 -10
  561. package/dist/esm/packages/react/src/pill-menu/PillMenu.js +77 -105
  562. package/dist/esm/packages/react/src/pill-menu/PillMenuContent.js +25 -29
  563. package/dist/esm/packages/react/src/pill-menu/PillMenuContext.js +4 -3
  564. package/dist/esm/packages/react/src/pill-menu/PillMenuPill.js +52 -58
  565. package/dist/esm/packages/react/src/pill-menu/PillMenuTrigger-css.js +23 -9
  566. package/dist/esm/packages/react/src/pill-menu/PillMenuTrigger.js +89 -106
  567. package/dist/esm/packages/react/src/popover/Popover.js +35 -40
  568. package/dist/esm/packages/react/src/popover/PopoverAnchor.js +32 -35
  569. package/dist/esm/packages/react/src/popover/PopoverContent.js +58 -69
  570. package/dist/esm/packages/react/src/popover/PopoverContentContext.js +4 -3
  571. package/dist/esm/packages/react/src/popover/PopoverContentImpl.js +25 -21
  572. package/dist/esm/packages/react/src/popover/PopoverContext.js +4 -3
  573. package/dist/esm/packages/react/src/popover/PopoverTrigger.js +22 -24
  574. package/dist/esm/packages/react/src/popover/usePopoverScope.js +3 -3
  575. package/dist/esm/packages/react/src/portal/Portal.js +15 -12
  576. package/dist/esm/packages/react/src/portal/PortalContext.js +4 -3
  577. package/dist/esm/packages/react/src/progress/Progress-css.js +24 -8
  578. package/dist/esm/packages/react/src/progress/Progress.js +35 -29
  579. package/dist/esm/packages/react/src/radio/Radio-css.js +28 -12
  580. package/dist/esm/packages/react/src/radio/Radio.js +51 -63
  581. package/dist/esm/packages/react/src/radio/RadioGroup.js +45 -64
  582. package/dist/esm/packages/react/src/radio/RadioGroupContext.js +4 -3
  583. package/dist/esm/packages/react/src/range/Range-css.js +53 -13
  584. package/dist/esm/packages/react/src/range/Range.js +105 -154
  585. package/dist/esm/packages/react/src/range/useTooltipState.js +16 -19
  586. package/dist/esm/packages/react/src/resizable/Resizable.js +8 -5
  587. package/dist/esm/packages/react/src/resizable/ResizableHandle-css.js +19 -8
  588. package/dist/esm/packages/react/src/resizable/ResizableHandle.js +15 -10
  589. package/dist/esm/packages/react/src/resizable/ResizablePanel.js +5 -5
  590. package/dist/esm/packages/react/src/roving-focus/RovingFocus.js +29 -18
  591. package/dist/esm/packages/react/src/roving-focus/RovingFocusContext.js +4 -3
  592. package/dist/esm/packages/react/src/roving-focus/RovingFocusItem.js +22 -20
  593. package/dist/esm/packages/react/src/search-input/SearchInput-css.js +8 -8
  594. package/dist/esm/packages/react/src/search-input/SearchInput.js +60 -68
  595. package/dist/esm/packages/react/src/segmented-control/SegmentedControl.js +25 -8
  596. package/dist/esm/packages/react/src/segmented-control/SegmentedControlContext.js +4 -3
  597. package/dist/esm/packages/react/src/segmented-control/SegmentedControlItem.js +22 -19
  598. package/dist/esm/packages/react/src/select/Select.js +155 -180
  599. package/dist/esm/packages/react/src/select/SelectContent.js +96 -145
  600. package/dist/esm/packages/react/src/select/SelectContext.js +4 -3
  601. package/dist/esm/packages/react/src/select/SelectHiddenSelect.js +25 -28
  602. package/dist/esm/packages/react/src/select/SelectItem.js +44 -58
  603. package/dist/esm/packages/react/src/select/SelectRadioItem.js +14 -21
  604. package/dist/esm/packages/react/src/select/SelectTrigger.js +88 -99
  605. package/dist/esm/packages/react/src/select/useObserveReset.js +12 -16
  606. package/dist/esm/packages/react/src/separator/Separator-css.js +47 -8
  607. package/dist/esm/packages/react/src/separator/Separator.js +29 -30
  608. package/dist/esm/packages/react/src/sidebar/Sidebar.js +38 -47
  609. package/dist/esm/packages/react/src/sidebar/SidebarContext.js +3 -3
  610. package/dist/esm/packages/react/src/sidebar/SidebarToggle.js +21 -35
  611. package/dist/esm/packages/react/src/skeleton/Skeleton-css.js +11 -6
  612. package/dist/esm/packages/react/src/skeleton/Skeleton.js +27 -24
  613. package/dist/esm/packages/react/src/sortable/Sortable.js +53 -45
  614. package/dist/esm/packages/react/src/sortable/SortableContext.js +4 -3
  615. package/dist/esm/packages/react/src/sortable/SortableGroup.js +31 -21
  616. package/dist/esm/packages/react/src/sortable/SortableGroupContext.js +6 -6
  617. package/dist/esm/packages/react/src/sortable/SortableHandle-css.js +6 -6
  618. package/dist/esm/packages/react/src/sortable/SortableHandle.js +23 -29
  619. package/dist/esm/packages/react/src/sortable/SortableItem-css.js +12 -6
  620. package/dist/esm/packages/react/src/sortable/SortableItem.js +50 -58
  621. package/dist/esm/packages/react/src/sortable/SortableItemContext.js +4 -3
  622. package/dist/esm/packages/react/src/spinner/Spinner-css.js +9 -6
  623. package/dist/esm/packages/react/src/spinner/Spinner.js +61 -74
  624. package/dist/esm/packages/react/src/spotlight/Spotlight.js +16 -7
  625. package/dist/esm/packages/react/src/spotlight/SpotlightContent.js +13 -8
  626. package/dist/esm/packages/react/src/spotlight/SpotlightTrigger.js +27 -18
  627. package/dist/esm/packages/react/src/sprinkles/createSprinklesMerge.js +30 -43
  628. package/dist/esm/packages/react/src/sprinkles/properties-css.js +1663 -7
  629. package/dist/esm/packages/react/src/sprinkles/sprinkles.js +8 -15
  630. package/dist/esm/packages/react/src/sprinkles/sprinklesMerge.js +5 -8
  631. package/dist/esm/packages/react/src/sub-nav/SubNav-css.js +13 -6
  632. package/dist/esm/packages/react/src/sub-nav/SubNav.js +36 -35
  633. package/dist/esm/packages/react/src/suggestion/SuggestionAlert.js +62 -72
  634. package/dist/esm/packages/react/src/suggestion/SuggestionAutoPopover.js +65 -71
  635. package/dist/esm/packages/react/src/suggestion/SuggestionManualTrigger.js +45 -56
  636. package/dist/esm/packages/react/src/suggestion/SuggestionPopover.js +17 -10
  637. package/dist/esm/packages/react/src/suggestion/SuggestionProvider.js +93 -121
  638. package/dist/esm/packages/react/src/surface/SurfaceProvider.js +2 -0
  639. package/dist/esm/packages/react/src/surface/buildSurfacePath.js +3 -2
  640. package/dist/esm/packages/react/src/surface/filterSuggestionsBySurface.js +11 -10
  641. package/dist/esm/packages/react/src/surface/useDebouncedTrack.js +25 -16
  642. package/dist/esm/packages/react/src/surface/useSuggestions.js +15 -11
  643. package/dist/esm/packages/react/src/surface/useSurface.js +19 -8
  644. package/dist/esm/packages/react/src/switch/Switch-css.js +27 -12
  645. package/dist/esm/packages/react/src/switch/Switch.js +44 -37
  646. package/dist/esm/packages/react/src/table/Table-css.js +24 -7
  647. package/dist/esm/packages/react/src/table/Table.js +42 -13
  648. package/dist/esm/packages/react/src/table/TableAction.js +15 -11
  649. package/dist/esm/packages/react/src/table/TableBody-css.js +6 -6
  650. package/dist/esm/packages/react/src/table/TableBody.js +18 -11
  651. package/dist/esm/packages/react/src/table/TableCell-css.js +17 -8
  652. package/dist/esm/packages/react/src/table/TableCell.js +22 -22
  653. package/dist/esm/packages/react/src/table/TableHeader-css.js +9 -6
  654. package/dist/esm/packages/react/src/table/TableHeader.js +18 -9
  655. package/dist/esm/packages/react/src/table/TableHeaderCell-css.js +21 -7
  656. package/dist/esm/packages/react/src/table/TableHeaderCell.js +25 -29
  657. package/dist/esm/packages/react/src/table/TableRow-css.js +13 -6
  658. package/dist/esm/packages/react/src/table/TableRow.js +22 -13
  659. package/dist/esm/packages/react/src/tabs/Tabs-css.js +6 -6
  660. package/dist/esm/packages/react/src/tabs/Tabs.js +52 -35
  661. package/dist/esm/packages/react/src/tabs/TabsContent.js +21 -13
  662. package/dist/esm/packages/react/src/tabs/TabsList-css.js +9 -6
  663. package/dist/esm/packages/react/src/tabs/TabsList.js +21 -14
  664. package/dist/esm/packages/react/src/tabs/TabsTrigger-css.js +23 -7
  665. package/dist/esm/packages/react/src/tabs/TabsTrigger.js +42 -25
  666. package/dist/esm/packages/react/src/text/Text-css.js +45 -6
  667. package/dist/esm/packages/react/src/text/Text.js +40 -25
  668. package/dist/esm/packages/react/src/textarea/Textarea-css.js +6 -6
  669. package/dist/esm/packages/react/src/textarea/Textarea.js +58 -52
  670. package/dist/esm/packages/react/src/textarea/TextareaAutosize-css.js +35 -8
  671. package/dist/esm/packages/react/src/textarea/TextareaAutosize.js +43 -53
  672. package/dist/esm/packages/react/src/theme-provider/ThemeProvider.js +40 -34
  673. package/dist/esm/packages/react/src/time/Time.js +31 -17
  674. package/dist/esm/packages/react/src/time/formatDate.js +19 -14
  675. package/dist/esm/packages/react/src/toast/Toast-css.js +39 -10
  676. package/dist/esm/packages/react/src/toast/Toast.js +70 -72
  677. package/dist/esm/packages/react/src/toast/ToastAction.js +29 -16
  678. package/dist/esm/packages/react/src/toast/ToastProvider-css.js +25 -8
  679. package/dist/esm/packages/react/src/toast/ToastProvider.js +76 -86
  680. package/dist/esm/packages/react/src/toast/ToastTitle-css.js +6 -6
  681. package/dist/esm/packages/react/src/toast/ToastTitle.js +23 -12
  682. package/dist/esm/packages/react/src/toast/useOverflowAnchor.js +34 -31
  683. package/dist/esm/packages/react/src/toggle-button/ToggleButton.js +23 -12
  684. package/dist/esm/packages/react/src/toggle-input/ToggleInput-css.js +15 -7
  685. package/dist/esm/packages/react/src/toggle-input/ToggleInput.js +33 -34
  686. package/dist/esm/packages/react/src/toggle-input/ToggleInputContent.js +13 -8
  687. package/dist/esm/packages/react/src/toggle-input/ToggleInputContext.js +4 -3
  688. package/dist/esm/packages/react/src/toggle-input/ToggleInputControl-css.js +9 -9
  689. package/dist/esm/packages/react/src/toggle-input/ToggleInputControl.js +13 -9
  690. package/dist/esm/packages/react/src/toggle-input/ToggleInputDescription.js +15 -22
  691. package/dist/esm/packages/react/src/toggle-input/ToggleInputHiddenInput-css.js +5 -5
  692. package/dist/esm/packages/react/src/toggle-input/ToggleInputHiddenInput.js +28 -35
  693. package/dist/esm/packages/react/src/toggle-input/ToggleInputLabel.js +13 -12
  694. package/dist/esm/packages/react/src/tooltip/Tooltip.js +31 -41
  695. package/dist/esm/packages/react/src/tooltip/TooltipContent-css.js +20 -6
  696. package/dist/esm/packages/react/src/tooltip/TooltipContent.js +51 -57
  697. package/dist/esm/packages/react/src/tooltip/TooltipContext.js +6 -5
  698. package/dist/esm/packages/react/src/tooltip/TooltipProvider.js +14 -15
  699. package/dist/esm/packages/react/src/tooltip/TooltipRoot.js +43 -53
  700. package/dist/esm/packages/react/src/tooltip/TooltipTrigger.js +23 -13
  701. package/dist/esm/packages/react/src/transition/Transition-css.js +13 -6
  702. package/dist/esm/packages/react/src/transition/Transition.js +35 -37
  703. package/dist/esm/packages/react/src/transition/TransitionGlobalConfig.js +3 -4
  704. package/dist/esm/packages/react/src/transition/TransitionGroup.js +53 -67
  705. package/dist/esm/packages/react/src/transition/TransitionGroupContext.js +6 -4
  706. package/dist/esm/packages/react/src/transition/useTransitionStatus.js +14 -19
  707. package/dist/esm/packages/react/src/transition/waitForAnimation.js +3 -6
  708. package/dist/esm/packages/react/src/utils/conditions.js +15 -8
  709. package/dist/esm/packages/react/src/utils/decorateChildren.js +10 -19
  710. package/dist/esm/packages/react/src/utils/fallbackSpan.js +4 -4
  711. package/dist/esm/packages/react/src/utils/isFocusCaptured.js +8 -11
  712. package/dist/esm/packages/react/src/utils/isHoverSupported.js +2 -1
  713. package/dist/esm/packages/react/src/utils/mapValues.js +5 -6
  714. package/dist/esm/packages/react/src/utils/onReactSelectInputBlur.js +6 -7
  715. package/dist/esm/packages/react/src/utils/toInstant.js +7 -3
  716. package/dist/esm/packages/react/src/utils/toPlainDate.js +6 -3
  717. package/dist/esm/packages/react/src/utils/toPlainDateTime.js +6 -2
  718. package/dist/esm/packages/react/src/utils/toPlainTime.js +11 -6
  719. package/dist/esm/packages/react/src/vanilla-extract/recipeRuntime.js +29 -49
  720. package/dist/esm/packages/react/src/visually-hidden/VisuallyHidden.js +23 -25
  721. package/dist/esm/unstable.js +42 -41
  722. package/dist/esm/vanilla-extract/recipeRuntime.js +29 -49
  723. package/dist/index-CNp4lby5.d.ts +7751 -0
  724. package/dist/index.d.ts +2 -3951
  725. package/dist/unstable.d.ts +853 -800
  726. package/package.json +3 -3
  727. package/dist/MenuTrigger-tWI6N9u6.d.ts +0 -3541
  728. package/dist/cjs/Flex-CpoAs5no.js +0 -6771
  729. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-_DRZbSrs.css +0 -22
  730. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-CYQidutO.css +0 -6
  731. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B66WWA1W.css +0 -30
  732. package/dist/cjs/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-CWE1oA7e.css +0 -7
  733. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-DfdM91L6.css +0 -51
  734. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-DoBL6ZYy.css +0 -6
  735. package/dist/cjs/assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css +0 -4
  736. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-DOLwC3ln.css +0 -9
  737. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-CfQbkfWf.css +0 -213
  738. package/dist/cjs/assets/src/calendar/Calendar.css.ts.vanilla-Q78Gmr9g.css +0 -6
  739. package/dist/cjs/assets/src/calendar/CalendarGrid.css.ts.vanilla-BtxRtNtC.css +0 -7
  740. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-B_lbBCZR.css +0 -6
  741. package/dist/cjs/assets/src/calendar/CalendarNextMonthButton.css.ts.vanilla-B8zn9xOU.css +0 -8
  742. package/dist/cjs/assets/src/calendar/CalendarPreviousMonthButton.css.ts.vanilla-C-BaZ1cA.css +0 -8
  743. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-BRzKACrM.css +0 -8
  744. package/dist/cjs/assets/src/card/CardHeader.css.ts.vanilla-BdyaaGFm.css +0 -15
  745. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-CLa7Raqq.css +0 -10
  746. package/dist/cjs/assets/src/command/CommandItem.css.ts.vanilla-DjL5Q1UH.css +0 -6
  747. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-8mlBqHYd.css +0 -34
  748. package/dist/cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-B50bHAwM.css +0 -71
  749. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-CS5DJHW7.css +0 -6
  750. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-BeEXqphh.css +0 -15
  751. package/dist/cjs/assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-DCg-H-nf.css +0 -7
  752. package/dist/cjs/assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-xhy23AQP.css +0 -8
  753. package/dist/cjs/assets/src/dialog/DialogFooter.css.ts.vanilla-C6DeD1fx.css +0 -7
  754. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-DKQ7B0rQ.css +0 -19
  755. package/dist/cjs/assets/src/file-upload/FileUpload.css.ts.vanilla-CBiwqVak.css +0 -6
  756. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-BZNzFPak.css +0 -7
  757. package/dist/cjs/assets/src/hover-card/HoverCardTrigger.css.ts.vanilla-BajXBXhm.css +0 -6
  758. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-C4J2o8-g.css +0 -36
  759. package/dist/cjs/assets/src/input/Input.css.ts.vanilla-zwhBFVy8.css +0 -9
  760. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-BcTaHxWL.css +0 -71
  761. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-Cg18iILs.css +0 -7
  762. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-vDw4DFSx.css +0 -1
  763. package/dist/cjs/assets/src/layout/LayoutContent.css.ts.vanilla-BR56zSa6.css +0 -6
  764. package/dist/cjs/assets/src/listbox/Listbox.css.ts.vanilla-B5LJY9WW.css +0 -6
  765. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-DRVhiuqo.css +0 -53
  766. package/dist/cjs/assets/src/menu/MenuDialogContent.css.ts.vanilla-Tl9PXRid.css +0 -7
  767. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-BOF1MpaL.css +0 -6
  768. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-CXKMcp4a.css +0 -6
  769. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-BuSzUTHL.css +0 -9
  770. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-z7wHaHmd.css +0 -13
  771. package/dist/cjs/assets/src/resizable/ResizableHandle.css.ts.vanilla-Dgy_hzRs.css +0 -19
  772. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-CdGBIM3G.css +0 -10
  773. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-CEJsVpch.css +0 -6
  774. package/dist/cjs/assets/src/sortable/SortableHandle.css.ts.vanilla-DsgZa3ah.css +0 -6
  775. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-DUKY-Poq.css +0 -6
  776. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-o8W0kJzM.css +0 -45
  777. package/dist/cjs/assets/src/table/Table.css.ts.vanilla-CuSXd8qG.css +0 -18
  778. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-DnZTbFFv.css +0 -6
  779. package/dist/cjs/assets/src/table/TableHeader.css.ts.vanilla-BO_F1P1d.css +0 -8
  780. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-B2b4RweA.css +0 -9
  781. package/dist/cjs/assets/src/textarea/Textarea.css.ts.vanilla-DWcEeRom.css +0 -6
  782. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-ClxnlV04.css +0 -44
  783. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-B9nKs4o3.css +0 -104
  784. package/dist/cjs/assets/src/toast/ToastTitle.css.ts.vanilla-By4JZYRg.css +0 -6
  785. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-CGFB1e99.css +0 -25
  786. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-DlpE5ZUo.css +0 -10
  787. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-_DRZbSrs.css +0 -22
  788. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-CYQidutO.css +0 -6
  789. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B66WWA1W.css +0 -30
  790. package/dist/esm/assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-CWE1oA7e.css +0 -7
  791. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-DfdM91L6.css +0 -51
  792. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-DoBL6ZYy.css +0 -6
  793. package/dist/esm/assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css +0 -4
  794. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-DOLwC3ln.css +0 -9
  795. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-CfQbkfWf.css +0 -213
  796. package/dist/esm/assets/src/calendar/Calendar.css.ts.vanilla-Q78Gmr9g.css +0 -6
  797. package/dist/esm/assets/src/calendar/CalendarGrid.css.ts.vanilla-BtxRtNtC.css +0 -7
  798. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-B_lbBCZR.css +0 -6
  799. package/dist/esm/assets/src/calendar/CalendarNextMonthButton.css.ts.vanilla-B8zn9xOU.css +0 -8
  800. package/dist/esm/assets/src/calendar/CalendarPreviousMonthButton.css.ts.vanilla-C-BaZ1cA.css +0 -8
  801. package/dist/esm/assets/src/card/Card.css.ts.vanilla-BRzKACrM.css +0 -8
  802. package/dist/esm/assets/src/card/CardHeader.css.ts.vanilla-BdyaaGFm.css +0 -15
  803. package/dist/esm/assets/src/code/Code.css.ts.vanilla-CLa7Raqq.css +0 -10
  804. package/dist/esm/assets/src/command/CommandItem.css.ts.vanilla-DjL5Q1UH.css +0 -6
  805. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-8mlBqHYd.css +0 -34
  806. package/dist/esm/assets/src/data-table/DataTableBody.css.ts.vanilla-B50bHAwM.css +0 -71
  807. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-CS5DJHW7.css +0 -6
  808. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-BeEXqphh.css +0 -15
  809. package/dist/esm/assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-DCg-H-nf.css +0 -7
  810. package/dist/esm/assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-xhy23AQP.css +0 -8
  811. package/dist/esm/assets/src/dialog/DialogFooter.css.ts.vanilla-C6DeD1fx.css +0 -7
  812. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-DKQ7B0rQ.css +0 -19
  813. package/dist/esm/assets/src/file-upload/FileUpload.css.ts.vanilla-CBiwqVak.css +0 -6
  814. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-BZNzFPak.css +0 -7
  815. package/dist/esm/assets/src/hover-card/HoverCardTrigger.css.ts.vanilla-BajXBXhm.css +0 -6
  816. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-C4J2o8-g.css +0 -36
  817. package/dist/esm/assets/src/input/Input.css.ts.vanilla-zwhBFVy8.css +0 -9
  818. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-BcTaHxWL.css +0 -71
  819. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-Cg18iILs.css +0 -7
  820. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-vDw4DFSx.css +0 -1
  821. package/dist/esm/assets/src/layout/LayoutContent.css.ts.vanilla-BR56zSa6.css +0 -6
  822. package/dist/esm/assets/src/listbox/Listbox.css.ts.vanilla-B5LJY9WW.css +0 -6
  823. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-DRVhiuqo.css +0 -53
  824. package/dist/esm/assets/src/menu/MenuDialogContent.css.ts.vanilla-Tl9PXRid.css +0 -7
  825. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-BOF1MpaL.css +0 -6
  826. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-CXKMcp4a.css +0 -6
  827. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-BuSzUTHL.css +0 -9
  828. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-z7wHaHmd.css +0 -13
  829. package/dist/esm/assets/src/resizable/ResizableHandle.css.ts.vanilla-Dgy_hzRs.css +0 -19
  830. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-CdGBIM3G.css +0 -10
  831. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-CEJsVpch.css +0 -6
  832. package/dist/esm/assets/src/sortable/SortableHandle.css.ts.vanilla-DsgZa3ah.css +0 -6
  833. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-DUKY-Poq.css +0 -6
  834. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-o8W0kJzM.css +0 -45
  835. package/dist/esm/assets/src/table/Table.css.ts.vanilla-CuSXd8qG.css +0 -18
  836. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-DnZTbFFv.css +0 -6
  837. package/dist/esm/assets/src/table/TableHeader.css.ts.vanilla-BO_F1P1d.css +0 -8
  838. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-B2b4RweA.css +0 -9
  839. package/dist/esm/assets/src/textarea/Textarea.css.ts.vanilla-DWcEeRom.css +0 -6
  840. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-ClxnlV04.css +0 -44
  841. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-B9nKs4o3.css +0 -104
  842. package/dist/esm/assets/src/toast/ToastTitle.css.ts.vanilla-By4JZYRg.css +0 -6
  843. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-CGFB1e99.css +0 -25
  844. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-DlpE5ZUo.css +0 -10
  845. package/dist/esm/packages/react/package.json.js +0 -3
@@ -1,1893 +1,2021 @@
1
1
  "use client";
2
- 'use strict';
3
-
4
- var Flex = require('./Flex-CpoAs5no.js');
5
- var jsxRuntime = require('react/jsx-runtime');
6
- var reactId = require('@radix-ui/react-id');
7
- var clsx = require('clsx');
8
- var reactSlot = require('@radix-ui/react-slot');
9
- var React = require('react');
10
- require('./assets/src/layers/layers.css.ts.vanilla-vDw4DFSx.css');
11
- require('./assets/src/details-panel/DetailsPanel.css.ts.vanilla-C2p1WJX2.css');
12
- var reactContext = require('@radix-ui/react-context');
13
- require('./assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-DCg-H-nf.css');
14
- require('./assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-xhy23AQP.css');
15
- var reactComposeRefs = require('@radix-ui/react-compose-refs');
16
- require('./assets/src/file-upload/FileUpload.css.ts.vanilla-CBiwqVak.css');
17
- require('./assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-D36soXN2.css');
18
- var globals = require('@optiaxiom/globals');
19
- require('./assets/src/file-upload/FileUploadListItem.css.ts.vanilla-C6nNsc-0.css');
20
- require('./assets/src/highlight/Highlight.css.ts.vanilla-BZNzFPak.css');
21
- var RadixHoverCard = require('@radix-ui/react-hover-card');
22
- var reactUseControllableState = require('@radix-ui/react-use-controllable-state');
23
- require('./assets/src/hover-card/HoverCardTrigger.css.ts.vanilla-BajXBXhm.css');
24
- require('./assets/src/inline-input/InlineInput.css.ts.vanilla-JPjAPfCT.css');
25
- var ResizablePrimitive = require('react-resizable-panels');
26
- require('./assets/src/resizable/ResizableHandle.css.ts.vanilla-Dgy_hzRs.css');
27
- require('./assets/src/layout/Layout.css.ts.vanilla-Cr1gGYkW.css');
28
- require('./assets/src/layout/LayoutContent.css.ts.vanilla-BR56zSa6.css');
29
- require('./assets/src/pill/Pill.css.ts.vanilla-Vo0uosxJ.css');
30
- var RadixRovingFocus = require('@radix-ui/react-roving-focus');
31
- require('./assets/src/pill-menu/PillMenuTrigger.css.ts.vanilla-BV8IJ_3K.css');
32
- var dynamic = require('@vanilla-extract/dynamic');
33
- require('./assets/src/range/Range.css.ts.vanilla-BpxPPrUH.css');
34
- var helpers = require('@dnd-kit/helpers');
35
- var react = require('@dnd-kit/react');
36
- require('./assets/src/sortable/SortableHandle.css.ts.vanilla-DsgZa3ah.css');
37
- var sortable = require('@dnd-kit/react/sortable');
38
- require('./assets/src/sortable/SortableItem.css.ts.vanilla-aOh5KkMj.css');
39
- require('./assets/src/menu/MenuDialogContent.css.ts.vanilla-Tl9PXRid.css');
40
- require('downshift');
41
- require('./assets/src/input/Input.css.ts.vanilla-zwhBFVy8.css');
42
- require('./assets/src/input/InputControl.css.ts.vanilla-NLNP1OKO.css');
43
- require('./assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css');
44
- require('./assets/src/input/InputRoot.css.ts.vanilla-BcTaHxWL.css');
45
- require('./assets/src/command/CommandItem.css.ts.vanilla-DjL5Q1UH.css');
46
- require('./assets/src/menu/MenuInput.css.ts.vanilla-BOF1MpaL.css');
47
- require('react-remove-scroll');
48
- require('@radix-ui/react-dialog');
49
- require('use-sync-external-store/shim');
50
- require('./assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css');
51
- require('./assets/src/backdrop/Backdrop.css.ts.vanilla-BtFuvQar.css');
52
- require('./assets/src/dialog/DialogContent.css.ts.vanilla-C9Pj5Wjn.css');
53
- require('./assets/src/dialog/DialogFooter.css.ts.vanilla-C6DeD1fx.css');
54
- require('./assets/src/dialog/DialogHeader.css.ts.vanilla-DKQ7B0rQ.css');
55
- require('./assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-B66WWA1W.css');
56
- require('./assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-CiUBpfos.css');
57
- require('./assets/src/alert-dialog/AlertDialogHeader.css.ts.vanilla-CWE1oA7e.css');
58
- require('./assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css');
59
- require('./assets/src/actions/ActionsContent.css.ts.vanilla-_DRZbSrs.css');
60
- require('./assets/src/cover/Cover.css.ts.vanilla-8mlBqHYd.css');
61
- require('./assets/src/table/Table.css.ts.vanilla-CuSXd8qG.css');
62
- require('./assets/src/table/TableBody.css.ts.vanilla-DnZTbFFv.css');
63
- require('./assets/src/table/TableRow.css.ts.vanilla-B3Y4o06J.css');
64
- require('./assets/src/table/TableCell.css.ts.vanilla-Dx0a-QsD.css');
65
- require('./assets/src/table/TableHeader.css.ts.vanilla-BO_F1P1d.css');
66
- require('./assets/src/table/TableHeaderCell.css.ts.vanilla-Zlwkeywl.css');
67
- require('./assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-CPYdpifD.css');
68
- require('react-day-picker');
69
- require('@radix-ui/react-popper');
70
- require('@radix-ui/react-avatar');
71
- require('./assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css');
72
- require('./assets/src/avatar/Avatar.css.ts.vanilla-DNZoLzIy.css');
73
- require('@radix-ui/react-visually-hidden');
74
- require('./assets/src/listbox/Listbox.css.ts.vanilla-B5LJY9WW.css');
75
- require('./assets/src/icon/Icon.css.ts.vanilla-CJGFAqV6.css');
76
- require('./assets/src/button/ButtonRoot.css.ts.vanilla-CfQbkfWf.css');
77
- require('./assets/src/button/ButtonLoadable.css.ts.vanilla-DOLwC3ln.css');
78
- require('./assets/src/text/Text.css.ts.vanilla-Chg73Eev.css');
79
- require('./assets/src/spinner/Spinner.css.ts.vanilla-B-jTBYux.css');
80
- require('./assets/src/transition/Transition.css.ts.vanilla-BCVKHkFp.css');
81
- require('./assets/src/alert/Alert.css.ts.vanilla-CYQidutO.css');
82
- require('@radix-ui/react-popover');
83
- require('./assets/src/listbox/ListboxItem.css.ts.vanilla-DRVhiuqo.css');
84
- require('./assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-ChCP5x-4.css');
85
- require('./assets/src/skeleton/Skeleton.css.ts.vanilla-CEJsVpch.css');
86
- require('@tanstack/react-virtual');
87
- require('@radix-ui/react-separator');
88
- require('./assets/src/separator/Separator.css.ts.vanilla-C0HRBU1o.css');
89
- require('./assets/src/button/ButtonGroup.css.ts.vanilla-nvciSeRP.css');
90
- require('./assets/src/toggle-input/ToggleInput.css.ts.vanilla-CGFB1e99.css');
91
- require('./assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-DlpE5ZUo.css');
92
- require('./assets/src/switch/Switch.css.ts.vanilla-o8W0kJzM.css');
93
- require('./assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-Bd5q3I94.css');
94
- require('./assets/src/modal/ModalListbox.css.ts.vanilla-Ck7k8ENz.css');
95
- require('@radix-ui/react-portal');
96
- require('./assets/src/checkbox/CheckboxControl.css.ts.vanilla-B76TQBQN.css');
97
- require('@radix-ui/react-dismissable-layer');
98
- require('@radix-ui/react-focus-guards');
99
- require('@radix-ui/react-focus-scope');
100
- require('@radix-ui/react-tooltip');
101
- require('./assets/src/calendar/Calendar.css.ts.vanilla-Q78Gmr9g.css');
102
- require('./assets/src/calendar/CalendarDayButton.css.ts.vanilla-BvVmb_Bl.css');
103
- require('./assets/src/calendar/CalendarGrid.css.ts.vanilla-BtxRtNtC.css');
104
- require('./assets/src/calendar/CalendarMonths.css.ts.vanilla-B_lbBCZR.css');
105
- require('./assets/src/calendar/CalendarNextMonthButton.css.ts.vanilla-B8zn9xOU.css');
106
- require('./assets/src/calendar/CalendarPreviousMonthButton.css.ts.vanilla-C-BaZ1cA.css');
107
- require('@optiaxiom/globals/fonts');
108
- require('./assets/src/sprinkles/properties.css.ts.vanilla-BPB7SjyV.css');
109
- require('./assets/src/box/Box.css.ts.vanilla-BJLbpRx8.css');
110
-
111
- function _interopNamespaceDefault(e) {
112
- var n = Object.create(null);
113
- if (e) {
114
- Object.keys(e).forEach(function (k) {
115
- if (k !== 'default') {
116
- var d = Object.getOwnPropertyDescriptor(e, k);
117
- Object.defineProperty(n, k, d.get ? d : {
118
- enumerable: true,
119
- get: function () { return e[k]; }
120
- });
121
- }
122
- });
123
- }
124
- n.default = e;
125
- return Object.freeze(n);
126
- }
127
-
128
- var RadixHoverCard__namespace = /*#__PURE__*/_interopNamespaceDefault(RadixHoverCard);
129
- var ResizablePrimitive__namespace = /*#__PURE__*/_interopNamespaceDefault(ResizablePrimitive);
130
- var RadixRovingFocus__namespace = /*#__PURE__*/_interopNamespaceDefault(RadixRovingFocus);
131
-
2
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
+ const require_Flex = require("./Flex-CatAtV5e.js");
4
+ let _radix_ui_react_id = require("@radix-ui/react-id");
5
+ let react = require("react");
6
+ let _radix_ui_react_slot = require("@radix-ui/react-slot");
7
+ require("./assets/src/layers/layers.css.ts.vanilla-D2KEETGI.css");
8
+ let clsx = require("clsx");
9
+ clsx = require_Flex.__toESM(clsx);
10
+ let react_jsx_runtime = require("react/jsx-runtime");
11
+ let _optiaxiom_globals = require("@optiaxiom/globals");
12
+ let _radix_ui_react_context = require("@radix-ui/react-context");
13
+ let _radix_ui_react_compose_refs = require("@radix-ui/react-compose-refs");
14
+ let _radix_ui_react_use_controllable_state = require("@radix-ui/react-use-controllable-state");
15
+ let _vanilla_extract_dynamic = require("@vanilla-extract/dynamic");
16
+ require("./assets/src/details-panel/DetailsPanel.css.ts.vanilla-BmU9ZKmg.css");
17
+ require("./assets/src/details-panel/DetailsPanelFooter.css.ts.vanilla-CaB9gcz_.css");
18
+ require("./assets/src/details-panel/DetailsPanelHeader.css.ts.vanilla-B8JJZUBe.css");
19
+ require("./assets/src/file-upload/FileUpload.css.ts.vanilla-8KhYu3AA.css");
20
+ require("./assets/src/file-upload/FileUploadDropzone.css.ts.vanilla-BJPhhPd_.css");
21
+ require("./assets/src/file-upload/FileUploadListItem.css.ts.vanilla-fzvHNKs7.css");
22
+ require("./assets/src/highlight/Highlight.css.ts.vanilla--3Y-w0WQ.css");
23
+ let _radix_ui_react_hover_card = require("@radix-ui/react-hover-card");
24
+ _radix_ui_react_hover_card = require_Flex.__toESM(_radix_ui_react_hover_card);
25
+ require("./assets/src/hover-card/HoverCardTrigger.css.ts.vanilla-BSgG8_zG.css");
26
+ require("./assets/src/inline-input/InlineInput.css.ts.vanilla-B6dLoCLC.css");
27
+ let react_resizable_panels = require("react-resizable-panels");
28
+ react_resizable_panels = require_Flex.__toESM(react_resizable_panels);
29
+ require("./assets/src/resizable/ResizableHandle.css.ts.vanilla-BSMn5mzL.css");
30
+ require("./assets/src/layout/Layout.css.ts.vanilla-DrhQALKH.css");
31
+ require("./assets/src/layout/LayoutContent.css.ts.vanilla-BD8baLK5.css");
32
+ require("./assets/src/pill/Pill.css.ts.vanilla-CMUfd1c9.css");
33
+ let _radix_ui_react_roving_focus = require("@radix-ui/react-roving-focus");
34
+ _radix_ui_react_roving_focus = require_Flex.__toESM(_radix_ui_react_roving_focus);
35
+ require("./assets/src/pill-menu/PillMenuTrigger.css.ts.vanilla-CL7LNm67.css");
36
+ require("./assets/src/range/Range.css.ts.vanilla-RRJfcxzG.css");
37
+ let _dnd_kit_helpers = require("@dnd-kit/helpers");
38
+ let _dnd_kit_react = require("@dnd-kit/react");
39
+ require("./assets/src/sortable/SortableHandle.css.ts.vanilla-DCdQQF8R.css");
40
+ let _dnd_kit_react_sortable = require("@dnd-kit/react/sortable");
41
+ require("./assets/src/sortable/SortableItem.css.ts.vanilla-C0cu5qKt.css");
42
+ //#region ../../node_modules/.pnpm/@mantine+hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-hotkeys/parse-hotkey.mjs
132
43
  const keyNameMap = {
133
- " ": "space",
134
- ArrowLeft: "arrowleft",
135
- ArrowRight: "arrowright",
136
- ArrowUp: "arrowup",
137
- ArrowDown: "arrowdown",
138
- Escape: "escape",
139
- Esc: "escape",
140
- esc: "escape",
141
- Enter: "enter",
142
- Tab: "tab",
143
- Backspace: "backspace",
144
- Delete: "delete",
145
- Insert: "insert",
146
- Home: "home",
147
- End: "end",
148
- PageUp: "pageup",
149
- PageDown: "pagedown",
150
- "+": "plus",
151
- "-": "minus",
152
- "*": "asterisk",
153
- "/": "slash"
44
+ " ": "space",
45
+ ArrowLeft: "arrowleft",
46
+ ArrowRight: "arrowright",
47
+ ArrowUp: "arrowup",
48
+ ArrowDown: "arrowdown",
49
+ Escape: "escape",
50
+ Esc: "escape",
51
+ esc: "escape",
52
+ Enter: "enter",
53
+ Tab: "tab",
54
+ Backspace: "backspace",
55
+ Delete: "delete",
56
+ Insert: "insert",
57
+ Home: "home",
58
+ End: "end",
59
+ PageUp: "pageup",
60
+ PageDown: "pagedown",
61
+ "+": "plus",
62
+ "-": "minus",
63
+ "*": "asterisk",
64
+ "/": "slash"
154
65
  };
155
66
  function normalizeKey(key) {
156
- const lowerKey = key.replace("Key", "").toLowerCase();
157
- return keyNameMap[key] || lowerKey;
67
+ const lowerKey = key.replace("Key", "").toLowerCase();
68
+ return keyNameMap[key] || lowerKey;
158
69
  }
159
70
  function parseHotkey(hotkey) {
160
- const keys = hotkey.toLowerCase().split("+").map((part) => part.trim());
161
- const modifiers = {
162
- alt: keys.includes("alt"),
163
- ctrl: keys.includes("ctrl"),
164
- meta: keys.includes("meta"),
165
- mod: keys.includes("mod"),
166
- shift: keys.includes("shift"),
167
- plus: keys.includes("[plus]")
168
- };
169
- const reservedKeys = ["alt", "ctrl", "meta", "shift", "mod"];
170
- const freeKey = keys.find((key) => !reservedKeys.includes(key));
171
- return {
172
- ...modifiers,
173
- key: freeKey === "[plus]" ? "+" : freeKey
174
- };
71
+ const keys = hotkey.toLowerCase().split("+").map((part) => part.trim());
72
+ const modifiers = {
73
+ alt: keys.includes("alt"),
74
+ ctrl: keys.includes("ctrl"),
75
+ meta: keys.includes("meta"),
76
+ mod: keys.includes("mod"),
77
+ shift: keys.includes("shift"),
78
+ plus: keys.includes("[plus]")
79
+ };
80
+ const reservedKeys = [
81
+ "alt",
82
+ "ctrl",
83
+ "meta",
84
+ "shift",
85
+ "mod"
86
+ ];
87
+ const freeKey = keys.find((key) => !reservedKeys.includes(key));
88
+ return {
89
+ ...modifiers,
90
+ key: freeKey === "[plus]" ? "+" : freeKey
91
+ };
175
92
  }
176
93
  function isExactHotkey(hotkey, event, usePhysicalKeys) {
177
- const { alt, ctrl, meta, mod, shift, key } = hotkey;
178
- const { altKey, ctrlKey, metaKey, shiftKey, key: pressedKey, code: pressedCode } = event;
179
- if (alt !== altKey) {
180
- return false;
181
- }
182
- if (mod) {
183
- if (!ctrlKey && !metaKey) {
184
- return false;
185
- }
186
- } else {
187
- if (ctrl !== ctrlKey) {
188
- return false;
189
- }
190
- if (meta !== metaKey) {
191
- return false;
192
- }
193
- }
194
- if (shift !== shiftKey) {
195
- return false;
196
- }
197
- if (key && (usePhysicalKeys ? normalizeKey(pressedCode) === normalizeKey(key) : normalizeKey(pressedKey ?? pressedCode) === normalizeKey(key))) {
198
- return true;
199
- }
200
- return false;
94
+ const { alt, ctrl, meta, mod, shift, key } = hotkey;
95
+ const { altKey, ctrlKey, metaKey, shiftKey, key: pressedKey, code: pressedCode } = event;
96
+ if (alt !== altKey) return false;
97
+ if (mod) {
98
+ if (!ctrlKey && !metaKey) return false;
99
+ } else {
100
+ if (ctrl !== ctrlKey) return false;
101
+ if (meta !== metaKey) return false;
102
+ }
103
+ if (shift !== shiftKey) return false;
104
+ if (key && (usePhysicalKeys ? normalizeKey(pressedCode) === normalizeKey(key) : normalizeKey(pressedKey ?? pressedCode) === normalizeKey(key))) return true;
105
+ return false;
201
106
  }
202
107
  function getHotkeyMatcher(hotkey, usePhysicalKeys) {
203
- return (event) => isExactHotkey(parseHotkey(hotkey), event, usePhysicalKeys);
108
+ return (event) => isExactHotkey(parseHotkey(hotkey), event, usePhysicalKeys);
204
109
  }
205
-
110
+ //#endregion
111
+ //#region ../../node_modules/.pnpm/@mantine+hooks@8.3.18_react@18.3.1/node_modules/@mantine/hooks/esm/use-hotkeys/use-hotkeys.mjs
206
112
  function shouldFireEvent(event, tagsToIgnore, triggerOnContentEditable = false) {
207
- if (event.target instanceof HTMLElement) {
208
- if (triggerOnContentEditable) {
209
- return !tagsToIgnore.includes(event.target.tagName);
210
- }
211
- return !event.target.isContentEditable && !tagsToIgnore.includes(event.target.tagName);
212
- }
213
- return true;
113
+ if (event.target instanceof HTMLElement) {
114
+ if (triggerOnContentEditable) return !tagsToIgnore.includes(event.target.tagName);
115
+ return !event.target.isContentEditable && !tagsToIgnore.includes(event.target.tagName);
116
+ }
117
+ return true;
214
118
  }
215
- function useHotkeys(hotkeys, tagsToIgnore = ["INPUT", "TEXTAREA", "SELECT"], triggerOnContentEditable = false) {
216
- React.useEffect(() => {
217
- const keydownListener = (event) => {
218
- hotkeys.forEach(
219
- ([hotkey, handler, options = { preventDefault: true, usePhysicalKeys: false }]) => {
220
- if (getHotkeyMatcher(hotkey, options.usePhysicalKeys)(event) && shouldFireEvent(event, tagsToIgnore, triggerOnContentEditable)) {
221
- if (options.preventDefault) {
222
- event.preventDefault();
223
- }
224
- handler(event);
225
- }
226
- }
227
- );
228
- };
229
- document.documentElement.addEventListener("keydown", keydownListener);
230
- return () => document.documentElement.removeEventListener("keydown", keydownListener);
231
- }, [hotkeys]);
119
+ function useHotkeys(hotkeys, tagsToIgnore = [
120
+ "INPUT",
121
+ "TEXTAREA",
122
+ "SELECT"
123
+ ], triggerOnContentEditable = false) {
124
+ (0, react.useEffect)(() => {
125
+ const keydownListener = (event) => {
126
+ hotkeys.forEach(([hotkey, handler, options = {
127
+ preventDefault: true,
128
+ usePhysicalKeys: false
129
+ }]) => {
130
+ if (getHotkeyMatcher(hotkey, options.usePhysicalKeys)(event) && shouldFireEvent(event, tagsToIgnore, triggerOnContentEditable)) {
131
+ if (options.preventDefault) event.preventDefault();
132
+ handler(event);
133
+ }
134
+ });
135
+ };
136
+ document.documentElement.addEventListener("keydown", keydownListener);
137
+ return () => document.documentElement.removeEventListener("keydown", keydownListener);
138
+ }, [hotkeys]);
232
139
  }
233
-
140
+ //#endregion
141
+ //#region src/dialog-kit/useDialogKit.ts
142
+ /**
143
+ * Hook to access the dialog kit context.
144
+ *
145
+ * @experimental
146
+ */
234
147
  function useDialogKit() {
235
- const context = React.useContext(Flex.DialogKitContext);
236
- if (!context) {
237
- throw new Error(
238
- `\`useDialogItemContext\` must be used within managed dialogs.`
239
- );
240
- }
241
- return {
242
- /**
243
- * The ID of the managed dialog item in the current context.
244
- */
245
- id: context.id
246
- };
148
+ const context = (0, react.useContext)(require_Flex.DialogKitContext);
149
+ if (!context) throw new Error(`\`useDialogItemContext\` must be used within managed dialogs.`);
150
+ return {
151
+ /**
152
+ * The ID of the managed dialog item in the current context.
153
+ */
154
+ id: context.id };
247
155
  }
248
-
249
- function DataTableExpandableCell({
250
- children,
251
- getValue,
252
- row
253
- }) {
254
- const labelPrefixId = reactId.useId();
255
- const { labelId } = Flex.useDataTableRowContext(
256
- "@optiaxiom/react/DataTableExpandableCell"
257
- );
258
- return /* @__PURE__ */ jsxRuntime.jsxs(Flex.Group, { alignItems: "start", gap: "8", children: [
259
- Array.from({ length: row.depth }).map((_, index) => /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { flex: "none", w: "sm" }, index)),
260
- row.getCanExpand() ? /* @__PURE__ */ jsxRuntime.jsx(
261
- Flex.Button,
262
- {
263
- appearance: "subtle",
264
- "aria-expanded": row.getIsExpanded(),
265
- "aria-label": "Toggle row",
266
- "aria-labelledby": clsx(labelPrefixId, labelId),
267
- flex: "none",
268
- icon: row.getIsExpanded() ? /* @__PURE__ */ jsxRuntime.jsx(Flex.IconAngleDown, {}) : /* @__PURE__ */ jsxRuntime.jsx(Flex.IconAngleRight, {}),
269
- id: labelPrefixId,
270
- onClick: row.getToggleExpandedHandler(),
271
- size: "sm",
272
- style: { marginBlock: -2 },
273
- type: "button"
274
- }
275
- ) : /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { flex: "none", w: "sm" }),
276
- children ?? getValue()
277
- ] });
156
+ //#endregion
157
+ //#region src/data-table/DataTableExpandableCell.tsx
158
+ /**
159
+ * Table cell component with expandable row functionality.
160
+ *
161
+ * @group DataTable
162
+ * @experimental
163
+ */
164
+ function DataTableExpandableCell({ children, getValue, row }) {
165
+ const labelPrefixId = (0, _radix_ui_react_id.useId)();
166
+ const { labelId } = require_Flex.useDataTableRowContext("@optiaxiom/react/DataTableExpandableCell");
167
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Group, {
168
+ alignItems: "start",
169
+ gap: "8",
170
+ children: [
171
+ Array.from({ length: row.depth }).map((_, index) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
172
+ flex: "none",
173
+ w: "sm"
174
+ }, index)),
175
+ row.getCanExpand() ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Button, {
176
+ appearance: "subtle",
177
+ "aria-expanded": row.getIsExpanded(),
178
+ "aria-label": "Toggle row",
179
+ "aria-labelledby": (0, clsx.default)(labelPrefixId, labelId),
180
+ flex: "none",
181
+ icon: row.getIsExpanded() ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.IconAngleDown, {}) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.IconAngleRight, {}),
182
+ id: labelPrefixId,
183
+ onClick: row.getToggleExpandedHandler(),
184
+ size: "sm",
185
+ style: { marginBlock: -2 },
186
+ type: "button"
187
+ }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
188
+ flex: "none",
189
+ w: "sm"
190
+ }),
191
+ children ?? getValue()
192
+ ]
193
+ });
278
194
  }
279
195
  DataTableExpandableCell.displayName = "@optiaxiom/react/DataTableExpandableCell";
280
-
281
- function DataTableExpandableHeader({
282
- children
283
- }) {
284
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ml: "32", children });
196
+ //#endregion
197
+ //#region src/data-table/DataTableExpandableHeader.tsx
198
+ /**
199
+ * Table header component for expandable columns.
200
+ *
201
+ * @group DataTable
202
+ * @experimental
203
+ */
204
+ function DataTableExpandableHeader({ children }) {
205
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
206
+ ml: "32",
207
+ children
208
+ });
285
209
  }
286
210
  DataTableExpandableHeader.displayName = "@optiaxiom/react/DataTableExpandableHeader";
287
-
288
- var root$3 = Flex.recipeRuntime({base:[{bg:'bg.default',borderColor:'border.secondary',borderL:'1',color:'fg.default',display:'flex',flexDirection:'column',h:'full',overflow:'auto'},'_1w4qqsr']});
289
-
290
- const [DetailsPanelProvider, useDetailsPanelContext] = reactContext.createContext("@optiaxiom/react/DetailsPanel");
291
-
292
- const Slot$4 = reactSlot.createSlot("@optiaxiom/react/DetailsPanel");
293
- const DetailsPanel = React.forwardRef(
294
- ({ asChild, children, className, ...props }, ref) => {
295
- const Comp = asChild ? Slot$4 : "aside";
296
- const labelId = reactId.useId();
297
- const descriptionId = reactId.useId();
298
- return /* @__PURE__ */ jsxRuntime.jsx(DetailsPanelProvider, { descriptionId, labelId, children: /* @__PURE__ */ jsxRuntime.jsx(
299
- Flex.Box,
300
- {
301
- "aria-describedby": descriptionId,
302
- "aria-labelledby": labelId,
303
- asChild: true,
304
- tabIndex: 0,
305
- ...root$3({}, className),
306
- ...props,
307
- children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { ref, children })
308
- }
309
- ) });
310
- }
311
- );
211
+ //#endregion
212
+ //#region src/details-panel/DetailsPanel.css.ts
213
+ var root$3 = require_Flex.recipeRuntime({ base: [{
214
+ bg: "bg.default",
215
+ borderColor: "border.secondary",
216
+ borderL: "1",
217
+ color: "fg.default",
218
+ display: "flex",
219
+ flexDirection: "column",
220
+ h: "full",
221
+ overflow: "auto"
222
+ }, "_1cebnnd"] });
223
+ //#endregion
224
+ //#region src/details-panel/DetailsPanelContext.ts
225
+ const [DetailsPanelProvider, useDetailsPanelContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/DetailsPanel");
226
+ //#endregion
227
+ //#region src/details-panel/DetailsPanel.tsx
228
+ const Slot$4 = (0, _radix_ui_react_slot.createSlot)("@optiaxiom/react/DetailsPanel");
229
+ /**
230
+ * Panel for showing additional content on the right side of the page.
231
+ *
232
+ * @group DetailsPanel
233
+ * @since 1.6.0
234
+ * @experimental
235
+ * @category container
236
+ */
237
+ const DetailsPanel = (0, react.forwardRef)(({ asChild, children, className, ...props }, ref) => {
238
+ const Comp = asChild ? Slot$4 : "aside";
239
+ const labelId = (0, _radix_ui_react_id.useId)();
240
+ const descriptionId = (0, _radix_ui_react_id.useId)();
241
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(DetailsPanelProvider, {
242
+ descriptionId,
243
+ labelId,
244
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
245
+ "aria-describedby": descriptionId,
246
+ "aria-labelledby": labelId,
247
+ asChild: true,
248
+ tabIndex: 0,
249
+ ...root$3({}, className),
250
+ ...props,
251
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
252
+ ref,
253
+ children
254
+ })
255
+ })
256
+ });
257
+ });
312
258
  DetailsPanel.displayName = "@optiaxiom/react/DetailsPanel";
313
-
314
- const DetailsPanelBody = React.forwardRef(({ children, ...props }, ref) => {
315
- return /* @__PURE__ */ jsxRuntime.jsx(
316
- Flex.Group,
317
- {
318
- flex: "1",
319
- flexDirection: "column",
320
- fontSize: "md",
321
- gap: "16",
322
- px: "16",
323
- ref,
324
- ...props,
325
- children
326
- }
327
- );
259
+ //#endregion
260
+ //#region src/details-panel/DetailsPanelBody.tsx
261
+ /**
262
+ * @group DetailsPanel
263
+ */
264
+ const DetailsPanelBody = (0, react.forwardRef)(({ children, ...props }, ref) => {
265
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
266
+ flex: "1",
267
+ flexDirection: "column",
268
+ fontSize: "md",
269
+ gap: "16",
270
+ px: "16",
271
+ ref,
272
+ ...props,
273
+ children
274
+ });
328
275
  });
329
276
  DetailsPanelBody.displayName = "@optiaxiom/react/DetailsPanelBody";
330
-
331
- var footer = Flex.recipeRuntime({base:[{bg:'bg.default',gap:'8',p:'16',pt:'8'},'_1rm5fy2']});
332
-
333
- const DetailsPanelFooter = React.forwardRef(({ children, className, ...props }, ref) => {
334
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.ButtonProvider, { size: "lg", children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { ref, ...footer({}, className), ...props, children }) });
277
+ //#endregion
278
+ //#region src/details-panel/DetailsPanelFooter.css.ts
279
+ var footer = require_Flex.recipeRuntime({ base: [{
280
+ bg: "bg.default",
281
+ gap: "8",
282
+ p: "16",
283
+ pt: "8"
284
+ }, "_1xzba39"] });
285
+ //#endregion
286
+ //#region src/details-panel/DetailsPanelFooter.tsx
287
+ /**
288
+ * @group DetailsPanel
289
+ */
290
+ const DetailsPanelFooter = (0, react.forwardRef)(({ children, className, ...props }, ref) => {
291
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.ButtonProvider, {
292
+ size: "lg",
293
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
294
+ ref,
295
+ ...footer({}, className),
296
+ ...props,
297
+ children
298
+ })
299
+ });
335
300
  });
336
301
  DetailsPanelFooter.displayName = "@optiaxiom/react/DetailsPanelFooter";
337
-
338
- var header = Flex.recipeRuntime({base:[{bg:'bg.default',display:'flex',flexWrap:'wrap',p:'16',pb:'8'},'_4nerz6']});
339
-
340
- const DetailsPanelHeader = React.forwardRef(
341
- ({ addonAfter, addonBefore, children, className, description, ...props }, ref) => {
342
- const { descriptionId, labelId } = useDetailsPanelContext(
343
- "@optiaxiom/react/DetailsPanelHeader"
344
- );
345
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.ButtonProvider, { size: "sm", children: /* @__PURE__ */ jsxRuntime.jsxs(Flex.Box, { ref, ...header({}, className), ...props, children: [
346
- addonBefore && /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { gap: "8", children: addonBefore }),
347
- /* @__PURE__ */ jsxRuntime.jsx(
348
- Flex.Heading,
349
- {
350
- flex: "1",
351
- fontSize: "lg",
352
- fontWeight: "600",
353
- id: labelId,
354
- level: "2",
355
- children
356
- }
357
- ),
358
- addonAfter && /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { gap: "8", children: addonAfter }),
359
- description && /* @__PURE__ */ jsxRuntime.jsx(
360
- Flex.Text,
361
- {
362
- asChild: true,
363
- color: "fg.secondary",
364
- fontSize: "sm",
365
- id: descriptionId,
366
- w: "full",
367
- children: Flex.fallbackSpan(description)
368
- }
369
- )
370
- ] }) });
371
- }
372
- );
302
+ //#endregion
303
+ //#region src/details-panel/DetailsPanelHeader.css.ts
304
+ var header = require_Flex.recipeRuntime({ base: [{
305
+ bg: "bg.default",
306
+ display: "flex",
307
+ flexWrap: "wrap",
308
+ p: "16",
309
+ pb: "8"
310
+ }, "_15pwwoj"] });
311
+ //#endregion
312
+ //#region src/details-panel/DetailsPanelHeader.tsx
313
+ /**
314
+ * @group DetailsPanel
315
+ */
316
+ const DetailsPanelHeader = (0, react.forwardRef)(({ addonAfter, addonBefore, children, className, description, ...props }, ref) => {
317
+ const { descriptionId, labelId } = useDetailsPanelContext("@optiaxiom/react/DetailsPanelHeader");
318
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.ButtonProvider, {
319
+ size: "sm",
320
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
321
+ ref,
322
+ ...header({}, className),
323
+ ...props,
324
+ children: [
325
+ addonBefore && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
326
+ gap: "8",
327
+ children: addonBefore
328
+ }),
329
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Heading, {
330
+ flex: "1",
331
+ fontSize: "lg",
332
+ fontWeight: "600",
333
+ id: labelId,
334
+ level: "2",
335
+ children
336
+ }),
337
+ addonAfter && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
338
+ gap: "8",
339
+ children: addonAfter
340
+ }),
341
+ description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Text, {
342
+ asChild: true,
343
+ color: "fg.secondary",
344
+ fontSize: "sm",
345
+ id: descriptionId,
346
+ w: "full",
347
+ children: require_Flex.fallbackSpan(description)
348
+ })
349
+ ]
350
+ })
351
+ });
352
+ });
373
353
  DetailsPanelHeader.displayName = "@optiaxiom/react/DetailsPanelHeader";
374
-
375
- var upload = Flex.recipeRuntime({base:[{color:'fg.default',display:'flex',flexDirection:'column'},'_4rt67d']});
376
-
377
- const [FileUploadProvider, useFileUploadContext] = reactContext.createContext("@optiaxiom/react/FileUpload");
378
-
379
- const FileUpload = React.forwardRef(
380
- ({ accept, children, className, disabled, onFilesDrop, ...props }, outerRef) => {
381
- const innerRef = React.useRef(null);
382
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
383
- const inputRef = React.useRef(null);
384
- return /* @__PURE__ */ jsxRuntime.jsx(
385
- FileUploadProvider,
386
- {
387
- accept: (accept ?? []).join(","),
388
- disabled,
389
- inputRef,
390
- onFilesDrop,
391
- rootRef: innerRef,
392
- children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ref, ...upload({}, className), ...props, children })
393
- }
394
- );
395
- }
396
- );
354
+ //#endregion
355
+ //#region src/file-upload/FileUpload.css.ts
356
+ var upload = require_Flex.recipeRuntime({ base: [{
357
+ color: "fg.default",
358
+ display: "flex",
359
+ flexDirection: "column"
360
+ }, "ntvrkm"] });
361
+ //#endregion
362
+ //#region src/file-upload/FileUploadContext.ts
363
+ const [FileUploadProvider, useFileUploadContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/FileUpload");
364
+ //#endregion
365
+ //#region src/file-upload/FileUpload.tsx
366
+ /**
367
+ * Capture file input from users with drag and drop.
368
+ *
369
+ * @category form
370
+ * @since 1.6.0
371
+ * @experimental
372
+ */
373
+ const FileUpload = (0, react.forwardRef)(({ accept, children, className, disabled, onFilesDrop, ...props }, outerRef) => {
374
+ const innerRef = (0, react.useRef)(null);
375
+ const ref = (0, _radix_ui_react_compose_refs.useComposedRefs)(innerRef, outerRef);
376
+ const inputRef = (0, react.useRef)(null);
377
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FileUploadProvider, {
378
+ accept: (accept ?? []).join(","),
379
+ disabled,
380
+ inputRef,
381
+ onFilesDrop,
382
+ rootRef: innerRef,
383
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
384
+ ref,
385
+ ...upload({}, className),
386
+ ...props,
387
+ children
388
+ })
389
+ });
390
+ });
397
391
  FileUpload.displayName = "@optiaxiom/react/FileUpload";
398
-
399
- const IconFileImport = Flex.withIcon(
400
- {
401
- name: "IconFileImport"
402
- },
403
- /* @__PURE__ */ jsxRuntime.jsx(
404
- "path",
405
- {
406
- d: "M12.1426 0.00292969C12.1639 0.00180327 12.1854 1.32505e-06 12.207 0C12.5271 0 12.8342 0.127186 13.0605 0.353516L16.6465 3.93945C16.8728 4.16582 17 4.47286 17 4.79297C17 4.81264 16.998 4.83212 16.9971 4.85156C16.9979 4.87236 17 4.89316 17 4.91406V14.5C16.9999 15.3284 16.3284 16 15.5 16H6.5C5.67161 16 5.00006 15.3284 5 14.5V11H6V14.5C6.00006 14.7761 6.2239 15 6.5 15H15.5C15.7761 15 15.9999 14.7761 16 14.5V5.98047C15.9326 5.99213 15.8637 6 15.793 6H12.5C11.6716 6 11 5.32843 11 4.5V1.20703C11 1.13639 11.0069 1.06731 11.0186 1H6.5C6.22386 1 6 1.22386 6 1.5V8H5V1.5C5 0.671573 5.67157 0 6.5 0H12.0859C12.1049 1.90532e-06 12.1237 0.00221438 12.1426 0.00292969ZM8.96484 6.14648C9.16011 5.95122 9.47661 5.95122 9.67188 6.14648L12.8535 9.32812C13.0487 9.52339 13.0488 9.83991 12.8535 10.0352L9.67188 13.2168C9.47663 13.412 9.16009 13.412 8.96484 13.2168C8.7696 13.0216 8.76964 12.705 8.96484 12.5098L11.293 10.1816H2.5C2.2239 10.1816 2.00006 9.95773 2 9.68164C2 9.4055 2.22386 9.18164 2.5 9.18164H11.293L8.96484 6.85352C8.7696 6.65827 8.76964 6.34175 8.96484 6.14648ZM12.1553 1.00684C12.066 1.02987 12 1.11061 12 1.20703V4.5C12 4.77614 12.2239 5 12.5 5H15.793C15.8911 4.99997 15.9728 4.93153 15.9941 4.83984C15.9832 4.76713 15.9567 4.69771 15.916 4.63672L15.8535 4.56055L12.4395 1.14648C12.3623 1.06931 12.2621 1.02189 12.1553 1.00684Z",
407
- fill: "currentColor"
408
- }
409
- )
410
- );
411
-
412
- var dropzone = Flex.recipeRuntime({base:[{alignItems:'center',bg:'bg.secondary',flexDirection:'column',gap:'16',justifyContent:'center',p:'32',rounded:'md',textAlign:'center',transition:'colors'},'_1gcjp0z'],variants:{drag:{false:{},true:['_5b3env']},hidden:{false:'_1upxi8',true:'hg77f6'},overlay:{false:{flex:'1'},true:[{z:'10'},'_124eu52']}}});
413
- var label = Flex.recipeRuntime({base:[{alignItems:'center',flexDirection:'column',gap:'8'}],variants:{disabled:{false:{},true:'_10xcljk'}}});
414
-
392
+ //#endregion
393
+ //#region src/icons/IconFileImport.tsx
394
+ const IconFileImport = require_Flex.withIcon({ name: "IconFileImport" }, /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
395
+ d: "M12.1426 0.00292969C12.1639 0.00180327 12.1854 1.32505e-06 12.207 0C12.5271 0 12.8342 0.127186 13.0605 0.353516L16.6465 3.93945C16.8728 4.16582 17 4.47286 17 4.79297C17 4.81264 16.998 4.83212 16.9971 4.85156C16.9979 4.87236 17 4.89316 17 4.91406V14.5C16.9999 15.3284 16.3284 16 15.5 16H6.5C5.67161 16 5.00006 15.3284 5 14.5V11H6V14.5C6.00006 14.7761 6.2239 15 6.5 15H15.5C15.7761 15 15.9999 14.7761 16 14.5V5.98047C15.9326 5.99213 15.8637 6 15.793 6H12.5C11.6716 6 11 5.32843 11 4.5V1.20703C11 1.13639 11.0069 1.06731 11.0186 1H6.5C6.22386 1 6 1.22386 6 1.5V8H5V1.5C5 0.671573 5.67157 0 6.5 0H12.0859C12.1049 1.90532e-06 12.1237 0.00221438 12.1426 0.00292969ZM8.96484 6.14648C9.16011 5.95122 9.47661 5.95122 9.67188 6.14648L12.8535 9.32812C13.0487 9.52339 13.0488 9.83991 12.8535 10.0352L9.67188 13.2168C9.47663 13.412 9.16009 13.412 8.96484 13.2168C8.7696 13.0216 8.76964 12.705 8.96484 12.5098L11.293 10.1816H2.5C2.2239 10.1816 2.00006 9.95773 2 9.68164C2 9.4055 2.22386 9.18164 2.5 9.18164H11.293L8.96484 6.85352C8.7696 6.65827 8.76964 6.34175 8.96484 6.14648ZM12.1553 1.00684C12.066 1.02987 12 1.11061 12 1.20703V4.5C12 4.77614 12.2239 5 12.5 5H15.793C15.8911 4.99997 15.9728 4.93153 15.9941 4.83984C15.9832 4.76713 15.9567 4.69771 15.916 4.63672L15.8535 4.56055L12.4395 1.14648C12.3623 1.06931 12.2621 1.02189 12.1553 1.00684Z",
396
+ fill: "currentColor"
397
+ }));
398
+ //#endregion
399
+ //#region src/file-upload/FileUploadDropzone.css.ts
400
+ var dropzone = require_Flex.recipeRuntime({
401
+ base: [{
402
+ alignItems: "center",
403
+ bg: "bg.secondary",
404
+ flexDirection: "column",
405
+ gap: "16",
406
+ justifyContent: "center",
407
+ p: "32",
408
+ rounded: "md",
409
+ textAlign: "center",
410
+ transition: "colors"
411
+ }, "u3qpgk"],
412
+ variants: {
413
+ drag: {
414
+ false: {},
415
+ true: ["_6n56i3"]
416
+ },
417
+ hidden: {
418
+ false: "_1hox8z2",
419
+ true: "_1lpulj2"
420
+ },
421
+ overlay: {
422
+ false: { flex: "1" },
423
+ true: [{ z: "10" }, "eqbw6b"]
424
+ }
425
+ }
426
+ });
427
+ var label = require_Flex.recipeRuntime({
428
+ base: [{
429
+ alignItems: "center",
430
+ flexDirection: "column",
431
+ gap: "8"
432
+ }],
433
+ variants: { disabled: {
434
+ false: {},
435
+ true: "lvd7lo"
436
+ } }
437
+ });
438
+ //#endregion
439
+ //#region src/file-upload/useFileUploadTrigger.ts
415
440
  const useFileUploadTrigger = () => {
416
- const { inputRef } = useFileUploadContext(
417
- "@optiaxiom/react/useFileUploadOpen"
418
- );
419
- return React.useCallback(() => {
420
- inputRef.current?.click();
421
- }, [inputRef]);
441
+ const { inputRef } = useFileUploadContext("@optiaxiom/react/useFileUploadOpen");
442
+ return (0, react.useCallback)(() => {
443
+ inputRef.current?.click();
444
+ }, [inputRef]);
422
445
  };
423
-
424
- const Slot$3 = reactSlot.createSlot("@optiaxiom/react/FileUploadTrigger");
425
- const FileUploadTrigger = React.forwardRef(({ asChild, children, onClick, ...props }, ref) => {
426
- const { boxProps, restProps } = Flex.extractBoxProps(props);
427
- const Comp = asChild ? Slot$3 : Flex.Button;
428
- const { disabled } = useFileUploadContext(
429
- "@optiaxiom/react/FileUploadTrigger"
430
- );
431
- const open = useFileUploadTrigger();
432
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx(
433
- Comp,
434
- {
435
- disabled,
436
- onClick: (event) => {
437
- onClick?.(event);
438
- if (event.defaultPrevented) {
439
- return;
440
- }
441
- open();
442
- },
443
- ref,
444
- ...asChild ? {} : { type: "button" },
445
- ...restProps,
446
- children: children || "Select files"
447
- }
448
- ) });
446
+ //#endregion
447
+ //#region src/file-upload/FileUploadTrigger.tsx
448
+ const Slot$3 = (0, _radix_ui_react_slot.createSlot)("@optiaxiom/react/FileUploadTrigger");
449
+ /**
450
+ * @group FileUpload
451
+ * @extends Button
452
+ */
453
+ const FileUploadTrigger = (0, react.forwardRef)(({ asChild, children, onClick, ...props }, ref) => {
454
+ const { boxProps, restProps } = require_Flex.extractBoxProps(props);
455
+ const Comp = asChild ? Slot$3 : require_Flex.Button;
456
+ const { disabled } = useFileUploadContext("@optiaxiom/react/FileUploadTrigger");
457
+ const open = useFileUploadTrigger();
458
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
459
+ asChild: true,
460
+ ...boxProps,
461
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, {
462
+ disabled,
463
+ onClick: (event) => {
464
+ onClick?.(event);
465
+ if (event.defaultPrevented) return;
466
+ open();
467
+ },
468
+ ref,
469
+ ...asChild ? {} : { type: "button" },
470
+ ...restProps,
471
+ children: children || "Select files"
472
+ })
473
+ });
449
474
  });
450
475
  FileUploadTrigger.displayName = "@optiaxiom/react/FileUploadTrigger";
451
-
476
+ //#endregion
477
+ //#region src/file-upload/useContainerSize.ts
452
478
  const useContainerSize = (ref) => {
453
- const [size, setSize] = React.useState();
454
- React.useEffect(() => {
455
- if (!ref.current) {
456
- return;
457
- }
458
- const observer = new ResizeObserver((entries) => {
459
- if (!ref.current) {
460
- return;
461
- }
462
- for (const entry of entries) {
463
- setSize(entry.borderBoxSize[0].blockSize);
464
- }
465
- });
466
- observer.observe(ref.current);
467
- return () => observer.disconnect();
468
- }, [ref]);
469
- return size;
479
+ const [size, setSize] = (0, react.useState)();
480
+ (0, react.useEffect)(() => {
481
+ if (!ref.current) return;
482
+ const observer = new ResizeObserver((entries) => {
483
+ if (!ref.current) return;
484
+ for (const entry of entries) setSize(entry.borderBoxSize[0].blockSize);
485
+ });
486
+ observer.observe(ref.current);
487
+ return () => observer.disconnect();
488
+ }, [ref]);
489
+ return size;
470
490
  };
471
-
491
+ //#endregion
492
+ //#region src/file-upload/useDraggingOverBody.ts
472
493
  const useDraggingOverBody = () => {
473
- const { disabled, rootRef } = useFileUploadContext(
474
- "@optiaxiom/react/FileUploadDropzone"
475
- );
476
- const [isDragging, setIsDragging] = React.useState(false);
477
- const dragRef = React.useRef({
478
- source: null,
479
- timer: 0
480
- });
481
- React.useEffect(() => {
482
- if (disabled) {
483
- return;
484
- }
485
- const over = (event) => {
486
- if (!dragRef.current.source) {
487
- dragRef.current.source = event.dataTransfer?.items ? Array.from(event.dataTransfer.items).some(
488
- (item) => item.kind === "file"
489
- ) ? "file" : Array.from(event.dataTransfer.items).some(
490
- (item) => item.type === "opal-chat-dnd-data" || item.type === "opal-host-dnd-data"
491
- ) ? event.target instanceof Node ? event.target : null : null : "file";
492
- }
493
- setIsDragging(
494
- dragRef.current.source !== null && (dragRef.current.source === "file" || !rootRef.current?.contains(dragRef.current.source))
495
- );
496
- window.clearTimeout(dragRef.current.timer);
497
- dragRef.current.timer = window.setTimeout(() => {
498
- dragRef.current.source = null;
499
- setIsDragging(false);
500
- }, 100);
501
- };
502
- document.body.addEventListener("dragover", over);
503
- return () => {
504
- document.body.removeEventListener("dragover", over);
505
- };
506
- }, [disabled, rootRef]);
507
- return isDragging;
494
+ const { disabled, rootRef } = useFileUploadContext("@optiaxiom/react/FileUploadDropzone");
495
+ const [isDragging, setIsDragging] = (0, react.useState)(false);
496
+ const dragRef = (0, react.useRef)({
497
+ source: null,
498
+ timer: 0
499
+ });
500
+ (0, react.useEffect)(() => {
501
+ if (disabled) return;
502
+ const over = (event) => {
503
+ if (!dragRef.current.source) dragRef.current.source = event.dataTransfer?.items ? Array.from(event.dataTransfer.items).some((item) => item.kind === "file") ? "file" : Array.from(event.dataTransfer.items).some((item) => item.type === "opal-chat-dnd-data" || item.type === "opal-host-dnd-data") ? event.target instanceof Node ? event.target : null : null : "file";
504
+ setIsDragging(dragRef.current.source !== null && (dragRef.current.source === "file" || !rootRef.current?.contains(dragRef.current.source)));
505
+ window.clearTimeout(dragRef.current.timer);
506
+ dragRef.current.timer = window.setTimeout(() => {
507
+ dragRef.current.source = null;
508
+ setIsDragging(false);
509
+ }, 100);
510
+ };
511
+ document.body.addEventListener("dragover", over);
512
+ return () => {
513
+ document.body.removeEventListener("dragover", over);
514
+ };
515
+ }, [disabled, rootRef]);
516
+ return isDragging;
508
517
  };
509
-
518
+ //#endregion
519
+ //#region src/file-upload/useFileUploadDragging.ts
510
520
  const useFileUploadDragging = ({ onDragEnter, onDragLeave, onDrop, ...props } = {}, onDraggingChange) => {
511
- const { disabled } = useFileUploadContext(
512
- "@optiaxiom/react/FileUploadDropzone"
513
- );
514
- const targetsRef = React.useRef([]);
515
- return {
516
- ...props,
517
- onDragEnter: (event) => {
518
- onDragEnter?.(event);
519
- if (disabled) {
520
- return;
521
- }
522
- targetsRef.current = [...targetsRef.current, event.target];
523
- onDraggingChange(true);
524
- },
525
- onDragLeave: (event) => {
526
- onDragLeave?.(event);
527
- if (disabled) {
528
- return;
529
- }
530
- targetsRef.current = targetsRef.current.filter(
531
- (element) => element !== event.target
532
- );
533
- if (targetsRef.current.length === 0) {
534
- onDraggingChange(false);
535
- }
536
- },
537
- onDrop: (event) => {
538
- onDrop?.(event);
539
- if (disabled) {
540
- return;
541
- }
542
- targetsRef.current = [];
543
- onDraggingChange(false);
544
- }
545
- };
521
+ const { disabled } = useFileUploadContext("@optiaxiom/react/FileUploadDropzone");
522
+ const targetsRef = (0, react.useRef)([]);
523
+ return {
524
+ ...props,
525
+ onDragEnter: (event) => {
526
+ onDragEnter?.(event);
527
+ if (disabled) return;
528
+ targetsRef.current = [...targetsRef.current, event.target];
529
+ onDraggingChange(true);
530
+ },
531
+ onDragLeave: (event) => {
532
+ onDragLeave?.(event);
533
+ if (disabled) return;
534
+ targetsRef.current = targetsRef.current.filter((element) => element !== event.target);
535
+ if (targetsRef.current.length === 0) onDraggingChange(false);
536
+ },
537
+ onDrop: (event) => {
538
+ onDrop?.(event);
539
+ if (disabled) return;
540
+ targetsRef.current = [];
541
+ onDraggingChange(false);
542
+ }
543
+ };
546
544
  };
547
-
548
- const useFileUploadDrop = ({
549
- onDragOver,
550
- onDrop,
551
- ...props
552
- } = {}) => {
553
- const { accept, disabled, onFilesDrop } = useFileUploadContext(
554
- "@optiaxiom/react/useFileUploadDrop"
555
- );
556
- const auth = Flex.useAuthContext();
557
- return {
558
- ...props,
559
- onDragOver: (event) => {
560
- onDragOver?.(event);
561
- if (disabled) {
562
- return;
563
- }
564
- event.preventDefault();
565
- },
566
- onDrop: async (event) => {
567
- onDrop?.(event);
568
- if (disabled) {
569
- return;
570
- }
571
- event.preventDefault();
572
- onFilesDrop?.(
573
- event.dataTransfer.items ? (await Promise.all(
574
- Array.from(event.dataTransfer.items).map(async (item) => {
575
- if (item.kind === "file") {
576
- const file = item.getAsFile();
577
- const valid = file && isValidFile(file, accept);
578
- if (!valid) {
579
- globals.toaster.create(invalidFileTypeMessage(file), {
580
- intent: "danger"
581
- });
582
- }
583
- return valid ? file : null;
584
- } else if (item.type === "opal-chat-dnd-data" || item.type === "opal-host-dnd-data") {
585
- if (!auth) {
586
- throw new Error(
587
- "Could not find authentication credentials. Did you forget to wrap your component with `<AuthProvider>` from `@optiaxiom/react`?"
588
- );
589
- }
590
- try {
591
- const data = JSON.parse(
592
- event.dataTransfer.getData(item.type)
593
- );
594
- const resource = {
595
- name: data.name || "",
596
- type: data.mime_type || "",
597
- url: data.link
598
- };
599
- return isValidFile(resource, accept) ? getRemoteFile(resource, auth, true) : null;
600
- } catch {
601
- }
602
- }
603
- return null;
604
- })
605
- )).filter((file) => !!file) : Array.from(event.dataTransfer.files).filter((file) => {
606
- const valid = isValidFile(file, accept);
607
- if (!valid) {
608
- globals.toaster.create(invalidFileTypeMessage(file), {
609
- intent: "danger"
610
- });
611
- }
612
- return valid;
613
- })
614
- );
615
- }
616
- };
545
+ //#endregion
546
+ //#region src/file-upload/useFileUploadDrop.ts
547
+ const useFileUploadDrop = ({ onDragOver, onDrop, ...props } = {}) => {
548
+ const { accept, disabled, onFilesDrop } = useFileUploadContext("@optiaxiom/react/useFileUploadDrop");
549
+ const auth = require_Flex.useAuthContext();
550
+ return {
551
+ ...props,
552
+ onDragOver: (event) => {
553
+ onDragOver?.(event);
554
+ if (disabled) return;
555
+ event.preventDefault();
556
+ },
557
+ onDrop: async (event) => {
558
+ onDrop?.(event);
559
+ if (disabled) return;
560
+ event.preventDefault();
561
+ onFilesDrop?.(event.dataTransfer.items ? (await Promise.all(Array.from(event.dataTransfer.items).map(async (item) => {
562
+ if (item.kind === "file") {
563
+ const file = item.getAsFile();
564
+ const valid = file && isValidFile(file, accept);
565
+ if (!valid) _optiaxiom_globals.toaster.create(invalidFileTypeMessage(file), { intent: "danger" });
566
+ return valid ? file : null;
567
+ } else if (item.type === "opal-chat-dnd-data" || item.type === "opal-host-dnd-data") {
568
+ if (!auth) throw new Error("Could not find authentication credentials. Did you forget to wrap your component with `<AuthProvider>` from `@optiaxiom/react`?");
569
+ try {
570
+ const data = JSON.parse(event.dataTransfer.getData(item.type));
571
+ const resource = {
572
+ name: data.name || "",
573
+ type: data.mime_type || "",
574
+ url: data.link
575
+ };
576
+ return isValidFile(resource, accept) ? getRemoteFile(resource, auth, true) : null;
577
+ } catch {}
578
+ }
579
+ return null;
580
+ }))).filter((file) => !!file) : Array.from(event.dataTransfer.files).filter((file) => {
581
+ const valid = isValidFile(file, accept);
582
+ if (!valid) _optiaxiom_globals.toaster.create(invalidFileTypeMessage(file), { intent: "danger" });
583
+ return valid;
584
+ }));
585
+ }
586
+ };
617
587
  };
618
588
  async function getRemoteFile(resource, auth, retry = false) {
619
- const url = new URL(resource.url);
620
- if (!url.searchParams.has("instance_id")) {
621
- url.searchParams.set("instance_id", auth.instance || "");
622
- }
623
- const response = await fetch(url.toString(), {
624
- headers: {
625
- Authorization: `Bearer ${auth.token}`,
626
- "X-Instance-Id": auth.instance,
627
- "X-Product-Sku": "Axiom"
628
- }
629
- });
630
- if (response.status === 401 && retry) {
631
- return getRemoteFile(resource, {
632
- ...auth,
633
- token: await auth.refresh()
634
- });
635
- } else if (!response.ok) {
636
- throw new Error("Could not download file from Opal.", {
637
- cause: new Error(
638
- `Got status ${response.status} attempting to download ${resource.url}`
639
- )
640
- });
641
- } else {
642
- return new File([await response.arrayBuffer()], resource.name, {
643
- type: response.headers.get("Content-Type") || "application/octet-stream"
644
- });
645
- }
589
+ const url = new URL(resource.url);
590
+ if (!url.searchParams.has("instance_id")) url.searchParams.set("instance_id", auth.instance || "");
591
+ const response = await fetch(url.toString(), { headers: {
592
+ Authorization: `Bearer ${auth.token}`,
593
+ "X-Instance-Id": auth.instance,
594
+ "X-Product-Sku": "Axiom"
595
+ } });
596
+ if (response.status === 401 && retry) return getRemoteFile(resource, {
597
+ ...auth,
598
+ token: await auth.refresh()
599
+ });
600
+ else if (!response.ok) throw new Error("Could not download file from Opal.", { cause: /* @__PURE__ */ new Error(`Got status ${response.status} attempting to download ${resource.url}`) });
601
+ else return new File([await response.arrayBuffer()], resource.name, { type: response.headers.get("Content-Type") || "application/octet-stream" });
646
602
  }
647
603
  function invalidFileTypeMessage(file) {
648
- const ext = file?.name.includes(".") ? `.${file.name.split(".").pop()}` : void 0;
649
- const label = ext || file?.type || "Unknown";
650
- return `${label} is not an accepted file type`;
604
+ return `${(file?.name.includes(".") ? `.${file.name.split(".").pop()}` : void 0) || file?.type || "Unknown"} is not an accepted file type`;
651
605
  }
606
+ /**
607
+ * Copied and modified from https://github.com/dropzone/dropzone
608
+ */
652
609
  function isValidFile(file, accept) {
653
- if (!file) {
654
- return false;
655
- }
656
- if (!accept) {
657
- return true;
658
- }
659
- const acceptedFiles = accept.split(",");
660
- if (acceptedFiles.length === 0) {
661
- return true;
662
- }
663
- const fileName = "name" in file ? file.name : "";
664
- const mimeType = (file.type || "").toLowerCase();
665
- const baseMimeType = mimeType.replace(/\/.*$/, "");
666
- return acceptedFiles.some((type) => {
667
- const validType = type.trim().toLowerCase();
668
- if (validType.charAt(0) === ".") {
669
- return fileName.toLowerCase().endsWith(validType);
670
- } else if (validType.endsWith("/*")) {
671
- return baseMimeType === validType.replace(/\/.*$/, "");
672
- }
673
- return mimeType === validType;
674
- });
610
+ if (!file) return false;
611
+ if (!accept) return true;
612
+ const acceptedFiles = accept.split(",");
613
+ if (acceptedFiles.length === 0) return true;
614
+ const fileName = "name" in file ? file.name : "";
615
+ const mimeType = (file.type || "").toLowerCase();
616
+ const baseMimeType = mimeType.replace(/\/.*$/, "");
617
+ return acceptedFiles.some((type) => {
618
+ const validType = type.trim().toLowerCase();
619
+ if (validType.charAt(0) === ".") return fileName.toLowerCase().endsWith(validType);
620
+ else if (validType.endsWith("/*")) return baseMimeType === validType.replace(/\/.*$/, "");
621
+ return mimeType === validType;
622
+ });
675
623
  }
676
-
624
+ //#endregion
625
+ //#region src/file-upload/useStickyPosition.ts
677
626
  const useStickyPosition = (ref, visible) => {
678
- const { rootRef } = useFileUploadContext(
679
- "@optiaxiom/react/useStickyPosition"
680
- );
681
- React.useEffect(() => {
682
- if (!visible || !rootRef.current) {
683
- return;
684
- }
685
- const observer = new IntersectionObserver((entries) => {
686
- if (!rootRef.current || !ref.current) {
687
- return;
688
- }
689
- const entry = entries[0];
690
- if (!entry.isIntersecting) {
691
- return;
692
- }
693
- const { height, top } = entries[0].intersectionRect;
694
- const rootRect = rootRef.current.getBoundingClientRect();
695
- ref.current.style.maxHeight = `${Math.max(108, height)}px`;
696
- ref.current.style.top = `${top - rootRect.top}px`;
697
- });
698
- observer.observe(rootRef.current);
699
- let timer = 0;
700
- const listener = () => {
701
- window.clearTimeout(timer);
702
- timer = window.setTimeout(() => {
703
- if (rootRef.current) {
704
- observer.unobserve(rootRef.current);
705
- observer.observe(rootRef.current);
706
- }
707
- }, 300);
708
- };
709
- window.addEventListener("scroll", listener, true);
710
- return () => {
711
- window.removeEventListener("scroll", listener, true);
712
- observer.disconnect();
713
- };
714
- }, [visible, rootRef, ref]);
627
+ const { rootRef } = useFileUploadContext("@optiaxiom/react/useStickyPosition");
628
+ (0, react.useEffect)(() => {
629
+ if (!visible || !rootRef.current) return;
630
+ const observer = new IntersectionObserver((entries) => {
631
+ if (!rootRef.current || !ref.current) return;
632
+ if (!entries[0].isIntersecting) return;
633
+ const { height, top } = entries[0].intersectionRect;
634
+ const rootRect = rootRef.current.getBoundingClientRect();
635
+ ref.current.style.maxHeight = `${Math.max(108, height)}px`;
636
+ ref.current.style.top = `${top - rootRect.top}px`;
637
+ });
638
+ observer.observe(rootRef.current);
639
+ let timer = 0;
640
+ const listener = () => {
641
+ window.clearTimeout(timer);
642
+ timer = window.setTimeout(() => {
643
+ if (rootRef.current) {
644
+ observer.unobserve(rootRef.current);
645
+ observer.observe(rootRef.current);
646
+ }
647
+ }, 300);
648
+ };
649
+ window.addEventListener("scroll", listener, true);
650
+ return () => {
651
+ window.removeEventListener("scroll", listener, true);
652
+ observer.disconnect();
653
+ };
654
+ }, [
655
+ visible,
656
+ rootRef,
657
+ ref
658
+ ]);
715
659
  };
716
-
717
- const FileUploadDropzone = React.forwardRef(
718
- ({
719
- children,
720
- className,
721
- description,
722
- label: label$1 = "Drag and drop files here",
723
- overlay = false,
724
- ...props
725
- }, outerRef) => {
726
- const { accept, disabled, inputRef, onFilesDrop } = useFileUploadContext(
727
- "@optiaxiom/react/FileUploadDropzone"
728
- );
729
- const [isDragging, setIsDragging] = React.useState(false);
730
- const isDraggingOverBody = useDraggingOverBody();
731
- const innerRef = React.useRef(null);
732
- useStickyPosition(innerRef, overlay && isDraggingOverBody);
733
- const size = useContainerSize(innerRef) ?? 0;
734
- return /* @__PURE__ */ jsxRuntime.jsxs(
735
- Flex.Group,
736
- {
737
- fontSize: size > 448 ? "lg" : "md",
738
- ref: reactComposeRefs.useComposedRefs(innerRef, outerRef),
739
- ...dropzone(
740
- {
741
- drag: isDragging,
742
- hidden: overlay && !isDraggingOverBody,
743
- overlay
744
- },
745
- className
746
- ),
747
- ...useFileUploadDrop(useFileUploadDragging(props, setIsDragging)),
748
- children: [
749
- /* @__PURE__ */ jsxRuntime.jsx(Flex.VisuallyHidden, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
750
- "input",
751
- {
752
- accept,
753
- "aria-description": description,
754
- "aria-label": label$1,
755
- disabled,
756
- multiple: true,
757
- onChange: (event) => {
758
- onFilesDrop?.([...event.target.files || []]);
759
- event.target.value = "";
760
- },
761
- ref: inputRef,
762
- type: "file"
763
- }
764
- ) }),
765
- /* @__PURE__ */ jsxRuntime.jsxs(Flex.Group, { ...label({ disabled }), children: [
766
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Icon, { asChild: true, color: "fg.secondary", h: size > 448 ? "lg" : "sm", children: /* @__PURE__ */ jsxRuntime.jsx(IconFileImport, {}) }),
767
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Text, { children: label$1 }),
768
- description && /* @__PURE__ */ jsxRuntime.jsx(Flex.Text, { color: "fg.tertiary", children: description })
769
- ] }),
770
- !overlay && (children ?? /* @__PURE__ */ jsxRuntime.jsx(FileUploadTrigger, {}))
771
- ]
772
- }
773
- );
774
- }
775
- );
660
+ //#endregion
661
+ //#region src/file-upload/FileUploadDropzone.tsx
662
+ /**
663
+ * @group FileUpload
664
+ */
665
+ const FileUploadDropzone = (0, react.forwardRef)(({ children, className, description, label: label$1 = "Drag and drop files here", overlay = false, ...props }, outerRef) => {
666
+ const { accept, disabled, inputRef, onFilesDrop } = useFileUploadContext("@optiaxiom/react/FileUploadDropzone");
667
+ const [isDragging, setIsDragging] = (0, react.useState)(false);
668
+ const isDraggingOverBody = useDraggingOverBody();
669
+ const innerRef = (0, react.useRef)(null);
670
+ useStickyPosition(innerRef, overlay && isDraggingOverBody);
671
+ const size = useContainerSize(innerRef) ?? 0;
672
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Group, {
673
+ fontSize: size > 448 ? "lg" : "md",
674
+ ref: (0, _radix_ui_react_compose_refs.useComposedRefs)(innerRef, outerRef),
675
+ ...dropzone({
676
+ drag: isDragging,
677
+ hidden: overlay && !isDraggingOverBody,
678
+ overlay
679
+ }, className),
680
+ ...useFileUploadDrop(useFileUploadDragging(props, setIsDragging)),
681
+ children: [
682
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.VisuallyHidden, {
683
+ asChild: true,
684
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
685
+ accept,
686
+ "aria-description": description,
687
+ "aria-label": label$1,
688
+ disabled,
689
+ multiple: true,
690
+ onChange: (event) => {
691
+ onFilesDrop?.([...event.target.files || []]);
692
+ event.target.value = "";
693
+ },
694
+ ref: inputRef,
695
+ type: "file"
696
+ })
697
+ }),
698
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Group, {
699
+ ...label({ disabled }),
700
+ children: [
701
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Icon, {
702
+ asChild: true,
703
+ color: "fg.secondary",
704
+ h: size > 448 ? "lg" : "sm",
705
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconFileImport, {})
706
+ }),
707
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Text, { children: label$1 }),
708
+ description && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Text, {
709
+ color: "fg.tertiary",
710
+ children: description
711
+ })
712
+ ]
713
+ }),
714
+ !overlay && (children ?? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FileUploadTrigger, {}))
715
+ ]
716
+ });
717
+ });
776
718
  FileUploadDropzone.displayName = "@optiaxiom/react/FileUploadDropzone";
777
-
778
- const IconFileSolid = Flex.withIcon(
779
- {
780
- name: "IconFileSolid",
781
- viewBox: "0 0 640 640"
782
- },
783
- // <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->
784
- /* @__PURE__ */ jsxRuntime.jsx(
785
- "path",
786
- {
787
- d: "M192 64C156.7 64 128 92.7 128 128L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 234.5C512 217.5 505.3 201.2 493.3 189.2L386.7 82.7C374.7 70.7 358.5 64 341.5 64L192 64zM453.5 240L360 240C346.7 240 336 229.3 336 216L336 122.5L453.5 240z",
788
- fill: "currentColor"
789
- }
790
- )
791
- );
792
-
793
- const IconTrashCan = Flex.withIcon(
794
- {
795
- name: "IconTrashCan",
796
- viewBox: "0 0 640 640"
797
- },
798
- // <!--!Font Awesome Free v7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2026 Fonticons, Inc.-->
799
- /* @__PURE__ */ jsxRuntime.jsx(
800
- "path",
801
- {
802
- d: "M262.2 48C248.9 48 236.9 56.3 232.2 68.8L216 112L120 112C106.7 112 96 122.7 96 136C96 149.3 106.7 160 120 160L520 160C533.3 160 544 149.3 544 136C544 122.7 533.3 112 520 112L424 112L407.8 68.8C403.1 56.3 391.2 48 377.8 48L262.2 48zM128 208L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 208L464 208L464 512C464 520.8 456.8 528 448 528L192 528C183.2 528 176 520.8 176 512L176 208L128 208zM288 280C288 266.7 277.3 256 264 256C250.7 256 240 266.7 240 280L240 456C240 469.3 250.7 480 264 480C277.3 480 288 469.3 288 456L288 280zM400 280C400 266.7 389.3 256 376 256C362.7 256 352 266.7 352 280L352 456C352 469.3 362.7 480 376 480C389.3 480 400 469.3 400 456L400 280z",
803
- fill: "currentColor"
804
- }
805
- )
806
- );
807
-
808
- var item$1 = Flex.recipeRuntime({base:[{alignItems:'center',flexDirection:'row',fontSize:'md',gap:'6',p:'6',rounded:'md',transition:'colors'},'uouw4t']});
809
- var name = Flex.recipeRuntime({base:[{rounded:'md',textAlign:'start'},'ihnn44']});
810
-
719
+ //#endregion
720
+ //#region src/icons/IconFileSolid.tsx
721
+ const IconFileSolid = require_Flex.withIcon({
722
+ name: "IconFileSolid",
723
+ viewBox: "0 0 640 640"
724
+ }, /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
725
+ d: "M192 64C156.7 64 128 92.7 128 128L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 234.5C512 217.5 505.3 201.2 493.3 189.2L386.7 82.7C374.7 70.7 358.5 64 341.5 64L192 64zM453.5 240L360 240C346.7 240 336 229.3 336 216L336 122.5L453.5 240z",
726
+ fill: "currentColor"
727
+ }));
728
+ //#endregion
729
+ //#region src/icons/IconTrashCan.tsx
730
+ const IconTrashCan = require_Flex.withIcon({
731
+ name: "IconTrashCan",
732
+ viewBox: "0 0 640 640"
733
+ }, /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
734
+ d: "M262.2 48C248.9 48 236.9 56.3 232.2 68.8L216 112L120 112C106.7 112 96 122.7 96 136C96 149.3 106.7 160 120 160L520 160C533.3 160 544 149.3 544 136C544 122.7 533.3 112 520 112L424 112L407.8 68.8C403.1 56.3 391.2 48 377.8 48L262.2 48zM128 208L128 512C128 547.3 156.7 576 192 576L448 576C483.3 576 512 547.3 512 512L512 208L464 208L464 512C464 520.8 456.8 528 448 528L192 528C183.2 528 176 520.8 176 512L176 208L128 208zM288 280C288 266.7 277.3 256 264 256C250.7 256 240 266.7 240 280L240 456C240 469.3 250.7 480 264 480C277.3 480 288 469.3 288 456L288 280zM400 280C400 266.7 389.3 256 376 256C362.7 256 352 266.7 352 280L352 456C352 469.3 362.7 480 376 480C389.3 480 400 469.3 400 456L400 280z",
735
+ fill: "currentColor"
736
+ }));
737
+ //#endregion
738
+ //#region src/file-upload/FileUploadListItem.css.ts
739
+ var item$1 = require_Flex.recipeRuntime({ base: [{
740
+ alignItems: "center",
741
+ flexDirection: "row",
742
+ fontSize: "md",
743
+ gap: "6",
744
+ p: "6",
745
+ rounded: "md",
746
+ transition: "colors"
747
+ }, "hpc4mz"] });
748
+ var name = require_Flex.recipeRuntime({ base: [{
749
+ rounded: "md",
750
+ textAlign: "start"
751
+ }, "_1qzj39w"] });
752
+ //#endregion
753
+ //#region src/file-upload/FileUploadListItem.tsx
811
754
  function downloadFile(file) {
812
- const url = URL.createObjectURL(file);
813
- const a = document.createElement("a");
814
- a.href = url;
815
- a.download = file.name;
816
- a.click();
817
- URL.revokeObjectURL(url);
755
+ const url = URL.createObjectURL(file);
756
+ const a = document.createElement("a");
757
+ a.href = url;
758
+ a.download = file.name;
759
+ a.click();
760
+ URL.revokeObjectURL(url);
818
761
  }
819
762
  function formatFileSize(bytes) {
820
- if (bytes < 1024)
821
- return `${bytes} B`;
822
- if (bytes < 1024 * 1024)
823
- return `${(bytes / 1024).toFixed(0)} KB`;
824
- return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
763
+ if (bytes < 1024) return `${bytes} B`;
764
+ if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(0)} KB`;
765
+ return `${(bytes / (1024 * 1024)).toFixed(1)} MB`;
825
766
  }
826
767
  const mimeTypeLabels = [
827
- [/^application\/pdf$/, "PDF"],
828
- [/^image\//, "Image"],
829
- [/^video\//, "Video"],
830
- [/^audio\//, "Audio"],
831
- [/csv/, "CSV"],
832
- [/spreadsheet|excel/, "Excel"],
833
- [/presentation|powerpoint/, "PowerPoint"],
834
- [/document|msword|wordprocessing/, "Word"],
835
- [/zip|compressed|archive/, "Archive"],
836
- [/^text\//, "Text"]
768
+ [/^application\/pdf$/, "PDF"],
769
+ [/^image\//, "Image"],
770
+ [/^video\//, "Video"],
771
+ [/^audio\//, "Audio"],
772
+ [/csv/, "CSV"],
773
+ [/spreadsheet|excel/, "Excel"],
774
+ [/presentation|powerpoint/, "PowerPoint"],
775
+ [/document|msword|wordprocessing/, "Word"],
776
+ [/zip|compressed|archive/, "Archive"],
777
+ [/^text\//, "Text"]
837
778
  ];
838
779
  function formatFileType(file) {
839
- if (file.type) {
840
- for (const [pattern, label] of mimeTypeLabels) {
841
- if (pattern.test(file.type)) {
842
- return label;
843
- }
844
- }
845
- }
846
- return "File";
780
+ if (file.type) {
781
+ for (const [pattern, label] of mimeTypeLabels) if (pattern.test(file.type)) return label;
782
+ }
783
+ return "File";
847
784
  }
848
- const FileUploadListItem = React.forwardRef(({ className, item, onRemove, ...props }, ref) => {
849
- const { file, status } = item;
850
- return /* @__PURE__ */ jsxRuntime.jsxs(Flex.Flex, { ref, ...item$1({}, className), ...props, children: [
851
- status === "uploading" ? /* @__PURE__ */ jsxRuntime.jsx(Flex.Spinner, { size: "sm" }) : status === "error" ? /* @__PURE__ */ jsxRuntime.jsx(Flex.Icon, { asChild: true, color: "fg.error", h: "auto", w: "24", children: /* @__PURE__ */ jsxRuntime.jsx(Flex.IconCircleExclamationSolid, {}) }) : file.type.startsWith("image/") ? /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { overflow: "hidden", rounded: "sm", size: "24", children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, h: "full", objectFit: "cover", w: "full", children: /* @__PURE__ */ jsxRuntime.jsx("img", { alt: file.name, src: URL.createObjectURL(file) }) }) }) : /* @__PURE__ */ jsxRuntime.jsx(Flex.Icon, { asChild: true, color: "fg.tertiary", h: "auto", w: "24", children: /* @__PURE__ */ jsxRuntime.jsx(IconFileSolid, {}) }),
852
- /* @__PURE__ */ jsxRuntime.jsxs(Flex.Flex, { flex: "1", gap: "2", overflow: "hidden", children: [
853
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Cover, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Text, { asChild: true, lineClamp: "2", ...name(), children: /* @__PURE__ */ jsxRuntime.jsx("button", { onClick: () => downloadFile(file), type: "button", children: file.name }) }) }),
854
- /* @__PURE__ */ jsxRuntime.jsxs(Flex.Group, { fontSize: "sm", gap: "4", children: [
855
- /* @__PURE__ */ jsxRuntime.jsxs(Flex.Text, { color: "fg.tertiary", children: [
856
- formatFileType(file),
857
- " \u2022 ",
858
- formatFileSize(file.size)
859
- ] }),
860
- status === "error" && /* @__PURE__ */ jsxRuntime.jsx(Flex.Text, { color: "fg.error", children: "Upload failed" })
861
- ] })
862
- ] }),
863
- onRemove && /* @__PURE__ */ jsxRuntime.jsx(
864
- Flex.Button,
865
- {
866
- appearance: "subtle",
867
- "aria-label": "Remove file",
868
- disabled: status === "uploading",
869
- icon: /* @__PURE__ */ jsxRuntime.jsx(IconTrashCan, {}),
870
- onClick: onRemove
871
- }
872
- )
873
- ] });
785
+ const FileUploadListItem = (0, react.forwardRef)(({ className, item, onRemove, ...props }, ref) => {
786
+ const { file, status } = item;
787
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Flex, {
788
+ ref,
789
+ ...item$1({}, className),
790
+ ...props,
791
+ children: [
792
+ status === "uploading" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Spinner, { size: "sm" }) : status === "error" ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Icon, {
793
+ asChild: true,
794
+ color: "fg.error",
795
+ h: "auto",
796
+ w: "24",
797
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.IconCircleExclamationSolid, {})
798
+ }) : file.type.startsWith("image/") ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
799
+ overflow: "hidden",
800
+ rounded: "sm",
801
+ size: "24",
802
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
803
+ asChild: true,
804
+ h: "full",
805
+ objectFit: "cover",
806
+ w: "full",
807
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("img", {
808
+ alt: file.name,
809
+ src: URL.createObjectURL(file)
810
+ })
811
+ })
812
+ }) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Icon, {
813
+ asChild: true,
814
+ color: "fg.tertiary",
815
+ h: "auto",
816
+ w: "24",
817
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconFileSolid, {})
818
+ }),
819
+ /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Flex, {
820
+ flex: "1",
821
+ gap: "2",
822
+ overflow: "hidden",
823
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Cover, {
824
+ asChild: true,
825
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Text, {
826
+ asChild: true,
827
+ lineClamp: "2",
828
+ ...name(),
829
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", {
830
+ onClick: () => downloadFile(file),
831
+ type: "button",
832
+ children: file.name
833
+ })
834
+ })
835
+ }), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Group, {
836
+ fontSize: "sm",
837
+ gap: "4",
838
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Text, {
839
+ color: "fg.tertiary",
840
+ children: [
841
+ formatFileType(file),
842
+ " • ",
843
+ formatFileSize(file.size)
844
+ ]
845
+ }), status === "error" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Text, {
846
+ color: "fg.error",
847
+ children: "Upload failed"
848
+ })]
849
+ })]
850
+ }),
851
+ onRemove && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Button, {
852
+ appearance: "subtle",
853
+ "aria-label": "Remove file",
854
+ disabled: status === "uploading",
855
+ icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconTrashCan, {}),
856
+ onClick: onRemove
857
+ })
858
+ ]
859
+ });
874
860
  });
875
861
  FileUploadListItem.displayName = "@optiaxiom/react/FileUploadListItem";
876
-
877
- const FileUploadList = React.forwardRef(
878
- ({ items, onRemove, ...props }, ref) => {
879
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Flex, { gap: "12", ref, ...props, children: items.map((item, idx) => /* @__PURE__ */ jsxRuntime.jsx(
880
- FileUploadListItem,
881
- {
882
- item,
883
- onRemove: onRemove ? () => onRemove(item) : void 0
884
- },
885
- idx
886
- )) });
887
- }
888
- );
862
+ //#endregion
863
+ //#region src/file-upload/FileUploadList.tsx
864
+ const FileUploadList = (0, react.forwardRef)(({ items, onRemove, ...props }, ref) => {
865
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Flex, {
866
+ gap: "12",
867
+ ref,
868
+ ...props,
869
+ children: items.map((item, idx) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FileUploadListItem, {
870
+ item,
871
+ onRemove: onRemove ? () => onRemove(item) : void 0
872
+ }, idx))
873
+ });
874
+ });
889
875
  FileUploadList.displayName = "@optiaxiom/react/FileUploadList";
890
-
891
- var mark$1 = Flex.recipeRuntime({base:'c4naht'});
892
-
876
+ //#endregion
877
+ //#region src/highlight/Highlight.css.ts
878
+ var mark$1 = require_Flex.recipeRuntime({ base: "_3ov0b1" });
879
+ //#endregion
880
+ //#region src/highlight/useHighlightedChunks.ts
893
881
  const useHighlightedChunks = (content, query) => {
894
- const terms = React.useMemo(
895
- () => (Array.isArray(query) ? query : query ? [query] : []).map((q) => typeof q === "string" ? q.trim() : q).filter(Boolean),
896
- [query]
897
- );
898
- if (terms.length === 0) {
899
- return [{ chunk: content, highlighted: false }];
900
- }
901
- const pattern = new RegExp(
902
- "(" + terms.map(
903
- (term) => term instanceof RegExp ? term.source : `(?![^<>]*>)(^|\\b)(?=[^/.])${escapeRegExp(term)}`
904
- ).join("|") + ")",
905
- "gi"
906
- );
907
- return content.split(pattern).map((chunk) => ({ chunk, highlighted: pattern.test(chunk) }));
882
+ const terms = (0, react.useMemo)(() => (Array.isArray(query) ? query : query ? [query] : []).map((q) => typeof q === "string" ? q.trim() : q).filter(Boolean), [query]);
883
+ if (terms.length === 0) return [{
884
+ chunk: content,
885
+ highlighted: false
886
+ }];
887
+ const pattern = new RegExp("(" + terms.map((term) => term instanceof RegExp ? term.source : `(?![^<>]*>)(^|\\b)(?=[^/.])${escapeRegExp(term)}`).join("|") + ")", "gi");
888
+ return content.split(pattern).map((chunk) => ({
889
+ chunk,
890
+ highlighted: pattern.test(chunk)
891
+ }));
908
892
  };
909
893
  function escapeRegExp(string) {
910
- return string.replace(/[/\-\\^$*+?.()|[\]{}]/g, "\\$&");
894
+ return string.replace(/[/\-\\^$*+?.()|[\]{}]/g, "\\$&");
911
895
  }
912
-
913
- const Highlight = React.forwardRef(
914
- ({ children = (chunk) => chunk, content, query, ...props }, ref) => {
915
- const chunks = useHighlightedChunks(content || "", query);
916
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ref, ...props, children: chunks.map(({ chunk, highlighted }, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: highlighted ? children(
917
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, ...mark$1(), children: /* @__PURE__ */ jsxRuntime.jsx("mark", { children: chunk }) })
918
- ) : chunk }, index)) });
919
- }
920
- );
896
+ //#endregion
897
+ //#region src/highlight/Highlight.tsx
898
+ /**
899
+ * Highlight query terms within text content.
900
+ *
901
+ * @category data-display
902
+ * @experimental
903
+ */
904
+ const Highlight = (0, react.forwardRef)(({ children = (chunk) => chunk, content, query, ...props }, ref) => {
905
+ const chunks = useHighlightedChunks(content || "", query);
906
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
907
+ ref,
908
+ ...props,
909
+ children: chunks.map(({ chunk, highlighted }, index) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react.Fragment, { children: highlighted ? children(/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
910
+ asChild: true,
911
+ ...mark$1(),
912
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("mark", { children: chunk })
913
+ })) : chunk }, index))
914
+ });
915
+ });
921
916
  Highlight.displayName = "@optiaxiom/react/Highlight";
922
-
923
- const [HoverCardContextProvider, useHoverCardContext] = reactContext.createContext("@optiaxiom/react/HoverCardContext");
924
-
925
- function HoverCard({
926
- children,
927
- defaultOpen = false,
928
- onOpenChange,
929
- open: openProp,
930
- openDelay = 500,
931
- ...props
932
- }) {
933
- const [open, setOpen] = reactUseControllableState.useControllableState({
934
- caller: "@optiaxiom/react/HoverCard",
935
- defaultProp: defaultOpen,
936
- onChange: onOpenChange,
937
- prop: openProp
938
- });
939
- const [presence, setPresence] = React.useState(false);
940
- return /* @__PURE__ */ jsxRuntime.jsx(
941
- RadixHoverCard__namespace.Root,
942
- {
943
- onOpenChange: setOpen,
944
- open: open || presence,
945
- openDelay,
946
- ...props,
947
- children: /* @__PURE__ */ jsxRuntime.jsx(
948
- HoverCardContextProvider,
949
- {
950
- open,
951
- presence,
952
- setPresence,
953
- children
954
- }
955
- )
956
- }
957
- );
917
+ //#endregion
918
+ //#region src/hover-card/HoverCardContext.ts
919
+ const [HoverCardContextProvider, useHoverCardContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/HoverCardContext");
920
+ //#endregion
921
+ //#region src/hover-card/HoverCard.tsx
922
+ /**
923
+ * Display helpful text or previews inside a dialog when hovering over a link or button.
924
+ *
925
+ * @category overlay
926
+ * @group HoverCard
927
+ * @since 1.7.6
928
+ * @experimental
929
+ */
930
+ function HoverCard({ children, defaultOpen = false, onOpenChange, open: openProp, openDelay = 500, ...props }) {
931
+ const [open, setOpen] = (0, _radix_ui_react_use_controllable_state.useControllableState)({
932
+ caller: "@optiaxiom/react/HoverCard",
933
+ defaultProp: defaultOpen,
934
+ onChange: onOpenChange,
935
+ prop: openProp
936
+ });
937
+ const [presence, setPresence] = (0, react.useState)(false);
938
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_hover_card.Root, {
939
+ onOpenChange: setOpen,
940
+ open: open || presence,
941
+ openDelay,
942
+ ...props,
943
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(HoverCardContextProvider, {
944
+ open,
945
+ presence,
946
+ setPresence,
947
+ children
948
+ })
949
+ });
958
950
  }
959
951
  HoverCard.displayName = "@optiaxiom/react/HoverCard";
960
-
961
- const HoverCardContent = React.forwardRef(
962
- ({ align = "start", asChild, children, sideOffset = 4, ...props }, outerRef) => {
963
- const innerRef = React.useRef(null);
964
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
965
- const { open, presence, setPresence } = useHoverCardContext(
966
- "@optiaxiom/react/HoverCardContent"
967
- );
968
- return /* @__PURE__ */ jsxRuntime.jsx(
969
- Flex.TransitionGroup,
970
- {
971
- onPresenceChange: setPresence,
972
- open,
973
- presence,
974
- children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Portal, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Transition, { duration: "sm", children: /* @__PURE__ */ jsxRuntime.jsx(
975
- Flex.Paper,
976
- {
977
- asChild: true,
978
- display: "flex",
979
- flexDirection: "column",
980
- fontSize: "md",
981
- gap: "2",
982
- maxW: "xs",
983
- p: "16",
984
- role: "dialog",
985
- ...props,
986
- children: /* @__PURE__ */ jsxRuntime.jsx(
987
- RadixHoverCard__namespace.Content,
988
- {
989
- align,
990
- asChild,
991
- forceMount: true,
992
- ref,
993
- sideOffset,
994
- children
995
- }
996
- )
997
- }
998
- ) }) })
999
- }
1000
- );
1001
- }
1002
- );
952
+ //#endregion
953
+ //#region src/hover-card/HoverCardContent.tsx
954
+ /**
955
+ * @group HoverCard
956
+ */
957
+ const HoverCardContent = (0, react.forwardRef)(({ align = "start", asChild, children, sideOffset = 4, ...props }, outerRef) => {
958
+ const ref = (0, _radix_ui_react_compose_refs.useComposedRefs)((0, react.useRef)(null), outerRef);
959
+ const { open, presence, setPresence } = useHoverCardContext("@optiaxiom/react/HoverCardContent");
960
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.TransitionGroup, {
961
+ onPresenceChange: setPresence,
962
+ open,
963
+ presence,
964
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Portal, {
965
+ asChild: true,
966
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Transition, {
967
+ duration: "sm",
968
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Paper, {
969
+ asChild: true,
970
+ display: "flex",
971
+ flexDirection: "column",
972
+ fontSize: "md",
973
+ gap: "2",
974
+ maxW: "xs",
975
+ p: "16",
976
+ role: "dialog",
977
+ ...props,
978
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_hover_card.Content, {
979
+ align,
980
+ asChild,
981
+ forceMount: true,
982
+ ref,
983
+ sideOffset,
984
+ children
985
+ })
986
+ })
987
+ })
988
+ })
989
+ });
990
+ });
1003
991
  HoverCardContent.displayName = "@optiaxiom/react/HoverCardContent";
1004
-
1005
- var trigger$1 = Flex.recipeRuntime({base:'_1r2grvl'});
1006
-
1007
- const HoverCardTrigger = React.forwardRef(({ children, className, ...props }, ref) => {
1008
- const { boxProps, restProps } = Flex.extractBoxProps(props);
1009
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, ...trigger$1({}, className), ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx(RadixHoverCard__namespace.Trigger, { ref, ...restProps, children }) });
992
+ //#endregion
993
+ //#region src/hover-card/HoverCardTrigger.css.ts
994
+ var trigger$1 = require_Flex.recipeRuntime({ base: "_1xg8o61" });
995
+ //#endregion
996
+ //#region src/hover-card/HoverCardTrigger.tsx
997
+ /**
998
+ * @group HoverCard
999
+ */
1000
+ const HoverCardTrigger = (0, react.forwardRef)(({ children, className, ...props }, ref) => {
1001
+ const { boxProps, restProps } = require_Flex.extractBoxProps(props);
1002
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1003
+ asChild: true,
1004
+ ...trigger$1({}, className),
1005
+ ...boxProps,
1006
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_radix_ui_react_hover_card.Trigger, {
1007
+ ref,
1008
+ ...restProps,
1009
+ children
1010
+ })
1011
+ });
1010
1012
  });
1011
1013
  HoverCardTrigger.displayName = "@optiaxiom/react/HoverCardTrigger";
1012
-
1013
- var editor = Flex.recipeRuntime({base:'_1furffk',variants:{empty:{false:{},true:'w0i4un'}}});
1014
- var input = Flex.recipeRuntime({base:'d1cg11'});
1015
-
1016
- const InlineInput = React.forwardRef(
1017
- ({
1018
- className,
1019
- defaultValue = "",
1020
- disabled,
1021
- label,
1022
- multiline,
1023
- onValueChange,
1024
- placeholder,
1025
- value: valueProp,
1026
- ...props
1027
- }, outerRef) => {
1028
- const [value, setValue] = reactUseControllableState.useControllableState({
1029
- caller: "@optiaxiom/react/InlineInput",
1030
- defaultProp: defaultValue,
1031
- onChange: onValueChange,
1032
- prop: valueProp
1033
- });
1034
- const editorRef = React.useRef(null);
1035
- const ref = reactComposeRefs.useComposedRefs(editorRef, outerRef);
1036
- React.useEffect(() => {
1037
- if (!editorRef.current) {
1038
- return;
1039
- }
1040
- const clippedValue = multiline || !value?.includes("\n") ? value : value?.slice(0, value.indexOf("\n"));
1041
- if (getText(editorRef.current) !== clippedValue) {
1042
- if (document.activeElement === editorRef.current) {
1043
- const selection = window.getSelection();
1044
- if (!selection) {
1045
- return;
1046
- }
1047
- selection.getRangeAt(0).selectNodeContents(editorRef.current);
1048
- document.execCommand("insertHTML", false, clippedValue);
1049
- } else {
1050
- editorRef.current.innerText = clippedValue ?? "null";
1051
- }
1052
- }
1053
- }, [multiline, value]);
1054
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ...input({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
1055
- Flex.Box,
1056
- {
1057
- "aria-multiline": multiline,
1058
- "aria-readonly": disabled,
1059
- contentEditable: !disabled && "plaintext-only",
1060
- "data-placeholder": placeholder ?? label,
1061
- onInput: (event) => {
1062
- setValue(getText(event.currentTarget));
1063
- },
1064
- onKeyDown: (event) => {
1065
- if (!multiline && event.key === "Enter") {
1066
- event.preventDefault();
1067
- }
1068
- },
1069
- onPaste: (event) => {
1070
- const value2 = event.clipboardData.getData("text");
1071
- if (!multiline && value2.includes("\n")) {
1072
- event.preventDefault();
1073
- const clippedValue = value2.slice(0, value2.indexOf("\n"));
1074
- document.execCommand("insertHTML", false, clippedValue);
1075
- setValue(getText(event.currentTarget));
1076
- }
1077
- },
1078
- ref,
1079
- role: "textbox",
1080
- spellCheck: "true",
1081
- ...label && { "aria-label": label },
1082
- ...editor({ empty: !value?.length })
1083
- }
1084
- ) });
1085
- }
1086
- );
1014
+ //#endregion
1015
+ //#region src/inline-input/InlineInput.css.ts
1016
+ var editor = require_Flex.recipeRuntime({
1017
+ base: "_171fv0a",
1018
+ variants: { empty: {
1019
+ false: {},
1020
+ true: "_19j0seq"
1021
+ } }
1022
+ });
1023
+ var input = require_Flex.recipeRuntime({ base: "_1vnfkj1" });
1024
+ //#endregion
1025
+ //#region src/inline-input/InlineInput.tsx
1026
+ /**
1027
+ * Seamless textbox for capturing user input with completely customizable visual styles.
1028
+ *
1029
+ * @category form
1030
+ * @since 0.6.0
1031
+ * @experimental
1032
+ */
1033
+ const InlineInput = (0, react.forwardRef)(({ className, defaultValue = "", disabled, label, multiline, onValueChange, placeholder, value: valueProp, ...props }, outerRef) => {
1034
+ const [value, setValue] = (0, _radix_ui_react_use_controllable_state.useControllableState)({
1035
+ caller: "@optiaxiom/react/InlineInput",
1036
+ defaultProp: defaultValue,
1037
+ onChange: onValueChange,
1038
+ prop: valueProp
1039
+ });
1040
+ const editorRef = (0, react.useRef)(null);
1041
+ const ref = (0, _radix_ui_react_compose_refs.useComposedRefs)(editorRef, outerRef);
1042
+ (0, react.useEffect)(() => {
1043
+ if (!editorRef.current) return;
1044
+ const clippedValue = multiline || !value?.includes("\n") ? value : value?.slice(0, value.indexOf("\n"));
1045
+ if (getText(editorRef.current) !== clippedValue) if (document.activeElement === editorRef.current) {
1046
+ const selection = window.getSelection();
1047
+ if (!selection) return;
1048
+ selection.getRangeAt(0).selectNodeContents(editorRef.current);
1049
+ document.execCommand("insertHTML", false, clippedValue);
1050
+ } else editorRef.current.innerText = clippedValue ?? "null";
1051
+ }, [multiline, value]);
1052
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1053
+ ...input({}, className),
1054
+ ...props,
1055
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1056
+ "aria-multiline": multiline,
1057
+ "aria-readonly": disabled,
1058
+ contentEditable: !disabled && "plaintext-only",
1059
+ "data-placeholder": placeholder ?? label,
1060
+ onInput: (event) => {
1061
+ setValue(getText(event.currentTarget));
1062
+ },
1063
+ onKeyDown: (event) => {
1064
+ if (!multiline && event.key === "Enter") event.preventDefault();
1065
+ },
1066
+ onPaste: (event) => {
1067
+ const value = event.clipboardData.getData("text");
1068
+ if (!multiline && value.includes("\n")) {
1069
+ event.preventDefault();
1070
+ const clippedValue = value.slice(0, value.indexOf("\n"));
1071
+ document.execCommand("insertHTML", false, clippedValue);
1072
+ setValue(getText(event.currentTarget));
1073
+ }
1074
+ },
1075
+ ref,
1076
+ role: "textbox",
1077
+ spellCheck: "true",
1078
+ ...label && { "aria-label": label },
1079
+ ...editor({ empty: !value?.length })
1080
+ })
1081
+ });
1082
+ });
1087
1083
  InlineInput.displayName = "@optiaxiom/react/InlineInput";
1088
1084
  function getText(element) {
1089
- const text = element.innerText;
1090
- if (text.endsWith("\n")) {
1091
- return text.slice(0, -1);
1092
- }
1093
- return text;
1085
+ const text = element.innerText;
1086
+ if (text.endsWith("\n")) return text.slice(0, -1);
1087
+ return text;
1094
1088
  }
1095
-
1089
+ //#endregion
1090
+ //#region src/resizable/Resizable.tsx
1096
1091
  const Resizable = ({ ...props }) => {
1097
- return /* @__PURE__ */ jsxRuntime.jsx(ResizablePrimitive__namespace.PanelGroup, { direction: "horizontal", ...props });
1092
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_resizable_panels.PanelGroup, {
1093
+ direction: "horizontal",
1094
+ ...props
1095
+ });
1098
1096
  };
1099
1097
  Resizable.displayName = "@optiaxiom/react/Resizable";
1100
-
1101
- var handle$1 = Flex.recipeRuntime({base:[{border:'1',h:'56',rounded:'sm',w:'12'},'_2f0bei']});
1102
- var root$2 = Flex.recipeRuntime({base:[{flexDirection:'column',gap:'16',justifyContent:'center',rounded:'sm',z:'10'},'ad5gv3']});
1103
-
1098
+ //#endregion
1099
+ //#region src/resizable/ResizableHandle.css.ts
1100
+ var handle$1 = require_Flex.recipeRuntime({ base: [{
1101
+ border: "1",
1102
+ h: "56",
1103
+ rounded: "sm",
1104
+ w: "12"
1105
+ }, "uur1y5"] });
1106
+ var root$2 = require_Flex.recipeRuntime({ base: [{
1107
+ flexDirection: "column",
1108
+ gap: "16",
1109
+ justifyContent: "center",
1110
+ rounded: "sm",
1111
+ z: "10"
1112
+ }, "_1lckjgw"] });
1113
+ //#endregion
1114
+ //#region src/resizable/ResizableHandle.tsx
1104
1115
  const ResizableHandle = (props) => {
1105
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { asChild: true, ...root$2(), children: /* @__PURE__ */ jsxRuntime.jsx(ResizablePrimitive__namespace.PanelResizeHandle, { ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ...handle$1() }) }) });
1116
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
1117
+ asChild: true,
1118
+ ...root$2(),
1119
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_resizable_panels.PanelResizeHandle, {
1120
+ ...props,
1121
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, { ...handle$1() })
1122
+ })
1123
+ });
1106
1124
  };
1107
1125
  ResizableHandle.displayName = "@optiaxiom/react/ResizableHandle";
1108
-
1126
+ //#endregion
1127
+ //#region src/resizable/ResizablePanel.tsx
1109
1128
  const ResizablePanel = ({ ...props }) => {
1110
- return /* @__PURE__ */ jsxRuntime.jsx(ResizablePrimitive__namespace.Panel, { ...props });
1129
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_resizable_panels.Panel, { ...props });
1111
1130
  };
1112
1131
  ResizablePanel.displayName = "@optiaxiom/react/ResizablePanel";
1113
-
1114
- var layout = Flex.recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'_1vwkw1n'],variants:{size:{full:'_1o05r7l',screen:'_1s7gdbg'}}});
1115
-
1116
- const Layout = React.forwardRef(
1117
- ({
1118
- children,
1119
- className,
1120
- detailsPanel,
1121
- header,
1122
- resizable,
1123
- sidebar,
1124
- size = "screen",
1125
- ...props
1126
- }, ref) => {
1127
- return /* @__PURE__ */ jsxRuntime.jsxs(Flex.Box, { ref, ...layout({ size }, className), ...props, children: [
1128
- header,
1129
- /* @__PURE__ */ jsxRuntime.jsxs(Flex.Box, { display: "flex", flex: "1", overflow: "auto", children: [
1130
- sidebar,
1131
- resizable ? /* @__PURE__ */ jsxRuntime.jsxs(Resizable, { children: [
1132
- /* @__PURE__ */ jsxRuntime.jsx(ResizablePanel, { minSize: 33, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, h: "full", children }) }),
1133
- detailsPanel && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1134
- /* @__PURE__ */ jsxRuntime.jsx(ResizableHandle, {}),
1135
- /* @__PURE__ */ jsxRuntime.jsx(ResizablePanel, { defaultSize: 33, minSize: 33, children: detailsPanel })
1136
- ] })
1137
- ] }) : /* @__PURE__ */ jsxRuntime.jsxs(Flex.Box, { display: "flex", flex: "1", children: [
1138
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, w: detailsPanel ? "2/3" : "full", children }),
1139
- detailsPanel && /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { w: "1/3", children: detailsPanel })
1140
- ] })
1141
- ] })
1142
- ] });
1143
- }
1144
- );
1132
+ //#endregion
1133
+ //#region src/layout/Layout.css.ts
1134
+ var layout = require_Flex.recipeRuntime({
1135
+ base: [{
1136
+ bg: "bg.page",
1137
+ display: "flex",
1138
+ flexDirection: "column",
1139
+ fontSize: "md"
1140
+ }, "_1hmw4rv"],
1141
+ variants: { size: {
1142
+ full: "sjonco",
1143
+ screen: "_1uxlm6o"
1144
+ } }
1145
+ });
1146
+ //#endregion
1147
+ //#region src/layout/Layout.tsx
1148
+ /**
1149
+ * Implement a basic page layout with multiple content areas.
1150
+ *
1151
+ * @category layout
1152
+ * @since 1.6.0
1153
+ * @experimental
1154
+ */
1155
+ const Layout = (0, react.forwardRef)(({ children, className, detailsPanel, header, resizable, sidebar, size = "screen", ...props }, ref) => {
1156
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
1157
+ ref,
1158
+ ...layout({ size }, className),
1159
+ ...props,
1160
+ children: [header, /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
1161
+ display: "flex",
1162
+ flex: "1",
1163
+ overflow: "auto",
1164
+ children: [sidebar, resizable ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Resizable, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ResizablePanel, {
1165
+ minSize: 33,
1166
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1167
+ asChild: true,
1168
+ h: "full",
1169
+ children
1170
+ })
1171
+ }), detailsPanel && /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ResizableHandle, {}), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ResizablePanel, {
1172
+ defaultSize: 33,
1173
+ minSize: 33,
1174
+ children: detailsPanel
1175
+ })] })] }) : /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
1176
+ display: "flex",
1177
+ flex: "1",
1178
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1179
+ asChild: true,
1180
+ w: detailsPanel ? "2/3" : "full",
1181
+ children
1182
+ }), detailsPanel && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1183
+ w: "1/3",
1184
+ children: detailsPanel
1185
+ })]
1186
+ })]
1187
+ })]
1188
+ });
1189
+ });
1145
1190
  Layout.displayName = "@optiaxiom/react/Layout";
1146
-
1147
- var content = Flex.recipeRuntime({base:[{flexDirection:'column',gap:'16',overflow:'auto',px:'32',py:'24'},'_1qok83u']});
1148
-
1149
- const LayoutContent = React.forwardRef(
1150
- ({ children, className, ...props }, ref) => {
1151
- return /* @__PURE__ */ jsxRuntime.jsx(
1152
- Flex.Group,
1153
- {
1154
- ref,
1155
- tabIndex: 0,
1156
- ...content({}, className),
1157
- ...props,
1158
- children
1159
- }
1160
- );
1161
- }
1162
- );
1191
+ //#endregion
1192
+ //#region src/layout/LayoutContent.css.ts
1193
+ var content = require_Flex.recipeRuntime({ base: [{
1194
+ flexDirection: "column",
1195
+ gap: "16",
1196
+ overflow: "auto",
1197
+ px: "32",
1198
+ py: "24"
1199
+ }, "_3qf3c"] });
1200
+ //#endregion
1201
+ //#region src/layout/LayoutContent.tsx
1202
+ /**
1203
+ * @group Layout
1204
+ */
1205
+ const LayoutContent = (0, react.forwardRef)(({ children, className, ...props }, ref) => {
1206
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
1207
+ ref,
1208
+ tabIndex: 0,
1209
+ ...content({}, className),
1210
+ ...props,
1211
+ children
1212
+ });
1213
+ });
1163
1214
  LayoutContent.displayName = "@optiaxiom/react/LayoutContent";
1164
-
1165
- var pill = Flex.recipeRuntime({base:[{alignItems:'center',color:'fg.default',display:'flex',fontSize:'sm',gap:'4',px:'6',rounded:'md',transition:'colors',whiteSpace:'nowrap'},'qkt1ep'],variants:{interactive:{false:{},true:'gdtnv6'},size:{xs:{h:'xs'},sm:{h:'sm'}}}});
1166
-
1167
- const Slot$2 = reactSlot.createSlot("@optiaxiom/react/Pill");
1168
- const Pill = React.forwardRef(
1169
- ({
1170
- asChild,
1171
- children,
1172
- className,
1173
- disabled,
1174
- onClick,
1175
- onDismiss,
1176
- readOnly,
1177
- size = "sm",
1178
- ...props
1179
- }, ref) => {
1180
- const Comp = asChild ? Slot$2 : readOnly ? "span" : "button";
1181
- const { boxProps, restProps } = Flex.extractBoxProps(props);
1182
- return /* @__PURE__ */ jsxRuntime.jsx(
1183
- Flex.Box,
1184
- {
1185
- asChild: true,
1186
- "data-disabled": disabled ? "" : void 0,
1187
- ...pill(
1188
- {
1189
- interactive: Boolean(!readOnly),
1190
- size
1191
- },
1192
- className
1193
- ),
1194
- ...boxProps,
1195
- children: /* @__PURE__ */ jsxRuntime.jsxs(
1196
- Comp,
1197
- {
1198
- disabled,
1199
- onClick: (event) => {
1200
- if (readOnly) {
1201
- return;
1202
- }
1203
- onClick?.(event);
1204
- if (event.defaultPrevented) {
1205
- return;
1206
- }
1207
- onDismiss?.();
1208
- },
1209
- ref,
1210
- ...restProps,
1211
- children: [
1212
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Text, { truncate: true, children }),
1213
- onDismiss && !readOnly && /* @__PURE__ */ jsxRuntime.jsx(Flex.Icon, { asChild: true, h: "12", ml: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(Flex.IconX, {}) })
1214
- ]
1215
- }
1216
- )
1217
- }
1218
- );
1219
- }
1220
- );
1215
+ //#endregion
1216
+ //#region src/pill/Pill.css.ts
1217
+ var pill = require_Flex.recipeRuntime({
1218
+ base: [{
1219
+ alignItems: "center",
1220
+ color: "fg.default",
1221
+ display: "flex",
1222
+ fontSize: "sm",
1223
+ gap: "4",
1224
+ px: "6",
1225
+ rounded: "md",
1226
+ transition: "colors",
1227
+ whiteSpace: "nowrap"
1228
+ }, "rjny9t"],
1229
+ variants: {
1230
+ interactive: {
1231
+ false: {},
1232
+ true: "_1g5wdcl"
1233
+ },
1234
+ size: {
1235
+ xs: { h: "xs" },
1236
+ sm: { h: "sm" }
1237
+ }
1238
+ }
1239
+ });
1240
+ //#endregion
1241
+ //#region src/pill/Pill.tsx
1242
+ const Slot$2 = (0, _radix_ui_react_slot.createSlot)("@optiaxiom/react/Pill");
1243
+ /**
1244
+ * A pill is a visual representation of an attribute, usually representing tags or metrics.
1245
+ *
1246
+ * @category data-display
1247
+ * @since 0.12.4
1248
+ * @experimental
1249
+ */
1250
+ const Pill = (0, react.forwardRef)(({ asChild, children, className, disabled, onClick, onDismiss, readOnly, size = "sm", ...props }, ref) => {
1251
+ const Comp = asChild ? Slot$2 : readOnly ? "span" : "button";
1252
+ const { boxProps, restProps } = require_Flex.extractBoxProps(props);
1253
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1254
+ asChild: true,
1255
+ "data-disabled": disabled ? "" : void 0,
1256
+ ...pill({
1257
+ interactive: Boolean(!readOnly),
1258
+ size
1259
+ }, className),
1260
+ ...boxProps,
1261
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(Comp, {
1262
+ disabled,
1263
+ onClick: (event) => {
1264
+ if (readOnly) return;
1265
+ onClick?.(event);
1266
+ if (event.defaultPrevented) return;
1267
+ onDismiss?.();
1268
+ },
1269
+ ref,
1270
+ ...restProps,
1271
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Text, {
1272
+ truncate: true,
1273
+ children
1274
+ }), onDismiss && !readOnly && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Icon, {
1275
+ asChild: true,
1276
+ h: "12",
1277
+ ml: "auto",
1278
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.IconX, {})
1279
+ })]
1280
+ })
1281
+ });
1282
+ });
1221
1283
  Pill.displayName = "@optiaxiom/react/Pill";
1222
-
1223
- const PillGroup = React.forwardRef(
1224
- ({ children, ...props }, ref) => {
1225
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { flexWrap: "wrap", gap: "8", ref, ...props, children });
1226
- }
1227
- );
1284
+ //#endregion
1285
+ //#region src/pill/PillGroup.tsx
1286
+ /**
1287
+ * @group Pill
1288
+ */
1289
+ const PillGroup = (0, react.forwardRef)(({ children, ...props }, ref) => {
1290
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
1291
+ flexWrap: "wrap",
1292
+ gap: "8",
1293
+ ref,
1294
+ ...props,
1295
+ children
1296
+ });
1297
+ });
1228
1298
  PillGroup.displayName = "@optiaxiom/react/PillGroup";
1229
-
1230
- const [PillMenuProvider, usePillMenuContext] = reactContext.createContext("@optiaxiom/react/PillMenu");
1231
-
1299
+ //#endregion
1300
+ //#region src/pill-menu/PillMenuContext.ts
1301
+ const [PillMenuProvider, usePillMenuContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/PillMenu");
1302
+ //#endregion
1303
+ //#region src/pill-menu/PillMenu.tsx
1232
1304
  const EMPTY_LIST = [];
1233
- const PillMenu = React.forwardRef(
1234
- ({
1235
- children,
1236
- defaultOpen = false,
1237
- empty,
1238
- inputValue,
1239
- inputVisible,
1240
- loading,
1241
- onInputValueChange,
1242
- onOpenChange,
1243
- open: openProp,
1244
- options: optionsProp,
1245
- placeholder,
1246
- value: valueProp,
1247
- ...props
1248
- }, ref) => {
1249
- const [open, setOpen] = reactUseControllableState.useControllableState({
1250
- caller: "@optiaxiom/react/PillMenu",
1251
- defaultProp: defaultOpen,
1252
- onChange: onOpenChange,
1253
- prop: openProp
1254
- });
1255
- const options = optionsProp ?? valueProp ?? EMPTY_LIST;
1256
- const value = valueProp ?? (optionsProp ? optionsProp.filter((item) => Flex.resolveItemProperty(item.selected)) : EMPTY_LIST);
1257
- const [selectedKeys, setSelectedKeys] = React.useState(
1258
- () => collectSelectedKeys(value)
1259
- );
1260
- const optionIndexes = React.useMemo(
1261
- () => groupOptions(options, selectedKeys),
1262
- [options, selectedKeys]
1263
- );
1264
- return /* @__PURE__ */ jsxRuntime.jsx(PillMenuProvider, { value, children: /* @__PURE__ */ jsxRuntime.jsx(
1265
- Flex.Menu,
1266
- {
1267
- empty,
1268
- inputValue,
1269
- inputVisible,
1270
- loading,
1271
- onInputValueChange,
1272
- onOpenChange: (open2) => {
1273
- setOpen(open2);
1274
- if (open2) {
1275
- setSelectedKeys(collectSelectedKeys(value));
1276
- }
1277
- },
1278
- open,
1279
- options: React.useMemo(
1280
- () => optionIndexes.map(({ group, index }) => ({
1281
- ...(optionsProp ?? valueProp ?? EMPTY_LIST)[index],
1282
- ...group && {
1283
- group: {
1284
- hidden: true,
1285
- label: group,
1286
- priority: 1e3,
1287
- separator: true
1288
- }
1289
- }
1290
- })),
1291
- [optionIndexes, optionsProp, valueProp]
1292
- ),
1293
- placeholder,
1294
- children: /* @__PURE__ */ jsxRuntime.jsx(
1295
- Flex.Box,
1296
- {
1297
- alignItems: value.length ? void 0 : "start",
1298
- display: "flex",
1299
- flexDirection: "column",
1300
- ref,
1301
- ...props,
1302
- children
1303
- }
1304
- )
1305
- }
1306
- ) });
1307
- }
1308
- );
1305
+ /**
1306
+ * Dropdown menu for making selection with pills showing the selected items.
1307
+ *
1308
+ * @since 1.6.2
1309
+ * @experimental
1310
+ * @category data-display
1311
+ * @category overlay
1312
+
1313
+ */
1314
+ const PillMenu = (0, react.forwardRef)(({ children, defaultOpen = false, empty, inputValue, inputVisible = "always", loading, onInputValueChange, onOpenChange, open: openProp, options: optionsProp, placeholder, value: valueProp, ...props }, ref) => {
1315
+ const [open, setOpen] = (0, _radix_ui_react_use_controllable_state.useControllableState)({
1316
+ caller: "@optiaxiom/react/PillMenu",
1317
+ defaultProp: defaultOpen,
1318
+ onChange: onOpenChange,
1319
+ prop: openProp
1320
+ });
1321
+ const options = optionsProp ?? valueProp ?? EMPTY_LIST;
1322
+ const value = valueProp ?? (optionsProp ? optionsProp.filter((item) => require_Flex.resolveItemProperty(item.selected)) : EMPTY_LIST);
1323
+ const [selectedKeys, setSelectedKeys] = (0, react.useState)(() => collectSelectedKeys(value));
1324
+ const optionIndexes = (0, react.useMemo)(() => groupOptions(options, selectedKeys), [options, selectedKeys]);
1325
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PillMenuProvider, {
1326
+ value,
1327
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Menu, {
1328
+ empty,
1329
+ inputValue,
1330
+ inputVisible,
1331
+ loading,
1332
+ onInputValueChange,
1333
+ onOpenChange: (open) => {
1334
+ setOpen(open);
1335
+ if (open) setSelectedKeys(collectSelectedKeys(value));
1336
+ },
1337
+ open,
1338
+ options: (0, react.useMemo)(() => optionIndexes.map(({ group, index }) => ({
1339
+ ...(optionsProp ?? valueProp ?? EMPTY_LIST)[index],
1340
+ ...group && { group: {
1341
+ hidden: true,
1342
+ label: group,
1343
+ priority: 1e3,
1344
+ separator: true
1345
+ } }
1346
+ })), [
1347
+ optionIndexes,
1348
+ optionsProp,
1349
+ valueProp
1350
+ ]),
1351
+ placeholder,
1352
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1353
+ alignItems: value.length ? void 0 : "start",
1354
+ display: "flex",
1355
+ flexDirection: "column",
1356
+ ref,
1357
+ ...props,
1358
+ children
1359
+ })
1360
+ })
1361
+ });
1362
+ });
1309
1363
  PillMenu.displayName = "@optiaxiom/react/PillMenu";
1310
- const optionKey = (option) => option.key ?? Flex.resolveItemProperty(option.label, { inputValue: void 0 });
1364
+ const optionKey = (option) => option.key ?? require_Flex.resolveItemProperty(option.label, { inputValue: void 0 });
1311
1365
  const collectSelectedKeys = (options) => new Set(options.map(optionKey));
1312
1366
  const groupOptions = (options, selectedKeys) => options.map((option, index) => ({
1313
- index,
1314
- option,
1315
- selected: selectedKeys.has(optionKey(option))
1316
- })).sort(
1317
- ({ index: aIndex, selected: aSel }, { index: bIndex, selected: bSel }) => {
1318
- if (aSel === bSel) {
1319
- return aIndex - bIndex;
1320
- } else if (aSel) {
1321
- return -1;
1322
- } else {
1323
- return 1;
1324
- }
1325
- }
1326
- ).map(({ index, selected }) => ({
1327
- group: selected ? "selected" : void 0,
1328
- index
1367
+ index,
1368
+ option,
1369
+ selected: selectedKeys.has(optionKey(option))
1370
+ })).sort(({ index: aIndex, selected: aSel }, { index: bIndex, selected: bSel }) => {
1371
+ if (aSel === bSel) return aIndex - bIndex;
1372
+ else if (aSel) return -1;
1373
+ else return 1;
1374
+ }).map(({ index, selected }) => ({
1375
+ group: selected ? "selected" : void 0,
1376
+ index
1329
1377
  }));
1330
-
1331
- const PillMenuContent = React.forwardRef(
1332
- (props, ref) => {
1333
- const lastFocusRef = React.useRef();
1334
- return /* @__PURE__ */ jsxRuntime.jsx(
1335
- Flex.MenuContent,
1336
- {
1337
- onCloseAutoFocus: (event) => {
1338
- if (lastFocusRef.current instanceof HTMLElement && lastFocusRef.current !== document.body && document.body.contains(lastFocusRef.current)) {
1339
- event.preventDefault();
1340
- lastFocusRef.current.focus();
1341
- }
1342
- lastFocusRef.current = void 0;
1343
- },
1344
- onOpenAutoFocus: () => {
1345
- lastFocusRef.current = document.activeElement ?? void 0;
1346
- },
1347
- ref,
1348
- ...props
1349
- }
1350
- );
1351
- }
1352
- );
1378
+ //#endregion
1379
+ //#region src/pill-menu/PillMenuContent.tsx
1380
+ /**
1381
+ * @group PillMenu
1382
+ */
1383
+ const PillMenuContent = (0, react.forwardRef)((props, ref) => {
1384
+ const lastFocusRef = (0, react.useRef)();
1385
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.MenuContent, {
1386
+ onCloseAutoFocus: (event) => {
1387
+ if (lastFocusRef.current instanceof HTMLElement && lastFocusRef.current !== document.body && document.body.contains(lastFocusRef.current)) {
1388
+ event.preventDefault();
1389
+ lastFocusRef.current.focus();
1390
+ }
1391
+ lastFocusRef.current = void 0;
1392
+ },
1393
+ onOpenAutoFocus: () => {
1394
+ lastFocusRef.current = document.activeElement ?? void 0;
1395
+ },
1396
+ ref,
1397
+ ...props
1398
+ });
1399
+ });
1353
1400
  PillMenuContent.displayName = "@optiaxiom/react/PillMenuContent";
1354
-
1355
- const IconPlus = Flex.withIcon(
1356
- {
1357
- name: "IconPlus"
1358
- },
1359
- /* @__PURE__ */ jsxRuntime.jsx(
1360
- "path",
1361
- {
1362
- d: "M10.5 2C10.7761 2 11 2.22386 11 2.5V8H16.5C16.7761 8 17 8.22386 17 8.5C17 8.77614 16.7761 9 16.5 9H11V14.5C11 14.7761 10.7761 15 10.5 15C10.2239 15 10 14.7761 10 14.5V9H4.5C4.22386 9 4 8.77614 4 8.5C4 8.22386 4.22386 8 4.5 8H10V2.5C10 2.22386 10.2239 2 10.5 2Z",
1363
- fill: "currentColor"
1364
- }
1365
- )
1366
- );
1367
-
1368
- const [RovingFocusProvider, useRovingFocusContext] = reactContext.createContext("@optiaxiom/react/RovingFocus");
1369
-
1370
- const Slot$1 = reactSlot.createSlot("@optiaxiom/react/RovingFocus");
1371
- const RovingFocus = React.forwardRef(
1372
- ({ asChild, children, disabled, loop, orientation, ...props }, ref) => {
1373
- const FocusComp = disabled ? Flex.Box : RadixRovingFocus__namespace.Root;
1374
- const Comp = asChild ? Slot$1 : "div";
1375
- return /* @__PURE__ */ jsxRuntime.jsx(RovingFocusProvider, { disabled, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(FocusComp, { asChild: true, ...!disabled && { loop, orientation }, children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { children }) }) }) });
1376
- }
1377
- );
1401
+ //#endregion
1402
+ //#region src/icons/IconPlus.tsx
1403
+ const IconPlus = require_Flex.withIcon({ name: "IconPlus" }, /* @__PURE__ */ (0, react_jsx_runtime.jsx)("path", {
1404
+ d: "M10.5 2C10.7761 2 11 2.22386 11 2.5V8H16.5C16.7761 8 17 8.22386 17 8.5C17 8.77614 16.7761 9 16.5 9H11V14.5C11 14.7761 10.7761 15 10.5 15C10.2239 15 10 14.7761 10 14.5V9H4.5C4.22386 9 4 8.77614 4 8.5C4 8.22386 4.22386 8 4.5 8H10V2.5C10 2.22386 10.2239 2 10.5 2Z",
1405
+ fill: "currentColor"
1406
+ }));
1407
+ //#endregion
1408
+ //#region src/roving-focus/RovingFocusContext.ts
1409
+ const [RovingFocusProvider, useRovingFocusContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/RovingFocus");
1410
+ //#endregion
1411
+ //#region src/roving-focus/RovingFocus.tsx
1412
+ const Slot$1 = (0, _radix_ui_react_slot.createSlot)("@optiaxiom/react/RovingFocus");
1413
+ const RovingFocus = (0, react.forwardRef)(({ asChild, children, disabled, loop, orientation, ...props }, ref) => {
1414
+ const FocusComp = disabled ? require_Flex.Box : _radix_ui_react_roving_focus.Root;
1415
+ const Comp = asChild ? Slot$1 : "div";
1416
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(RovingFocusProvider, {
1417
+ disabled,
1418
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1419
+ asChild: true,
1420
+ ref,
1421
+ ...props,
1422
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FocusComp, {
1423
+ asChild: true,
1424
+ ...!disabled && {
1425
+ loop,
1426
+ orientation
1427
+ },
1428
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, { children })
1429
+ })
1430
+ })
1431
+ });
1432
+ });
1378
1433
  RovingFocus.displayName = "@optiaxiom/react/RovingFocus";
1379
-
1380
- const Slot = reactSlot.createSlot("@optiaxiom/react/RovingFocusItem");
1381
- const RovingFocusItem = React.forwardRef(
1382
- ({ asChild, children, ...props }, ref) => {
1383
- const { disabled } = useRovingFocusContext(
1384
- "@optiaxiom/react/RovingFocusItem"
1385
- );
1386
- const FocusComp = disabled ? Flex.Box : RadixRovingFocus__namespace.Item;
1387
- const Comp = asChild ? Slot : "div";
1388
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(FocusComp, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { children }) }) });
1389
- }
1390
- );
1434
+ //#endregion
1435
+ //#region src/roving-focus/RovingFocusItem.tsx
1436
+ const Slot = (0, _radix_ui_react_slot.createSlot)("@optiaxiom/react/RovingFocusItem");
1437
+ const RovingFocusItem = (0, react.forwardRef)(({ asChild, children, ...props }, ref) => {
1438
+ const { disabled } = useRovingFocusContext("@optiaxiom/react/RovingFocusItem");
1439
+ const FocusComp = disabled ? require_Flex.Box : _radix_ui_react_roving_focus.Item;
1440
+ const Comp = asChild ? Slot : "div";
1441
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1442
+ asChild: true,
1443
+ ref,
1444
+ ...props,
1445
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(FocusComp, {
1446
+ asChild: true,
1447
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Comp, { children })
1448
+ })
1449
+ });
1450
+ });
1391
1451
  RovingFocusItem.displayName = "@optiaxiom/react/RovingFocusItem";
1392
-
1393
- const PillMenuPill = React.forwardRef(
1394
- ({ item, onKeyDown, readOnly, ...props }, ref) => {
1395
- const { value: options } = usePillMenuContext(
1396
- "@optiaxiom/react/PillMenuPill"
1397
- );
1398
- const { open, setOpen } = Flex.useMenuContext("@optiaxiom/react/PillMenuPill");
1399
- const { inputValue } = Flex.useCommandContext("@optiaxiom/react/PillMenuPill");
1400
- const index = options.indexOf(item);
1401
- const hasInteractedInsideRef = React.useRef(false);
1402
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Tooltip, { content: Flex.resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsxRuntime.jsx(
1403
- Pill,
1404
- {
1405
- onClick: () => {
1406
- if (hasInteractedInsideRef.current) {
1407
- hasInteractedInsideRef.current = false;
1408
- return;
1409
- }
1410
- setOpen(!open);
1411
- },
1412
- onKeyDown: (event) => {
1413
- if (event.key === "Backspace") {
1414
- if (Flex.resolveItemProperty(item.disabledReason)) {
1415
- return;
1416
- }
1417
- if (index === 0 || index !== options.length - 1) {
1418
- event.key = index > 0 ? "ArrowLeft" : "ArrowRight";
1419
- }
1420
- item.execute?.({ dismiss: false, inputValue });
1421
- } else if (event.key === "ArrowDown") {
1422
- setOpen(!open);
1423
- }
1424
- onKeyDown?.(event);
1425
- },
1426
- onPointerDown: () => {
1427
- hasInteractedInsideRef.current = Boolean(open);
1428
- },
1429
- readOnly,
1430
- ref,
1431
- ...props,
1432
- children: Flex.resolveItemProperty(item.label, { inputValue })
1433
- }
1434
- ) });
1435
- }
1436
- );
1452
+ //#endregion
1453
+ //#region src/pill-menu/PillMenuPill.tsx
1454
+ const PillMenuPill = (0, react.forwardRef)(({ item, onKeyDown, readOnly, ...props }, ref) => {
1455
+ const { value: options } = usePillMenuContext("@optiaxiom/react/PillMenuPill");
1456
+ const { open, setOpen } = require_Flex.useMenuContext("@optiaxiom/react/PillMenuPill");
1457
+ const { inputValue } = require_Flex.useCommandContext("@optiaxiom/react/PillMenuPill");
1458
+ const index = options.indexOf(item);
1459
+ const hasInteractedInsideRef = (0, react.useRef)(false);
1460
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Tooltip, {
1461
+ content: require_Flex.resolveItemProperty(item.disabledReason),
1462
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(Pill, {
1463
+ onClick: () => {
1464
+ if (hasInteractedInsideRef.current) {
1465
+ hasInteractedInsideRef.current = false;
1466
+ return;
1467
+ }
1468
+ setOpen(!open);
1469
+ },
1470
+ onKeyDown: (event) => {
1471
+ if (event.key === "Backspace") {
1472
+ /**
1473
+ * The last item is always tied to the trigger to look nicer
1474
+ * visually. So we skip shifting focus when deleting the last item
1475
+ * unless it's the only item as radix will automatically move focus
1476
+ * back to last available item.
1477
+ */
1478
+ if (require_Flex.resolveItemProperty(item.disabledReason)) return;
1479
+ if (index === 0 || index !== options.length - 1) event.key = index > 0 ? "ArrowLeft" : "ArrowRight";
1480
+ item.execute?.({
1481
+ dismiss: false,
1482
+ inputValue
1483
+ });
1484
+ } else if (event.key === "ArrowDown") setOpen(!open);
1485
+ onKeyDown?.(event);
1486
+ },
1487
+ onPointerDown: () => {
1488
+ hasInteractedInsideRef.current = Boolean(open);
1489
+ },
1490
+ readOnly,
1491
+ ref,
1492
+ ...props,
1493
+ children: require_Flex.resolveItemProperty(item.label, { inputValue })
1494
+ })
1495
+ });
1496
+ });
1437
1497
  PillMenuPill.displayName = "@optiaxiom/react/PillMenuPill";
1438
-
1439
- var root$1 = Flex.recipeRuntime({base:[{border:'1',rounded:'md',transition:'colors'},'_1dy5foh'],variants:{size:{md:'lmglml',lg:'_1ve4stb'}}});
1440
- var trigger = Flex.recipeRuntime({base:[{display:'grid',placeItems:'center',rounded:'md'},'_1oc5bzu']});
1441
- var wrapper = Flex.recipeRuntime({base:'_1gjzlk3'});
1442
-
1498
+ //#endregion
1499
+ //#region src/pill-menu/PillMenuTrigger.css.ts
1500
+ var root$1 = require_Flex.recipeRuntime({
1501
+ base: [{
1502
+ border: "1",
1503
+ rounded: "md",
1504
+ transition: "colors"
1505
+ }, "_1i1ukj7"],
1506
+ variants: { size: {
1507
+ md: "_4vn4c8",
1508
+ lg: "xdie2w"
1509
+ } }
1510
+ });
1511
+ var trigger = require_Flex.recipeRuntime({ base: [{
1512
+ display: "grid",
1513
+ placeItems: "center",
1514
+ rounded: "md"
1515
+ }, "u6d8jq"] });
1516
+ var wrapper = require_Flex.recipeRuntime({ base: "_11ztbzy" });
1517
+ //#endregion
1518
+ //#region src/pill-menu/PillMenuTrigger.tsx
1443
1519
  const remapSize = {
1444
- md: "xs",
1445
- lg: "sm"
1520
+ md: "xs",
1521
+ lg: "sm"
1446
1522
  };
1447
- const PillMenuTrigger = React.forwardRef(
1448
- ({ children, className, readOnly, size = "md", ...props }, outerRef) => {
1449
- const { value } = usePillMenuContext("@optiaxiom/react/PillMenuTrigger");
1450
- const { size: menuSize } = Flex.useMenuContext(
1451
- "@optiaxiom/react/PillMenuTrigger"
1452
- );
1453
- const { inputValue } = Flex.useCommandContext(
1454
- "@optiaxiom/react/PillMenuTrigger"
1455
- );
1456
- const innerRef = React.useRef(null);
1457
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1458
- return /* @__PURE__ */ jsxRuntime.jsxs(Flex.Box, { ...wrapper(), children: [
1459
- /* @__PURE__ */ jsxRuntime.jsx(
1460
- PillGroup,
1461
- {
1462
- asChild: true,
1463
- "data-readonly": readOnly,
1464
- ref,
1465
- role: "toolbar",
1466
- ...root$1({ size }, className),
1467
- ...props,
1468
- children: /* @__PURE__ */ jsxRuntime.jsxs(RovingFocus, { disabled: readOnly, loop: true, orientation: "horizontal", children: [
1469
- value.slice(0, -1).map((item) => /* @__PURE__ */ jsxRuntime.jsx(
1470
- RovingFocusItem,
1471
- {
1472
- asChild: true,
1473
- children: /* @__PURE__ */ jsxRuntime.jsx(
1474
- PillMenuPill,
1475
- {
1476
- item,
1477
- readOnly,
1478
- size: remapSize[size]
1479
- }
1480
- )
1481
- },
1482
- item.key ?? Flex.resolveItemProperty(item.label, { inputValue })
1483
- )),
1484
- /* @__PURE__ */ jsxRuntime.jsxs(PillGroup, { children: [
1485
- value.length > 0 && /* @__PURE__ */ jsxRuntime.jsx(RovingFocusItem, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
1486
- PillMenuPill,
1487
- {
1488
- item: value[value.length - 1],
1489
- readOnly,
1490
- size: remapSize[size]
1491
- }
1492
- ) }, "pill"),
1493
- !readOnly && /* @__PURE__ */ jsxRuntime.jsx(RovingFocusItem, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
1494
- Flex.MenuTrigger,
1495
- {
1496
- "aria-label": props["aria-label"] ?? (typeof children === "string" ? children : void 0),
1497
- asChild: true,
1498
- onKeyDown: (event) => {
1499
- if (event.defaultPrevented) {
1500
- return;
1501
- }
1502
- if (event.key === "Backspace") {
1503
- if (value.length) {
1504
- const last = value.length - 1;
1505
- if (!Flex.resolveItemProperty(value[last].disabledReason)) {
1506
- value[last].execute?.({
1507
- dismiss: false,
1508
- inputValue
1509
- });
1510
- }
1511
- }
1512
- }
1513
- },
1514
- children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Cover, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, size: remapSize[size], ...trigger(), children: /* @__PURE__ */ jsxRuntime.jsx("button", { children: /* @__PURE__ */ jsxRuntime.jsx(IconPlus, {}) }) }) })
1515
- }
1516
- ) }, "trigger")
1517
- ] })
1518
- ] })
1519
- }
1520
- ),
1521
- menuSize === "sm" && /* @__PURE__ */ jsxRuntime.jsx(Flex.PopoverAnchor, { staticRef: innerRef })
1522
- ] });
1523
- }
1524
- );
1523
+ /**
1524
+ * @group PillMenu
1525
+ * @extends PillGroup
1526
+ */
1527
+ const PillMenuTrigger = (0, react.forwardRef)(({ children, className, readOnly, size = "md", ...props }, outerRef) => {
1528
+ const { value } = usePillMenuContext("@optiaxiom/react/PillMenuTrigger");
1529
+ const { size: menuSize } = require_Flex.useMenuContext("@optiaxiom/react/PillMenuTrigger");
1530
+ const { inputValue } = require_Flex.useCommandContext("@optiaxiom/react/PillMenuTrigger");
1531
+ const innerRef = (0, react.useRef)(null);
1532
+ const ref = (0, _radix_ui_react_compose_refs.useComposedRefs)(innerRef, outerRef);
1533
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
1534
+ ...wrapper(),
1535
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(PillGroup, {
1536
+ asChild: true,
1537
+ "data-readonly": readOnly,
1538
+ ref,
1539
+ role: "toolbar",
1540
+ ...root$1({ size }, className),
1541
+ ...props,
1542
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(RovingFocus, {
1543
+ disabled: readOnly,
1544
+ loop: true,
1545
+ orientation: "horizontal",
1546
+ children: [value.slice(0, -1).map((item) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(RovingFocusItem, {
1547
+ asChild: true,
1548
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PillMenuPill, {
1549
+ item,
1550
+ readOnly,
1551
+ size: remapSize[size]
1552
+ })
1553
+ }, item.key ?? require_Flex.resolveItemProperty(item.label, { inputValue }))), /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(PillGroup, { children: [value.length > 0 && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(RovingFocusItem, {
1554
+ asChild: true,
1555
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(PillMenuPill, {
1556
+ item: value[value.length - 1],
1557
+ readOnly,
1558
+ size: remapSize[size]
1559
+ })
1560
+ }, "pill"), !readOnly && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(RovingFocusItem, {
1561
+ asChild: true,
1562
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.MenuTrigger, {
1563
+ "aria-label": props["aria-label"] ?? (typeof children === "string" ? children : void 0),
1564
+ asChild: true,
1565
+ onKeyDown: (event) => {
1566
+ if (event.defaultPrevented) return;
1567
+ if (event.key === "Backspace") {
1568
+ if (value.length) {
1569
+ const last = value.length - 1;
1570
+ if (!require_Flex.resolveItemProperty(value[last].disabledReason)) value[last].execute?.({
1571
+ dismiss: false,
1572
+ inputValue
1573
+ });
1574
+ }
1575
+ }
1576
+ },
1577
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Cover, {
1578
+ asChild: true,
1579
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1580
+ asChild: true,
1581
+ size: remapSize[size],
1582
+ ...trigger(),
1583
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("button", { children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(IconPlus, {}) })
1584
+ })
1585
+ })
1586
+ })
1587
+ }, "trigger")] })]
1588
+ })
1589
+ }), menuSize === "sm" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.PopoverAnchor, { staticRef: innerRef })]
1590
+ });
1591
+ });
1525
1592
  PillMenuTrigger.displayName = "@optiaxiom/react/PillMenuTrigger";
1526
-
1527
- var control = Flex.recipeRuntime({base:[{bg:'transparent'},'p88jnp']});
1528
- var fillValue = 'var(--h7iga4)';
1529
- var mark = Flex.recipeRuntime({base:[{transition:'colors'},'_1f2jr23'],variants:{active:{false:{color:'fg.secondary'},true:{}}}});
1530
- var markValue = 'var(--_8al5ra)';
1531
- var range = Flex.recipeRuntime({base:[{h:'full',rounded:'inherit'},'_1fuvchz']});
1532
- var root = Flex.recipeRuntime({base:['_1hh7xu7',{alignItems:'center',color:'fg.default',display:'flex',fontSize:'md',w:'full'},'_1l75gty'],variants:{marks:{false:{},true:{mb:'24'}},size:{md:{h:'md'},lg:{h:'lg'}}}});
1533
- var thumb = Flex.recipeRuntime({base:[{border:'1',rounded:'full',shadow:'sm',size:'xs'},'_1swmv67']});
1534
- var track = Flex.recipeRuntime({base:[{display:'flex',flex:'1',rounded:'full'},'negc6h']});
1535
-
1593
+ //#endregion
1594
+ //#region src/range/Range.css.ts
1595
+ var control = require_Flex.recipeRuntime({ base: [{ bg: "transparent" }, "k8tpwq"] });
1596
+ var fillValue = "var(--_1l1ff6g)";
1597
+ var mark = require_Flex.recipeRuntime({
1598
+ base: [{ transition: "colors" }, "_1ksn6zh"],
1599
+ variants: { active: {
1600
+ false: { color: "fg.secondary" },
1601
+ true: {}
1602
+ } }
1603
+ });
1604
+ var markValue = "var(--_1yjxp6h)";
1605
+ var range = require_Flex.recipeRuntime({ base: [{
1606
+ h: "full",
1607
+ rounded: "inherit"
1608
+ }, "_1b9teg8"] });
1609
+ var root = require_Flex.recipeRuntime({
1610
+ base: [
1611
+ "_1rq09bz",
1612
+ {
1613
+ alignItems: "center",
1614
+ color: "fg.default",
1615
+ display: "flex",
1616
+ fontSize: "md",
1617
+ w: "full"
1618
+ },
1619
+ "_7yy7td"
1620
+ ],
1621
+ variants: {
1622
+ marks: {
1623
+ false: {},
1624
+ true: { mb: "24" }
1625
+ },
1626
+ size: {
1627
+ md: { h: "md" },
1628
+ lg: { h: "lg" }
1629
+ }
1630
+ }
1631
+ });
1632
+ var thumb = require_Flex.recipeRuntime({ base: [{
1633
+ border: "1",
1634
+ rounded: "full",
1635
+ shadow: "sm",
1636
+ size: "xs"
1637
+ }, "_16poest"] });
1638
+ var track = require_Flex.recipeRuntime({ base: [{
1639
+ display: "flex",
1640
+ flex: "1",
1641
+ rounded: "full"
1642
+ }, "_1eni9j7"] });
1643
+ //#endregion
1644
+ //#region src/range/useTooltipState.tsx
1536
1645
  const useTooltipState = () => {
1537
- const [tooltipOpen, setTooltipOpen] = React.useState(false);
1538
- const timerRef = React.useRef();
1539
- return [
1540
- tooltipOpen,
1541
- (flag, delayed = false) => {
1542
- if (delayed) {
1543
- window.clearTimeout(timerRef.current);
1544
- timerRef.current = window.setTimeout(() => {
1545
- setTooltipOpen(flag);
1546
- }, 50);
1547
- } else {
1548
- window.clearTimeout(timerRef.current);
1549
- setTooltipOpen(flag);
1550
- }
1551
- }
1552
- ];
1646
+ const [tooltipOpen, setTooltipOpen] = (0, react.useState)(false);
1647
+ const timerRef = (0, react.useRef)();
1648
+ return [tooltipOpen, (flag, delayed = false) => {
1649
+ if (delayed) {
1650
+ window.clearTimeout(timerRef.current);
1651
+ timerRef.current = window.setTimeout(() => {
1652
+ setTooltipOpen(flag);
1653
+ }, 50);
1654
+ } else {
1655
+ window.clearTimeout(timerRef.current);
1656
+ setTooltipOpen(flag);
1657
+ }
1658
+ }];
1553
1659
  };
1554
-
1555
- const Range = React.forwardRef(
1556
- ({
1557
- className,
1558
- defaultValue = 0,
1559
- disabled,
1560
- getLabel = (value) => value,
1561
- marks,
1562
- max = 100,
1563
- min = 0,
1564
- onChange,
1565
- onValueChange,
1566
- showTooltip = false,
1567
- size = "md",
1568
- step = 1,
1569
- value: valueProp,
1570
- ...props
1571
- }, ref) => {
1572
- const { boxProps, restProps } = Flex.extractBoxProps(props);
1573
- const { descriptionId, error, errorId, inputId } = Flex.useFieldContext(
1574
- "@optiaxiom/react/Range"
1575
- );
1576
- const [value, setValue] = reactUseControllableState.useControllableState({
1577
- caller: "@optiaxiom/react/Range",
1578
- defaultProp: defaultValue,
1579
- onChange: onValueChange,
1580
- prop: valueProp
1581
- });
1582
- const fillValue$1 = `${(value - min) / (max - min)}`;
1583
- const [tooltipOpen, setTooltipOpen] = useTooltipState();
1584
- const isPointerInsideRef = React.useRef(false);
1585
- return /* @__PURE__ */ jsxRuntime.jsxs(
1586
- Flex.Box,
1587
- {
1588
- "data-disabled": disabled ? "" : void 0,
1589
- ...root({ marks: !!marks, size }, className),
1590
- ...boxProps,
1591
- children: [
1592
- /* @__PURE__ */ jsxRuntime.jsxs(
1593
- Flex.Box,
1594
- {
1595
- style: dynamic.assignInlineVars({
1596
- [fillValue]: fillValue$1
1597
- }),
1598
- ...track(),
1599
- children: [
1600
- /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ...range() }),
1601
- /* @__PURE__ */ jsxRuntime.jsx(
1602
- Flex.Tooltip,
1603
- {
1604
- content: getLabel(value),
1605
- disabled: disabled || !showTooltip,
1606
- disableHoverableContent: true,
1607
- open: tooltipOpen,
1608
- children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { ...thumb() })
1609
- }
1610
- ),
1611
- /* @__PURE__ */ jsxRuntime.jsx(
1612
- Flex.Box,
1613
- {
1614
- "aria-describedby": errorId || descriptionId ? clsx(errorId, descriptionId) : void 0,
1615
- "aria-disabled": disabled,
1616
- "aria-invalid": error ? true : void 0,
1617
- asChild: true,
1618
- id: inputId,
1619
- ref,
1620
- ...control(),
1621
- children: /* @__PURE__ */ jsxRuntime.jsx(
1622
- "input",
1623
- {
1624
- disabled,
1625
- max,
1626
- min,
1627
- onBlur: () => {
1628
- if (isPointerInsideRef.current) {
1629
- return;
1630
- }
1631
- setTooltipOpen(false);
1632
- },
1633
- onChange: (event) => {
1634
- setValue(Number(event.currentTarget.value));
1635
- onChange?.(event);
1636
- },
1637
- onFocus: (event) => {
1638
- if (event.currentTarget.matches(":focus-visible")) {
1639
- setTooltipOpen(true);
1640
- }
1641
- },
1642
- onKeyDown: () => {
1643
- setTooltipOpen(true);
1644
- },
1645
- onPointerLeave: (event) => {
1646
- isPointerInsideRef.current = false;
1647
- if (!event.currentTarget.matches(":focus-visible")) {
1648
- setTooltipOpen(false);
1649
- }
1650
- },
1651
- onPointerMove: () => {
1652
- isPointerInsideRef.current = true;
1653
- setTooltipOpen(true, true);
1654
- },
1655
- step,
1656
- type: "range",
1657
- value,
1658
- ...restProps
1659
- }
1660
- )
1661
- }
1662
- )
1663
- ]
1664
- }
1665
- ),
1666
- marks?.map(
1667
- (mark) => typeof mark === "number" ? {
1668
- label: getLabel(mark),
1669
- value: mark
1670
- } : mark
1671
- ).map((mark$1) => /* @__PURE__ */ jsxRuntime.jsx(
1672
- Flex.Box,
1673
- {
1674
- onClick: () => {
1675
- if (!disabled) {
1676
- setValue(mark$1.value);
1677
- }
1678
- },
1679
- style: dynamic.assignInlineVars({
1680
- [markValue]: `${(mark$1.value - min) / (max - min)}`
1681
- }),
1682
- ...mark({ active: value >= mark$1.value }),
1683
- children: mark$1.label
1684
- },
1685
- mark$1.value
1686
- ))
1687
- ]
1688
- }
1689
- );
1690
- }
1691
- );
1660
+ //#endregion
1661
+ //#region src/range/Range.tsx
1662
+ /**
1663
+ * Allow users to select a numeric value within a range.
1664
+ *
1665
+ * @category form
1666
+ * @since 1.7.12
1667
+ * @experimental
1668
+ */
1669
+ const Range = (0, react.forwardRef)(({ className, defaultValue = 0, disabled, getLabel = (value) => value, marks, max = 100, min = 0, onChange, onValueChange, showTooltip = false, size = "md", step = 1, value: valueProp, ...props }, ref) => {
1670
+ const { boxProps, restProps } = require_Flex.extractBoxProps(props);
1671
+ const { descriptionId, error, errorId, inputId } = require_Flex.useFieldContext("@optiaxiom/react/Range");
1672
+ const [value, setValue] = (0, _radix_ui_react_use_controllable_state.useControllableState)({
1673
+ caller: "@optiaxiom/react/Range",
1674
+ defaultProp: defaultValue,
1675
+ onChange: onValueChange,
1676
+ prop: valueProp
1677
+ });
1678
+ const fillValue$1 = `${(value - min) / (max - min)}`;
1679
+ const [tooltipOpen, setTooltipOpen] = useTooltipState();
1680
+ const isPointerInsideRef = (0, react.useRef)(false);
1681
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
1682
+ "data-disabled": disabled ? "" : void 0,
1683
+ ...root({
1684
+ marks: !!marks,
1685
+ size
1686
+ }, className),
1687
+ ...boxProps,
1688
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Flex.Box, {
1689
+ style: (0, _vanilla_extract_dynamic.assignInlineVars)({ [fillValue]: fillValue$1 }),
1690
+ ...track(),
1691
+ children: [
1692
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, { ...range() }),
1693
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Tooltip, {
1694
+ content: getLabel(value),
1695
+ disabled: disabled || !showTooltip,
1696
+ disableHoverableContent: true,
1697
+ open: tooltipOpen,
1698
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, { ...thumb() })
1699
+ }),
1700
+ /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1701
+ "aria-describedby": errorId || descriptionId ? (0, clsx.default)(errorId, descriptionId) : void 0,
1702
+ "aria-disabled": disabled,
1703
+ "aria-invalid": error ? true : void 0,
1704
+ asChild: true,
1705
+ id: inputId,
1706
+ ref,
1707
+ ...control(),
1708
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("input", {
1709
+ disabled,
1710
+ max,
1711
+ min,
1712
+ onBlur: () => {
1713
+ if (isPointerInsideRef.current) return;
1714
+ setTooltipOpen(false);
1715
+ },
1716
+ onChange: (event) => {
1717
+ setValue(Number(event.currentTarget.value));
1718
+ onChange?.(event);
1719
+ },
1720
+ onFocus: (event) => {
1721
+ if (event.currentTarget.matches(":focus-visible")) setTooltipOpen(true);
1722
+ },
1723
+ onKeyDown: () => {
1724
+ setTooltipOpen(true);
1725
+ },
1726
+ onPointerLeave: (event) => {
1727
+ isPointerInsideRef.current = false;
1728
+ if (!event.currentTarget.matches(":focus-visible")) setTooltipOpen(false);
1729
+ },
1730
+ onPointerMove: () => {
1731
+ isPointerInsideRef.current = true;
1732
+ setTooltipOpen(true, true);
1733
+ },
1734
+ step,
1735
+ type: "range",
1736
+ value,
1737
+ ...restProps
1738
+ })
1739
+ })
1740
+ ]
1741
+ }), marks?.map((mark) => typeof mark === "number" ? {
1742
+ label: getLabel(mark),
1743
+ value: mark
1744
+ } : mark).map((mark$2) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1745
+ onClick: () => {
1746
+ if (!disabled) setValue(mark$2.value);
1747
+ },
1748
+ style: (0, _vanilla_extract_dynamic.assignInlineVars)({ [markValue]: `${(mark$2.value - min) / (max - min)}` }),
1749
+ ...mark({ active: value >= mark$2.value }),
1750
+ children: mark$2.label
1751
+ }, mark$2.value))]
1752
+ });
1753
+ });
1692
1754
  Range.displayName = "@optiaxiom/react/Range";
1693
-
1694
- const [SortableProvider, useSortableContext] = reactContext.createContext("@optiaxiom/react/Sortable");
1695
-
1696
- const Sortable = React.forwardRef(
1697
- ({ children, items: itemsProp, onChange, onItemsChange, ...props }, ref) => {
1698
- const [itemsState, setItemsState] = React.useState(null);
1699
- const items = itemsState === null ? itemsProp ?? [] : itemsState;
1700
- const cacheRef = React.useRef(/* @__PURE__ */ new Map());
1701
- return /* @__PURE__ */ jsxRuntime.jsx(
1702
- react.DragDropProvider,
1703
- {
1704
- onDragEnd: (event) => {
1705
- const { source } = event.operation;
1706
- if (!source || itemsState === null) {
1707
- return;
1708
- }
1709
- if (!event.canceled) {
1710
- onChange?.({
1711
- items: itemsState,
1712
- source: source.id.toString()
1713
- });
1714
- onItemsChange?.(itemsState);
1715
- }
1716
- setItemsState(null);
1717
- },
1718
- onDragOver: (event) => {
1719
- const { source } = event.operation;
1720
- if (!source || itemsState === null) {
1721
- return;
1722
- }
1723
- setItemsState(helpers.move(itemsState, event));
1724
- },
1725
- onDragStart: () => {
1726
- setItemsState(itemsProp ?? []);
1727
- },
1728
- children: /* @__PURE__ */ jsxRuntime.jsx(SortableProvider, { cacheRef, isSorting: itemsState !== null, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { flexDirection: "column", gap: "16", ...props, ref, children: children?.(items) }) })
1729
- }
1730
- );
1731
- }
1732
- );
1755
+ //#endregion
1756
+ //#region src/sortable/SortableContext.ts
1757
+ const [SortableProvider, useSortableContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/Sortable");
1758
+ //#endregion
1759
+ //#region src/sortable/Sortable.tsx
1760
+ /**
1761
+ * Basic building blocks for sortable interfaces.
1762
+ *
1763
+ * @group Sortable
1764
+ * @category actions
1765
+ * @since 1.5.0
1766
+ * @experimental
1767
+ */
1768
+ const Sortable = (0, react.forwardRef)(({ children, items: itemsProp, onChange, onItemsChange, ...props }, ref) => {
1769
+ const [itemsState, setItemsState] = (0, react.useState)(null);
1770
+ const items = itemsState === null ? itemsProp ?? [] : itemsState;
1771
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(_dnd_kit_react.DragDropProvider, {
1772
+ onDragEnd: (event) => {
1773
+ const { source } = event.operation;
1774
+ if (!source || itemsState === null) return;
1775
+ if (!event.canceled) {
1776
+ onChange?.({
1777
+ items: itemsState,
1778
+ source: source.id.toString()
1779
+ });
1780
+ onItemsChange?.(itemsState);
1781
+ }
1782
+ setItemsState(null);
1783
+ },
1784
+ onDragOver: (event) => {
1785
+ const { source } = event.operation;
1786
+ if (!source || itemsState === null) return;
1787
+ setItemsState((0, _dnd_kit_helpers.move)(itemsState, event));
1788
+ },
1789
+ onDragStart: () => {
1790
+ setItemsState(itemsProp ?? []);
1791
+ },
1792
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortableProvider, {
1793
+ cacheRef: (0, react.useRef)(/* @__PURE__ */ new Map()),
1794
+ isSorting: itemsState !== null,
1795
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
1796
+ flexDirection: "column",
1797
+ gap: "16",
1798
+ ...props,
1799
+ ref,
1800
+ children: children?.(items)
1801
+ })
1802
+ })
1803
+ });
1804
+ });
1733
1805
  Sortable.displayName = "@optiaxiom/react/Sortable";
1734
-
1735
- const [SortableGroupProvider, useSortableGroupContext] = reactContext.createContext("@optiaxiom/react/SortableGroup", {
1736
- id: void 0,
1737
- setHasDropTarget: () => {
1738
- }
1806
+ //#endregion
1807
+ //#region src/sortable/SortableGroupContext.ts
1808
+ const [SortableGroupProvider, useSortableGroupContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/SortableGroup", {
1809
+ id: void 0,
1810
+ setHasDropTarget: () => {}
1811
+ });
1812
+ //#endregion
1813
+ //#region src/sortable/SortableGroup.tsx
1814
+ /**
1815
+ * @group Sortable
1816
+ */
1817
+ const SortableGroup = (0, react.forwardRef)(({ children, group: id, ...props }, outerRef) => {
1818
+ const [hasDropTarget, setHasDropTarget] = (0, react.useState)(false);
1819
+ const { isDropTarget, ref: innerRef } = (0, _dnd_kit_react.useDroppable)({
1820
+ accept: "item",
1821
+ collisionPriority: 1,
1822
+ id,
1823
+ type: "group"
1824
+ });
1825
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortableGroupProvider, {
1826
+ id,
1827
+ setHasDropTarget,
1828
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Group, {
1829
+ flexDirection: "column",
1830
+ gap: "16",
1831
+ ref: (0, _radix_ui_react_compose_refs.useComposedRefs)(innerRef, outerRef),
1832
+ ...props,
1833
+ children: typeof children === "function" ? children(isDropTarget || hasDropTarget) : children
1834
+ })
1835
+ });
1739
1836
  });
1740
-
1741
- const SortableGroup = React.forwardRef(
1742
- ({ children, group: id, ...props }, outerRef) => {
1743
- const [hasDropTarget, setHasDropTarget] = React.useState(false);
1744
- const { isDropTarget, ref: innerRef } = react.useDroppable({
1745
- accept: "item",
1746
- collisionPriority: 1,
1747
- id,
1748
- type: "group"
1749
- });
1750
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1751
- return /* @__PURE__ */ jsxRuntime.jsx(SortableGroupProvider, { id, setHasDropTarget, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Group, { flexDirection: "column", gap: "16", ref, ...props, children: typeof children === "function" ? children(isDropTarget || hasDropTarget) : children }) });
1752
- }
1753
- );
1754
1837
  SortableGroup.displayName = "@optiaxiom/react/SortableGroup";
1755
-
1756
- var handle = Flex.recipeRuntime({base:'pb938c'});
1757
-
1758
- const [SortableItemProvider, useSortableItemContext] = reactContext.createContext("@optiaxiom/react/SortableItem");
1759
-
1760
- const SortableHandle = React.forwardRef(
1761
- ({ children, className, ...props }, outerRef) => {
1762
- const { handleRef, isDragging } = useSortableItemContext(
1763
- "@optiaxiom/react/SortableHandle"
1764
- );
1765
- const ref = reactComposeRefs.useComposedRefs(handleRef, outerRef);
1766
- return /* @__PURE__ */ jsxRuntime.jsx(
1767
- Flex.Box,
1768
- {
1769
- "aria-label": "draggable",
1770
- "data-state": isDragging ? "active" : void 0,
1771
- ref,
1772
- ...handle({}, className),
1773
- ...props,
1774
- children
1775
- }
1776
- );
1777
- }
1778
- );
1838
+ //#endregion
1839
+ //#region src/sortable/SortableHandle.css.ts
1840
+ var handle = require_Flex.recipeRuntime({ base: "_1lvmqui" });
1841
+ //#endregion
1842
+ //#region src/sortable/SortableItemContext.ts
1843
+ const [SortableItemProvider, useSortableItemContext] = (0, _radix_ui_react_context.createContext)("@optiaxiom/react/SortableItem");
1844
+ //#endregion
1845
+ //#region src/sortable/SortableHandle.tsx
1846
+ /**
1847
+ * @group Sortable
1848
+ */
1849
+ const SortableHandle = (0, react.forwardRef)(({ children, className, ...props }, outerRef) => {
1850
+ const { handleRef, isDragging } = useSortableItemContext("@optiaxiom/react/SortableHandle");
1851
+ const ref = (0, _radix_ui_react_compose_refs.useComposedRefs)(handleRef, outerRef);
1852
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1853
+ "aria-label": "draggable",
1854
+ "data-state": isDragging ? "active" : void 0,
1855
+ ref,
1856
+ ...handle({}, className),
1857
+ ...props,
1858
+ children
1859
+ });
1860
+ });
1779
1861
  SortableHandle.displayName = "@optiaxiom/react/SortableHandle";
1780
-
1781
- var item = Flex.recipeRuntime({base:'_10augzr',variants:{handle:{false:{},true:'_1o1x602'}}});
1782
-
1783
- const SortableItem = React.forwardRef(
1784
- ({ children, className, index, item: id, ...props }, outerRef) => {
1785
- const { cacheRef, isSorting } = useSortableContext(
1786
- "@optiaxiom/react/SortableItem"
1787
- );
1788
- const { id: group, setHasDropTarget } = useSortableGroupContext(
1789
- "@optiaxiom/react/SortableItem"
1790
- );
1791
- const handleRef = React.useRef(null);
1792
- const {
1793
- isDragging,
1794
- isDropTarget,
1795
- ref: innerRef
1796
- } = sortable.useSortable({
1797
- accept: "item",
1798
- feedback: "clone",
1799
- group,
1800
- handle: handleRef,
1801
- id,
1802
- index,
1803
- type: "item"
1804
- });
1805
- React.useEffect(() => {
1806
- if (!isDropTarget) {
1807
- return;
1808
- }
1809
- setHasDropTarget(true);
1810
- return () => setHasDropTarget(false);
1811
- }, [setHasDropTarget, id, isDropTarget]);
1812
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1813
- if (!isSorting) {
1814
- cacheRef.current.set(id, children);
1815
- }
1816
- return /* @__PURE__ */ jsxRuntime.jsx(SortableItemProvider, { handleRef, isDragging, children: /* @__PURE__ */ jsxRuntime.jsx(
1817
- Flex.Box,
1818
- {
1819
- "data-sortable-dragging": isDragging ? "" : void 0,
1820
- ref,
1821
- ...item({ handle: !handleRef.current }, className),
1822
- ...props,
1823
- children: cacheRef.current.get(id)
1824
- }
1825
- ) });
1826
- }
1827
- );
1862
+ //#endregion
1863
+ //#region src/sortable/SortableItem.css.ts
1864
+ var item = require_Flex.recipeRuntime({
1865
+ base: "crdm4z",
1866
+ variants: { handle: {
1867
+ false: {},
1868
+ true: "_1xdslqx"
1869
+ } }
1870
+ });
1871
+ //#endregion
1872
+ //#region src/sortable/SortableItem.tsx
1873
+ /**
1874
+ * @group Sortable
1875
+ */
1876
+ const SortableItem = (0, react.forwardRef)(({ children, className, index, item: id, ...props }, outerRef) => {
1877
+ const { cacheRef, isSorting } = useSortableContext("@optiaxiom/react/SortableItem");
1878
+ const { id: group, setHasDropTarget } = useSortableGroupContext("@optiaxiom/react/SortableItem");
1879
+ const handleRef = (0, react.useRef)(null);
1880
+ const { isDragging, isDropTarget, ref: innerRef } = (0, _dnd_kit_react_sortable.useSortable)({
1881
+ accept: "item",
1882
+ feedback: "clone",
1883
+ group,
1884
+ handle: handleRef,
1885
+ id,
1886
+ index,
1887
+ type: "item"
1888
+ });
1889
+ (0, react.useEffect)(() => {
1890
+ if (!isDropTarget) return;
1891
+ setHasDropTarget(true);
1892
+ return () => setHasDropTarget(false);
1893
+ }, [
1894
+ setHasDropTarget,
1895
+ id,
1896
+ isDropTarget
1897
+ ]);
1898
+ const ref = (0, _radix_ui_react_compose_refs.useComposedRefs)(innerRef, outerRef);
1899
+ if (!isSorting) cacheRef.current.set(id, children);
1900
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(SortableItemProvider, {
1901
+ handleRef,
1902
+ isDragging,
1903
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1904
+ "data-sortable-dragging": isDragging ? "" : void 0,
1905
+ ref,
1906
+ ...item({ handle: !handleRef.current }, className),
1907
+ ...props,
1908
+ children: cacheRef.current.get(id)
1909
+ })
1910
+ });
1911
+ });
1828
1912
  SortableItem.displayName = "@optiaxiom/react/SortableItem";
1829
-
1913
+ //#endregion
1914
+ //#region src/spotlight/Spotlight.tsx
1915
+ /**
1916
+ * Command menu for search and application navigation.
1917
+ *
1918
+ * @experimental
1919
+ */
1830
1920
  function Spotlight({ children, ...props }) {
1831
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Menu, { inputVisible: "always", size: "lg", ...props, children });
1921
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Menu, {
1922
+ inputVisible: "always",
1923
+ size: "lg",
1924
+ ...props,
1925
+ children
1926
+ });
1832
1927
  }
1833
1928
  Spotlight.displayName = "@optiaxiom/react/Spotlight";
1834
-
1835
- const SpotlightContent = React.forwardRef((props, ref) => {
1836
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.MenuContent, { "aria-label": "Quick search", ref, ...props });
1929
+ //#endregion
1930
+ //#region src/spotlight/SpotlightContent.tsx
1931
+ /**
1932
+ * @group Spotlight
1933
+ */
1934
+ const SpotlightContent = (0, react.forwardRef)((props, ref) => {
1935
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.MenuContent, {
1936
+ "aria-label": "Quick search",
1937
+ ref,
1938
+ ...props
1939
+ });
1837
1940
  });
1838
1941
  SpotlightContent.displayName = "@optiaxiom/react/SpotlightContent";
1839
-
1942
+ //#endregion
1943
+ //#region src/spotlight/SpotlightTrigger.tsx
1840
1944
  const DEFAULT_HOTKEY = "mod+K";
1841
- const SpotlightTrigger = React.forwardRef(({ children, ...props }, ref) => {
1842
- const { open, setOpen } = Flex.useMenuContext("@optiaxiom/react/SpotlightTrigger");
1843
- useHotkeys([[DEFAULT_HOTKEY, () => setOpen(!open)]]);
1844
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.MenuTrigger, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(Flex.IconMagnifyingGlass, {}), children: /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { color: "fg.tertiary", children }) }) });
1945
+ /**
1946
+ * @group Spotlight
1947
+ */
1948
+ const SpotlightTrigger = (0, react.forwardRef)(({ children, ...props }, ref) => {
1949
+ const { open, setOpen } = require_Flex.useMenuContext("@optiaxiom/react/SpotlightTrigger");
1950
+ useHotkeys([[DEFAULT_HOTKEY, () => setOpen(!open)]]);
1951
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.MenuTrigger, {
1952
+ asChild: true,
1953
+ ref,
1954
+ ...props,
1955
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Button, {
1956
+ icon: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.IconMagnifyingGlass, {}),
1957
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
1958
+ color: "fg.tertiary",
1959
+ children
1960
+ })
1961
+ })
1962
+ });
1845
1963
  });
1846
1964
  SpotlightTrigger.displayName = "@optiaxiom/react/SpotlightTrigger";
1847
-
1965
+ //#endregion
1966
+ //#region src/time/formatDate.ts
1848
1967
  const options = {
1849
- date: {
1850
- day: "numeric",
1851
- month: "short",
1852
- year: "numeric"
1853
- },
1854
- time: {
1855
- hour: "numeric",
1856
- minute: "numeric"
1857
- }};
1968
+ date: {
1969
+ day: "numeric",
1970
+ month: "short",
1971
+ year: "numeric"
1972
+ },
1973
+ hideYear: { year: void 0 },
1974
+ time: {
1975
+ hour: "numeric",
1976
+ minute: "numeric"
1977
+ },
1978
+ timeZone: { timeZoneName: "short" },
1979
+ weekday: { weekday: "short" }
1980
+ };
1858
1981
  function formatDate(date, { showDate = true, showTime = false }) {
1859
- return date.toLocaleString(["default", "en-US"], {
1860
- ...showDate ? options.date : {},
1861
- ...showTime ? options.time : {}
1862
- });
1982
+ return date.toLocaleString(["default", "en-US"], {
1983
+ ...showDate ? options.date : {},
1984
+ ...showTime ? options.time : {}
1985
+ });
1863
1986
  }
1864
-
1865
- const Time = React.forwardRef(
1866
- ({ date, showDate = true, showTime, ...props }, ref) => {
1867
- const { boxProps, restProps } = Flex.extractBoxProps(props);
1868
- if (typeof date === "string") {
1869
- date = new Date(date);
1870
- }
1871
- const value = formatDate(date, { showDate, showTime });
1872
- return /* @__PURE__ */ jsxRuntime.jsx(Flex.Box, { asChild: true, ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx("time", { dateTime: date.toISOString(), ref, ...restProps, children: value }) });
1873
- }
1874
- );
1875
- Time.displayName = "@optiaxiom/react/Time";
1876
-
1877
- exports.Calendar = Flex.Calendar;
1878
- exports.DataTableHeaderCell = Flex.DataTableHeaderCell;
1879
- exports.SuggestionAlert = Flex.SuggestionAlert;
1880
- exports.SuggestionPopover = Flex.SuggestionPopover;
1881
- exports.VisuallyHidden = Flex.VisuallyHidden;
1882
- exports.createDialogKit = Flex.createDialogKit;
1883
- exports.dialogkit = Flex.dialogkit;
1884
- exports.useSurface = Flex.useSurface;
1885
- Object.defineProperty(exports, "SurfaceProvider", {
1886
- enumerable: true,
1887
- get: function () { return globals.unstable_SurfaceProvider; }
1987
+ //#endregion
1988
+ //#region src/time/Time.tsx
1989
+ /**
1990
+ * A flexbox layout component for grouping items horizontally or vertically.
1991
+ *
1992
+ * @category data-display
1993
+ * @experimental
1994
+ */
1995
+ const Time = (0, react.forwardRef)(({ date, showDate = true, showTime, ...props }, ref) => {
1996
+ const { boxProps, restProps } = require_Flex.extractBoxProps(props);
1997
+ if (typeof date === "string") date = new Date(date);
1998
+ const value = formatDate(date, {
1999
+ showDate,
2000
+ showTime
2001
+ });
2002
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Flex.Box, {
2003
+ asChild: true,
2004
+ ...boxProps,
2005
+ children: /* @__PURE__ */ (0, react_jsx_runtime.jsx)("time", {
2006
+ dateTime: date.toISOString(),
2007
+ ref,
2008
+ ...restProps,
2009
+ children: value
2010
+ })
2011
+ });
1888
2012
  });
2013
+ Time.displayName = "@optiaxiom/react/Time";
2014
+ //#endregion
2015
+ exports.Calendar = require_Flex.Calendar;
1889
2016
  exports.DataTableExpandableCell = DataTableExpandableCell;
1890
2017
  exports.DataTableExpandableHeader = DataTableExpandableHeader;
2018
+ exports.DataTableHeaderCell = require_Flex.DataTableHeaderCell;
1891
2019
  exports.DetailsPanel = DetailsPanel;
1892
2020
  exports.DetailsPanelBody = DetailsPanelBody;
1893
2021
  exports.DetailsPanelFooter = DetailsPanelFooter;
@@ -1916,6 +2044,18 @@ exports.SortableItem = SortableItem;
1916
2044
  exports.Spotlight = Spotlight;
1917
2045
  exports.SpotlightContent = SpotlightContent;
1918
2046
  exports.SpotlightTrigger = SpotlightTrigger;
2047
+ exports.SuggestionAlert = require_Flex.SuggestionAlert;
2048
+ exports.SuggestionPopover = require_Flex.SuggestionPopover;
2049
+ Object.defineProperty(exports, "SurfaceProvider", {
2050
+ enumerable: true,
2051
+ get: function() {
2052
+ return _optiaxiom_globals.unstable_SurfaceProvider;
2053
+ }
2054
+ });
1919
2055
  exports.Time = Time;
2056
+ exports.VisuallyHidden = require_Flex.VisuallyHidden;
2057
+ exports.createDialogKit = require_Flex.createDialogKit;
2058
+ exports.dialogkit = require_Flex.dialogkit;
1920
2059
  exports.useDialogKit = useDialogKit;
1921
2060
  exports.useFileUploadTrigger = useFileUploadTrigger;
2061
+ exports.useSurface = require_Flex.useSurface;