@optiaxiom/react 1.3.6 → 1.4.1

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 (403) hide show
  1. package/dist/{PopoverContent-CtWreUDC.d.ts → Link-BsSSg661.d.ts} +381 -60
  2. package/dist/cjs/{Skeleton-CX8LlUgm.js → IconMagnifyingGlass-BCpZ15FM.js} +1624 -694
  3. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-PBTaIi8C.css +22 -0
  4. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-D8veuEgh.css +6 -0
  5. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-BVTQjFww.css +27 -0
  6. package/dist/cjs/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-DbtOH5Y9.css +6 -0
  7. package/dist/cjs/assets/src/avatar/{Avatar.css.ts.vanilla-BUjM4B0l.css → Avatar.css.ts.vanilla-DHdaU24C.css} +18 -18
  8. package/dist/cjs/assets/src/avatar/AvatarGroup.css.ts.vanilla-CbMg3mAn.css +4 -0
  9. package/dist/{esm/assets/src/backdrop/Backdrop.css.ts.vanilla-B3yRYHiN.css → cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-CYLY6W0b.css} +3 -3
  10. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-BNBal40N.css +46 -0
  11. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-CxVlr8nN.css +6 -0
  12. package/dist/{esm/assets/src/box/Box.css.ts.vanilla-BtJImGZv.css → cjs/assets/src/box/Box.css.ts.vanilla-DdWp0jtH.css} +22 -22
  13. package/dist/cjs/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-DnVIAOer.css +8 -0
  14. package/dist/cjs/assets/src/breadcrumb/BreadcrumbLink.css.ts.vanilla-Cz_tVmms.css +14 -0
  15. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-BxRZfJ1-.css +9 -0
  16. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-BSPjnfiO.css +147 -0
  17. package/dist/{esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-CcW8QE-Q.css → cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-C7HPKZUj.css} +27 -28
  18. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-c1jPN1Np.css +6 -0
  19. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-B4QSEvbK.css +6 -0
  20. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-BprPJCAN.css +11 -0
  21. package/dist/cjs/assets/src/card/CardAction.css.ts.vanilla-CDzZ5mqX.css +8 -0
  22. package/dist/cjs/assets/src/card/CardImage.css.ts.vanilla-CMsg1v4K.css +12 -0
  23. package/dist/{esm/assets/src/card/CardOverflow.css.ts.vanilla-BVl_nq63.css → cjs/assets/src/card/CardOverflow.css.ts.vanilla-C63W5bMw.css} +5 -5
  24. package/dist/cjs/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-DRdpVsTv.css → CheckboxControl.css.ts.vanilla-DDTXNzGl.css} +7 -7
  25. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-CWs0Ds6K.css +10 -0
  26. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-doC_eyYQ.css +34 -0
  27. package/dist/{esm/assets/src/data-table/DataTableBody.css.ts.vanilla-C6TM5Ak5.css → cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-B_BvVbLX.css} +25 -25
  28. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-Dfr-ZVsQ.css +6 -0
  29. package/dist/{esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-Da09UJwb.css → cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-BDXyWNw-.css} +9 -9
  30. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-Kyyq361k.css +15 -0
  31. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-uYY5DsHe.css +6 -0
  32. package/dist/cjs/assets/src/dialog/{DialogContent.css.ts.vanilla-B-s0-vtH.css → DialogContent.css.ts.vanilla-Ce79BS9p.css} +10 -10
  33. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-D5qNkX1z.css +15 -0
  34. package/dist/{esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-DPZl5rIE.css → cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-C0URMyiR.css} +4 -4
  35. package/dist/{esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-C7s7QvBu.css → cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-B7jh3O1M.css} +7 -7
  36. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-BiC-gEpt.css +7 -0
  37. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-DQHIlsmO.css +37 -0
  38. package/dist/cjs/assets/src/inline-input/{InlineInput.css.ts.vanilla-Bq0Wroww.css → InlineInput.css.ts.vanilla-rGb27kxI.css} +4 -4
  39. package/dist/{esm/assets/src/input/InputControl.css.ts.vanilla-CBHllHS2.css → cjs/assets/src/input/InputControl.css.ts.vanilla-DbwVhapt.css} +8 -8
  40. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-DM6baKq4.css +70 -0
  41. package/dist/cjs/assets/src/kbd/Kbd.css.ts.vanilla-EtR-xQEZ.css +9 -0
  42. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-BAbMKRAc.css +7 -0
  43. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-CN-ptlpS.css +1 -0
  44. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-T359hyuu.css +7 -0
  45. package/dist/{esm/assets/src/link/Link.css.ts.vanilla-CkvEyNoz.css → cjs/assets/src/link/Link.css.ts.vanilla-DRwyALER.css} +13 -13
  46. package/dist/cjs/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-Dp-MSd5L.css +11 -0
  47. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-7MEw3am_.css +48 -0
  48. package/dist/cjs/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-CXPDyZdx.css → ListboxItemIndicator.css.ts.vanilla-CeKd3eGS.css} +4 -4
  49. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-qciwAS7G.css +6 -0
  50. package/dist/cjs/assets/src/modal/ModalListbox.css.ts.vanilla-BhmlfHSo.css +33 -0
  51. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-CA3M5RMi.css +6 -0
  52. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-DkOGnUhV.css +9 -0
  53. package/dist/{esm/assets/src/nav/NavItem.css.ts.vanilla-wxer8oAG.css → cjs/assets/src/nav/NavItem.css.ts.vanilla-BmhlgdcD.css} +13 -13
  54. package/dist/cjs/assets/src/pagination/{Pagination.css.ts.vanilla-B3OXzCgC.css → Pagination.css.ts.vanilla-BQVW2oFL.css} +5 -5
  55. package/dist/cjs/assets/src/pill/{Pill.css.ts.vanilla-a7j93yNq.css → Pill.css.ts.vanilla-DpualKyi.css} +7 -7
  56. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-D-NgPzhe.css +6 -0
  57. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-CZ_lX4GP.css +13 -0
  58. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-loiT8Xp2.css +10 -0
  59. package/dist/{esm/assets/src/separator/Separator.css.ts.vanilla-C19bwsLd.css → cjs/assets/src/separator/Separator.css.ts.vanilla-BJyGakBV.css} +8 -8
  60. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-C-wdgTK4.css +6 -0
  61. package/dist/cjs/assets/src/spinner/{Spinner.css.ts.vanilla-BUiI4yI-.css → Spinner.css.ts.vanilla-BTsZSfas.css} +4 -4
  62. package/dist/cjs/assets/src/sprinkles/{properties.css.ts.vanilla-By86Ua1j.css → properties.css.ts.vanilla-CXwvhHCM.css} +723 -723
  63. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-B0gztfjn.css +6 -0
  64. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-BtNtEy94.css +45 -0
  65. package/dist/cjs/assets/src/table/Table.css.ts.vanilla-BBOlyf5V.css +15 -0
  66. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-BRWf3Zbv.css +6 -0
  67. package/dist/cjs/assets/src/table/TableCell.css.ts.vanilla-CqSzp-qS.css +11 -0
  68. package/dist/{esm/assets/src/table/TableHeaderCell.css.ts.vanilla-B6GTKkgd.css → cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-C0eIji4w.css} +4 -4
  69. package/dist/cjs/assets/src/table/{TableRow.css.ts.vanilla-L9Fx5VZc.css → TableRow.css.ts.vanilla-y2sGvAVd.css} +5 -5
  70. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-ClVFFFk0.css +9 -0
  71. package/dist/cjs/assets/src/tabs/{TabsList.css.ts.vanilla-Dyu-fshE.css → TabsList.css.ts.vanilla-S7LQ-zuZ.css} +4 -4
  72. package/dist/{esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-BrmOiYio.css → cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-Cy538bdm.css} +10 -10
  73. package/dist/cjs/assets/src/text/{Text.css.ts.vanilla-D9k0AUkV.css → Text.css.ts.vanilla-A81NL9nV.css} +8 -8
  74. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DvY4ySKA.css +34 -0
  75. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-BsYn9LQw.css +104 -0
  76. package/dist/cjs/assets/src/toast/{ToastProvider.css.ts.vanilla-DhuQQNh1.css → ToastProvider.css.ts.vanilla-2f0nruoM.css} +9 -9
  77. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-tPLFf0il.css +25 -0
  78. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CnU19Zsh.css +10 -0
  79. package/dist/{esm/assets/src/transition/Transition.css.ts.vanilla-BCBYncQ0.css → cjs/assets/src/transition/Transition.css.ts.vanilla-DjOc5FtK.css} +26 -26
  80. package/dist/cjs/index.js +1189 -353
  81. package/dist/cjs/unstable.js +567 -2320
  82. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-PBTaIi8C.css +22 -0
  83. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-D8veuEgh.css +6 -0
  84. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-BVTQjFww.css +27 -0
  85. package/dist/esm/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-DbtOH5Y9.css +6 -0
  86. package/dist/esm/assets/src/avatar/{Avatar.css.ts.vanilla-BUjM4B0l.css → Avatar.css.ts.vanilla-DHdaU24C.css} +18 -18
  87. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-CbMg3mAn.css +4 -0
  88. package/dist/{cjs/assets/src/backdrop/Backdrop.css.ts.vanilla-B3yRYHiN.css → esm/assets/src/backdrop/Backdrop.css.ts.vanilla-CYLY6W0b.css} +3 -3
  89. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-BNBal40N.css +46 -0
  90. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-CxVlr8nN.css +6 -0
  91. package/dist/{cjs/assets/src/box/Box.css.ts.vanilla-BtJImGZv.css → esm/assets/src/box/Box.css.ts.vanilla-DdWp0jtH.css} +22 -22
  92. package/dist/esm/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-DnVIAOer.css +8 -0
  93. package/dist/esm/assets/src/breadcrumb/BreadcrumbLink.css.ts.vanilla-Cz_tVmms.css +14 -0
  94. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-BxRZfJ1-.css +9 -0
  95. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-BSPjnfiO.css +147 -0
  96. package/dist/{cjs/assets/src/calendar/CalendarDayButton.css.ts.vanilla-CcW8QE-Q.css → esm/assets/src/calendar/CalendarDayButton.css.ts.vanilla-C7HPKZUj.css} +27 -28
  97. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-c1jPN1Np.css +6 -0
  98. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-B4QSEvbK.css +6 -0
  99. package/dist/esm/assets/src/card/Card.css.ts.vanilla-BprPJCAN.css +11 -0
  100. package/dist/esm/assets/src/card/CardAction.css.ts.vanilla-CDzZ5mqX.css +8 -0
  101. package/dist/esm/assets/src/card/CardImage.css.ts.vanilla-CMsg1v4K.css +12 -0
  102. package/dist/{cjs/assets/src/card/CardOverflow.css.ts.vanilla-BVl_nq63.css → esm/assets/src/card/CardOverflow.css.ts.vanilla-C63W5bMw.css} +5 -5
  103. package/dist/esm/assets/src/checkbox/{CheckboxControl.css.ts.vanilla-DRdpVsTv.css → CheckboxControl.css.ts.vanilla-DDTXNzGl.css} +7 -7
  104. package/dist/esm/assets/src/code/Code.css.ts.vanilla-CWs0Ds6K.css +10 -0
  105. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-doC_eyYQ.css +34 -0
  106. package/dist/{cjs/assets/src/data-table/DataTableBody.css.ts.vanilla-C6TM5Ak5.css → esm/assets/src/data-table/DataTableBody.css.ts.vanilla-B_BvVbLX.css} +25 -25
  107. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-Dfr-ZVsQ.css +6 -0
  108. package/dist/{cjs/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-Da09UJwb.css → esm/assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-BDXyWNw-.css} +9 -9
  109. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-Kyyq361k.css +15 -0
  110. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-uYY5DsHe.css +6 -0
  111. package/dist/esm/assets/src/dialog/{DialogContent.css.ts.vanilla-B-s0-vtH.css → DialogContent.css.ts.vanilla-Ce79BS9p.css} +10 -10
  112. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-D5qNkX1z.css +15 -0
  113. package/dist/{cjs/assets/src/disclosure/DisclosureContent.css.ts.vanilla-DPZl5rIE.css → esm/assets/src/disclosure/DisclosureContent.css.ts.vanilla-C0URMyiR.css} +4 -4
  114. package/dist/{cjs/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-C7s7QvBu.css → esm/assets/src/disclosure/DisclosureTrigger.css.ts.vanilla-B7jh3O1M.css} +7 -7
  115. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-BiC-gEpt.css +7 -0
  116. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-DQHIlsmO.css +37 -0
  117. package/dist/esm/assets/src/inline-input/{InlineInput.css.ts.vanilla-Bq0Wroww.css → InlineInput.css.ts.vanilla-rGb27kxI.css} +4 -4
  118. package/dist/{cjs/assets/src/input/InputControl.css.ts.vanilla-CBHllHS2.css → esm/assets/src/input/InputControl.css.ts.vanilla-DbwVhapt.css} +8 -8
  119. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-DM6baKq4.css +70 -0
  120. package/dist/esm/assets/src/kbd/Kbd.css.ts.vanilla-EtR-xQEZ.css +9 -0
  121. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-BAbMKRAc.css +7 -0
  122. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-CN-ptlpS.css +1 -0
  123. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-T359hyuu.css +7 -0
  124. package/dist/{cjs/assets/src/link/Link.css.ts.vanilla-CkvEyNoz.css → esm/assets/src/link/Link.css.ts.vanilla-DRwyALER.css} +13 -13
  125. package/dist/esm/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-Dp-MSd5L.css +11 -0
  126. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-7MEw3am_.css +48 -0
  127. package/dist/esm/assets/src/listbox/{ListboxItemIndicator.css.ts.vanilla-CXPDyZdx.css → ListboxItemIndicator.css.ts.vanilla-CeKd3eGS.css} +4 -4
  128. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-qciwAS7G.css +6 -0
  129. package/dist/esm/assets/src/modal/ModalListbox.css.ts.vanilla-BhmlfHSo.css +33 -0
  130. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-CA3M5RMi.css +6 -0
  131. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-DkOGnUhV.css +9 -0
  132. package/dist/{cjs/assets/src/nav/NavItem.css.ts.vanilla-wxer8oAG.css → esm/assets/src/nav/NavItem.css.ts.vanilla-BmhlgdcD.css} +13 -13
  133. package/dist/esm/assets/src/pagination/{Pagination.css.ts.vanilla-B3OXzCgC.css → Pagination.css.ts.vanilla-BQVW2oFL.css} +5 -5
  134. package/dist/esm/assets/src/pill/{Pill.css.ts.vanilla-a7j93yNq.css → Pill.css.ts.vanilla-DpualKyi.css} +7 -7
  135. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-D-NgPzhe.css +6 -0
  136. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-CZ_lX4GP.css +13 -0
  137. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-loiT8Xp2.css +10 -0
  138. package/dist/{cjs/assets/src/separator/Separator.css.ts.vanilla-C19bwsLd.css → esm/assets/src/separator/Separator.css.ts.vanilla-BJyGakBV.css} +8 -8
  139. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-C-wdgTK4.css +6 -0
  140. package/dist/esm/assets/src/spinner/{Spinner.css.ts.vanilla-BUiI4yI-.css → Spinner.css.ts.vanilla-BTsZSfas.css} +4 -4
  141. package/dist/esm/assets/src/sprinkles/{properties.css.ts.vanilla-By86Ua1j.css → properties.css.ts.vanilla-CXwvhHCM.css} +723 -723
  142. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-B0gztfjn.css +6 -0
  143. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-BtNtEy94.css +45 -0
  144. package/dist/esm/assets/src/table/Table.css.ts.vanilla-BBOlyf5V.css +15 -0
  145. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-BRWf3Zbv.css +6 -0
  146. package/dist/esm/assets/src/table/TableCell.css.ts.vanilla-CqSzp-qS.css +11 -0
  147. package/dist/{cjs/assets/src/table/TableHeaderCell.css.ts.vanilla-B6GTKkgd.css → esm/assets/src/table/TableHeaderCell.css.ts.vanilla-C0eIji4w.css} +4 -4
  148. package/dist/esm/assets/src/table/{TableRow.css.ts.vanilla-L9Fx5VZc.css → TableRow.css.ts.vanilla-y2sGvAVd.css} +5 -5
  149. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-ClVFFFk0.css +9 -0
  150. package/dist/esm/assets/src/tabs/{TabsList.css.ts.vanilla-Dyu-fshE.css → TabsList.css.ts.vanilla-S7LQ-zuZ.css} +4 -4
  151. package/dist/{cjs/assets/src/tabs/TabsTrigger.css.ts.vanilla-BrmOiYio.css → esm/assets/src/tabs/TabsTrigger.css.ts.vanilla-Cy538bdm.css} +10 -10
  152. package/dist/esm/assets/src/text/{Text.css.ts.vanilla-D9k0AUkV.css → Text.css.ts.vanilla-A81NL9nV.css} +8 -8
  153. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-DvY4ySKA.css +34 -0
  154. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-BsYn9LQw.css +104 -0
  155. package/dist/esm/assets/src/toast/{ToastProvider.css.ts.vanilla-DhuQQNh1.css → ToastProvider.css.ts.vanilla-2f0nruoM.css} +9 -9
  156. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-tPLFf0il.css +25 -0
  157. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CnU19Zsh.css +10 -0
  158. package/dist/{cjs/assets/src/transition/Transition.css.ts.vanilla-BCBYncQ0.css → esm/assets/src/transition/Transition.css.ts.vanilla-DjOc5FtK.css} +26 -26
  159. package/dist/esm/index.js +19 -1
  160. package/dist/esm/packages/react/package.json.js +1 -1
  161. package/dist/esm/packages/react/src/actions/ActionsContent-css.js +4 -4
  162. package/dist/esm/packages/react/src/actions/ActionsRoot-css.js +3 -3
  163. package/dist/esm/packages/react/src/alert/Alert-css.js +3 -3
  164. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent-css.js +6 -6
  165. package/dist/esm/packages/react/src/alert-dialog/AlertDialogContent.js +2 -1
  166. package/dist/esm/packages/react/src/alert-dialog/AlertDialogFooter-css.js +3 -3
  167. package/dist/esm/packages/react/src/avatar/Avatar-css.js +4 -4
  168. package/dist/esm/packages/react/src/avatar/AvatarGroup-css.js +3 -3
  169. package/dist/esm/packages/react/src/backdrop/Backdrop-css.js +3 -3
  170. package/dist/esm/packages/react/src/badge/Badge-css.js +3 -3
  171. package/dist/esm/packages/react/src/banner/Banner-css.js +3 -3
  172. package/dist/esm/packages/react/src/box/Box-css.js +4 -4
  173. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbItem-css.js +3 -3
  174. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbLink-css.js +3 -3
  175. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbLink.js +1 -6
  176. package/dist/esm/packages/react/src/breadcrumb/BreadcrumbPage.js +4 -17
  177. package/dist/esm/packages/react/src/button/ButtonGroup-css.js +3 -3
  178. package/dist/esm/packages/react/src/button/ButtonLoadable-css.js +5 -5
  179. package/dist/esm/packages/react/src/button/ButtonRoot-css.js +5 -5
  180. package/dist/esm/packages/react/src/calendar/Calendar.js +14 -11
  181. package/dist/esm/packages/react/src/calendar/CalendarDayButton-css.js +4 -4
  182. package/dist/esm/packages/react/src/calendar/CalendarMonths-css.js +3 -3
  183. package/dist/esm/packages/react/src/calendar/CalendarNav-css.js +3 -3
  184. package/dist/esm/packages/react/src/card/Card-css.js +5 -5
  185. package/dist/esm/packages/react/src/card/CardAction-css.js +4 -4
  186. package/dist/esm/packages/react/src/card/CardImage-css.js +3 -3
  187. package/dist/esm/packages/react/src/card/CardOverflow-css.js +3 -3
  188. package/dist/esm/packages/react/src/checkbox/CheckboxControl-css.js +6 -6
  189. package/dist/esm/packages/react/src/code/Code-css.js +3 -3
  190. package/dist/esm/packages/react/src/command/Command.js +2 -2
  191. package/dist/esm/packages/react/src/command/CommandItem.js +12 -2
  192. package/dist/esm/packages/react/src/command/CommandListbox.js +1 -5
  193. package/dist/esm/packages/react/src/command/useCommandItems.js +6 -0
  194. package/dist/esm/packages/react/src/cover/Cover-css.js +3 -3
  195. package/dist/esm/packages/react/src/data-table/DataTableBody-css.js +12 -11
  196. package/dist/esm/packages/react/src/data-table/DataTableBody.js +28 -31
  197. package/dist/esm/packages/react/src/data-table/DataTableFooter-css.js +3 -3
  198. package/dist/esm/packages/react/src/data-table/DataTableHeaderCell-css.js +5 -5
  199. package/dist/esm/packages/react/src/date-input/DateInput-css.js +7 -5
  200. package/dist/esm/packages/react/src/date-input/DateInput.js +44 -25
  201. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerContent-css.js +1 -1
  202. package/dist/esm/packages/react/src/date-range-picker/DateRangePickerTrigger.js +5 -8
  203. package/dist/esm/packages/react/src/dialog/DialogBody-css.js +3 -3
  204. package/dist/esm/packages/react/src/dialog/DialogContent-css.js +5 -5
  205. package/dist/esm/packages/react/src/dialog/DialogContent.js +2 -1
  206. package/dist/esm/packages/react/src/dialog/DialogFooter-css.js +1 -1
  207. package/dist/esm/packages/react/src/dialog/DialogHeader-css.js +6 -6
  208. package/dist/esm/packages/react/src/disclosure/DisclosureContent-css.js +4 -4
  209. package/dist/esm/packages/react/src/disclosure/DisclosureTrigger-css.js +5 -5
  210. package/dist/esm/packages/react/src/downshift/usePortalPatch.js +12 -4
  211. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuCheckboxItem.js +0 -1
  212. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuContent.js +2 -1
  213. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuGroup.js +3 -5
  214. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuItem.js +0 -1
  215. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuLabel.js +3 -5
  216. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSeparator.js +0 -1
  217. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSubContent.js +2 -1
  218. package/dist/esm/packages/react/src/dropdown-menu/DropdownMenuSubTrigger.js +0 -1
  219. package/dist/esm/packages/react/src/highlight/Highlight-css.js +3 -3
  220. package/dist/esm/packages/react/src/indicator/Indicator-css.js +5 -5
  221. package/dist/esm/packages/react/src/inline-input/InlineInput-css.js +4 -4
  222. package/dist/esm/packages/react/src/input/Input-css.js +1 -1
  223. package/dist/esm/packages/react/src/input/InputAddon.js +2 -3
  224. package/dist/esm/packages/react/src/input/InputControl-css.js +3 -3
  225. package/dist/esm/packages/react/src/input/InputRoot-css.js +5 -5
  226. package/dist/esm/packages/react/src/input/InputRoot.js +39 -11
  227. package/dist/esm/packages/react/src/kbd/Kbd-css.js +4 -4
  228. package/dist/esm/packages/react/src/kbd/Kbd.js +1 -1
  229. package/dist/esm/packages/react/src/label-menu-button/LabelMenuButton-css.js +5 -5
  230. package/dist/esm/packages/react/src/layers/layers-css.js +3 -3
  231. package/dist/esm/packages/react/src/layout/Layouts-css.js +3 -3
  232. package/dist/esm/packages/react/src/link/Link-css.js +4 -4
  233. package/dist/esm/packages/react/src/listbox/ListboxCheckboxItem-css.js +3 -3
  234. package/dist/esm/packages/react/src/listbox/ListboxItem-css.js +5 -5
  235. package/dist/esm/packages/react/src/listbox/ListboxItemIndicator-css.js +3 -3
  236. package/dist/esm/packages/react/src/listbox/ListboxItemized.js +12 -15
  237. package/dist/esm/packages/react/src/listbox/ListboxVirtualized.js +7 -7
  238. package/dist/esm/packages/react/src/menu/MenuCheckboxItem.js +0 -1
  239. package/dist/esm/packages/react/src/menu/MenuContent.js +3 -0
  240. package/dist/esm/packages/react/src/menu/MenuInput-css.js +3 -3
  241. package/dist/esm/packages/react/src/menu/MenuItem.js +0 -1
  242. package/dist/esm/packages/react/src/menu/MenuListbox.js +7 -2
  243. package/dist/esm/packages/react/src/menu/MenuPopoverContent.js +32 -3
  244. package/dist/esm/packages/react/src/menu/MenuRadioItem.js +0 -1
  245. package/dist/esm/packages/react/src/menu/MenuSub.js +7 -2
  246. package/dist/esm/packages/react/src/menu/MenuSubContent.js +26 -6
  247. package/dist/esm/packages/react/src/menu/MenuSubTrigger.js +1 -1
  248. package/dist/esm/packages/react/src/menu/MenuTrigger.js +0 -1
  249. package/dist/esm/packages/react/src/modal/ModalListbox-css.js +3 -3
  250. package/dist/esm/packages/react/src/modal/ModalListbox.js +0 -1
  251. package/dist/esm/packages/react/src/nav/Nav-css.js +3 -3
  252. package/dist/esm/packages/react/src/nav/NavAccountItem-css.js +3 -3
  253. package/dist/esm/packages/react/src/nav/NavBody-css.js +1 -1
  254. package/dist/esm/packages/react/src/nav/NavItem-css.js +6 -6
  255. package/dist/esm/packages/react/src/pagination/Pagination-css.js +5 -5
  256. package/dist/esm/packages/react/src/paper/Paper-css.js +1 -1
  257. package/dist/esm/packages/react/src/pill/Pill-css.js +3 -3
  258. package/dist/esm/packages/react/src/popover/PopoverContent.js +2 -1
  259. package/dist/esm/packages/react/src/portal/Portal.js +15 -0
  260. package/dist/esm/packages/react/src/portal/PortalContext.js +6 -0
  261. package/dist/esm/packages/react/src/progress/Progress-css.js +3 -3
  262. package/dist/esm/packages/react/src/radio/Radio-css.js +8 -8
  263. package/dist/esm/packages/react/src/search-input/SearchInput-css.js +5 -5
  264. package/dist/esm/packages/react/src/search-input/SearchInput.js +2 -2
  265. package/dist/esm/packages/react/src/select/Select.js +1 -0
  266. package/dist/esm/packages/react/src/select/SelectContent.js +8 -5
  267. package/dist/esm/packages/react/src/select/SelectRadioItem.js +0 -1
  268. package/dist/esm/packages/react/src/separator/Separator-css.js +3 -3
  269. package/dist/esm/packages/react/src/sidebar/SidebarToggle.js +0 -1
  270. package/dist/esm/packages/react/src/skeleton/Skeleton-css.js +3 -3
  271. package/dist/esm/packages/react/src/spinner/Spinner-css.js +3 -3
  272. package/dist/esm/packages/react/src/sprinkles/properties-css.js +4 -4
  273. package/dist/esm/packages/react/src/sub-nav/SubNav-css.js +3 -3
  274. package/dist/esm/packages/react/src/switch/Switch-css.js +8 -8
  275. package/dist/esm/packages/react/src/table/Table-css.js +4 -4
  276. package/dist/esm/packages/react/src/table/TableBody-css.js +3 -3
  277. package/dist/esm/packages/react/src/table/TableCell-css.js +4 -4
  278. package/dist/esm/packages/react/src/table/TableHeaderCell-css.js +4 -4
  279. package/dist/esm/packages/react/src/table/TableRow-css.js +3 -3
  280. package/dist/esm/packages/react/src/tabs/Tabs-css.js +3 -3
  281. package/dist/esm/packages/react/src/tabs/TabsList-css.js +3 -3
  282. package/dist/esm/packages/react/src/tabs/TabsTrigger-css.js +4 -4
  283. package/dist/esm/packages/react/src/text/Text-css.js +3 -3
  284. package/dist/esm/packages/react/src/textarea/TextareaAutosize-css.js +5 -5
  285. package/dist/esm/packages/react/src/theme-provider/ThemeProvider.js +15 -7
  286. package/dist/esm/packages/react/src/toast/Toast-css.js +6 -6
  287. package/dist/esm/packages/react/src/toast/ToastProvider-css.js +3 -3
  288. package/dist/esm/packages/react/src/toast/ToastProvider.js +2 -2
  289. package/dist/esm/packages/react/src/toggle-input/ToggleInput-css.js +4 -4
  290. package/dist/esm/packages/react/src/toggle-input/ToggleInputControl-css.js +5 -5
  291. package/dist/esm/packages/react/src/toggle-input/ToggleInputHiddenInput-css.js +3 -3
  292. package/dist/esm/packages/react/src/tooltip/TooltipContent-css.js +1 -1
  293. package/dist/esm/packages/react/src/tooltip/TooltipContent.js +2 -1
  294. package/dist/esm/packages/react/src/transition/Transition-css.js +3 -3
  295. package/dist/esm/unstable.js +0 -22
  296. package/dist/index.d.ts +1117 -520
  297. package/dist/unstable.d.ts +72 -1698
  298. package/package.json +1 -1
  299. package/dist/cjs/assets/src/actions/ActionsContent.css.ts.vanilla-B4iglvtu.css +0 -22
  300. package/dist/cjs/assets/src/alert/Alert.css.ts.vanilla-x5MBLJjV.css +0 -6
  301. package/dist/cjs/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-DhDjcUKh.css +0 -27
  302. package/dist/cjs/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-CuKYABvu.css +0 -6
  303. package/dist/cjs/assets/src/avatar/AvatarGroup.css.ts.vanilla-mPaslDnv.css +0 -4
  304. package/dist/cjs/assets/src/badge/Badge.css.ts.vanilla-BSKnicwL.css +0 -46
  305. package/dist/cjs/assets/src/banner/Banner.css.ts.vanilla-CfUWRA7l.css +0 -6
  306. package/dist/cjs/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-rsriDPZo.css +0 -11
  307. package/dist/cjs/assets/src/breadcrumb/BreadcrumbLink.css.ts.vanilla-Db835qcO.css +0 -16
  308. package/dist/cjs/assets/src/button/ButtonLoadable.css.ts.vanilla-BA6CMfjV.css +0 -9
  309. package/dist/cjs/assets/src/button/ButtonRoot.css.ts.vanilla-Bd2dzV48.css +0 -147
  310. package/dist/cjs/assets/src/calendar/CalendarMonths.css.ts.vanilla-D_MJt33Q.css +0 -6
  311. package/dist/cjs/assets/src/calendar/CalendarNav.css.ts.vanilla-eBZaZla9.css +0 -6
  312. package/dist/cjs/assets/src/card/Card.css.ts.vanilla-DPSAI4TL.css +0 -11
  313. package/dist/cjs/assets/src/card/CardAction.css.ts.vanilla-Rokpns7p.css +0 -8
  314. package/dist/cjs/assets/src/card/CardImage.css.ts.vanilla-RFjtwvtk.css +0 -12
  315. package/dist/cjs/assets/src/code/Code.css.ts.vanilla-WtWBTYIX.css +0 -10
  316. package/dist/cjs/assets/src/cover/Cover.css.ts.vanilla-6gsANvu_.css +0 -34
  317. package/dist/cjs/assets/src/data-table/DataTableFooter.css.ts.vanilla-Berk5yuA.css +0 -6
  318. package/dist/cjs/assets/src/date-input/DateInput.css.ts.vanilla-DZAvtgCf.css +0 -12
  319. package/dist/cjs/assets/src/date-picker/DatePickerContent.css.ts.vanilla-TQGZz5-f.css +0 -6
  320. package/dist/cjs/assets/src/dialog/DialogBody.css.ts.vanilla-Cdq4Tadx.css +0 -6
  321. package/dist/cjs/assets/src/dialog/DialogHeader.css.ts.vanilla-DWMzPbgh.css +0 -15
  322. package/dist/cjs/assets/src/highlight/Highlight.css.ts.vanilla-Ni7ZUHUo.css +0 -7
  323. package/dist/cjs/assets/src/indicator/Indicator.css.ts.vanilla-DsiB7ym7.css +0 -37
  324. package/dist/cjs/assets/src/input/InputRoot.css.ts.vanilla-Lozs8z5D.css +0 -70
  325. package/dist/cjs/assets/src/kbd/Kbd.css.ts.vanilla-UZGrMytF.css +0 -12
  326. package/dist/cjs/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-C8xYHTMc.css +0 -7
  327. package/dist/cjs/assets/src/layers/layers.css.ts.vanilla-VxRPX4pc.css +0 -1
  328. package/dist/cjs/assets/src/layout/Layouts.css.ts.vanilla-DO2L0UUp.css +0 -7
  329. package/dist/cjs/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-BJ2L8n3Y.css +0 -11
  330. package/dist/cjs/assets/src/listbox/ListboxItem.css.ts.vanilla-CIuGxGXM.css +0 -48
  331. package/dist/cjs/assets/src/menu/MenuInput.css.ts.vanilla-CNB3GpPD.css +0 -6
  332. package/dist/cjs/assets/src/modal/ModalListbox.css.ts.vanilla-D1q7bCk5.css +0 -33
  333. package/dist/cjs/assets/src/nav/Nav.css.ts.vanilla-Bvc0evh9.css +0 -6
  334. package/dist/cjs/assets/src/nav/NavAccountItem.css.ts.vanilla-mIEBuOeQ.css +0 -9
  335. package/dist/cjs/assets/src/progress/Progress.css.ts.vanilla-CME4yWj8.css +0 -6
  336. package/dist/cjs/assets/src/radio/Radio.css.ts.vanilla-DSqYFSt3.css +0 -13
  337. package/dist/cjs/assets/src/search-input/SearchInput.css.ts.vanilla-DScYYTrA.css +0 -10
  338. package/dist/cjs/assets/src/skeleton/Skeleton.css.ts.vanilla-BQkyIpyI.css +0 -6
  339. package/dist/cjs/assets/src/sub-nav/SubNav.css.ts.vanilla-Dys_SxLk.css +0 -6
  340. package/dist/cjs/assets/src/switch/Switch.css.ts.vanilla-Bge3BDdC.css +0 -45
  341. package/dist/cjs/assets/src/table/Table.css.ts.vanilla-Clpll45F.css +0 -15
  342. package/dist/cjs/assets/src/table/TableBody.css.ts.vanilla-CEGmA_nd.css +0 -6
  343. package/dist/cjs/assets/src/table/TableCell.css.ts.vanilla-BiqqvaJ8.css +0 -10
  344. package/dist/cjs/assets/src/tabs/Tabs.css.ts.vanilla-1_GRnWes.css +0 -9
  345. package/dist/cjs/assets/src/textarea/TextareaAutosize.css.ts.vanilla-0DTaZIBY.css +0 -34
  346. package/dist/cjs/assets/src/toast/Toast.css.ts.vanilla-xBmkp-cY.css +0 -104
  347. package/dist/cjs/assets/src/toggle-input/ToggleInput.css.ts.vanilla-Byr6x4TG.css +0 -25
  348. package/dist/cjs/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-r2Ztxx8z.css +0 -10
  349. package/dist/esm/assets/src/actions/ActionsContent.css.ts.vanilla-B4iglvtu.css +0 -22
  350. package/dist/esm/assets/src/alert/Alert.css.ts.vanilla-x5MBLJjV.css +0 -6
  351. package/dist/esm/assets/src/alert-dialog/AlertDialogContent.css.ts.vanilla-DhDjcUKh.css +0 -27
  352. package/dist/esm/assets/src/alert-dialog/AlertDialogFooter.css.ts.vanilla-CuKYABvu.css +0 -6
  353. package/dist/esm/assets/src/avatar/AvatarGroup.css.ts.vanilla-mPaslDnv.css +0 -4
  354. package/dist/esm/assets/src/badge/Badge.css.ts.vanilla-BSKnicwL.css +0 -46
  355. package/dist/esm/assets/src/banner/Banner.css.ts.vanilla-CfUWRA7l.css +0 -6
  356. package/dist/esm/assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-rsriDPZo.css +0 -11
  357. package/dist/esm/assets/src/breadcrumb/BreadcrumbLink.css.ts.vanilla-Db835qcO.css +0 -16
  358. package/dist/esm/assets/src/button/ButtonLoadable.css.ts.vanilla-BA6CMfjV.css +0 -9
  359. package/dist/esm/assets/src/button/ButtonRoot.css.ts.vanilla-Bd2dzV48.css +0 -147
  360. package/dist/esm/assets/src/calendar/CalendarMonths.css.ts.vanilla-D_MJt33Q.css +0 -6
  361. package/dist/esm/assets/src/calendar/CalendarNav.css.ts.vanilla-eBZaZla9.css +0 -6
  362. package/dist/esm/assets/src/card/Card.css.ts.vanilla-DPSAI4TL.css +0 -11
  363. package/dist/esm/assets/src/card/CardAction.css.ts.vanilla-Rokpns7p.css +0 -8
  364. package/dist/esm/assets/src/card/CardImage.css.ts.vanilla-RFjtwvtk.css +0 -12
  365. package/dist/esm/assets/src/code/Code.css.ts.vanilla-WtWBTYIX.css +0 -10
  366. package/dist/esm/assets/src/cover/Cover.css.ts.vanilla-6gsANvu_.css +0 -34
  367. package/dist/esm/assets/src/data-table/DataTableFooter.css.ts.vanilla-Berk5yuA.css +0 -6
  368. package/dist/esm/assets/src/date-input/DateInput.css.ts.vanilla-DZAvtgCf.css +0 -12
  369. package/dist/esm/assets/src/date-picker/DatePickerContent.css.ts.vanilla-TQGZz5-f.css +0 -6
  370. package/dist/esm/assets/src/dialog/DialogBody.css.ts.vanilla-Cdq4Tadx.css +0 -6
  371. package/dist/esm/assets/src/dialog/DialogHeader.css.ts.vanilla-DWMzPbgh.css +0 -15
  372. package/dist/esm/assets/src/highlight/Highlight.css.ts.vanilla-Ni7ZUHUo.css +0 -7
  373. package/dist/esm/assets/src/indicator/Indicator.css.ts.vanilla-DsiB7ym7.css +0 -37
  374. package/dist/esm/assets/src/input/InputRoot.css.ts.vanilla-Lozs8z5D.css +0 -70
  375. package/dist/esm/assets/src/kbd/Kbd.css.ts.vanilla-UZGrMytF.css +0 -12
  376. package/dist/esm/assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-C8xYHTMc.css +0 -7
  377. package/dist/esm/assets/src/layers/layers.css.ts.vanilla-VxRPX4pc.css +0 -1
  378. package/dist/esm/assets/src/layout/Layouts.css.ts.vanilla-DO2L0UUp.css +0 -7
  379. package/dist/esm/assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-BJ2L8n3Y.css +0 -11
  380. package/dist/esm/assets/src/listbox/ListboxItem.css.ts.vanilla-CIuGxGXM.css +0 -48
  381. package/dist/esm/assets/src/menu/MenuInput.css.ts.vanilla-CNB3GpPD.css +0 -6
  382. package/dist/esm/assets/src/modal/ModalListbox.css.ts.vanilla-D1q7bCk5.css +0 -33
  383. package/dist/esm/assets/src/nav/Nav.css.ts.vanilla-Bvc0evh9.css +0 -6
  384. package/dist/esm/assets/src/nav/NavAccountItem.css.ts.vanilla-mIEBuOeQ.css +0 -9
  385. package/dist/esm/assets/src/progress/Progress.css.ts.vanilla-CME4yWj8.css +0 -6
  386. package/dist/esm/assets/src/radio/Radio.css.ts.vanilla-DSqYFSt3.css +0 -13
  387. package/dist/esm/assets/src/search-input/SearchInput.css.ts.vanilla-DScYYTrA.css +0 -10
  388. package/dist/esm/assets/src/skeleton/Skeleton.css.ts.vanilla-BQkyIpyI.css +0 -6
  389. package/dist/esm/assets/src/sub-nav/SubNav.css.ts.vanilla-Dys_SxLk.css +0 -6
  390. package/dist/esm/assets/src/switch/Switch.css.ts.vanilla-Bge3BDdC.css +0 -45
  391. package/dist/esm/assets/src/table/Table.css.ts.vanilla-Clpll45F.css +0 -15
  392. package/dist/esm/assets/src/table/TableBody.css.ts.vanilla-CEGmA_nd.css +0 -6
  393. package/dist/esm/assets/src/table/TableCell.css.ts.vanilla-BiqqvaJ8.css +0 -10
  394. package/dist/esm/assets/src/tabs/Tabs.css.ts.vanilla-1_GRnWes.css +0 -9
  395. package/dist/esm/assets/src/textarea/TextareaAutosize.css.ts.vanilla-0DTaZIBY.css +0 -34
  396. package/dist/esm/assets/src/toast/Toast.css.ts.vanilla-xBmkp-cY.css +0 -104
  397. package/dist/esm/assets/src/toggle-input/ToggleInput.css.ts.vanilla-Byr6x4TG.css +0 -25
  398. package/dist/esm/assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-r2Ztxx8z.css +0 -10
  399. package/dist/esm/packages/react/src/date-picker/DatePicker.js +0 -50
  400. package/dist/esm/packages/react/src/date-picker/DatePickerContent-css.js +0 -7
  401. package/dist/esm/packages/react/src/date-picker/DatePickerContent.js +0 -65
  402. package/dist/esm/packages/react/src/date-picker/DatePickerContext.js +0 -6
  403. package/dist/esm/packages/react/src/date-picker/DatePickerTrigger.js +0 -60
