@spear-ai/spectral 1.9.1 → 1.10.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 (236) hide show
  1. package/README.md +6 -5
  2. package/dist/.js +112 -239
  3. package/dist/Accordion-CDXdSAST.js +363 -0
  4. package/dist/Accordion.js +3 -498
  5. package/dist/Alert/AlertBase.js +69 -152
  6. package/dist/Alert.js +58 -106
  7. package/dist/AnimatePresence-D-9jXfgI.js +178 -0
  8. package/dist/App.js +6 -6
  9. package/dist/Avatar.js +83 -65
  10. package/dist/Badge.d.ts +1 -3
  11. package/dist/Badge.js +21 -25
  12. package/dist/Button.js +102 -178
  13. package/dist/ButtonGroup/ButtonGroupButton.js +38 -40
  14. package/dist/ButtonGroup.js +55 -59
  15. package/dist/ButtonIcon.js +58 -134
  16. package/dist/Calendar-s4lyijkn.js +3109 -0
  17. package/dist/Checkbox/CheckboxBase.js +94 -126
  18. package/dist/Checkbox.d.ts +1 -1
  19. package/dist/Checkbox.js +40 -105
  20. package/dist/Combobox/ComboboxBase.js +2 -79
  21. package/dist/Combobox.js +106 -172
  22. package/dist/ComboboxBase-D8Nf4xC-.js +491 -0
  23. package/dist/ControlGroup/ControlGroupSelect.d.ts +1 -1
  24. package/dist/ControlGroup/ControlGroupSelect.js +85 -101
  25. package/dist/ControlGroup.js +45 -48
  26. package/dist/DataCard/Card.js +37 -12
  27. package/dist/DataCard.d.ts +1 -1
  28. package/dist/DataCard.js +36 -16
  29. package/dist/DateTimePicker/Calendar.js +2 -2967
  30. package/dist/DateTimePicker/DateTimeDisplayInput.d.ts +1 -1
  31. package/dist/DateTimePicker/DateTimeDisplayInput.js +379 -275
  32. package/dist/DateTimePicker/DateTimeInput.d.ts +1 -1
  33. package/dist/DateTimePicker/DateTimeInput.js +133 -141
  34. package/dist/DateTimePicker/DateTimeUtils.js +2 -2193
  35. package/dist/DateTimePicker/TimePeriodSelect.d.ts +1 -1
  36. package/dist/DateTimePicker/TimePeriodSelect.js +45 -20
  37. package/dist/DateTimePicker/TimePicker.d.ts +1 -1
  38. package/dist/DateTimePicker/TimePicker.js +76 -60
  39. package/dist/DateTimePicker.d.ts +2 -2
  40. package/dist/DateTimePicker.js +87 -205
  41. package/dist/DateTimeUtils-DVvG6H-p.js +2098 -0
  42. package/dist/Dialog.js +74 -74
  43. package/dist/Drawer.js +67 -37
  44. package/dist/HoverCard-CYDsIiVK.js +201 -0
  45. package/dist/HoverCard.d.ts +1 -1
  46. package/dist/HoverCard.js +2 -218
  47. package/dist/Icons/AnalyzeIcon.js +50 -57
  48. package/dist/Icons/AnnotationsIcon.js +20 -15
  49. package/dist/Icons/ApprovedIcon.js +26 -18
  50. package/dist/Icons/ArrowDownIcon.js +20 -6
  51. package/dist/Icons/ArrowUpIcon.js +20 -6
  52. package/dist/Icons/BoxToolIcon.js +17 -12
  53. package/dist/Icons/CalendarIcon.js +43 -20
  54. package/dist/Icons/CheckCircleIcon.js +26 -10
  55. package/dist/Icons/CheckSquareIcon.js +26 -10
  56. package/dist/Icons/CheckmarkIcon.js +22 -9
  57. package/dist/Icons/ChevronDownIcon.js +22 -9
  58. package/dist/Icons/ChevronUpIcon.js +22 -9
  59. package/dist/Icons/ClockIcon.js +26 -18
  60. package/dist/Icons/CloseCircleIcon.js +26 -10
  61. package/dist/Icons/CloseIcon.js +18 -9
  62. package/dist/Icons/DashboardIcon.js +36 -10
  63. package/dist/Icons/DatabaseIcon.js +36 -19
  64. package/dist/Icons/DeleteIcon.js +36 -19
  65. package/dist/Icons/DurationIcon.js +57 -22
  66. package/dist/Icons/EditIcon.js +26 -27
  67. package/dist/Icons/EmailIcon.js +26 -10
  68. package/dist/Icons/EraserIcon.js +41 -25
  69. package/dist/Icons/ErrorIcon.js +27 -11
  70. package/dist/Icons/EyeClosedIcon.js +29 -13
  71. package/dist/Icons/EyeClosedIcon2.js +27 -11
  72. package/dist/Icons/EyeOpenIcon.js +22 -9
  73. package/dist/Icons/FileDownloadIcon.js +43 -20
  74. package/dist/Icons/GoToFirstIcon.js +26 -9
  75. package/dist/Icons/GoToLastIcon.js +26 -9
  76. package/dist/Icons/HarmonicCursorsIcon.js +23 -9
  77. package/dist/Icons/IconBase.d.ts +3 -3
  78. package/dist/Icons/IconBase.js +49 -66
  79. package/dist/Icons/InfoIcon.js +36 -10
  80. package/dist/Icons/KeyboardIcon.js +26 -27
  81. package/dist/Icons/LabelIcon.js +19 -14
  82. package/dist/Icons/LassoIcon.js +36 -28
  83. package/dist/Icons/LineToolIcon.js +48 -39
  84. package/dist/Icons/LiveViewIcon.js +50 -12
  85. package/dist/Icons/LoaderIcon.js +67 -27
  86. package/dist/Icons/LocationIcon.js +26 -27
  87. package/dist/Icons/LogoutIcon.js +20 -15
  88. package/dist/Icons/MeasureIcon.js +78 -25
  89. package/dist/Icons/MessagesIcon.js +33 -18
  90. package/dist/Icons/MetadataIcon.js +20 -15
  91. package/dist/Icons/MinusIcon.d.ts +1 -1
  92. package/dist/Icons/MinusIcon.js +18 -6
  93. package/dist/Icons/OntologyIcon.js +87 -71
  94. package/dist/Icons/PanelIconClose.js +28 -10
  95. package/dist/Icons/PanelIconOpen.js +28 -10
  96. package/dist/Icons/PlayIcon.js +20 -6
  97. package/dist/Icons/PlusIcon.js +20 -14
  98. package/dist/Icons/PolygonIcon.js +50 -39
  99. package/dist/Icons/ProgressCheckIcon.d.ts +5 -0
  100. package/dist/Icons/ProgressCheckIcon.js +58 -0
  101. package/dist/Icons/ResetIcon.js +17 -12
  102. package/dist/Icons/ReviewedIcon.js +36 -19
  103. package/dist/Icons/ScissorsIcon.js +22 -17
  104. package/dist/Icons/SearchIcon.js +26 -9
  105. package/dist/Icons/SettingsIcon.js +26 -27
  106. package/dist/Icons/SortAscendingIcon.js +50 -12
  107. package/dist/Icons/SortAtoZIcon.js +50 -12
  108. package/dist/Icons/SortDescendingIcon.js +50 -12
  109. package/dist/Icons/SortZtoAIcon.js +50 -12
  110. package/dist/Icons/StackIcon.js +26 -9
  111. package/dist/Icons/StarIcon.js +20 -6
  112. package/dist/Icons/TrashIcon.js +17 -12
  113. package/dist/Icons/UndoIcon.js +20 -15
  114. package/dist/Icons/User2Icon.js +26 -10
  115. package/dist/Icons/UserIcon.js +19 -14
  116. package/dist/Icons/WarningIcon.js +19 -14
  117. package/dist/Icons/ZoomAllIcon.js +71 -15
  118. package/dist/Icons/ZoomXIcon.js +36 -10
  119. package/dist/Icons/ZoomYIcon.js +36 -10
  120. package/dist/Icons/index.d.ts +1 -0
  121. package/dist/Icons.js +68 -136
  122. package/dist/IconsAnimated/PanelLeftCloseIcon.js +66 -36
  123. package/dist/IconsAnimated/PanelLeftOpenIcon.js +66 -36
  124. package/dist/IconsAnimated.js +3 -6
  125. package/dist/Input/InputUtils.js +51 -52
  126. package/dist/Input.js +132 -185
  127. package/dist/InputOTP-XUWW9xcI.js +461 -0
  128. package/dist/InputOTP.js +2 -382
  129. package/dist/Kbd.d.ts +1 -1
  130. package/dist/Kbd.js +182 -86
  131. package/dist/Label.js +12 -14
  132. package/dist/MultiSelect/MultiSelectBase.js +331 -403
  133. package/dist/MultiSelect.d.ts +1 -1
  134. package/dist/MultiSelect.js +23 -23
  135. package/dist/Popover.js +28 -32
  136. package/dist/RadioButton.d.ts +17 -0
  137. package/dist/RadioButton.js +33 -0
  138. package/dist/RadioButtonGroup/RadioButtonGroupBase.d.ts +3 -1
  139. package/dist/RadioButtonGroup/RadioButtonGroupBase.js +49 -46
  140. package/dist/RadioButtonGroup.d.ts +1 -1
  141. package/dist/RadioButtonGroup.js +11 -8
  142. package/dist/RadioGroup-w_q6RGEK.js +447 -0
  143. package/dist/RadioGroup.js +2 -505
  144. package/dist/Select.js +163 -186
  145. package/dist/Separator.js +16 -19
  146. package/dist/Skeleton.js +10 -6
  147. package/dist/Slider-BzzZT3Zm.js +490 -0
  148. package/dist/Slider.js +2 -562
  149. package/dist/SpectralProvider.js +8 -5
  150. package/dist/Switch/SwitchBase.js +91 -95
  151. package/dist/Switch-CVzRJ-0n.js +126 -0
  152. package/dist/Switch.d.ts +1 -1
  153. package/dist/Switch.js +2 -134
  154. package/dist/Tabs/TabsBase.js +242 -250
  155. package/dist/Tabs/tabsUtils.js +65 -73
  156. package/dist/Tabs.d.ts +1 -1
  157. package/dist/Tabs.js +73 -103
  158. package/dist/Textarea/TextareaUtils.js +35 -46
  159. package/dist/Textarea.js +83 -160
  160. package/dist/Toast-9zqXxKKO.js +711 -0
  161. package/dist/Toast.js +2 -885
  162. package/dist/Toggle/ToggleBase.js +46 -56
  163. package/dist/Toggle.d.ts +1 -1
  164. package/dist/Toggle.js +52 -62
  165. package/dist/ToggleGroup/ToggleGroupBase.js +128 -104
  166. package/dist/ToggleGroup.d.ts +1 -1
  167. package/dist/ToggleGroup.js +52 -63
  168. package/dist/Tooltip-D1K8kY1y.js +389 -0
  169. package/dist/Tooltip.js +2 -365
  170. package/dist/Tray.js +174 -217
  171. package/dist/chunk-h9knIhTc.js +20 -0
  172. package/dist/clsx-jM1GlMvB.js +16 -0
  173. package/dist/dist-3Af8168y.js +913 -0
  174. package/dist/dist-7HRQ5IKN.js +249 -0
  175. package/dist/dist-B2k1iWFp.js +129 -0
  176. package/dist/dist-B4FgboI8.js +122 -0
  177. package/dist/dist-B4g6zpUF.js +33 -0
  178. package/dist/dist-B9tup-4O.js +216 -0
  179. package/dist/dist-BK1K0g9W.js +29 -0
  180. package/dist/dist-Bfjk-jx9.js +28 -0
  181. package/dist/dist-Bft31cJh.js +65 -0
  182. package/dist/dist-BtdmHAzK.js +190 -0
  183. package/dist/dist-C0Hifjgh.js +1287 -0
  184. package/dist/dist-CGzgmYB9.js +68 -0
  185. package/dist/dist-ClmepHp4.js +10 -0
  186. package/dist/dist-D8Wb_MX9.js +6 -0
  187. package/dist/dist-Dtvmk11N.js +12 -0
  188. package/dist/dist-fW81qjVl.js +677 -0
  189. package/dist/dist-s1uWaZYZ.js +11 -0
  190. package/dist/es2015-YHaMV-St.js +701 -0
  191. package/dist/hooks/useAccordionAutoScroll.js +66 -67
  192. package/dist/hooks/useControllableState.js +14 -13
  193. package/dist/hooks/useTheme.js +21 -17
  194. package/dist/index.d.ts +2 -1
  195. package/dist/index.d.ts.map +1 -1
  196. package/dist/main.js +18954 -27224
  197. package/dist/primitives/button.js +39 -41
  198. package/dist/primitives/input-group.js +57 -73
  199. package/dist/primitives/input.js +11 -20
  200. package/dist/primitives/popover.js +34 -28
  201. package/dist/primitives/select.js +70 -138
  202. package/dist/primitives/slot.js +32 -31
  203. package/dist/primitives/textarea.js +10 -16
  204. package/dist/proxy-Dn10Pl_g.js +4920 -0
  205. package/dist/styles/main.css +2 -1
  206. package/dist/styles/spectral.css +1 -1
  207. package/dist/twUtils-VNWgstKL.js +1673 -0
  208. package/dist/use-animation-CBUDycyW.js +57 -0
  209. package/dist/utils/constants.js +4 -4
  210. package/dist/utils/formFieldUtils.js +136 -148
  211. package/dist/utils/sharedUtils.js +26 -7
  212. package/dist/utils/twUtils.js +2 -2919
  213. package/package.json +24 -28
  214. package/dist/ComboboxBase-CxNxYtdT.js +0 -408
  215. package/dist/clsx-OuTLNxxd.js +0 -16
  216. package/dist/index-0ioNhtNM.js +0 -10
  217. package/dist/index-6oYKCvIn.js +0 -677
  218. package/dist/index-BFOf48AQ.js +0 -69
  219. package/dist/index-BZPx6jYI.js +0 -8
  220. package/dist/index-BlHU_t18.js +0 -142
  221. package/dist/index-Bm1RbF6w.js +0 -1037
  222. package/dist/index-Bv2OIg5P.js +0 -225
  223. package/dist/index-CKEI0pDv.js +0 -56
  224. package/dist/index-CM_hWgfC.js +0 -32
  225. package/dist/index-C_YVr64u.js +0 -1538
  226. package/dist/index-Cl8VeY0o.js +0 -149
  227. package/dist/index-CwSyIPrv.js +0 -13
  228. package/dist/index-D29mdTf5.js +0 -34
  229. package/dist/index-DEYs15GP.js +0 -66
  230. package/dist/index-Dc0No4pV.js +0 -233
  231. package/dist/index-T6XEa11q.js +0 -822
  232. package/dist/index-pBCLb6Gr.js +0 -240
  233. package/dist/index-psiVrsnE.js +0 -27
  234. package/dist/index-rKs9bXHr.js +0 -6
  235. package/dist/proxy-CO_-Vget.js +0 -4975
  236. package/dist/use-animation-DhEPRwZ3.js +0 -62
