@moduix/react 1.1.1 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (296) hide show
  1. package/README.md +105 -177
  2. package/dist/components/accordion/Accordion.css +12 -5
  3. package/dist/components/accordion/Accordion.d.ts +3 -2
  4. package/dist/components/accordion/Accordion.js +17 -5
  5. package/dist/components/accordion/Accordion.module.js +1 -0
  6. package/dist/components/accordion/index.d.ts +2 -2
  7. package/dist/components/alert/Alert.css +24 -10
  8. package/dist/components/alert/Alert.d.ts +5 -3
  9. package/dist/components/alert/Alert.js +17 -5
  10. package/dist/components/alert/Alert.module.js +1 -0
  11. package/dist/components/angle-slider/AngleSlider.css +9 -9
  12. package/dist/components/angle-slider/AngleSlider.d.ts +18 -2
  13. package/dist/components/angle-slider/AngleSlider.js +34 -18
  14. package/dist/components/angle-slider/index.d.ts +2 -2
  15. package/dist/components/aspect-ratio/AspectRatio.css +3 -1
  16. package/dist/components/aspect-ratio/AspectRatio.js +2 -2
  17. package/dist/components/avatar/Avatar.d.ts +6 -3
  18. package/dist/components/avatar/Avatar.js +12 -5
  19. package/dist/components/avatar/index.d.ts +2 -2
  20. package/dist/components/badge/Badge.css +52 -8
  21. package/dist/components/badge/Badge.d.ts +2 -2
  22. package/dist/components/badge/Badge.js +1 -1
  23. package/dist/components/bleed/Bleed.d.ts +6 -4
  24. package/dist/components/bleed/Bleed.js +3 -3
  25. package/dist/components/breadcrumbs/Breadcrumbs.css +13 -6
  26. package/dist/components/breadcrumbs/Breadcrumbs.d.ts +18 -0
  27. package/dist/components/breadcrumbs/Breadcrumbs.js +18 -4
  28. package/dist/components/breadcrumbs/Breadcrumbs.module.js +2 -1
  29. package/dist/components/breadcrumbs/index.d.ts +2 -0
  30. package/dist/components/button/Button.css +45 -25
  31. package/dist/components/button/Button.d.ts +6 -0
  32. package/dist/components/button/Button.js +12 -7
  33. package/dist/components/card/Card.css +21 -5
  34. package/dist/components/card/Card.d.ts +1 -0
  35. package/dist/components/card/Card.js +12 -1
  36. package/dist/components/card/Card.module.js +1 -0
  37. package/dist/components/carousel/Carousel.css +19 -17
  38. package/dist/components/carousel/Carousel.d.ts +4 -0
  39. package/dist/components/carousel/Carousel.js +15 -2
  40. package/dist/components/checkbox/Checkbox.css +13 -13
  41. package/dist/components/checkbox/Checkbox.d.ts +2 -3
  42. package/dist/components/checkbox/Checkbox.js +25 -22
  43. package/dist/components/checkbox/index.d.ts +2 -2
  44. package/dist/components/clipboard/Clipboard.css +11 -11
  45. package/dist/components/clipboard/Clipboard.d.ts +2 -0
  46. package/dist/components/clipboard/Clipboard.js +15 -4
  47. package/dist/components/close-button/CloseButton.css +7 -7
  48. package/dist/components/close-button/CloseButton.d.ts +12 -2
  49. package/dist/components/close-button/CloseButton.js +9 -9
  50. package/dist/components/collapsible/Collapsible.css +13 -6
  51. package/dist/components/collapsible/Collapsible.d.ts +3 -2
  52. package/dist/components/collapsible/Collapsible.js +18 -6
  53. package/dist/components/collapsible/Collapsible.module.js +1 -0
  54. package/dist/components/collapsible/index.d.ts +2 -2
  55. package/dist/components/color-picker/ColorPicker.css +63 -27
  56. package/dist/components/color-picker/ColorPicker.d.ts +3 -3
  57. package/dist/components/color-picker/ColorPicker.js +78 -27
  58. package/dist/components/color-picker/ColorPicker.module.js +1 -0
  59. package/dist/components/color-picker/index.d.ts +2 -2
  60. package/dist/components/combobox/Combobox.css +69 -53
  61. package/dist/components/combobox/Combobox.d.ts +9 -2
  62. package/dist/components/combobox/Combobox.js +34 -8
  63. package/dist/components/combobox/index.d.ts +2 -2
  64. package/dist/components/command-palette/CommandPalette.css +67 -100
  65. package/dist/components/command-palette/CommandPalette.d.ts +13 -3
  66. package/dist/components/command-palette/CommandPalette.js +54 -43
  67. package/dist/components/command-palette/CommandPalette.module.js +0 -2
  68. package/dist/components/container/Container.js +1 -1
  69. package/dist/components/date-input/DateInput.css +8 -5
  70. package/dist/components/date-input/DateInput.d.ts +12 -7
  71. package/dist/components/date-input/DateInput.js +35 -14
  72. package/dist/components/date-input/index.d.ts +2 -2
  73. package/dist/components/date-picker/DatePicker.css +78 -57
  74. package/dist/components/date-picker/DatePicker.d.ts +30 -2
  75. package/dist/components/date-picker/DatePicker.js +94 -9
  76. package/dist/components/date-picker/index.d.ts +2 -2
  77. package/dist/components/dialog/Dialog.css +19 -14
  78. package/dist/components/dialog/Dialog.d.ts +2 -2
  79. package/dist/components/dialog/Dialog.js +3 -3
  80. package/dist/components/dialog/index.d.ts +2 -2
  81. package/dist/components/drawer/Drawer.css +6 -5
  82. package/dist/components/drawer/Drawer.d.ts +2 -2
  83. package/dist/components/drawer/Drawer.js +3 -3
  84. package/dist/components/drawer/index.d.ts +2 -2
  85. package/dist/components/editable/Editable.css +12 -10
  86. package/dist/components/editable/Editable.d.ts +9 -2
  87. package/dist/components/editable/Editable.js +14 -5
  88. package/dist/components/editable/index.d.ts +2 -2
  89. package/dist/components/empty/Empty.css +2 -2
  90. package/dist/components/empty/Empty.js +1 -1
  91. package/dist/components/field/Field.css +6 -8
  92. package/dist/components/field/Field.d.ts +3 -2
  93. package/dist/components/field/Field.js +6 -5
  94. package/dist/components/field/Field.module.js +0 -1
  95. package/dist/components/field/index.d.ts +2 -2
  96. package/dist/components/fieldset/Fieldset.d.ts +2 -2
  97. package/dist/components/fieldset/Fieldset.js +3 -3
  98. package/dist/components/fieldset/index.d.ts +2 -2
  99. package/dist/components/file-upload/FileUpload.css +96 -23
  100. package/dist/components/file-upload/FileUpload.d.ts +22 -5
  101. package/dist/components/file-upload/FileUpload.js +79 -21
  102. package/dist/components/file-upload/FileUpload.module.js +3 -0
  103. package/dist/components/file-upload/index.d.ts +2 -2
  104. package/dist/components/floating-panel/FloatingPanel.css +44 -40
  105. package/dist/components/floating-panel/FloatingPanel.d.ts +10 -2
  106. package/dist/components/floating-panel/FloatingPanel.js +15 -9
  107. package/dist/components/heading/Heading.js +1 -1
  108. package/dist/components/highlight/Highlight.css +1 -1
  109. package/dist/components/highlight/Highlight.js +1 -1
  110. package/dist/components/hover-card/HoverCard.css +19 -15
  111. package/dist/components/hover-card/HoverCard.d.ts +3 -2
  112. package/dist/components/hover-card/HoverCard.js +5 -4
  113. package/dist/components/hover-card/index.d.ts +2 -2
  114. package/dist/components/image/Image.css +7 -0
  115. package/dist/components/image/Image.d.ts +12 -0
  116. package/dist/components/image/Image.js +28 -0
  117. package/dist/components/image/Image.module.js +5 -0
  118. package/dist/components/image/index.d.ts +2 -0
  119. package/dist/components/image-cropper/ImageCropper.css +15 -11
  120. package/dist/components/image-cropper/ImageCropper.d.ts +7 -2
  121. package/dist/components/image-cropper/ImageCropper.js +25 -3
  122. package/dist/components/image-cropper/index.d.ts +2 -2
  123. package/dist/components/input/Input.css +9 -9
  124. package/dist/components/input/Input.js +1 -1
  125. package/dist/components/input-group/InputGroup.css +29 -29
  126. package/dist/components/input-group/InputGroup.d.ts +3 -0
  127. package/dist/components/input-group/InputGroup.js +1 -1
  128. package/dist/components/kbd/Kbd.css +2 -2
  129. package/dist/components/kbd/Kbd.js +1 -1
  130. package/dist/components/lightbox/Lightbox.css +19 -17
  131. package/dist/components/lightbox/Lightbox.d.ts +4 -2
  132. package/dist/components/lightbox/Lightbox.js +9 -7
  133. package/dist/components/lightbox/index.d.ts +2 -2
  134. package/dist/components/list/List.js +1 -1
  135. package/dist/components/listbox/Listbox.css +87 -26
  136. package/dist/components/listbox/Listbox.d.ts +14 -2
  137. package/dist/components/listbox/Listbox.js +41 -5
  138. package/dist/components/listbox/Listbox.module.js +3 -0
  139. package/dist/components/listbox/index.d.ts +2 -2
  140. package/dist/components/marquee/Marquee.d.ts +2 -1
  141. package/dist/components/marquee/Marquee.js +4 -3
  142. package/dist/components/marquee/index.d.ts +2 -2
  143. package/dist/components/menu/Menu.css +54 -45
  144. package/dist/components/menu/Menu.d.ts +3 -2
  145. package/dist/components/menu/Menu.js +6 -5
  146. package/dist/components/menu/index.d.ts +2 -2
  147. package/dist/components/native-select/NativeSelect.css +17 -12
  148. package/dist/components/native-select/NativeSelect.d.ts +6 -2
  149. package/dist/components/native-select/NativeSelect.js +5 -4
  150. package/dist/components/number-input/NumberInput.css +17 -24
  151. package/dist/components/number-input/NumberInput.d.ts +7 -2
  152. package/dist/components/number-input/NumberInput.js +17 -4
  153. package/dist/components/number-input/index.d.ts +2 -2
  154. package/dist/components/pagination/Pagination.css +11 -11
  155. package/dist/components/pagination/Pagination.d.ts +4 -0
  156. package/dist/components/pagination/Pagination.js +13 -4
  157. package/dist/components/password-input/PasswordInput.css +4 -4
  158. package/dist/components/password-input/PasswordInput.d.ts +4 -0
  159. package/dist/components/password-input/PasswordInput.js +10 -2
  160. package/dist/components/pin-input/PinInput.css +6 -6
  161. package/dist/components/pin-input/PinInput.d.ts +6 -1
  162. package/dist/components/pin-input/PinInput.js +25 -16
  163. package/dist/components/popover/Popover.css +29 -19
  164. package/dist/components/popover/Popover.js +1 -1
  165. package/dist/components/progress-circular/ProgressCircular.css +2 -2
  166. package/dist/components/progress-circular/ProgressCircular.d.ts +6 -0
  167. package/dist/components/progress-circular/ProgressCircular.js +14 -3
  168. package/dist/components/progress-linear/ProgressLinear.css +1 -1
  169. package/dist/components/progress-linear/ProgressLinear.d.ts +3 -0
  170. package/dist/components/progress-linear/ProgressLinear.js +6 -3
  171. package/dist/components/qr-code/QrCode.css +10 -9
  172. package/dist/components/qr-code/QrCode.d.ts +2 -2
  173. package/dist/components/qr-code/QrCode.js +3 -3
  174. package/dist/components/qr-code/index.d.ts +2 -2
  175. package/dist/components/radio-group/RadioGroup.css +12 -12
  176. package/dist/components/radio-group/RadioGroup.d.ts +8 -4
  177. package/dist/components/radio-group/RadioGroup.js +22 -14
  178. package/dist/components/radio-group/index.d.ts +2 -2
  179. package/dist/components/rating-group/RatingGroup.css +10 -10
  180. package/dist/components/rating-group/RatingGroup.d.ts +11 -4
  181. package/dist/components/rating-group/RatingGroup.js +29 -18
  182. package/dist/components/rating-group/index.d.ts +2 -2
  183. package/dist/components/scroll-area/ScrollArea.css +12 -7
  184. package/dist/components/scroll-area/ScrollArea.d.ts +3 -0
  185. package/dist/components/scroll-area/ScrollArea.js +9 -6
  186. package/dist/components/segment-group/SegmentGroup.css +4 -4
  187. package/dist/components/segment-group/SegmentGroup.d.ts +13 -3
  188. package/dist/components/segment-group/SegmentGroup.js +23 -15
  189. package/dist/components/segment-group/index.d.ts +2 -2
  190. package/dist/components/select/Select.css +81 -55
  191. package/dist/components/select/Select.d.ts +18 -4
  192. package/dist/components/select/Select.js +65 -20
  193. package/dist/components/separator/Separator.css +6 -6
  194. package/dist/components/separator/Separator.js +1 -1
  195. package/dist/components/sidebar/Sidebar.css +161 -20
  196. package/dist/components/sidebar/Sidebar.d.ts +26 -0
  197. package/dist/components/sidebar/Sidebar.js +105 -13
  198. package/dist/components/sidebar/Sidebar.module.js +6 -0
  199. package/dist/components/signature-pad/SignaturePad.css +17 -45
  200. package/dist/components/signature-pad/SignaturePad.d.ts +14 -6
  201. package/dist/components/signature-pad/SignaturePad.js +56 -17
  202. package/dist/components/signature-pad/index.d.ts +2 -2
  203. package/dist/components/simple-grid/SimpleGrid.js +3 -3
  204. package/dist/components/skeleton/Skeleton.css +1 -1
  205. package/dist/components/skeleton/Skeleton.js +1 -1
  206. package/dist/components/slider/Slider.css +17 -13
  207. package/dist/components/slider/Slider.d.ts +12 -3
  208. package/dist/components/slider/Slider.js +24 -15
  209. package/dist/components/slider/index.d.ts +2 -2
  210. package/dist/components/spinner/Spinner.css +5 -5
  211. package/dist/components/spinner/Spinner.js +2 -2
  212. package/dist/components/split-button/SplitButton.css +10 -10
  213. package/dist/components/split-button/SplitButton.d.ts +1 -1
  214. package/dist/components/split-button/SplitButton.js +3 -4
  215. package/dist/components/splitter/Splitter.css +19 -18
  216. package/dist/components/splitter/Splitter.d.ts +2 -2
  217. package/dist/components/splitter/Splitter.js +12 -11
  218. package/dist/components/splitter/index.d.ts +2 -2
  219. package/dist/components/stack/Stack.d.ts +1 -3
  220. package/dist/components/stack/Stack.js +4 -6
  221. package/dist/components/steps/Steps.css +20 -19
  222. package/dist/components/steps/Steps.d.ts +2 -1
  223. package/dist/components/steps/Steps.js +5 -4
  224. package/dist/components/swap/Swap.css +45 -0
  225. package/dist/components/swap/Swap.d.ts +11 -0
  226. package/dist/components/swap/Swap.js +39 -0
  227. package/dist/components/swap/Swap.module.js +11 -0
  228. package/dist/components/swap/index.d.ts +2 -0
  229. package/dist/components/switch/Switch.css +17 -17
  230. package/dist/components/switch/Switch.d.ts +4 -4
  231. package/dist/components/switch/Switch.js +19 -16
  232. package/dist/components/switch/index.d.ts +2 -2
  233. package/dist/components/table/Table.css +3 -3
  234. package/dist/components/table/Table.js +3 -2
  235. package/dist/components/table/Table.module.js +0 -1
  236. package/dist/components/tabs/Tabs.css +22 -20
  237. package/dist/components/tabs/Tabs.d.ts +3 -2
  238. package/dist/components/tabs/Tabs.js +5 -4
  239. package/dist/components/tabs/index.d.ts +2 -2
  240. package/dist/components/tag/Tag.css +23 -53
  241. package/dist/components/tag/Tag.js +7 -20
  242. package/dist/components/tags-input/TagsInput.css +19 -55
  243. package/dist/components/tags-input/TagsInput.d.ts +7 -4
  244. package/dist/components/tags-input/TagsInput.js +33 -21
  245. package/dist/components/tags-input/index.d.ts +2 -2
  246. package/dist/components/text/Text.d.ts +2 -2
  247. package/dist/components/text/Text.js +1 -1
  248. package/dist/components/textarea/Textarea.css +4 -3
  249. package/dist/components/textarea/Textarea.js +1 -1
  250. package/dist/components/timer/Timer.css +7 -7
  251. package/dist/components/timer/Timer.d.ts +14 -2
  252. package/dist/components/timer/Timer.js +13 -5
  253. package/dist/components/timer/index.d.ts +2 -2
  254. package/dist/components/toast/Toast.css +16 -15
  255. package/dist/components/toast/Toast.d.ts +3 -1
  256. package/dist/components/toast/Toast.js +11 -2
  257. package/dist/components/toggle/Toggle.css +23 -23
  258. package/dist/components/toggle/Toggle.d.ts +3 -2
  259. package/dist/components/toggle/Toggle.js +5 -4
  260. package/dist/components/toggle/index.d.ts +2 -2
  261. package/dist/components/toggle-group/ToggleGroup.d.ts +3 -2
  262. package/dist/components/toggle-group/ToggleGroup.js +4 -3
  263. package/dist/components/toggle-group/index.d.ts +2 -2
  264. package/dist/components/tooltip/Tooltip.css +23 -18
  265. package/dist/components/tooltip/Tooltip.d.ts +3 -2
  266. package/dist/components/tooltip/Tooltip.js +10 -3
  267. package/dist/components/tooltip/index.d.ts +2 -2
  268. package/dist/components/tour/Tour.css +37 -32
  269. package/dist/components/tour/Tour.d.ts +6 -0
  270. package/dist/components/tour/Tour.js +8 -1
  271. package/dist/components/tree-view/TreeView.css +24 -21
  272. package/dist/components/tree-view/TreeView.d.ts +2 -2
  273. package/dist/components/tree-view/TreeView.js +4 -4
  274. package/dist/components/tree-view/index.d.ts +2 -2
  275. package/dist/components/typeset/Typeset.css +317 -0
  276. package/dist/components/typeset/Typeset.d.ts +7 -0
  277. package/dist/components/typeset/Typeset.js +33 -0
  278. package/dist/components/typeset/Typeset.module.js +8 -0
  279. package/dist/index.d.ts +42 -39
  280. package/dist/index.js +42 -39
  281. package/dist/lib/moduix/icons/ui/Icons.d.ts +1 -45
  282. package/dist/lib/moduix/icons/ui/Icons.js +36 -263
  283. package/dist/lib/moduix/icons/ui/index.d.ts +2 -2
  284. package/dist/lib/moduix/overlayPortal.js +1 -1
  285. package/dist/lib/moduix/presets/contrast.css +65 -0
  286. package/dist/lib/moduix/presets/dense.css +78 -0
  287. package/dist/lib/moduix/presets/soft.css +77 -0
  288. package/dist/lib/moduix/styles/reset.css +33 -0
  289. package/dist/lib/moduix/styles/style.css +17 -4
  290. package/dist/presets/contrast.d.ts +1 -0
  291. package/dist/presets/contrast.js +1 -0
  292. package/dist/presets/dense.d.ts +1 -0
  293. package/dist/presets/dense.js +1 -0
  294. package/dist/presets/soft.d.ts +1 -0
  295. package/dist/presets/soft.js +1 -0
  296. package/package.json +7 -3