@@ -3,148 +3,79 @@
3
3
 
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var React = require('react');
6
- var Skeleton = require('./Skeleton-CX8LlUgm.js');
7
- require('./assets/src/layers/layers.css.ts.vanilla-VxRPX4pc.css');
8
- require('./assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-rsriDPZo.css');
9
- require('./assets/src/breadcrumb/BreadcrumbLink.css.ts.vanilla-Db835qcO.css');
10
- var reactComposeRefs = require('@radix-ui/react-compose-refs');
11
- var reactUseControllableState = require('@radix-ui/react-use-controllable-state');
12
- var reactDayPicker = require('react-day-picker');
13
- var reactPopper = require('@radix-ui/react-popper');
14
- var downshift = require('downshift');
15
- var reactContext = require('@radix-ui/react-context');
16
- var reactPortal = require('@radix-ui/react-portal');
6
+ var IconMagnifyingGlass = require('./IconMagnifyingGlass-BCpZ15FM.js');
7
+ require('./assets/src/layers/layers.css.ts.vanilla-CN-ptlpS.css');
8
+ require('./assets/src/breadcrumb/BreadcrumbItem.css.ts.vanilla-DnVIAOer.css');
9
+ require('./assets/src/breadcrumb/BreadcrumbLink.css.ts.vanilla-Cz_tVmms.css');
17
10
  var reactId = require('@radix-ui/react-id');
18
- var reactSlot = require('@radix-ui/react-slot');
11
+ require('./assets/src/cover/Cover.css.ts.vanilla-doC_eyYQ.css');
12
+ require('./assets/src/link/Link.css.ts.vanilla-DRwyALER.css');
13
+ require('./assets/src/card/Card.css.ts.vanilla-BprPJCAN.css');
14
+ var reactContext = require('@radix-ui/react-context');
15
+ require('./assets/src/card/CardOverflow.css.ts.vanilla-C63W5bMw.css');
16
+ require('./assets/src/card/CardAction.css.ts.vanilla-CDzZ5mqX.css');
17
+ var reactUseControllableState = require('@radix-ui/react-use-controllable-state');
19
18
  var clsx = require('clsx');
20
- require('./assets/src/calendar/CalendarDayButton.css.ts.vanilla-CcW8QE-Q.css');
21
- require('./assets/src/calendar/CalendarMonths.css.ts.vanilla-D_MJt33Q.css');
22
- require('./assets/src/calendar/CalendarNav.css.ts.vanilla-eBZaZla9.css');
23
- require('./assets/src/avatar/AvatarGroup.css.ts.vanilla-mPaslDnv.css');
24
- require('./assets/src/actions/ActionsContent.css.ts.vanilla-B4iglvtu.css');
25
- require('./assets/src/cover/Cover.css.ts.vanilla-6gsANvu_.css');
26
- require('./assets/src/link/Link.css.ts.vanilla-CkvEyNoz.css');
27
- require('./assets/src/card/Card.css.ts.vanilla-DPSAI4TL.css');
28
- require('./assets/src/card/CardOverflow.css.ts.vanilla-BVl_nq63.css');
29
- require('./assets/src/card/CardAction.css.ts.vanilla-Rokpns7p.css');
30
- require('./assets/src/card/CardImage.css.ts.vanilla-RFjtwvtk.css');
31
- var reactTable = require('@tanstack/react-table');
32
- var reactVirtual = require('@tanstack/react-virtual');
33
- var dynamic = require('@vanilla-extract/dynamic');
34
- require('./assets/src/table/Table.css.ts.vanilla-Clpll45F.css');
35
- require('./assets/src/table/TableBody.css.ts.vanilla-CEGmA_nd.css');
36
- require('./assets/src/table/TableRow.css.ts.vanilla-L9Fx5VZc.css');
37
- require('./assets/src/table/TableCell.css.ts.vanilla-BiqqvaJ8.css');
38
- require('./assets/src/table/TableHeaderCell.css.ts.vanilla-B6GTKkgd.css');
39
- require('./assets/src/data-table/DataTableBody.css.ts.vanilla-C6TM5Ak5.css');
40
- require('./assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-Da09UJwb.css');
41
- require('./assets/src/data-table/DataTableFooter.css.ts.vanilla-Berk5yuA.css');
42
- require('./assets/src/date-input/DateInput.css.ts.vanilla-DZAvtgCf.css');
43
- require('./assets/src/date-picker/DatePickerContent.css.ts.vanilla-TQGZz5-f.css');
44
- require('./assets/src/highlight/Highlight.css.ts.vanilla-Ni7ZUHUo.css');
45
- require('./assets/src/inline-input/InlineInput.css.ts.vanilla-Bq0Wroww.css');
46
- var RadixLabel = require('@radix-ui/react-label');
47
- require('./assets/src/avatar/AvatarGroup.css.ts.vanilla-mPaslDnv.css');
48
- require('./assets/src/button/ButtonRoot.css.ts.vanilla-Bd2dzV48.css');
49
- require('./assets/src/label-menu-button/LabelMenuButton.css.ts.vanilla-C8xYHTMc.css');
50
- require('./assets/src/layout/Layouts.css.ts.vanilla-DO2L0UUp.css');
51
- require('./assets/src/menu/MenuInput.css.ts.vanilla-CNB3GpPD.css');
52
- require('./assets/src/pill/Pill.css.ts.vanilla-a7j93yNq.css');
53
- require('@radix-ui/react-dialog');
54
- require('./assets/src/dialog/DialogBody.css.ts.vanilla-Cdq4Tadx.css');
55
- require('./assets/src/backdrop/Backdrop.css.ts.vanilla-B3yRYHiN.css');
56
- require('./assets/src/dialog/DialogContent.css.ts.vanilla-B-s0-vtH.css');
57
- require('./assets/src/dialog/DialogHeader.css.ts.vanilla-DWMzPbgh.css');
58
- require('./assets/src/input/InputControl.css.ts.vanilla-CBHllHS2.css');
59
- require('./assets/src/input/InputRoot.css.ts.vanilla-Lozs8z5D.css');
19
+ require('./assets/src/card/CardImage.css.ts.vanilla-CMsg1v4K.css');
20
+ var reactSlot = require('@radix-ui/react-slot');
21
+ var downshift = require('downshift');
22
+ require('./assets/src/highlight/Highlight.css.ts.vanilla-BiC-gEpt.css');
23
+ require('./assets/src/inline-input/InlineInput.css.ts.vanilla-rGb27kxI.css');
24
+ require('./assets/src/layout/Layouts.css.ts.vanilla-T359hyuu.css');
25
+ var reactComposeRefs = require('@radix-ui/react-compose-refs');
26
+ require('./assets/src/menu/MenuInput.css.ts.vanilla-qciwAS7G.css');
27
+ require('./assets/src/pill/Pill.css.ts.vanilla-DpualKyi.css');
28
+ require('./assets/src/avatar/AvatarGroup.css.ts.vanilla-CbMg3mAn.css');
29
+ require('./assets/src/actions/ActionsContent.css.ts.vanilla-PBTaIi8C.css');
30
+ require('./assets/src/table/Table.css.ts.vanilla-BBOlyf5V.css');
31
+ require('./assets/src/table/TableBody.css.ts.vanilla-BRWf3Zbv.css');
32
+ require('./assets/src/table/TableRow.css.ts.vanilla-y2sGvAVd.css');
33
+ require('./assets/src/table/TableCell.css.ts.vanilla-CqSzp-qS.css');
34
+ require('./assets/src/table/TableHeaderCell.css.ts.vanilla-C0eIji4w.css');
35
+ require('./assets/src/data-table/DataTableHeaderCell.css.ts.vanilla-BDXyWNw-.css');
36
+ require('react-day-picker');
37
+ require('@radix-ui/react-popper');
60
38
  require('@optiaxiom/globals');
61
39
  require('@radix-ui/react-tooltip');
62
- require('./assets/src/pagination/Pagination.css.ts.vanilla-B3OXzCgC.css');
40
+ require('./assets/src/calendar/CalendarDayButton.css.ts.vanilla-C7HPKZUj.css');
41
+ require('./assets/src/calendar/CalendarMonths.css.ts.vanilla-c1jPN1Np.css');
42
+ require('./assets/src/calendar/CalendarNav.css.ts.vanilla-B4QSEvbK.css');
43
+ require('./assets/src/input/InputControl.css.ts.vanilla-DbwVhapt.css');
44
+ require('./assets/src/avatar/AvatarGroup.css.ts.vanilla-CbMg3mAn.css');
45
+ require('./assets/src/input/InputRoot.css.ts.vanilla-DM6baKq4.css');
63
46
  require('@radix-ui/react-popover');
