@brijbyte/agentic-ui 0.0.3 → 0.0.5

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 (289) hide show
  1. package/README.md +280 -53
  2. package/dist/accordion/accordion.d.ts +14 -0
  3. package/dist/accordion/accordion.d.ts.map +1 -1
  4. package/dist/accordion/accordion.js +5 -0
  5. package/dist/accordion/accordion.js.map +1 -1
  6. package/dist/accordion/index.d.ts +2 -2
  7. package/dist/accordion/index.js +2 -2
  8. package/dist/accordion/parts.d.ts +6 -14
  9. package/dist/accordion/parts.d.ts.map +1 -1
  10. package/dist/accordion/parts.js +7 -6
  11. package/dist/accordion/parts.js.map +1 -1
  12. package/dist/alert-dialog/alert-dialog.d.ts +11 -0
  13. package/dist/alert-dialog/alert-dialog.d.ts.map +1 -1
  14. package/dist/alert-dialog/alert-dialog.js +5 -0
  15. package/dist/alert-dialog/alert-dialog.js.map +1 -1
  16. package/dist/alert-dialog/parts.d.ts +4 -12
  17. package/dist/alert-dialog/parts.d.ts.map +1 -1
  18. package/dist/alert-dialog/parts.js +17 -19
  19. package/dist/alert-dialog/parts.js.map +1 -1
  20. package/dist/badge/badge.d.ts +6 -0
  21. package/dist/badge/badge.d.ts.map +1 -1
  22. package/dist/badge/badge.js +4 -0
  23. package/dist/badge/badge.js.map +1 -1
  24. package/dist/button/button.d.ts +12 -1
  25. package/dist/button/button.d.ts.map +1 -1
  26. package/dist/button/button.js +5 -0
  27. package/dist/button/button.js.map +1 -1
  28. package/dist/card/card.d.ts +10 -0
  29. package/dist/card/card.d.ts.map +1 -1
  30. package/dist/card/card.js +7 -0
  31. package/dist/card/card.js.map +1 -1
  32. package/dist/checkbox/checkbox.d.ts +13 -0
  33. package/dist/checkbox/checkbox.d.ts.map +1 -1
  34. package/dist/checkbox/checkbox.js +4 -0
  35. package/dist/checkbox/checkbox.js.map +1 -1
  36. package/dist/checkbox/parts.d.ts +2 -5
  37. package/dist/checkbox/parts.d.ts.map +1 -1
  38. package/dist/checkbox/parts.js +3 -2
  39. package/dist/checkbox/parts.js.map +1 -1
  40. package/dist/collapsible/collapsible.d.ts +11 -0
  41. package/dist/collapsible/collapsible.d.ts.map +1 -1
  42. package/dist/collapsible/collapsible.js +5 -0
  43. package/dist/collapsible/collapsible.js.map +1 -1
  44. package/dist/collapsible/parts.d.ts +3 -9
  45. package/dist/collapsible/parts.d.ts.map +1 -1
  46. package/dist/collapsible/parts.js +7 -6
  47. package/dist/collapsible/parts.js.map +1 -1
  48. package/dist/context-menu/context-menu.d.ts +5 -0
  49. package/dist/context-menu/context-menu.d.ts.map +1 -1
  50. package/dist/context-menu/context-menu.js +4 -0
  51. package/dist/context-menu/context-menu.js.map +1 -1
  52. package/dist/context-menu/parts.d.ts +6 -18
  53. package/dist/context-menu/parts.d.ts.map +1 -1
  54. package/dist/context-menu/parts.js +16 -16
  55. package/dist/context-menu/parts.js.map +1 -1
  56. package/dist/dialog/dialog.d.ts +13 -1
  57. package/dist/dialog/dialog.d.ts.map +1 -1
  58. package/dist/dialog/dialog.js +6 -0
  59. package/dist/dialog/dialog.js.map +1 -1
  60. package/dist/dialog/parts.d.ts +6 -18
  61. package/dist/dialog/parts.d.ts.map +1 -1
  62. package/dist/dialog/parts.js +8 -9
  63. package/dist/dialog/parts.js.map +1 -1
  64. package/dist/drawer/drawer.d.ts +11 -0
  65. package/dist/drawer/drawer.d.ts.map +1 -1
  66. package/dist/drawer/drawer.js +5 -0
  67. package/dist/drawer/drawer.js.map +1 -1
  68. package/dist/drawer/parts.d.ts +7 -19
  69. package/dist/drawer/parts.d.ts.map +1 -1
  70. package/dist/drawer/parts.js +14 -13
  71. package/dist/drawer/parts.js.map +1 -1
  72. package/dist/index.css +1580 -1150
  73. package/dist/index.d.ts +20 -11
  74. package/dist/index.js +15 -2
  75. package/dist/input/input.d.ts +8 -0
  76. package/dist/input/input.d.ts.map +1 -1
  77. package/dist/input/input.js +5 -0
  78. package/dist/input/input.js.map +1 -1
  79. package/dist/menu/menu.css +3 -8
  80. package/dist/menu/menu.d.ts +11 -4
  81. package/dist/menu/menu.d.ts.map +1 -1
  82. package/dist/menu/menu.js +10 -24
  83. package/dist/menu/menu.js.map +1 -1
  84. package/dist/menu/menu.module.js +1 -1
  85. package/dist/menu/menu.module.js.map +1 -1
  86. package/dist/menu/parts.d.ts +6 -18
  87. package/dist/menu/parts.d.ts.map +1 -1
  88. package/dist/menu/parts.js +7 -6
  89. package/dist/menu/parts.js.map +1 -1
  90. package/dist/meter/circular-meter.d.ts +48 -0
  91. package/dist/meter/circular-meter.d.ts.map +1 -0
  92. package/dist/meter/circular-meter.js +86 -0
  93. package/dist/meter/circular-meter.js.map +1 -0
  94. package/dist/meter/index.d.ts +4 -0
  95. package/dist/meter/index.js +5 -0
  96. package/dist/meter/meter.css +152 -0
  97. package/dist/meter/meter.d.ts +58 -0
  98. package/dist/meter/meter.d.ts.map +1 -0
  99. package/dist/meter/meter.js +50 -0
  100. package/dist/meter/meter.js.map +1 -0
  101. package/dist/meter/meter.module.css.d.ts +2 -0
  102. package/dist/meter/meter.module.js +27 -0
  103. package/dist/meter/meter.module.js.map +1 -0
  104. package/dist/meter/meterState.js +18 -0
  105. package/dist/meter/meterState.js.map +1 -0
  106. package/dist/meter/parts.d.ts +25 -0
  107. package/dist/meter/parts.d.ts.map +1 -0
  108. package/dist/meter/parts.js +57 -0
  109. package/dist/meter/parts.js.map +1 -0
  110. package/dist/number-field/number-field.d.ts +16 -0
  111. package/dist/number-field/number-field.d.ts.map +1 -1
  112. package/dist/number-field/number-field.js +4 -0
  113. package/dist/number-field/number-field.js.map +1 -1
  114. package/dist/number-field/parts.d.ts +6 -18
  115. package/dist/number-field/parts.d.ts.map +1 -1
  116. package/dist/number-field/parts.js +7 -6
  117. package/dist/number-field/parts.js.map +1 -1
  118. package/dist/popover/index.d.ts +3 -0
  119. package/dist/popover/index.js +4 -0
  120. package/dist/popover/parts.d.ts +29 -0
  121. package/dist/popover/parts.d.ts.map +1 -0
  122. package/dist/popover/parts.js +93 -0
  123. package/dist/popover/parts.js.map +1 -0
  124. package/dist/popover/popover.css +173 -0
  125. package/dist/popover/popover.d.ts +49 -0
  126. package/dist/popover/popover.d.ts.map +1 -0
  127. package/dist/popover/popover.js +68 -0
  128. package/dist/popover/popover.js.map +1 -0
  129. package/dist/popover/popover.module.css.d.ts +2 -0
  130. package/dist/popover/popover.module.js +16 -0
  131. package/dist/popover/popover.module.js.map +1 -0
  132. package/dist/progress/parts.d.ts +2 -4
  133. package/dist/progress/parts.d.ts.map +1 -1
  134. package/dist/progress/parts.js +3 -6
  135. package/dist/progress/parts.js.map +1 -1
  136. package/dist/progress/progress.d.ts +11 -0
  137. package/dist/progress/progress.d.ts.map +1 -1
  138. package/dist/progress/progress.js +5 -0
  139. package/dist/progress/progress.js.map +1 -1
  140. package/dist/radio/index.d.ts +3 -0
  141. package/dist/radio/index.js +4 -0
  142. package/dist/radio/parts.d.ts +14 -0
  143. package/dist/radio/parts.d.ts.map +1 -0
  144. package/dist/radio/parts.js +43 -0
  145. package/dist/radio/parts.js.map +1 -0
  146. package/dist/radio/radio.css +84 -0
  147. package/dist/radio/radio.d.ts +31 -0
  148. package/dist/radio/radio.d.ts.map +1 -0
  149. package/dist/radio/radio.js +33 -0
  150. package/dist/radio/radio.js.map +1 -0
  151. package/dist/radio/radio.module.css.d.ts +2 -0
  152. package/dist/radio/radio.module.js +11 -0
  153. package/dist/radio/radio.module.js.map +1 -0
  154. package/dist/radio-group/index.d.ts +3 -0
  155. package/dist/radio-group/index.js +4 -0
  156. package/dist/radio-group/parts.d.ts +11 -0
  157. package/dist/radio-group/parts.d.ts.map +1 -0
  158. package/dist/radio-group/parts.js +32 -0
  159. package/dist/radio-group/parts.js.map +1 -0
  160. package/dist/radio-group/radio-group.css +17 -0
  161. package/dist/radio-group/radio-group.d.ts +37 -0
  162. package/dist/radio-group/radio-group.d.ts.map +1 -0
  163. package/dist/radio-group/radio-group.js +28 -0
  164. package/dist/radio-group/radio-group.js.map +1 -0
  165. package/dist/radio-group/radio-group.module.css.d.ts +2 -0
  166. package/dist/radio-group/radio-group.module.js +9 -0
  167. package/dist/radio-group/radio-group.module.js.map +1 -0
  168. package/dist/reset-scoped.css +112 -0
  169. package/dist/select/parts.d.ts +11 -32
  170. package/dist/select/parts.d.ts.map +1 -1
  171. package/dist/select/parts.js +10 -9
  172. package/dist/select/parts.js.map +1 -1
  173. package/dist/select/select.d.ts +14 -1
  174. package/dist/select/select.d.ts.map +1 -1
  175. package/dist/select/select.js +4 -0
  176. package/dist/select/select.js.map +1 -1
  177. package/dist/separator/separator.d.ts +4 -0
  178. package/dist/separator/separator.d.ts.map +1 -1
  179. package/dist/separator/separator.js +4 -0
  180. package/dist/separator/separator.js.map +1 -1
  181. package/dist/shared/PopupArrow.js +22 -0
  182. package/dist/shared/PopupArrow.js.map +1 -0
  183. package/dist/slider/parts.d.ts +6 -18
  184. package/dist/slider/parts.d.ts.map +1 -1
  185. package/dist/slider/parts.js +7 -6
  186. package/dist/slider/parts.js.map +1 -1
  187. package/dist/slider/slider.d.ts +18 -0
  188. package/dist/slider/slider.d.ts.map +1 -1
  189. package/dist/slider/slider.js +6 -0
  190. package/dist/slider/slider.js.map +1 -1
  191. package/dist/switch/parts.d.ts +2 -6
  192. package/dist/switch/parts.d.ts.map +1 -1
  193. package/dist/switch/parts.js +3 -2
  194. package/dist/switch/parts.js.map +1 -1
  195. package/dist/switch/switch.css +11 -2
  196. package/dist/switch/switch.d.ts +12 -0
  197. package/dist/switch/switch.d.ts.map +1 -1
  198. package/dist/switch/switch.js +4 -0
  199. package/dist/switch/switch.js.map +1 -1
  200. package/dist/switch/switch.module.js.map +1 -1
  201. package/dist/tabs/parts.d.ts +3 -9
  202. package/dist/tabs/parts.d.ts.map +1 -1
  203. package/dist/tabs/parts.js +4 -3
  204. package/dist/tabs/parts.js.map +1 -1
  205. package/dist/tabs/tabs.d.ts +8 -1
  206. package/dist/tabs/tabs.d.ts.map +1 -1
  207. package/dist/tabs/tabs.js +4 -0
  208. package/dist/tabs/tabs.js.map +1 -1
  209. package/dist/toast/parts.d.ts +5 -15
  210. package/dist/toast/parts.d.ts.map +1 -1
  211. package/dist/toast/parts.js +6 -5
  212. package/dist/toast/parts.js.map +1 -1
  213. package/dist/toast/toast.d.ts +11 -0
  214. package/dist/toast/toast.d.ts.map +1 -1
  215. package/dist/toast/toast.js +8 -0
  216. package/dist/toast/toast.js.map +1 -1
  217. package/dist/tooltip/parts.d.ts +3 -9
  218. package/dist/tooltip/parts.d.ts.map +1 -1
  219. package/dist/tooltip/parts.js +4 -3
  220. package/dist/tooltip/parts.js.map +1 -1
  221. package/dist/tooltip/tooltip.d.ts +9 -0
  222. package/dist/tooltip/tooltip.d.ts.map +1 -1
  223. package/dist/tooltip/tooltip.js +4 -0
  224. package/dist/tooltip/tooltip.js.map +1 -1
  225. package/dist/utils/resolveClassName.js +25 -0
  226. package/dist/utils/resolveClassName.js.map +1 -0
  227. package/package.json +25 -4
  228. package/src/accordion/accordion.tsx +14 -0
  229. package/src/accordion/index.ts +1 -1
  230. package/src/accordion/parts.tsx +10 -17
  231. package/src/alert-dialog/alert-dialog.tsx +11 -0
  232. package/src/alert-dialog/parts.tsx +23 -31
  233. package/src/badge/badge.tsx +6 -0
  234. package/src/button/button.tsx +12 -1
  235. package/src/card/card.tsx +10 -0
  236. package/src/checkbox/checkbox.tsx +13 -0
  237. package/src/checkbox/parts.tsx +5 -7
  238. package/src/collapsible/collapsible.tsx +11 -0
  239. package/src/collapsible/parts.tsx +10 -15
  240. package/src/context-menu/context-menu.tsx +5 -0
  241. package/src/context-menu/parts.tsx +34 -34
  242. package/src/dialog/dialog.tsx +13 -1
  243. package/src/dialog/parts.tsx +14 -27
  244. package/src/drawer/drawer.tsx +11 -0
  245. package/src/drawer/parts.tsx +30 -38
  246. package/src/index.ts +4 -0
  247. package/src/input/input.tsx +8 -0
  248. package/src/menu/menu.module.css +3 -10
  249. package/src/menu/menu.tsx +13 -26
  250. package/src/menu/parts.tsx +13 -24
  251. package/src/meter/circular-meter.tsx +114 -0
  252. package/src/meter/index.ts +9 -0
  253. package/src/meter/meter.module.css +162 -0
  254. package/src/meter/meter.tsx +86 -0
  255. package/src/meter/meterState.ts +29 -0
  256. package/src/meter/parts.tsx +73 -0
  257. package/src/number-field/number-field.tsx +16 -0
  258. package/src/number-field/parts.tsx +33 -24
  259. package/src/popover/index.ts +14 -0
  260. package/src/popover/parts.tsx +105 -0
  261. package/src/popover/popover.module.css +189 -0
  262. package/src/popover/popover.tsx +80 -0
  263. package/src/progress/parts.tsx +13 -6
  264. package/src/progress/progress.tsx +11 -0
  265. package/src/radio/index.ts +6 -0
  266. package/src/radio/parts.tsx +42 -0
  267. package/src/radio/radio.module.css +96 -0
  268. package/src/radio/radio.tsx +37 -0
  269. package/src/radio-group/index.ts +5 -0
  270. package/src/radio-group/parts.tsx +31 -0
  271. package/src/radio-group/radio-group.module.css +17 -0
  272. package/src/radio-group/radio-group.tsx +63 -0
  273. package/src/select/parts.tsx +34 -41
  274. package/src/select/select.tsx +14 -1
  275. package/src/separator/separator.tsx +4 -0
  276. package/src/shared/PopupArrow.tsx +41 -0
  277. package/src/slider/parts.tsx +13 -24
  278. package/src/slider/slider.tsx +18 -0
  279. package/src/styles/reset-scoped.css +112 -0
  280. package/src/switch/parts.tsx +5 -8
  281. package/src/switch/switch.module.css +11 -2
  282. package/src/switch/switch.tsx +12 -0
  283. package/src/tabs/parts.tsx +7 -12
  284. package/src/tabs/tabs.tsx +8 -1
  285. package/src/toast/parts.tsx +11 -20
  286. package/src/toast/toast.tsx +11 -0
  287. package/src/tooltip/parts.tsx +7 -12
  288. package/src/tooltip/tooltip.tsx +9 -0
  289. package/src/utils/resolveClassName.ts +24 -0
