@aigentyc/chat-sdk 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (162) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +156 -0
  3. package/dist/JsonRenderResult-Ftw4AKwb.d.cts +18 -0
  4. package/dist/JsonRenderResult-Ftw4AKwb.d.ts +18 -0
  5. package/dist/JsonRenderResult-GQOYPLVH.cjs +15 -0
  6. package/dist/JsonRenderResult-GQOYPLVH.cjs.map +1 -0
  7. package/dist/JsonRenderResult-ZFJ6VWMS.js +6 -0
  8. package/dist/JsonRenderResult-ZFJ6VWMS.js.map +1 -0
  9. package/dist/SlotsContext-CBtt36al.d.ts +148 -0
  10. package/dist/SlotsContext-CHvISDJT.d.cts +148 -0
  11. package/dist/VisualizationRenderer-FNFYNN66.js +5 -0
  12. package/dist/VisualizationRenderer-FNFYNN66.js.map +1 -0
  13. package/dist/VisualizationRenderer-VKMZXRUX.cjs +20 -0
  14. package/dist/VisualizationRenderer-VKMZXRUX.cjs.map +1 -0
  15. package/dist/ai-elements.cjs +4608 -0
  16. package/dist/ai-elements.cjs.map +1 -0
  17. package/dist/ai-elements.d.cts +897 -0
  18. package/dist/ai-elements.d.ts +897 -0
  19. package/dist/ai-elements.js +4363 -0
  20. package/dist/ai-elements.js.map +1 -0
  21. package/dist/chunk-3MP2EGEJ.cjs +270 -0
  22. package/dist/chunk-3MP2EGEJ.cjs.map +1 -0
  23. package/dist/chunk-3RW7O444.js +26 -0
  24. package/dist/chunk-3RW7O444.js.map +1 -0
  25. package/dist/chunk-42ARGQXE.js +51 -0
  26. package/dist/chunk-42ARGQXE.js.map +1 -0
  27. package/dist/chunk-4FBVV64J.js +257 -0
  28. package/dist/chunk-4FBVV64J.js.map +1 -0
  29. package/dist/chunk-4QT25AXI.js +21 -0
  30. package/dist/chunk-4QT25AXI.js.map +1 -0
  31. package/dist/chunk-525KS5HM.cjs +30 -0
  32. package/dist/chunk-525KS5HM.cjs.map +1 -0
  33. package/dist/chunk-5F3O3ZJH.js +299 -0
  34. package/dist/chunk-5F3O3ZJH.js.map +1 -0
  35. package/dist/chunk-5QSXB6UL.cjs +259 -0
  36. package/dist/chunk-5QSXB6UL.cjs.map +1 -0
  37. package/dist/chunk-5T4FJ2SR.js +664 -0
  38. package/dist/chunk-5T4FJ2SR.js.map +1 -0
  39. package/dist/chunk-7BNYTOTE.cjs +67 -0
  40. package/dist/chunk-7BNYTOTE.cjs.map +1 -0
  41. package/dist/chunk-AWAJOSFP.cjs +96 -0
  42. package/dist/chunk-AWAJOSFP.cjs.map +1 -0
  43. package/dist/chunk-BKDV2H6Z.js +224 -0
  44. package/dist/chunk-BKDV2H6Z.js.map +1 -0
  45. package/dist/chunk-FQN6OBGN.cjs +171 -0
  46. package/dist/chunk-FQN6OBGN.cjs.map +1 -0
  47. package/dist/chunk-FYPJSHCL.js +190 -0
  48. package/dist/chunk-FYPJSHCL.js.map +1 -0
  49. package/dist/chunk-J2H6MLQF.cjs +680 -0
  50. package/dist/chunk-J2H6MLQF.cjs.map +1 -0
  51. package/dist/chunk-J2K7EJYP.cjs +198 -0
  52. package/dist/chunk-J2K7EJYP.cjs.map +1 -0
  53. package/dist/chunk-JI5KCSOI.cjs +23 -0
  54. package/dist/chunk-JI5KCSOI.cjs.map +1 -0
  55. package/dist/chunk-JOO6C3XT.cjs +44 -0
  56. package/dist/chunk-JOO6C3XT.cjs.map +1 -0
  57. package/dist/chunk-KBGPBUTI.cjs +78 -0
  58. package/dist/chunk-KBGPBUTI.cjs.map +1 -0
  59. package/dist/chunk-MT2AMINB.js +75 -0
  60. package/dist/chunk-MT2AMINB.js.map +1 -0
  61. package/dist/chunk-MZQKGNWF.js +4 -0
  62. package/dist/chunk-MZQKGNWF.js.map +1 -0
  63. package/dist/chunk-NG7OTWXQ.cjs +226 -0
  64. package/dist/chunk-NG7OTWXQ.cjs.map +1 -0
  65. package/dist/chunk-NPJKLYLV.js +68 -0
  66. package/dist/chunk-NPJKLYLV.js.map +1 -0
  67. package/dist/chunk-NW2ESHRV.js +685 -0
  68. package/dist/chunk-NW2ESHRV.js.map +1 -0
  69. package/dist/chunk-NWF735F5.js +1631 -0
  70. package/dist/chunk-NWF735F5.js.map +1 -0
  71. package/dist/chunk-NYQSM3EB.cjs +305 -0
  72. package/dist/chunk-NYQSM3EB.cjs.map +1 -0
  73. package/dist/chunk-OU7OROOE.cjs +1643 -0
  74. package/dist/chunk-OU7OROOE.cjs.map +1 -0
  75. package/dist/chunk-PS3U7T37.js +42 -0
  76. package/dist/chunk-PS3U7T37.js.map +1 -0
  77. package/dist/chunk-Q7T3VAJV.cjs +687 -0
  78. package/dist/chunk-Q7T3VAJV.cjs.map +1 -0
  79. package/dist/chunk-QYCEHFAB.js +265 -0
  80. package/dist/chunk-QYCEHFAB.js.map +1 -0
  81. package/dist/chunk-RPDJXB3U.js +676 -0
  82. package/dist/chunk-RPDJXB3U.js.map +1 -0
  83. package/dist/chunk-UKEL7FWS.js +64 -0
  84. package/dist/chunk-UKEL7FWS.js.map +1 -0
  85. package/dist/chunk-VS3NZ7FX.js +164 -0
  86. package/dist/chunk-VS3NZ7FX.js.map +1 -0
  87. package/dist/chunk-WZLWAVSS.cjs +73 -0
  88. package/dist/chunk-WZLWAVSS.cjs.map +1 -0
  89. package/dist/chunk-X5YEOOPK.cjs +758 -0
  90. package/dist/chunk-X5YEOOPK.cjs.map +1 -0
  91. package/dist/chunk-X7R334SB.cjs +5 -0
  92. package/dist/chunk-X7R334SB.cjs.map +1 -0
  93. package/dist/chunk-XXNDL5SJ.cjs +432 -0
  94. package/dist/chunk-XXNDL5SJ.cjs.map +1 -0
  95. package/dist/chunk-YQELMJW5.js +429 -0
  96. package/dist/chunk-YQELMJW5.js.map +1 -0
  97. package/dist/components.cjs +551 -0
  98. package/dist/components.cjs.map +1 -0
  99. package/dist/components.d.cts +181 -0
  100. package/dist/components.d.ts +181 -0
  101. package/dist/components.js +483 -0
  102. package/dist/components.js.map +1 -0
  103. package/dist/core.cjs +283 -0
  104. package/dist/core.cjs.map +1 -0
  105. package/dist/core.d.cts +455 -0
  106. package/dist/core.d.ts +455 -0
  107. package/dist/core.js +241 -0
  108. package/dist/core.js.map +1 -0
  109. package/dist/hooks.cjs +324 -0
  110. package/dist/hooks.cjs.map +1 -0
  111. package/dist/hooks.d.cts +163 -0
  112. package/dist/hooks.d.ts +163 -0
  113. package/dist/hooks.js +277 -0
  114. package/dist/hooks.js.map +1 -0
  115. package/dist/i18n.cjs +26 -0
  116. package/dist/i18n.cjs.map +1 -0
  117. package/dist/i18n.d.cts +50 -0
  118. package/dist/i18n.d.ts +50 -0
  119. package/dist/i18n.js +5 -0
  120. package/dist/i18n.js.map +1 -0
  121. package/dist/index.cjs +466 -0
  122. package/dist/index.cjs.map +1 -0
  123. package/dist/index.d.cts +80 -0
  124. package/dist/index.d.ts +80 -0
  125. package/dist/index.js +438 -0
  126. package/dist/index.js.map +1 -0
  127. package/dist/interaction-tracker-D9P1Oq4j.d.cts +83 -0
  128. package/dist/interaction-tracker-D9P1Oq4j.d.ts +83 -0
  129. package/dist/json-render.cjs +23 -0
  130. package/dist/json-render.cjs.map +1 -0
  131. package/dist/json-render.d.cts +857 -0
  132. package/dist/json-render.d.ts +857 -0
  133. package/dist/json-render.js +6 -0
  134. package/dist/json-render.js.map +1 -0
  135. package/dist/live-chat-transport-4XLOIPOE.js +4 -0
  136. package/dist/live-chat-transport-4XLOIPOE.js.map +1 -0
  137. package/dist/live-chat-transport-ALVRGWX7.cjs +13 -0
  138. package/dist/live-chat-transport-ALVRGWX7.cjs.map +1 -0
  139. package/dist/select-B4l9yoyn.d.cts +99 -0
  140. package/dist/select-B4l9yoyn.d.ts +99 -0
  141. package/dist/styles.css +2 -0
  142. package/dist/theme.cjs +18 -0
  143. package/dist/theme.cjs.map +1 -0
  144. package/dist/theme.d.cts +55 -0
  145. package/dist/theme.d.ts +55 -0
  146. package/dist/theme.js +5 -0
  147. package/dist/theme.js.map +1 -0
  148. package/dist/tools.cjs +32 -0
  149. package/dist/tools.cjs.map +1 -0
  150. package/dist/tools.d.cts +117 -0
  151. package/dist/tools.d.ts +117 -0
  152. package/dist/tools.js +11 -0
  153. package/dist/tools.js.map +1 -0
  154. package/dist/types-DKJ_-nbG.d.cts +349 -0
  155. package/dist/types-DKJ_-nbG.d.ts +349 -0
  156. package/dist/ui.cjs +667 -0
  157. package/dist/ui.cjs.map +1 -0
  158. package/dist/ui.d.cts +95 -0
  159. package/dist/ui.d.ts +95 -0
  160. package/dist/ui.js +414 -0
  161. package/dist/ui.js.map +1 -0
  162. package/package.json +255 -0