47
+ require('./assets/src/avatar/AvatarGroup.css.ts.vanilla-CbMg3mAn.css');
48
+ require('./assets/src/toggle-input/ToggleInput.css.ts.vanilla-tPLFf0il.css');
49
+ require('./assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-CnU19Zsh.css');
50
+ require('./assets/src/checkbox/CheckboxControl.css.ts.vanilla-DDTXNzGl.css');
51
+ require('./assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-Dp-MSd5L.css');
52
+ require('./assets/src/listbox/ListboxItem.css.ts.vanilla-7MEw3am_.css');
53
+ require('./assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-CeKd3eGS.css');
54
+ require('./assets/src/skeleton/Skeleton.css.ts.vanilla-C-wdgTK4.css');
55
+ require('@tanstack/react-virtual');
56
+ require('@radix-ui/react-separator');
57
+ require('./assets/src/separator/Separator.css.ts.vanilla-BJyGakBV.css');
58
+ require('./assets/src/switch/Switch.css.ts.vanilla-BtNtEy94.css');
59
+ require('./assets/src/modal/ModalListbox.css.ts.vanilla-BhmlfHSo.css');
60
+ require('@radix-ui/react-dialog');
61
+ require('./assets/src/dialog/DialogBody.css.ts.vanilla-uYY5DsHe.css');
62
+ require('@vanilla-extract/dynamic');
63
+ require('./assets/src/backdrop/Backdrop.css.ts.vanilla-CYLY6W0b.css');
64
64
  require('@radix-ui/react-dismissable-layer');
65
65
  require('@radix-ui/react-focus-guards');
66
66
  require('react-remove-scroll');
67
- require('./assets/src/avatar/AvatarGroup.css.ts.vanilla-mPaslDnv.css');
68
- require('./assets/src/toggle-input/ToggleInput.css.ts.vanilla-Byr6x4TG.css');
69
- require('./assets/src/toggle-input/ToggleInputControl.css.ts.vanilla-r2Ztxx8z.css');
67
+ require('@radix-ui/react-portal');
68
+ require('./assets/src/dialog/DialogContent.css.ts.vanilla-Ce79BS9p.css');
69
+ require('./assets/src/text/Text.css.ts.vanilla-A81NL9nV.css');
70
70
  require('@radix-ui/react-visually-hidden');
71
- require('./assets/src/checkbox/CheckboxControl.css.ts.vanilla-DRdpVsTv.css');
72
- require('./assets/src/listbox/ListboxCheckboxItem.css.ts.vanilla-BJ2L8n3Y.css');
73
- require('./assets/src/text/Text.css.ts.vanilla-D9k0AUkV.css');
74
- require('./assets/src/listbox/ListboxItem.css.ts.vanilla-CIuGxGXM.css');
75
- require('./assets/src/listbox/ListboxItemIndicator.css.ts.vanilla-CXPDyZdx.css');
76
- require('@radix-ui/react-separator');
77
- require('./assets/src/separator/Separator.css.ts.vanilla-C19bwsLd.css');
78
- require('./assets/src/switch/Switch.css.ts.vanilla-Bge3BDdC.css');
79
- require('./assets/src/modal/ModalListbox.css.ts.vanilla-D1q7bCk5.css');
80
- require('./assets/src/button/ButtonLoadable.css.ts.vanilla-BA6CMfjV.css');
81
- require('./assets/src/spinner/Spinner.css.ts.vanilla-BUiI4yI-.css');
82
- require('./assets/src/transition/Transition.css.ts.vanilla-BCBYncQ0.css');
71
+ require('./assets/src/dialog/DialogHeader.css.ts.vanilla-D5qNkX1z.css');
72
+ require('./assets/src/button/ButtonRoot.css.ts.vanilla-BSPjnfiO.css');
73
+ require('./assets/src/button/ButtonLoadable.css.ts.vanilla-BxRZfJ1-.css');
74
+ require('./assets/src/spinner/Spinner.css.ts.vanilla-BTsZSfas.css');
75
+ require('./assets/src/transition/Transition.css.ts.vanilla-DjOc5FtK.css');
83
76
  require('@optiaxiom/globals/fonts');
84
- require('./assets/src/sprinkles/properties.css.ts.vanilla-By86Ua1j.css');
85
- require('./assets/src/box/Box.css.ts.vanilla-BtJImGZv.css');
86
- require('./assets/src/skeleton/Skeleton.css.ts.vanilla-BQkyIpyI.css');
87
-
88
- const toPlainDateTime = (date) => new Date(date.getTime() - new Date(date).getTimezoneOffset() * 60 * 1e3).toISOString().slice(0, -1);
89
-
90
- const toPlainDate = (date) => toPlainDateTime(date).split("T")[0];
91
-
92
- const toPlainTime = (date, step = "60") => {
93
- const stepInMinutes = (typeof step === "string" ? parseInt(step) : step) / 60;
94
- const [hour, minute] = toPlainDateTime(date).split("T")[1].slice(0, 5).split(":");
95
- return hour + ":" + (Math.floor(parseInt(minute) / stepInMinutes) * stepInMinutes).toString().padStart(2, "0");
96
- };
97
-
98
- const useFieldLabelTrigger = (ref, ariaLabelledBy) => {
99
- const { labelId = ariaLabelledBy } = Skeleton.useFieldContext("useFieldLabelTrigger");
100
- React.useEffect(() => {
101
- if (!labelId || !ref.current) {
102
- return;
103
- }
104
- const button = ref.current;
105
- const label = document.getElementById(labelId);
106
- if (!label) {
107
- return;
108
- }
109
- const onLabelClick = () => button.focus();
110
- label.addEventListener("click", onLabelClick);
111
- return () => label.removeEventListener("click", onLabelClick);
112
- }, [labelId, ref]);
113
- return labelId;
114
- };
115
-
116
- function attachMediaListener(query, callback) {
117
- try {
118
- query.addEventListener("change", callback);
119
- return () => query.removeEventListener("change", callback);
120
- } catch (e) {
121
- query.addListener(callback);
122
- return () => query.removeListener(callback);
123
- }
124
- }
125
- function getInitialValue(query, initialValue) {
126
- if (typeof window !== "undefined" && "matchMedia" in window) {
127
- return window.matchMedia(query).matches;
128
- }
129
- return false;
130
- }
131
- function useMediaQuery(query, initialValue, { getInitialValueInEffect } = {
132
- getInitialValueInEffect: true
133
- }) {
134
- const [matches, setMatches] = React.useState(
135
- getInitialValueInEffect ? initialValue : getInitialValue(query)
136
- );
137
- const queryRef = React.useRef(null);
138
- React.useEffect(() => {
139
- if ("matchMedia" in window) {
140
- queryRef.current = window.matchMedia(query);
141
- setMatches(queryRef.current.matches);
142
- return attachMediaListener(queryRef.current, (event) => setMatches(event.matches));
143
- }
144
- return void 0;
145
- }, [query]);
146
- return matches;
147
- }
77
+ require('./assets/src/sprinkles/properties.css.ts.vanilla-CXwvhHCM.css');
78
+ require('./assets/src/box/Box.css.ts.vanilla-DdWp0jtH.css');
148
79
 
149
80
  function parseHotkey(hotkey) {
150
81
  const keys = hotkey.toLowerCase().split("+").map((part) => part.trim());
@@ -221,2205 +152,527 @@ function useHotkeys(hotkeys, tagsToIgnore = ["INPUT", "TEXTAREA", "SELECT"], tri
221
152
  }, [hotkeys]);
222
153
  }
223
154
 
224
- const list = ["md", "sm"];
225
- const useResponsiveMatches = (config) => {
226
- const matches = {
227
- base: true,
228
- sm: useMediaQuery(Skeleton.conditions.conditions.sm["@media"]),
229
- md: useMediaQuery(Skeleton.conditions.conditions.md["@media"])
230
- };
231
- for (const name of list) {
232
- if (config[name] && matches[name]) {
233
- return config[name];
234
- }
235
- }
236
- return config.base;
237
- };
238
-
239
155
  const Breadcrumb = React.forwardRef(
240
156
  ({ children, className, ...props }, ref) => {
241
- const { boxProps, restProps } = Skeleton.extractBoxProps(props);
242
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, className, ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Breadcrumb", ref, ...restProps, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { alignItems: "center", asChild: true, display: "flex", gap: "8", children: /* @__PURE__ */ jsxRuntime.jsx("ol", { children }) }) }) });
157
+ const { boxProps, restProps } = IconMagnifyingGlass.extractBoxProps(props);
158
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, className, ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx("nav", { "aria-label": "Breadcrumb", ref, ...restProps, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { alignItems: "center", asChild: true, display: "flex", gap: "8", children: /* @__PURE__ */ jsxRuntime.jsx("ol", { children }) }) }) });
243
159
  }
244
160
  );
245
161
  Breadcrumb.displayName = "@optiaxiom/react/Breadcrumb";
246
162
 
247
163
  function BreadcrumbEllipsis({ ...props }) {
248
164
  return /* @__PURE__ */ jsxRuntime.jsx(
249
- Skeleton.Box,
165
+ IconMagnifyingGlass.Box,
250
166
  {
251
167
  "aria-hidden": true,
252
168
  color: "fg.tertiary",
253
169
  display: "grid",
254
170
  placeItems: "center",
255
171
  ...props,
256
- children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconEllipsis, {})
172
+ children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconEllipsis, {})
257
173
  }
258
174
  );
259
175
  }
260
176
  BreadcrumbEllipsis.displayName = "@optiaxiom/react/BreadcrumbEllipsis";
261
177
 
262
- var item = Skeleton.recipeRuntime({base:[{alignItems:'center',display:'inline-flex'},'f9mc0h']});
178
+ var item = IconMagnifyingGlass.recipeRuntime({base:[{alignItems:'center',display:'inline-flex'},'_1si2isy']});
263
179
 
264
180
  const BreadcrumbItem = React.forwardRef(
265
181
  ({ children, className, ...props }, ref) => {
266
- const { boxProps, restProps } = Skeleton.extractBoxProps(props);
267
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...item({}, className), ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx("li", { ref, ...restProps, children }) });
182
+ const { boxProps, restProps } = IconMagnifyingGlass.extractBoxProps(props);
183
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, ...item({}, className), ...boxProps, children: /* @__PURE__ */ jsxRuntime.jsx("li", { ref, ...restProps, children }) });
268
184
  }
269
185
  );
270
186
  BreadcrumbItem.displayName = "@optiaxiom/react/BreadcrumbItem";
271
187
 
272
- var link = Skeleton.recipeRuntime({base:[{fontSize:'md',overflow:'hidden',rounded:'md'},'_5mbp4w']});
188
+ var link = IconMagnifyingGlass.recipeRuntime({base:[{fontSize:'md'},'_1ytdd7o']});
273
189
 
274
190
  const BreadcrumbLink = React.forwardRef(({ className, ...props }, ref) => {
275
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Tooltip, { auto: true, content: props.children, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Link, { ...link({}, className), ref, ...props }) });
191
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Link, { ...link({}, className), ref, ...props });
276
192
  });
277
193
  BreadcrumbLink.displayName = "@optiaxiom/react/BreadcrumbLink";
278
194
 
279
195
  const BreadcrumbPage = React.forwardRef(
280
196
  ({ ...props }, ref) => {
281
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Tooltip, { auto: true, content: props.children, children: /* @__PURE__ */ jsxRuntime.jsx(
282
- Skeleton.Text,
283
- {
284
- "aria-current": "page",
285
- asChild: true,
286
- color: "fg.default",
287
- fontSize: "md",
288
- truncate: true,
289
- children: /* @__PURE__ */ jsxRuntime.jsx("span", { ref, ...props })
290
- }
291
- ) });
197
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { "aria-current": "page", asChild: true, color: "fg.default", fontSize: "md", children: /* @__PURE__ */ jsxRuntime.jsx("span", { ref, ...props }) });
292
198
  }
293
199
  );
294
200
  BreadcrumbPage.displayName = "@optiaxiom/react/BreadcrumbPage";
295
201
 
296
- function usePortalPatch(open, initialHighlightedIndex = -1) {
297
- const [placed, setPlaced] = React.useState(false);
298
- React.useEffect(() => {
299
- if (open) {
300
- requestAnimationFrame(() => requestAnimationFrame(() => setPlaced(true)));
301
- } else {
302
- setPlaced(false);
303
- }
304
- }, [open, setPlaced]);
305
- const [highlightedIndex, setHighlightedIndex] = React.useState(
306
- initialHighlightedIndex
307
- );
308
- React.useEffect(() => {
309
- if (!placed) {
310
- setHighlightedIndex(initialHighlightedIndex);
311
- }
312
- }, [initialHighlightedIndex, placed]);
313
- return [
314
- /**
315
- * Downshift attempts to scroll to the currently selected item when the menu
316
- * opens. But since we don't render the menu until it is open the `ref` will
317
- * not be available yet.
318
- *
319
- * So we only return the index when it has been placed and return -1
320
- * otherwise.
321
- */
322
- placed ? highlightedIndex : -1,
323
- setHighlightedIndex,
324
- placed
325
- ];
326
- }
327
-
328
- const [SelectProvider, useSelectContext] = reactContext.createContext("@optiaxiom/react/Select");
202
+ var card = IconMagnifyingGlass.recipeRuntime({base:['_1xxvlsg',{border:'1',borderColor:'border.tertiary',color:'fg.default',gap:'12',p:'16',transition:'transform'},'_1gswk19']});
329
203
 
330
- const SelectHiddenSelect = React.forwardRef(({ defaultValue, disabled, name, onChange, required, value }, ref) => {
331
- const { items } = useSelectContext("@optiaxiom/react/SelectHiddenSelect");
332
- const options = React.useMemo(
333
- () => items.map((item) => /* @__PURE__ */ jsxRuntime.jsx("option", { value: item.value, children: item.value }, item.value)),
334
- [items]
335
- );
336
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.VisuallyHidden, { "aria-hidden": true, children: /* @__PURE__ */ jsxRuntime.jsxs(
337
- "select",
338
- {
339
- defaultValue,
340
- disabled,
341
- name,
342
- onChange,
343
- ref,
344
- required,
345
- tabIndex: -1,
346
- value,
347
- children: [
348
- /* @__PURE__ */ jsxRuntime.jsx("option", { value: "" }),
349
- options
350
- ]
351
- }
352
- ) });
353
- });
354
- SelectHiddenSelect.displayName = "@optiaxiom/react/SelectHiddenSelect";
204
+ const [CardProvider, useCardContext] = reactContext.createContext("@optiaxiom/react/Card");
355
205
 
356
- const useObserveReset = (inputRef, setValue) => {
357
- React.useEffect(() => {
358
- const input = inputRef.current;
359
- if (!input) {
360
- return;
361
- }
362
- const form = input.closest("form");
363
- if (!form) {
364
- return;
365
- }
366
- const listener = () => setValue("");
367
- form.addEventListener("reset", listener);
368
- return () => form.removeEventListener("reset", listener);
369
- }, [inputRef, setValue]);
206
+ const mapOrientationToFlexDirection = {
207
+ horizontal: "row",
208
+ vertical: "column"
370
209
  };
371
-
372
- const Select = React.forwardRef(
373
- ({
374
- children,
375
- defaultOpen = false,
376
- defaultValue,
377
- disabled,
378
- loading,
379
- name,
380
- onBlur,
381
- onChange,
382
- onOpenChange,
383
- onValueChange,
384
- open,
385
- options: items,
386
- required,
387
- value
388
- }, outerRef) => {
389
- const innerRef = React.useRef(null);
390
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
391
- const [shadowValue, setShadowValue] = reactUseControllableState.useControllableState({
392
- caller: "@optiaxiom/react/Select",
393
- defaultProp: defaultValue ?? "",
394
- onChange: onValueChange,
395
- prop: value
396
- });
397
- const forceValueChange = Skeleton.useObserveValue(innerRef, setShadowValue);
398
- useObserveReset(innerRef, setShadowValue);
399
- const selectedItem = React.useMemo(
400
- () => shadowValue !== void 0 ? items.find((item) => item.value === shadowValue) : void 0,
401
- [items, shadowValue]
402
- );
403
- const [isOpen, setIsOpen] = reactUseControllableState.useControllableState({
404
- caller: "@optiaxiom/react/Select",
405
- defaultProp: defaultOpen,
406
- onChange: onOpenChange,
407
- prop: open
408
- });
409
- const [highlightedIndex, setHighlightedIndex, placed] = usePortalPatch(
410
- isOpen,
411
- () => selectedItem ? items.findIndex(
412
- (item) => !item.disabledReason && selectedItem.value === item.value
413
- ) : -1
414
- );
415
- const downshift$1 = downshift.useSelect({
416
- highlightedIndex: highlightedIndex === -1 && placed ? items.findIndex((item) => !item.disabledReason) : highlightedIndex,
417
- isItemDisabled: (item) => !!item.disabledReason,
418
- isOpen: placed,
419
- // @ts-expect-error -- no harm in supporting read only arrays
420
- items,
421
- itemToKey: (item) => item !== null ? item.value : item,
422
- itemToString: (item) => item !== null ? item.label : "",
423
- onHighlightedIndexChange(changes) {
424
- if (changes.type === downshift.useSelect.stateChangeTypes.MenuMouseLeave) {
425
- return;
426
- }
427
- if (changes.type === downshift.useSelect.stateChangeTypes.ItemMouseMove && isOpen || changes.isOpen) {
428
- setHighlightedIndex(changes.highlightedIndex);
429
- }
430
- },
431
- onIsOpenChange({ isOpen: isOpen2 }) {
432
- setIsOpen(isOpen2);
433
- },
434
- onSelectedItemChange({ selectedItem: selectedItem2 }) {
435
- forceValueChange(selectedItem2?.value ?? "");
436
- },
437
- selectedItem: selectedItem ?? null,
438
- stateReducer: (state, actionAndChanges) => {
439
- const { changes, type } = actionAndChanges;
440
- switch (type) {
441
- case downshift.useSelect.stateChangeTypes.ToggleButtonBlur:
442
- return {
443
- ...changes,
444
- /**
445
- * Do not select highlighted item when tabbing out of clicking
446
- * outside to close the menu.
447
- */
448
- selectedItem: state.selectedItem
449
- };
450
- default:
451
- return changes;
452
- }
210
+ const Card = React.forwardRef(
211
+ ({ children, className, orientation = "vertical", ...props }, ref) => {
212
+ const descriptionId = reactId.useId();
213
+ const labelId = reactId.useId();
214
+ return /* @__PURE__ */ jsxRuntime.jsx(
215
+ CardProvider,
216
+ {
217
+ descriptionId,
218
+ labelId,
219
+ orientation,
220
+ children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ActionsRoot, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
221
+ IconMagnifyingGlass.Flex,
222
+ {
223
+ flexDirection: mapOrientationToFlexDirection[orientation],
224
+ ref,
225
+ ...card({}, className),
226
+ ...props,
227
+ children
228
+ }
229
+ ) })
453
230
  }
231
+ );
232
+ }
233
+ );
234
+ Card.displayName = "@optiaxiom/react/Card";
235
+
236
+ var action = IconMagnifyingGlass.recipeRuntime({base:['_1u47myx']});
237
+
238
+ const CardAction = React.forwardRef(
239
+ ({ children, className, ...props }, ref) => {
240
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ActionsContent, { ref, ...action({}, className), ...props, children });
241
+ }
242
+ );
243
+ CardAction.displayName = "@optiaxiom/react/CardAction";
244
+
245
+ const CardCheckbox = React.forwardRef(
246
+ ({ children, indeterminate, onChange, ...props }, ref) => {
247
+ const labelPrefixId = reactId.useId();
248
+ const { labelId } = useCardContext("@optiaxiom/react/CardCheckbox");
249
+ const [checked, setChecked] = reactUseControllableState.useControllableState({
250
+ caller: "@optiaxiom/react/CardCheckbox",
251
+ defaultProp: props.defaultChecked,
252
+ prop: props.checked
454
253
  });
455
- downshift$1.getMenuProps({}, { suppressRefError: true });
456
- return /* @__PURE__ */ jsxRuntime.jsx(reactPopper.Popper, { children: /* @__PURE__ */ jsxRuntime.jsxs(
457
- SelectProvider,
254
+ return /* @__PURE__ */ jsxRuntime.jsxs(
255
+ IconMagnifyingGlass.CheckboxRoot,
458
256
  {
459
- disabled,
460
- downshift: downshift$1,
461
- highlightedItem: items[downshift$1.highlightedIndex],
462
- isOpen,
463
- items,
464
- loading,
465
- onBlur,
466
- selectedItem,
257
+ "aria-labelledby": clsx(labelPrefixId, labelId),
258
+ description: false,
259
+ onChange: (event) => {
260
+ onChange?.(event);
261
+ setChecked(event.target.checked);
262
+ },
263
+ ref,
264
+ ...props,
467
265
  children: [
468
266
  /* @__PURE__ */ jsxRuntime.jsx(
469
- SelectHiddenSelect,
267
+ IconMagnifyingGlass.CheckboxControl,
470
268
  {
471
- defaultValue,
472
- disabled,
473
- name,
474
- onChange: (event) => {
475
- setShadowValue(event.target.value);
476
- onChange?.(event);
477
- },
478
- ref,
479
- required,
480
- value
269
+ indeterminate,
270
+ shift: Boolean(children)
481
271
  }
482
272
  ),
483
- children
273
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { children: /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { id: labelPrefixId, children: [
274
+ "Check to ",
275
+ checked ? "unselect" : "select"
276
+ ] }) })
484
277
  ]
485
278
  }
486
- ) });
279
+ );
487
280
  }
488
281
  );
489
- Select.displayName = "@optiaxiom/react/Select";
282
+ CardCheckbox.displayName = "@optiaxiom/react/CardCheckbox";
490
283
 
491
- const SelectItem = React.forwardRef(
492
- ({ children, item, onMouseMove, size, ...props }, ref) => {
493
- const { downshift, highlightedItem, isOpen, selectedItem } = useSelectContext("@optiaxiom/react/SelectItem");
494
- const itemProps = downshift.getItemProps({
495
- item,
496
- onMouseMove: (event) => {
497
- onMouseMove?.(event);
498
- if (event.defaultPrevented) {
499
- return;
500
- }
501
- if (!isOpen) {
502
- event.preventDefault();
503
- Object.assign(event.nativeEvent, {
504
- preventDownshiftDefault: true
505
- });
506
- }
507
- },
284
+ const CardContent = React.forwardRef(
285
+ ({ children, ...props }, ref) => {
286
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { gap: "4", ref, ...props, children });
287
+ }
288
+ );
289
+ CardContent.displayName = "@optiaxiom/react/CardContent";
290
+
291
+ const CardDescription = React.forwardRef(({ children, ...props }, ref) => {
292
+ const { descriptionId } = useCardContext("@optiaxiom/react/CardDescription");
293
+ return /* @__PURE__ */ jsxRuntime.jsx(
294
+ IconMagnifyingGlass.Text,
295
+ {
296
+ color: "fg.tertiary",
297
+ fontSize: "sm",
298
+ id: descriptionId,
508
299
  ref,
509
- ...props
510
- });
300
+ ...props,
301
+ children
302
+ }
303
+ );
304
+ });
305
+ CardDescription.displayName = "@optiaxiom/react/CardDescription";
306
+
307
+ var cardImage = IconMagnifyingGlass.recipeRuntime({base:[{h:'full',rounded:'inherit'},'v2yxpo'],variants:{orientation:{horizontal:[{w:'auto'},'_137ltnh'],vertical:[{w:'full'},'_1hqvoer']}}});
308
+
309
+ const CardImage = React.forwardRef(
310
+ ({ alt = "", asChild, children, className, src, ...props }, ref) => {
311
+ const { orientation } = useCardContext("@optiaxiom/react/CardImage");
511
312
  return /* @__PURE__ */ jsxRuntime.jsx(
512
- Skeleton.Box,
313
+ IconMagnifyingGlass.Box,
513
314
  {
514
- "data-disabled": itemProps["aria-disabled"] ? "" : void 0,
515
- "data-highlighted": highlightedItem === item ? "" : void 0,
516
- "data-selected": selectedItem === item ? "" : void 0,
517
- size,
518
- ...itemProps,
519
- children
315
+ asChild: true,
316
+ ref,
317
+ ...cardImage({ orientation }, className),
318
+ ...props,
319
+ children: asChild ? children : /* @__PURE__ */ jsxRuntime.jsx("img", { alt, src })
520
320
  }
521
321
  );
522
322
  }
523
323
  );
524
- SelectItem.displayName = "@optiaxiom/react/SelectItem";
324
+ CardImage.displayName = "@optiaxiom/react/CardImage";
525
325
 
526
- const SelectRadioItem = React.forwardRef(
527
- ({ children, ...props }, ref) => {
528
- return /* @__PURE__ */ jsxRuntime.jsx(SelectItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ListboxRadioItem, { children }) });
326
+ const CardLink = React.forwardRef(
327
+ ({ ...props }, ref) => {
328
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Link, { appearance: "subtle", overlay: true, ref, ...props });
529
329
  }
530
330
  );