@@ -1,42 +1,40 @@
1
- import { jsx as s } from "react/jsx-runtime";
2
- import { Slot as r } from "./slot.js";
3
- import { cn as l } from "../utils/twUtils.js";
4
- import { c as a } from "../index-D29mdTf5.js";
1
+ import { t as e } from "../twUtils-VNWgstKL.js";
2
+ import { t } from "../dist-B4g6zpUF.js";
3
+ import { Slot as n } from "./slot.js";
5
4
  import "react";
6
- const u = a(
7
- "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md font-sans text-medium font-medium transition-all disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 focus-visible:outline focus-visible:outline-accent focus-visible:outline-offset-2 aria-invalid:outline-button-danger aria-invalid:border-button-danger",
8
- {
9
- variants: {
10
- variant: {
11
- default: "bg-level-one text-text-primary hover:bg-level-two",
12
- destructive: "bg-danger-200 text-text-primary hover:bg-danger-300 focus-visible:outline-danger-200 focus-visible:outline-offset-2 focus-visible:outline-2",
13
- outline: "border-level-three bg-level-one hover:bg-level-two",
14
- secondary: "bg-level-two text-text-secondary hover:bg-level-three",
15
- ghost: "hover:bg-level-one",
16
- link: "text-text-primary underline-offset-4 hover:underline-accent"
17
- },
18
- size: {
19
- default: "h-9 px-4 py-2 has-[>svg]:px-3 w-full",
20
- sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
21
- lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
22
- icon: "size-9",
23
- "icon-sm": "size-8",
24
- "icon-lg": "size-10"
25
- }
26
- },
27
- defaultVariants: {
28
- variant: "default",
29
- size: "default"
30
- }
31
- }
32
- ), p = ({
33
- asChild: e = !1,
34
- className: t,
35
- size: o,
36
- variant: i,
37
- ...n
38
- }) => /* @__PURE__ */ s(e ? r : "button", { "data-slot": "button", className: l(u({ variant: i, size: o, className: t })), ...n });
39
- export {
40
- p as PrimitiveButton,
41
- u as buttonVariants
42
- };
5
+ import { jsx as r } from "react/jsx-runtime";
6
+ //#region src/primitives/button.tsx
7
+ var i = t("gap-2 rounded-md text-medium font-medium [&_svg:not([class*='size-'])]:size-4 inline-flex shrink-0 items-center justify-center font-sans whitespace-nowrap transition-all focus-visible:outline focus-visible:outline-offset-2 focus-visible:outline-accent disabled:pointer-events-none disabled:opacity-50 aria-invalid:border-button-danger aria-invalid:outline-button-danger [&_svg]:pointer-events-none [&_svg]:shrink-0", {
8
+ variants: {
9
+ variant: {
10
+ default: "bg-level-one text-text-primary hover:bg-level-two",
11
+ destructive: "bg-danger-200 text-text-primary hover:bg-danger-300 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-danger-200",
12
+ outline: "border-level-three bg-level-one hover:bg-level-two",
13
+ secondary: "bg-level-two text-text-secondary hover:bg-level-three",
14
+ ghost: "hover:bg-level-one",
15
+ link: "hover:underline-accent text-text-primary underline-offset-4"
16
+ },
17
+ size: {
18
+ default: "h-9 px-4 py-2 has-[>svg]:px-3 w-full",
19
+ sm: "h-8 rounded-md gap-1.5 px-3 has-[>svg]:px-2.5",
20
+ lg: "h-10 rounded-md px-6 has-[>svg]:px-4",
21
+ icon: "size-9",
22
+ "icon-sm": "size-8",
23
+ "icon-lg": "size-10"
24
+ }
25
+ },
26
+ defaultVariants: {
27
+ variant: "default",
28
+ size: "default"
29
+ }
30
+ }), a = ({ asChild: t = !1, className: a, size: o, variant: s, ...c }) => /* @__PURE__ */ r(t ? n : "button", {
31
+ "data-slot": "button",
32
+ className: e(i({
33
+ variant: s,
34
+ size: o,
35
+ className: a
36
+ })),
37
+ ...c
38
+ });
39
+ //#endregion
40
+ export { a as PrimitiveButton, i as buttonVariants };
@@ -1,74 +1,58 @@
1
- import { jsx as r } from "react/jsx-runtime";
2
- import { PrimitiveButton as u } from "./button.js";
3
- import { Input as d } from "./input.js";
4
- import { Textarea as l } from "./textarea.js";
5
- import { cn as n } from "../utils/twUtils.js";
6
- import { c as i } from "../index-D29mdTf5.js";
1
+ import { t as e } from "../twUtils-VNWgstKL.js";
2
+ import { t } from "../dist-B4g6zpUF.js";
3
+ import { PrimitiveButton as n } from "./button.js";
4
+ import { Input as r } from "./input.js";
5
+ import { Textarea as i } from "./textarea.js";
7
6
  import "react";