@@ -0,0 +1,112 @@
1
+ /**
2
+ * @brijbyte/agentic-ui — Scoped reset
3
+ *
4
+ * A class-anchored mirror of reset.css for use in sandboxed environments
5
+ * (e.g. documentation demo canvases) where you want the same baseline as
6
+ * a real app that imports reset.css — without touching html/body globally.
7
+ *
8
+ * Usage:
9
+ * @import "@brijbyte/agentic-ui/reset-scoped";
10
+ *
11
+ * <div class="agentic-reset">
12
+ * <!-- your component demo here -->
13
+ * </div>
14
+ *
15
+ * Rules are kept in exact 1-to-1 correspondence with reset.css.
16
+ * html → .agentic-reset
17
+ * body → .agentic-reset
18
+ * Keep both files in sync when either changes.
19
+ */
20
+
21
+ @layer base {
22
+ .agentic-reset,
23
+ .agentic-reset *,
24
+ .agentic-reset *::before,
25
+ .agentic-reset *::after {
26
+ box-sizing: border-box;
27
+ }
28
+
29
+ .agentic-reset * {
30
+ margin: 0;
31
+ padding: 0;
32
+ }
33
+
34
+ /* html rules → applied to the root of the scoped subtree */
35
+ .agentic-reset {
36
+ -webkit-font-smoothing: antialiased;
37
+ -moz-osx-font-smoothing: grayscale;
38
+ text-rendering: optimizeLegibility;
39
+ tab-size: 2;
40
+ }
41
+
42
+ /* body rules → same root */
43
+ .agentic-reset {
44
+ font-family: var(--font-mono);
45
+ font-size: var(--font-size-md);
46
+ line-height: var(--line-height-normal);
47
+ color: var(--color-primary);
48
+ background-color: var(--color-canvas);
49
+ }
50
+
51
+ .agentic-reset img,
52
+ .agentic-reset picture,
53
+ .agentic-reset video,
54
+ .agentic-reset canvas,
55
+ .agentic-reset svg {
56
+ display: block;
57
+ max-width: 100%;
58
+ }
59
+
60
+ .agentic-reset input,
61
+ .agentic-reset button,
62
+ .agentic-reset textarea,
63
+ .agentic-reset select {
64
+ font: inherit;
65
+ }
66
+
67
+ .agentic-reset * {
68
+ -webkit-tap-highlight-color: transparent;
69
+ }
70
+
71
+ .agentic-reset p,
72
+ .agentic-reset h1,
73
+ .agentic-reset h2,
74
+ .agentic-reset h3,
75
+ .agentic-reset h4,
76
+ .agentic-reset h5,
77
+ .agentic-reset h6 {
78
+ overflow-wrap: break-word;
79
+ }
80
+
81
+ .agentic-reset h1,
82
+ .agentic-reset h2,
83
+ .agentic-reset h3,
84
+ .agentic-reset h4,
85
+ .agentic-reset h5,
86
+ .agentic-reset h6 {
87
+ font-family: var(--font-display);
88
+ font-weight: var(--font-weight-semibold);
89
+ line-height: var(--line-height-tight);
90
+ letter-spacing: var(--letter-spacing-tight);
91
+ color: var(--color-primary);
92
+ }
93
+
94
+ .agentic-reset * {
95
+ scrollbar-width: thin;
96
+ scrollbar-color: var(--color-thumb) var(--color-track);
97
+ }
98
+
99
+ .agentic-reset *::-webkit-scrollbar {
100
+ width: 6px;
101
+ height: 6px;
102
+ }
103
+
104
+ .agentic-reset *::-webkit-scrollbar-thumb {
105
+ background: var(--color-thumb);
106
+ border-radius: var(--radius-full);
107
+ }
108
+
109
+ .agentic-reset *::-webkit-scrollbar-track {
110
+ background: var(--color-track);
111
+ }
112
+ }
@@ -14,41 +14,20 @@ type BaseItemIndicatorProps = ComponentPropsWithoutRef<typeof Select.ItemIndicat
14
14
  type BaseGroupProps = ComponentPropsWithoutRef<typeof Select.Group>;
15
15
  type BaseGroupLabelProps = ComponentPropsWithoutRef<typeof Select.GroupLabel>;
16
16
  type BaseSeparatorProps = ComponentPropsWithoutRef<typeof Select.Separator>;
17
- interface SelectTriggerProps extends Omit<BaseTriggerProps, "className"> {
18
- className?: string;
19
- }
20
- interface SelectValueProps extends Omit<BaseValueProps, "className"> {
21
- className?: string;
22
- }
23
- interface SelectPositionerProps extends Omit<BasePositionerProps, "className"> {
24
- className?: string;
25
- }
26
- interface SelectPopupProps extends Omit<BasePopupProps, "className"> {
27
- className?: string;
28
- }
29
- interface SelectListProps extends Omit<BaseListProps, "className"> {
30
- className?: string;
31
- }
32
- interface SelectItemProps extends Omit<BaseItemProps, "className"> {
33
- className?: string;
34
- }
35
- interface SelectItemTextProps extends Omit<BaseItemTextProps, "className"> {
36
- className?: string;
37
- }
38
- interface SelectItemIndicatorProps extends Omit<BaseItemIndicatorProps, "className"> {
39
- className?: string;
17
+ interface SelectTriggerProps extends BaseTriggerProps {}
18
+ interface SelectValueProps extends BaseValueProps {}
19
+ interface SelectPositionerProps extends BasePositionerProps {}
20
+ interface SelectPopupProps extends BasePopupProps {}
21
+ interface SelectListProps extends BaseListProps {}
22
+ interface SelectItemProps extends BaseItemProps {}
23
+ interface SelectItemTextProps extends BaseItemTextProps {}
24
+ interface SelectItemIndicatorProps extends BaseItemIndicatorProps {
40
25
  /** Custom icon. Defaults to a checkmark SVG. */
41
26
  children?: ReactNode;
42
27
  }
43
- interface SelectGroupProps extends Omit<BaseGroupProps, "className"> {
44
- className?: string;
45
- }
46
- interface SelectGroupLabelProps extends Omit<BaseGroupLabelProps, "className"> {
47
- className?: string;
48
- }
49
- interface SelectSeparatorProps extends Omit<BaseSeparatorProps, "className"> {
50
- className?: string;
51
- }
28
+ interface SelectGroupProps extends BaseGroupProps {}
29
+ interface SelectGroupLabelProps extends BaseGroupLabelProps {}
30
+ interface SelectSeparatorProps extends BaseSeparatorProps {}
52
31
  declare const SelectTrigger: react.ForwardRefExoticComponent<SelectTriggerProps & react.RefAttributes<HTMLButtonElement>>;
53
32
  declare const SelectValue: react.ForwardRefExoticComponent<SelectValueProps & react.RefAttributes<HTMLSpanElement>>;
54
33
  declare const SelectPositioner: react.ForwardRefExoticComponent<SelectPositionerProps & react.RefAttributes<HTMLDivElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"parts.d.ts","names":[],"sources":["../../src/select/parts.tsx"],"mappings":"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"}