531
- SelectRadioItem.displayName = "@optiaxiom/react/SelectRadioItem";
331
+ CardLink.displayName = "@optiaxiom/react/CardLink";
532
332
 
533
- const SelectContent = React.forwardRef(
534
- ({ align = "start", children, side = "bottom", size, ...props }, ref) => {
535
- const { downshift, highlightedItem, isOpen, items, loading } = useSelectContext("@optiaxiom/react/SelectContent");
536
- const [placed, setPlaced] = React.useState(false);
537
- let isFirstItem = true;
538
- let lastGroup = void 0;
539
- const shouldShowSeparator = (group) => {
540
- const show = !isFirstItem;
541
- isFirstItem = false;
542
- return show && group !== lastGroup && (group?.separator || lastGroup?.separator);
543
- };
544
- const shouldShowGroup = (group) => {
545
- const show = group !== lastGroup;
546
- lastGroup = group;
547
- return show && !!group && !group?.hidden;
548
- };
549
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.TransitionGroup, { open: isOpen, children: /* @__PURE__ */ jsxRuntime.jsx(reactPortal.Portal, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ModalLayer, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
550
- Skeleton.ModalListbox,
333
+ var cardOverflow = IconMagnifyingGlass.recipeRuntime({base:['_1c8hlbi',{alignSelf:'stretch'},'sgiudy'],variants:{orientation:{horizontal:['yqu8ko'],vertical:['_1qp64jw']}}});
334
+
335
+ const CardOverflow = React.forwardRef(
336
+ ({ children, className, ...props }, ref) => {
337
+ const { orientation } = useCardContext("@optiaxiom/react/CardOverflow");
338
+ return /* @__PURE__ */ jsxRuntime.jsx(
339
+ IconMagnifyingGlass.Box,
551
340
  {
552
- asChild: true,
553
- maxH: "sm",
554
- minW: "trigger",
555
- provider: "popper",
556
341
  ref,
557
- role: "dialog",
558
- size,
342
+ ...cardOverflow({ orientation }, className),
559
343
  ...props,
560
- children: /* @__PURE__ */ jsxRuntime.jsx(reactPopper.PopperContent, { align, side, sideOffset: 5, children: /* @__PURE__ */ jsxRuntime.jsx(
561
- Skeleton.ListboxItemized,
562
- {
563
- highlightedItem,
564
- items,
565
- itemToKey: (item) => item.value,
566
- loading,
567
- onPlacedChange: setPlaced,
568
- placed,
569
- ...downshift.getMenuProps({}, { suppressRefError: !placed }),
570
- children: children ?? ((item, index) => {
571
- if (index === 0) {
572
- isFirstItem = true;
573
- lastGroup = void 0;
574
- }
575
- const group = item.group;
576
- return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
577
- shouldShowSeparator(group) && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ListboxSeparator, {}),
578
- shouldShowGroup(group) && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ListboxLabel, { children: group.label }),
579
- /* @__PURE__ */ jsxRuntime.jsx(
580
- SelectRadioItem,
581
- {
582
- addonBefore: item.addon,
583
- "aria-label": item["aria-label"],
584
- description: item.description,
585
- item,
586
- children: item.label
587
- },
588
- item.value
589
- )
590
- ] });
591
- })
592
- }
593
- ) })
344
+ children
594
345
  }
595
- ) }) }) });
346
+ );
596
347
  }
597
348
  );
598
- SelectContent.displayName = "@optiaxiom/react/SelectContent";
349
+ CardOverflow.displayName = "@optiaxiom/react/CardOverflow";
599
350
 
600
- const Slot$2 = reactSlot.createSlot("@optiaxiom/react/SelectTrigger");
601
- const SelectTrigger = React.forwardRef(
602
- ({
603
- "aria-labelledby": ariaLabelledBy,
604
- asChild,
605
- children,
606
- onBlur: onBlurProp,
607
- onKeyDown,
608
- placeholder,
609
- ...props
610
- }, ref) => {
611
- const { disabled, downshift, isOpen, items, onBlur, selectedItem } = useSelectContext("@optiaxiom/react/SelectTrigger");
612
- const { boxProps, restProps } = Skeleton.extractBoxProps(props);
613
- const buttonRef = React.useRef(null);
614
- const labelId = useFieldLabelTrigger(buttonRef, ariaLabelledBy);
615
- const valueId = reactId.useId();
616
- const [focusOnOpen] = React.useState(isOpen);
617
- React.useEffect(
618
- function() {
619
- if (focusOnOpen && buttonRef.current) {
620
- buttonRef.current.focus();
621
- }
622
- },
623
- [focusOnOpen]
624
- );
625
- const value = selectedItem?.value ? selectedItem.label || placeholder : placeholder;
351
+ const Slot$1 = reactSlot.createSlot("@optiaxiom/react/CardTitle");
352
+ const CardTitle = React.forwardRef(
353
+ ({ asChild, children, ...props }, ref) => {
354
+ const Comp = asChild ? Slot$1 : "h2";
355
+ const { labelId } = useCardContext("@optiaxiom/react/CardTitle");
626
356
  return /* @__PURE__ */ jsxRuntime.jsx(
627
- reactPopper.PopperAnchor,
357
+ IconMagnifyingGlass.Heading,
628
358
  {
629
359
  asChild: true,
630
- ...boxProps,
631
- ...downshift.getToggleButtonProps({
632
- ...restProps,
633
- "aria-labelledby": labelId ? clsx(labelId, valueId) : valueId,
634
- disabled,
635
- onBlur: (event) => {
636
- onBlurProp?.(event);
637
- onBlur?.(event);
638
- },
639
- onKeyDown: (event) => {
640
- onKeyDown?.(event);
641
- document.dispatchEvent(new Event("tooltip.open"));
642
- if (isOpen) {
643
- return;
644
- }
645
- const selectedItemIndex = downshift.selectedItem ? items.indexOf(downshift.selectedItem) : -1;
646
- switch (event.key) {
647
- case "ArrowLeft": {
648
- let prevItemIndex = selectedItemIndex;
649
- for (prevItemIndex--; prevItemIndex >= 0; prevItemIndex--) {
650
- const item = items[prevItemIndex];
651
- if (!item.disabledReason) {
652
- break;
653
- }
654
- }
655
- downshift.selectItem(items[Math.max(0, prevItemIndex)]);
656
- break;
657
- }
658
- case "ArrowRight": {
659
- let nextItemIndex = selectedItemIndex;
660
- for (nextItemIndex++; nextItemIndex < items.length; nextItemIndex++) {
661
- const item = items[nextItemIndex];
662
- if (!item.disabledReason) {
663
- break;
664
- }
665
- }
666
- downshift.selectItem(
667
- items[Math.min(nextItemIndex, items.length - 1)]
668
- );
669
- break;
670
- }
671
- }
672
- },
673
- type: "button"
674
- }),
675
- children: /* @__PURE__ */ jsxRuntime.jsx(Slot$2, { ref, children: asChild ? Skeleton.decorateChildren(
676
- { asChild, children },
677
- (children2) => (children2 ?? value) && /* @__PURE__ */ jsxRuntime.jsx("span", { id: valueId, children: children2 ?? value })
678
- ) : /* @__PURE__ */ jsxRuntime.jsx(Skeleton.AngleMenuButton, { ref: buttonRef, children: /* @__PURE__ */ jsxRuntime.jsx("span", { id: valueId, children: children ?? value }) }) })
679
- }
680
- );
681
- }
682
- );
683
- SelectTrigger.displayName = "@optiaxiom/react/SelectTrigger";
684
-
685
- const format = ({
686
- hour,
687
- meridiem,
688
- minute
689
- }) => {
690
- const formattedHour = parseInt(hour) === 12 ? 0 : parseInt(hour);
691
- return (formattedHour + (meridiem === "PM" ? 12 : 0)).toString().padStart(2, "0") + ":" + minute;
692
- };
693
- const parse = (value, step = 1) => {
694
- const now = /* @__PURE__ */ new Date();
695
- const [hour, minute] = (value ? value : `${now.getHours()}:${now.getMinutes()}`).split(":");
696
- const parsedHour = parseInt(hour) % 12 === 0 ? 12 : parseInt(hour) % 12;
697
- return {
698
- hour: parsedHour.toString(),
699
- meridiem: parseInt(hour) < 12 ? "AM" : "PM",
700
- minute: (Math.floor(parseInt(minute) / step) * step).toString().padStart(2, "0")
701
- };
702
- };
703
- const range = (min, max, step = 1) => Array.from(
704
- { length: Math.floor((max - min) / step) + 1 },
705
- (_, index) => (min + index * step).toString()
706
- );
707
-
708
- const Clock = React.forwardRef(
709
- ({
710
- defaultValue = "",
711
- onValueChange,
712
- step = "60",
713
- value: valueProp,
714
- ...props
715
- }, ref) => {
716
- const [value, setValue] = reactUseControllableState.useControllableState({
717
- caller: "@optiaxiom/react/Clock",
718
- defaultProp: defaultValue,
719
- onChange: onValueChange,
720
- prop: valueProp
721
- });
722
- const stepInMinutes = (typeof step === "string" ? parseInt(step) : step) / 60;
723
- const parsed = parse(value, stepInMinutes);
724
- const hours = range(1, 12);
725
- const minutes = range(0, 59, stepInMinutes).map(
726
- (minute) => minute.padStart(2, "0")
727
- );
728
- const periods = ["AM", "PM"];
729
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { flexDirection: "row", gap: "4", ref, ...props, children: [
730
- /* @__PURE__ */ jsxRuntime.jsxs(
731
- Select,
732
- {
733
- onValueChange: (hour) => hour && setValue(format({ ...parsed, hour })),
734
- options: hours.map((hour) => ({ label: hour, value: hour })),
735
- value: parsed.hour,
736
- children: [
737
- /* @__PURE__ */ jsxRuntime.jsx(SelectTrigger, { "aria-label": "Select hour", flex: "1", placeholder: "HH" }),
738
- /* @__PURE__ */ jsxRuntime.jsx(SelectContent, {})
739
- ]
740
- }
741
- ),
742
- /* @__PURE__ */ jsxRuntime.jsxs(
743
- Select,
744
- {
745
- onValueChange: (minute) => minute && setValue(format({ ...parsed, minute })),
746
- options: minutes.map((minute) => ({
747
- ariaLabel: `${parseInt(minute)}`,
748
- label: minute,
749
- value: minute
750
- })),
751
- value: parsed.minute,
752
- children: [
753
- /* @__PURE__ */ jsxRuntime.jsx(SelectTrigger, { "aria-label": "Select minute", flex: "1", placeholder: "MM" }),
754
- /* @__PURE__ */ jsxRuntime.jsx(SelectContent, {})
755
- ]
756
- }
757
- ),
758
- /* @__PURE__ */ jsxRuntime.jsxs(
759
- Select,
760
- {
761
- onValueChange: (meridiem) => (meridiem === "AM" || meridiem === "PM") && setValue(format({ ...parsed, meridiem })),
762
- options: periods.map((period) => ({ label: period, value: period })),
763
- value: parsed.meridiem,
764
- children: [
765
- /* @__PURE__ */ jsxRuntime.jsx(
766
- SelectTrigger,
767
- {
768
- "aria-label": "Select AM or PM",
769
- flex: "1",
770
- placeholder: "--"
771
- }
772
- ),
773
- /* @__PURE__ */ jsxRuntime.jsx(SelectContent, {})
774
- ]
775
- }
776
- )
777
- ] });
778
- }
779
- );
780
- Clock.displayName = "@optiaxiom/react/Clock";
781
-
782
- function toInstant(str) {
783
- const rawDate = str && typeof str === "string" ? new Date(str.includes("T") ? str : str + "T00:00") : void 0;
784
- return isValidDate(rawDate) ? rawDate : void 0;
785
- }
786
- const isValidDate = (date) => date ? !isNaN(+date) : false;
787
-
788
- function CalendarChevron({
789
- orientation,
790
- ...props
791
- }) {
792
- return orientation === "left" ? /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconAngleLeft, { ...props }) : /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconAngleRight, { ...props });
793
- }
794
- CalendarChevron.displayName = "@optiaxiom/react/CalendarChevron";
795
-
796
- function CalendarDay({ children, ...props }) {
797
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, flex: "1", children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.Day, { ...props, children }) });
798
- }
799
- CalendarDay.displayName = "@optiaxiom/react/CalendarDay";
800
-
801
- var button$2 = Skeleton.recipeRuntime({base:[{color:'fg.default',fontSize:'md',size:'md',transition:'colors'},'_15lrpgb'],variants:{appearance:{'default':'mvui53',holiday:[{color:'fg.error'},'sx0oov'],range_middle:'l1dhz6',selected:[{color:'fg.white'},'_1yy43iq'],weekend:[{color:'fg.tertiary'},'_4osm7j']},range:{end:['i6uz5r'],middle:['s8dhfy'],start:['_1nw2omy']}}});
802
- var today = Skeleton.recipeRuntime({base:[{bg:'current',mx:'auto',rounded:'full'},'_1ichv9z']});
803
-
804
- function CalendarDayButton({
805
- children,
806
- className,
807
- color: _color,
808
- day: _day,
809
- modifiers,
810
- ...props
811
- }) {
812
- const ref = React.useRef(null);
813
- React.useEffect(() => {
814
- if (modifiers.focused) {
815
- ref.current?.focus();
816
- }
817
- }, [modifiers.focused]);
818
- return /* @__PURE__ */ jsxRuntime.jsx(
819
- Skeleton.Box,
820
- {
821
- asChild: true,
822
- "data-disabled": modifiers.outside || props.disabled,
823
- ...button$2(
824
- {
825
- appearance: modifiers.range_middle ? "range_middle" : modifiers.selected ? "selected" : modifiers.holiday ? "holiday" : modifiers.weekend ? "weekend" : "default",
826
- range: modifiers.outside || modifiers.range_start && modifiers.range_end ? void 0 : modifiers.range_start ? "start" : modifiers.range_middle ? "middle" : modifiers.range_end ? "end" : void 0
827
- },
828
- className
829
- ),
830
- children: /* @__PURE__ */ jsxRuntime.jsxs("button", { ref, ...props, children: [
831
- children,
832
- modifiers.today && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ...today() })
833
- ] })
834
- }
835
- );
836
- }
837
- CalendarDayButton.displayName = "@optiaxiom/react/CalendarDayButton";
838
-
839
- function CalendarMonthCaption({
840
- children,
841
- ...props
842
- }) {
843
- return /* @__PURE__ */ jsxRuntime.jsx(
844
- Skeleton.Box,
845
- {
846
- alignItems: "center",
847
- asChild: true,
848
- display: "flex",
849
- fontSize: "lg",
850
- fontWeight: "500",
851
- h: "md",
852
- justifyContent: "center",
853
- mb: "16",
854
- children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.MonthCaption, { ...props, children })
855
- }
856
- );
857
- }
858
- CalendarMonthCaption.displayName = "@optiaxiom/react/CalendarMonthCaption";
859
-
860
- function CalendarMonthGrid({
861
- children,
862
- ...props
863
- }) {
864
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.MonthGrid, { ...props, children }) });
865
- }
866
- CalendarMonthGrid.displayName = "@optiaxiom/react/CalendarMonthGrid";
867
-
868
- var months = Skeleton.recipeRuntime({base:[{alignItems:'start',flexDirection:'row'},'dt5lnl']});
869
-
870
- function CalendarMonths({ children, ...props }) {
871
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Flex, { asChild: true, ...months(), children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.Months, { ...props, children }) });
872
- }
873
- CalendarMonths.displayName = "@optiaxiom/react/CalendarMonths";
874
-
875
- var nav = Skeleton.recipeRuntime({base:[{display:'flex',justifyContent:'space-between',w:'full'},'_18p15qg']});
876
-
877
- function CalendarNav({ children, ...props }) {
878
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...nav(), children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.Nav, { ...props, children }) });
879
- }
880
- CalendarNav.displayName = "@optiaxiom/react/CalendarNav";
881
-
882
- function CalendarNextMonthButton({
883
- children,
884
- color: _color,
885
- ...props
886
- }) {
887
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Button, { appearance: "subtle", asChild: true, icon: children, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.NextMonthButton, {}) });
888
- }
889
- CalendarNextMonthButton.displayName = "@optiaxiom/react/CalendarNextMonthButton";
890
-
891
- function CalendarPreviousMonthButton({
892
- children,
893
- color: _color,
894
- ...props
895
- }) {
896
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Button, { appearance: "subtle", asChild: true, icon: children, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.PreviousMonthButton, {}) });
897
- }
898
- CalendarPreviousMonthButton.displayName = "@optiaxiom/react/CalendarPreviousMonthButton";
899
-
900
- function CalendarWeek({ children, ...props }) {
901
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, display: "flex", gap: "2", mt: "2", children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.Week, { ...props, children }) });
902
- }
903
- CalendarWeek.displayName = "@optiaxiom/react/CalendarWeek";
904
-
905
- function CalendarWeekday({ children, ...props }) {
906
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, color: "fg.tertiary", flex: "1", fontSize: "sm", fontWeight: "400", children: /* @__PURE__ */ jsxRuntime.jsx(reactDayPicker.Weekday, { ...props, children }) });
907
- }
908
- CalendarWeekday.displayName = "@optiaxiom/react/CalendarWeekday";
909
-
910
- function CalendarWeekdays({
911
- children,
912
- ...props
913
- }) {
914
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, display: "flex", flexDirection: "column", mb: "6", children: /* @__PURE__ */ jsxRuntime.jsx("thead", { "aria-hidden": "true", children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, display: "flex", gap: "2", children: /* @__PURE__ */ jsxRuntime.jsx("tr", { ...props, children }) }) }) });
915
- }
916
- CalendarWeekdays.displayName = "@optiaxiom/react/CalendarWeekdays";
917
-
918
- const formatter = new Intl.DateTimeFormat(void 0, {
919
- timeZoneName: "long"
920
- });
921
- const toTimeZoneName = (date) => {
922
- const parts = formatter.formatToParts(date);
923
- return parts.find((part) => part.type === "timeZoneName")?.value ?? "";
924
- };
925
-
926
- const components = {
927
- Chevron: CalendarChevron,
928
- Day: CalendarDay,
929
- MonthCaption: CalendarMonthCaption,
930
- MonthGrid: CalendarMonthGrid,
931
- Months: CalendarMonths,
932
- Nav: CalendarNav,
933
- NextMonthButton: CalendarNextMonthButton,
934
- PreviousMonthButton: CalendarPreviousMonthButton,
935
- Week: CalendarWeek,
936
- Weekday: CalendarWeekday,
937
- Weekdays: CalendarWeekdays
938
- };
939
- const Calendar = React.forwardRef(
940
- ({
941
- defaultValue = null,
942
- holiday,
943
- max,
944
- min,
945
- mode = "single",
946
- onHeightChange,
947
- onValueChange,
948
- step,
949
- today,
950
- type = "date",
951
- value: valueProp,
952
- weekend,
953
- ...props
954
- }, outerRef) => {
955
- const [value, setValue] = reactUseControllableState.useControllableState({
956
- caller: "@optiaxiom/react/Calendar",
957
- defaultProp: defaultValue,
958
- onChange: onValueChange,
959
- prop: valueProp
960
- });
961
- const time = type === "date" ? "00:00" : toPlainTime(value instanceof Date ? value : /* @__PURE__ */ new Date(), step);
962
- const numberOfMonths = useResponsiveMatches({
963
- base: 1,
964
- sm: 2
965
- });
966
- const innerRef = React.useRef(null);
967
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
968
- const [from, setFrom] = React.useState();
969
- const [to, setTo] = React.useState();
970
- const DayButtonMemo = React.useMemo(
971
- () => function DayButton({
972
- onFocus,
973
- onPointerEnter,
974
- onPointerLeave,
975
- ...props2
976
- }) {
977
- return /* @__PURE__ */ jsxRuntime.jsx(
978
- CalendarDayButton,
979
- {
980
- onFocus: (event) => {
981
- onFocus?.(event);
982
- setTo(props2.day.date);
983
- },
984
- onPointerEnter: (event) => {
985
- onPointerEnter?.(event);
986
- setTo(props2.day.date);
987
- },
988
- onPointerLeave: (event) => {
989
- onPointerLeave?.(event);
990
- setTo(void 0);
991
- },
992
- ...props2
993
- }
994
- );
995
- },
996
- []
997
- );
998
- const onHeightChangeStable = Skeleton.useEffectEvent(onHeightChange ?? (() => {
999
- }));
1000
- React.useEffect(() => {
1001
- if (!innerRef.current) {
1002
- return;
1003
- }
1004
- const observer = new ResizeObserver((entries) => {
1005
- for (const entry of entries) {
1006
- onHeightChangeStable(entry.contentRect.height);
1007
- }
1008
- });
1009
- observer.observe(innerRef.current);
1010
- return () => observer.disconnect();
1011
- }, [onHeightChangeStable]);
1012
- return /* @__PURE__ */ jsxRuntime.jsxs(
1013
- Skeleton.Flex,
1014
- {
1015
- bg: "bg.default",
1016
- color: "fg.default",
1017
- fontSize: "md",
1018
- gap: "4",
1019
- ref,
1020
- ...props,
1021
- children: [
1022
- mode === "single" ? /* @__PURE__ */ jsxRuntime.jsx(
1023
- reactDayPicker.DayPicker,
1024
- {
1025
- autoFocus: true,
1026
- components: {
1027
- ...components,
1028
- DayButton: DayButtonMemo
1029
- },
1030
- defaultMonth: value instanceof Date ? value : void 0,
1031
- disabled: [
1032
- ...min ? [{ before: min }] : [],
1033
- ...max ? [{ after: max }] : []
1034
- ],
1035
- mode: "single",
1036
- modifiers: { holiday, weekend },
1037
- onSelect: (value2) => {
1038
- setValue(
1039
- value2 ? /* @__PURE__ */ new Date(toPlainDate(value2) + "T" + (time ?? "00:00")) : value2 ?? null
1040
- );
1041
- },
1042
- required: true,
1043
- selected: value instanceof Date ? value : void 0,
1044
- today
1045
- }
1046
- ) : /* @__PURE__ */ jsxRuntime.jsx(
1047
- reactDayPicker.DayPicker,
1048
- {
1049
- autoFocus: true,
1050
- components: {
1051
- ...components,
1052
- DayButton: DayButtonMemo
1053
- },
1054
- defaultMonth: value && typeof value === "object" && "from" in value ? value.from : void 0,
1055
- disabled: [
1056
- ...min ? [{ before: min }] : [],
1057
- ...max ? [{ after: max }] : []
1058
- ],
1059
- fixedWeeks: true,
1060
- mode: "range",
1061
- modifiers: { holiday, weekend },
1062
- numberOfMonths,
1063
- onSelect: (newValue) => {
1064
- if (!from) {
1065
- const oldFrom = value && typeof value === "object" && "from" in value ? value.from : void 0;
1066
- const newFrom = oldFrom && newValue?.from && newValue.from < oldFrom ? newValue.from : newValue?.to;
1067
- setFrom(newFrom);
1068
- } else {
1069
- setFrom(void 0);
1070
- setValue(
1071
- to && to < from ? {
1072
- from: to,
1073
- to: toInstant(toPlainDate(from) + "T23:59:59.999")
1074
- } : {
1075
- from,
1076
- to: to ? toInstant(toPlainDate(to) + "T23:59:59.999") : void 0
1077
- }
1078
- );
1079
- }
1080
- },
1081
- required: true,
1082
- selected: from ? to && to < from ? { from: to, to: from } : { from, to } : value && typeof value === "object" && "from" in value ? value : void 0,
1083
- showOutsideDays: true,
1084
- today
1085
- }
1086
- ),
1087
- type === "datetime-local" && mode == "single" && /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { gap: "8", children: [
1088
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Separator, { mb: "4" }),
1089
- /* @__PURE__ */ jsxRuntime.jsx(
1090
- Clock,
1091
- {
1092
- onValueChange: (time2) => {
1093
- setValue(
1094
- /* @__PURE__ */ new Date(
1095
- toPlainDate(value instanceof Date ? value : /* @__PURE__ */ new Date()) + "T" + time2
1096
- )
1097
- );
1098
- },
1099
- step,
1100
- value: time
1101
- }
1102
- ),
1103
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { color: "fg.tertiary", fontSize: "sm", w: "full", children: toTimeZoneName(value instanceof Date ? value : /* @__PURE__ */ new Date()) })
1104
- ] })
1105
- ]
1106
- }
1107
- );
1108
- }
1109
- );
1110
- Calendar.displayName = "@optiaxiom/react/Calendar";
1111
-
1112
- var content$2 = Skeleton.recipeRuntime({base:[{display:'flex',justifyContent:'space-between'},'_1glu71u'],variants:{visible:{false:'tplmdk',true:'c0pkbq'}}});
1113
-
1114
- const ActionsContent = React.forwardRef(
1115
- ({ children, className, visible = false, ...props }, ref) => {
1116
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ref, ...content$2({ visible }, className), ...props, children });
1117
- }
1118
- );
1119
- ActionsContent.displayName = "@optiaxiom/react/ActionsContent";
1120
-
1121
- var root = Skeleton.recipeRuntime({base:'re99jm'});
1122
-
1123
- const ActionsRoot = React.forwardRef(
1124
- ({ children, className, ...props }, ref) => {
1125
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ref, ...root({}, className), ...props, children });
1126
- }
1127
- );
1128
- ActionsRoot.displayName = "@optiaxiom/react/ActionsRoot";
1129
-
1130
- var card = Skeleton.recipeRuntime({base:['lj70da',{border:'1',borderColor:'border.tertiary',color:'fg.default',gap:'12',p:'16',transition:'transform'},'s3ox8w']});
1131
-
1132
- const [CardProvider, useCardContext] = reactContext.createContext("@optiaxiom/react/Card");
1133
-
1134
- const mapOrientationToFlexDirection = {
1135
- horizontal: "row",
1136
- vertical: "column"
1137
- };
1138
- const Card = React.forwardRef(
1139
- ({ children, className, orientation = "vertical", ...props }, ref) => {
1140
- const descriptionId = reactId.useId();
1141
- const labelId = reactId.useId();
1142
- return /* @__PURE__ */ jsxRuntime.jsx(
1143
- CardProvider,
1144
- {
1145
- descriptionId,
1146
- labelId,
1147
- orientation,
1148
- children: /* @__PURE__ */ jsxRuntime.jsx(ActionsRoot, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(
1149
- Skeleton.Flex,
1150
- {
1151
- flexDirection: mapOrientationToFlexDirection[orientation],
1152
- ref,
1153
- ...card({}, className),
1154
- ...props,
1155
- children
1156
- }
1157
- ) })
1158
- }
1159
- );
1160
- }
1161
- );
1162
- Card.displayName = "@optiaxiom/react/Card";
1163
-
1164
- var action = Skeleton.recipeRuntime({base:['_1eub4el']});
1165
-
1166
- const CardAction = React.forwardRef(
1167
- ({ children, className, ...props }, ref) => {
1168
- return /* @__PURE__ */ jsxRuntime.jsx(ActionsContent, { ref, ...action({}, className), ...props, children });
1169
- }
1170
- );
1171
- CardAction.displayName = "@optiaxiom/react/CardAction";
1172
-
1173
- const CardCheckbox = React.forwardRef(
1174
- ({ children, indeterminate, onChange, ...props }, ref) => {
1175
- const labelPrefixId = reactId.useId();
1176
- const { labelId } = useCardContext("@optiaxiom/react/CardCheckbox");
1177
- const [checked, setChecked] = reactUseControllableState.useControllableState({
1178
- caller: "@optiaxiom/react/CardCheckbox",
1179
- defaultProp: props.defaultChecked,
1180
- prop: props.checked
1181
- });
1182
- return /* @__PURE__ */ jsxRuntime.jsxs(
1183
- Skeleton.CheckboxRoot,
1184
- {
1185
- "aria-labelledby": clsx(labelPrefixId, labelId),
1186
- description: false,
1187
- onChange: (event) => {
1188
- onChange?.(event);
1189
- setChecked(event.target.checked);
1190
- },
1191
- ref,
1192
- ...props,
1193
- children: [
1194
- /* @__PURE__ */ jsxRuntime.jsx(
1195
- Skeleton.CheckboxControl,
1196
- {
1197
- indeterminate,
1198
- shift: Boolean(children)
1199
- }
1200
- ),
1201
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.VisuallyHidden, { children: /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Box, { id: labelPrefixId, children: [
1202
- "Check to ",
1203
- checked ? "unselect" : "select"
1204
- ] }) })
1205
- ]
1206
- }
1207
- );
1208
- }
1209
- );
1210
- CardCheckbox.displayName = "@optiaxiom/react/CardCheckbox";
1211
-
1212
- const CardContent = React.forwardRef(
1213
- ({ children, ...props }, ref) => {
1214
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Flex, { gap: "4", ref, ...props, children });
1215
- }
1216
- );
1217
- CardContent.displayName = "@optiaxiom/react/CardContent";
1218
-
1219
- const CardDescription = React.forwardRef(({ children, ...props }, ref) => {
1220
- const { descriptionId } = useCardContext("@optiaxiom/react/CardDescription");
1221
- return /* @__PURE__ */ jsxRuntime.jsx(
1222
- Skeleton.Text,
1223
- {
1224
- color: "fg.tertiary",
1225
- fontSize: "sm",
1226
- id: descriptionId,
1227
- ref,
1228
- ...props,
1229
- children
1230
- }
1231
- );
1232
- });
1233
- CardDescription.displayName = "@optiaxiom/react/CardDescription";
1234
-
1235
- var cardImage = Skeleton.recipeRuntime({base:[{h:'full',rounded:'inherit'},'_18rpxgg'],variants:{orientation:{horizontal:[{w:'auto'},'_1gk33eh'],vertical:[{w:'full'},'_16rptlu']}}});
1236
-
1237
- const CardImage = React.forwardRef(
1238
- ({ alt = "", asChild, children, className, src, ...props }, ref) => {
1239
- const { orientation } = useCardContext("@optiaxiom/react/CardImage");
1240
- return /* @__PURE__ */ jsxRuntime.jsx(
1241
- Skeleton.Box,
1242
- {
1243
- asChild: true,
1244
- ref,
1245
- ...cardImage({ orientation }, className),
1246
- ...props,
1247
- children: asChild ? children : /* @__PURE__ */ jsxRuntime.jsx("img", { alt, src })
1248
- }
1249
- );
1250
- }
1251
- );
1252
- CardImage.displayName = "@optiaxiom/react/CardImage";
1253
-
1254
- const CardLink = React.forwardRef(
1255
- ({ ...props }, ref) => {
1256
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Link, { appearance: "subtle", overlay: true, ref, ...props });
1257
- }
1258
- );
1259
- CardLink.displayName = "@optiaxiom/react/CardLink";
1260
-
1261
- var cardOverflow = Skeleton.recipeRuntime({base:['ga9svo',{alignSelf:'stretch'},'_2tonc8'],variants:{orientation:{horizontal:['p9sf3s'],vertical:['_1vvec2h']}}});
1262
-
1263
- const CardOverflow = React.forwardRef(
1264
- ({ children, className, ...props }, ref) => {
1265
- const { orientation } = useCardContext("@optiaxiom/react/CardOverflow");
1266
- return /* @__PURE__ */ jsxRuntime.jsx(
1267
- Skeleton.Box,
1268
- {
1269
- ref,
1270
- ...cardOverflow({ orientation }, className),
1271
- ...props,
1272
- children
1273
- }
1274
- );
1275
- }
1276
- );
1277
- CardOverflow.displayName = "@optiaxiom/react/CardOverflow";
1278
-
1279
- const Slot$1 = reactSlot.createSlot("@optiaxiom/react/CardTitle");
1280
- const CardTitle = React.forwardRef(
1281
- ({ asChild, children, ...props }, ref) => {
1282
- const Comp = asChild ? Slot$1 : "h2";
1283
- const { labelId } = useCardContext("@optiaxiom/react/CardTitle");
1284
- return /* @__PURE__ */ jsxRuntime.jsx(
1285
- Skeleton.Heading,
1286
- {
1287
- asChild: true,
1288
- fontSize: "md",
1289
- fontWeight: "500",
1290
- id: labelId,
1291
- ref,
1292
- ...props,
1293
- children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { children })
1294
- }
1295
- );
1296
- }
1297
- );
1298
- CardTitle.displayName = "@optiaxiom/react/CardTitle";
1299
-
1300
- const resolveItemProperty = (property, ...context) => typeof property === "function" ? property(...context) : property;
1301
- const [CommandProvider, useCommandContext] = reactContext.createContext("@optiaxiom/react/Command");
1302
-
1303
- const collator = new Intl.Collator(void 0, {
1304
- sensitivity: "base",
1305
- usage: "search"
1306
- });
1307
- function fuzzysearch(haystack, needle) {
1308
- const hlen = haystack.length;
1309
- const nlen = needle.length;
1310
- if (nlen > hlen) {
1311
- return false;
1312
- }
1313
- if (nlen === hlen) {
1314
- return collator.compare(needle, haystack) === 0;
1315
- }
1316
- outer:
1317
- for (let i = 0, j = 0; i < nlen; i++) {
1318
- const nch = needle.charAt(i);
1319
- while (j < hlen) {
1320
- if (collator.compare(haystack.charAt(j++), nch) === 0) {
1321
- continue outer;
1322
- }
1323
- }
1324
- return false;
1325
- }
1326
- return true;
1327
- }
1328
-
1329
- const useCommandItems = ({
1330
- inputValue,
1331
- options
1332
- }) => {
1333
- const filterFn = Skeleton.useEffectEvent((item, inputValue2) => {
1334
- const string = resolveItemProperty(item.label, {
1335
- inputValue: inputValue2
1336
- }).normalize();
1337
- return "visible" in item ? resolveItemProperty(item.visible, { inputValue: inputValue2 }) : inputValue2 ? fuzzysearch(string, inputValue2) || item.keywords && fuzzysearch(item.keywords, inputValue2) : true;
1338
- });
1339
- return React.useMemo(() => {
1340
- const substring = (inputValue ?? "").normalize();
1341
- const callback = (parentOption) => (item) => {
1342
- return item.subOptions && substring ? item.subOptions.flatMap(callback(item)) : filterFn(item, substring) ? [
1343
- parentOption ? {
1344
- ...item,
1345
- parentOption
1346
- } : item
1347
- ] : [];
1348
- };
1349
- return options.flatMap(callback());
1350
- }, [options, filterFn, inputValue]);
1351
- };
1352
-
1353
- function Command({
1354
- children,
1355
- empty,
1356
- inputValue: inputValueProp,
1357
- loading,
1358
- onHover,
1359
- onInputValueChange,
1360
- onSelect: onItemSelect,
1361
- open,
1362
- options
1363
- }) {
1364
- const [inputValue, setInputValue] = reactUseControllableState.useControllableState({
1365
- caller: "@optiaxiom/react/Command",
1366
- defaultProp: "",
1367
- onChange: onInputValueChange,
1368
- prop: inputValueProp
1369
- });
1370
- const items = useCommandItems({ inputValue, options });
1371
- const [highlightedIndex, setHighlightedIndex, placed] = usePortalPatch(
1372
- open,
1373
- () => items.findIndex(
1374
- (item) => !resolveItemProperty(item.disabledReason) && resolveItemProperty(item.selected) && !item.multi
1375
- )
1376
- );
1377
- const pauseInteractionRef = React.useRef({
1378
- isInsideTriangle: null,
1379
- timer: void 0
1380
- });
1381
- const downshift$1 = downshift.useCombobox({
1382
- highlightedIndex: highlightedIndex === -1 ? items.findIndex((item) => !resolveItemProperty(item.disabledReason)) : highlightedIndex,
1383
- inputValue,
1384
- isItemDisabled: (item) => Boolean(resolveItemProperty(item?.disabledReason)),
1385
- isOpen: placed,
1386
- items,
1387
- itemToString: (item) => item !== null ? resolveItemProperty(item.label, { inputValue }) : "",
1388
- onHighlightedIndexChange({ highlightedIndex: highlightedIndex2, type }) {
1389
- if (type === downshift.useCombobox.stateChangeTypes.MenuMouseLeave) {
1390
- return;
1391
- }
1392
- setHighlightedIndex(highlightedIndex2);
1393
- if (highlightedIndex2 !== -1 && type === downshift.useCombobox.stateChangeTypes.ItemMouseMove) {
1394
- onHover?.(items[highlightedIndex2]);
1395
- }
1396
- },
1397
- onSelectedItemChange({ selectedItem, type }) {
1398
- if (type !== downshift.useCombobox.stateChangeTypes.InputBlur && selectedItem !== null) {
1399
- onItemSelect?.(selectedItem, {
1400
- close: type !== downshift.useCombobox.stateChangeTypes.FunctionSelectItem || !("selected" in selectedItem)
1401
- });
1402
- }
1403
- },
1404
- selectedItem: null,
1405
- stateReducer: (state, actionAndChanges) => {
1406
- const { changes, type } = actionAndChanges;
1407
- switch (type) {
1408
- case downshift.useCombobox.stateChangeTypes.InputBlur:
1409
- case downshift.useCombobox.stateChangeTypes.InputKeyDownEnter:
1410
- case downshift.useCombobox.stateChangeTypes.InputKeyDownEscape:
1411
- case downshift.useCombobox.stateChangeTypes.ItemClick:
1412
- return {
1413
- ...changes,
1414
- /**
1415
- * Keep the selected option highlighted rather than resetting to -1
1416
- * TODO: reset if activePath had values
1417
- */
1418
- highlightedIndex: state.highlightedIndex
1419
- };
1420
- default:
1421
- return changes;
1422
- }
1423
- }
1424
- });
1425
- downshift$1.getInputProps({}, { suppressRefError: true });
1426
- downshift$1.getMenuProps({}, { suppressRefError: true });
1427
- return /* @__PURE__ */ jsxRuntime.jsx(
1428
- CommandProvider,
1429
- {
1430
- downshift: downshift$1,
1431
- empty,
1432
- highlightedItem: items[downshift$1.highlightedIndex],
1433
- inputValue,
1434
- items,
1435
- loading,
1436
- pauseInteractionRef,
1437
- setHighlightedIndex,
1438
- setInputValue,
1439
- children
1440
- }
1441
- );
1442
- }
1443
- Command.displayName = "@optiaxiom/react/Command";
1444
-
1445
- const CommandInput = React.forwardRef(
1446
- ({ onKeyDown, size, ...props }, ref) => {
1447
- const { downshift, highlightedItem, setInputValue } = useCommandContext(
1448
- "@optiaxiom/react/CommandInput"
1449
- );
1450
- const setInputValueStable = Skeleton.useEffectEvent(setInputValue);
1451
- React.useEffect(() => {
1452
- setInputValueStable("");
1453
- }, [setInputValueStable]);
1454
- return /* @__PURE__ */ jsxRuntime.jsx(
1455
- Skeleton.Input,
1456
- {
1457
- addonBefore: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconMagnifyingGlass, {}),
1458
- htmlSize: 1,
1459
- size,
1460
- ...downshift.getInputProps({
1461
- ref,
1462
- ...props,
1463
- onChange: (event) => {
1464
- setInputValue("value" in event.target ? event.target.value : "");
1465
- },
1466
- onKeyDown: (event) => {
1467
- onKeyDown?.(event);
1468
- if (event.defaultPrevented) {
1469
- return;
1470
- }
1471
- if (!(event.target instanceof HTMLInputElement)) {
1472
- return;
1473
- }
1474
- if (event.target.value) {
1475
- return;
1476
- }
1477
- if (!highlightedItem) {
1478
- return;
1479
- }
1480
- const subOptions = highlightedItem.subOptions;
1481
- if (event.key === " ") {
1482
- event.preventDefault();
1483
- downshift.selectItem(highlightedItem);
1484
- } else if (event.key === "ArrowRight" && subOptions?.length) {
1485
- event.preventDefault();
1486
- downshift.selectItem(highlightedItem);
1487
- }
1488
- }
1489
- })
1490
- }
1491
- );
1492
- }
1493
- );
1494
- CommandInput.displayName = "@optiaxiom/react/CommandInput";
1495
-
1496
- const CommandItem = React.forwardRef(
1497
- ({ asChild, children, item, selected, size, ...props }, ref) => {
1498
- const { downshift, highlightedItem, inputValue, pauseInteractionRef } = useCommandContext("@optiaxiom/react/CommandItem");
1499
- const itemProps = downshift.getItemProps({
1500
- "aria-selected": selected ?? resolveItemProperty(item.selected),
1501
- item,
1502
- onClick: (event) => {
1503
- if (event.currentTarget instanceof HTMLAnchorElement) {
1504
- event.preventDefault();
1505
- }
1506
- },
1507
- onMouseMove: (event) => {
1508
- if (resolveItemProperty(item.disabledReason)) {
1509
- event.preventDefault();
1510
- Object.assign(event.nativeEvent, {
1511
- preventDownshiftDefault: true
1512
- });
1513
- return;
1514
- }
1515
- if (!pauseInteractionRef.current.isInsideTriangle) {
1516
- return;
1517
- }
1518
- if (pauseInteractionRef.current.isInsideTriangle({
1519
- x: event.clientX,
1520
- y: event.clientY
1521
- })) {
1522
- event.preventDefault();
1523
- Object.assign(event.nativeEvent, {
1524
- preventDownshiftDefault: true
1525
- });
1526
- window.clearTimeout(pauseInteractionRef.current.timer);
1527
- pauseInteractionRef.current.timer = window.setTimeout(() => {
1528
- pauseInteractionRef.current.isInsideTriangle = null;
1529
- }, 50);
1530
- } else {
1531
- pauseInteractionRef.current.isInsideTriangle = null;
1532
- }
1533
- },
1534
- ref,
1535
- ...props
1536
- });
1537
- const detail = resolveItemProperty(item.detail, { inputValue });
1538
- return /* @__PURE__ */ jsxRuntime.jsx(
1539
- Skeleton.Box,
1540
- {
1541
- asChild,
1542
- "data-disabled": itemProps["aria-disabled"] ? "" : void 0,
1543
- "data-highlighted": highlightedItem === item ? "" : void 0,
1544
- size,
1545
- tabIndex: -1,
1546
- ...itemProps,
1547
- ...item.link && { href: item.link },
1548
- children: Skeleton.decorateChildren(
1549
- { asChild, children },
1550
- (children2) => children2 ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1551
- item.parentOption && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1552
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { color: "fg.secondary", children: resolveItemProperty(item.parentOption.label, {
1553
- inputValue
1554
- }) }),
1555
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, h: "10", w: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconAngleRight, {}) })
1556
- ] }),
1557
- resolveItemProperty(item.label, { inputValue }),
1558
- detail && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { color: "fg.secondary", children: detail })
1559
- ] })
1560
- )
1561
- }
1562
- );
1563
- }
1564
- );
1565
- CommandItem.displayName = "@optiaxiom/react/CommandItem";
1566
-
1567
- const CommandListbox = React.forwardRef(
1568
- ({ children, size, ...props }, ref) => {
1569
- const { downshift, highlightedItem, inputValue, items } = useCommandContext(
1570
- "@optiaxiom/react/CommandListbox"
1571
- );
1572
- const [placed, setPlaced] = React.useState(false);
1573
- return /* @__PURE__ */ jsxRuntime.jsx(
1574
- Skeleton.ListboxItemized,
1575
- {
1576
- highlightedItem,
1577
- items,
1578
- itemToKey: (item) => item.key ?? resolveItemProperty(item.label, { inputValue }),
1579
- onPlacedChange: setPlaced,
1580
- placed,
1581
- size,
1582
- ...downshift.getMenuProps({ ref, ...props }),
1583
- children
1584
- }
1585
- );
1586
- }
1587
- );
1588
- CommandListbox.displayName = "@optiaxiom/react/CommandListbox";
1589
-
1590
- const [DataTableProvider, useDataTableContext] = reactContext.createContext("@optiaxiom/react/DataTable");
1591
-
1592
- const DataTable = React.forwardRef(
1593
- ({ children, table, ...props }, ref) => {
1594
- return /* @__PURE__ */ jsxRuntime.jsx(
1595
- Skeleton.Flex,
1596
- {
1597
- gap: "8",
1598
- justifyContent: "flex-start",
1599
- maxH: "full",
1600
- maxW: "full",
360
+ fontSize: "md",
361
+ fontWeight: "500",
362
+ id: labelId,
1601
363
  ref,
1602
364
  ...props,
1603
- children: /* @__PURE__ */ jsxRuntime.jsx(DataTableProvider, { table, children })
365
+ children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { children })
1604
366
  }
1605
367
  );
1606
368
  }
