@spear-ai/spectral 1.9.1 → 1.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (241) hide show
  1. package/README.md +6 -5
  2. package/dist/.js +113 -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/InputNumeric.d.ts +14 -0
  128. package/dist/InputNumeric.js +137 -0
  129. package/dist/InputOTP-cVn5Bzyp.js +461 -0
  130. package/dist/InputOTP.js +2 -382
  131. package/dist/Kbd.d.ts +1 -1
  132. package/dist/Kbd.js +182 -86
  133. package/dist/Label.js +12 -14
  134. package/dist/MultiSelect/MultiSelectBase.js +331 -403
  135. package/dist/MultiSelect.d.ts +1 -1
  136. package/dist/MultiSelect.js +23 -23
  137. package/dist/Popover.js +28 -32
  138. package/dist/RadioButton.d.ts +17 -0
  139. package/dist/RadioButton.js +33 -0
  140. package/dist/RadioButtonGroup/RadioButtonGroupBase.d.ts +3 -1
  141. package/dist/RadioButtonGroup/RadioButtonGroupBase.js +49 -46
  142. package/dist/RadioButtonGroup.d.ts +1 -1
  143. package/dist/RadioButtonGroup.js +11 -8
  144. package/dist/RadioGroup-w_q6RGEK.js +447 -0
  145. package/dist/RadioGroup.js +2 -505
  146. package/dist/Select.js +163 -186
  147. package/dist/Separator.js +16 -19
  148. package/dist/Skeleton.js +10 -6
  149. package/dist/Slider-BzzZT3Zm.js +490 -0
  150. package/dist/Slider.js +2 -562
  151. package/dist/SpectralProvider.js +8 -5
  152. package/dist/Switch/SwitchBase.js +91 -95
  153. package/dist/Switch-CVzRJ-0n.js +126 -0
  154. package/dist/Switch.d.ts +1 -1
  155. package/dist/Switch.js +2 -134
  156. package/dist/Tabs/TabsBase.js +242 -250
  157. package/dist/Tabs/tabsUtils.js +65 -73
  158. package/dist/Tabs.d.ts +1 -1
  159. package/dist/Tabs.js +73 -103
  160. package/dist/Textarea/TextareaUtils.js +35 -46
  161. package/dist/Textarea.js +83 -160
  162. package/dist/Toast-9zqXxKKO.js +711 -0
  163. package/dist/Toast.js +2 -885
  164. package/dist/Toggle/ToggleBase.js +46 -56
  165. package/dist/Toggle.d.ts +1 -1
  166. package/dist/Toggle.js +52 -62
  167. package/dist/ToggleGroup/ToggleGroupBase.js +128 -104
  168. package/dist/ToggleGroup.d.ts +1 -1
  169. package/dist/ToggleGroup.js +52 -63
  170. package/dist/Tooltip-D1K8kY1y.js +389 -0
  171. package/dist/Tooltip.js +2 -365
  172. package/dist/Tray.js +174 -217
  173. package/dist/chunk-h9knIhTc.js +20 -0
  174. package/dist/clsx-jM1GlMvB.js +16 -0
  175. package/dist/dist-3Af8168y.js +913 -0
  176. package/dist/dist-7HRQ5IKN.js +249 -0
  177. package/dist/dist-B2k1iWFp.js +129 -0
  178. package/dist/dist-B4FgboI8.js +122 -0
  179. package/dist/dist-B4g6zpUF.js +33 -0
  180. package/dist/dist-B9tup-4O.js +216 -0
  181. package/dist/dist-BK1K0g9W.js +29 -0
  182. package/dist/dist-Bfjk-jx9.js +28 -0
  183. package/dist/dist-Bft31cJh.js +65 -0
  184. package/dist/dist-BtdmHAzK.js +190 -0
  185. package/dist/dist-C0Hifjgh.js +1287 -0
  186. package/dist/dist-CGzgmYB9.js +68 -0
  187. package/dist/dist-ClmepHp4.js +10 -0
  188. package/dist/dist-D8Wb_MX9.js +6 -0
  189. package/dist/dist-Dtvmk11N.js +12 -0
  190. package/dist/dist-fW81qjVl.js +677 -0
  191. package/dist/dist-s1uWaZYZ.js +11 -0
  192. package/dist/es2015-YHaMV-St.js +701 -0
  193. package/dist/hooks/useAccordionAutoScroll.js +66 -67
  194. package/dist/hooks/useControllableState.js +14 -13
  195. package/dist/hooks/useConvertToOklch.d.ts +3 -0
  196. package/dist/hooks/useConvertToOklch.d.ts.map +1 -0
  197. package/dist/hooks/useConvertToOklch.js +51 -0
  198. package/dist/hooks/useTheme.js +21 -17
  199. package/dist/index.d.ts +3 -1
  200. package/dist/index.d.ts.map +1 -1
  201. package/dist/main.js +18954 -27224
  202. package/dist/primitives/button.js +39 -41
  203. package/dist/primitives/input-group.js +57 -73
  204. package/dist/primitives/input.js +11 -20
  205. package/dist/primitives/popover.js +34 -28
  206. package/dist/primitives/select.js +70 -138
  207. package/dist/primitives/slot.js +32 -31
  208. package/dist/primitives/textarea.js +10 -16
  209. package/dist/proxy-Dn10Pl_g.js +4920 -0
  210. package/dist/styles/main.css +2 -1
  211. package/dist/styles/spectral.css +1 -1
  212. package/dist/twUtils-VNWgstKL.js +1673 -0
  213. package/dist/use-animation-CBUDycyW.js +57 -0
  214. package/dist/utils/constants.js +4 -4
  215. package/dist/utils/formFieldUtils.js +136 -148
  216. package/dist/utils/sharedUtils.js +26 -7
  217. package/dist/utils/twUtils.js +2 -2919
  218. package/package.json +24 -28
  219. package/dist/ComboboxBase-CxNxYtdT.js +0 -408
  220. package/dist/clsx-OuTLNxxd.js +0 -16
  221. package/dist/index-0ioNhtNM.js +0 -10
  222. package/dist/index-6oYKCvIn.js +0 -677
  223. package/dist/index-BFOf48AQ.js +0 -69
  224. package/dist/index-BZPx6jYI.js +0 -8
  225. package/dist/index-BlHU_t18.js +0 -142
  226. package/dist/index-Bm1RbF6w.js +0 -1037
  227. package/dist/index-Bv2OIg5P.js +0 -225
  228. package/dist/index-CKEI0pDv.js +0 -56
  229. package/dist/index-CM_hWgfC.js +0 -32
  230. package/dist/index-C_YVr64u.js +0 -1538
  231. package/dist/index-Cl8VeY0o.js +0 -149
  232. package/dist/index-CwSyIPrv.js +0 -13
  233. package/dist/index-D29mdTf5.js +0 -34
  234. package/dist/index-DEYs15GP.js +0 -66
  235. package/dist/index-Dc0No4pV.js +0 -233
  236. package/dist/index-T6XEa11q.js +0 -822
  237. package/dist/index-pBCLb6Gr.js +0 -240
  238. package/dist/index-psiVrsnE.js +0 -27
  239. package/dist/index-rKs9bXHr.js +0 -6
  240. package/dist/proxy-CO_-Vget.js +0 -4975
  241. 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 };