@@ -0,0 +1,685 @@
1
+ "use client";
2
+ import { Button } from './chunk-42ARGQXE.js';
3
+ import { cn } from './chunk-3RW7O444.js';
4
+ import * as React5 from 'react';
5
+ import * as SeparatorPrimitive from '@radix-ui/react-separator';
6
+ import { jsx, jsxs } from 'react/jsx-runtime';
7
+ import * as TooltipPrimitive from '@radix-ui/react-tooltip';
8
+ import * as CollapsiblePrimitive from '@radix-ui/react-collapsible';
9
+ import { cva } from 'class-variance-authority';
10
+ import useEmblaCarousel from 'embla-carousel-react';
11
+ import { ArrowLeft, ArrowRight, X, ChevronRight, Check, Circle, ChevronDown, ChevronUp } from 'lucide-react';
12
+ import * as ScrollAreaPrimitive from '@radix-ui/react-scroll-area';
13
+ import * as ProgressPrimitive from '@radix-ui/react-progress';
14
+ import * as DialogPrimitive from '@radix-ui/react-dialog';
15
+ import * as DropdownMenuPrimitive from '@radix-ui/react-dropdown-menu';
16
+ import * as SelectPrimitive from '@radix-ui/react-select';
17
+
18
+ var Separator = React5.forwardRef(
19
+ ({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx(
20
+ SeparatorPrimitive.Root,
21
+ {
22
+ ref,
23
+ decorative,
24
+ orientation,
25
+ className: cn(
26
+ "shrink-0 bg-border",
27
+ orientation === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
28
+ className
29
+ ),
30
+ ...props
31
+ }
32
+ )
33
+ );
34
+ Separator.displayName = SeparatorPrimitive.Root.displayName;
35
+ var TooltipProvider = TooltipPrimitive.Provider;
36
+ var Tooltip = TooltipPrimitive.Root;
37
+ var TooltipTrigger = TooltipPrimitive.Trigger;
38
+ var TooltipContent = React5.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(TooltipPrimitive.Portal, { children: /* @__PURE__ */ jsx(
39
+ TooltipPrimitive.Content,
40
+ {
41
+ ref,
42
+ sideOffset,
43
+ className: cn(
44
+ "z-50 overflow-hidden rounded-md bg-primary px-3 py-1.5 text-xs text-primary-foreground animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-tooltip-content-transform-origin]",
45
+ className
46
+ ),
47
+ ...props
48
+ }
49
+ ) }));
50
+ TooltipContent.displayName = TooltipPrimitive.Content.displayName;
51
+ var Textarea = React5.forwardRef(({ className, ...props }, ref) => {
52
+ return /* @__PURE__ */ jsx(
53
+ "textarea",
54
+ {
55
+ className: cn(
56
+ "flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
57
+ className
58
+ ),
59
+ ref,
60
+ ...props
61
+ }
62
+ );
63
+ });
64
+ Textarea.displayName = "Textarea";
65
+ var Collapsible = CollapsiblePrimitive.Root;
66
+ var CollapsibleTrigger2 = CollapsiblePrimitive.CollapsibleTrigger;
67
+ var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
68
+ var Input = React5.forwardRef(
69
+ ({ className, type, ...props }, ref) => {
70
+ return /* @__PURE__ */ jsx(
71
+ "input",
72
+ {
73
+ type,
74
+ className: cn(
75
+ "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-base shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",
76
+ className
77
+ ),
78
+ ref,
79
+ ...props
80
+ }
81
+ );
82
+ }
83
+ );
84
+ Input.displayName = "Input";
85
+ var badgeVariants = cva(
86
+ "inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
87
+ {
88
+ variants: {
89
+ variant: {
90
+ default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
91
+ secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
92
+ destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
93
+ outline: "text-foreground"
94
+ }
95
+ },
96
+ defaultVariants: {
97
+ variant: "default"
98
+ }
99
+ }
100
+ );
101
+ function Badge({ className, variant, ...props }) {
102
+ return /* @__PURE__ */ jsx("div", { className: cn(badgeVariants({ variant }), className), ...props });
103
+ }
104
+ var CarouselContext = React5.createContext(null);
105
+ function useCarousel() {
106
+ const context = React5.useContext(CarouselContext);
107
+ if (!context) {
108
+ throw new Error("useCarousel must be used within a <Carousel />");
109
+ }
110
+ return context;
111
+ }
112
+ var Carousel = React5.forwardRef(
113
+ ({
114
+ orientation = "horizontal",
115
+ opts,
116
+ setApi,
117
+ plugins,
118
+ className,
119
+ children,
120
+ ...props
121
+ }, ref) => {
122
+ const [carouselRef, api] = useEmblaCarousel(
123
+ {
124
+ ...opts,
125
+ axis: orientation === "horizontal" ? "x" : "y"
126
+ },
127
+ plugins
128
+ );
129
+ const [canScrollPrev, setCanScrollPrev] = React5.useState(false);
130
+ const [canScrollNext, setCanScrollNext] = React5.useState(false);
131
+ const onSelect = React5.useCallback((api2) => {
132
+ if (!api2) {
133
+ return;
134
+ }
135
+ setCanScrollPrev(api2.canScrollPrev());
136
+ setCanScrollNext(api2.canScrollNext());
137
+ }, []);
138
+ const scrollPrev = React5.useCallback(() => {
139
+ api?.scrollPrev();
140
+ }, [api]);
141
+ const scrollNext = React5.useCallback(() => {
142
+ api?.scrollNext();
143
+ }, [api]);
144
+ const handleKeyDown = React5.useCallback(
145
+ (event) => {
146
+ if (event.key === "ArrowLeft") {
147
+ event.preventDefault();
148
+ scrollPrev();
149
+ } else if (event.key === "ArrowRight") {
150
+ event.preventDefault();
151
+ scrollNext();
152
+ }
153
+ },
154
+ [scrollPrev, scrollNext]
155
+ );
156
+ React5.useEffect(() => {
157
+ if (!api || !setApi) {
158
+ return;
159
+ }
160
+ setApi(api);
161
+ }, [api, setApi]);
162
+ React5.useEffect(() => {
163
+ if (!api) {
164
+ return;
165
+ }
166
+ onSelect(api);
167
+ api.on("reInit", onSelect);
168
+ api.on("select", onSelect);
169
+ return () => {
170
+ api?.off("select", onSelect);
171
+ };
172
+ }, [api, onSelect]);
173
+ return /* @__PURE__ */ jsx(
174
+ CarouselContext.Provider,
175
+ {
176
+ value: {
177
+ carouselRef,
178
+ api,
179
+ opts,
180
+ orientation: orientation || (opts?.axis === "y" ? "vertical" : "horizontal"),
181
+ scrollPrev,
182
+ scrollNext,
183
+ canScrollPrev,
184
+ canScrollNext
185
+ },
186
+ children: /* @__PURE__ */ jsx(
187
+ "div",
188
+ {
189
+ ref,
190
+ onKeyDownCapture: handleKeyDown,
191
+ className: cn("relative", className),
192
+ role: "region",
193
+ "aria-roledescription": "carousel",
194
+ ...props,
195
+ children
196
+ }
197
+ )
198
+ }
199
+ );
200
+ }
201
+ );
202
+ Carousel.displayName = "Carousel";
203
+ var CarouselContent = React5.forwardRef(({ className, ...props }, ref) => {
204
+ const { carouselRef, orientation } = useCarousel();
205
+ return /* @__PURE__ */ jsx("div", { ref: carouselRef, className: "overflow-hidden", children: /* @__PURE__ */ jsx(
206
+ "div",
207
+ {
208
+ ref,
209
+ className: cn(
210
+ "flex",
211
+ orientation === "horizontal" ? "-ml-4" : "-mt-4 flex-col",
212
+ className
213
+ ),
214
+ ...props
215
+ }
216
+ ) });
217
+ });
218
+ CarouselContent.displayName = "CarouselContent";
219
+ var CarouselItem = React5.forwardRef(({ className, ...props }, ref) => {
220
+ const { orientation } = useCarousel();
221
+ return /* @__PURE__ */ jsx(
222
+ "div",
223
+ {
224
+ ref,
225
+ role: "group",
226
+ "aria-roledescription": "slide",
227
+ className: cn(
228
+ "min-w-0 shrink-0 grow-0 basis-full",
229
+ orientation === "horizontal" ? "pl-4" : "pt-4",
230
+ className
231
+ ),
232
+ ...props
233
+ }
234
+ );
235
+ });
236
+ CarouselItem.displayName = "CarouselItem";
237
+ var CarouselPrevious = React5.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
238
+ const { orientation, scrollPrev, canScrollPrev } = useCarousel();
239
+ return /* @__PURE__ */ jsxs(
240
+ Button,
241
+ {
242
+ ref,
243
+ variant,
244
+ size,
245
+ className: cn(
246
+ "absolute h-8 w-8 rounded-full",
247
+ orientation === "horizontal" ? "-left-12 top-1/2 -translate-y-1/2" : "-top-12 left-1/2 -translate-x-1/2 rotate-90",
248
+ className
249
+ ),
250
+ disabled: !canScrollPrev,
251
+ onClick: scrollPrev,
252
+ ...props,
253
+ children: [
254
+ /* @__PURE__ */ jsx(ArrowLeft, { className: "h-4 w-4" }),
255
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Previous slide" })
256
+ ]
257
+ }
258
+ );
259
+ });
260
+ CarouselPrevious.displayName = "CarouselPrevious";
261
+ var CarouselNext = React5.forwardRef(({ className, variant = "outline", size = "icon", ...props }, ref) => {
262
+ const { orientation, scrollNext, canScrollNext } = useCarousel();
263
+ return /* @__PURE__ */ jsxs(
264
+ Button,
265
+ {
266
+ ref,
267
+ variant,
268
+ size,
269
+ className: cn(
270
+ "absolute h-8 w-8 rounded-full",
271
+ orientation === "horizontal" ? "-right-12 top-1/2 -translate-y-1/2" : "-bottom-12 left-1/2 -translate-x-1/2 rotate-90",
272
+ className
273
+ ),
274
+ disabled: !canScrollNext,
275
+ onClick: scrollNext,
276
+ ...props,
277
+ children: [
278
+ /* @__PURE__ */ jsx(ArrowRight, { className: "h-4 w-4" }),
279
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Next slide" })
280
+ ]
281
+ }
282
+ );
283
+ });
284
+ CarouselNext.displayName = "CarouselNext";
285
+ var ScrollArea = React5.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
286
+ ScrollAreaPrimitive.Root,
287
+ {
288
+ ref,
289
+ className: cn("relative overflow-hidden", className),
290
+ ...props,
291
+ children: [
292
+ /* @__PURE__ */ jsx(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children }),
293
+ /* @__PURE__ */ jsx(ScrollBar, {}),
294
+ /* @__PURE__ */ jsx(ScrollAreaPrimitive.Corner, {})
295
+ ]
296
+ }
297
+ ));
298
+ ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
299
+ var ScrollBar = React5.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx(
300
+ ScrollAreaPrimitive.ScrollAreaScrollbar,
301
+ {
302
+ ref,
303
+ orientation,
304
+ className: cn(
305
+ "flex touch-none select-none transition-colors",
306
+ orientation === "vertical" && "h-full w-2.5 border-l border-l-transparent p-[1px]",
307
+ orientation === "horizontal" && "h-2.5 flex-col border-t border-t-transparent p-[1px]",
308
+ className
309
+ ),
310
+ ...props,
311
+ children: /* @__PURE__ */ jsx(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
312
+ }
313
+ ));
314
+ ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
315
+ var Progress = React5.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsx(
316
+ ProgressPrimitive.Root,
317
+ {
318
+ ref,
319
+ className: cn(
320
+ "relative h-2 w-full overflow-hidden rounded-full bg-primary/20",
321
+ className
322
+ ),
323
+ ...props,
324
+ children: /* @__PURE__ */ jsx(
325
+ ProgressPrimitive.Indicator,
326
+ {
327
+ className: "h-full w-full flex-1 bg-primary transition-all",
328
+ style: { transform: `translateX(-${100 - (value || 0)}%)` }
329
+ }
330
+ )
331
+ }
332
+ ));
333
+ Progress.displayName = ProgressPrimitive.Root.displayName;
334
+ var alertVariants = cva(
335
+ "relative w-full rounded-lg border px-4 py-3 text-sm [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground [&>svg~*]:pl-7",
336
+ {
337
+ variants: {
338
+ variant: {
339
+ default: "bg-background text-foreground",
340
+ destructive: "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive"
341
+ }
342
+ },
343
+ defaultVariants: {
344
+ variant: "default"
345
+ }
346
+ }
347
+ );
348
+ var Alert = React5.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx(
349
+ "div",
350
+ {
351
+ ref,
352
+ role: "alert",
353
+ className: cn(alertVariants({ variant }), className),
354
+ ...props
355
+ }
356
+ ));
357
+ Alert.displayName = "Alert";
358
+ var AlertTitle = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
359
+ "h5",
360
+ {
361
+ ref,
362
+ className: cn("mb-1 font-medium leading-none tracking-tight", className),
363
+ ...props
364
+ }
365
+ ));
366
+ AlertTitle.displayName = "AlertTitle";
367
+ var AlertDescription = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
368
+ "div",
369
+ {
370
+ ref,
371
+ className: cn("text-sm [&_p]:leading-relaxed", className),
372
+ ...props
373
+ }
374
+ ));
375
+ AlertDescription.displayName = "AlertDescription";
376
+ var Dialog = DialogPrimitive.Root;
377
+ var DialogTrigger = DialogPrimitive.Trigger;
378
+ var DialogPortal = DialogPrimitive.Portal;
379
+ var DialogClose = DialogPrimitive.Close;
380
+ var DialogOverlay = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
381
+ DialogPrimitive.Overlay,
382
+ {
383
+ ref,
384
+ className: cn(
385
+ "fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
386
+ className
387
+ ),
388
+ ...props
389
+ }
390
+ ));
391
+ DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
392
+ var DialogContent = React5.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DialogPortal, { children: [
393
+ /* @__PURE__ */ jsx(DialogOverlay, {}),
394
+ /* @__PURE__ */ jsxs(
395
+ DialogPrimitive.Content,
396
+ {
397
+ ref,
398
+ className: cn(
399
+ "fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",
400
+ className
401
+ ),
402
+ ...props,
403
+ children: [
404
+ children,
405
+ /* @__PURE__ */ jsxs(DialogPrimitive.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
406
+ /* @__PURE__ */ jsx(X, { className: "h-4 w-4" }),
407
+ /* @__PURE__ */ jsx("span", { className: "sr-only", children: "Close" })
408
+ ] })
409
+ ]
410
+ }
411
+ )
412
+ ] }));
413
+ DialogContent.displayName = DialogPrimitive.Content.displayName;
414
+ var DialogHeader = ({
415
+ className,
416
+ ...props
417
+ }) => /* @__PURE__ */ jsx(
418
+ "div",
419
+ {
420
+ className: cn(
421
+ "flex flex-col space-y-1.5 text-center sm:text-start",
422
+ className
423
+ ),
424
+ ...props
425
+ }
426
+ );
427
+ DialogHeader.displayName = "DialogHeader";
428
+ var DialogFooter = ({
429
+ className,
430
+ ...props
431
+ }) => /* @__PURE__ */ jsx(
432
+ "div",
433
+ {
434
+ className: cn(
435
+ "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
436
+ className
437
+ ),
438
+ ...props
439
+ }
440
+ );
441
+ DialogFooter.displayName = "DialogFooter";
442
+ var DialogTitle = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
443
+ DialogPrimitive.Title,
444
+ {
445
+ ref,
446
+ className: cn(
447
+ "text-lg font-semibold leading-none tracking-tight",
448
+ className
449
+ ),
450
+ ...props
451
+ }
452
+ ));
453
+ DialogTitle.displayName = DialogPrimitive.Title.displayName;
454
+ var DialogDescription = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
455
+ DialogPrimitive.Description,
456
+ {
457
+ ref,
458
+ className: cn("text-sm text-muted-foreground", className),
459
+ ...props
460
+ }
461
+ ));
462
+ DialogDescription.displayName = DialogPrimitive.Description.displayName;
463
+ var DropdownMenu = DropdownMenuPrimitive.Root;
464
+ var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
465
+ var DropdownMenuSubTrigger = React5.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs(
466
+ DropdownMenuPrimitive.SubTrigger,
467
+ {
468
+ ref,
469
+ className: cn(
470
+ "flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
471
+ inset && "pl-8",
472
+ className
473
+ ),
474
+ ...props,
475
+ children: [
476
+ children,
477
+ /* @__PURE__ */ jsx(ChevronRight, { className: "ml-auto" })
478
+ ]
479
+ }
480
+ ));
481
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
482
+ var DropdownMenuSubContent = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
483
+ DropdownMenuPrimitive.SubContent,
484
+ {
485
+ ref,
486
+ className: cn(
487
+ "z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-dropdown-menu-content-transform-origin]",
488
+ className
489
+ ),
490
+ ...props
491
+ }
492
+ ));
493
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
494
+ var DropdownMenuContent = React5.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx(
495
+ DropdownMenuPrimitive.Content,
496
+ {
497
+ ref,
498
+ sideOffset,
499
+ className: cn(
500
+ "z-50 max-h-[var(--radix-dropdown-menu-content-available-height)] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",
501
+ "data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-dropdown-menu-content-transform-origin]",
502
+ className
503
+ ),
504
+ ...props
505
+ }
506
+ ) }));
507
+ DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
508
+ var DropdownMenuItem = React5.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
509
+ DropdownMenuPrimitive.Item,
510
+ {
511
+ ref,
512
+ className: cn(
513
+ "relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&>svg]:size-4 [&>svg]:shrink-0",
514
+ inset && "pl-8",
515
+ className
516
+ ),
517
+ ...props
518
+ }
519
+ ));
520
+ DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
521
+ var DropdownMenuCheckboxItem = React5.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs(
522
+ DropdownMenuPrimitive.CheckboxItem,
523
+ {
524
+ ref,
525
+ className: cn(
526
+ "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
527
+ className
528
+ ),
529
+ checked,
530
+ ...props,
531
+ children: [
532
+ /* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Check, { className: "h-4 w-4" }) }) }),
533
+ children
534
+ ]
535
+ }
536
+ ));
537
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
538
+ var DropdownMenuRadioItem = React5.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
539
+ DropdownMenuPrimitive.RadioItem,
540
+ {
541
+ ref,
542
+ className: cn(
543
+ "relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
544
+ className
545
+ ),
546
+ ...props,
547
+ children: [
548
+ /* @__PURE__ */ jsx("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Circle, { className: "h-2 w-2 fill-current" }) }) }),
549
+ children
550
+ ]
551
+ }
552
+ ));
553
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
554
+ var DropdownMenuLabel = React5.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx(
555
+ DropdownMenuPrimitive.Label,
556
+ {
557
+ ref,
558
+ className: cn(
559
+ "px-2 py-1.5 text-sm font-semibold",
560
+ inset && "pl-8",
561
+ className
562
+ ),
563
+ ...props
564
+ }
565
+ ));
566
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
567
+ var DropdownMenuSeparator = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
568
+ DropdownMenuPrimitive.Separator,
569
+ {
570
+ ref,
571
+ className: cn("-mx-1 my-1 h-px bg-muted", className),
572
+ ...props
573
+ }
574
+ ));
575
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
576
+ var Select = SelectPrimitive.Root;
577
+ var SelectValue = SelectPrimitive.Value;
578
+ var SelectTrigger = React5.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
579
+ SelectPrimitive.Trigger,
580
+ {
581
+ ref,
582
+ className: cn(
583
+ "flex h-9 w-full items-center justify-between whitespace-nowrap rounded-md border border-input bg-transparent px-3 py-2 text-sm shadow-sm ring-offset-background data-[placeholder]:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
584
+ className
585
+ ),
586
+ ...props,
587
+ children: [
588
+ children,
589
+ /* @__PURE__ */ jsx(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4 opacity-50" }) })
590
+ ]
591
+ }
592
+ ));
593
+ SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
594
+ var SelectScrollUpButton = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
595
+ SelectPrimitive.ScrollUpButton,
596
+ {
597
+ ref,
598
+ className: cn(
599
+ "flex cursor-default items-center justify-center py-1",
600
+ className
601
+ ),
602
+ ...props,
603
+ children: /* @__PURE__ */ jsx(ChevronUp, { className: "h-4 w-4" })
604
+ }
605
+ ));
606
+ SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
607
+ var SelectScrollDownButton = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
608
+ SelectPrimitive.ScrollDownButton,
609
+ {
610
+ ref,
611
+ className: cn(
612
+ "flex cursor-default items-center justify-center py-1",
613
+ className
614
+ ),
615
+ ...props,
616
+ children: /* @__PURE__ */ jsx(ChevronDown, { className: "h-4 w-4" })
617
+ }
618
+ ));
619
+ SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
620
+ var SelectContent = React5.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs(
621
+ SelectPrimitive.Content,
622
+ {
623
+ ref,
624
+ className: cn(
625
+ "relative z-50 max-h-[--radix-select-content-available-height] min-w-[8rem] overflow-y-auto overflow-x-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 origin-[--radix-select-content-transform-origin]",
626
+ position === "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",
627
+ className
628
+ ),
629
+ position,
630
+ ...props,
631
+ children: [
632
+ /* @__PURE__ */ jsx(SelectScrollUpButton, {}),
633
+ /* @__PURE__ */ jsx(
634
+ SelectPrimitive.Viewport,
635
+ {
636
+ className: cn(
637
+ "p-1",
638
+ position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
639
+ ),
640
+ children
641
+ }
642
+ ),
643
+ /* @__PURE__ */ jsx(SelectScrollDownButton, {})
644
+ ]
645
+ }
646
+ ) }));
647
+ SelectContent.displayName = SelectPrimitive.Content.displayName;
648
+ var SelectLabel = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
649
+ SelectPrimitive.Label,
650
+ {
651
+ ref,
652
+ className: cn("px-2 py-1.5 text-sm font-semibold", className),
653
+ ...props
654
+ }
655
+ ));
656
+ SelectLabel.displayName = SelectPrimitive.Label.displayName;
657
+ var SelectItem = React5.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(
658
+ SelectPrimitive.Item,
659
+ {
660
+ ref,
661
+ className: cn(
662
+ "relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-2 pr-8 text-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
663
+ className
664
+ ),
665
+ ...props,
666
+ children: [
667
+ /* @__PURE__ */ jsx("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx(Check, { className: "h-4 w-4" }) }) }),
668
+ /* @__PURE__ */ jsx(SelectPrimitive.ItemText, { children })
669
+ ]
670
+ }
671
+ ));
672
+ SelectItem.displayName = SelectPrimitive.Item.displayName;
673
+ var SelectSeparator = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx(
674
+ SelectPrimitive.Separator,
675
+ {
676
+ ref,
677
+ className: cn("-mx-1 my-1 h-px bg-muted", className),
678
+ ...props
679
+ }
680
+ ));
681
+ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
682
+
683
+ export { Alert, AlertDescription, AlertTitle, Badge, Carousel, CarouselContent, CarouselItem, CarouselNext, CarouselPrevious, Collapsible, CollapsibleContent2 as CollapsibleContent, CollapsibleTrigger2 as CollapsibleTrigger, Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, Input, Progress, ScrollArea, ScrollBar, Select, SelectContent, SelectItem, SelectTrigger, SelectValue, Separator, Textarea, Tooltip, TooltipContent, TooltipProvider, TooltipTrigger };
684
+ //# sourceMappingURL=chunk-NW2ESHRV.js.map
685
+ //# sourceMappingURL=chunk-NW2ESHRV.js.map