1607
369
  );
1608
- DataTable.displayName = "@optiaxiom/react/DataTable";
1609
-
1610
- var table$1 = Skeleton.recipeRuntime({base:[{color:'fg.default',fontSize:'md',w:'full'},'f5796h'],variants:{layout:{auto:['_17b57sq'],fixed:[{display:'grid'},'thp50y']}}});
1611
- var wrapper = Skeleton.recipeRuntime({base:[{bg:'bg.default',border:'1',borderColor:'border.tertiary',maxW:'full',overflow:'auto',rounded:'lg'},'_1rxs1cd']});
1612
-
1613
- const Table = React.forwardRef(
1614
- ({ children, className, layout = "auto", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ...wrapper({}, className), ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...table$1({ layout }), children: /* @__PURE__ */ jsxRuntime.jsx("table", { children }) }) })
1615
- );
1616
- Table.displayName = "@optiaxiom/react/Table";
1617
-
1618
- const TableAction = React.forwardRef(
1619
- (props, ref) => {
1620
- return /* @__PURE__ */ jsxRuntime.jsx(ActionsContent, { ref, ...props });
1621
- }
1622
- );
1623
- TableAction.displayName = "@optiaxiom/react/TableAction";
1624
-
1625
- var body = Skeleton.recipeRuntime({base:['lfsxf7']});
1626
-
1627
- const TableBody = React.forwardRef(
1628
- ({ children, className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...body({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx("tbody", { ref, children }) })
1629
- );
1630
- TableBody.displayName = "@optiaxiom/react/TableBody";
1631
-
1632
- var cell$2 = Skeleton.recipeRuntime({base:[{borderColor:'border.tertiary',p:'16'},'_14l0b33']});
1633
-
1634
- const TableCell = React.forwardRef(
1635
- ({ children, className, colSpan, ...props }, ref) => {
1636
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...cell$2({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx("td", { colSpan, ref, children }) });
1637
- }
1638
- );
1639
- TableCell.displayName = "@optiaxiom/react/TableCell";
1640
-
1641
- const TableHeader = React.forwardRef(({ children, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...props, children: /* @__PURE__ */ jsxRuntime.jsx("thead", { ref, children }) }));
1642
- TableHeader.displayName = "@optiaxiom/react/TableHeader";
1643
-
1644
- var cell$1 = Skeleton.recipeRuntime({base:'_1k0j3hu'});
1645
- var content$1 = Skeleton.recipeRuntime({base:[{alignItems:'center',bg:'bg.default',color:'fg.tertiary',display:'flex',fontSize:'sm',fontWeight:'400',size:'full'},'_13zb7je']});
1646
-
1647
- const TableHeaderCell = React.forwardRef(
1648
- ({ children, className, colSpan, p, px = "16", py = "12", ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...cell$1({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx("th", { colSpan, ref, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ...content$1(), px: p ?? px, py: p ?? py, children }) }) })
1649
- );
1650
- TableHeaderCell.displayName = "@optiaxiom/react/TableHeaderCell";
1651
-
1652
- var row = Skeleton.recipeRuntime({base:['_2290y2',{transition:'colors',w:'full'},'_2xdnof']});
1653
-
1654
- const TableRow = React.forwardRef(
1655
- ({ children, className, ...props }, ref) => /* @__PURE__ */ jsxRuntime.jsx(ActionsRoot, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...row({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx("tr", { ref, children }) }) })
1656
- );
1657
- TableRow.displayName = "@optiaxiom/react/TableRow";
1658
-
1659
- var cell = Skeleton.recipeRuntime({base:[{alignItems:'start',display:'flex'},'_1m4udcq'],variants:{pinned:{left:'dn5wae',right:'_1mehsjg'},pinnedType:{body:'iktydb',header:{}}}});
1660
- var cellOffsetVar = 'var(--vcjzw)';
1661
- var cellSizeVar = 'var(--o9mv9v)';
1662
- var header = Skeleton.recipeRuntime({base:[{display:'grid'},'_2snwe2']});
1663
- var leftTotalSizeVar = 'var(--_4mhe59)';
1664
- var rightTotalSizeVar = 'var(--_1xvgvzn)';
1665
- var table = Skeleton.recipeRuntime({base:'xlelnu',variants:{pinned:{both:'_1r443se',left:'_17yaj58',none:{},right:'fh2cqt'}}});
1666
-
1667
- const IconSort = Skeleton.withIcon(
1668
- {
1669
- height: 12,
1670
- name: "IconSort",
1671
- width: 14
1672
- },
1673
- /* @__PURE__ */ jsxRuntime.jsx(
1674
- "path",
1675
- {
1676
- d: "M3.88274 5.25H10.0937C10.6562 5.25 10.9609 4.57031 10.539 4.14844L7.44524 0.960938C7.32805 0.820312 7.16399 0.75 6.99993 0.75C6.83586 0.75 6.64836 0.820312 6.53118 0.960938L3.43743 4.14844C3.01555 4.57031 3.32024 5.25 3.88274 5.25ZM10.0937 6.75H3.88274C3.32024 6.75 3.01555 7.45312 3.43743 7.875L6.53118 11.0625C6.64836 11.2031 6.81243 11.25 6.99993 11.25C7.16399 11.25 7.32805 11.2031 7.44524 11.0625L10.539 7.875C10.9609 7.45312 10.6562 6.75 10.0937 6.75Z",
1677
- fill: "currentColor"
1678
- }
1679
- )
1680
- );
1681
-
1682
- const IconSortDown = Skeleton.withIcon(
1683
- {
1684
- height: 12,
1685
- name: "IconSortDown",
1686
- width: 14
1687
- },
1688
- /* @__PURE__ */ jsxRuntime.jsx(
1689
- "path",
1690
- {
1691
- d: "M10.5156 5.78906L7.53907 8.78906C7.375 8.92969 7.1875 9 7 9C6.78907 9 6.60157 8.92969 6.46094 8.78906L3.48438 5.78906C3.25 5.57812 3.17969 5.25 3.29688 4.96875C3.41407 4.6875 3.69532 4.5 4 4.5H9.97657C10.2813 4.5 10.5391 4.6875 10.6563 4.96875C10.7734 5.25 10.7266 5.57812 10.5156 5.78906Z",
1692
- fill: "currentColor"
1693
- }
1694
- )
1695
- );
1696
-
1697
- const IconSortUp = Skeleton.withIcon(
1698
- {
1699
- height: 12,
1700
- name: "IconSortUp",
1701
- width: 14
1702
- },
1703
- /* @__PURE__ */ jsxRuntime.jsx(
1704
- "path",
1705
- {
1706
- d: "M3.46099 6.23438L6.43756 3.23438C6.60162 3.09375 6.78912 3 7.00006 3C7.18756 3 7.37506 3.09375 7.51568 3.23438L10.4922 6.23438C10.7032 6.44531 10.7735 6.77344 10.6563 7.05469C10.5391 7.33594 10.2813 7.5 9.97662 7.5H4.00006C3.69537 7.5 3.41412 7.33594 3.29693 7.05469C3.17974 6.77344 3.25006 6.44531 3.46099 6.23438Z",
1707
- fill: "currentColor"
1708
- }
1709
- )
1710
- );
370
+ CardTitle.displayName = "@optiaxiom/react/CardTitle";
1711
371
 
1712
- var button$1 = Skeleton.recipeRuntime({base:[{alignItems:'center',display:'flex',gap:'4',justifyContent:'flex-start',rounded:'md',textAlign:'start',transition:'colors',w:'full'},'_4bsdfs']});
1713
- var handle = Skeleton.recipeRuntime({base:[{h:'full',z:'10'},'bs5vyn'],variants:{resizing:{false:{},true:{borderColor:'border.focus'}}}});
1714
- var icon = Skeleton.recipeRuntime({base:[{h:'12',mx:'2',transition:'opacity'},'_4d088f'],variants:{active:{false:'_15f0ff2',true:'_1ds5m0l'}}});
372
+ const resolveItemProperty = (property, ...context) => typeof property === "function" ? property(...context) : property;
373
+ const [CommandProvider, useCommandContext] = reactContext.createContext("@optiaxiom/react/Command");
1715
374
 
1716
- const DataTableHeaderCell = React.forwardRef(({ children, header, ...props }, ref) => {
1717
- const sortDir = header.column.getIsSorted();
1718
- return /* @__PURE__ */ jsxRuntime.jsx(ActionsRoot, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsxs(
1719
- TableHeaderCell,
1720
- {
1721
- "aria-sort": header.column.columnDef.enableSorting ? sortDir === false ? "none" : sortDir === "asc" ? "ascending" : "descending" : void 0,
1722
- colSpan: header.colSpan,
1723
- ref,
1724
- ...props,
1725
- children: [
1726
- header.column.columnDef.enableResizing && /* @__PURE__ */ jsxRuntime.jsx(ActionsContent, { visible: header.column.getIsResizing(), children: /* @__PURE__ */ jsxRuntime.jsx(
1727
- Skeleton.Separator,
1728
- {
1729
- onDoubleClick: () => header.column.resetSize(),
1730
- onMouseDown: header.getResizeHandler(),
1731
- onTouchStart: header.getResizeHandler(),
1732
- orientation: "vertical",
1733
- style: {
1734
- transform: header.getContext().table.options.columnResizeMode === "onEnd" && header.column.getIsResizing() ? `translateX(${header.getContext().table.getState().columnSizingInfo.deltaOffset}px)` : ""
1735
- },
1736
- ...handle({
1737
- resizing: header.column.getIsResizing()
1738
- })
1739
- }
1740
- ) }),
1741
- header.column.columnDef.enableSorting ? /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Cover, { asChild: true, inset: true, ...button$1(), children: /* @__PURE__ */ jsxRuntime.jsxs("button", { onClick: () => header.column.toggleSorting(), children: [
1742
- children,
1743
- sortDir && /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.VisuallyHidden, { children: [
1744
- "sorted ",
1745
- sortDir === "asc" ? "ascending" : "descending"
1746
- ] }),
1747
- /* @__PURE__ */ jsxRuntime.jsxs(
1748
- ActionsContent,
1749
- {
1750
- display: "grid",
1751
- placeItems: "center",
1752
- visible: !!sortDir,
1753
- children: [
1754
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Icon, { asChild: true, ...icon({ active: sortDir === false }), children: /* @__PURE__ */ jsxRuntime.jsx(IconSort, {}) }),
1755
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Icon, { asChild: true, ...icon({ active: sortDir === "asc" }), children: /* @__PURE__ */ jsxRuntime.jsx(IconSortUp, {}) }),
1756
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Icon, { asChild: true, ...icon({ active: sortDir === "desc" }), children: /* @__PURE__ */ jsxRuntime.jsx(IconSortDown, {}) })
1757
- ]
1758
- }
1759
- )
1760
- ] }) }) : children
1761
- ]
1762
- }
1763
- ) });
375
+ const collator = new Intl.Collator(void 0, {
376
+ sensitivity: "base",
377
+ usage: "search"
1764
378
  });