@@ -1,33 +1,37 @@
1
- import { CheckIcon, PipetteIcon } from "../../lib/moduix/icons/ui/Icons.js";
2
1
  import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
2
+ import { CheckIcon, PipetteIcon } from "../../lib/moduix/icons/ui/Icons.js";
3
3
  import { OverlayPortal, OverlayPortalProvider } from "../../lib/moduix/overlayPortal.js";
4
4
  import ColorPicker_module_default from "./ColorPicker.module.js";
5
- import { jsx } from "react/jsx-runtime";
6
5
  import { clsx } from "clsx";
7
- import { forwardRef } from "react";
8
- import { ColorPicker, parseColor } from "@ark-ui/react/color-picker";
6
+ import { Children, cloneElement, forwardRef } from "react";
7
+ import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
8
+ import { ColorPicker, parseColor, useColorPicker, useColorPickerContext } from "@ark-ui/react/color-picker";
9
9
  //#region src/components/color-picker/ColorPicker.tsx
10
- const ColorPickerRoot = forwardRef(function ColorPickerRoot({ className, portalled, portalRef, ...props }, ref) {
10
+ const ColorPickerRoot = forwardRef(function ColorPickerRoot({ asChild, children, className, portalled, portalRef, ...props }, ref) {
11
11
  return /* @__PURE__ */ jsx(OverlayPortalProvider, {
12
12
  portalled,
13
13
  portalRef,
14
14
  children: /* @__PURE__ */ jsx(ColorPicker.Root, {
15
15
  ref,
16
+ asChild,
16
17
  "data-slot": "color-picker-root",
17
18
  className: clsx(ColorPicker_module_default.root, normalizeClassName(className)),
18
- ...props
19
+ ...props,
20
+ children: withHiddenInput(children, asChild)
19
21
  })
20
22
  });
21
23
  });
22
- const ColorPickerRootProvider = forwardRef(function ColorPickerRootProvider({ className, portalled, portalRef, ...props }, ref) {
24
+ const ColorPickerRootProvider = forwardRef(function ColorPickerRootProvider({ asChild, children, className, portalled, portalRef, ...props }, ref) {
23
25
  return /* @__PURE__ */ jsx(OverlayPortalProvider, {
24
26
  portalled,
25
27
  portalRef,
26
28
  children: /* @__PURE__ */ jsx(ColorPicker.RootProvider, {
27
29
  ref,
30
+ asChild,
28
31
  "data-slot": "color-picker-root-provider",
29
32
  className: clsx(ColorPicker_module_default.root, normalizeClassName(className)),
30
- ...props
33
+ ...props,
34
+ children: withHiddenInput(children, asChild)
31
35
  })
32
36
  });
33
37
  });
@@ -47,12 +51,19 @@ const ColorPickerControl = forwardRef(function ColorPickerControl({ className, .
47
51
  ...props
48
52
  });
49
53
  });
50
- const ColorPickerTrigger = forwardRef(function ColorPickerTrigger({ className, ...props }, ref) {
54
+ const ColorPickerTrigger = forwardRef(function ColorPickerTrigger({ className, children, ...props }, ref) {
51
55
  return /* @__PURE__ */ jsx(ColorPicker.Trigger, {
52
56
  ref,
53
57
  "data-slot": "color-picker-trigger",
54
58
  className: clsx(ColorPicker_module_default.trigger, normalizeClassName(className)),
55
- ...props
59
+ ...props,
60
+ children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(ColorPicker.TransparencyGrid, {
61
+ "data-slot": "color-picker-transparency-grid",
62
+ className: ColorPicker_module_default.transparencyGrid
63
+ }), /* @__PURE__ */ jsx(ColorPicker.ValueSwatch, {
64
+ "data-slot": "color-picker-value-swatch",
65
+ className: ColorPicker_module_default.valueSwatch
66
+ })] })
56
67
  });
57
68
  });
58
69
  const ColorPickerPositioner = forwardRef(function ColorPickerPositioner({ className, ...props }, ref) {
@@ -71,12 +82,19 @@ const ColorPickerContent = forwardRef(function ColorPickerContent({ className, .
71
82
  ...props
72
83
  });
73
84
  });
74
- const ColorPickerArea = forwardRef(function ColorPickerArea({ className, ...props }, ref) {
85
+ const ColorPickerArea = forwardRef(function ColorPickerArea({ className, children, ...props }, ref) {
75
86
  return /* @__PURE__ */ jsx(ColorPicker.Area, {
76
87
  ref,
77
88
  "data-slot": "color-picker-area",
78
89
  className: clsx(ColorPicker_module_default.area, normalizeClassName(className)),
79
- ...props
90
+ ...props,
91
+ children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsx(ColorPicker.AreaBackground, {
92
+ "data-slot": "color-picker-area-background",
93
+ className: ColorPicker_module_default.areaBackground
94
+ }), /* @__PURE__ */ jsx(ColorPicker.AreaThumb, {
95
+ "data-slot": "color-picker-area-thumb",
96
+ className: ColorPicker_module_default.thumb
97
+ })] })
80
98
  });
81
99
  });
82
100
  const ColorPickerAreaBackground = forwardRef(function ColorPickerAreaBackground({ className, ...props }, ref) {
@@ -95,12 +113,36 @@ const ColorPickerAreaThumb = forwardRef(function ColorPickerAreaThumb({ classNam
95
113
  ...props
96
114
  });
97
115
  });
98
- const ColorPickerChannelSlider = forwardRef(function ColorPickerChannelSlider({ className, ...props }, ref) {
116
+ const ColorPickerChannelSlider = forwardRef(function ColorPickerChannelSlider({ className, children, channel, ...props }, ref) {
99
117
  return /* @__PURE__ */ jsx(ColorPicker.ChannelSlider, {
100
118
  ref,
101
119
  "data-slot": "color-picker-channel-slider",
102
120
  className: clsx(ColorPicker_module_default.channelSlider, normalizeClassName(className)),
103
- ...props
121
+ channel,
122
+ ...props,
123
+ children: children ?? /* @__PURE__ */ jsxs(Fragment$1, { children: [
124
+ channel === "alpha" && /* @__PURE__ */ jsx(ColorPicker.TransparencyGrid, {
125
+ "data-slot": "color-picker-transparency-grid",
126
+ className: ColorPicker_module_default.transparencyGrid
127
+ }),
128
+ /* @__PURE__ */ jsx(ColorPicker.ChannelSliderTrack, {
129
+ "data-slot": "color-picker-channel-slider-track",
130
+ className: ColorPicker_module_default.channelSliderTrack
131
+ }),
132
+ /* @__PURE__ */ jsx(ColorPicker.ChannelSliderThumb, {
133
+ "data-slot": "color-picker-channel-slider-thumb",
134
+ className: ColorPicker_module_default.thumb
135
+ })
136
+ ] })
137
+ });
138
+ });
139
+ const ColorPickerSliders = forwardRef(function ColorPickerSliders({ className, ...props }, ref) {
140
+ return /* @__PURE__ */ jsxs("div", {
141
+ ref,
142
+ "data-slot": "color-picker-sliders",
143
+ className: clsx(ColorPicker_module_default.sliders, normalizeClassName(className)),
144
+ ...props,
145
+ children: [/* @__PURE__ */ jsx(ColorPickerChannelSlider, { channel: "hue" }), /* @__PURE__ */ jsx(ColorPickerChannelSlider, { channel: "alpha" })]
104
146
  });
105
147
  });
106
148
  const ColorPickerChannelSliderTrack = forwardRef(function ColorPickerChannelSliderTrack({ className, ...props }, ref) {
@@ -176,12 +218,23 @@ const ColorPickerSwatchGroup = forwardRef(function ColorPickerSwatchGroup({ clas
176
218
  ...props
177
219
  });
178
220
  });
179
- const ColorPickerSwatchTrigger = forwardRef(function ColorPickerSwatchTrigger({ className, ...props }, ref) {
221
+ const ColorPickerSwatchTrigger = forwardRef(function ColorPickerSwatchTrigger({ className, children, value, ...props }, ref) {
180
222
  return /* @__PURE__ */ jsx(ColorPicker.SwatchTrigger, {
181
223
  ref,
182
224
  "data-slot": "color-picker-swatch-trigger",
183
225
  className: clsx(ColorPicker_module_default.swatchTrigger, normalizeClassName(className)),
184
- ...props
226
+ value,
227
+ ...props,
228
+ children: children ?? /* @__PURE__ */ jsx(ColorPicker.Swatch, {
229
+ "data-slot": "color-picker-swatch",
230
+ className: ColorPicker_module_default.swatch,
231
+ value,
232
+ children: /* @__PURE__ */ jsx(ColorPicker.SwatchIndicator, {
233
+ "data-slot": "color-picker-swatch-indicator",
234
+ className: ColorPicker_module_default.swatchIndicator,
235
+ children: /* @__PURE__ */ jsx(CheckIcon, {})
236
+ })
237
+ })
185
238
  });
186
239
  });
187
240
  const ColorPickerSwatch = forwardRef(function ColorPickerSwatch({ className, ...props }, ref) {
@@ -233,14 +286,12 @@ const ColorPickerView = forwardRef(function ColorPickerView({ className, ...prop
233
286
  ...props
234
287
  });
235
288
  });
236
- const ColorPickerHiddenInput = forwardRef(function ColorPickerHiddenInput({ className, ...props }, ref) {
237
- return /* @__PURE__ */ jsx(ColorPicker.HiddenInput, {
238
- ref,
239
- "data-slot": "color-picker-hidden-input",
240
- className: normalizeClassName(className),
241
- ...props
242
- });
243
- });
289
+ function withHiddenInput(children, asChild) {
290
+ const hiddenInput = /* @__PURE__ */ jsx(ColorPicker.HiddenInput, { "data-slot": "color-picker-hidden-input" });
291
+ if (!asChild) return /* @__PURE__ */ jsxs(Fragment$1, { children: [children, hiddenInput] });
292
+ const child = Children.only(children);
293
+ return cloneElement(child, {}, child.props.children, hiddenInput);
294
+ }
244
295
  const ColorPicker$1 = Object.assign(ColorPickerRoot, {
245
296
  Root: ColorPickerRoot,
246
297
  RootProvider: ColorPickerRootProvider,
@@ -253,6 +304,7 @@ const ColorPicker$1 = Object.assign(ColorPickerRoot, {
253
304
  AreaBackground: ColorPickerAreaBackground,
254
305
  AreaThumb: ColorPickerAreaThumb,
255
306
  ChannelSlider: ColorPickerChannelSlider,
307
+ Sliders: ColorPickerSliders,
256
308
  ChannelSliderTrack: ColorPickerChannelSliderTrack,
257
309
  ChannelSliderThumb: ColorPickerChannelSliderThumb,
258
310
  ChannelSliderLabel: ColorPickerChannelSliderLabel,
@@ -268,8 +320,7 @@ const ColorPicker$1 = Object.assign(ColorPickerRoot, {
268
320
  TransparencyGrid: ColorPickerTransparencyGrid,
269
321
  ValueSwatch: ColorPickerValueSwatch,
270
322
  ValueText: ColorPickerValueText,
271
- View: ColorPickerView,
272
- HiddenInput: ColorPickerHiddenInput
323
+ View: ColorPickerView
273
324
  });
274
325
  //#endregion
275
- export { ColorPicker$1 as ColorPicker, parseColor };
326
+ export { ColorPicker$1 as ColorPicker, parseColor, useColorPicker, useColorPickerContext };
@@ -18,6 +18,7 @@ var ColorPicker_module_default = {
18
18
  "label": "kgcaIq_label",
19
19
  "positioner": "kgcaIq_positioner",
20
20
  "root": "kgcaIq_root",
21
+ "sliders": "kgcaIq_sliders",
21
22
  "swatch": "kgcaIq_swatch",
22
23
  "swatchGroup": "kgcaIq_swatchGroup",
23
24
  "swatchIndicator": "kgcaIq_swatchIndicator",
@@ -1,2 +1,2 @@
1
- import { ColorPicker, parseColor } from "./ColorPicker.js";
2
- export { ColorPicker, parseColor };
1
+ import { ColorPicker, parseColor, useColorPicker, useColorPickerContext } from "./ColorPicker.js";
2
+ export { ColorPicker, parseColor, useColorPicker, useColorPickerContext };
@@ -1,8 +1,10 @@
1
1
  @layer ui.components {
2
2
  @keyframes mcW7mG_combobox-content-open {
3
3
  from {
4
- opacity: var(--combobox-content-closed-opacity, 0);
5
- transform: scale(var(--combobox-content-closed-scale, var(--scale-popup)));
4
+ opacity: var(--combobox-content-closed-opacity, var(--popup-motion-starting-opacity, 0));
5
+ translate: var(--popup-motion-starting-translate-x, 0)
6
+ var(--popup-motion-starting-translate-y, 0);
7
+ transform: scale(var(--combobox-content-closed-scale, var(--popup-motion-starting-scale, var(--scale-popup))));
6
8
  }
7
9
 
8
10
  to {
@@ -18,8 +20,9 @@
18
20
  }
19
21
 
20
22
  to {
21
- opacity: var(--combobox-content-closed-opacity, 0);
22
- transform: scale(var(--combobox-content-closed-scale, var(--scale-popup)));
23
+ opacity: var(--combobox-content-closed-opacity, var(--popup-motion-ending-opacity, 0));
24
+ translate: var(--popup-motion-ending-translate-x, 0) var(--popup-motion-ending-translate-y, 0);
25
+ transform: scale(var(--combobox-content-closed-scale, var(--popup-motion-ending-scale, var(--scale-popup))));
23
26
  }
24
27
  }
25
28
 
@@ -27,7 +30,7 @@
27
30
  box-sizing: border-box;
28
31
  width: var(--combobox-width, 16rem);
29
32
  max-width: var(--combobox-max-width, 100%);
30
- gap: var(--combobox-root-gap, .375rem);
33
+ gap: var(--combobox-root-gap, var(--spacing-1-5));
31
34
  min-width: 0;
32
35
  color: var(--combobox-color, var(--color-foreground));
33
36
  flex-direction: column;
@@ -56,8 +59,9 @@
56
59
  width: 100%;
57
60
  min-width: 0;
58
61
  color: var(--combobox-color, var(--color-foreground));
59
- outline: var(--combobox-focus-ring-width, var(--border-width-sm)) solid transparent;
60
- outline-offset: calc(var(--combobox-focus-ring-width, var(--border-width-sm)) * -1);
62
+ outline: var(--combobox-focus-ring-width, var(--focus-ring-inset-width, var(--border-width-sm)))
63
+ solid transparent;
64
+ outline-offset: calc(var(--combobox-focus-ring-width, var(--focus-ring-inset-width, var(--border-width-sm))) * -1);
61
65
  transition: background-color var(--combobox-transition, var(--transition-default)),
62
66
  border-color var(--combobox-transition, var(--transition-default)),
63
67
  outline-color var(--combobox-transition, var(--transition-default));
@@ -65,13 +69,7 @@
65
69
  display: flex;
66
70
  position: relative;
67
71
 
68
- &[data-state="open"] {
69
- background-color: var(--combobox-bg-active, var(--color-muted));
70
- border-color: var(--combobox-focus-ring-color, var(--color-ring));
71
- outline-color: var(--combobox-focus-ring-color, var(--color-ring));
72
- }
73
-
74
- &[data-focus] {
72
+ &[data-state="open"], &[data-focus] {
75
73
  border-color: var(--combobox-focus-ring-color, var(--color-ring));
76
74
  outline-color: var(--combobox-focus-ring-color, var(--color-ring));
77
75
  }
@@ -84,24 +82,16 @@
84
82
  &[data-disabled] {
85
83
  opacity: var(--combobox-disabled-opacity, var(--opacity-disabled));
86
84
  }
87
-
88
- &:not([data-disabled]) {
89
- @media (hover: hover) {
90
- &:hover:not(:has(.mcW7mG_clearTrigger:hover)) {
91
- background-color: var(--combobox-bg-hover, var(--color-accent));
92
- }
93
- }
94
- }
95
85
  }
96
86
 
97
87
  .mcW7mG_input {
98
88
  box-sizing: border-box;
99
89
  width: 100%;
100
90
  min-width: 0;
101
- height: var(--combobox-control-height, var(--size-lg));
91
+ height: var(--combobox-control-height, var(--size-md));
102
92
  border-radius: inherit;
103
- padding-inline: var(--combobox-input-padding-x-start, .875rem)
104
- var(--combobox-input-padding-x-end, 4.25rem);
93
+ padding-inline: var(--combobox-input-padding-x-start, var(--spacing-3-5))
94
+ var(--combobox-input-padding-x-end, var(--spacing-3-5));
105
95
  color: inherit;
106
96
  font: inherit;
107
97
  background: none;
@@ -114,10 +104,18 @@
114
104
  }
115
105
  }
116
106
 
117
- .mcW7mG_trigger, .mcW7mG_clearTrigger {
107
+ .mcW7mG_control:has(.mcW7mG_trigger) .mcW7mG_input {
108
+ padding-inline-end: var(--combobox-input-padding-x-end-with-trigger, 2.75rem);
109
+ }
110
+
111
+ .mcW7mG_control:has(.mcW7mG_clearTrigger) .mcW7mG_input {
112
+ padding-inline-end: var(--combobox-input-padding-x-end-with-clear, 4.375rem);
113
+ }
114
+
115
+ .mcW7mG_trigger {
118
116
  box-sizing: border-box;
119
- width: var(--combobox-action-size, 1.5rem);
120
- height: var(--combobox-action-size, 1.5rem);
117
+ width: var(--combobox-action-size, var(--size-xs));
118
+ height: var(--combobox-action-size, var(--size-xs));
121
119
  border-radius: var(--combobox-action-radius, var(--radius-sm));
122
120
  background: var(--combobox-action-bg, transparent);
123
121
  color: var(--combobox-icon-color, var(--color-muted-foreground));
@@ -138,14 +136,14 @@
138
136
  transform: translateY(-50%);
139
137
 
140
138
  & > svg {
141
- width: var(--combobox-icon-size, 1rem);
142
- height: var(--combobox-icon-size, 1rem);
139
+ width: var(--combobox-icon-size, var(--spacing-4));
140
+ height: var(--combobox-icon-size, var(--spacing-4));
143
141
  display: block;
144
142
  }
145
143
 
146
144
  &:focus-visible {
147
- outline: var(--combobox-focus-ring-width, var(--border-width-sm)) solid
148
- var(--combobox-focus-ring-color, var(--color-ring));
145
+ outline: var(--combobox-focus-ring-width, var(--focus-ring-inset-width, var(--border-width-sm)))
146
+ solid var(--combobox-focus-ring-color, var(--color-ring));
149
147
  outline-offset: var(--combobox-focus-ring-offset, var(--border-width-sm));
150
148
  }
151
149
 
@@ -164,12 +162,26 @@
164
162
  }
165
163
 
166
164
  .mcW7mG_trigger {
167
- right: var(--combobox-action-offset-right, .5rem);
165
+ inset-inline-end: var(--combobox-action-offset-right, var(--spacing-2));
168
166
  }
169
167
 
170
168
  .mcW7mG_clearTrigger {
171
- right: calc(var(--combobox-action-offset-right, .5rem) + var(--combobox-action-size, 1.5rem) +
172
- var(--combobox-action-gap, .125rem));
169
+ --close-button-size: var(--combobox-action-size, var(--size-xs));
170
+ --close-button-icon-size: var(--combobox-icon-size, var(--spacing-4));
171
+ --close-button-radius: var(--combobox-action-radius, var(--radius-sm));
172
+ --close-button-bg: var(--combobox-action-bg, transparent);
173
+ --close-button-bg-hover: var(--combobox-action-bg-hover, var(--color-muted));
174
+ --close-button-color: var(--combobox-icon-color, var(--color-muted-foreground));
175
+ --close-button-color-hover: var(--combobox-action-color-hover, var(--color-foreground));
176
+ --close-button-focus-ring-width: var(--combobox-focus-ring-width, var(--focus-ring-inset-width, var(--border-width-sm)));
177
+ --close-button-focus-ring-color: var(--combobox-focus-ring-color, var(--color-ring));
178
+ --close-button-focus-ring-offset: var(--combobox-focus-ring-offset, var(--border-width-sm));
179
+ --close-button-transition: var(--combobox-transition, var(--transition-default));
180
+ top: 50%;
181
+ position: absolute;
182
+ inset-inline-end: calc(var(--combobox-action-offset-right, var(--spacing-2)) +
183
+ var(--combobox-action-size, var(--size-xs)) + var(--combobox-action-gap, var(--spacing-0-5)));
184
+ transform: translateY(-50%);
173
185
  }
174
186
 
175
187
  .mcW7mG_positioner {
@@ -186,7 +198,7 @@
186
198
  border: var(--combobox-content-border-width, var(--border-width-sm)) solid
187
199
  var(--combobox-content-border-color, var(--color-border));
188
200
  border-radius: var(--combobox-radius, var(--radius-md));
189
- padding-block: var(--combobox-content-padding-y, var(--spacing-1));
201
+ padding-block: var(--combobox-content-padding-y, var(--popup-list-padding-y, var(--spacing-1)));
190
202
  background-color: var(--combobox-content-bg, var(--color-popover));
191
203
  box-shadow: var(--combobox-content-shadow, var(--shadow-lg));
192
204
  color: var(--combobox-content-color, var(--color-popover-foreground));
@@ -199,11 +211,15 @@
199
211
  overflow: auto;
200
212
 
201
213
  &[data-state="open"] {
202
- animation: mcW7mG_combobox-content-open var(--combobox-transition, var(--transition-default));
214
+ animation: mcW7mG_combobox-content-open
215
+ var(--combobox-transition, var(--popup-motion-duration, var(--duration-normal))
216
+ var(--popup-motion-easing, var(--ease-in-out)));
203
217
  }
204
218
 
205
219
  &[data-state="closed"] {
206
- animation: mcW7mG_combobox-content-closed var(--combobox-transition, var(--transition-default));
220
+ animation: mcW7mG_combobox-content-closed
221
+ var(--combobox-transition, var(--popup-motion-duration, var(--duration-normal))
222
+ var(--popup-motion-easing, var(--ease-in-out)));
207
223
  }
208
224
  }
209
225
 
@@ -222,8 +238,8 @@
222
238
  }
223
239
 
224
240
  .mcW7mG_empty {
225
- padding-block: var(--combobox-empty-padding-y, .75rem);
226
- padding-inline: var(--combobox-empty-padding-x, 1rem);
241
+ padding-block: var(--combobox-empty-padding-y, var(--spacing-3));
242
+ padding-inline: var(--combobox-empty-padding-x, var(--spacing-4));
227
243
  color: var(--combobox-empty-color, var(--color-muted-foreground));
228
244
  font-size: var(--combobox-empty-font-size, var(--text-sm));
229
245
  line-height: var(--combobox-empty-line-height, var(--line-height-text-sm));
@@ -240,13 +256,13 @@
240
256
 
241
257
  .mcW7mG_itemGroupLabel {
242
258
  z-index: 1;
243
- padding-block: var(--combobox-item-group-label-padding-y, .35rem);
244
- padding-inline: var(--combobox-item-group-label-padding-x, .625rem);
259
+ padding-block: var(--combobox-item-group-label-padding-y, var(--popup-group-label-padding-y, var(--spacing-1)));
260
+ padding-inline: var(--combobox-item-group-label-padding-x, var(--spacing-2-5));
245
261
  background-color: var(--combobox-content-bg, var(--color-popover));
246
- color: var(--combobox-item-group-label-color, var(--color-muted-foreground));
247
- font-size: var(--combobox-item-group-label-font-size, var(--text-xs));
248
- font-weight: var(--combobox-item-group-label-font-weight, var(--weight-semibold));
249
- line-height: var(--combobox-item-group-label-line-height, var(--line-height-text-xs));
262
+ color: var(--combobox-item-group-label-color, var(--popup-group-label-color, var(--color-muted-foreground)));
263
+ font-size: var(--combobox-item-group-label-font-size, var(--popup-group-label-font-size, var(--text-xs)));
264
+ font-weight: var(--combobox-item-group-label-font-weight, var(--popup-group-label-font-weight, var(--weight-regular)));
265
+ line-height: var(--combobox-item-group-label-line-height, var(--popup-group-label-line-height, var(--line-height-text-xs)));
250
266
  position: sticky;
251
267
  top: 0;
252
268
  }
@@ -254,7 +270,7 @@
254
270
  .mcW7mG_item {
255
271
  box-sizing: border-box;
256
272
  width: calc(100% - var(--combobox-item-inset-x, var(--spacing-2)));
257
- min-height: var(--combobox-item-min-height, 2rem);
273
+ min-height: var(--combobox-item-min-height, var(--popup-item-min-height, var(--size-sm)));
258
274
  justify-content: space-between;
259
275
  align-items: center;
260
276
  gap: var(--combobox-item-gap, var(--spacing-2));
@@ -262,13 +278,13 @@
262
278
  border: var(--combobox-item-border-width, 0) solid
263
279
  var(--combobox-item-border-color, transparent);
264
280
  border-radius: var(--combobox-item-radius, var(--radius-sm));
265
- padding-block: var(--combobox-item-padding-y, var(--spacing-2));
266
- padding-inline: var(--combobox-item-padding-x, .625rem);
281
+ padding-block: var(--combobox-item-padding-y, var(--popup-item-padding-y, var(--spacing-1)));
282
+ padding-inline: var(--combobox-item-padding-x, var(--popup-item-padding-x-start, var(--spacing-3)));
267
283
  background-color: var(--combobox-item-bg, transparent);
268
284
  color: var(--combobox-item-color, var(--combobox-content-color, var(--color-foreground)));
269
285
  font: inherit;
270
- font-size: var(--combobox-item-font-size, var(--text-sm));
271
- line-height: var(--combobox-item-line-height, var(--line-height-text-sm));
286
+ font-size: var(--combobox-item-font-size, var(--popup-item-font-size, var(--text-sm)));
287
+ line-height: var(--combobox-item-line-height, var(--popup-item-line-height, var(--line-height-text-sm)));
272
288
  cursor: default;
273
289
  user-select: none;
274
290
  outline: 0;
@@ -300,8 +316,8 @@
300
316
  }
301
317
 
302
318
  .mcW7mG_itemIndicator {
303
- width: var(--combobox-item-indicator-size, .75rem);
304
- height: var(--combobox-item-indicator-size, .75rem);
319
+ width: var(--combobox-item-indicator-size, var(--spacing-3));
320
+ height: var(--combobox-item-indicator-size, var(--spacing-3));
305
321
  flex-shrink: 0;
306
322
  justify-content: center;
307
323
  align-items: center;
@@ -1,7 +1,12 @@
1
1
  import { OverlayPortalProps } from "../../lib/moduix/overlayPortal.js";
2
- import { Combobox } from "@ark-ui/react/combobox";
2
+ import { ComponentProps, ReactNode } from "react";
3
+ import { Combobox, useCombobox, useComboboxContext } from "@ark-ui/react/combobox";
3
4
 
4
5
  //#region src/components/combobox/Combobox.d.ts
6
+ type ComboboxOptionProps = Omit<ComponentProps<typeof Combobox.Item>, 'asChild' | 'children'> & {
7
+ children: ReactNode;
8
+ indicator?: ReactNode | false;
9
+ };
5
10
  declare const Combobox$1: Combobox.RootComponent<OverlayPortalProps> & {
6
11
  Root: Combobox.RootComponent<OverlayPortalProps>;
7
12
  RootProvider: Combobox.RootProviderComponent<OverlayPortalProps>;
@@ -19,6 +24,8 @@ declare const Combobox$1: Combobox.RootComponent<OverlayPortalProps> & {
19
24
  Item: import("react").ForwardRefExoticComponent<Omit<Combobox.ItemProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
20
25
  ItemText: import("react").ForwardRefExoticComponent<Omit<Combobox.ItemTextProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
21
26
  ItemIndicator: import("react").ForwardRefExoticComponent<Omit<Combobox.ItemIndicatorProps & import("react").RefAttributes<HTMLDivElement>, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
27
+ Option: import("react").ForwardRefExoticComponent<Omit<ComboboxOptionProps, "ref"> & import("react").RefAttributes<HTMLDivElement>>;
28
+ Context: <T extends unknown>(props: Combobox.ContextProps<T>) => ReactNode;
22
29
  };
23
30
  //#endregion
24
- export { Combobox$1 as Combobox };
31
+ export { Combobox$1 as Combobox, useCombobox, useComboboxContext };
@@ -1,11 +1,12 @@
1
- import { CheckIcon, ChevronUpDownIcon, CloseIcon } from "../../lib/moduix/icons/ui/Icons.js";
2
1
  import { normalizeClassName } from "../../lib/moduix/normalizeClassName.js";
2
+ import { CheckIcon, ChevronUpDownIcon } from "../../lib/moduix/icons/ui/Icons.js";
3
+ import { CloseButton } from "../close-button/CloseButton.js";
3
4
  import { OverlayPortal, OverlayPortalProvider } from "../../lib/moduix/overlayPortal.js";
4
5
  import Combobox_module_default from "./Combobox.module.js";
5
- import { jsx } from "react/jsx-runtime";
6
6
  import { clsx } from "clsx";
7
7
  import { forwardRef } from "react";
8
- import { Combobox } from "@ark-ui/react/combobox";
8
+ import { jsx, jsxs } from "react/jsx-runtime";
9
+ import { Combobox, useCombobox, useComboboxContext } from "@ark-ui/react/combobox";
9
10
  //#region src/components/combobox/Combobox.tsx
10
11
  const ComboboxRoot = forwardRef(function ComboboxRoot({ className, portalled, portalRef, ...props }, ref) {
11
12
  return /* @__PURE__ */ jsx(OverlayPortalProvider, {
@@ -56,13 +57,29 @@ const ComboboxInput = forwardRef(function ComboboxInput({ asChild, className, ..
56
57
  ...props
57
58
  });
58
59
  });
59
- const ComboboxClearTrigger = forwardRef(function ComboboxClearTrigger({ className, children, ...props }, ref) {
60
+ const ComboboxClearTrigger = forwardRef(function ComboboxClearTrigger({ asChild, className, children, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...props }, ref) {
61
+ const triggerClassName = clsx(Combobox_module_default.clearTrigger, normalizeClassName(className));
62
+ if (asChild) return /* @__PURE__ */ jsx(Combobox.ClearTrigger, {
63
+ ref,
64
+ asChild: true,
65
+ "data-slot": "combobox-clear-trigger",
66
+ className: triggerClassName,
67
+ "aria-label": ariaLabel,
68
+ "aria-labelledby": ariaLabelledBy,
69
+ ...props,
70
+ children
71
+ });
60
72
  return /* @__PURE__ */ jsx(Combobox.ClearTrigger, {
61
73
  ref,
74
+ asChild: true,
62
75
  "data-slot": "combobox-clear-trigger",
63
- className: clsx(Combobox_module_default.clearTrigger, normalizeClassName(className)),
76
+ className: triggerClassName,
64
77
  ...props,
65
- children: children ?? /* @__PURE__ */ jsx(CloseIcon, {})
78
+ children: /* @__PURE__ */ jsx(CloseButton.Root, {
79
+ "aria-label": ariaLabel ?? (ariaLabelledBy == null ? "Clear selection" : void 0),
80
+ "aria-labelledby": ariaLabelledBy,
81
+ children
82
+ })
66
83
  });
67
84
  });
68
85
  const ComboboxTrigger = forwardRef(function ComboboxTrigger({ className, children, ...props }, ref) {
@@ -147,6 +164,13 @@ const ComboboxItemIndicator = forwardRef(function ComboboxItemIndicator({ classN
147
164
  children: children ?? /* @__PURE__ */ jsx(CheckIcon, {})
148
165
  });
149
166
  });
167
+ const ComboboxOption = forwardRef(function ComboboxOption({ children, indicator, ...props }, ref) {
168
+ return /* @__PURE__ */ jsxs(ComboboxItem, {
169
+ ref,
170
+ ...props,
171
+ children: [/* @__PURE__ */ jsx(ComboboxItemText, { children }), indicator !== false ? /* @__PURE__ */ jsx(ComboboxItemIndicator, { children: indicator }) : null]
172
+ });
173
+ });
150
174
  const Combobox$1 = Object.assign(ComboboxRoot, {
151
175
  Root: ComboboxRoot,
152
176
  RootProvider: ComboboxRootProvider,
@@ -163,7 +187,9 @@ const Combobox$1 = Object.assign(ComboboxRoot, {
163
187
  ItemGroupLabel: ComboboxItemGroupLabel,
164
188
  Item: ComboboxItem,
165
189
  ItemText: ComboboxItemText,
166
- ItemIndicator: ComboboxItemIndicator
190
+ ItemIndicator: ComboboxItemIndicator,
191
+ Option: ComboboxOption,
192
+ Context: Combobox.Context
167
193
  });
168
194
  //#endregion
169
- export { Combobox$1 as Combobox };
195
+ export { Combobox$1 as Combobox, useCombobox, useComboboxContext };
@@ -1,2 +1,2 @@
1
- import { Combobox } from "./Combobox.js";
2
- export { Combobox };
1
+ import { Combobox, useCombobox, useComboboxContext } from "./Combobox.js";
2
+ export { Combobox, useCombobox, useComboboxContext };