1
+ {"version":3,"file":"parts.d.ts","names":[],"sources":["../../src/select/parts.tsx"],"mappings":";;;;;KAqCK,gBAAA,GAAmB,wBAAA,QAAgC,MAAA,CAAW,OAAA;AAAA,KAC9D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,mBAAA,GAAsB,wBAAA,QAAgC,MAAA,CAAW,UAAA;AAAA,KACjE,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,aAAA,GAAgB,wBAAA,QAAgC,MAAA,CAAW,IAAA;AAAA,KAC3D,aAAA,GAAgB,wBAAA,QAAgC,MAAA,CAAW,IAAA;AAAA,KAC3D,iBAAA,GAAoB,wBAAA,QAAgC,MAAA,CAAW,QAAA;AAAA,KAC/D,sBAAA,GAAyB,wBAAA,QAAgC,MAAA,CAAW,aAAA;AAAA,KACpE,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,mBAAA,GAAsB,wBAAA,QAAgC,MAAA,CAAW,UAAA;AAAA,KACjE,kBAAA,GAAqB,wBAAA,QAAgC,MAAA,CAAW,SAAA;AAAA,UAEpD,kBAAA,SAA2B,gBAAA;AAAA,UAC3B,gBAAA,SAAyB,cAAA;AAAA,UACzB,qBAAA,SAA8B,mBAAA;AAAA,UAC9B,gBAAA,SAAyB,cAAA;AAAA,UACzB,eAAA,SAAwB,aAAA;AAAA,UACxB,eAAA,SAAwB,aAAA;AAAA,UACxB,mBAAA,SAA4B,iBAAA;AAAA,UAC5B,wBAAA,SAAiC,sBAAA;EAjBS;EAmBzD,QAAA,GAAW,SAAA;AAAA;AAAA,UAEI,gBAAA,SAAyB,cAAA;AAAA,UACzB,qBAAA,SAA8B,mBAAA;AAAA,UAC9B,oBAAA,SAA6B,kBAAA;AAAA,cAUjC,aAAA,EAAa,KAAA,CAAA,yBAAA,CAAA,kBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,iBAAA;AAAA,cAOb,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,eAAA;AAAA,cAOX,gBAAA,EAAgB,KAAA,CAAA,yBAAA,CAAA,qBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAchB,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,UAAA,EAAU,KAAA,CAAA,yBAAA,CAAA,eAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOV,UAAA,EAAU,KAAA,CAAA,yBAAA,CAAA,eAAA,GAAA,KAAA,CAAA,aAAA,CAAA,WAAA;AAAA,cAOV,cAAA,EAAc,KAAA,CAAA,yBAAA,CAAA,mBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOd,mBAAA,EAAmB,KAAA,CAAA,yBAAA,CAAA,wBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,eAAA;AAAA,cAcnB,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,gBAAA,EAAgB,KAAA,CAAA,yBAAA,CAAA,qBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAShB,eAAA,EAAe,KAAA,CAAA,yBAAA,CAAA,oBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA"}
@@ -1,3 +1,4 @@
1
+ import { cx, resolveClassName } from "../utils/resolveClassName.js";
1
2
  import select_module_default from "./select.module.js";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  import { forwardRef } from "react";