1765
- DataTableHeaderCell.displayName = "@optiaxiom/react/DataTableHeaderCell";
1766
-
1767
- const COL_VIRTUALIZATION_THRESHOLD = 20;
1768
- const ROW_VIRTUALIZATION_THRESHOLD = 20;
1769
- const DataTableBody = React.forwardRef(
1770
- ({ className, estimatedRowHeight = 52, loading, ...props }, outerRef) => {
1771
- const innerRef = React.useRef(null);
1772
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1773
- const { table: table$1 } = useDataTableContext("@optiaxiom/react/DataTableBody");
1774
- const { rows } = table$1.getRowModel();
1775
- const centerColumns = table$1.getCenterVisibleLeafColumns();
1776
- const columnVirtualizer = reactVirtual.useVirtualizer({
1777
- count: centerColumns.length,
1778
- enabled: centerColumns.length > COL_VIRTUALIZATION_THRESHOLD,
1779
- estimateSize: (index) => centerColumns[index].getSize(),
1780
- getScrollElement: () => innerRef.current,
1781
- horizontal: true
1782
- });
1783
- const virtualColumns = columnVirtualizer.getVirtualItems();
1784
- const virtualColumnsOffset = virtualColumns[0]?.start ?? 0;
1785
- const rowVirtualizer = reactVirtual.useVirtualizer({
1786
- count: rows.length,
1787
- enabled: centerColumns.length > COL_VIRTUALIZATION_THRESHOLD || rows.length > ROW_VIRTUALIZATION_THRESHOLD,
1788
- estimateSize: () => estimatedRowHeight,
1789
- getScrollElement: () => innerRef.current
1790
- });
1791
- return /* @__PURE__ */ jsxRuntime.jsxs(
1792
- Table,
1793
- {
1794
- layout: "fixed",
1795
- ref,
1796
- style: dynamic.assignInlineVars({
1797
- [leftTotalSizeVar]: `${table$1.getLeftTotalSize()}px`,
1798
- [rightTotalSizeVar]: `${table$1.getRightTotalSize()}px`
1799
- }),
1800
- ...table(
1801
- {
1802
- pinned: table$1.getLeftTotalSize() > 0 && table$1.getRightTotalSize() > 0 ? "both" : table$1.getLeftTotalSize() > 0 ? "left" : table$1.getRightTotalSize() > 0 ? "right" : "none"
1803
- },
1804
- className
1805
- ),
1806
- ...props,
1807
- children: [
1808
- /* @__PURE__ */ jsxRuntime.jsx(TableHeader, { ...header(), children: table$1.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsxRuntime.jsxs(TableRow, { display: "flex", children: [
1809
- headerGroup.headers.map((header) => /* @__PURE__ */ jsxRuntime.jsx(
1810
- DataTableHeaderCell,
1811
- {
1812
- header,
1813
- style: {
1814
- ...dynamic.assignInlineVars({
1815
- [cellOffsetVar]: `${header.column.getStart(header.column.getIsPinned() || "left")}px`,
1816
- [cellSizeVar]: `${header.getSize()}px`
1817
- })
1818
- },
1819
- ...cell({
1820
- pinned: header.column.getIsPinned() || void 0,
1821
- pinnedType: header.column.getIsPinned() ? "header" : void 0
1822
- }),
1823
- children: header.isPlaceholder ? null : reactTable.flexRender(
1824
- header.column.columnDef.header,
1825
- header.getContext()
1826
- )
1827
- },
1828
- header.id
1829
- )),
1830
- /* @__PURE__ */ jsxRuntime.jsx(TableHeaderCell, { flex: "1", p: "0", w: "0" })
1831
- ] }, headerGroup.id)) }),
1832
- /* @__PURE__ */ jsxRuntime.jsx(
1833
- TableBody,
1834
- {
1835
- display: "grid",
1836
- style: rowVirtualizer.options.enabled ? { height: `${rowVirtualizer.getTotalSize()}px` } : void 0,
1837
- children: (loading ? Array.from({ length: 10 }, (_, rowIndex) => ({
1838
- row: fakeRow(table$1, rowIndex),
1839
- virtualRow: void 0
1840
- })) : rowVirtualizer.options.enabled ? rowVirtualizer.getVirtualItems().map((virtualRow) => ({
1841
- row: rows[virtualRow.index],
1842
- virtualRow
1843
- })) : rows.map((row) => ({ row, virtualRow: void 0 }))).map(({ row, virtualRow }) => /* @__PURE__ */ jsxRuntime.jsxs(
1844
- TableRow,
1845
- {
1846
- "data-highlighted": row.getIsSelected() ? "" : void 0,
1847
- "data-index": virtualRow?.index,
1848
- display: "flex",
1849
- ref: virtualRow ? rowVirtualizer.measureElement : void 0,
1850
- style: virtualRow ? {
1851
- minHeight: virtualRow.size,
1852
- position: "absolute",
1853
- transform: `translateY(${virtualRow.start}px)`
1854
- } : void 0,
1855
- children: [
1856
- row.getLeftVisibleCells().map((cell$1) => /* @__PURE__ */ jsxRuntime.jsx(
1857
- TableCell,
1858
- {
1859
- style: {
1860
- ...dynamic.assignInlineVars({
1861
- [cellOffsetVar]: `${cell$1.column.getStart("left")}px`,
1862
- [cellSizeVar]: `${cell$1.column.getSize()}px`
1863
- })
1864
- },
1865
- ...cell({
1866
- pinned: "left",
1867
- pinnedType: "body"
1868
- }),
1869
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Skeleton, { w: fakeCellWidth(cell$1.id) }) : reactTable.flexRender(cell$1.column.columnDef.cell, cell$1.getContext())
1870
- },
1871
- cell$1.id
1872
- )),
1873
- columnVirtualizer.options.enabled && virtualColumnsOffset > 0 && /* @__PURE__ */ jsxRuntime.jsx(TableCell, { style: { width: virtualColumnsOffset } }),
1874
- (columnVirtualizer.options.enabled ? virtualColumns.map((virtualCell) => {
1875
- const cells = row.getCenterVisibleCells();
1876
- return cells[virtualCell.index];
1877
- }) : row.getCenterVisibleCells()).map((cell$1) => /* @__PURE__ */ jsxRuntime.jsx(
1878
- TableCell,
1879
- {
1880
- style: {
1881
- ...dynamic.assignInlineVars({
1882
- [cellSizeVar]: `${cell$1.column.getSize()}px`
1883
- })
1884
- },
1885
- ...cell(),
1886
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Skeleton, { w: fakeCellWidth(cell$1.id) }) : reactTable.flexRender(cell$1.column.columnDef.cell, cell$1.getContext())
1887
- },
1888
- cell$1.id
1889
- )),
1890
- row.getRightVisibleCells().map((cell$1) => /* @__PURE__ */ jsxRuntime.jsx(
1891
- TableCell,
1892
- {
1893
- style: {
1894
- ...dynamic.assignInlineVars({
1895
- [cellOffsetVar]: `${cell$1.column.getStart("right")}px`,
1896
- [cellSizeVar]: `${cell$1.column.getSize()}px`
1897
- })
1898
- },
1899
- ...cell({
1900
- pinned: "right",
1901
- pinnedType: "body"
1902
- }),
1903
- children: loading ? /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Skeleton, { w: fakeCellWidth(cell$1.id) }) : reactTable.flexRender(cell$1.column.columnDef.cell, cell$1.getContext())
1904
- },
1905
- cell$1.id
1906
- )),
1907
- /* @__PURE__ */ jsxRuntime.jsx(TableCell, { flex: "1", p: "0", w: "0" })
1908
- ]
1909
- },
1910
- row.id
1911
- ))
1912
- }
1913
- )
1914
- ]
1915
- }
1916
- );
379
+ function fuzzysearch(haystack, needle) {
380
+ const hlen = haystack.length;
381
+ const nlen = needle.length;
382
+ if (nlen > hlen) {
383
+ return false;
1917
384
  }
1918
- );
1919
- DataTableBody.displayName = "@optiaxiom/react/DataTableBody";
1920
- const fakeCellsFactory = (columns, rowIndex) => () => columns.map((column, columnIndex) => ({
1921
- column,
1922
- getContext: () => ({}),
1923
- id: column.id + "-" + ["1/2", "full", "3/4"][(rowIndex + columnIndex) % 3]
1924
- }));
1925
- const fakeCellWidth = (id) => id.split("-")[1];
1926
- const fakeRow = (table, rowIndex) => ({
1927
- getCenterVisibleCells: fakeCellsFactory(
1928
- table.getCenterVisibleLeafColumns(),
1929
- rowIndex
1930
- ),
1931
- getIsSelected: () => false,
1932
- getLeftVisibleCells: fakeCellsFactory(
1933
- table.getLeftVisibleLeafColumns(),
1934
- rowIndex
1935
- ),
1936
- getRightVisibleCells: fakeCellsFactory(
1937
- table.getRightVisibleLeafColumns(),
1938
- rowIndex
1939
- ),
1940
- id: "loading" + rowIndex
1941
- });
1942
-
1943
- var addon = Skeleton.recipeRuntime({base:'_1ivxycp',variants:{position:{end:{textAlign:'end'},start:{}}}});
1944
-
1945
- const DEFAULT_PAGE_SIZES = ["10", "20", "30", "50", "100"].map((size) => ({
1946
- label: size,
1947
- value: size
1948
- }));
1949
- const DataTableFooter = React.forwardRef(
1950
- ({ pageSizeOptions = DEFAULT_PAGE_SIZES, showPageSizeOptions, ...props }, ref) => {
1951
- const { table } = useDataTableContext("@optiaxiom/react/DataTableFooter");
1952
- const { pagination } = table.getState();
1953
- const pageSizeId = reactId.useId();
1954
- return /* @__PURE__ */ jsxRuntime.jsxs(
1955
- Skeleton.Flex,
1956
- {
1957
- alignSelf: "stretch",
1958
- flexDirection: "row",
1959
- fontSize: "md",
1960
- justifyContent: "space-between",
1961
- mt: "auto",
1962
- ref,
1963
- ...props,
1964
- children: [
1965
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ...addon({ position: "start" }), children: showPageSizeOptions && /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { flexDirection: "row", gap: "8", children: [
1966
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { color: "fg.secondary", id: pageSizeId, children: "Page Size" }),
1967
- /* @__PURE__ */ jsxRuntime.jsxs(
1968
- Select,
1969
- {
1970
- onValueChange: (value) => value && table.setPageSize(parseFloat(value)),
1971
- options: pageSizeOptions,
1972
- value: pagination.pageSize.toString(),
1973
- children: [
1974
- /* @__PURE__ */ jsxRuntime.jsx(
1975
- SelectTrigger,
1976
- {
1977
- appearance: "subtle",
1978
- "aria-labelledby": pageSizeId
1979
- }
1980
- ),
1981
- /* @__PURE__ */ jsxRuntime.jsx(SelectContent, {})
1982
- ]
1983
- }
1984
- )
1985
- ] }) }),
1986
- table.getPageCount() > 1 && /* @__PURE__ */ jsxRuntime.jsx(
1987
- Skeleton.Pagination,
1988
- {
1989
- onPageChange: (newPage) => table.setPageIndex(newPage - 1),
1990
- page: pagination.pageIndex + 1,
1991
- total: table.getPageCount()
1992
- }
1993
- ),
1994
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { ...addon({ position: "end" }), children: table.getRowCount() > 0 && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
1995
- pagination.pageIndex * pagination.pageSize + 1,
1996
- " -",
1997
- " ",
1998
- Math.min(
1999
- (pagination.pageIndex + 1) * pagination.pageSize,
2000
- table.getRowCount()
2001
- ),
2002
- " ",
2003
- "of ",
2004
- table.getRowCount()
2005
- ] }) })
2006
- ]
2007
- }
2008
- );
385
+ if (nlen === hlen) {
386
+ return collator.compare(needle, haystack) === 0;
2009
387
  }
2010
- );
2011
- DataTableFooter.displayName = "@optiaxiom/react/DataTableFooter";
2012
-
2013
- const IconCalendar = Skeleton.withIcon(
2014
- {
2015
- name: "IconCalendar"
2016
- },
2017
- /* @__PURE__ */ jsxRuntime.jsx(
2018
- "path",
2019
- {
2020
- clipRule: "evenodd",
2021
- d: "M13.5 0.5C13.5 0.223858 13.2761 0 13 0C12.7239 0 12.5 0.223858 12.5 0.5V2H7.5V0.5C7.5 0.223858 7.27614 0 7 0C6.72386 0 6.5 0.223858 6.5 0.5V2H5.33333C4.04467 2 3 3.04467 3 4.33333V13.6667C3 14.9553 4.04467 16 5.33333 16H14.6667C15.9553 16 17 14.9553 17 13.6667V4.33333C17 3.04467 15.9553 2 14.6667 2H13.5V0.5ZM5.33333 3H7H13H14.6667C15.403 3 16 3.59695 16 4.33333V5.16666H4V4.33333C4 3.59695 4.59695 3 5.33333 3ZM4 6.16666V13.6667C4 14.403 4.59695 15 5.33333 15H14.6667C15.403 15 16 14.403 16 13.6667V6.16666H4Z",
2022
- fill: "currentColor",
2023
- fillRule: "evenodd"
2024
- }
2025
- )
2026
- );
2027
-
2028
- var input$2 = Skeleton.recipeRuntime({base:'_15dofjc'});
2029
- var picker = Skeleton.recipeRuntime({base:'bjnqfm'});
2030
-
2031
- const DateInput = React.forwardRef(
2032
- ({
2033
- disabled,
2034
- holiday,
2035
- max,
2036
- min,
2037
- onChange,
2038
- step,
2039
- type = "date",
2040
- weekend,
2041
- ...props
2042
- }, outerRef) => {
2043
- const [open, setOpen] = React.useState(false);
2044
- const hasInteractedOutsideRef = React.useRef(false);
2045
- const pickerRef = React.useRef(null);
2046
- const innerRef = React.useRef(null);
2047
- const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
2048
- const [value, setValue] = reactUseControllableState.useControllableState({
2049
- caller: "@optiaxiom/react/DateInput",
2050
- defaultProp: props.defaultValue,
2051
- prop: props.value
2052
- });
2053
- const forceValueChange = Skeleton.useObserveValue(innerRef, setValue);
2054
- const instant = typeof value === "string" ? toInstant(value) ?? null : null;
2055
- const maxDate = max ? toInstant(max) : void 0;
2056
- const minDate = min ? toInstant(min) : void 0;
2057
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Popover, { onOpenChange: setOpen, open: !disabled && open, children: [
2058
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.PopoverAnchor, { children: /* @__PURE__ */ jsxRuntime.jsx(
2059
- Skeleton.Input,
2060
- {
2061
- addonAfter: !disabled && /* @__PURE__ */ jsxRuntime.jsx(
2062
- Skeleton.PopoverTrigger,
2063
- {
2064
- appearance: "subtle",
2065
- "aria-label": "Show date picker",
2066
- hasCustomAnchor: true,
2067
- icon: /* @__PURE__ */ jsxRuntime.jsx(IconCalendar, {}),
2068
- ref: pickerRef,
2069
- size: "sm",
2070
- ...picker()
2071
- }
2072
- ),
2073
- asChild: true,
2074
- disabled,
2075
- max,
2076
- min,
2077
- onChange: (event) => {
2078
- onChange?.(event);
2079
- setValue(event.target.value);
2080
- },
2081
- onClick: (e) => {
2082
- if (CSS.supports("selector(::-webkit-datetime-edit)")) {
2083
- e.preventDefault();
2084
- }
2085
- },
2086
- onKeyDown: (e) => {
2087
- if (e.key === " " && CSS.supports("selector(::-webkit-datetime-edit)")) {
2088
- e.preventDefault();
2089
- setOpen(true);
2090
- }
2091
- },
2092
- ref,
2093
- step,
2094
- type,
2095
- ...props,
2096
- children: /* @__PURE__ */ jsxRuntime.jsx("input", { ...input$2() })
2097
- }
2098
- ) }),
2099
- /* @__PURE__ */ jsxRuntime.jsxs(
2100
- Skeleton.PopoverContent,
2101
- {
2102
- gap: "8",
2103
- onCloseAutoFocus: (event) => {
2104
- if (hasInteractedOutsideRef.current) {
2105
- hasInteractedOutsideRef.current = false;
2106
- } else {
2107
- event.preventDefault();
2108
- innerRef.current?.focus();
2109
- }
2110
- },
2111
- onInteractOutside: (event) => {
2112
- if (!(event.target instanceof Node && pickerRef.current?.contains(event.target))) {
2113
- hasInteractedOutsideRef.current = true;
2114
- }
2115
- },
2116
- children: [
2117
- /* @__PURE__ */ jsxRuntime.jsx(
2118
- Calendar,
2119
- {
2120
- holiday,
2121
- max: maxDate,
2122
- min: minDate,
2123
- onValueChange: (date) => {
2124
- if (!date) {
2125
- return;
2126
- }
2127
- forceValueChange(
2128
- type === "datetime-local" ? toPlainDateTime(date) : toPlainDate(date)
2129
- );
2130
- if (type === "date") {
2131
- setOpen(false);
2132
- }
2133
- },
2134
- step,
2135
- type,
2136
- value: instant,
2137
- weekend
2138
- }
2139
- ),
2140
- (!props.required || type === "datetime-local") && /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { flexDirection: "row", justifyContent: "space-between", children: [
2141
- !props.required && /* @__PURE__ */ jsxRuntime.jsx(
2142
- Skeleton.Button,
2143
- {
2144
- onClick: () => {
2145
- forceValueChange("");
2146
- if (type === "date") {
2147
- setOpen(false);
2148
- }
2149
- },
2150
- children: "Clear"
2151
- }
2152
- ),
2153
- type === "datetime-local" && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Button, { appearance: "primary", onClick: () => setOpen(false), children: "Done" })
2154
- ] })
2155
- ]
388
+ outer:
389
+ for (let i = 0, j = 0; i < nlen; i++) {
390
+ const nch = needle.charAt(i);
391
+ while (j < hlen) {
392
+ if (collator.compare(haystack.charAt(j++), nch) === 0) {
393
+ continue outer;
2156
394
  }
2157
- )
2158
- ] });
2159
- }
2160
- );
2161
- DateInput.displayName = "@optiaxiom/react/DateInput";
395
+ }
396
+ return false;
397
+ }
398
+ return true;
399
+ }
2162
400
 