8
- const k = ({ className: a, ...t }) => /* @__PURE__ */ r(
9
- "div",
10
- {
11
- "data-slot": "input-group",
12
- role: "group",
13
- className: n(
14
- "group/input-group border-input has-disabled:bg-input/50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 relative flex h-8 w-full min-w-0 items-center rounded-lg border transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-3 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",
15
- a
16
- ),
17
- ...t
18
- }
19
- ), p = i(
20
- "flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",
21
- {
22
- variants: {
23
- align: {
24
- "inline-start": "order-first pl-2 has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]",
25
- "inline-end": "order-last pr-2 has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]",
26
- "block-start": "order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2",
27
- "block-end": "order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"
28
- }
29
- },
30
- defaultVariants: {
31
- align: "inline-start"
32
- }
33
- }
34
- ), z = ({ className: a, align: t = "inline-start", onClick: o, ...s }) => /* @__PURE__ */ r(
35
- "div",
36
- {
37
- role: "presentation",
38
- "data-slot": "input-group-addon",
39
- "data-align": t,
40
- className: n(p({ align: t }), a),
41
- onClick: (e) => {
42
- e.target.closest("button") || e.currentTarget.parentElement?.querySelector('input, textarea, [contenteditable="true"]')?.focus(), o?.(e);
43
- },
44
- ...s
45
- }
46
- ), c = i("flex items-center gap-2 text-sm shadow-none", {
47
- variants: {
48
- size: {
49
- xs: "h-6 gap-1 rounded-[calc(var(--radius)-3px)] px-1.5 [&>svg:not([class*='size-'])]:size-3.5",
50
- sm: "h-7 gap-1.5 rounded-[calc(var(--radius)-2px)] px-2 [&>svg:not([class*='size-'])]:size-4",
51
- "icon-xs": "size-6 rounded-[calc(var(--radius)-3px)] p-0 has-[>svg]:p-0",
52
- "icon-sm": "size-8 p-0 has-[>svg]:p-0"
53
- }
54
- },
55
- defaultVariants: {
56
- size: "xs"
57
- }
58
- }), w = ({ className: a, type: t = "button", variant: o = "ghost", size: s = "xs", ...e }) => /* @__PURE__ */ r(u, { type: t, "data-size": s, variant: o, className: n(c({ size: s }), a), ...e }), y = ({ className: a, ...t }) => /* @__PURE__ */ r("span", { className: n("text-muted-foreground flex items-center gap-2 text-sm [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4", a), ...t }), G = ({ className: a, ...t }) => /* @__PURE__ */ r(d, { "data-slot": "input-group-control", className: n("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent", a), ...t }), I = ({ className: a, ...t }) => /* @__PURE__ */ r(
59
- l,
60
- {
61
- "data-slot": "input-group-control",
62
- className: n("flex-1 resize-none rounded-none border-0 bg-transparent py-2 shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent", a),
63
- ...t
64
- }
65
- );
66
- export {
67
- k as InputGroup,
68
- z as InputGroupAddon,
69
- w as InputGroupButton,
70
- G as InputGroupInput,
71
- y as InputGroupText,
72
- I as InputGroupTextarea,
73
- p as inputGroupAddonVariants
74
- };
7
+ import { jsx as a } from "react/jsx-runtime";
8
+ //#region src/primitives/input-group.tsx
9
+ var o = ({ className: t, ...n }) => /* @__PURE__ */ a("div", {
10
+ "data-slot": "input-group",
11
+ role: "group",
12
+ className: e("group/input-group h-8 min-w-0 rounded-lg border-input has-disabled:bg-input/50 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:bg-input/30 dark:has-disabled:bg-input/80 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5 relative flex w-full items-center border transition-colors outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-disabled:opacity-50 has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-3 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto", t),
13
+ ...n
14
+ }), s = t("gap-2 py-1.5 text-sm font-medium text-muted-foreground [&>svg:not([class*='size-'])]:size-4 flex h-auto cursor-text items-center justify-center select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)]", {
15
+ variants: { align: {
16
+ "inline-start": "pl-2 order-first has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]",
17
+ "inline-end": "pr-2 order-last has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]",
18
+ "block-start": "px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2 order-first w-full justify-start",
19
+ "block-end": "px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2 order-last w-full justify-start"
20
+ } },
21
+ defaultVariants: { align: "inline-start" }
22
+ }), c = ({ className: t, align: n = "inline-start", onClick: r, ...i }) => /* @__PURE__ */ a("div", {
23
+ role: "presentation",
24
+ "data-slot": "input-group-addon",
25
+ "data-align": n,
26
+ className: e(s({ align: n }), t),
27
+ onClick: (e) => {
28
+ e.target.closest("button") || e.currentTarget.parentElement?.querySelector("input, textarea, [contenteditable=\"true\"]")?.focus(), r?.(e);
29
+ },
30
+ ...i
31
+ }), l = t("gap-2 text-sm flex items-center shadow-none", {
32
+ variants: { size: {
33
+ xs: "h-6 gap-1 px-1.5 [&>svg:not([class*='size-'])]:size-3.5 rounded-[calc(var(--radius)-3px)]",
34
+ sm: "h-7 gap-1.5 px-2 [&>svg:not([class*='size-'])]:size-4 rounded-[calc(var(--radius)-2px)]",
35
+ "icon-xs": "size-6 p-0 has-[>svg]:p-0 rounded-[calc(var(--radius)-3px)]",
36
+ "icon-sm": "size-8 p-0 has-[>svg]:p-0"
37
+ } },
38
+ defaultVariants: { size: "xs" }
39
+ }), u = ({ className: t, type: r = "button", variant: i = "ghost", size: o = "xs", ...s }) => /* @__PURE__ */ a(n, {
40
+ type: r,
41
+ "data-size": o,
42
+ variant: i,
43
+ className: e(l({ size: o }), t),
44
+ ...s
45
+ }), d = ({ className: t, ...n }) => /* @__PURE__ */ a("span", {
46
+ className: e("gap-2 text-sm text-muted-foreground [&_svg:not([class*='size-'])]:size-4 flex items-center [&_svg]:pointer-events-none", t),
47
+ ...n
48
+ }), f = ({ className: t, ...n }) => /* @__PURE__ */ a(r, {
49
+ "data-slot": "input-group-control",
50
+ className: e("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent", t),
51
+ ...n
52
+ }), p = ({ className: t, ...n }) => /* @__PURE__ */ a(i, {
53
+ "data-slot": "input-group-control",
54
+ className: e("py-2 flex-1 resize-none rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 disabled:bg-transparent aria-invalid:ring-0 dark:bg-transparent dark:disabled:bg-transparent", t),
55
+ ...n
56
+ });
57
+ //#endregion
58
+ export { o as InputGroup, c as InputGroupAddon, u as InputGroupButton, f as InputGroupInput, d as InputGroupText, p as InputGroupTextarea, s as inputGroupAddonVariants };
@@ -1,21 +1,12 @@
1
- import { jsx as o } from "react/jsx-runtime";
2
- import { cn as r } from "../utils/twUtils.js";
1
+ import { t as e } from "../twUtils-VNWgstKL.js";
3
2
  import "react";