@@ -52,21 +53,21 @@ function DefaultCheckIcon() {
52
53
  const SelectTrigger = forwardRef(function SelectTrigger({ className, ...props }, ref) {
53
54
  return /* @__PURE__ */ jsx(Select.Trigger, {
54
55
  ref,
55
- className: `${select_module_default.trigger} ${className ?? ""}`,
56
+ className: (state) => cx(select_module_default.trigger, resolveClassName(className, state)),
56
57
  ...props
57
58
  });
58
59
  });
59
60
  const SelectValue = forwardRef(function SelectValue({ className, ...props }, ref) {
60
61
  return /* @__PURE__ */ jsx(Select.Value, {
61
62
  ref,
62
- className: `${select_module_default["trigger-value"]} ${className ?? ""}`,
63
+ className: (state) => cx(select_module_default["trigger-value"], resolveClassName(className, state)),
63
64
  ...props
64
65
  });
65
66
  });
66
67
  const SelectPositioner = forwardRef(function SelectPositioner({ className, sideOffset = 4, ...props }, ref) {
67
68
  return /* @__PURE__ */ jsx(Select.Positioner, {
68
69
  ref,
69
- className: `${select_module_default.positioner} ${className ?? ""}`,
70
+ className: (state) => cx(select_module_default.positioner, resolveClassName(className, state)),
70
71
  sideOffset,
71
72
  ...props
72
73
  });
@@ -74,21 +75,21 @@ const SelectPositioner = forwardRef(function SelectPositioner({ className, sideO
74
75
  const SelectPopup = forwardRef(function SelectPopup({ className, ...props }, ref) {
75
76
  return /* @__PURE__ */ jsx(Select.Popup, {
76
77
  ref,
77
- className: `${select_module_default.popup} ${className ?? ""}`,
78
+ className: (state) => cx(select_module_default.popup, resolveClassName(className, state)),
78
79
  ...props
79
80
  });
80
81
  });
81
82
  const SelectList = forwardRef(function SelectList({ className, ...props }, ref) {
82
83
  return /* @__PURE__ */ jsx(Select.List, {
83
84
  ref,
84
- className: `${select_module_default.list ?? ""} ${className ?? ""}`,
85
+ className: (state) => cx(select_module_default.list ?? "", resolveClassName(className, state)),
85
86
  ...props
86
87
  });
87
88
  });
88
89
  const SelectItem = forwardRef(function SelectItem({ className, ...props }, ref) {
89
90
  return /* @__PURE__ */ jsx(Select.Item, {
90
91
  ref,
91
- className: `${select_module_default.item} ${className ?? ""}`,
92
+ className: (state) => cx(select_module_default.item, resolveClassName(className, state)),
92
93
  ...props
93
94
  });
94
95
  });
@@ -102,7 +103,7 @@ const SelectItemText = forwardRef(function SelectItemText({ className, ...props
102
103
  const SelectItemIndicator = forwardRef(function SelectItemIndicator({ className, children, ...props }, ref) {
103
104
  return /* @__PURE__ */ jsx(Select.ItemIndicator, {
104
105
  ref,
105
- className: `${select_module_default["item-indicator"]} ${className ?? ""}`,
106
+ className: (state) => cx(select_module_default["item-indicator"], resolveClassName(className, state)),
106
107
  ...props,
107
108
  children: children ?? /* @__PURE__ */ jsx(DefaultCheckIcon, {})
108
109
  });
@@ -117,14 +118,14 @@ const SelectGroup = forwardRef(function SelectGroup({ className, ...props }, ref
117
118
  const SelectGroupLabel = forwardRef(function SelectGroupLabel({ className, ...props }, ref) {
118
119
  return /* @__PURE__ */ jsx(Select.GroupLabel, {
119
120
  ref,
120
- className: `${select_module_default["group-label"]} ${className ?? ""}`,
121
+ className: (state) => cx(select_module_default["group-label"], resolveClassName(className, state)),
121
122
  ...props
122
123
  });
123
124
  });
124
125
  const SelectSeparator = forwardRef(function SelectSeparator({ className, ...props }, ref) {
125
126
  return /* @__PURE__ */ jsx(Select.Separator, {
126
127
  ref,
127
- className: `${select_module_default.separator} ${className ?? ""}`,
128
+ className: (state) => cx(select_module_default.separator, resolveClassName(className, state)),
128
129
  ...props
129
130
  });
130
131
  });
@@ -1 +1 @@
1
- {"version":3,"file":"parts.js","names":["BaseSelect","styles"],"sources":["../../src/select/parts.tsx"],"sourcesContent":["/**\n * Styled primitives for Select.\n *\n * @example\n * ```tsx\n * import { Select } from '@base-ui/react/select';\n * import {\n * SelectTrigger, SelectValue, SelectPositioner,\n * SelectPopup, SelectList, SelectItem, SelectItemText,\n * SelectItemIndicator, SelectGroupLabel, SelectSeparator,\n * } from '@brijbyte/agentic-ui/select';\n *\n * <Select.Root>\n * <SelectTrigger>\n * <SelectValue placeholder=\"Pick one…\" />\n * </SelectTrigger>\n * <Select.Portal>\n * <SelectPositioner>\n * <SelectPopup>\n * <SelectList>\n * <SelectItem value=\"a\">\n * <SelectItemText>Option A</SelectItemText>\n * <SelectItemIndicator />\n * </SelectItem>\n * </SelectList>\n * </SelectPopup>\n * </SelectPositioner>\n * </Select.Portal>\n * </Select.Root>\n * ```\n */\nimport { forwardRef } from \"react\";\nimport type { ComponentRef, ComponentPropsWithoutRef, ReactNode } from \"react\";\nimport { Select as BaseSelect } from \"@base-ui/react/select\";\nimport styles from \"./select.module.css\";\n\ntype BaseTriggerProps = ComponentPropsWithoutRef<typeof BaseSelect.Trigger>;\ntype BaseValueProps = ComponentPropsWithoutRef<typeof BaseSelect.Value>;\ntype BasePositionerProps = ComponentPropsWithoutRef<typeof BaseSelect.Positioner>;\ntype BasePopupProps = ComponentPropsWithoutRef<typeof BaseSelect.Popup>;\ntype BaseListProps = ComponentPropsWithoutRef<typeof BaseSelect.List>;\ntype BaseItemProps = ComponentPropsWithoutRef<typeof BaseSelect.Item>;\ntype BaseItemTextProps = ComponentPropsWithoutRef<typeof BaseSelect.ItemText>;\ntype BaseItemIndicatorProps = ComponentPropsWithoutRef<typeof BaseSelect.ItemIndicator>;\ntype BaseGroupProps = ComponentPropsWithoutRef<typeof BaseSelect.Group>;\ntype BaseGroupLabelProps = ComponentPropsWithoutRef<typeof BaseSelect.GroupLabel>;\ntype BaseSeparatorProps = ComponentPropsWithoutRef<typeof BaseSelect.Separator>;\n\nexport interface SelectTriggerProps extends Omit<BaseTriggerProps, \"className\"> {\n className?: string;\n}\nexport interface SelectValueProps extends Omit<BaseValueProps, \"className\"> {\n className?: string;\n}\nexport interface SelectPositionerProps extends Omit<BasePositionerProps, \"className\"> {\n className?: string;\n}\nexport interface SelectPopupProps extends Omit<BasePopupProps, \"className\"> {\n className?: string;\n}\nexport interface SelectListProps extends Omit<BaseListProps, \"className\"> {\n className?: string;\n}\nexport interface SelectItemProps extends Omit<BaseItemProps, \"className\"> {\n className?: string;\n}\nexport interface SelectItemTextProps extends Omit<BaseItemTextProps, \"className\"> {\n className?: string;\n}\nexport interface SelectItemIndicatorProps extends Omit<BaseItemIndicatorProps, \"className\"> {\n className?: string;\n /** Custom icon. Defaults to a checkmark SVG. */\n children?: ReactNode;\n}\nexport interface SelectGroupProps extends Omit<BaseGroupProps, \"className\"> {\n className?: string;\n}\nexport interface SelectGroupLabelProps extends Omit<BaseGroupLabelProps, \"className\"> {\n className?: string;\n}\nexport interface SelectSeparatorProps extends Omit<BaseSeparatorProps, \"className\"> {\n className?: string;\n}\n\nfunction DefaultCheckIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M2 6L4.5 8.5L10 3\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nexport const SelectTrigger = forwardRef<ComponentRef<typeof BaseSelect.Trigger>, SelectTriggerProps>(function SelectTrigger(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Trigger ref={ref} className={`${styles.trigger} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SelectValue = forwardRef<ComponentRef<typeof BaseSelect.Value>, SelectValueProps>(function SelectValue(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Value ref={ref} className={`${styles[\"trigger-value\"]} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SelectPositioner = forwardRef<ComponentRef<typeof BaseSelect.Positioner>, SelectPositionerProps>(function SelectPositioner(\n { className, sideOffset = 4, ...props },\n ref,\n) {\n return <BaseSelect.Positioner ref={ref} className={`${styles.positioner} ${className ?? \"\"}`} sideOffset={sideOffset} {...props} />;\n});\n\nexport const SelectPopup = forwardRef<ComponentRef<typeof BaseSelect.Popup>, SelectPopupProps>(function SelectPopup(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Popup ref={ref} className={`${styles.popup} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SelectList = forwardRef<ComponentRef<typeof BaseSelect.List>, SelectListProps>(function SelectList(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.List ref={ref} className={`${styles.list ?? \"\"} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SelectItem = forwardRef<ComponentRef<typeof BaseSelect.Item>, SelectItemProps>(function SelectItem(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Item ref={ref} className={`${styles.item} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SelectItemText = forwardRef<ComponentRef<typeof BaseSelect.ItemText>, SelectItemTextProps>(function SelectItemText(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.ItemText ref={ref} className={className} {...props} />;\n});\n\nexport const SelectItemIndicator = forwardRef<ComponentRef<typeof BaseSelect.ItemIndicator>, SelectItemIndicatorProps>(\n function SelectItemIndicator({ className, children, ...props }, ref) {\n return (\n <BaseSelect.ItemIndicator ref={ref} className={`${styles[\"item-indicator\"]} ${className ?? \"\"}`} {...props}>\n {children ?? <DefaultCheckIcon />}\n </BaseSelect.ItemIndicator>\n );\n },\n);\n\nexport const SelectGroup = forwardRef<ComponentRef<typeof BaseSelect.Group>, SelectGroupProps>(function SelectGroup(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Group ref={ref} className={className} {...props} />;\n});\n\nexport const SelectGroupLabel = forwardRef<ComponentRef<typeof BaseSelect.GroupLabel>, SelectGroupLabelProps>(function SelectGroupLabel(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.GroupLabel ref={ref} className={`${styles[\"group-label\"]} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SelectSeparator = forwardRef<ComponentRef<typeof BaseSelect.Separator>, SelectSeparatorProps>(function SelectSeparator(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Separator ref={ref} className={`${styles.separator} ${className ?? \"\"}`} {...props} />;\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoFA,SAAS,mBAAmB;AAC1B,QACE,oBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;YACnD,oBAAC,QAAD;GAAM,GAAE;GAAoB,QAAO;GAAe,aAAY;GAAM,eAAc;GAAQ,gBAAe;GAAU,CAAA;EAC/G,CAAA;;AAIV,MAAa,gBAAgB,WAAwE,SAAS,cAC5G,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACA,OAAW,SAAZ;EAAyB;EAAK,WAAW,GAAGC,sBAAO,QAAQ,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACrG;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,iBAAiB,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC5G;AAEF,MAAa,mBAAmB,WAA8E,SAAS,iBACrH,EAAE,WAAW,aAAa,GAAG,GAAG,SAChC,KACA;AACA,QAAO,oBAACD,OAAW,YAAZ;EAA4B;EAAK,WAAW,GAAGC,sBAAO,WAAW,GAAG,aAAa;EAAkB;EAAY,GAAI;EAAS,CAAA;EACnI;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG;AAEF,MAAa,aAAa,WAAkE,SAAS,WACnG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,MAAZ;EAAsB;EAAK,WAAW,GAAGC,sBAAO,QAAQ,GAAG,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACrG;AAEF,MAAa,aAAa,WAAkE,SAAS,WACnG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,MAAZ;EAAsB;EAAK,WAAW,GAAGC,sBAAO,KAAK,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC/F;AAEF,MAAa,iBAAiB,WAA0E,SAAS,eAC/G,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,UAAZ;EAA0B;EAAgB;EAAW,GAAI;EAAS,CAAA;EACzE;AAEF,MAAa,sBAAsB,WACjC,SAAS,oBAAoB,EAAE,WAAW,UAAU,GAAG,SAAS,KAAK;AACnE,QACE,oBAACA,OAAW,eAAZ;EAA+B;EAAK,WAAW,GAAGC,sBAAO,kBAAkB,GAAG,aAAa;EAAM,GAAI;YAClG,YAAY,oBAAC,kBAAD,EAAoB,CAAA;EACR,CAAA;EAGhC;AAED,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAgB;EAAW,GAAI;EAAS,CAAA;EACtE;AAEF,MAAa,mBAAmB,WAA8E,SAAS,iBACrH,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACA,OAAW,YAAZ;EAA4B;EAAK,WAAW,GAAGC,sBAAO,eAAe,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC/G;AAEF,MAAa,kBAAkB,WAA4E,SAAS,gBAClH,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,WAAZ;EAA2B;EAAK,WAAW,GAAGC,sBAAO,UAAU,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACzG"}
1
+ {"version":3,"file":"parts.js","names":["BaseSelect","styles"],"sources":["../../src/select/parts.tsx"],"sourcesContent":["/**\n * Styled primitives for Select.\n *\n * @example\n * ```tsx\n * import { Select } from '@base-ui/react/select';\n * import {\n * SelectTrigger, SelectValue, SelectPositioner,\n * SelectPopup, SelectList, SelectItem, SelectItemText,\n * SelectItemIndicator, SelectGroupLabel, SelectSeparator,\n * } from '@brijbyte/agentic-ui/select';\n *\n * <Select.Root>\n * <SelectTrigger>\n * <SelectValue placeholder=\"Pick one…\" />\n * </SelectTrigger>\n * <Select.Portal>\n * <SelectPositioner>\n * <SelectPopup>\n * <SelectList>\n * <SelectItem value=\"a\">\n * <SelectItemText>Option A</SelectItemText>\n * <SelectItemIndicator />\n * </SelectItem>\n * </SelectList>\n * </SelectPopup>\n * </SelectPositioner>\n * </Select.Portal>\n * </Select.Root>\n * ```\n */\nimport { forwardRef } from \"react\";\nimport type { ComponentRef, ComponentPropsWithoutRef, ReactNode } from \"react\";\nimport { Select as BaseSelect } from \"@base-ui/react/select\";\nimport styles from \"./select.module.css\";\nimport { resolveClassName, cx } from \"../utils/resolveClassName\";\n\ntype BaseTriggerProps = ComponentPropsWithoutRef<typeof BaseSelect.Trigger>;\ntype BaseValueProps = ComponentPropsWithoutRef<typeof BaseSelect.Value>;\ntype BasePositionerProps = ComponentPropsWithoutRef<typeof BaseSelect.Positioner>;\ntype BasePopupProps = ComponentPropsWithoutRef<typeof BaseSelect.Popup>;\ntype BaseListProps = ComponentPropsWithoutRef<typeof BaseSelect.List>;\ntype BaseItemProps = ComponentPropsWithoutRef<typeof BaseSelect.Item>;\ntype BaseItemTextProps = ComponentPropsWithoutRef<typeof BaseSelect.ItemText>;\ntype BaseItemIndicatorProps = ComponentPropsWithoutRef<typeof BaseSelect.ItemIndicator>;\ntype BaseGroupProps = ComponentPropsWithoutRef<typeof BaseSelect.Group>;\ntype BaseGroupLabelProps = ComponentPropsWithoutRef<typeof BaseSelect.GroupLabel>;\ntype BaseSeparatorProps = ComponentPropsWithoutRef<typeof BaseSelect.Separator>;\n\nexport interface SelectTriggerProps extends BaseTriggerProps {}\nexport interface SelectValueProps extends BaseValueProps {}\nexport interface SelectPositionerProps extends BasePositionerProps {}\nexport interface SelectPopupProps extends BasePopupProps {}\nexport interface SelectListProps extends BaseListProps {}\nexport interface SelectItemProps extends BaseItemProps {}\nexport interface SelectItemTextProps extends BaseItemTextProps {}\nexport interface SelectItemIndicatorProps extends BaseItemIndicatorProps {\n /** Custom icon. Defaults to a checkmark SVG. */\n children?: ReactNode;\n}\nexport interface SelectGroupProps extends BaseGroupProps {}\nexport interface SelectGroupLabelProps extends BaseGroupLabelProps {}\nexport interface SelectSeparatorProps extends BaseSeparatorProps {}\n\nfunction DefaultCheckIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M2 6L4.5 8.5L10 3\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nexport const SelectTrigger = forwardRef<ComponentRef<typeof BaseSelect.Trigger>, SelectTriggerProps>(function SelectTrigger(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Trigger ref={ref} className={(state) => cx(styles.trigger, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SelectValue = forwardRef<ComponentRef<typeof BaseSelect.Value>, SelectValueProps>(function SelectValue(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Value ref={ref} className={(state) => cx(styles[\"trigger-value\"], resolveClassName(className, state))} {...props} />;\n});\n\nexport const SelectPositioner = forwardRef<ComponentRef<typeof BaseSelect.Positioner>, SelectPositionerProps>(function SelectPositioner(\n { className, sideOffset = 4, ...props },\n ref,\n) {\n return (\n <BaseSelect.Positioner\n ref={ref}\n className={(state) => cx(styles.positioner, resolveClassName(className, state))}\n sideOffset={sideOffset}\n {...props}\n />\n );\n});\n\nexport const SelectPopup = forwardRef<ComponentRef<typeof BaseSelect.Popup>, SelectPopupProps>(function SelectPopup(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Popup ref={ref} className={(state) => cx(styles.popup, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SelectList = forwardRef<ComponentRef<typeof BaseSelect.List>, SelectListProps>(function SelectList(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.List ref={ref} className={(state) => cx(styles.list ?? \"\", resolveClassName(className, state))} {...props} />;\n});\n\nexport const SelectItem = forwardRef<ComponentRef<typeof BaseSelect.Item>, SelectItemProps>(function SelectItem(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Item ref={ref} className={(state) => cx(styles.item, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SelectItemText = forwardRef<ComponentRef<typeof BaseSelect.ItemText>, SelectItemTextProps>(function SelectItemText(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.ItemText ref={ref} className={className} {...props} />;\n});\n\nexport const SelectItemIndicator = forwardRef<ComponentRef<typeof BaseSelect.ItemIndicator>, SelectItemIndicatorProps>(\n function SelectItemIndicator({ className, children, ...props }, ref) {\n return (\n <BaseSelect.ItemIndicator\n ref={ref}\n className={(state) => cx(styles[\"item-indicator\"], resolveClassName(className, state))}\n {...props}\n >\n {children ?? <DefaultCheckIcon />}\n </BaseSelect.ItemIndicator>\n );\n },\n);\n\nexport const SelectGroup = forwardRef<ComponentRef<typeof BaseSelect.Group>, SelectGroupProps>(function SelectGroup(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Group ref={ref} className={className} {...props} />;\n});\n\nexport const SelectGroupLabel = forwardRef<ComponentRef<typeof BaseSelect.GroupLabel>, SelectGroupLabelProps>(function SelectGroupLabel(\n { className, ...props },\n ref,\n) {\n return (\n <BaseSelect.GroupLabel ref={ref} className={(state) => cx(styles[\"group-label\"], resolveClassName(className, state))} {...props} />\n );\n});\n\nexport const SelectSeparator = forwardRef<ComponentRef<typeof BaseSelect.Separator>, SelectSeparatorProps>(function SelectSeparator(\n { className, ...props },\n ref,\n) {\n return <BaseSelect.Separator ref={ref} className={(state) => cx(styles.separator, resolveClassName(className, state))} {...props} />;\n});\n"],"mappings":"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"}
@@ -13,19 +13,32 @@ interface SelectGroup {
13
13
  options: SelectOption[];
14
14
  }
15
15
  interface SelectProps {
16
+ /** Currently selected value (controlled). */
16
17
  value?: string;
18
+ /** Initially selected value (uncontrolled). */
17
19
  defaultValue?: string;
18
- /** `eventDetails` is the base-ui event details object. Value may be null when cleared. */
20
+ /** Called when the selection changes. `eventDetails` is the base-ui event details object. Value may be null when cleared. */
19
21
  onValueChange?: (value: string | null, eventDetails: unknown) => void;
22
+ /** Prevent interaction. */
20
23
  disabled?: boolean;
24
+ /** Mark the field as required for form validation. */
21
25
  required?: boolean;
26
+ /** HTML name attribute for form submission. */
22
27
  name?: string;
28
+ /** Text shown when no value is selected. */
23
29
  placeholder?: string;
30
+ /** Flat list of options (use `groups` for grouped options). */
24
31
  options?: SelectOption[];
32
+ /** Grouped options with optional section labels. */
25
33
  groups?: SelectGroup[];
26
34
  className?: string;
35
+ /** Override the auto-generated element id. */
27
36
  id?: string;
28
37
  }
38
+ /**
39
+ * Dropdown select with keyboard navigation, grouping, and search. Pass
40
+ * `options` for a flat list or `groups` for sections with optional labels.
41
+ */
29
42
  declare function Select({
30
43
  placeholder,
31
44
  options,
@@ -1 +1 @@
1
- {"version":3,"file":"select.d.ts","names":[],"sources":["../../src/select/select.tsx"],"mappings":";;;;;UAIiB,YAAA;EACf,KAAA;EACA,KAAA,EAAO,SAAA;EACP,QAAA;AAAA;AAAA,UAGe,WAAA;EACf,KAAA,GAAQ,SAAA;EACR,OAAA,EAAS,YAAA;AAAA;AAAA,UAGM,WAAA;EACf,KAAA;EACA,YAAA;EAVQ;EAYR,aAAA,IAAiB,KAAA,iBAAsB,YAAA;EACvC,QAAA;EACA,QAAA;EACA,IAAA;EACA,WAAA;EACA,OAAA,GAAU,YAAA;EACV,MAAA,GAAS,WAAA;EACT,SAAA;EACA,EAAA;AAAA;AAAA,iBA8Bc,MAAA,CAAA;EAAS,WAAA;EAAyB,OAAA;EAAS,MAAA;EAAQ,SAAA;EAAW,aAAA;EAAe,KAAA;EAAO,YAAA;EAAA,GAAiB;AAAA,GAAS,WAAA,GAAW,kBAAA,CAAA,GAAA,CAAA,OAAA"}
1
+ {"version":3,"file":"select.d.ts","names":[],"sources":["../../src/select/select.tsx"],"mappings":";;;;;UAIiB,YAAA;EACf,KAAA;EACA,KAAA,EAAO,SAAA;EACP,QAAA;AAAA;AAAA,UAGe,WAAA;EACf,KAAA,GAAQ,SAAA;EACR,OAAA,EAAS,YAAA;AAAA;AAAA,UAGM,WAAA;EARf;EAUA,KAAA;EAVQ;EAYR,YAAA;EAT0B;EAW1B,aAAA,IAAiB,KAAA,iBAAsB,YAAA;EATlB;EAWrB,QAAA;EAZQ;EAcR,QAAA;EAbS;EAeT,IAAA;EAfqB;EAiBrB,WAAA;EAd0B;EAgB1B,OAAA,GAAU,YAAA;EAEU;EAApB,MAAA,GAAS,WAAA;EACT,SAAA;EAbA;EAeA,EAAA;AAAA;;;;;iBAkCc,MAAA,CAAA;EAAS,WAAA;EAAyB,OAAA;EAAS,MAAA;EAAQ,SAAA;EAAW,aAAA;EAAe,KAAA;EAAO,YAAA;EAAA,GAAiB;AAAA,GAAS,WAAA,GAAW,kBAAA,CAAA,GAAA,CAAA,OAAA"}
@@ -45,6 +45,10 @@ function SelectItem({ option }) {
45
45
  })]
46
46
  });
47
47
  }
48
+ /**
49
+ * Dropdown select with keyboard navigation, grouping, and search. Pass
50
+ * `options` for a flat list or `groups` for sections with optional labels.
51
+ */
48
52
  function Select$1({ placeholder = "Select…", options, groups, className, onValueChange, value, defaultValue, ...props }) {
49
53
  const allOptions = useMemo(() => [...options ?? [], ...groups?.flatMap((g) => g.options) ?? []], [options, groups]);
50
54
  return /* @__PURE__ */ jsxs(Select.Root, {
@@ -1 +1 @@
1
- {"version":3,"file":"select.js","names":["BaseSelect","styles","Select"],"sources":["../../src/select/select.tsx"],"sourcesContent":["import { useMemo, type ReactNode } from \"react\";\nimport { Select as BaseSelect } from \"@base-ui/react/select\";\nimport styles from \"./select.module.css\";\n\nexport interface SelectOption {\n value: string;\n label: ReactNode;\n disabled?: boolean;\n}\n\nexport interface SelectGroup {\n label?: ReactNode;\n options: SelectOption[];\n}\n\nexport interface SelectProps {\n value?: string;\n defaultValue?: string;\n /** `eventDetails` is the base-ui event details object. Value may be null when cleared. */\n onValueChange?: (value: string | null, eventDetails: unknown) => void;\n disabled?: boolean;\n required?: boolean;\n name?: string;\n placeholder?: string;\n options?: SelectOption[];\n groups?: SelectGroup[];\n className?: string;\n id?: string;\n}\n\nfunction ChevronIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2.5 4.5L6 8L9.5 4.5\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nfunction CheckIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M2 6L4.5 8.5L10 3\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nfunction SelectItem({ option }: { option: SelectOption }) {\n return (\n <BaseSelect.Item className={styles.item} value={option.value} disabled={option.disabled}>\n <BaseSelect.ItemText>{option.label}</BaseSelect.ItemText>\n <BaseSelect.ItemIndicator className={styles[\"item-indicator\"]}>\n <CheckIcon />\n </BaseSelect.ItemIndicator>\n </BaseSelect.Item>\n );\n}\n\nexport function Select({ placeholder = \"Select…\", options, groups, className, onValueChange, value, defaultValue, ...props }: SelectProps) {\n const allOptions = useMemo(() => [...(options ?? []), ...(groups?.flatMap((g) => g.options) ?? [])], [options, groups]);\n\n return (\n <BaseSelect.Root onValueChange={onValueChange as never} value={value} defaultValue={defaultValue} {...props}>\n <BaseSelect.Trigger className={`${styles.trigger} ${className ?? \"\"}`}>\n <BaseSelect.Value className={styles[\"trigger-value\"]} placeholder={placeholder}>\n {(currentValue: string | null) => {\n if (!currentValue) return placeholder;\n const match = allOptions.find((o) => o.value === currentValue);\n return match ? match.label : currentValue;\n }}\n </BaseSelect.Value>\n <span className={styles[\"trigger-icon\"]}>\n <ChevronIcon />\n </span>\n </BaseSelect.Trigger>\n <BaseSelect.Portal>\n <BaseSelect.Positioner className={styles.positioner} sideOffset={4}>\n <BaseSelect.Popup className={styles.popup}>\n <BaseSelect.List>\n {options?.map((opt) => (\n <SelectItem key={opt.value} option={opt} />\n ))}\n {groups?.map((group, i) => (\n <BaseSelect.Group key={i}>\n {group.label && <BaseSelect.GroupLabel className={styles[\"group-label\"]}>{group.label}</BaseSelect.GroupLabel>}\n {group.options.map((opt) => (\n <SelectItem key={opt.value} option={opt} />\n ))}\n {i < (groups?.length ?? 0) - 1 && <BaseSelect.Separator className={styles.separator} />}\n </BaseSelect.Group>\n ))}\n </BaseSelect.List>\n </BaseSelect.Popup>\n </BaseSelect.Positioner>\n </BaseSelect.Portal>\n </BaseSelect.Root>\n );\n}\nexport { styles as SelectStyles };\n"],"mappings":";;;;;AA8BA,SAAS,cAAc;AACrB,QACE,oBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;EAAO,OAAM;YAChE,oBAAC,QAAD;GAAM,GAAE;GAAuB,QAAO;GAAe,aAAY;GAAM,eAAc;GAAQ,gBAAe;GAAU,CAAA;EAClH,CAAA;;AAIV,SAAS,YAAY;AACnB,QACE,oBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;YACnD,oBAAC,QAAD;GAAM,GAAE;GAAoB,QAAO;GAAe,aAAY;GAAM,eAAc;GAAQ,gBAAe;GAAU,CAAA;EAC/G,CAAA;;AAIV,SAAS,WAAW,EAAE,UAAoC;AACxD,QACE,qBAACA,OAAW,MAAZ;EAAiB,WAAWC,sBAAO;EAAM,OAAO,OAAO;EAAO,UAAU,OAAO;YAA/E,CACE,oBAACD,OAAW,UAAZ,EAAA,UAAsB,OAAO,OAA4B,CAAA,EACzD,oBAACA,OAAW,eAAZ;GAA0B,WAAWC,sBAAO;aAC1C,oBAAC,WAAD,EAAa,CAAA;GACY,CAAA,CACX;;;AAItB,SAAgBC,SAAO,EAAE,cAAc,WAAW,SAAS,QAAQ,WAAW,eAAe,OAAO,cAAc,GAAG,SAAsB;CACzI,MAAM,aAAa,cAAc,CAAC,GAAI,WAAW,EAAE,EAAG,GAAI,QAAQ,SAAS,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAE,EAAE,CAAC,SAAS,OAAO,CAAC;AAEvH,QACE,qBAACF,OAAW,MAAZ;EAAgC;EAA+B;EAAqB;EAAc,GAAI;YAAtG,CACE,qBAACA,OAAW,SAAZ;GAAoB,WAAW,GAAGC,sBAAO,QAAQ,GAAG,aAAa;aAAjE,CACE,oBAACD,OAAW,OAAZ;IAAkB,WAAWC,sBAAO;IAA+B;eAC/D,iBAAgC;AAChC,SAAI,CAAC,aAAc,QAAO;KAC1B,MAAM,QAAQ,WAAW,MAAM,MAAM,EAAE,UAAU,aAAa;AAC9D,YAAO,QAAQ,MAAM,QAAQ;;IAEd,CAAA,EACnB,oBAAC,QAAD;IAAM,WAAWA,sBAAO;cACtB,oBAAC,aAAD,EAAe,CAAA;IACV,CAAA,CACY;MACrB,oBAACD,OAAW,QAAZ,EAAA,UACE,oBAACA,OAAW,YAAZ;GAAuB,WAAWC,sBAAO;GAAY,YAAY;aAC/D,oBAACD,OAAW,OAAZ;IAAkB,WAAWC,sBAAO;cAClC,qBAACD,OAAW,MAAZ,EAAA,UAAA,CACG,SAAS,KAAK,QACb,oBAAC,YAAD,EAA4B,QAAQ,KAAO,EAA1B,IAAI,MAAsB,CAC3C,EACD,QAAQ,KAAK,OAAO,MACnB,qBAACA,OAAW,OAAZ,EAAA,UAAA;KACG,MAAM,SAAS,oBAACA,OAAW,YAAZ;MAAuB,WAAWC,sBAAO;gBAAiB,MAAM;MAA8B,CAAA;KAC7G,MAAM,QAAQ,KAAK,QAClB,oBAAC,YAAD,EAA4B,QAAQ,KAAO,EAA1B,IAAI,MAAsB,CAC3C;KACD,KAAK,QAAQ,UAAU,KAAK,KAAK,oBAACD,OAAW,WAAZ,EAAsB,WAAWC,sBAAO,WAAa,CAAA;KACtE,EAAA,EANI,EAMJ,CACnB,CACc,EAAA,CAAA;IACD,CAAA;GACG,CAAA,EACN,CAAA,CACJ"}
1
+ {"version":3,"file":"select.js","names":["BaseSelect","styles","Select"],"sources":["../../src/select/select.tsx"],"sourcesContent":["import { useMemo, type ReactNode } from \"react\";\nimport { Select as BaseSelect } from \"@base-ui/react/select\";\nimport styles from \"./select.module.css\";\n\nexport interface SelectOption {\n value: string;\n label: ReactNode;\n disabled?: boolean;\n}\n\nexport interface SelectGroup {\n label?: ReactNode;\n options: SelectOption[];\n}\n\nexport interface SelectProps {\n /** Currently selected value (controlled). */\n value?: string;\n /** Initially selected value (uncontrolled). */\n defaultValue?: string;\n /** Called when the selection changes. `eventDetails` is the base-ui event details object. Value may be null when cleared. */\n onValueChange?: (value: string | null, eventDetails: unknown) => void;\n /** Prevent interaction. */\n disabled?: boolean;\n /** Mark the field as required for form validation. */\n required?: boolean;\n /** HTML name attribute for form submission. */\n name?: string;\n /** Text shown when no value is selected. */\n placeholder?: string;\n /** Flat list of options (use `groups` for grouped options). */\n options?: SelectOption[];\n /** Grouped options with optional section labels. */\n groups?: SelectGroup[];\n className?: string;\n /** Override the auto-generated element id. */\n id?: string;\n}\n\nfunction ChevronIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M2.5 4.5L6 8L9.5 4.5\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nfunction CheckIcon() {\n return (\n <svg width=\"12\" height=\"12\" viewBox=\"0 0 12 12\" fill=\"none\">\n <path d=\"M2 6L4.5 8.5L10 3\" stroke=\"currentColor\" strokeWidth=\"1.5\" strokeLinecap=\"round\" strokeLinejoin=\"round\" />\n </svg>\n );\n}\n\nfunction SelectItem({ option }: { option: SelectOption }) {\n return (\n <BaseSelect.Item className={styles.item} value={option.value} disabled={option.disabled}>\n <BaseSelect.ItemText>{option.label}</BaseSelect.ItemText>\n <BaseSelect.ItemIndicator className={styles[\"item-indicator\"]}>\n <CheckIcon />\n </BaseSelect.ItemIndicator>\n </BaseSelect.Item>\n );\n}\n\n/**\n * Dropdown select with keyboard navigation, grouping, and search. Pass\n * `options` for a flat list or `groups` for sections with optional labels.\n */\nexport function Select({ placeholder = \"Select…\", options, groups, className, onValueChange, value, defaultValue, ...props }: SelectProps) {\n const allOptions = useMemo(() => [...(options ?? []), ...(groups?.flatMap((g) => g.options) ?? [])], [options, groups]);\n\n return (\n <BaseSelect.Root onValueChange={onValueChange as never} value={value} defaultValue={defaultValue} {...props}>\n <BaseSelect.Trigger className={`${styles.trigger} ${className ?? \"\"}`}>\n <BaseSelect.Value className={styles[\"trigger-value\"]} placeholder={placeholder}>\n {(currentValue: string | null) => {\n if (!currentValue) return placeholder;\n const match = allOptions.find((o) => o.value === currentValue);\n return match ? match.label : currentValue;\n }}\n </BaseSelect.Value>\n <span className={styles[\"trigger-icon\"]}>\n <ChevronIcon />\n </span>\n </BaseSelect.Trigger>\n <BaseSelect.Portal>\n <BaseSelect.Positioner className={styles.positioner} sideOffset={4}>\n <BaseSelect.Popup className={styles.popup}>\n <BaseSelect.List>\n {options?.map((opt) => (\n <SelectItem key={opt.value} option={opt} />\n ))}\n {groups?.map((group, i) => (\n <BaseSelect.Group key={i}>\n {group.label && <BaseSelect.GroupLabel className={styles[\"group-label\"]}>{group.label}</BaseSelect.GroupLabel>}\n {group.options.map((opt) => (\n <SelectItem key={opt.value} option={opt} />\n ))}\n {i < (groups?.length ?? 0) - 1 && <BaseSelect.Separator className={styles.separator} />}\n </BaseSelect.Group>\n ))}\n </BaseSelect.List>\n </BaseSelect.Popup>\n </BaseSelect.Positioner>\n </BaseSelect.Portal>\n </BaseSelect.Root>\n );\n}\nexport { styles as SelectStyles };\n"],"mappings":";;;;;AAuCA,SAAS,cAAc;AACrB,QACE,oBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;EAAO,OAAM;YAChE,oBAAC,QAAD;GAAM,GAAE;GAAuB,QAAO;GAAe,aAAY;GAAM,eAAc;GAAQ,gBAAe;GAAU,CAAA;EAClH,CAAA;;AAIV,SAAS,YAAY;AACnB,QACE,oBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;YACnD,oBAAC,QAAD;GAAM,GAAE;GAAoB,QAAO;GAAe,aAAY;GAAM,eAAc;GAAQ,gBAAe;GAAU,CAAA;EAC/G,CAAA;;AAIV,SAAS,WAAW,EAAE,UAAoC;AACxD,QACE,qBAACA,OAAW,MAAZ;EAAiB,WAAWC,sBAAO;EAAM,OAAO,OAAO;EAAO,UAAU,OAAO;YAA/E,CACE,oBAACD,OAAW,UAAZ,EAAA,UAAsB,OAAO,OAA4B,CAAA,EACzD,oBAACA,OAAW,eAAZ;GAA0B,WAAWC,sBAAO;aAC1C,oBAAC,WAAD,EAAa,CAAA;GACY,CAAA,CACX;;;;;;;AAQtB,SAAgBC,SAAO,EAAE,cAAc,WAAW,SAAS,QAAQ,WAAW,eAAe,OAAO,cAAc,GAAG,SAAsB;CACzI,MAAM,aAAa,cAAc,CAAC,GAAI,WAAW,EAAE,EAAG,GAAI,QAAQ,SAAS,MAAM,EAAE,QAAQ,IAAI,EAAE,CAAE,EAAE,CAAC,SAAS,OAAO,CAAC;AAEvH,QACE,qBAACF,OAAW,MAAZ;EAAgC;EAA+B;EAAqB;EAAc,GAAI;YAAtG,CACE,qBAACA,OAAW,SAAZ;GAAoB,WAAW,GAAGC,sBAAO,QAAQ,GAAG,aAAa;aAAjE,CACE,oBAACD,OAAW,OAAZ;IAAkB,WAAWC,sBAAO;IAA+B;eAC/D,iBAAgC;AAChC,SAAI,CAAC,aAAc,QAAO;KAC1B,MAAM,QAAQ,WAAW,MAAM,MAAM,EAAE,UAAU,aAAa;AAC9D,YAAO,QAAQ,MAAM,QAAQ;;IAEd,CAAA,EACnB,oBAAC,QAAD;IAAM,WAAWA,sBAAO;cACtB,oBAAC,aAAD,EAAe,CAAA;IACV,CAAA,CACY;MACrB,oBAACD,OAAW,QAAZ,EAAA,UACE,oBAACA,OAAW,YAAZ;GAAuB,WAAWC,sBAAO;GAAY,YAAY;aAC/D,oBAACD,OAAW,OAAZ;IAAkB,WAAWC,sBAAO;cAClC,qBAACD,OAAW,MAAZ,EAAA,UAAA,CACG,SAAS,KAAK,QACb,oBAAC,YAAD,EAA4B,QAAQ,KAAO,EAA1B,IAAI,MAAsB,CAC3C,EACD,QAAQ,KAAK,OAAO,MACnB,qBAACA,OAAW,OAAZ,EAAA,UAAA;KACG,MAAM,SAAS,oBAACA,OAAW,YAAZ;MAAuB,WAAWC,sBAAO;gBAAiB,MAAM;MAA8B,CAAA;KAC7G,MAAM,QAAQ,KAAK,QAClB,oBAAC,YAAD,EAA4B,QAAQ,KAAO,EAA1B,IAAI,MAAsB,CAC3C;KACD,KAAK,QAAQ,UAAU,KAAK,KAAK,oBAACD,OAAW,WAAZ,EAAsB,WAAWC,sBAAO,WAAa,CAAA;KACtE,EAAA,EANI,EAMJ,CACnB,CACc,EAAA,CAAA;IACD,CAAA;GACG,CAAA,EACN,CAAA,CACJ"}
@@ -10,6 +10,10 @@ interface SeparatorProps extends Omit<BaseSeparatorProps, "className"> {
10
10
  orientation?: "horizontal" | "vertical";
11
11
  className?: string;
12
12
  }
13
+ /**
14
+ * A semantic divider accessible to screen readers. Renders a horizontal
15
+ * line by default; switch to vertical for inline layouts.
16
+ */
13
17
  declare const Separator$1: react.ForwardRefExoticComponent<SeparatorProps & react.RefAttributes<HTMLDivElement>>;
14
18
  //#endregion
15
19
  export { Separator$1 as Separator, SeparatorProps, styles };
@@ -1 +1 @@
1
- {"version":3,"file":"separator.d.ts","names":[],"sources":["../../src/separator/separator.tsx"],"mappings":";;;;;;KAKK,kBAAA,GAAqB,wBAAA,QAAgC,SAAA;AAAA,UAEzC,cAAA,SAAuB,IAAA,CAAK,kBAAA;;EAE3C,WAAA;EACA,SAAA;AAAA;AAAA,cAGW,WAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,cAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA"}
1
+ {"version":3,"file":"separator.d.ts","names":[],"sources":["../../src/separator/separator.tsx"],"mappings":";;;;;;KAKK,kBAAA,GAAqB,wBAAA,QAAgC,SAAA;AAAA,UAEzC,cAAA,SAAuB,IAAA,CAAK,kBAAA;;EAE3C,WAAA;EACA,SAAA;AAAA;;;AAHF;;cAUa,WAAA,EAAS,KAAA,CAAA,yBAAA,CAAA,cAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA"}
@@ -3,6 +3,10 @@ import { jsx } from "react/jsx-runtime";
3
3
  import { forwardRef } from "react";
4
4
  import { Separator } from "@base-ui/react/separator";
5
5
  //#region src/separator/separator.tsx
6
+ /**
7
+ * A semantic divider accessible to screen readers. Renders a horizontal
8
+ * line by default; switch to vertical for inline layouts.
9
+ */
6
10
  const Separator$1 = forwardRef(function Separator$2({ className, orientation = "horizontal", ...props }, ref) {
7
11
  return /* @__PURE__ */ jsx(Separator, {
8
12
  ref,
@@ -1 +1 @@
1
- {"version":3,"file":"separator.js","names":["Separator","BaseSeparator","styles"],"sources":["../../src/separator/separator.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef, ComponentRef } from \"react\";\nimport { Separator as BaseSeparator } from \"@base-ui/react/separator\";\nimport styles from \"./separator.module.css\";\n\ntype BaseSeparatorProps = ComponentPropsWithoutRef<typeof BaseSeparator>;\n\nexport interface SeparatorProps extends Omit<BaseSeparatorProps, \"className\"> {\n /** @default \"horizontal\" */\n orientation?: \"horizontal\" | \"vertical\";\n className?: string;\n}\n\nexport const Separator = forwardRef<ComponentRef<typeof BaseSeparator>, SeparatorProps>(function Separator(\n { className, orientation = \"horizontal\", ...props },\n ref,\n) {\n return <BaseSeparator ref={ref} orientation={orientation} className={`${styles.separator} ${className ?? \"\"}`} {...props} />;\n});\nexport { styles as SeparatorStyles };\n"],"mappings":";;;;;AAaA,MAAaA,cAAY,WAA+D,SAASA,YAC/F,EAAE,WAAW,cAAc,cAAc,GAAG,SAC5C,KACA;AACA,QAAO,oBAACC,WAAD;EAAoB;EAAkB;EAAa,WAAW,GAAGC,yBAAO,UAAU,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC5H"}
1
+ {"version":3,"file":"separator.js","names":["Separator","BaseSeparator","styles"],"sources":["../../src/separator/separator.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport type { ComponentPropsWithoutRef, ComponentRef } from \"react\";\nimport { Separator as BaseSeparator } from \"@base-ui/react/separator\";\nimport styles from \"./separator.module.css\";\n\ntype BaseSeparatorProps = ComponentPropsWithoutRef<typeof BaseSeparator>;\n\nexport interface SeparatorProps extends Omit<BaseSeparatorProps, \"className\"> {\n /** @default \"horizontal\" */\n orientation?: \"horizontal\" | \"vertical\";\n className?: string;\n}\n\n/**\n * A semantic divider accessible to screen readers. Renders a horizontal\n * line by default; switch to vertical for inline layouts.\n */\nexport const Separator = forwardRef<ComponentRef<typeof BaseSeparator>, SeparatorProps>(function Separator(\n { className, orientation = \"horizontal\", ...props },\n ref,\n) {\n return <BaseSeparator ref={ref} orientation={orientation} className={`${styles.separator} ${className ?? \"\"}`} {...props} />;\n});\nexport { styles as SeparatorStyles };\n"],"mappings":";;;;;;;;;AAiBA,MAAaA,cAAY,WAA+D,SAASA,YAC/F,EAAE,WAAW,cAAc,cAAc,GAAG,SAC5C,KACA;AACA,QAAO,oBAACC,WAAD;EAAoB;EAAkB;EAAa,WAAW,GAAGC,yBAAO,UAAU,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EAC5H"}
@@ -0,0 +1,22 @@
1
+ import { jsx, jsxs } from "react/jsx-runtime";
2
+ //#region src/shared/PopupArrow.tsx
3
+ function PopupArrow({ fillClass, seamClass }) {
4
+ return /* @__PURE__ */ jsxs("svg", {
5
+ width: "20",
6
+ height: "10",
7
+ viewBox: "0 0 20 10",
8
+ fill: "none",
9
+ "aria-hidden": true,
10
+ children: [/* @__PURE__ */ jsx("path", {
11
+ d: "M9.66437 2.60207L4.80758 6.97318C4.07308 7.63423 3.11989 8 2.13172 8H0V10H20V8H18.5349C17.5468 8 16.5936 7.63423 15.8591 6.97318L11.0023 2.60207C10.622 2.2598 10.0447 2.25979 9.66437 2.60207Z",
12
+ className: fillClass
13
+ }), /* @__PURE__ */ jsx("path", {
14
+ d: "M10.3333 3.34539L5.47654 7.71648C4.55842 8.54279 3.36693 9 2.13172 9H0V8H2.13172C3.11989 8 4.07308 7.63423 4.80758 6.97318L9.66437 2.60207C10.0447 2.25979 10.622 2.2598 11.0023 2.60207L15.8591 6.97318C16.5936 7.63423 17.5468 8 18.5349 8H20V9H18.5349C17.2998 9 16.1083 8.54278 15.1901 7.71648L10.3333 3.34539Z",
15
+ className: seamClass
16
+ })]
17
+ });
18
+ }
19
+ //#endregion
20
+ export { PopupArrow };
21
+
22
+ //# sourceMappingURL=PopupArrow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PopupArrow.js","names":[],"sources":["../../src/shared/PopupArrow.tsx"],"sourcesContent":["/**\n * Shared arrow SVG used by Menu and Popover.\n *\n * Two paths:\n * 1. Fill — the arrow body, matches the popup surface colour.\n * 2. Seam — a thin strip in the border colour at the base, covering\n * the popup border at the junction so it doesn't bleed through.\n *\n * All CSS classes come from the importing component's own CSS module\n * so the rules are bundled into the component's CSS file, not a\n * separate shared chunk that consumers would need to import separately.\n *\n * @example\n * ```tsx\n * <BaseMenu.Arrow className={styles.arrow}>\n * <PopupArrow fillClass={styles[\"arrow-fill\"]!} seamClass={styles[\"arrow-seam\"]!} />\n * </BaseMenu.Arrow>\n * ```\n */\n\ninterface PopupArrowProps {\n fillClass: string;\n seamClass: string;\n}\n\nexport function PopupArrow({ fillClass, seamClass }: PopupArrowProps) {\n return (\n <svg width=\"20\" height=\"10\" viewBox=\"0 0 20 10\" fill=\"none\" aria-hidden>\n {/* Body — surface colour */}\n <path\n d=\"M9.66437 2.60207L4.80758 6.97318C4.07308 7.63423 3.11989 8 2.13172 8H0V10H20V8H18.5349C17.5468 8 16.5936 7.63423 15.8591 6.97318L11.0023 2.60207C10.622 2.2598 10.0447 2.25979 9.66437 2.60207Z\"\n className={fillClass}\n />\n {/* Seam — border colour strip at the base, covers the popup border at the junction */}\n <path\n d=\"M10.3333 3.34539L5.47654 7.71648C4.55842 8.54279 3.36693 9 2.13172 9H0V8H2.13172C3.11989 8 4.07308 7.63423 4.80758 6.97318L9.66437 2.60207C10.0447 2.25979 10.622 2.2598 11.0023 2.60207L15.8591 6.97318C16.5936 7.63423 17.5468 8 18.5349 8H20V9H18.5349C17.2998 9 16.1083 8.54278 15.1901 7.71648L10.3333 3.34539Z\"\n className={seamClass}\n />\n </svg>\n );\n}\n"],"mappings":";;AAyBA,SAAgB,WAAW,EAAE,WAAW,aAA8B;AACpE,QACE,qBAAC,OAAD;EAAK,OAAM;EAAK,QAAO;EAAK,SAAQ;EAAY,MAAK;EAAO,eAAA;YAA5D,CAEE,oBAAC,QAAD;GACE,GAAE;GACF,WAAW;GACX,CAAA,EAEF,oBAAC,QAAD;GACE,GAAE;GACF,WAAW;GACX,CAAA,CACE"}
@@ -9,24 +9,12 @@ type BaseIndicatorProps = ComponentPropsWithoutRef<typeof Slider.Indicator>;
9
9
  type BaseThumbProps = ComponentPropsWithoutRef<typeof Slider.Thumb>;
10
10
  type BaseLabelProps = ComponentPropsWithoutRef<typeof Slider.Label>;
11
11
  type BaseValueProps = ComponentPropsWithoutRef<typeof Slider.Value>;
12
- interface SliderControlProps extends Omit<BaseControlProps, "className"> {
13
- className?: string;
14
- }
15
- interface SliderTrackProps extends Omit<BaseTrackProps, "className"> {
16
- className?: string;
17
- }
18
- interface SliderIndicatorProps extends Omit<BaseIndicatorProps, "className"> {
19
- className?: string;
20
- }
21
- interface SliderThumbProps extends Omit<BaseThumbProps, "className"> {
22
- className?: string;
23
- }
24
- interface SliderLabelProps extends Omit<BaseLabelProps, "className"> {
25
- className?: string;
26
- }
27
- interface SliderValueProps extends Omit<BaseValueProps, "className"> {
28
- className?: string;
29
- }
12
+ interface SliderControlProps extends BaseControlProps {}
13
+ interface SliderTrackProps extends BaseTrackProps {}
14
+ interface SliderIndicatorProps extends BaseIndicatorProps {}
15
+ interface SliderThumbProps extends BaseThumbProps {}
16
+ interface SliderLabelProps extends BaseLabelProps {}
17
+ interface SliderValueProps extends BaseValueProps {}
30
18
  declare const SliderControl: react.ForwardRefExoticComponent<SliderControlProps & react.RefAttributes<HTMLDivElement>>;
31
19
  declare const SliderTrack: react.ForwardRefExoticComponent<SliderTrackProps & react.RefAttributes<HTMLDivElement>>;
32
20
  declare const SliderIndicator: react.ForwardRefExoticComponent<SliderIndicatorProps & react.RefAttributes<HTMLDivElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"parts.d.ts","names":[],"sources":["../../src/slider/parts.tsx"],"mappings":";;;;;KAuBK,gBAAA,GAAmB,wBAAA,QAAgC,MAAA,CAAW,OAAA;AAAA,KAC9D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,kBAAA,GAAqB,wBAAA,QAAgC,MAAA,CAAW,SAAA;AAAA,KAChE,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,UAEhD,kBAAA,SAA2B,IAAA,CAAK,gBAAA;EAC/C,SAAA;AAAA;AAAA,UAEe,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;AAAA;AAAA,UAEe,oBAAA,SAA6B,IAAA,CAAK,kBAAA;EACjD,SAAA;AAAA;AAAA,UAEe,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;AAAA;AAAA,UAEe,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;AAAA;AAAA,UAEe,gBAAA,SAAyB,IAAA,CAAK,cAAA;EAC7C,SAAA;AAAA;AAAA,cAGW,aAAA,EAAa,KAAA,CAAA,yBAAA,CAAA,kBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOb,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,eAAA,EAAe,KAAA,CAAA,yBAAA,CAAA,oBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOf,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,iBAAA"}
1
+ {"version":3,"file":"parts.d.ts","names":[],"sources":["../../src/slider/parts.tsx"],"mappings":";;;;;KAwBK,gBAAA,GAAmB,wBAAA,QAAgC,MAAA,CAAW,OAAA;AAAA,KAC9D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,kBAAA,GAAqB,wBAAA,QAAgC,MAAA,CAAW,SAAA;AAAA,KAChE,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,KAC5D,cAAA,GAAiB,wBAAA,QAAgC,MAAA,CAAW,KAAA;AAAA,UAEhD,kBAAA,SAA2B,gBAAA;AAAA,UAC3B,gBAAA,SAAyB,cAAA;AAAA,UACzB,oBAAA,SAA6B,kBAAA;AAAA,UAC7B,gBAAA,SAAyB,cAAA;AAAA,UACzB,gBAAA,SAAyB,cAAA;AAAA,UACzB,gBAAA,SAAyB,cAAA;AAAA,cAE7B,aAAA,EAAa,KAAA,CAAA,yBAAA,CAAA,kBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOb,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,eAAA,EAAe,KAAA,CAAA,yBAAA,CAAA,oBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOf,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,cAAA;AAAA,cAOX,WAAA,EAAW,KAAA,CAAA,yBAAA,CAAA,gBAAA,GAAA,KAAA,CAAA,aAAA,CAAA,iBAAA"}
@@ -1,3 +1,4 @@
1
+ import { cx, resolveClassName } from "../utils/resolveClassName.js";
1
2
  import slider_module_default from "./slider.module.js";
2
3
  import { jsx } from "react/jsx-runtime";
3
4
  import { forwardRef } from "react";
@@ -24,42 +25,42 @@ import { Slider } from "@base-ui/react/slider";
24
25
  const SliderControl = forwardRef(function SliderControl({ className, ...props }, ref) {
25
26
  return /* @__PURE__ */ jsx(Slider.Control, {
26
27
  ref,
27
- className: `${slider_module_default.control} ${className ?? ""}`,
28
+ className: (state) => cx(slider_module_default.control, resolveClassName(className, state)),
28
29
  ...props
29
30
  });
30
31
  });
31
32
  const SliderTrack = forwardRef(function SliderTrack({ className, ...props }, ref) {
32
33
  return /* @__PURE__ */ jsx(Slider.Track, {
33
34
  ref,
34
- className: `${slider_module_default.track} ${className ?? ""}`,
35
+ className: (state) => cx(slider_module_default.track, resolveClassName(className, state)),
35
36
  ...props
36
37
  });
37
38
  });
38
39
  const SliderIndicator = forwardRef(function SliderIndicator({ className, ...props }, ref) {
39
40
  return /* @__PURE__ */ jsx(Slider.Indicator, {
40
41
  ref,
41
- className: `${slider_module_default.indicator} ${className ?? ""}`,
42
+ className: (state) => cx(slider_module_default.indicator, resolveClassName(className, state)),
42
43
  ...props
43
44
  });
44
45
  });
45
46
  const SliderThumb = forwardRef(function SliderThumb({ className, ...props }, ref) {
46
47
  return /* @__PURE__ */ jsx(Slider.Thumb, {
47
48
  ref,
48
- className: `${slider_module_default.thumb} ${className ?? ""}`,
49
+ className: (state) => cx(slider_module_default.thumb, resolveClassName(className, state)),
49
50
  ...props
50
51
  });
51
52
  });
52
53
  const SliderLabel = forwardRef(function SliderLabel({ className, ...props }, ref) {
53
54
  return /* @__PURE__ */ jsx(Slider.Label, {
54
55
  ref,
55
- className: `${slider_module_default.label} ${className ?? ""}`,
56
+ className: (state) => cx(slider_module_default.label, resolveClassName(className, state)),
56
57
  ...props
57
58
  });
58
59
  });
59
60
  const SliderValue = forwardRef(function SliderValue({ className, ...props }, ref) {
60
61
  return /* @__PURE__ */ jsx(Slider.Value, {
61
62
  ref,
62
- className: `${slider_module_default.value} ${className ?? ""}`,
63
+ className: (state) => cx(slider_module_default.value, resolveClassName(className, state)),
63
64
  ...props
64
65
  });
65
66
  });
@@ -1 +1 @@
1
- {"version":3,"file":"parts.js","names":["BaseSlider","styles"],"sources":["../../src/slider/parts.tsx"],"sourcesContent":["/**\n * Styled primitives for Slider.\n *\n * @example\n * ```tsx\n * import { Slider as BaseSlider } from '@base-ui/react/slider';\n * import { SliderControl, SliderTrack, SliderIndicator, SliderThumb } from '@brijbyte/agentic-ui/slider';\n *\n * <BaseSlider.Root defaultValue={50}>\n * <SliderControl>\n * <SliderTrack>\n * <SliderIndicator />\n * <SliderThumb aria-label=\"Volume\" />\n * </SliderTrack>\n * </SliderControl>\n * </BaseSlider.Root>\n * ```\n */\nimport { forwardRef } from \"react\";\nimport type { ComponentRef, ComponentPropsWithoutRef } from \"react\";\nimport { Slider as BaseSlider } from \"@base-ui/react/slider\";\nimport styles from \"./slider.module.css\";\n\ntype BaseControlProps = ComponentPropsWithoutRef<typeof BaseSlider.Control>;\ntype BaseTrackProps = ComponentPropsWithoutRef<typeof BaseSlider.Track>;\ntype BaseIndicatorProps = ComponentPropsWithoutRef<typeof BaseSlider.Indicator>;\ntype BaseThumbProps = ComponentPropsWithoutRef<typeof BaseSlider.Thumb>;\ntype BaseLabelProps = ComponentPropsWithoutRef<typeof BaseSlider.Label>;\ntype BaseValueProps = ComponentPropsWithoutRef<typeof BaseSlider.Value>;\n\nexport interface SliderControlProps extends Omit<BaseControlProps, \"className\"> {\n className?: string;\n}\nexport interface SliderTrackProps extends Omit<BaseTrackProps, \"className\"> {\n className?: string;\n}\nexport interface SliderIndicatorProps extends Omit<BaseIndicatorProps, \"className\"> {\n className?: string;\n}\nexport interface SliderThumbProps extends Omit<BaseThumbProps, \"className\"> {\n className?: string;\n}\nexport interface SliderLabelProps extends Omit<BaseLabelProps, \"className\"> {\n className?: string;\n}\nexport interface SliderValueProps extends Omit<BaseValueProps, \"className\"> {\n className?: string;\n}\n\nexport const SliderControl = forwardRef<ComponentRef<typeof BaseSlider.Control>, SliderControlProps>(function SliderControl(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Control ref={ref} className={`${styles.control} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SliderTrack = forwardRef<ComponentRef<typeof BaseSlider.Track>, SliderTrackProps>(function SliderTrack(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Track ref={ref} className={`${styles.track} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SliderIndicator = forwardRef<ComponentRef<typeof BaseSlider.Indicator>, SliderIndicatorProps>(function SliderIndicator(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Indicator ref={ref} className={`${styles.indicator} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SliderThumb = forwardRef<ComponentRef<typeof BaseSlider.Thumb>, SliderThumbProps>(function SliderThumb(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Thumb ref={ref} className={`${styles.thumb} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SliderLabel = forwardRef<ComponentRef<typeof BaseSlider.Label>, SliderLabelProps>(function SliderLabel(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Label ref={ref} className={`${styles.label} ${className ?? \"\"}`} {...props} />;\n});\n\nexport const SliderValue = forwardRef<ComponentRef<typeof BaseSlider.Value>, SliderValueProps>(function SliderValue(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Value ref={ref} className={`${styles.value} ${className ?? \"\"}`} {...props} />;\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAiDA,MAAa,gBAAgB,WAAwE,SAAS,cAC5G,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACA,OAAW,SAAZ;EAAyB;EAAK,WAAW,GAAGC,sBAAO,QAAQ,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACrG;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG;AAEF,MAAa,kBAAkB,WAA4E,SAAS,gBAClH,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,WAAZ;EAA2B;EAAK,WAAW,GAAGC,sBAAO,UAAU,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACzG;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,WAAW,GAAGC,sBAAO,MAAM,GAAG,aAAa;EAAM,GAAI;EAAS,CAAA;EACjG"}
1
+ {"version":3,"file":"parts.js","names":["BaseSlider","styles"],"sources":["../../src/slider/parts.tsx"],"sourcesContent":["/**\n * Styled primitives for Slider.\n *\n * @example\n * ```tsx\n * import { Slider as BaseSlider } from '@base-ui/react/slider';\n * import { SliderControl, SliderTrack, SliderIndicator, SliderThumb } from '@brijbyte/agentic-ui/slider';\n *\n * <BaseSlider.Root defaultValue={50}>\n * <SliderControl>\n * <SliderTrack>\n * <SliderIndicator />\n * <SliderThumb aria-label=\"Volume\" />\n * </SliderTrack>\n * </SliderControl>\n * </BaseSlider.Root>\n * ```\n */\nimport { forwardRef } from \"react\";\nimport type { ComponentRef, ComponentPropsWithoutRef } from \"react\";\nimport { Slider as BaseSlider } from \"@base-ui/react/slider\";\nimport styles from \"./slider.module.css\";\nimport { resolveClassName, cx } from \"../utils/resolveClassName\";\n\ntype BaseControlProps = ComponentPropsWithoutRef<typeof BaseSlider.Control>;\ntype BaseTrackProps = ComponentPropsWithoutRef<typeof BaseSlider.Track>;\ntype BaseIndicatorProps = ComponentPropsWithoutRef<typeof BaseSlider.Indicator>;\ntype BaseThumbProps = ComponentPropsWithoutRef<typeof BaseSlider.Thumb>;\ntype BaseLabelProps = ComponentPropsWithoutRef<typeof BaseSlider.Label>;\ntype BaseValueProps = ComponentPropsWithoutRef<typeof BaseSlider.Value>;\n\nexport interface SliderControlProps extends BaseControlProps {}\nexport interface SliderTrackProps extends BaseTrackProps {}\nexport interface SliderIndicatorProps extends BaseIndicatorProps {}\nexport interface SliderThumbProps extends BaseThumbProps {}\nexport interface SliderLabelProps extends BaseLabelProps {}\nexport interface SliderValueProps extends BaseValueProps {}\n\nexport const SliderControl = forwardRef<ComponentRef<typeof BaseSlider.Control>, SliderControlProps>(function SliderControl(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Control ref={ref} className={(state) => cx(styles.control, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SliderTrack = forwardRef<ComponentRef<typeof BaseSlider.Track>, SliderTrackProps>(function SliderTrack(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Track ref={ref} className={(state) => cx(styles.track, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SliderIndicator = forwardRef<ComponentRef<typeof BaseSlider.Indicator>, SliderIndicatorProps>(function SliderIndicator(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Indicator ref={ref} className={(state) => cx(styles.indicator, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SliderThumb = forwardRef<ComponentRef<typeof BaseSlider.Thumb>, SliderThumbProps>(function SliderThumb(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Thumb ref={ref} className={(state) => cx(styles.thumb, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SliderLabel = forwardRef<ComponentRef<typeof BaseSlider.Label>, SliderLabelProps>(function SliderLabel(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Label ref={ref} className={(state) => cx(styles.label, resolveClassName(className, state))} {...props} />;\n});\n\nexport const SliderValue = forwardRef<ComponentRef<typeof BaseSlider.Value>, SliderValueProps>(function SliderValue(\n { className, ...props },\n ref,\n) {\n return <BaseSlider.Value ref={ref} className={(state) => cx(styles.value, resolveClassName(className, state))} {...props} />;\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAsCA,MAAa,gBAAgB,WAAwE,SAAS,cAC5G,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACA,OAAW,SAAZ;EAAyB;EAAK,YAAY,UAAU,GAAGC,sBAAO,SAAS,iBAAiB,WAAW,MAAM,CAAC;EAAE,GAAI;EAAS,CAAA;EAChI;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,YAAY,UAAU,GAAGC,sBAAO,OAAO,iBAAiB,WAAW,MAAM,CAAC;EAAE,GAAI;EAAS,CAAA;EAC5H;AAEF,MAAa,kBAAkB,WAA4E,SAAS,gBAClH,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,WAAZ;EAA2B;EAAK,YAAY,UAAU,GAAGC,sBAAO,WAAW,iBAAiB,WAAW,MAAM,CAAC;EAAE,GAAI;EAAS,CAAA;EACpI;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,YAAY,UAAU,GAAGC,sBAAO,OAAO,iBAAiB,WAAW,MAAM,CAAC;EAAE,GAAI;EAAS,CAAA;EAC5H;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,YAAY,UAAU,GAAGC,sBAAO,OAAO,iBAAiB,WAAW,MAAM,CAAC;EAAE,GAAI;EAAS,CAAA;EAC5H;AAEF,MAAa,cAAc,WAAoE,SAAS,YACtG,EAAE,WAAW,GAAG,SAChB,KACA;AACA,QAAO,oBAACD,OAAW,OAAZ;EAAuB;EAAK,YAAY,UAAU,GAAGC,sBAAO,OAAO,iBAAiB,WAAW,MAAM,CAAC;EAAE,GAAI;EAAS,CAAA;EAC5H"}