2163
- const [DatePickerProvider, useDatePickerContext] = reactContext.createContext("@optiaxiom/react/DatePicker");
401
+ const useCommandItems = ({
402
+ inputValue,
403
+ options
404
+ }) => {
405
+ const filterFn = IconMagnifyingGlass.useEffectEvent((item, inputValue2) => {
406
+ const string = resolveItemProperty(item.label, {
407
+ inputValue: inputValue2
408
+ }).normalize();
409
+ return "visible" in item ? resolveItemProperty(item.visible, { inputValue: inputValue2 }) : inputValue2 ? fuzzysearch(string, inputValue2) || item.keywords && fuzzysearch(item.keywords, inputValue2) : true;
410
+ });
411
+ return React.useMemo(() => {
412
+ const substring = (inputValue ?? "").normalize();
413
+ const callback = (parentOption) => (item) => {
414
+ return item.subOptions && substring ? item.subOptions.flatMap(callback(item)) : filterFn(item, substring) ? [
415
+ parentOption ? {
416
+ ...item,
417
+ key: [
418
+ parentOption.key ?? resolveItemProperty(parentOption.label, {
419
+ inputValue
420
+ }),
421
+ item.key ?? resolveItemProperty(item.label, { inputValue })
422
+ ].join("-"),
423
+ parentOption
424
+ } : item
425
+ ] : [];
426
+ };
427
+ return options.flatMap(callback());
428
+ }, [options, filterFn, inputValue]);
429
+ };
2164
430
 
2165
- function DatePicker({
431
+ function Command({
2166
432
  children,
2167
- defaultOpen = false,
2168
- defaultValue = null,
2169
- disabled,
2170
- onOpenChange,
2171
- onValueChange,
2172
- open: openProp,
2173
- step,
2174
- type = "date",
2175
- value: valueProp,
2176
- ...props
433
+ empty,
434
+ inputValue: inputValueProp,
435
+ loading,
436
+ onHover,
437
+ onInputValueChange,
438
+ onSelect: onItemSelect,
439
+ open,
440
+ options
2177
441
  }) {
2178
- const [open, setOpen] = reactUseControllableState.useControllableState({
2179
- caller: "@optiaxiom/react/DatePicker",
2180
- defaultProp: defaultOpen,
2181
- onChange: onOpenChange,
2182
- prop: openProp
442
+ const [inputValue, setInputValue] = reactUseControllableState.useControllableState({
443
+ caller: "@optiaxiom/react/Command",
444
+ defaultProp: "",
445
+ onChange: onInputValueChange,
446
+ prop: inputValueProp
447
+ });
448
+ const items = useCommandItems({ inputValue, options });
449
+ const [highlightedIndex, setHighlightedIndex, placed] = IconMagnifyingGlass.usePortalPatch(
450
+ open,
451
+ () => items.filter((item) => "selected" in item).length > items.length / 2 ? items.findIndex(
452
+ (item) => !resolveItemProperty(item.disabledReason) && resolveItemProperty(item.selected) && !item.multi
453
+ ) : -1
454
+ );
455
+ const pauseInteractionRef = React.useRef({
456
+ isInsideTriangle: null,
457
+ timer: void 0
2183
458
  });
2184
- const [value, setValue] = reactUseControllableState.useControllableState({
2185
- caller: "@optiaxiom/react/DatePicker",
2186
- defaultProp: defaultValue,
2187
- onChange: onValueChange,
2188
- prop: valueProp
459
+ const downshift$1 = downshift.useCombobox({
460
+ highlightedIndex: highlightedIndex === -1 ? items.findIndex((item) => !resolveItemProperty(item.disabledReason)) : highlightedIndex,
461
+ inputValue,
462
+ isItemDisabled: (item) => Boolean(resolveItemProperty(item?.disabledReason)),
463
+ isOpen: placed,
464
+ items,
465
+ itemToString: (item) => item !== null ? resolveItemProperty(item.label, { inputValue }) : "",
466
+ onHighlightedIndexChange({ highlightedIndex: highlightedIndex2, type }) {
467
+ if (type === downshift.useCombobox.stateChangeTypes.MenuMouseLeave) {
468
+ return;
469
+ }
470
+ setHighlightedIndex(highlightedIndex2);
471
+ if (highlightedIndex2 !== -1 && type === downshift.useCombobox.stateChangeTypes.ItemMouseMove) {
472
+ onHover?.(items[highlightedIndex2]);
473
+ }
474
+ },
475
+ onSelectedItemChange({ selectedItem, type }) {
476
+ if (type !== downshift.useCombobox.stateChangeTypes.InputBlur && selectedItem !== null) {
477
+ onItemSelect?.(selectedItem, {
478
+ close: type !== downshift.useCombobox.stateChangeTypes.FunctionSelectItem || !("selected" in selectedItem)
479
+ });
480
+ }
481
+ },
482
+ selectedItem: null,
483
+ stateReducer: (state, actionAndChanges) => {
484
+ const { changes, type } = actionAndChanges;
485
+ switch (type) {
486
+ case downshift.useCombobox.stateChangeTypes.InputBlur:
487
+ case downshift.useCombobox.stateChangeTypes.InputKeyDownEnter:
488
+ case downshift.useCombobox.stateChangeTypes.InputKeyDownEscape:
489
+ case downshift.useCombobox.stateChangeTypes.ItemClick:
490
+ return {
491
+ ...changes,
492
+ /**
493
+ * Keep the selected option highlighted rather than resetting to -1
494
+ * TODO: reset if activePath had values
495
+ */
496
+ highlightedIndex: state.highlightedIndex
497
+ };
498
+ default:
499
+ return changes;
500
+ }
501
+ }
2189
502
  });
2190
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Popover, { onOpenChange: setOpen, open, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2191
- DatePickerProvider,
503
+ downshift$1.getInputProps({}, { suppressRefError: true });
504
+ downshift$1.getMenuProps({}, { suppressRefError: true });
505
+ return /* @__PURE__ */ jsxRuntime.jsx(
506
+ CommandProvider,
2192
507
  {
2193
- disabled,
2194
- setOpen,
2195
- setValue,
2196
- step,
2197
- type,
2198
- value,
508
+ downshift: downshift$1,
509
+ empty,
510
+ highlightedItem: items[downshift$1.highlightedIndex],
511
+ inputValue,
512
+ items,
513
+ loading,
514
+ pauseInteractionRef,
515
+ setHighlightedIndex,
516
+ setInputValue,
2199
517
  children
2200
518
  }
2201
- ) });
519
+ );
2202
520
  }
2203
- DatePicker.displayName = "@optiaxiom/react/DatePicker";
2204
-
2205
- var panels$1 = Skeleton.recipeRuntime({base:[{alignItems:'stretch',flexDirection:'row',gap:'0'},'_1daj0el']});
2206
-
2207
- const DatePickerContent = React.forwardRef(
2208
- ({
2209
- addonAfter,
2210
- addonBefore,
2211
- children,
2212
- holiday,
2213
- max,
2214
- min,
2215
- today,
2216
- weekend,
2217
- ...props
2218
- }, ref) => {
2219
- const { setOpen, setValue, step, type, value } = useDatePickerContext(
2220
- "@optiaxiom/react/DatePickerContent"
2221
- );
2222
- const panelRef = React.useRef(null);
2223
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.PopoverContent, { gap: "8", maxW: void 0, ref, ...props, children: [
2224
- /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { ref: panelRef, ...panels$1(), children: [
2225
- addonBefore,
2226
- /* @__PURE__ */ jsxRuntime.jsx(
2227
- Calendar,
2228
- {
2229
- alignSelf: "start",
2230
- holiday,
2231
- max,
2232
- min,
2233
- onHeightChange: (height) => {
2234
- if (panelRef.current) {
2235
- panelRef.current.style.height = `${height}px`;
2236
- }
2237
- },
2238
- onValueChange: (date) => {
2239
- setValue(date);
2240
- if (type === "date") {
2241
- setOpen(false);
2242
- }
2243
- },
2244
- step,
2245
- today,
2246
- type,
2247
- value,
2248
- weekend
2249
- }
2250
- ),
2251
- addonAfter
2252
- ] }),
2253
- children
2254
- ] });
2255
- }
2256
- );
2257
- DatePickerContent.displayName = "@optiaxiom/react/DatePickerContent";
521
+ Command.displayName = "@optiaxiom/react/Command";
2258
522
 
2259
- const dateFormatter = new Intl.DateTimeFormat(void 0, {
2260
- day: "numeric",
2261
- month: "short",
2262
- year: "numeric"
2263
- });
2264
- const dateTimeFormatter = new Intl.DateTimeFormat(void 0, {
2265
- day: "numeric",
2266
- hour: "numeric",
2267
- minute: "numeric",
2268
- month: "short",
2269
- year: "numeric"
2270
- });
2271
- const DatePickerTrigger = React.forwardRef(
2272
- ({
2273
- "aria-labelledby": ariaLabelledBy,
2274
- children,
2275
- format,
2276
- placeholder = "Pick a date",
2277
- ...props
2278
- }, outerRef) => {
2279
- const { disabled, type, value } = useDatePickerContext(
2280
- "@optiaxiom/react/DatePickerTrigger"
523
+ const CommandInput = React.forwardRef(
524
+ ({ onKeyDown, size, ...props }, ref) => {
525
+ const { downshift, highlightedItem, setInputValue } = useCommandContext(
526
+ "@optiaxiom/react/CommandInput"
2281
527
  );
2282
- const formatter = format ? { format } : type === "datetime-local" ? dateTimeFormatter : dateFormatter;
2283
- const buttonRef = React.useRef(null);
2284
- const ref = reactComposeRefs.useComposedRefs(outerRef, buttonRef);
2285
- const labelId = useFieldLabelTrigger(buttonRef, ariaLabelledBy);
528
+ const setInputValueStable = IconMagnifyingGlass.useEffectEvent(setInputValue);
529
+ React.useEffect(() => {
530
+ setInputValueStable("");
531
+ }, [setInputValueStable]);
2286
532
  return /* @__PURE__ */ jsxRuntime.jsx(
2287
- Skeleton.PopoverTrigger,
533
+ IconMagnifyingGlass.Input,
2288
534
  {
2289
- "aria-labelledby": labelId,
2290
- disabled,
2291
- icon: /* @__PURE__ */ jsxRuntime.jsx(IconCalendar, {}),
2292
- ref,
2293
- ...props,
2294
- children: children ?? (value ? formatter.format(value) : /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { color: "fg.tertiary", children: placeholder }))
535
+ addonBefore: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconMagnifyingGlass, {}),
536
+ htmlSize: 1,
537
+ size,
538
+ ...downshift.getInputProps({
539
+ ref,
540
+ ...props,
541
+ onChange: (event) => {
542
+ setInputValue("value" in event.target ? event.target.value : "");
543
+ },
544
+ onKeyDown: (event) => {
545
+ onKeyDown?.(event);
546
+ if (event.defaultPrevented) {
547
+ return;
548
+ }
549
+ if (!(event.target instanceof HTMLInputElement)) {
550
+ return;
551
+ }
552
+ if (event.target.value) {
553
+ return;
554
+ }
555
+ if (!highlightedItem) {
556
+ return;
557
+ }
558
+ const subOptions = highlightedItem.subOptions;
559
+ if (event.key === " ") {
560
+ event.preventDefault();
561
+ downshift.selectItem(highlightedItem);
562
+ } else if (event.key === "ArrowRight" && subOptions?.length) {
563
+ event.preventDefault();
564
+ downshift.selectItem(highlightedItem);
565
+ }
566
+ }
567
+ })
2295
568
  }
2296
569
  );
2297
570
  }
2298
571
  );
2299
- DatePickerTrigger.displayName = "@optiaxiom/react/DatePickerTrigger";
2300
-
2301
- const [DateRangePickerProvider, useDateRangePickerContext] = reactContext.createContext("@optiaxiom/react/DateRangePicker");
2302
-
2303
- function DateRangePicker({
2304
- children,
2305
- defaultOpen = false,
2306
- defaultValue = null,
2307
- disabled,
2308
- onOpenChange,
2309
- onValueChange,
2310
- open: openProp,
2311
- value: valueProp,
2312
- ...props
2313
- }) {
2314
- const [open, setOpen] = reactUseControllableState.useControllableState({
2315
- caller: "@optiaxiom/react/DateRangePicker",
2316
- defaultProp: defaultOpen,
2317
- onChange: onOpenChange,
2318
- prop: openProp
2319
- });
2320
- const [value, setValue] = reactUseControllableState.useControllableState({
2321
- caller: "@optiaxiom/react/DateRangePicker",
2322
- defaultProp: defaultValue,
2323
- onChange: onValueChange,
2324
- prop: valueProp
2325
- });
2326
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Popover, { onOpenChange: setOpen, open, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2327
- DateRangePickerProvider,
2328
- {
2329
- disabled,
2330
- setOpen,
2331
- setValue,
2332
- value,
2333
- children
2334
- }
2335
- ) });
2336
- }
2337
- DateRangePicker.displayName = "@optiaxiom/react/DateRangePicker";
2338
-
2339
- var panels = Skeleton.recipeRuntime({base:[{alignItems:'stretch',flexDirection:'row',gap:'0'}]});
572
+ CommandInput.displayName = "@optiaxiom/react/CommandInput";
2340
573
 
2341
- const DateRangePickerContent = React.forwardRef(
2342
- ({
2343
- addonAfter,
2344
- addonBefore,
2345
- children,
2346
- holiday,
2347
- max,
2348
- min,
2349
- today,
2350
- weekend,
2351
- ...props
2352
- }, ref) => {
2353
- const { setOpen, setValue, value } = useDateRangePickerContext(
2354
- "@optiaxiom/react/DateRangePickerContent"
574
+ const CommandItem = React.forwardRef(
575
+ ({ asChild, children, item, selected, size, ...props }, ref) => {
576
+ const {
577
+ downshift,
578
+ highlightedItem,
579
+ inputValue,
580
+ items,
581
+ pauseInteractionRef
582
+ } = useCommandContext("@optiaxiom/react/CommandItem");
583
+ const itemProps = downshift.getItemProps({
584
+ "aria-selected": selected ?? resolveItemProperty(item.selected),
585
+ item,
586
+ onClick: (event) => {
587
+ if (event.currentTarget instanceof HTMLAnchorElement) {
588
+ event.preventDefault();
589
+ }
590
+ },
591
+ onMouseLeave: () => {
592
+ window.clearTimeout(pauseInteractionRef.current.timer);
593
+ },
594
+ onMouseMove: (event) => {
595
+ if (resolveItemProperty(item.disabledReason)) {
596
+ event.preventDefault();
597
+ Object.assign(event.nativeEvent, {
598
+ preventDownshiftDefault: true
599
+ });
600
+ return;
601
+ }
602
+ if (!pauseInteractionRef.current.isInsideTriangle) {
603
+ return;
604
+ }
605
+ if (pauseInteractionRef.current.isInsideTriangle({
606
+ x: event.clientX,
607
+ y: event.clientY
608
+ })) {
609
+ event.preventDefault();
610
+ Object.assign(event.nativeEvent, {
611
+ preventDownshiftDefault: true
612
+ });
613
+ window.clearTimeout(pauseInteractionRef.current.timer);
614
+ pauseInteractionRef.current.timer = window.setTimeout(() => {
615
+ pauseInteractionRef.current.isInsideTriangle = null;
616
+ downshift.setHighlightedIndex(items.indexOf(item));
617
+ }, 20);
618
+ } else {
619
+ pauseInteractionRef.current.isInsideTriangle = null;
620
+ }
621
+ },
622
+ ref,
623
+ ...props
624
+ });
625
+ const detail = resolveItemProperty(item.detail, { inputValue });
626
+ return /* @__PURE__ */ jsxRuntime.jsx(
627
+ IconMagnifyingGlass.Box,
628
+ {
629
+ asChild,
630
+ "data-disabled": itemProps["aria-disabled"] ? "" : void 0,
631
+ "data-highlighted": highlightedItem === item ? "" : void 0,
632
+ size,
633
+ tabIndex: -1,
634
+ ...itemProps,
635
+ ...item.link && { href: item.link },
636
+ children: IconMagnifyingGlass.decorateChildren(
637
+ { asChild, children },
638
+ (children2) => children2 ?? /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
639
+ item.parentOption && /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
640
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { color: "fg.secondary", children: resolveItemProperty(item.parentOption.label, {
641
+ inputValue
642
+ }) }),
643
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, h: "10", w: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconAngleRight, {}) })
644
+ ] }),
645
+ resolveItemProperty(item.label, { inputValue }),
646
+ detail && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { color: "fg.secondary", children: detail })
647
+ ] })
648
+ )
649
+ }
2355
650
  );
2356
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.PopoverContent, { gap: "8", maxW: void 0, ref, ...props, children: [
2357
- /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { ...panels(), children: [
2358
- addonBefore,
2359
- /* @__PURE__ */ jsxRuntime.jsx(
2360
- Calendar,
2361
- {
2362
- alignSelf: "start",
2363
- holiday,
2364
- max,
2365
- min,
2366
- mode: "range",
2367
- onValueChange: (value2) => {
2368
- setValue(value2);
2369
- setOpen(false);
2370
- },
2371
- today,
2372
- value,
2373
- weekend
2374
- }
2375
- ),
2376
- addonAfter
2377
- ] }),
2378
- children
2379
- ] });
2380
651
  }
2381
652
  );
2382
- DateRangePickerContent.displayName = "@optiaxiom/react/DateRangePickerContent";
653
+ CommandItem.displayName = "@optiaxiom/react/CommandItem";
2383
654
 
2384
- const DEFAULT_FORMATTER = (date) => date.from && date.to ? date.from.toLocaleDateString(void 0, {
2385
- day: "numeric",
2386
- month: "short",
2387
- year: "numeric"
2388
- }) + " - " + date.to.toLocaleDateString(void 0, {
2389
- day: "numeric",
2390
- month: "short",
2391
- year: "numeric"
2392
- }) : null;
2393
- const DateRangePickerTrigger = React.forwardRef(
2394
- ({
2395
- "aria-labelledby": ariaLabelledBy,
2396
- children,
2397
- format = DEFAULT_FORMATTER,
2398
- placeholder = "Pick a date",
2399
- ...props
2400
- }, outerRef) => {
2401
- const { disabled, value } = useDateRangePickerContext(
2402
- "@optiaxiom/react/DateRangePickerTrigger"
655
+ const CommandListbox = React.forwardRef(
656
+ ({ children, size, ...props }, ref) => {
657
+ const { downshift, highlightedItem, inputValue, items } = useCommandContext(
658
+ "@optiaxiom/react/CommandListbox"
2403
659
  );
2404
- const buttonRef = React.useRef(null);
2405
- const ref = reactComposeRefs.useComposedRefs(outerRef, buttonRef);
2406
- const labelId = useFieldLabelTrigger(buttonRef, ariaLabelledBy);
2407
660
  return /* @__PURE__ */ jsxRuntime.jsx(
2408
- Skeleton.PopoverTrigger,
661
+ IconMagnifyingGlass.ListboxItemized,
2409
662
  {
2410
- "aria-labelledby": labelId,
2411
- disabled,
2412
- icon: /* @__PURE__ */ jsxRuntime.jsx(IconCalendar, {}),
2413
- ref,
2414
- ...props,
2415
- children: children ?? (value ? format(value) : /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { color: "fg.tertiary", children: placeholder }))
663
+ highlightedItem,
664
+ items,
665
+ itemToKey: (item) => item.key ?? resolveItemProperty(item.label, { inputValue }),
666
+ size,
667
+ ...downshift.getMenuProps({ ref, ...props }),
668
+ children
2416
669
  }
2417
670
  );
2418
671
  }
2419
672
  );
2420
- DateRangePickerTrigger.displayName = "@optiaxiom/react/DateRangePickerTrigger";
673
+ CommandListbox.displayName = "@optiaxiom/react/CommandListbox";
2421
674
 
2422
- var mark = Skeleton.recipeRuntime({base:'_6ala4g'});
675
+ var mark = IconMagnifyingGlass.recipeRuntime({base:'_1w55d1m'});
2423
676
 
2424
677
  const useHighlightedChunks = (content, query) => {
2425
678
  const terms = React.useMemo(
@@ -2444,15 +697,15 @@ function escapeRegExp(string) {
2444
697
  const Highlight = React.forwardRef(
2445
698
  ({ children = (chunk) => chunk, content, query, ...props }, ref) => {
2446
699
  const chunks = useHighlightedChunks(content || "", query);
2447
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ref, ...props, children: chunks.map(({ chunk, highlighted }, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: highlighted ? children(
2448
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { asChild: true, ...mark(), children: /* @__PURE__ */ jsxRuntime.jsx("mark", { children: chunk }) })
700
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ref, ...props, children: chunks.map(({ chunk, highlighted }, index) => /* @__PURE__ */ jsxRuntime.jsx(React.Fragment, { children: highlighted ? children(
701
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { asChild: true, ...mark(), children: /* @__PURE__ */ jsxRuntime.jsx("mark", { children: chunk }) })
2449
702
  ) : chunk }, index)) });
2450
703
  }
2451
704
  );
2452
705
  Highlight.displayName = "@optiaxiom/react/Highlight";
2453
706
 
2454
- var editor = Skeleton.recipeRuntime({base:'_1crb85r',variants:{empty:{false:{},true:'_8pf4p2'}}});
2455
- var input$1 = Skeleton.recipeRuntime({base:'_1a4brh7'});
707
+ var editor = IconMagnifyingGlass.recipeRuntime({base:'j1knpy',variants:{empty:{false:{},true:'_12vnl0d'}}});
708
+ var input$1 = IconMagnifyingGlass.recipeRuntime({base:'_1vdkibg'});
2456
709
 
2457
710
  const InlineInput = React.forwardRef(
2458
711
  ({
@@ -2491,8 +744,8 @@ const InlineInput = React.forwardRef(
2491
744
  }
2492
745
  }
2493
746
  }, [multiline, value]);
2494
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ref, ...input$1({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2495
- Skeleton.Box,
747
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ref, ...input$1({}, className), ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
748
+ IconMagnifyingGlass.Box,
2496
749
  {
2497
750
  "aria-multiline": multiline,
2498
751
  "aria-readonly": disabled,
@@ -2533,45 +786,14 @@ function getText(element) {
2533
786
  return text;
2534
787
  }
2535
788
 
2536
- var button = Skeleton.recipeRuntime({base:[{justifyContent:'space-between'},'_2drsbm']});
2537
- var content = Skeleton.recipeRuntime({base:[{fontSize:'sm',transition:'all'}],variants:{filled:{false:{h:'0'},true:{h:'16'}}}});
2538
- var label = Skeleton.recipeRuntime({base:[{color:'fg.secondary',cursor:'pointer',maxW:'full',transition:'all'}],variants:{filled:{false:{fontSize:'md'},true:{fontSize:'xs'}}}});
2539
-
2540
- const LabelMenuButton = React.forwardRef(
2541
- ({ "aria-labelledby": ariaLabelledBy, children, className, label: label$1, ...props }, ref) => {
2542
- const filled = String(props["aria-expanded"]) === "true" || Boolean(children);
2543
- const labelId = reactId.useId();
2544
- const valueId = reactId.useId();
2545
- return /* @__PURE__ */ jsxRuntime.jsxs(
2546
- Skeleton.ButtonRoot,
2547
- {
2548
- "aria-labelledby": ariaLabelledBy ? clsx(labelId, ariaLabelledBy) : clsx(labelId, children && valueId),
2549
- "data-filled": filled ? "" : void 0,
2550
- ref,
2551
- size: "lg",
2552
- ...button({}, className),
2553
- ...props,
2554
- children: [
2555
- /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Flex, { gap: "0", overflow: "hidden", textAlign: "start", children: [
2556
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { asChild: true, id: labelId, truncate: true, ...label({ filled }), children: /* @__PURE__ */ jsxRuntime.jsx(RadixLabel.Label, { children: label$1 }) }),
2557
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { id: valueId, truncate: true, ...content({ filled }), children: children ?? /* @__PURE__ */ jsxRuntime.jsx(jsxRuntime.Fragment, { children: "\xA0" }) })
2558
- ] }),
2559
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ButtonAddon, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconAngleDown, {}) })
2560
- ]
2561
- }
2562
- );
2563
- }
2564
- );
2565
- LabelMenuButton.displayName = "@optiaxiom/react/LabelMenuButton";
2566
-
2567
- var layout = Skeleton.recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'_1cc49pq']});
789
+ var layout = IconMagnifyingGlass.recipeRuntime({base:[{bg:'bg.page',display:'flex',flexDirection:'column',fontSize:'md'},'_1gxoz83']});
2568
790
 