4
- const s = ({ className: e, type: t, ...i }) => /* @__PURE__ */ o(
5
- "input",
6
- {
7
- className: r(
8
- "file:text-input-text placeholder:text-input-text-placeholder selection:bg-input-bg--selected selection:text-input-text border-input-border h-9 w-full min-w-0 rounded-md border",
9
- "hover:border-input-border--hover focus:border-input-border--focus px-3 py-1 text-base shadow-xs transition-[color,box-shadow] file:inline-flex file:h-7 file:border-0 focus:outline-none",
10
- "focus-visible:outline-accent file:bg-transparent file:text-sm file:font-medium focus-visible:outline disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
11
- "aria-invalid:ring-danger-400 aria-invalid:border-danger-400 focus-visible:outline-offset-2",
12
- e
13
- ),
14
- "data-slot": "input-primitive",
15
- type: t,
16
- ...i
17
- }
18
- );
19
- export {
20
- s as Input
21
- };
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ //#region src/primitives/input.tsx
5
+ var n = ({ className: n, type: r, ...i }) => /* @__PURE__ */ t("input", {
6
+ className: e("h-9 min-w-0 rounded-md w-full border border-input-border selection:bg-input-bg--selected selection:text-input-text file:text-input-text placeholder:text-input-text-placeholder", "px-3 py-1 text-base shadow-xs file:h-7 transition-[color,box-shadow] file:inline-flex file:border-0 hover:border-input-border--hover focus:border-input-border--focus focus:outline-none", "file:text-sm file:font-medium file:bg-transparent focus-visible:outline focus-visible:outline-accent disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50", "focus-visible:outline-offset-2 aria-invalid:border-danger-400 aria-invalid:ring-danger-400", n),
7
+ "data-slot": "input-primitive",
8
+ type: r,
9
+ ...i
10
+ });
11
+ //#endregion
12
+ export { n as Input };
@@ -1,29 +1,35 @@
1
- import { jsx as t } from "react/jsx-runtime";
2
- import { R as s, A as i, P as d, C as p, T as m } from "../index-Bv2OIg5P.js";
3
- import { cn as a } from "../utils/twUtils.js";
1
+ import { t as e } from "../twUtils-VNWgstKL.js";
2
+ import { a as t, i as n, n as r, r as i, t as a } from "../dist-BtdmHAzK.js";
4
3
  import "react";
5
- const v = ({ ...o }) => /* @__PURE__ */ t(s, { "data-slot": "popover", ...o }), u = ({ ...o }) => /* @__PURE__ */ t(m, { "data-slot": "popover-trigger", ...o }), h = ({ className: o, align: e = "center", sideOffset: r = 4, ...n }) => /* @__PURE__ */ t(d, { children: /* @__PURE__ */ t(
6
- p,
7
- {
8
- "data-slot": "popover-content",
9
- align: e,
10
- sideOffset: r,
11
- className: a(
12
- "bg-popover text-popover-foreground ring-foreground/10 motion-safe:data-[state=open]:animate-in motion-safe:data-[state=open]:fade-in-0 motion-safe:data-[state=open]:zoom-in-95 motion-safe:data-[state=closed]:animate-out motion-safe:data-[state=closed]:fade-out-0 motion-safe:data-[state=closed]:zoom-out-95 motion-safe:data-[side=bottom]:slide-in-from-top-2 motion-safe:data-[side=left]:slide-in-from-right-2 motion-safe:data-[side=right]:slide-in-from-left-2 motion-safe:data-[side=top]:slide-in-from-bottom-2 z-50 flex w-72 origin-(--radix-popover-content-transform-origin) flex-col gap-2.5 rounded-lg p-2.5 text-sm shadow-md ring-1 outline-hidden",
13
- o
14
- ),
15
- ...n
16
- }
17
- ) }), x = ({ ...o }) => /* @__PURE__ */ t(i, { "data-slot": "popover-anchor", ...o }), P = ({ className: o, ...e }) => /* @__PURE__ */ t("div", { "data-slot": "popover-header", className: a("flex flex-col gap-0.5 text-sm", o), ...e }), N = ({ className: o, ...e }) => (
18
- // eslint-disable-next-line jsx-a11y/heading-has-content -- content provided via {...props}
19
- /* @__PURE__ */ t("h2", { "data-slot": "popover-title", className: a("cn-font-heading font-medium", o), ...e })
20
- ), T = ({ className: o, ...e }) => /* @__PURE__ */ t("p", { "data-slot": "popover-description", className: a("text-muted-foreground", o), ...e });
21
- export {
22
- v as Popover,
23
- x as PopoverAnchor,
24
- h as PopoverContent,
25
- T as PopoverDescription,
26
- P as PopoverHeader,
27
- N as PopoverTitle,
28
- u as PopoverTrigger
29
- };
4
+ import { jsx as o } from "react/jsx-runtime";
5
+ //#region src/primitives/popover.tsx
6
+ var s = ({ ...e }) => /* @__PURE__ */ o(n, {
7
+ "data-slot": "popover",
8
+ ...e
9
+ }), c = ({ ...e }) => /* @__PURE__ */ o(t, {
10
+ "data-slot": "popover-trigger",
11
+ ...e
12
+ }), l = ({ className: t, align: n = "center", sideOffset: a = 4, ...s }) => /* @__PURE__ */ o(i, { children: /* @__PURE__ */ o(r, {
13
+ "data-slot": "popover-content",
14
+ align: n,
15
+ sideOffset: a,
16
+ className: e("w-72 gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-foreground/10 z-50 flex origin-(--radix-popover-content-transform-origin) flex-col ring-1 outline-hidden motion-safe:data-[side=bottom]:slide-in-from-top-2 motion-safe:data-[side=left]:slide-in-from-right-2 motion-safe:data-[side=right]:slide-in-from-left-2 motion-safe:data-[side=top]:slide-in-from-bottom-2 motion-safe:data-[state=closed]:animate-out motion-safe:data-[state=closed]:fade-out-0 motion-safe:data-[state=closed]:zoom-out-95 motion-safe:data-[state=open]:animate-in motion-safe:data-[state=open]:fade-in-0 motion-safe:data-[state=open]:zoom-in-95", t),
17
+ ...s
18
+ }) }), u = ({ ...e }) => /* @__PURE__ */ o(a, {
19
+ "data-slot": "popover-anchor",
20
+ ...e
21
+ }), d = ({ className: t, ...n }) => /* @__PURE__ */ o("div", {
22
+ "data-slot": "popover-header",
23
+ className: e("gap-0.5 text-sm flex flex-col", t),
24
+ ...n
25
+ }), f = ({ className: t, ...n }) => /* @__PURE__ */ o("h2", {
26
+ "data-slot": "popover-title",
27
+ className: e("cn-font-heading font-medium", t),
28
+ ...n
29
+ }), p = ({ className: t, ...n }) => /* @__PURE__ */ o("p", {
30
+ "data-slot": "popover-description",
31
+ className: e("text-muted-foreground", t),
32
+ ...n
33
+ });
34
+ //#endregion
35
+ export { s as Popover, u as PopoverAnchor, l as PopoverContent, p as PopoverDescription, d as PopoverHeader, f as PopoverTitle, c as PopoverTrigger };
@@ -1,139 +1,71 @@
1
- import { jsx as e, jsxs as n } from "react/jsx-runtime";
2
- import "../Icons/AnalyzeIcon.js";
3
- import "../Icons/AnnotationsIcon.js";
4
- import "../Icons/ApprovedIcon.js";
5
- import "../Icons/ArrowDownIcon.js";
6
- import "../Icons/ArrowUpIcon.js";
7
- import "../Icons/BoxToolIcon.js";
8
- import "../Icons/CalendarIcon.js";
9
- import "../Icons/CheckCircleIcon.js";
10
- import "../Icons/CheckSquareIcon.js";
11
- import { CheckmarkIcon as m } from "../Icons/CheckmarkIcon.js";
12
- import { ChevronDownIcon as l } from "../Icons/ChevronDownIcon.js";
13
- import { ChevronUpIcon as p } from "../Icons/ChevronUpIcon.js";
14
- import "../Icons/ClockIcon.js";
15
- import "../Icons/CloseCircleIcon.js";
16
- import "../Icons/CloseIcon.js";
17
- import "../Icons/DashboardIcon.js";
18
- import "../Icons/DatabaseIcon.js";
19
- import "../Icons/DeleteIcon.js";
20
- import "../Icons/DurationIcon.js";
21
- import "../Icons/EditIcon.js";
22
- import "../Icons/EmailIcon.js";
23
- import "../Icons/EraserIcon.js";
24
- import "../Icons/ErrorIcon.js";
25
- import "../Icons/EyeClosedIcon.js";
26
- import "../Icons/EyeClosedIcon2.js";
27
- import "../Icons/EyeOpenIcon.js";
28
- import "../Icons/FileDownloadIcon.js";
29
- import "../Icons/GoToFirstIcon.js";
30
- import "../Icons/GoToLastIcon.js";
31
- import "../Icons/HarmonicCursorsIcon.js";
32
- import "../Icons/InfoIcon.js";
33
- import "../Icons/KeyboardIcon.js";
34
- import "../Icons/LabelIcon.js";
35
- import "../Icons/LassoIcon.js";
36
- import "../Icons/LineToolIcon.js";
37
- import "../Icons/LiveViewIcon.js";
38
- import "../Icons/LoaderIcon.js";
39
- import "../Icons/LocationIcon.js";
40
- import "../Icons/LogoutIcon.js";
41
- import "../Icons/MeasureIcon.js";
42
- import "../Icons/MessagesIcon.js";
43
- import "../Icons/MetadataIcon.js";
44
- import "../Icons/MinusIcon.js";
45
- import "../Icons/OntologyIcon.js";
46
- import "../Icons/PanelIconClose.js";
47
- import "../Icons/PanelIconOpen.js";
48
- import "../Icons/PlayIcon.js";
49
- import "../Icons/PlusIcon.js";
50
- import "../Icons/PolygonIcon.js";
51
- import "../Icons/ResetIcon.js";
52
- import "../Icons/ReviewedIcon.js";
53
- import "../Icons/ScissorsIcon.js";
54
- import "../Icons/SearchIcon.js";
55
- import "../Icons/SettingsIcon.js";
56
- import "../Icons/SortAscendingIcon.js";
57
- import "../Icons/SortAtoZIcon.js";
58
- import "../Icons/SortDescendingIcon.js";
59
- import "../Icons/SortZtoAIcon.js";
60
- import "../Icons/StackIcon.js";
61
- import "../Icons/StarIcon.js";
62
- import "../Icons/TrashIcon.js";
63
- import "../Icons/UndoIcon.js";
64
- import "../Icons/User2Icon.js";
65
- import "../Icons/UserIcon.js";
66
- import "../Icons/WarningIcon.js";
67
- import "../Icons/ZoomAllIcon.js";
68
- import "../Icons/ZoomXIcon.js";
69
- import "../Icons/ZoomYIcon.js";
70
- import { R as c, T as d, I as u, V as f, P as g, C as x, a as h, d as v, f as b, e as w, S as y, b as S, G as z, L as N, c as I } from "../index-T6XEa11q.js";
71
- import { cn as r } from "../utils/twUtils.js";
1
+ import { CheckmarkIcon as e } from "../Icons/CheckmarkIcon.js";
2
+ import { ChevronDownIcon as t } from "../Icons/ChevronDownIcon.js";
3
+ import { ChevronUpIcon as n } from "../Icons/ChevronUpIcon.js";
4
+ import { t as r } from "../twUtils-VNWgstKL.js";
5
+ import { a as i, c as a, d as o, f as s, h as c, i as l, l as u, m as d, n as f, o as p, p as m, r as h, s as g, t as _, u as v } from "../dist-fW81qjVl.js";
72
6
  import "react";