2569
791
  const Layout = React.forwardRef(
2570
792
  ({ children, className, header, sidebar, ...props }, ref) => {
2571
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Box, { ref, ...layout({}, className), ...props, children: [
793
+ return /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Box, { ref, ...layout({}, className), ...props, children: [
2572
794
  header,
2573
795
  /* @__PURE__ */ jsxRuntime.jsxs(
2574
- Skeleton.Box,
796
+ IconMagnifyingGlass.Box,
2575
797
  {
2576
798
  alignItems: "stretch",
2577
799
  display: "flex",
@@ -2580,7 +802,7 @@ const Layout = React.forwardRef(
2580
802
  overflow: "auto",
2581
803
  children: [
2582
804
  sidebar,
2583
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { flex: "1", overflow: "auto", px: "32", py: "24", children })
805
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { flex: "1", overflow: "auto", px: "32", py: "24", children })
2584
806
  ]
2585
807
  }
2586
808
  )
@@ -2592,7 +814,7 @@ Layout.displayName = "@optiaxiom/react/Layout";
2592
814
  const [MenuProvider, useMenuContext] = reactContext.createContext("@optiaxiom/react/Menu");
2593
815
 
2594
816
  function MenuPopover(props) {
2595
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Popover, { modal: true, ...props });
817
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Popover, { modal: true, ...props });
2596
818
  }
2597
819
  MenuPopover.displayName = "@optiaxiom/react/MenuPopover";
2598
820
 
@@ -2611,11 +833,11 @@ function Menu({
2611
833
  size: sizeProp,
2612
834
  ...props
2613
835
  }) {
2614
- const size = useResponsiveMatches({
836
+ const size = IconMagnifyingGlass.useResponsiveMatches({
2615
837
  base: "lg",
2616
838
  sm: sizeProp ?? "sm"
2617
839
  });
2618
- const Comp = size === "sm" ? MenuPopover : Skeleton.Dialog;
840
+ const Comp = size === "sm" ? MenuPopover : IconMagnifyingGlass.Dialog;
2619
841
  const [open, setOpen] = reactUseControllableState.useControllableState({
2620
842
  caller: "@optiaxiom/react/Menu",
2621
843
  defaultProp: defaultOpen,
@@ -2746,15 +968,15 @@ const MenuDialogContent = React.forwardRef(
2746
968
  sideOffset: _sideOffset,
2747
969
  ...props
2748
970
  }, ref) => {
2749
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.DialogContent, { ref, transitionType: "pop", ...props, children: [
2750
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.VisuallyHidden, { tabIndex: -1, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.DialogHeader, { children: ariaLabel }) }),
971
+ return /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.DialogContent, { ref, transitionType: "pop", ...props, children: [
972
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { tabIndex: -1, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.DialogHeader, { children: ariaLabel }) }),
2751
973
  children
2752
974
  ] });
2753
975
  }
2754
976
  );
2755
977
  MenuDialogContent.displayName = "@optiaxiom/react/MenuDialogContent";
2756
978
 
2757
- var input = Skeleton.recipeRuntime({variants:{size:{sm:{m:'4'},lg:[{border:'0',borderB:'1',borderColor:'border.secondary',rounded:'none'},'a0bogi']}}});
979
+ var input = IconMagnifyingGlass.recipeRuntime({variants:{size:{sm:{m:'4'},lg:[{border:'0',borderB:'1',borderColor:'border.secondary',rounded:'none'},'bnzhx9']}}});
2758
980
 
2759
981
  const MenuInput = React.forwardRef(
2760
982
  ({ className, ...props }, outerRef) => {
@@ -2774,7 +996,7 @@ const MenuInput = React.forwardRef(
2774
996
  setMinWidth(rect.width);
2775
997
  }
2776
998
  }, [downshift.inputValue, minWidth, open]);
2777
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { ref: containerRef, style: { minWidth }, children: /* @__PURE__ */ jsxRuntime.jsx(
999
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { ref: containerRef, style: { minWidth }, children: /* @__PURE__ */ jsxRuntime.jsx(
2778
1000
  CommandInput,
2779
1001
  {
2780
1002
  ref,
@@ -2791,7 +1013,7 @@ const MenuCheckboxItem = React.forwardRef(({ children, ...props }, ref) => {
2791
1013
  const Comp = props.item.link ? "a" : "div";
2792
1014
  const { inputValue } = useCommandContext("@optiaxiom/react/MenuCheckboxItem");
2793
1015
  return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2794
- Skeleton.ListboxCheckboxItem,
1016
+ IconMagnifyingGlass.ListboxCheckboxItem,
2795
1017
  {
2796
1018
  addonBefore: props.item.addon,
2797
1019
  asChild: true,
@@ -2807,7 +1029,7 @@ const MenuItem = React.forwardRef(
2807
1029
  ({ children, ...props }, ref) => {
2808
1030
  const Comp = props.item.link ? "a" : "div";
2809
1031
  return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2810
- Skeleton.ListboxItem,
1032
+ IconMagnifyingGlass.ListboxItem,
2811
1033
  {
2812
1034
  addonBefore: props.item.addon,
2813
1035
  asChild: true,
@@ -2823,7 +1045,7 @@ const MenuRadioItem = React.forwardRef(
2823
1045
  ({ children, ...props }, ref) => {
2824
1046
  const Comp = props.item.link ? "a" : "div";
2825
1047
  return /* @__PURE__ */ jsxRuntime.jsx(CommandItem, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(
2826
- Skeleton.ListboxRadioItem,
1048
+ IconMagnifyingGlass.ListboxRadioItem,
2827
1049
  {
2828
1050
  addonBefore: props.item.addon,
2829
1051
  asChild: true,
@@ -2846,9 +1068,10 @@ const MenuSubContent = React.forwardRef(
2846
1068
  );
2847
1069
  const {
2848
1070
  inputRef: parentInputRef,
2849
- open,
1071
+ open: parentSubMenuOpen,
2850
1072
  setOpen
2851
1073
  } = useMenuSubContext("@optiaxiom/react/MenuSubContent");
1074
+ const { open } = IconMagnifyingGlass.usePopoverContext("@optiaxiom/react/MenuSubContent");
2852
1075
  const inputRef = React.useRef(null);
2853
1076
  const [subMenuOpen, setSubMenuOpen] = React.useState(false);
2854
1077
  React.useEffect(() => {
@@ -2857,20 +1080,31 @@ const MenuSubContent = React.forwardRef(
2857
1080
  }
2858
1081
  }, [open]);
2859
1082
  return /* @__PURE__ */ jsxRuntime.jsx(
2860
- Skeleton.PopoverContent,
1083
+ IconMagnifyingGlass.PopoverContent,
2861
1084
  {
2862
1085
  align,
2863
- alignOffset: -4,
1086
+ alignOffset: item.subOptionsInputVisible ? -46 : -4,
2864
1087
  maxH: "sm",
2865
1088
  minW: "trigger",
2866
1089
  onCloseAutoFocus: (event) => {
2867
- if (open) {
1090
+ if (parentSubMenuOpen) {
2868
1091
  return;
2869
1092
  }
2870
1093
  event.preventDefault();
2871
1094
  parentInputRef.current?.focus();
2872
1095
  },
2873
1096
  onEscapeKeyDown: () => setRootMenuOpen(false),
1097
+ onPointerEnter: () => {
1098
+ if (item.subOptionsInputVisible) {
1099
+ inputRef.current?.focus();
1100
+ }
1101
+ },
1102
+ onPointerLeave: (event) => {
1103
+ if (item.subOptionsInputVisible) {
1104
+ parentInputRef.current?.focus();
1105
+ event.stopPropagation();
1106
+ }
1107
+ },
2874
1108
  p: "4",
2875
1109
  ref,
2876
1110
  side,
@@ -2883,6 +1117,9 @@ const MenuSubContent = React.forwardRef(
2883
1117
  setSubMenuOpen(!!item2.subOptions?.length);
2884
1118
  },
2885
1119
  onInputValueChange: (inputValue) => {
1120
+ if (item.subOptionsInputVisible) {
1121
+ return;
1122
+ }
2886
1123
  parentInputRef.current?.focus();
2887
1124
  setInputValue(inputValue);
2888
1125
  },
@@ -2896,11 +1133,15 @@ const MenuSubContent = React.forwardRef(
2896
1133
  open: true,
2897
1134
  options,
2898
1135
  children: [
2899
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.VisuallyHidden, { children: /* @__PURE__ */ jsxRuntime.jsx(
1136
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { disabled: item.subOptionsInputVisible, children: /* @__PURE__ */ jsxRuntime.jsx(
2900
1137
  CommandInput,
2901
1138
  {
1139
+ m: "4",
2902
1140
  onKeyDown: (event) => {
2903
- if (event.key === "ArrowLeft") {
1141
+ if (!(event.target instanceof HTMLInputElement)) {
1142
+ return;
1143
+ }
1144
+ if (!event.target.value && event.key === "ArrowLeft") {
2904
1145
  event.preventDefault();
2905
1146
  setOpen(false);
2906
1147
  }
@@ -2914,7 +1155,7 @@ const MenuSubContent = React.forwardRef(
2914
1155
  inputRef,
2915
1156
  open: subMenuOpen,
2916
1157
  setOpen: setSubMenuOpen,
2917
- children: /* @__PURE__ */ jsxRuntime.jsx(MenuListbox, {})
1158
+ children: /* @__PURE__ */ jsxRuntime.jsx(MenuListbox, { onScroll: () => setSubMenuOpen(false) })
2918
1159
  }
2919
1160
  )
2920
1161
  ]
@@ -2929,11 +1170,11 @@ MenuSubContent.displayName = "@optiaxiom/react/MenuSubContent";
2929
1170
  const MenuSubTrigger = React.forwardRef(
2930
1171
  ({ children, contentRef, item, onPointerDown, ...props }, ref) => {
2931
1172
  const { downshift, highlightedItem, pauseInteractionRef } = useCommandContext("@optiaxiom/react/MenuSubTrigger");
2932
- const { open } = Skeleton.usePopoverContext("@optiaxiom/react/MenuSubTrigger");
2933
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.FilteredSlot, { exclude: "type", children: /* @__PURE__ */ jsxRuntime.jsx(
1173
+ const { open } = IconMagnifyingGlass.usePopoverContext("@optiaxiom/react/MenuSubTrigger");
1174
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.FilteredSlot, { exclude: "type", children: /* @__PURE__ */ jsxRuntime.jsx(
2934
1175
  MenuItem,
2935
1176
  {
2936
- addonAfter: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconAngleRight, {}),
1177
+ addonAfter: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconAngleRight, {}),
2937
1178
  item,
2938
1179
  onPointerDown: (event) => {
2939
1180
  onPointerDown?.(event);
@@ -2970,7 +1211,7 @@ const MenuSubTrigger = React.forwardRef(
2970
1211
  };
2971
1212
  pauseInteractionRef.current.timer = window.setTimeout(() => {
2972
1213
  pauseInteractionRef.current.isInsideTriangle = null;
2973
- }, 50);
1214
+ }, 20);
2974
1215
  },
2975
1216
  ref,
2976
1217
  ...props,
@@ -2985,8 +1226,8 @@ function MenuSub({ item }) {
2985
1226
  const { highlightedItem } = useCommandContext("@optiaxiom/react/MenuSub");
2986
1227
  const { open } = useMenuSubContext("@optiaxiom/react/MenuSub");
2987
1228
  const contentRef = React.useRef(null);
2988
- return /* @__PURE__ */ jsxRuntime.jsxs(Skeleton.Popover, { open: open && highlightedItem === item, children: [
2989
- /* @__PURE__ */ jsxRuntime.jsx(MenuSubTrigger, { contentRef, item }),
1229
+ return /* @__PURE__ */ jsxRuntime.jsxs(IconMagnifyingGlass.Popover, { open: open && highlightedItem === item, children: [
1230
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsxRuntime.jsx(MenuSubTrigger, { contentRef, item }) }),
2990
1231
  /* @__PURE__ */ jsxRuntime.jsx(MenuSubContent, { item, ref: contentRef })
2991
1232
  ] });
2992
1233
  }
@@ -3015,29 +1256,57 @@ const MenuListbox = React.forwardRef(
3015
1256
  const Comp = item.subOptions?.length ? size === "sm" ? MenuSub : MenuItem : "selected" in item ? item.multi ? MenuCheckboxItem : MenuRadioItem : MenuItem;
3016
1257
  const group = item.group;
3017
1258
  return /* @__PURE__ */ jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [
3018
- shouldShowSeparator(group) && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ListboxSeparator, {}),
3019
- shouldShowGroup(group) && /* @__PURE__ */ jsxRuntime.jsx(Skeleton.ListboxLabel, { children: group.name }),
3020
- /* @__PURE__ */ jsxRuntime.jsx(Comp, { item })
1259
+ shouldShowSeparator(group) && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ListboxSeparator, {}),
1260
+ shouldShowGroup(group) && /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.ListboxLabel, { children: group.name }),
1261
+ Comp === MenuSub ? /* @__PURE__ */ jsxRuntime.jsx(Comp, { item }) : /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Tooltip, { content: resolveItemProperty(item.disabledReason), children: /* @__PURE__ */ jsxRuntime.jsx(Comp, { item }) })
3021
1262
  ] });
3022
1263
  }) });
3023
1264
  }
3024
1265
  );
3025
1266
  MenuListbox.displayName = "@optiaxiom/react/MenuListbox";
3026
1267
 
3027
- const MenuPopoverContent = React.forwardRef((props, ref) => {
3028
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.PopoverContent, { maxH: "sm", minW: "trigger", ref, ...props });
1268
+ const MenuPopoverContent = React.forwardRef(({ style, ...props }, outerRef) => {
1269
+ const { open } = useMenuContext("@optiaxiom/react/MenuPopoverContent");
1270
+ const innerRef = React.useRef(null);
1271
+ const ref = reactComposeRefs.useComposedRefs(innerRef, outerRef);
1272
+ const [minHeight, setMinHeight] = React.useState(0);
1273
+ React.useEffect(() => {
1274
+ if (!open || props.side === "top") {
1275
+ return;
1276
+ }
1277
+ requestAnimationFrame(() => {
1278
+ if (innerRef.current?.dataset.side !== "top") {
1279
+ return;
1280
+ }
1281
+ const rect = innerRef.current.getBoundingClientRect();
1282
+ if (rect.height > minHeight) {
1283
+ setMinHeight(rect.height);
1284
+ }
1285
+ });
1286
+ }, [minHeight, open, props.side]);
1287
+ return /* @__PURE__ */ jsxRuntime.jsx(
1288
+ IconMagnifyingGlass.PopoverContent,
1289
+ {
1290
+ maxH: "sm",
1291
+ minW: "trigger",
1292
+ ref,
1293
+ style: { ...style, minHeight },
1294
+ ...props
1295
+ }
1296
+ );
3029
1297
  });
3030
1298
  MenuPopoverContent.displayName = "@optiaxiom/react/MenuPopoverContent";
3031
1299
 
3032
1300
  const MenuContent = React.forwardRef(
3033
1301
  ({ children, ...props }, ref) => {
3034
- const { labelId } = Skeleton.useFieldContext("@optiaxiom/react/MenuContent");
1302
+ const { labelId } = IconMagnifyingGlass.useFieldContext("@optiaxiom/react/MenuContent");
3035
1303
  const { inputVisible, placeholder, size } = useMenuContext(
3036
1304
  "@optiaxiom/react/MenuContent"
3037
1305
  );
3038
1306
  const { empty, loading } = useCommandContext(
3039
1307
  "@optiaxiom/react/MenuContent"
3040
1308
  );
1309
+ const { setOpen } = useMenuSubContext("@optiaxiom/react/MenuContent");
3041
1310
  const Comp = size === "sm" ? MenuPopoverContent : MenuDialogContent;
3042
1311
  return /* @__PURE__ */ jsxRuntime.jsxs(
3043
1312
  Comp,
@@ -3048,12 +1317,13 @@ const MenuContent = React.forwardRef(
3048
1317
  ref,
3049
1318
  ...props,
3050
1319
  children: [
3051
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.VisuallyHidden, { disabled: inputVisible, children: /* @__PURE__ */ jsxRuntime.jsx(MenuInput, { placeholder }) }),
1320
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.VisuallyHidden, { disabled: inputVisible, children: /* @__PURE__ */ jsxRuntime.jsx(MenuInput, { placeholder }) }),
3052
1321
  /* @__PURE__ */ jsxRuntime.jsx(
3053
1322
  MenuListbox,
3054
1323
  {
3055
1324
  empty,
3056
1325
  loading,
1326
+ onScroll: () => setOpen(false),
3057
1327
  p: size === "lg" ? "6" : "0",
3058
1328
  children
3059
1329
  }
@@ -3068,10 +1338,10 @@ MenuContent.displayName = "@optiaxiom/react/MenuContent";
3068
1338
  const MenuTrigger = React.forwardRef(
3069
1339
  ({ "aria-labelledby": ariaLabelledBy, asChild, children, ...props }, outerRef) => {
3070
1340
  const { setOpen, size } = useMenuContext("@optiaxiom/react/MenuTrigger");
3071
- const Comp = size === "sm" ? Skeleton.PopoverTrigger : Skeleton.DialogTrigger;
1341
+ const Comp = size === "sm" ? IconMagnifyingGlass.PopoverTrigger : IconMagnifyingGlass.DialogTrigger;
3072
1342
  const buttonRef = React.useRef(null);
3073
1343
  const ref = reactComposeRefs.useComposedRefs(outerRef, buttonRef);
3074
- const labelId = useFieldLabelTrigger(buttonRef, ariaLabelledBy);
1344
+ const labelId = IconMagnifyingGlass.useFieldLabelTrigger(buttonRef, ariaLabelledBy);
3075
1345
  return /* @__PURE__ */ jsxRuntime.jsx(
3076
1346
  Comp,
3077
1347
  {
@@ -3080,36 +1350,35 @@ const MenuTrigger = React.forwardRef(
3080
1350
  onKeyDown: (event) => {
3081
1351
  switch (event.key) {
3082
1352
  case "ArrowDown":
3083
- case "ArrowUp":
3084
1353
  setOpen(true);
3085
1354
  }
3086
1355
  },
3087
1356
  ref,
3088
1357
  ...props,
3089
- children: asChild ? children : /* @__PURE__ */ jsxRuntime.jsx(Skeleton.AngleMenuButton, { children })
1358
+ children: asChild ? children : /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.AngleMenuButton, { children })
3090
1359
  }
3091
1360
  );
3092
1361
  }
3093
1362
  );
3094
1363
  MenuTrigger.displayName = "@optiaxiom/react/MenuTrigger";
3095
1364
 
3096
- var pill = Skeleton.recipeRuntime({base:[{alignItems:'center',color:'fg.default',display:'flex',fontSize:'sm',gap:'4',px:'6',rounded:'md',whiteSpace:'nowrap'},'_1aecjbe'],variants:{size:{xs:{h:'xs'},sm:{h:'sm'}}}});
1365
+ var pill = IconMagnifyingGlass.recipeRuntime({base:[{alignItems:'center',color:'fg.default',display:'flex',fontSize:'sm',gap:'4',px:'6',rounded:'md',whiteSpace:'nowrap'},'_60mbxn'],variants:{size:{xs:{h:'xs'},sm:{h:'sm'}}}});
3097
1366
 
3098
1367
  const Slot = reactSlot.createSlot("@optiaxiom/react/Pill");
3099
1368
  const Pill = React.forwardRef(
3100
1369
  ({ asChild, children, className, disabled, size = "sm", ...props }, ref) => {
3101
1370
  const Comp = asChild ? Slot : "button";
3102
- const { boxProps, restProps } = Skeleton.extractBoxProps(props);
1371
+ const { boxProps, restProps } = IconMagnifyingGlass.extractBoxProps(props);
3103
1372
  return /* @__PURE__ */ jsxRuntime.jsx(
3104
- Skeleton.Box,
1373
+ IconMagnifyingGlass.Box,
3105
1374
  {
3106
1375
  asChild: true,
3107
1376
  "data-disabled": disabled ? "" : void 0,
3108
1377
  ...pill({ size }, className),
3109
1378
  ...boxProps,
3110
1379
  children: /* @__PURE__ */ jsxRuntime.jsxs(Comp, { disabled, ref, ...restProps, children: [
3111
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Text, { truncate: true, children }),
3112
- /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Icon, { asChild: true, h: "12", ml: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconX, {}) })
1380
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Text, { truncate: true, children }),
1381
+ /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Icon, { asChild: true, h: "12", ml: "auto", children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconX, {}) })
3113
1382
  ] })
3114
1383
  }
3115
1384
  );
@@ -3119,7 +1388,7 @@ Pill.displayName = "@optiaxiom/react/Pill";
3119
1388
 
3120
1389
  const PillGroup = React.forwardRef(
3121
1390
  ({ children, ...props }, ref) => {
3122
- return /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Flex, { flexDirection: "row", gap: "12", ref, ...props, children });
1391
+ return /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Flex, { flexDirection: "row", gap: "12", ref, ...props, children });
3123
1392
  }
3124
1393
  );
3125
1394
  PillGroup.displayName = "@optiaxiom/react/PillGroup";
@@ -3138,16 +1407,17 @@ const DEFAULT_HOTKEY = "mod+K";
3138
1407
  const SpotlightTrigger = React.forwardRef(({ children, hotkey = DEFAULT_HOTKEY, ...props }, ref) => {
3139
1408
  const { open, setOpen } = useMenuContext("@optiaxiom/react/SpotlightTrigger");
3140
1409
  useHotkeys([[hotkey, () => setOpen(!open)]]);
3141
- return /* @__PURE__ */ jsxRuntime.jsx(MenuTrigger, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.IconMagnifyingGlass, {}), children: /* @__PURE__ */ jsxRuntime.jsx(Skeleton.Box, { color: "fg.tertiary", children }) }) });
1410
+ return /* @__PURE__ */ jsxRuntime.jsx(MenuTrigger, { asChild: true, ref, ...props, children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Button, { icon: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.IconMagnifyingGlass, {}), children: /* @__PURE__ */ jsxRuntime.jsx(IconMagnifyingGlass.Box, { color: "fg.tertiary", children }) }) });
3142
1411
  });
3143
1412
  SpotlightTrigger.displayName = "@optiaxiom/react/SpotlightTrigger";
3144
1413
 
1414
+ exports.Calendar = IconMagnifyingGlass.Calendar;
1415
+ exports.DataTableHeaderCell = IconMagnifyingGlass.DataTableHeaderCell;
3145
1416
  exports.Breadcrumb = Breadcrumb;
3146
1417
  exports.BreadcrumbEllipsis = BreadcrumbEllipsis;
3147
1418
  exports.BreadcrumbItem = BreadcrumbItem;
3148
1419
  exports.BreadcrumbLink = BreadcrumbLink;
3149
1420
  exports.BreadcrumbPage = BreadcrumbPage;
3150
- exports.Calendar = Calendar;
3151
1421
  exports.Card = Card;
3152
1422
  exports.CardAction = CardAction;
3153
1423
  exports.CardCheckbox = CardCheckbox;
@@ -3157,41 +1427,18 @@ exports.CardImage = CardImage;
3157
1427
  exports.CardLink = CardLink;
3158
1428
  exports.CardOverflow = CardOverflow;
3159
1429
  exports.CardTitle = CardTitle;
3160
- exports.Clock = Clock;
3161
1430
  exports.Command = Command;
3162
1431
  exports.CommandInput = CommandInput;
3163
1432
  exports.CommandItem = CommandItem;
3164
1433
  exports.CommandListbox = CommandListbox;
3165
- exports.DataTable = DataTable;
3166
- exports.DataTableBody = DataTableBody;
3167
- exports.DataTableFooter = DataTableFooter;
3168
- exports.DataTableHeaderCell = DataTableHeaderCell;
3169
- exports.DateInput = DateInput;
3170
- exports.DatePicker = DatePicker;
3171
- exports.DatePickerContent = DatePickerContent;
3172
- exports.DatePickerTrigger = DatePickerTrigger;
3173
- exports.DateRangePicker = DateRangePicker;
3174
- exports.DateRangePickerContent = DateRangePickerContent;
3175
- exports.DateRangePickerTrigger = DateRangePickerTrigger;
3176
1434
  exports.Highlight = Highlight;
3177
1435
  exports.InlineInput = InlineInput;
3178
- exports.LabelMenuButton = LabelMenuButton;
3179
1436
  exports.Layout = Layout;
3180
1437
  exports.Menu = Menu;
3181
1438
  exports.MenuContent = MenuContent;
3182
1439
  exports.MenuTrigger = MenuTrigger;
3183
1440
  exports.Pill = Pill;
3184
1441
  exports.PillGroup = PillGroup;
3185
- exports.Select = Select;
3186
- exports.SelectContent = SelectContent;
3187
- exports.SelectTrigger = SelectTrigger;
3188
1442
  exports.Spotlight = Spotlight;
3189
1443
  exports.SpotlightContent = SpotlightContent;
3190
1444
  exports.SpotlightTrigger = SpotlightTrigger;
3191
- exports.Table = Table;
3192
- exports.TableAction = TableAction;
3193
- exports.TableBody = TableBody;
3194
- exports.TableCell = TableCell;
3195
- exports.TableHeader = TableHeader;
3196
- exports.TableHeaderCell = TableHeaderCell;
3197
- exports.TableRow = TableRow;