73
- const Mt = ({ ...t }) => /* @__PURE__ */ e(c, { "data-slot": "select", ...t }), Ot = ({ ...t }) => /* @__PURE__ */ e(z, { "data-slot": "select-group", ...t }), Qt = ({ ...t }) => /* @__PURE__ */ e(f, { "data-slot": "select-value", ...t }), Wt = ({
74
- asChild: t,
75
- children: o,
76
- className: a,
77
- size: i = "default",
78
- ...s
79
- }) => /* @__PURE__ */ n(
80
- d,
81
- {
82
- asChild: t,
83
- className: r(
84
- "border-input-border data-placeholder:text-input-text-placeholder [&_svg:not([class*='text-'])]:text-text-placeholder focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-danger-400 flex h-9 w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
85
- a
86
- ),
87
- "data-size": i,
88
- "data-slot": "select-trigger",
89
- ...s,
90
- children: [
91
- o,
92
- !t && /* @__PURE__ */ e(u, { asChild: !0, children: /* @__PURE__ */ e(l, { className: "size-4 opacity-50" }) })
93
- ]
94
- }
95
- ), Xt = ({ align: t = "center", children: o, className: a, position: i = "popper", ...s }) => /* @__PURE__ */ e(g, { children: /* @__PURE__ */ n(
96
- x,
97
- {
98
- align: t,
99
- className: r(
100
- "bg-input-bg text-text-primary motion-safe:data-[state=open]:animate-in motion-safe:data-[state=closed]:animate-out motion-safe:data-[state=closed]:fade-out-0 motion-safe:data-[state=open]:fade-in-0 motion-safe:data-[state=closed]:zoom-out-95 motion-safe:data-[state=open]:zoom-in-95 motion-safe:data-[side=bottom]:slide-in-from-top-2 motion-safe:data-[side=left]:slide-in-from-right-2 motion-safe:data-[side=right]:slide-in-from-left-2 motion-safe:data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-[--radix-select-content-available-height] min-w-32 origin-[--radix-select-content-transform-origin] overflow-x-hidden overflow-y-auto rounded-md border shadow-md",
101
- i === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",
102
- a
103
- ),
104
- "data-slot": "select-content",
105
- position: i,
106
- ...s,
107
- children: [
108
- /* @__PURE__ */ e(_, {}),
109
- /* @__PURE__ */ e(h, { className: r("p-1", i === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width) scroll-my-1"), "data-slot": "select-viewport", children: o }),
110
- /* @__PURE__ */ e(j, {})
111
- ]
112
- }
113
- ) }), Yt = ({ className: t, ...o }) => /* @__PURE__ */ e(N, { className: r("text-text-primary px-2 py-1.5 text-xs", t), "data-slot": "select-label", ...o }), Zt = ({ className: t, children: o, ...a }) => /* @__PURE__ */ n(
114
- v,
115
- {
116
- className: r(
117
- "hover:bg-accent hover:border-input-border--hover hover:text-text-inverted! focus:bg-accent focus:border-input-border--focus focus:text-text-inverted! data-highlighted:bg-accent data-highlighted:text-text-inverted! hover:[&_svg]:text-text-inverted! focus:[&_svg]:text-text-inverted! data-highlighted:[&_svg]:text-text-inverted! relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-none select-none data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",
118
- t
119
- ),
120
- "data-slot": "select-item",
121
- ...a,
122
- children: [
123
- /* @__PURE__ */ e("span", { className: "absolute right-2 flex size-3.5 items-center justify-center", children: /* @__PURE__ */ e(b, { children: /* @__PURE__ */ e(m, { className: "size-4" }) }) }),
124
- /* @__PURE__ */ e(w, { children: o })
125
- ]
126
- }
127
- ), $t = ({ className: t, ...o }) => /* @__PURE__ */ e(I, { className: r("bg-border pointer-events-none -mx-1 my-1 h-px", t), "data-slot": "select-separator", ...o }), _ = ({ className: t, ...o }) => /* @__PURE__ */ e(y, { className: r("flex cursor-default items-center justify-center py-1", t), "data-slot": "select-scroll-up-button", ...o, children: /* @__PURE__ */ e(p, { className: "size-4" }) }), j = ({ className: t, ...o }) => /* @__PURE__ */ e(S, { className: r("flex cursor-default items-center justify-center py-1", t), "data-slot": "select-scroll-down-button", ...o, children: /* @__PURE__ */ e(l, { className: "size-4" }) });
128
- export {
129
- Mt as Select,
130
- Xt as SelectContent,
131
- Ot as SelectGroup,
132
- Zt as SelectItem,
133
- Yt as SelectLabel,
134
- j as SelectScrollDownButton,
135
- _ as SelectScrollUpButton,
136
- $t as SelectSeparator,
137
- Wt as SelectTrigger,
138
- Qt as SelectValue
139
- };
7
+ import { jsx as y, jsxs as b } from "react/jsx-runtime";
8
+ //#region src/primitives/select.tsx
9
+ var x = ({ ...e }) => /* @__PURE__ */ y(u, {
10
+ "data-slot": "select",
11
+ ...e
12
+ }), S = ({ ...e }) => /* @__PURE__ */ y(f, {
13
+ "data-slot": "select-group",
14
+ ...e
15
+ }), C = ({ ...e }) => /* @__PURE__ */ y(d, {
16
+ "data-slot": "select-value",
17
+ ...e
18
+ }), w = ({ asChild: e, children: n, className: i, size: a = "default", ...o }) => /* @__PURE__ */ b(m, {
19
+ asChild: e,
20
+ className: r("[&_svg:not([class*='text-'])]:text-text-placeholder focus-visible:border-ring focus-visible:ring-ring/50 gap-2 rounded-md px-3 py-2 text-sm shadow-xs h-9 *:data-[slot=select-value]:gap-2 [&_svg:not([class*='size-'])]:size-4 flex w-fit items-center justify-between border border-input-border bg-transparent whitespace-nowrap transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 aria-invalid:ring-danger-400 data-placeholder:text-input-text-placeholder *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center [&_svg]:pointer-events-none [&_svg]:shrink-0", i),
21
+ "data-size": a,
22
+ "data-slot": "select-trigger",
23
+ ...o,
24
+ children: [n, !e && /* @__PURE__ */ y(h, {
25
+ asChild: !0,
26
+ children: /* @__PURE__ */ y(t, { className: "size-4 opacity-50" })
27
+ })]
28
+ }), T = ({ align: e = "center", children: t, className: n, position: i = "popper", ...o }) => /* @__PURE__ */ y(a, { children: /* @__PURE__ */ b(_, {
29
+ align: e,
30
+ className: r("min-w-32 rounded-md shadow-md relative z-50 max-h-[--radix-select-content-available-height] origin-[--radix-select-content-transform-origin] overflow-x-hidden overflow-y-auto border bg-input-bg text-text-primary motion-safe:data-[side=bottom]:slide-in-from-top-2 motion-safe:data-[side=left]:slide-in-from-right-2 motion-safe:data-[side=right]:slide-in-from-left-2 motion-safe:data-[side=top]:slide-in-from-bottom-2 motion-safe:data-[state=closed]:animate-out motion-safe:data-[state=closed]:fade-out-0 motion-safe:data-[state=closed]:zoom-out-95 motion-safe:data-[state=open]:animate-in motion-safe:data-[state=open]:fade-in-0 motion-safe:data-[state=open]:zoom-in-95", i === "popper" && "data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1", n),
31
+ "data-slot": "select-content",
32
+ position: i,
33
+ ...o,
34
+ children: [
35
+ /* @__PURE__ */ y(k, {}),
36
+ /* @__PURE__ */ y(c, {
37
+ className: r("p-1", i === "popper" && "scroll-my-1 h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"),
38
+ "data-slot": "select-viewport",
39
+ children: t
40
+ }),
41
+ /* @__PURE__ */ y(A, {})
42
+ ]
43
+ }) }), E = ({ className: e, ...t }) => /* @__PURE__ */ y(g, {
44
+ className: r("px-2 py-1.5 text-xs text-text-primary", e),
45
+ "data-slot": "select-label",
46
+ ...t
47
+ }), D = ({ className: t, children: n, ...a }) => /* @__PURE__ */ b(l, {
48
+ className: r("gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm [&_svg:not([class*='size-'])]:size-4 *:[span]:last:gap-2 relative flex w-full cursor-default items-center outline-none select-none hover:border-input-border--hover hover:bg-accent hover:text-text-inverted! focus:border-input-border--focus focus:bg-accent focus:text-text-inverted! data-disabled:pointer-events-none data-disabled:opacity-50 data-highlighted:bg-accent data-highlighted:text-text-inverted! [&_svg]:pointer-events-none [&_svg]:shrink-0 hover:[&_svg]:text-text-inverted! focus:[&_svg]:text-text-inverted! data-highlighted:[&_svg]:text-text-inverted! *:[span]:last:flex *:[span]:last:items-center", t),
49
+ "data-slot": "select-item",
50
+ ...a,
51
+ children: [/* @__PURE__ */ y("span", {
52
+ className: "right-2 size-3.5 absolute flex items-center justify-center",
53
+ children: /* @__PURE__ */ y(i, { children: /* @__PURE__ */ y(e, { className: "size-4" }) })
54
+ }), /* @__PURE__ */ y(p, { children: n })]
55
+ }), O = ({ className: e, ...t }) => /* @__PURE__ */ y(s, {
56
+ className: r("bg-border -mx-1 my-1 pointer-events-none h-px", e),
57
+ "data-slot": "select-separator",
58
+ ...t
59
+ }), k = ({ className: e, ...t }) => /* @__PURE__ */ y(o, {
60
+ className: r("py-1 flex cursor-default items-center justify-center", e),
61
+ "data-slot": "select-scroll-up-button",
62
+ ...t,
63
+ children: /* @__PURE__ */ y(n, { className: "size-4" })
64
+ }), A = ({ className: e, ...n }) => /* @__PURE__ */ y(v, {
65
+ className: r("py-1 flex cursor-default items-center justify-center", e),
66
+ "data-slot": "select-scroll-down-button",
67
+ ...n,
68
+ children: /* @__PURE__ */ y(t, { className: "size-4" })
69
+ });
70
+ //#endregion
71
+ export { x as Select, T as SelectContent, S as SelectGroup, D as SelectItem, E as SelectLabel, A as SelectScrollDownButton, k as SelectScrollUpButton, O as SelectSeparator, w as SelectTrigger, C as SelectValue };
@@ -1,33 +1,34 @@
1
1
  "use client";
2
- import { jsx as m, Fragment as d } from "react/jsx-runtime";
3
- import { isValidElement as p, cloneElement as h } from "react";
4
- const N = (c, n, { checkForDefaultPrevented: e = !0 } = {}) => (t) => {
5
- c?.(t), (!e || !t.defaultPrevented) && n?.(t);
6
- }, E = (...c) => (n) => {
7
- for (const e of c)
8
- e && (typeof e == "function" ? e(n) : typeof e == "object" && "current" in e && (e.current = n));
9
- }, j = (c) => /* @__PURE__ */ m(d, { children: c.children }), S = function({
10
- children: n,
11
- ref: e,
12
- ...t
13
- }) {
14
- if (!p(n))
15
- return n == null ? null : /* @__PURE__ */ m("span", { ...t, ref: e });
16
- const r = n, i = r.props ?? {}, s = { ...i, ...t };
17
- for (const [o, f] of Object.entries(t))
18
- if (o.startsWith("on") && typeof f == "function") {
19
- const u = i[o];
20
- typeof u == "function" ? s[o] = N(u, f) : s[o] = f;
21
- }
22
- const l = i.className || "";
23
- l && t.className && (s.className = `${l} ${t.className}`);
24
- const a = i.style;
25
- a && t.style && (s.style = { ...a, ...t.style });
26
- const y = r.ref;
27
- return s.ref = E(y, e), h(r, s);
28
- };
29
- S.displayName = "Slot";
30
- export {
31
- S as Slot,
32
- j as Slottable
2
+ import { cloneElement as e, isValidElement as t } from "react";
3
+ import { Fragment as n, jsx as r } from "react/jsx-runtime";
4
+ //#region src/primitives/slot.tsx
5
+ var i = (e, t, { checkForDefaultPrevented: n = !0 } = {}) => (r) => {
6
+ e?.(r), (!n || !r.defaultPrevented) && t?.(r);
7
+ }, a = (...e) => (t) => {
8
+ for (let n of e) n && (typeof n == "function" ? n(t) : typeof n == "object" && "current" in n && (n.current = t));
9
+ }, o = (e) => /* @__PURE__ */ r(n, { children: e.children }), s = function({ children: n, ref: o, ...s }) {
10
+ if (!t(n)) return n == null ? null : /* @__PURE__ */ r("span", {
11
+ ...s,
12
+ ref: o
13
+ });
14
+ let c = n, l = c.props ?? {}, u = {
15
+ ...l,
16
+ ...s
17
+ };
18
+ for (let [e, t] of Object.entries(s)) if (e.startsWith("on") && typeof t == "function") {
19
+ let n = l[e];
20
+ typeof n == "function" ? u[e] = i(n, t) : u[e] = t;
21
+ }
22
+ let d = l.className || "";
23
+ d && s.className && (u.className = `${d} ${s.className}`);
24
+ let f = l.style;
25
+ f && s.style && (u.style = {
26
+ ...f,
27
+ ...s.style
28
+ });
29
+ let p = c.ref;
30
+ return u.ref = a(p, o), e(c, u);
33
31
  };
32
+ s.displayName = "Slot";
33
+ //#endregion
34
+ export { s as Slot, o as Slottable };