@elqnt/react 1.0.11 → 2.0.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.
@@ -1,5 +1,8 @@
1
1
  "use client";
2
2
 
3
+ // components/form-controls/button.tsx
4
+ import * as React2 from "react";
5
+
3
6
  // components/ui/button.tsx
4
7
  import * as React from "react";
5
8
  import { Slot } from "@radix-ui/react-slot";
@@ -54,524 +57,12 @@ var Button = React.forwardRef(
54
57
  );
55
58
  Button.displayName = "Button";
56
59
 
57
- // components/ui/dialog.tsx
58
- import * as React2 from "react";
59
- import * as DialogPrimitive from "@radix-ui/react-dialog";
60
- import { Cross2Icon } from "@radix-ui/react-icons";
61
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
62
- var Dialog = DialogPrimitive.Root;
63
- var DialogTrigger = DialogPrimitive.Trigger;
64
- var DialogPortal = DialogPrimitive.Portal;
65
- var DialogOverlay = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
66
- DialogPrimitive.Overlay,
67
- {
68
- ref,
69
- className: cn(
70
- "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",
71
- className
72
- ),
73
- ...props
74
- }
75
- ));
76
- DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
77
- var DialogContent = React2.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs(DialogPortal, { children: [
78
- /* @__PURE__ */ jsx2(DialogOverlay, {}),
79
- /* @__PURE__ */ jsxs(
80
- DialogPrimitive.Content,
81
- {
82
- ref,
83
- className: cn(
84
- "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",
85
- className
86
- ),
87
- ...props,
88
- children: [
89
- children,
90
- /* @__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: [
91
- /* @__PURE__ */ jsx2(Cross2Icon, { className: "h-4 w-4" }),
92
- /* @__PURE__ */ jsx2("span", { className: "sr-only", children: "Close" })
93
- ] })
94
- ]
95
- }
96
- )
97
- ] }));
98
- DialogContent.displayName = DialogPrimitive.Content.displayName;
99
- var DialogHeader = ({
100
- className,
101
- ...props
102
- }) => /* @__PURE__ */ jsx2(
103
- "div",
104
- {
105
- className: cn(
106
- "flex flex-col space-y-1.5 text-center sm:text-left",
107
- className
108
- ),
109
- ...props
110
- }
111
- );
112
- DialogHeader.displayName = "DialogHeader";
113
- var DialogFooter = ({
114
- className,
115
- ...props
116
- }) => /* @__PURE__ */ jsx2(
117
- "div",
118
- {
119
- className: cn(
120
- "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
121
- className
122
- ),
123
- ...props
124
- }
125
- );
126
- DialogFooter.displayName = "DialogFooter";
127
- var DialogTitle = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
128
- DialogPrimitive.Title,
129
- {
130
- ref,
131
- className: cn(
132
- "text-lg font-semibold leading-none tracking-tight",
133
- className
134
- ),
135
- ...props
136
- }
137
- ));
138
- DialogTitle.displayName = DialogPrimitive.Title.displayName;
139
- var DialogDescription = React2.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx2(
140
- DialogPrimitive.Description,
141
- {
142
- ref,
143
- className: cn("text-sm text-muted-foreground", className),
144
- ...props
145
- }
146
- ));
147
- DialogDescription.displayName = DialogPrimitive.Description.displayName;
148
-
149
- // components/ui/input.tsx
150
- import * as React3 from "react";
151
- import { jsx as jsx3 } from "react/jsx-runtime";
152
- var Input = React3.forwardRef(
153
- ({ className, type, ...props }, ref) => {
154
- return /* @__PURE__ */ jsx3(
155
- "input",
156
- {
157
- type,
158
- className: cn(
159
- "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
160
- className
161
- ),
162
- ref,
163
- ...props
164
- }
165
- );
166
- }
167
- );
168
- Input.displayName = "Input";
169
-
170
- // components/ui/select.tsx
171
- import * as React4 from "react";
172
- import {
173
- CaretSortIcon,
174
- CheckIcon,
175
- ChevronDownIcon,
176
- ChevronUpIcon
177
- } from "@radix-ui/react-icons";
178
- import * as SelectPrimitive from "@radix-ui/react-select";
179
- import { jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
180
- var Select = SelectPrimitive.Root;
181
- var SelectValue = SelectPrimitive.Value;
182
- var SelectTrigger = React4.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs2(
183
- SelectPrimitive.Trigger,
184
- {
185
- ref,
186
- className: cn(
187
- "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 placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
188
- className
189
- ),
190
- ...props,
191
- children: [
192
- children,
193
- /* @__PURE__ */ jsx4(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx4(CaretSortIcon, { className: "h-4 w-4 opacity-50" }) })
194
- ]
195
- }
196
- ));
197
- SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
198
- var SelectScrollUpButton = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
199
- SelectPrimitive.ScrollUpButton,
200
- {
201
- ref,
202
- className: cn(
203
- "flex cursor-default items-center justify-center py-1",
204
- className
205
- ),
206
- ...props,
207
- children: /* @__PURE__ */ jsx4(ChevronUpIcon, {})
208
- }
209
- ));
210
- SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
211
- var SelectScrollDownButton = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
212
- SelectPrimitive.ScrollDownButton,
213
- {
214
- ref,
215
- className: cn(
216
- "flex cursor-default items-center justify-center py-1",
217
- className
218
- ),
219
- ...props,
220
- children: /* @__PURE__ */ jsx4(ChevronDownIcon, {})
221
- }
222
- ));
223
- SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
224
- var SelectContent = React4.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx4(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs2(
225
- SelectPrimitive.Content,
226
- {
227
- ref,
228
- className: cn(
229
- "relative z-50 max-h-96 min-w-32 overflow-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",
230
- 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",
231
- className
232
- ),
233
- position,
234
- ...props,
235
- children: [
236
- /* @__PURE__ */ jsx4(SelectScrollUpButton, {}),
237
- /* @__PURE__ */ jsx4(
238
- SelectPrimitive.Viewport,
239
- {
240
- className: cn(
241
- "p-1",
242
- position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"
243
- ),
244
- children
245
- }
246
- ),
247
- /* @__PURE__ */ jsx4(SelectScrollDownButton, {})
248
- ]
249
- }
250
- ) }));
251
- SelectContent.displayName = SelectPrimitive.Content.displayName;
252
- var SelectLabel = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
253
- SelectPrimitive.Label,
254
- {
255
- ref,
256
- className: cn("px-2 py-1.5 text-sm font-semibold", className),
257
- ...props
258
- }
259
- ));
260
- SelectLabel.displayName = SelectPrimitive.Label.displayName;
261
- var SelectItem = React4.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs2(
262
- SelectPrimitive.Item,
263
- {
264
- ref,
265
- className: cn(
266
- "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",
267
- className
268
- ),
269
- ...props,
270
- children: [
271
- /* @__PURE__ */ jsx4("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx4(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx4(CheckIcon, { className: "h-4 w-4" }) }) }),
272
- /* @__PURE__ */ jsx4(SelectPrimitive.ItemText, { children })
273
- ]
274
- }
275
- ));
276
- SelectItem.displayName = SelectPrimitive.Item.displayName;
277
- var SelectSeparator = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx4(
278
- SelectPrimitive.Separator,
279
- {
280
- ref,
281
- className: cn("-mx-1 my-1 h-px bg-muted", className),
282
- ...props
283
- }
284
- ));
285
- SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
286
-
287
- // components/entities/filter-dialog.tsx
288
- import {
289
- useEntityDefinitionContext,
290
- useEntityRecordContext
291
- } from "@elqnt/entity";
292
-
293
- // components/ui/badge.tsx
294
- import { cva as cva2 } from "class-variance-authority";
295
- import { jsx as jsx5 } from "react/jsx-runtime";
296
- var badgeVariants = cva2(
297
- "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",
298
- {
299
- variants: {
300
- variant: {
301
- default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
302
- secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
303
- destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
304
- outline: "text-foreground"
305
- }
306
- },
307
- defaultVariants: {
308
- variant: "default"
309
- }
310
- }
311
- );
312
- function Badge({ className, variant, ...props }) {
313
- return /* @__PURE__ */ jsx5("div", { className: cn(badgeVariants({ variant }), className), ...props });
314
- }
315
-
316
- // components/entities/filter-dialog.tsx
317
- import { Filter, Paintbrush, Plus, X, XCircle } from "lucide-react";
318
- import { useEffect, useState } from "react";
319
- import { Fragment, jsx as jsx6, jsxs as jsxs3 } from "react/jsx-runtime";
320
- var OPERATORS = {
321
- string: ["eq", "ne", "contains", "startsWith", "endsWith"],
322
- text: ["contains", "startsWith", "endsWith"],
323
- int: ["eq", "ne", "gt", "gte", "lt", "lte", "between"],
324
- float: ["eq", "ne", "gt", "gte", "lt", "lte", "between"],
325
- date: ["eq", "ne", "gt", "gte", "lt", "lte", "between"],
326
- datetime: ["eq", "ne", "gt", "gte", "lt", "lte", "between"],
327
- dropdown: ["eq", "ne", "in", "nin"],
328
- multiselect: ["in", "nin", "contains"],
329
- boolean: ["eq", "ne"]
330
- };
331
- var OPERATOR_LABELS = {
332
- eq: "Equals",
333
- ne: "Not equals",
334
- gt: "Greater than",
335
- gte: "Greater than or equal",
336
- lt: "Less than",
337
- lte: "Less than or equal",
338
- in: "In",
339
- nin: "Not in",
340
- contains: "Contains",
341
- startsWith: "Starts with",
342
- endsWith: "Ends with",
343
- between: "Between"
344
- };
345
- var DEFAULT_CONDITION = {
346
- field: "",
347
- operator: "",
348
- value: ""
349
- };
350
- function FilterDialog({ open, onOpenChange }) {
351
- const { selectedDefinition } = useEntityDefinitionContext();
352
- const { updateParams, params } = useEntityRecordContext();
353
- const [conditions, setConditions] = useState([
354
- DEFAULT_CONDITION
355
- ]);
356
- const [hasActiveFilters, setHasActiveFilters] = useState(false);
357
- useEffect(() => {
358
- const hasFilters = params.filters && Object.keys(params.filters).length > 0;
359
- setHasActiveFilters(hasFilters);
360
- }, [params.filters]);
361
- const fields = [];
362
- const getOperatorsForField = (fieldType) => {
363
- return OPERATORS[fieldType] || OPERATORS.string;
364
- };
365
- const handleAddCondition = () => {
366
- setConditions([...conditions, { ...DEFAULT_CONDITION }]);
367
- };
368
- const handleRemoveCondition = (index) => {
369
- setConditions(conditions.filter((_, i) => i !== index));
370
- };
371
- const handleFieldChange = (index, fieldName) => {
372
- const newConditions = [...conditions];
373
- newConditions[index] = {
374
- ...newConditions[index],
375
- field: fieldName,
376
- operator: "",
377
- value: ""
378
- };
379
- setConditions(newConditions);
380
- };
381
- const handleOperatorChange = (index, operator) => {
382
- const newConditions = [...conditions];
383
- newConditions[index] = {
384
- ...newConditions[index],
385
- operator
386
- };
387
- setConditions(newConditions);
388
- };
389
- const handleValueChange = (index, value) => {
390
- const newConditions = [...conditions];
391
- newConditions[index] = {
392
- ...newConditions[index],
393
- value
394
- };
395
- setConditions(newConditions);
396
- };
397
- const handleClearFilters = () => {
398
- setConditions([{ ...DEFAULT_CONDITION }]);
399
- updateParams({ filters: {} });
400
- setHasActiveFilters(false);
401
- };
402
- const handleApplyFilters = () => {
403
- const validConditions = conditions.filter(
404
- (c) => c.field && c.operator && c.value
405
- );
406
- if (validConditions.length === 0) {
407
- updateParams({ filters: {} });
408
- setHasActiveFilters(false);
409
- onOpenChange(false);
410
- return;
411
- }
412
- const filters = {};
413
- validConditions.forEach(({ field, operator, value }) => {
414
- const fieldPath = `fields.${field}.valueString`;
415
- switch (operator) {
416
- case "contains":
417
- filters[fieldPath] = { $regex: value, $options: "i" };
418
- break;
419
- case "startsWith":
420
- filters[fieldPath] = { $regex: `^${value}`, $options: "i" };
421
- break;
422
- case "endsWith":
423
- filters[fieldPath] = { $regex: `${value}$`, $options: "i" };
424
- break;
425
- default:
426
- filters[fieldPath] = { [`$${operator}`]: value };
427
- }
428
- });
429
- const query = {
430
- filters: validConditions.length > 1 ? { $and: Object.entries(filters).map(([k, v]) => ({ [k]: v })) } : filters
431
- };
432
- updateParams(query);
433
- setHasActiveFilters(true);
434
- onOpenChange(false);
435
- };
436
- const getFieldByName = (fieldName) => {
437
- return fields.find((f) => f.name === fieldName);
438
- };
439
- const activeFilterCount = conditions.filter(
440
- (c) => c.field && c.operator && c.value
441
- ).length;
442
- return /* @__PURE__ */ jsxs3(Fragment, { children: [
443
- /* @__PURE__ */ jsxs3("div", { className: "flex items-center", children: [
444
- /* @__PURE__ */ jsxs3(
445
- Button,
446
- {
447
- onClick: () => onOpenChange(true),
448
- variant: hasActiveFilters ? "secondary" : "outline",
449
- className: cn("relative group", hasActiveFilters && "rounded-r-none"),
450
- children: [
451
- /* @__PURE__ */ jsx6(Filter, { className: "w-4 h-4 mr-2" }),
452
- "Filter",
453
- activeFilterCount > 0 && /* @__PURE__ */ jsx6(
454
- Badge,
455
- {
456
- variant: "secondary",
457
- className: "ml-2 bg-primary text-primary-foreground",
458
- children: activeFilterCount
459
- }
460
- )
461
- ]
462
- }
463
- ),
464
- hasActiveFilters && /* @__PURE__ */ jsx6(
465
- Button,
466
- {
467
- variant: "secondary",
468
- size: "icon",
469
- onClick: handleClearFilters,
470
- className: "text-muted-foreground -ml-2 rounded-l-none",
471
- title: "Clear filters",
472
- children: /* @__PURE__ */ jsx6(Paintbrush, { className: "h-4 w-4" })
473
- }
474
- )
475
- ] }),
476
- /* @__PURE__ */ jsx6(Dialog, { open, onOpenChange, children: /* @__PURE__ */ jsxs3(DialogContent, { className: "max-w-3xl", children: [
477
- /* @__PURE__ */ jsx6(DialogHeader, { children: /* @__PURE__ */ jsxs3("div", { className: "flex items-center justify-between", children: [
478
- /* @__PURE__ */ jsxs3(DialogTitle, { children: [
479
- "Filter ",
480
- selectedDefinition?.displayName
481
- ] }),
482
- hasActiveFilters && /* @__PURE__ */ jsxs3(
483
- Button,
484
- {
485
- variant: "ghost",
486
- size: "sm",
487
- onClick: handleClearFilters,
488
- className: "text-muted-foreground hover:text-primary",
489
- children: [
490
- /* @__PURE__ */ jsx6(XCircle, { className: "w-4 h-4 mr-2" }),
491
- "Clear Filters"
492
- ]
493
- }
494
- )
495
- ] }) }),
496
- /* @__PURE__ */ jsxs3("div", { className: "space-y-4", children: [
497
- conditions.map((condition, index) => {
498
- const selectedField = getFieldByName(condition.field);
499
- const operators = selectedField ? getOperatorsForField(selectedField.type) : [];
500
- return /* @__PURE__ */ jsxs3("div", { className: "flex items-center gap-2", children: [
501
- /* @__PURE__ */ jsxs3(
502
- Select,
503
- {
504
- value: condition.field,
505
- onValueChange: (value) => handleFieldChange(index, value),
506
- children: [
507
- /* @__PURE__ */ jsx6(SelectTrigger, { className: "w-[200px]", children: /* @__PURE__ */ jsx6(SelectValue, { placeholder: "Select field" }) }),
508
- /* @__PURE__ */ jsx6(SelectContent, { children: fields.map((field) => /* @__PURE__ */ jsx6(SelectItem, { value: field.name, children: field.displayName }, field.name)) })
509
- ]
510
- }
511
- ),
512
- /* @__PURE__ */ jsxs3(
513
- Select,
514
- {
515
- value: condition.operator,
516
- onValueChange: (value) => handleOperatorChange(index, value),
517
- disabled: !condition.field,
518
- children: [
519
- /* @__PURE__ */ jsx6(SelectTrigger, { className: "w-[200px]", children: /* @__PURE__ */ jsx6(SelectValue, { placeholder: "Select operator" }) }),
520
- /* @__PURE__ */ jsx6(SelectContent, { children: operators.map((op) => /* @__PURE__ */ jsx6(SelectItem, { value: op, children: OPERATOR_LABELS[op] }, op)) })
521
- ]
522
- }
523
- ),
524
- /* @__PURE__ */ jsx6(
525
- Input,
526
- {
527
- placeholder: "Value",
528
- value: condition.value,
529
- onChange: (e) => handleValueChange(index, e.target.value),
530
- disabled: !condition.operator,
531
- className: "flex-1"
532
- }
533
- ),
534
- conditions.length > 1 && /* @__PURE__ */ jsx6(
535
- Button,
536
- {
537
- variant: "ghost",
538
- size: "icon",
539
- onClick: () => handleRemoveCondition(index),
540
- className: "text-muted-foreground hover:text-destructive",
541
- children: /* @__PURE__ */ jsx6(X, { className: "h-4 w-4" })
542
- }
543
- )
544
- ] }, index);
545
- }),
546
- /* @__PURE__ */ jsxs3(
547
- Button,
548
- {
549
- variant: "outline",
550
- size: "sm",
551
- className: "w-full",
552
- onClick: handleAddCondition,
553
- children: [
554
- /* @__PURE__ */ jsx6(Plus, { className: "h-4 w-4 mr-2" }),
555
- "Add Condition"
556
- ]
557
- }
558
- )
559
- ] }),
560
- /* @__PURE__ */ jsxs3(DialogFooter, { children: [
561
- /* @__PURE__ */ jsx6(Button, { variant: "outline", onClick: () => onOpenChange(false), children: "Cancel" }),
562
- /* @__PURE__ */ jsx6(Button, { onClick: handleApplyFilters, children: "Apply Filters" })
563
- ] })
564
- ] }) })
565
- ] });
566
- }
567
-
568
60
  // components/form-controls/button.tsx
569
- import * as React5 from "react";
570
- import { jsx as jsx7 } from "react/jsx-runtime";
571
- var Button2 = React5.forwardRef(
61
+ import { jsx as jsx2 } from "react/jsx-runtime";
62
+ var Button2 = React2.forwardRef(
572
63
  ({ children, variant = "default", className = "", type, ...props }, ref) => {
573
64
  const buttonClass = `${variant === "secondary" ? "button-secondary" : ""} ${className}`;
574
- return /* @__PURE__ */ jsx7(
65
+ return /* @__PURE__ */ jsx2(
575
66
  Button,
576
67
  {
577
68
  className: buttonClass,
@@ -587,22 +78,22 @@ var Button2 = React5.forwardRef(
587
78
  Button2.displayName = "Button";
588
79
 
589
80
  // components/form-controls/action-bar/back-button.tsx
590
- import { jsx as jsx8 } from "react/jsx-runtime";
81
+ import { jsx as jsx3 } from "react/jsx-runtime";
591
82
  function BackButton() {
592
- return /* @__PURE__ */ jsx8(Button2, { onClick: () => {
83
+ return /* @__PURE__ */ jsx3(Button2, { onClick: () => {
593
84
  }, children: "Back" });
594
85
  }
595
86
 
596
87
  // components/form-controls/icon.tsx
597
88
  import { icons } from "lucide-react";
598
89
  import { memo } from "react";
599
- import { jsx as jsx9 } from "react/jsx-runtime";
600
- var Icon2 = memo(({ name, className, strokeWidth, size }) => {
90
+ import { jsx as jsx4 } from "react/jsx-runtime";
91
+ var Icon = memo(({ name, className, strokeWidth, size }) => {
601
92
  const IconComponent = icons[name];
602
93
  if (!IconComponent) {
603
94
  return null;
604
95
  }
605
- return /* @__PURE__ */ jsx9(
96
+ return /* @__PURE__ */ jsx4(
606
97
  IconComponent,
607
98
  {
608
99
  className: cn(className),
@@ -611,37 +102,37 @@ var Icon2 = memo(({ name, className, strokeWidth, size }) => {
611
102
  }
612
103
  );
613
104
  });
614
- Icon2.displayName = "Icon";
105
+ Icon.displayName = "Icon";
615
106
 
616
107
  // components/form-controls/action-bar/action-bar-button.tsx
617
- import { jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
108
+ import { jsx as jsx5, jsxs } from "react/jsx-runtime";
618
109
  function ActionBarButton({
619
110
  label,
620
111
  onClick,
621
112
  icon
622
113
  }) {
623
- return /* @__PURE__ */ jsxs4(Button2, { onClick, className: "flex items-center gap-2", children: [
624
- /* @__PURE__ */ jsx10(Icon2, { name: icon, size: 20, strokeWidth: 1 }),
114
+ return /* @__PURE__ */ jsxs(Button2, { onClick, className: "flex items-center gap-2", children: [
115
+ /* @__PURE__ */ jsx5(Icon, { name: icon, size: 20, strokeWidth: 1 }),
625
116
  label
626
117
  ] });
627
118
  }
628
119
 
629
120
  // components/form-controls/action-bar/action-bar.tsx
630
- import { jsx as jsx11, jsxs as jsxs5 } from "react/jsx-runtime";
121
+ import { jsx as jsx6, jsxs as jsxs2 } from "react/jsx-runtime";
631
122
  var ActionBar = ({ actions }) => {
632
123
  function backHandler() {
633
124
  window.history.back();
634
125
  }
635
- return /* @__PURE__ */ jsxs5("div", { className: "flex items-center justify-center gap-4 bg-primary text-primary-foreground shadow rounded-md text-sm font-medium w-fit divide-solid divide-x", children: [
636
- /* @__PURE__ */ jsx11("div", { className: "cursor-pointer pl-4 py-2", onClick: backHandler, children: /* @__PURE__ */ jsx11(Icon2, { name: "ArrowBigLeft" }) }),
637
- actions.map((item) => /* @__PURE__ */ jsxs5(
126
+ return /* @__PURE__ */ jsxs2("div", { className: "flex items-center justify-center gap-4 bg-primary text-primary-foreground shadow rounded-md text-sm font-medium w-fit divide-solid divide-x", children: [
127
+ /* @__PURE__ */ jsx6("div", { className: "cursor-pointer pl-4 py-2", onClick: backHandler, children: /* @__PURE__ */ jsx6(Icon, { name: "ArrowBigLeft" }) }),
128
+ actions.map((item) => /* @__PURE__ */ jsxs2(
638
129
  "div",
639
130
  {
640
131
  className: "flex items-center justify-center gap-2 cursor-pointer py-2 px-4",
641
132
  onClick: item.onClick,
642
133
  children: [
643
- /* @__PURE__ */ jsx11(Icon2, { name: item.icon }),
644
- /* @__PURE__ */ jsx11("p", { children: item.label })
134
+ /* @__PURE__ */ jsx6(Icon, { name: item.icon }),
135
+ /* @__PURE__ */ jsx6("p", { children: item.label })
645
136
  ]
646
137
  },
647
138
  item.label
@@ -650,10 +141,10 @@ var ActionBar = ({ actions }) => {
650
141
  };
651
142
 
652
143
  // components/ui/alert.tsx
653
- import * as React6 from "react";
654
- import { cva as cva3 } from "class-variance-authority";
655
- import { jsx as jsx12 } from "react/jsx-runtime";
656
- var alertVariants = cva3(
144
+ import * as React3 from "react";
145
+ import { cva as cva2 } from "class-variance-authority";
146
+ import { jsx as jsx7 } from "react/jsx-runtime";
147
+ var alertVariants = cva2(
657
148
  "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",
658
149
  {
659
150
  variants: {
@@ -667,7 +158,7 @@ var alertVariants = cva3(
667
158
  }
668
159
  }
669
160
  );
670
- var Alert = React6.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx12(
161
+ var Alert = React3.forwardRef(({ className, variant, ...props }, ref) => /* @__PURE__ */ jsx7(
671
162
  "div",
672
163
  {
673
164
  ref,
@@ -677,7 +168,7 @@ var Alert = React6.forwardRef(({ className, variant, ...props }, ref) => /* @__P
677
168
  }
678
169
  ));
679
170
  Alert.displayName = "Alert";
680
- var AlertTitle = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx12(
171
+ var AlertTitle = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(
681
172
  "h5",
682
173
  {
683
174
  ref,
@@ -686,7 +177,7 @@ var AlertTitle = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE_
686
177
  }
687
178
  ));
688
179
  AlertTitle.displayName = "AlertTitle";
689
- var AlertDescription = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx12(
180
+ var AlertDescription = React3.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx7(
690
181
  "div",
691
182
  {
692
183
  ref,
@@ -698,20 +189,20 @@ AlertDescription.displayName = "AlertDescription";
698
189
 
699
190
  // components/form-controls/alert.tsx
700
191
  import { RocketIcon } from "@radix-ui/react-icons";
701
- import { jsx as jsx13, jsxs as jsxs6 } from "react/jsx-runtime";
192
+ import { jsx as jsx8, jsxs as jsxs3 } from "react/jsx-runtime";
702
193
  var Alert2 = ({ title, description }) => {
703
- return /* @__PURE__ */ jsxs6(Alert, { children: [
704
- /* @__PURE__ */ jsx13(RocketIcon, { className: "h-4 w-4" }),
705
- /* @__PURE__ */ jsx13(AlertTitle, { children: title }),
706
- /* @__PURE__ */ jsx13(AlertDescription, { children: description })
194
+ return /* @__PURE__ */ jsxs3(Alert, { children: [
195
+ /* @__PURE__ */ jsx8(RocketIcon, { className: "h-4 w-4" }),
196
+ /* @__PURE__ */ jsx8(AlertTitle, { children: title }),
197
+ /* @__PURE__ */ jsx8(AlertDescription, { children: description })
707
198
  ] });
708
199
  };
709
200
 
710
201
  // components/ui/avatar.tsx
711
- import * as React7 from "react";
202
+ import * as React4 from "react";
712
203
  import * as AvatarPrimitive from "@radix-ui/react-avatar";
713
- import { jsx as jsx14 } from "react/jsx-runtime";
714
- var Avatar = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx14(
204
+ import { jsx as jsx9 } from "react/jsx-runtime";
205
+ var Avatar = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx9(
715
206
  AvatarPrimitive.Root,
716
207
  {
717
208
  ref,
@@ -723,7 +214,7 @@ var Avatar = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
723
214
  }
724
215
  ));
725
216
  Avatar.displayName = AvatarPrimitive.Root.displayName;
726
- var AvatarImage = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx14(
217
+ var AvatarImage = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx9(
727
218
  AvatarPrimitive.Image,
728
219
  {
729
220
  ref,
@@ -732,7 +223,7 @@ var AvatarImage = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE
732
223
  }
733
224
  ));
734
225
  AvatarImage.displayName = AvatarPrimitive.Image.displayName;
735
- var AvatarFallback = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx14(
226
+ var AvatarFallback = React4.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx9(
736
227
  AvatarPrimitive.Fallback,
737
228
  {
738
229
  ref,
@@ -746,25 +237,25 @@ var AvatarFallback = React7.forwardRef(({ className, ...props }, ref) => /* @__P
746
237
  AvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;
747
238
 
748
239
  // components/form-controls/avatar.tsx
749
- import { jsx as jsx15, jsxs as jsxs7 } from "react/jsx-runtime";
240
+ import { jsx as jsx10, jsxs as jsxs4 } from "react/jsx-runtime";
750
241
  var Avatar2 = ({ image, fallback }) => {
751
- return /* @__PURE__ */ jsxs7(Avatar, { className: "w-fit", children: [
752
- /* @__PURE__ */ jsx15(AvatarImage, { src: image }),
753
- /* @__PURE__ */ jsx15(AvatarFallback, { children: fallback })
242
+ return /* @__PURE__ */ jsxs4(Avatar, { className: "w-fit", children: [
243
+ /* @__PURE__ */ jsx10(AvatarImage, { src: image }),
244
+ /* @__PURE__ */ jsx10(AvatarFallback, { children: fallback })
754
245
  ] });
755
246
  };
756
247
 
757
248
  // components/form-controls/breadcrumb.tsx
758
- import { Fragment as Fragment2 } from "react";
249
+ import { Fragment } from "react";
759
250
 
760
251
  // components/ui/breadcrumb.tsx
761
- import * as React8 from "react";
252
+ import * as React5 from "react";
762
253
  import { ChevronRightIcon, DotsHorizontalIcon } from "@radix-ui/react-icons";
763
254
  import { Slot as Slot2 } from "@radix-ui/react-slot";
764
- import { jsx as jsx16, jsxs as jsxs8 } from "react/jsx-runtime";
765
- var Breadcrumb = React8.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx16("nav", { ref, "aria-label": "breadcrumb", ...props }));
255
+ import { jsx as jsx11, jsxs as jsxs5 } from "react/jsx-runtime";
256
+ var Breadcrumb = React5.forwardRef(({ ...props }, ref) => /* @__PURE__ */ jsx11("nav", { ref, "aria-label": "breadcrumb", ...props }));
766
257
  Breadcrumb.displayName = "Breadcrumb";
767
- var BreadcrumbList = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
258
+ var BreadcrumbList = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx11(
768
259
  "ol",
769
260
  {
770
261
  ref,
@@ -776,7 +267,7 @@ var BreadcrumbList = React8.forwardRef(({ className, ...props }, ref) => /* @__P
776
267
  }
777
268
  ));
778
269
  BreadcrumbList.displayName = "BreadcrumbList";
779
- var BreadcrumbItem = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
270
+ var BreadcrumbItem = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx11(
780
271
  "li",
781
272
  {
782
273
  ref,
@@ -785,9 +276,9 @@ var BreadcrumbItem = React8.forwardRef(({ className, ...props }, ref) => /* @__P
785
276
  }
786
277
  ));
787
278
  BreadcrumbItem.displayName = "BreadcrumbItem";
788
- var BreadcrumbLink = React8.forwardRef(({ asChild, className, ...props }, ref) => {
279
+ var BreadcrumbLink = React5.forwardRef(({ asChild, className, ...props }, ref) => {
789
280
  const Comp = asChild ? Slot2 : "a";
790
- return /* @__PURE__ */ jsx16(
281
+ return /* @__PURE__ */ jsx11(
791
282
  Comp,
792
283
  {
793
284
  ref,
@@ -797,7 +288,7 @@ var BreadcrumbLink = React8.forwardRef(({ asChild, className, ...props }, ref) =
797
288
  );
798
289
  });
799
290
  BreadcrumbLink.displayName = "BreadcrumbLink";
800
- var BreadcrumbPage = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
291
+ var BreadcrumbPage = React5.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx11(
801
292
  "span",
802
293
  {
803
294
  ref,
@@ -813,21 +304,21 @@ var BreadcrumbSeparator = ({
813
304
  children,
814
305
  className,
815
306
  ...props
816
- }) => /* @__PURE__ */ jsx16(
307
+ }) => /* @__PURE__ */ jsx11(
817
308
  "li",
818
309
  {
819
310
  role: "presentation",
820
311
  "aria-hidden": "true",
821
312
  className: cn("[&>svg]:size-3.5", className),
822
313
  ...props,
823
- children: children ?? /* @__PURE__ */ jsx16(ChevronRightIcon, {})
314
+ children: children ?? /* @__PURE__ */ jsx11(ChevronRightIcon, {})
824
315
  }
825
316
  );
826
317
  BreadcrumbSeparator.displayName = "BreadcrumbSeparator";
827
318
  var BreadcrumbEllipsis = ({
828
319
  className,
829
320
  ...props
830
- }) => /* @__PURE__ */ jsxs8(
321
+ }) => /* @__PURE__ */ jsxs5(
831
322
  "span",
832
323
  {
833
324
  role: "presentation",
@@ -835,26 +326,26 @@ var BreadcrumbEllipsis = ({
835
326
  className: cn("flex h-9 w-9 items-center justify-center", className),
836
327
  ...props,
837
328
  children: [
838
- /* @__PURE__ */ jsx16(DotsHorizontalIcon, { className: "h-4 w-4" }),
839
- /* @__PURE__ */ jsx16("span", { className: "sr-only", children: "More" })
329
+ /* @__PURE__ */ jsx11(DotsHorizontalIcon, { className: "h-4 w-4" }),
330
+ /* @__PURE__ */ jsx11("span", { className: "sr-only", children: "More" })
840
331
  ]
841
332
  }
842
333
  );
843
334
  BreadcrumbEllipsis.displayName = "BreadcrumbElipssis";
844
335
 
845
336
  // components/form-controls/breadcrumb.tsx
846
- import { jsx as jsx17, jsxs as jsxs9 } from "react/jsx-runtime";
337
+ import { jsx as jsx12, jsxs as jsxs6 } from "react/jsx-runtime";
847
338
  var Breadcrumb2 = ({ breadcrumb }) => {
848
- return /* @__PURE__ */ jsx17(Breadcrumb, { className: "p-4", children: /* @__PURE__ */ jsx17(BreadcrumbList, { children: breadcrumb.map(({ href, label }, index) => /* @__PURE__ */ jsxs9(Fragment2, { children: [
849
- /* @__PURE__ */ jsx17(BreadcrumbItem, { children: index !== breadcrumb.length - 1 ? /* @__PURE__ */ jsx17(BreadcrumbLink, { className: "cursor-pointer", href, children: label.replace(/-/g, " ") }) : /* @__PURE__ */ jsx17(BreadcrumbPage, { children: label.replace(/-/g, " ") }) }),
850
- index < breadcrumb.length - 1 && /* @__PURE__ */ jsx17(BreadcrumbSeparator, {})
339
+ return /* @__PURE__ */ jsx12(Breadcrumb, { className: "p-4", children: /* @__PURE__ */ jsx12(BreadcrumbList, { children: breadcrumb.map(({ href, label }, index) => /* @__PURE__ */ jsxs6(Fragment, { children: [
340
+ /* @__PURE__ */ jsx12(BreadcrumbItem, { children: index !== breadcrumb.length - 1 ? /* @__PURE__ */ jsx12(BreadcrumbLink, { className: "cursor-pointer", href, children: label.replace(/-/g, " ") }) : /* @__PURE__ */ jsx12(BreadcrumbPage, { children: label.replace(/-/g, " ") }) }),
341
+ index < breadcrumb.length - 1 && /* @__PURE__ */ jsx12(BreadcrumbSeparator, {})
851
342
  ] }, index)) }) });
852
343
  };
853
344
 
854
345
  // components/ui/card.tsx
855
- import * as React9 from "react";
856
- import { jsx as jsx18 } from "react/jsx-runtime";
857
- var Card = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx18(
346
+ import * as React6 from "react";
347
+ import { jsx as jsx13 } from "react/jsx-runtime";
348
+ var Card = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx13(
858
349
  "div",
859
350
  {
860
351
  ref,
@@ -866,7 +357,7 @@ var Card = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ j
866
357
  }
867
358
  ));
868
359
  Card.displayName = "Card";
869
- var CardHeader = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx18(
360
+ var CardHeader = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx13(
870
361
  "div",
871
362
  {
872
363
  ref,
@@ -875,7 +366,7 @@ var CardHeader = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE_
875
366
  }
876
367
  ));
877
368
  CardHeader.displayName = "CardHeader";
878
- var CardTitle = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx18(
369
+ var CardTitle = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx13(
879
370
  "h3",
880
371
  {
881
372
  ref,
@@ -884,7 +375,7 @@ var CardTitle = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__
884
375
  }
885
376
  ));
886
377
  CardTitle.displayName = "CardTitle";
887
- var CardDescription = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx18(
378
+ var CardDescription = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx13(
888
379
  "p",
889
380
  {
890
381
  ref,
@@ -893,9 +384,9 @@ var CardDescription = React9.forwardRef(({ className, ...props }, ref) => /* @__
893
384
  }
894
385
  ));
895
386
  CardDescription.displayName = "CardDescription";
896
- var CardContent = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx18("div", { ref, className: cn("p-6 pt-0", className), ...props }));
387
+ var CardContent = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx13("div", { ref, className: cn("p-6 pt-0", className), ...props }));
897
388
  CardContent.displayName = "CardContent";
898
- var CardFooter = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx18(
389
+ var CardFooter = React6.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx13(
899
390
  "div",
900
391
  {
901
392
  ref,
@@ -906,27 +397,27 @@ var CardFooter = React9.forwardRef(({ className, ...props }, ref) => /* @__PURE_
906
397
  CardFooter.displayName = "CardFooter";
907
398
 
908
399
  // components/form-controls/card.tsx
909
- import { jsx as jsx19, jsxs as jsxs10 } from "react/jsx-runtime";
400
+ import { jsx as jsx14, jsxs as jsxs7 } from "react/jsx-runtime";
910
401
  var Card2 = ({ title, description, content, footer }) => {
911
- return /* @__PURE__ */ jsxs10(Card, { children: [
912
- /* @__PURE__ */ jsxs10(CardHeader, { children: [
913
- /* @__PURE__ */ jsx19(CardTitle, { children: title }),
914
- description && /* @__PURE__ */ jsx19(CardDescription, { children: description })
402
+ return /* @__PURE__ */ jsxs7(Card, { children: [
403
+ /* @__PURE__ */ jsxs7(CardHeader, { children: [
404
+ /* @__PURE__ */ jsx14(CardTitle, { children: title }),
405
+ description && /* @__PURE__ */ jsx14(CardDescription, { children: description })
915
406
  ] }),
916
- /* @__PURE__ */ jsx19(CardContent, { children: /* @__PURE__ */ jsx19("p", { children: content }) }),
917
- footer && /* @__PURE__ */ jsx19(CardFooter, { children: /* @__PURE__ */ jsx19("p", { children: footer }) })
407
+ /* @__PURE__ */ jsx14(CardContent, { children: /* @__PURE__ */ jsx14("p", { children: content }) }),
408
+ footer && /* @__PURE__ */ jsx14(CardFooter, { children: /* @__PURE__ */ jsx14("p", { children: footer }) })
918
409
  ] });
919
410
  };
920
411
 
921
412
  // components/form-controls/checkbox.tsx
922
- import * as React13 from "react";
413
+ import * as React10 from "react";
923
414
 
924
415
  // components/ui/checkbox.tsx
925
- import * as React10 from "react";
416
+ import * as React7 from "react";
926
417
  import * as CheckboxPrimitive from "@radix-ui/react-checkbox";
927
- import { CheckIcon as CheckIcon2 } from "@radix-ui/react-icons";
928
- import { jsx as jsx20 } from "react/jsx-runtime";
929
- var Checkbox = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
418
+ import { CheckIcon } from "@radix-ui/react-icons";
419
+ import { jsx as jsx15 } from "react/jsx-runtime";
420
+ var Checkbox = React7.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx15(
930
421
  CheckboxPrimitive.Root,
931
422
  {
932
423
  ref,
@@ -935,11 +426,11 @@ var Checkbox = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__
935
426
  className
936
427
  ),
937
428
  ...props,
938
- children: /* @__PURE__ */ jsx20(
429
+ children: /* @__PURE__ */ jsx15(
939
430
  CheckboxPrimitive.Indicator,
940
431
  {
941
432
  className: cn("flex items-center justify-center text-current"),
942
- children: /* @__PURE__ */ jsx20(CheckIcon2, { className: "h-4 w-4" })
433
+ children: /* @__PURE__ */ jsx15(CheckIcon, { className: "h-4 w-4" })
943
434
  }
944
435
  )
945
436
  }
@@ -947,7 +438,7 @@ var Checkbox = React10.forwardRef(({ className, ...props }, ref) => /* @__PURE__
947
438
  Checkbox.displayName = CheckboxPrimitive.Root.displayName;
948
439
 
949
440
  // components/ui/form.tsx
950
- import * as React12 from "react";
441
+ import * as React9 from "react";
951
442
  import { Slot as Slot3 } from "@radix-ui/react-slot";
952
443
  import {
953
444
  Controller,
@@ -956,14 +447,14 @@ import {
956
447
  } from "react-hook-form";
957
448
 
958
449
  // components/ui/label.tsx
959
- import * as React11 from "react";
450
+ import * as React8 from "react";
960
451
  import * as LabelPrimitive from "@radix-ui/react-label";
961
- import { cva as cva4 } from "class-variance-authority";
962
- import { jsx as jsx21 } from "react/jsx-runtime";
963
- var labelVariants = cva4(
452
+ import { cva as cva3 } from "class-variance-authority";
453
+ import { jsx as jsx16 } from "react/jsx-runtime";
454
+ var labelVariants = cva3(
964
455
  "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70"
965
456
  );
966
- var Label2 = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx21(
457
+ var Label = React8.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx16(
967
458
  LabelPrimitive.Root,
968
459
  {
969
460
  ref,
@@ -971,22 +462,22 @@ var Label2 = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
971
462
  ...props
972
463
  }
973
464
  ));
974
- Label2.displayName = LabelPrimitive.Root.displayName;
465
+ Label.displayName = LabelPrimitive.Root.displayName;
975
466
 
976
467
  // components/ui/form.tsx
977
- import { jsx as jsx22 } from "react/jsx-runtime";
468
+ import { jsx as jsx17 } from "react/jsx-runtime";
978
469
  var Form = FormProvider;
979
- var FormFieldContext = React12.createContext(
470
+ var FormFieldContext = React9.createContext(
980
471
  {}
981
472
  );
982
473
  var FormField = ({
983
474
  ...props
984
475
  }) => {
985
- return /* @__PURE__ */ jsx22(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ jsx22(Controller, { ...props }) });
476
+ return /* @__PURE__ */ jsx17(FormFieldContext.Provider, { value: { name: props.name }, children: /* @__PURE__ */ jsx17(Controller, { ...props }) });
986
477
  };
987
478
  var useFormField = () => {
988
- const fieldContext = React12.useContext(FormFieldContext);
989
- const itemContext = React12.useContext(FormItemContext);
479
+ const fieldContext = React9.useContext(FormFieldContext);
480
+ const itemContext = React9.useContext(FormItemContext);
990
481
  const { getFieldState, formState } = useFormContext();
991
482
  const fieldState = getFieldState(fieldContext.name, formState);
992
483
  if (!fieldContext) {
@@ -1002,18 +493,18 @@ var useFormField = () => {
1002
493
  ...fieldState
1003
494
  };
1004
495
  };
1005
- var FormItemContext = React12.createContext(
496
+ var FormItemContext = React9.createContext(
1006
497
  {}
1007
498
  );
1008
- var FormItem = React12.forwardRef(({ className, ...props }, ref) => {
1009
- const id = React12.useId();
1010
- return /* @__PURE__ */ jsx22(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx22("div", { ref, className: cn("space-y-2", className), ...props }) });
499
+ var FormItem = React9.forwardRef(({ className, ...props }, ref) => {
500
+ const id = React9.useId();
501
+ return /* @__PURE__ */ jsx17(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx17("div", { ref, className: cn("space-y-2", className), ...props }) });
1011
502
  });
1012
503
  FormItem.displayName = "FormItem";
1013
- var FormLabel = React12.forwardRef(({ className, ...props }, ref) => {
504
+ var FormLabel = React9.forwardRef(({ className, ...props }, ref) => {
1014
505
  const { error, formItemId } = useFormField();
1015
- return /* @__PURE__ */ jsx22(
1016
- Label2,
506
+ return /* @__PURE__ */ jsx17(
507
+ Label,
1017
508
  {
1018
509
  ref,
1019
510
  className: cn(error && "text-destructive", className),
@@ -1023,9 +514,9 @@ var FormLabel = React12.forwardRef(({ className, ...props }, ref) => {
1023
514
  );
1024
515
  });
1025
516
  FormLabel.displayName = "FormLabel";
1026
- var FormControl = React12.forwardRef(({ ...props }, ref) => {
517
+ var FormControl = React9.forwardRef(({ ...props }, ref) => {
1027
518
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
1028
- return /* @__PURE__ */ jsx22(
519
+ return /* @__PURE__ */ jsx17(
1029
520
  Slot3,
1030
521
  {
1031
522
  ref,
@@ -1037,9 +528,9 @@ var FormControl = React12.forwardRef(({ ...props }, ref) => {
1037
528
  );
1038
529
  });
1039
530
  FormControl.displayName = "FormControl";
1040
- var FormDescription = React12.forwardRef(({ className, ...props }, ref) => {
531
+ var FormDescription = React9.forwardRef(({ className, ...props }, ref) => {
1041
532
  const { formDescriptionId } = useFormField();
1042
- return /* @__PURE__ */ jsx22(
533
+ return /* @__PURE__ */ jsx17(
1043
534
  "p",
1044
535
  {
1045
536
  ref,
@@ -1050,13 +541,13 @@ var FormDescription = React12.forwardRef(({ className, ...props }, ref) => {
1050
541
  );
1051
542
  });
1052
543
  FormDescription.displayName = "FormDescription";
1053
- var FormMessage = React12.forwardRef(({ className, children, ...props }, ref) => {
544
+ var FormMessage = React9.forwardRef(({ className, children, ...props }, ref) => {
1054
545
  const { error, formMessageId } = useFormField();
1055
546
  const body = error ? String(error?.message) : children;
1056
547
  if (!body) {
1057
548
  return null;
1058
549
  }
1059
- return /* @__PURE__ */ jsx22(
550
+ return /* @__PURE__ */ jsx17(
1060
551
  "p",
1061
552
  {
1062
553
  ref,
@@ -1070,16 +561,16 @@ var FormMessage = React12.forwardRef(({ className, children, ...props }, ref) =>
1070
561
  FormMessage.displayName = "FormMessage";
1071
562
 
1072
563
  // components/form-controls/checkbox.tsx
1073
- import { jsx as jsx23, jsxs as jsxs11 } from "react/jsx-runtime";
1074
- var Checkbox2 = React13.forwardRef(
1075
- ({ className, title, name, control, isFormField, ...props }, ref) => isFormField ? /* @__PURE__ */ jsx23(
564
+ import { jsx as jsx18, jsxs as jsxs8 } from "react/jsx-runtime";
565
+ var Checkbox2 = React10.forwardRef(
566
+ ({ className, title, name, control, isFormField, ...props }, ref) => isFormField ? /* @__PURE__ */ jsx18(
1076
567
  FormField,
1077
568
  {
1078
569
  control,
1079
570
  name,
1080
- render: ({ field }) => /* @__PURE__ */ jsxs11(FormItem, { children: [
1081
- /* @__PURE__ */ jsx23(FormLabel, { children: title }),
1082
- /* @__PURE__ */ jsx23(FormControl, { children: /* @__PURE__ */ jsx23(
571
+ render: ({ field }) => /* @__PURE__ */ jsxs8(FormItem, { children: [
572
+ /* @__PURE__ */ jsx18(FormLabel, { children: title }),
573
+ /* @__PURE__ */ jsx18(FormControl, { children: /* @__PURE__ */ jsx18(
1083
574
  Checkbox,
1084
575
  {
1085
576
  className,
@@ -1087,23 +578,117 @@ var Checkbox2 = React13.forwardRef(
1087
578
  onCheckedChange: field.onChange
1088
579
  }
1089
580
  ) }),
1090
- /* @__PURE__ */ jsx23(FormMessage, {})
581
+ /* @__PURE__ */ jsx18(FormMessage, {})
1091
582
  ] })
1092
583
  }
1093
- ) : /* @__PURE__ */ jsx23(Checkbox, { ref, className, ...props })
584
+ ) : /* @__PURE__ */ jsx18(Checkbox, { ref, className, ...props })
1094
585
  );
1095
586
  Checkbox2.displayName = "Checkbox";
1096
587
 
1097
588
  // components/form-controls/combobox.tsx
1098
589
  import { Check, ChevronsUpDown } from "lucide-react";
1099
- import { useEffect as useEffect2, useState as useState2 } from "react";
590
+ import { useEffect, useState } from "react";
1100
591
 
1101
592
  // components/ui/command.tsx
1102
- import * as React14 from "react";
593
+ import * as React12 from "react";
1103
594
  import { MagnifyingGlassIcon } from "@radix-ui/react-icons";
1104
595
  import { Command as CommandPrimitive } from "cmdk";
1105
- import { jsx as jsx24, jsxs as jsxs12 } from "react/jsx-runtime";
1106
- var Command = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
596
+
597
+ // components/ui/dialog.tsx
598
+ import * as React11 from "react";
599
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
600
+ import { Cross2Icon } from "@radix-ui/react-icons";
601
+ import { jsx as jsx19, jsxs as jsxs9 } from "react/jsx-runtime";
602
+ var Dialog = DialogPrimitive.Root;
603
+ var DialogTrigger = DialogPrimitive.Trigger;
604
+ var DialogPortal = DialogPrimitive.Portal;
605
+ var DialogOverlay = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
606
+ DialogPrimitive.Overlay,
607
+ {
608
+ ref,
609
+ className: cn(
610
+ "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",
611
+ className
612
+ ),
613
+ ...props
614
+ }
615
+ ));
616
+ DialogOverlay.displayName = DialogPrimitive.Overlay.displayName;
617
+ var DialogContent = React11.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs9(DialogPortal, { children: [
618
+ /* @__PURE__ */ jsx19(DialogOverlay, {}),
619
+ /* @__PURE__ */ jsxs9(
620
+ DialogPrimitive.Content,
621
+ {
622
+ ref,
623
+ className: cn(
624
+ "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",
625
+ className
626
+ ),
627
+ ...props,
628
+ children: [
629
+ children,
630
+ /* @__PURE__ */ jsxs9(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: [
631
+ /* @__PURE__ */ jsx19(Cross2Icon, { className: "h-4 w-4" }),
632
+ /* @__PURE__ */ jsx19("span", { className: "sr-only", children: "Close" })
633
+ ] })
634
+ ]
635
+ }
636
+ )
637
+ ] }));
638
+ DialogContent.displayName = DialogPrimitive.Content.displayName;
639
+ var DialogHeader = ({
640
+ className,
641
+ ...props
642
+ }) => /* @__PURE__ */ jsx19(
643
+ "div",
644
+ {
645
+ className: cn(
646
+ "flex flex-col space-y-1.5 text-center sm:text-left",
647
+ className
648
+ ),
649
+ ...props
650
+ }
651
+ );
652
+ DialogHeader.displayName = "DialogHeader";
653
+ var DialogFooter = ({
654
+ className,
655
+ ...props
656
+ }) => /* @__PURE__ */ jsx19(
657
+ "div",
658
+ {
659
+ className: cn(
660
+ "flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2",
661
+ className
662
+ ),
663
+ ...props
664
+ }
665
+ );
666
+ DialogFooter.displayName = "DialogFooter";
667
+ var DialogTitle = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
668
+ DialogPrimitive.Title,
669
+ {
670
+ ref,
671
+ className: cn(
672
+ "text-lg font-semibold leading-none tracking-tight",
673
+ className
674
+ ),
675
+ ...props
676
+ }
677
+ ));
678
+ DialogTitle.displayName = DialogPrimitive.Title.displayName;
679
+ var DialogDescription = React11.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx19(
680
+ DialogPrimitive.Description,
681
+ {
682
+ ref,
683
+ className: cn("text-sm text-muted-foreground", className),
684
+ ...props
685
+ }
686
+ ));
687
+ DialogDescription.displayName = DialogPrimitive.Description.displayName;
688
+
689
+ // components/ui/command.tsx
690
+ import { jsx as jsx20, jsxs as jsxs10 } from "react/jsx-runtime";
691
+ var Command = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
1107
692
  CommandPrimitive,
1108
693
  {
1109
694
  ref,
@@ -1115,9 +700,9 @@ var Command = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__
1115
700
  }
1116
701
  ));
1117
702
  Command.displayName = CommandPrimitive.displayName;
1118
- var CommandInput = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs12("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
1119
- /* @__PURE__ */ jsx24(MagnifyingGlassIcon, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
1120
- /* @__PURE__ */ jsx24(
703
+ var CommandInput = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs10("div", { className: "flex items-center border-b px-3", "cmdk-input-wrapper": "", children: [
704
+ /* @__PURE__ */ jsx20(MagnifyingGlassIcon, { className: "mr-2 h-4 w-4 shrink-0 opacity-50" }),
705
+ /* @__PURE__ */ jsx20(
1121
706
  CommandPrimitive.Input,
1122
707
  {
1123
708
  ref,
@@ -1130,7 +715,7 @@ var CommandInput = React14.forwardRef(({ className, ...props }, ref) => /* @__PU
1130
715
  )
1131
716
  ] }));
1132
717
  CommandInput.displayName = CommandPrimitive.Input.displayName;
1133
- var CommandList = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
718
+ var CommandList = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
1134
719
  CommandPrimitive.List,
1135
720
  {
1136
721
  ref,
@@ -1139,7 +724,7 @@ var CommandList = React14.forwardRef(({ className, ...props }, ref) => /* @__PUR
1139
724
  }
1140
725
  ));
1141
726
  CommandList.displayName = CommandPrimitive.List.displayName;
1142
- var CommandEmpty = React14.forwardRef((props, ref) => /* @__PURE__ */ jsx24(
727
+ var CommandEmpty = React12.forwardRef((props, ref) => /* @__PURE__ */ jsx20(
1143
728
  CommandPrimitive.Empty,
1144
729
  {
1145
730
  ref,
@@ -1148,7 +733,7 @@ var CommandEmpty = React14.forwardRef((props, ref) => /* @__PURE__ */ jsx24(
1148
733
  }
1149
734
  ));
1150
735
  CommandEmpty.displayName = CommandPrimitive.Empty.displayName;
1151
- var CommandGroup = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
736
+ var CommandGroup = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
1152
737
  CommandPrimitive.Group,
1153
738
  {
1154
739
  ref,
@@ -1160,7 +745,7 @@ var CommandGroup = React14.forwardRef(({ className, ...props }, ref) => /* @__PU
1160
745
  }
1161
746
  ));
1162
747
  CommandGroup.displayName = CommandPrimitive.Group.displayName;
1163
- var CommandSeparator = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
748
+ var CommandSeparator = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
1164
749
  CommandPrimitive.Separator,
1165
750
  {
1166
751
  ref,
@@ -1169,7 +754,7 @@ var CommandSeparator = React14.forwardRef(({ className, ...props }, ref) => /* @
1169
754
  }
1170
755
  ));
1171
756
  CommandSeparator.displayName = CommandPrimitive.Separator.displayName;
1172
- var CommandItem = React14.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
757
+ var CommandItem = React12.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx20(
1173
758
  CommandPrimitive.Item,
1174
759
  {
1175
760
  ref,
@@ -1185,7 +770,7 @@ var CommandShortcut = ({
1185
770
  className,
1186
771
  ...props
1187
772
  }) => {
1188
- return /* @__PURE__ */ jsx24(
773
+ return /* @__PURE__ */ jsx20(
1189
774
  "span",
1190
775
  {
1191
776
  className: cn(
@@ -1199,12 +784,12 @@ var CommandShortcut = ({
1199
784
  CommandShortcut.displayName = "CommandShortcut";
1200
785
 
1201
786
  // components/ui/popover.tsx
1202
- import * as React15 from "react";
787
+ import * as React13 from "react";
1203
788
  import * as PopoverPrimitive from "@radix-ui/react-popover";
1204
- import { jsx as jsx25 } from "react/jsx-runtime";
789
+ import { jsx as jsx21 } from "react/jsx-runtime";
1205
790
  var Popover = PopoverPrimitive.Root;
1206
791
  var PopoverTrigger = PopoverPrimitive.Trigger;
1207
- var PopoverContent = React15.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx25(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx25(
792
+ var PopoverContent = React13.forwardRef(({ className, align = "center", sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx21(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx21(
1208
793
  PopoverPrimitive.Content,
1209
794
  {
1210
795
  ref,
@@ -1220,7 +805,7 @@ var PopoverContent = React15.forwardRef(({ className, align = "center", sideOffs
1220
805
  PopoverContent.displayName = PopoverPrimitive.Content.displayName;
1221
806
 
1222
807
  // components/form-controls/combobox.tsx
1223
- import { jsx as jsx26, jsxs as jsxs13 } from "react/jsx-runtime";
808
+ import { jsx as jsx22, jsxs as jsxs11 } from "react/jsx-runtime";
1224
809
  function Combobox({
1225
810
  label,
1226
811
  options,
@@ -1230,14 +815,14 @@ function Combobox({
1230
815
  control,
1231
816
  name
1232
817
  }) {
1233
- const [open, setOpen] = useState2(false);
1234
- const [value, setValue] = useState2(defaultValue);
1235
- useEffect2(() => {
818
+ const [open, setOpen] = useState(false);
819
+ const [value, setValue] = useState(defaultValue);
820
+ useEffect(() => {
1236
821
  setValue(defaultValue);
1237
822
  }, [defaultValue]);
1238
823
  if (!isFormField) {
1239
- return /* @__PURE__ */ jsxs13(Popover, { open, onOpenChange: setOpen, children: [
1240
- /* @__PURE__ */ jsx26(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs13(
824
+ return /* @__PURE__ */ jsxs11(Popover, { open, onOpenChange: setOpen, children: [
825
+ /* @__PURE__ */ jsx22(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs11(
1241
826
  Button,
1242
827
  {
1243
828
  variant: "outline",
@@ -1246,14 +831,14 @@ function Combobox({
1246
831
  className: "w-full justify-between capitalize",
1247
832
  children: [
1248
833
  value ? options.find((option) => option.value === value)?.label || label : label,
1249
- /* @__PURE__ */ jsx26(ChevronsUpDown, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })
834
+ /* @__PURE__ */ jsx22(ChevronsUpDown, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })
1250
835
  ]
1251
836
  }
1252
837
  ) }),
1253
- /* @__PURE__ */ jsx26(PopoverContent, { className: "w-full p-0", children: /* @__PURE__ */ jsxs13(Command, { children: [
1254
- /* @__PURE__ */ jsx26(CommandInput, { placeholder: "Search..." }),
1255
- /* @__PURE__ */ jsx26(CommandEmpty, { children: "No item found." }),
1256
- /* @__PURE__ */ jsx26(CommandList, { children: /* @__PURE__ */ jsx26(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs13(
838
+ /* @__PURE__ */ jsx22(PopoverContent, { className: "w-full p-0", children: /* @__PURE__ */ jsxs11(Command, { children: [
839
+ /* @__PURE__ */ jsx22(CommandInput, { placeholder: "Search..." }),
840
+ /* @__PURE__ */ jsx22(CommandEmpty, { children: "No item found." }),
841
+ /* @__PURE__ */ jsx22(CommandList, { children: /* @__PURE__ */ jsx22(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs11(
1257
842
  CommandItem,
1258
843
  {
1259
844
  value: option.value,
@@ -1263,7 +848,7 @@ function Combobox({
1263
848
  setOpen(false);
1264
849
  },
1265
850
  children: [
1266
- /* @__PURE__ */ jsx26(
851
+ /* @__PURE__ */ jsx22(
1267
852
  Check,
1268
853
  {
1269
854
  className: cn(
@@ -1280,15 +865,15 @@ function Combobox({
1280
865
  ] }) })
1281
866
  ] });
1282
867
  }
1283
- return /* @__PURE__ */ jsx26(
868
+ return /* @__PURE__ */ jsx22(
1284
869
  FormField,
1285
870
  {
1286
871
  control,
1287
872
  name,
1288
- render: ({ field }) => /* @__PURE__ */ jsxs13(FormItem, { children: [
1289
- /* @__PURE__ */ jsx26(FormLabel, { children: label }),
1290
- /* @__PURE__ */ jsx26(FormControl, { children: /* @__PURE__ */ jsxs13(Popover, { open, onOpenChange: setOpen, children: [
1291
- /* @__PURE__ */ jsx26(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs13(
873
+ render: ({ field }) => /* @__PURE__ */ jsxs11(FormItem, { children: [
874
+ /* @__PURE__ */ jsx22(FormLabel, { children: label }),
875
+ /* @__PURE__ */ jsx22(FormControl, { children: /* @__PURE__ */ jsxs11(Popover, { open, onOpenChange: setOpen, children: [
876
+ /* @__PURE__ */ jsx22(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs11(
1292
877
  Button,
1293
878
  {
1294
879
  variant: "outline",
@@ -1297,14 +882,14 @@ function Combobox({
1297
882
  className: "w-full justify-between capitalize",
1298
883
  children: [
1299
884
  field.value ? options.find((option) => option.value === field.value)?.label || label : label,
1300
- /* @__PURE__ */ jsx26(ChevronsUpDown, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })
885
+ /* @__PURE__ */ jsx22(ChevronsUpDown, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })
1301
886
  ]
1302
887
  }
1303
888
  ) }),
1304
- /* @__PURE__ */ jsx26(PopoverContent, { className: "w-full p-0", children: /* @__PURE__ */ jsxs13(Command, { children: [
1305
- /* @__PURE__ */ jsx26(CommandInput, { placeholder: "Search..." }),
1306
- /* @__PURE__ */ jsx26(CommandEmpty, { children: "No item found." }),
1307
- /* @__PURE__ */ jsx26(CommandList, { children: /* @__PURE__ */ jsx26(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs13(
889
+ /* @__PURE__ */ jsx22(PopoverContent, { className: "w-full p-0", children: /* @__PURE__ */ jsxs11(Command, { children: [
890
+ /* @__PURE__ */ jsx22(CommandInput, { placeholder: "Search..." }),
891
+ /* @__PURE__ */ jsx22(CommandEmpty, { children: "No item found." }),
892
+ /* @__PURE__ */ jsx22(CommandList, { children: /* @__PURE__ */ jsx22(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs11(
1308
893
  CommandItem,
1309
894
  {
1310
895
  value: option.value,
@@ -1315,7 +900,7 @@ function Combobox({
1315
900
  setOpen(false);
1316
901
  },
1317
902
  children: [
1318
- /* @__PURE__ */ jsx26(
903
+ /* @__PURE__ */ jsx22(
1319
904
  Check,
1320
905
  {
1321
906
  className: cn(
@@ -1331,22 +916,22 @@ function Combobox({
1331
916
  )) }) })
1332
917
  ] }) })
1333
918
  ] }) }),
1334
- /* @__PURE__ */ jsx26(FormMessage, {})
919
+ /* @__PURE__ */ jsx22(FormMessage, {})
1335
920
  ] })
1336
921
  }
1337
922
  );
1338
923
  }
1339
924
 
1340
925
  // components/form-controls/command.tsx
1341
- import * as React16 from "react";
1342
- import { jsx as jsx27, jsxs as jsxs14 } from "react/jsx-runtime";
1343
- var Command2 = React16.forwardRef(({ className, placeholder, commandGroup, ...props }, ref) => /* @__PURE__ */ jsxs14(Command, { ...props, ref, className, children: [
1344
- /* @__PURE__ */ jsx27(CommandInput, { placeholder }),
1345
- /* @__PURE__ */ jsxs14(CommandList, { children: [
1346
- /* @__PURE__ */ jsx27(CommandEmpty, { children: "No results found." }),
1347
- commandGroup.map((group, index) => /* @__PURE__ */ jsxs14(React16.Fragment, { children: [
1348
- /* @__PURE__ */ jsx27(CommandGroup, { heading: group.header, children: group.items.map((item, itemIndex) => /* @__PURE__ */ jsx27(CommandItem, { children: item }, itemIndex)) }, index),
1349
- commandGroup.length - 1 !== index && /* @__PURE__ */ jsx27(CommandSeparator, {})
926
+ import * as React14 from "react";
927
+ import { jsx as jsx23, jsxs as jsxs12 } from "react/jsx-runtime";
928
+ var Command2 = React14.forwardRef(({ className, placeholder, commandGroup, ...props }, ref) => /* @__PURE__ */ jsxs12(Command, { ...props, ref, className, children: [
929
+ /* @__PURE__ */ jsx23(CommandInput, { placeholder }),
930
+ /* @__PURE__ */ jsxs12(CommandList, { children: [
931
+ /* @__PURE__ */ jsx23(CommandEmpty, { children: "No results found." }),
932
+ commandGroup.map((group, index) => /* @__PURE__ */ jsxs12(React14.Fragment, { children: [
933
+ /* @__PURE__ */ jsx23(CommandGroup, { heading: group.header, children: group.items.map((item, itemIndex) => /* @__PURE__ */ jsx23(CommandItem, { children: item }, itemIndex)) }, index),
934
+ commandGroup.length - 1 !== index && /* @__PURE__ */ jsx23(CommandSeparator, {})
1350
935
  ] }, index))
1351
936
  ] })
1352
937
  ] }));
@@ -1372,145 +957,283 @@ import { Loader2 } from "lucide-react";
1372
957
  import * as React19 from "react";
1373
958
 
1374
959
  // components/ui/dropdown-menu.tsx
1375
- import * as React17 from "react";
960
+ import * as React15 from "react";
1376
961
  import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
1377
962
  import {
1378
- CheckIcon as CheckIcon3,
963
+ CheckIcon as CheckIcon2,
1379
964
  ChevronRightIcon as ChevronRightIcon2,
1380
965
  DotFilledIcon
1381
966
  } from "@radix-ui/react-icons";
1382
- import { jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
1383
- var DropdownMenu = DropdownMenuPrimitive.Root;
1384
- var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
1385
- var DropdownMenuSubTrigger = React17.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs15(
1386
- DropdownMenuPrimitive.SubTrigger,
967
+ import { jsx as jsx24, jsxs as jsxs13 } from "react/jsx-runtime";
968
+ var DropdownMenu = DropdownMenuPrimitive.Root;
969
+ var DropdownMenuTrigger = DropdownMenuPrimitive.Trigger;
970
+ var DropdownMenuSubTrigger = React15.forwardRef(({ className, inset, children, ...props }, ref) => /* @__PURE__ */ jsxs13(
971
+ DropdownMenuPrimitive.SubTrigger,
972
+ {
973
+ ref,
974
+ className: cn(
975
+ "flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",
976
+ inset && "pl-8",
977
+ className
978
+ ),
979
+ ...props,
980
+ children: [
981
+ children,
982
+ /* @__PURE__ */ jsx24(ChevronRightIcon2, { className: "ml-auto h-4 w-4" })
983
+ ]
984
+ }
985
+ ));
986
+ DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
987
+ var DropdownMenuSubContent = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
988
+ DropdownMenuPrimitive.SubContent,
989
+ {
990
+ ref,
991
+ className: cn(
992
+ "z-50 min-w-32 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",
993
+ className
994
+ ),
995
+ ...props
996
+ }
997
+ ));
998
+ DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
999
+ var DropdownMenuContent = React15.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx24(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx24(
1000
+ DropdownMenuPrimitive.Content,
1001
+ {
1002
+ ref,
1003
+ sideOffset,
1004
+ className: cn(
1005
+ "z-50 min-w-32 overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",
1006
+ "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",
1007
+ className
1008
+ ),
1009
+ ...props
1010
+ }
1011
+ ) }));
1012
+ DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
1013
+ var DropdownMenuItem = React15.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx24(
1014
+ DropdownMenuPrimitive.Item,
1015
+ {
1016
+ ref,
1017
+ className: cn(
1018
+ "relative flex cursor-default select-none items-center 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",
1019
+ inset && "pl-8",
1020
+ className
1021
+ ),
1022
+ ...props
1023
+ }
1024
+ ));
1025
+ DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
1026
+ var DropdownMenuCheckboxItem = React15.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs13(
1027
+ DropdownMenuPrimitive.CheckboxItem,
1028
+ {
1029
+ ref,
1030
+ className: cn(
1031
+ "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",
1032
+ className
1033
+ ),
1034
+ checked,
1035
+ ...props,
1036
+ children: [
1037
+ /* @__PURE__ */ jsx24("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx24(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx24(CheckIcon2, { className: "h-4 w-4" }) }) }),
1038
+ children
1039
+ ]
1040
+ }
1041
+ ));
1042
+ DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
1043
+ var DropdownMenuRadioItem = React15.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs13(
1044
+ DropdownMenuPrimitive.RadioItem,
1045
+ {
1046
+ ref,
1047
+ className: cn(
1048
+ "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",
1049
+ className
1050
+ ),
1051
+ ...props,
1052
+ children: [
1053
+ /* @__PURE__ */ jsx24("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx24(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx24(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
1054
+ children
1055
+ ]
1056
+ }
1057
+ ));
1058
+ DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
1059
+ var DropdownMenuLabel = React15.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx24(
1060
+ DropdownMenuPrimitive.Label,
1061
+ {
1062
+ ref,
1063
+ className: cn(
1064
+ "px-2 py-1.5 text-sm font-semibold",
1065
+ inset && "pl-8",
1066
+ className
1067
+ ),
1068
+ ...props
1069
+ }
1070
+ ));
1071
+ DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
1072
+ var DropdownMenuSeparator = React15.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx24(
1073
+ DropdownMenuPrimitive.Separator,
1074
+ {
1075
+ ref,
1076
+ className: cn("-mx-1 my-1 h-px bg-muted", className),
1077
+ ...props
1078
+ }
1079
+ ));
1080
+ DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
1081
+ var DropdownMenuShortcut = ({
1082
+ className,
1083
+ ...props
1084
+ }) => {
1085
+ return /* @__PURE__ */ jsx24(
1086
+ "span",
1087
+ {
1088
+ className: cn("ml-auto text-xs tracking-widest opacity-60", className),
1089
+ ...props
1090
+ }
1091
+ );
1092
+ };
1093
+ DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
1094
+
1095
+ // components/ui/input.tsx
1096
+ import * as React16 from "react";
1097
+ import { jsx as jsx25 } from "react/jsx-runtime";
1098
+ var Input = React16.forwardRef(
1099
+ ({ className, type, ...props }, ref) => {
1100
+ return /* @__PURE__ */ jsx25(
1101
+ "input",
1102
+ {
1103
+ type,
1104
+ className: cn(
1105
+ "flex h-9 w-full rounded-md border border-input bg-transparent px-3 py-1 text-sm shadow-sm transition-colors file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50",
1106
+ className
1107
+ ),
1108
+ ref,
1109
+ ...props
1110
+ }
1111
+ );
1112
+ }
1113
+ );
1114
+ Input.displayName = "Input";
1115
+
1116
+ // components/ui/select.tsx
1117
+ import * as React17 from "react";
1118
+ import {
1119
+ CaretSortIcon,
1120
+ CheckIcon as CheckIcon3,
1121
+ ChevronDownIcon,
1122
+ ChevronUpIcon
1123
+ } from "@radix-ui/react-icons";
1124
+ import * as SelectPrimitive from "@radix-ui/react-select";
1125
+ import { jsx as jsx26, jsxs as jsxs14 } from "react/jsx-runtime";
1126
+ var Select = SelectPrimitive.Root;
1127
+ var SelectValue = SelectPrimitive.Value;
1128
+ var SelectTrigger = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs14(
1129
+ SelectPrimitive.Trigger,
1387
1130
  {
1388
1131
  ref,
1389
1132
  className: cn(
1390
- "flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",
1391
- inset && "pl-8",
1133
+ "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 placeholder:text-muted-foreground focus:outline-none focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",
1392
1134
  className
1393
1135
  ),
1394
1136
  ...props,
1395
1137
  children: [
1396
1138
  children,
1397
- /* @__PURE__ */ jsx28(ChevronRightIcon2, { className: "ml-auto h-4 w-4" })
1139
+ /* @__PURE__ */ jsx26(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx26(CaretSortIcon, { className: "h-4 w-4 opacity-50" }) })
1398
1140
  ]
1399
1141
  }
1400
1142
  ));
1401
- DropdownMenuSubTrigger.displayName = DropdownMenuPrimitive.SubTrigger.displayName;
1402
- var DropdownMenuSubContent = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx28(
1403
- DropdownMenuPrimitive.SubContent,
1143
+ SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
1144
+ var SelectScrollUpButton = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx26(
1145
+ SelectPrimitive.ScrollUpButton,
1404
1146
  {
1405
1147
  ref,
1406
1148
  className: cn(
1407
- "z-50 min-w-32 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",
1149
+ "flex cursor-default items-center justify-center py-1",
1408
1150
  className
1409
1151
  ),
1410
- ...props
1152
+ ...props,
1153
+ children: /* @__PURE__ */ jsx26(ChevronUpIcon, {})
1411
1154
  }
1412
1155
  ));
1413
- DropdownMenuSubContent.displayName = DropdownMenuPrimitive.SubContent.displayName;
1414
- var DropdownMenuContent = React17.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx28(DropdownMenuPrimitive.Portal, { children: /* @__PURE__ */ jsx28(
1415
- DropdownMenuPrimitive.Content,
1416
- {
1417
- ref,
1418
- sideOffset,
1419
- className: cn(
1420
- "z-50 min-w-32 overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-md",
1421
- "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",
1422
- className
1423
- ),
1424
- ...props
1425
- }
1426
- ) }));
1427
- DropdownMenuContent.displayName = DropdownMenuPrimitive.Content.displayName;
1428
- var DropdownMenuItem = React17.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx28(
1429
- DropdownMenuPrimitive.Item,
1156
+ SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
1157
+ var SelectScrollDownButton = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx26(
1158
+ SelectPrimitive.ScrollDownButton,
1430
1159
  {
1431
1160
  ref,
1432
1161
  className: cn(
1433
- "relative flex cursor-default select-none items-center 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",
1434
- inset && "pl-8",
1162
+ "flex cursor-default items-center justify-center py-1",
1435
1163
  className
1436
1164
  ),
1437
- ...props
1165
+ ...props,
1166
+ children: /* @__PURE__ */ jsx26(ChevronDownIcon, {})
1438
1167
  }
1439
1168
  ));
1440
- DropdownMenuItem.displayName = DropdownMenuPrimitive.Item.displayName;
1441
- var DropdownMenuCheckboxItem = React17.forwardRef(({ className, children, checked, ...props }, ref) => /* @__PURE__ */ jsxs15(
1442
- DropdownMenuPrimitive.CheckboxItem,
1169
+ SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
1170
+ var SelectContent = React17.forwardRef(({ className, children, position = "popper", ...props }, ref) => /* @__PURE__ */ jsx26(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs14(
1171
+ SelectPrimitive.Content,
1443
1172
  {
1444
1173
  ref,
1445
1174
  className: cn(
1446
- "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",
1175
+ "relative z-50 max-h-96 min-w-32 overflow-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",
1176
+ 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",
1447
1177
  className
1448
1178
  ),
1449
- checked,
1179
+ position,
1450
1180
  ...props,
1451
1181
  children: [
1452
- /* @__PURE__ */ jsx28("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx28(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx28(CheckIcon3, { className: "h-4 w-4" }) }) }),
1453
- children
1182
+ /* @__PURE__ */ jsx26(SelectScrollUpButton, {}),
1183
+ /* @__PURE__ */ jsx26(
1184
+ SelectPrimitive.Viewport,
1185
+ {
1186
+ className: cn(
1187
+ "p-1",
1188
+ position === "popper" && "h-(--radix-select-trigger-height) w-full min-w-(--radix-select-trigger-width)"
1189
+ ),
1190
+ children
1191
+ }
1192
+ ),
1193
+ /* @__PURE__ */ jsx26(SelectScrollDownButton, {})
1454
1194
  ]
1455
1195
  }
1456
- ));
1457
- DropdownMenuCheckboxItem.displayName = DropdownMenuPrimitive.CheckboxItem.displayName;
1458
- var DropdownMenuRadioItem = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs15(
1459
- DropdownMenuPrimitive.RadioItem,
1196
+ ) }));
1197
+ SelectContent.displayName = SelectPrimitive.Content.displayName;
1198
+ var SelectLabel = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx26(
1199
+ SelectPrimitive.Label,
1460
1200
  {
1461
1201
  ref,
1462
- className: cn(
1463
- "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",
1464
- className
1465
- ),
1466
- ...props,
1467
- children: [
1468
- /* @__PURE__ */ jsx28("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx28(DropdownMenuPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx28(DotFilledIcon, { className: "h-4 w-4 fill-current" }) }) }),
1469
- children
1470
- ]
1202
+ className: cn("px-2 py-1.5 text-sm font-semibold", className),
1203
+ ...props
1471
1204
  }
1472
1205
  ));
1473
- DropdownMenuRadioItem.displayName = DropdownMenuPrimitive.RadioItem.displayName;
1474
- var DropdownMenuLabel = React17.forwardRef(({ className, inset, ...props }, ref) => /* @__PURE__ */ jsx28(
1475
- DropdownMenuPrimitive.Label,
1206
+ SelectLabel.displayName = SelectPrimitive.Label.displayName;
1207
+ var SelectItem = React17.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs14(
1208
+ SelectPrimitive.Item,
1476
1209
  {
1477
1210
  ref,
1478
1211
  className: cn(
1479
- "px-2 py-1.5 text-sm font-semibold",
1480
- inset && "pl-8",
1212
+ "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",
1481
1213
  className
1482
1214
  ),
1483
- ...props
1215
+ ...props,
1216
+ children: [
1217
+ /* @__PURE__ */ jsx26("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx26(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx26(CheckIcon3, { className: "h-4 w-4" }) }) }),
1218
+ /* @__PURE__ */ jsx26(SelectPrimitive.ItemText, { children })
1219
+ ]
1484
1220
  }
1485
1221
  ));
1486
- DropdownMenuLabel.displayName = DropdownMenuPrimitive.Label.displayName;
1487
- var DropdownMenuSeparator = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx28(
1488
- DropdownMenuPrimitive.Separator,
1222
+ SelectItem.displayName = SelectPrimitive.Item.displayName;
1223
+ var SelectSeparator = React17.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx26(
1224
+ SelectPrimitive.Separator,
1489
1225
  {
1490
1226
  ref,
1491
1227
  className: cn("-mx-1 my-1 h-px bg-muted", className),
1492
1228
  ...props
1493
1229
  }
1494
1230
  ));
1495
- DropdownMenuSeparator.displayName = DropdownMenuPrimitive.Separator.displayName;
1496
- var DropdownMenuShortcut = ({
1497
- className,
1498
- ...props
1499
- }) => {
1500
- return /* @__PURE__ */ jsx28(
1501
- "span",
1502
- {
1503
- className: cn("ml-auto text-xs tracking-widest opacity-60", className),
1504
- ...props
1505
- }
1506
- );
1507
- };
1508
- DropdownMenuShortcut.displayName = "DropdownMenuShortcut";
1231
+ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
1509
1232
 
1510
1233
  // components/ui/table.tsx
1511
1234
  import * as React18 from "react";
1512
- import { jsx as jsx29 } from "react/jsx-runtime";
1513
- var Table = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsx29(
1235
+ import { jsx as jsx27 } from "react/jsx-runtime";
1236
+ var Table = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27("div", { className: "relative w-full overflow-auto", children: /* @__PURE__ */ jsx27(
1514
1237
  "table",
1515
1238
  {
1516
1239
  ref,
@@ -1519,9 +1242,9 @@ var Table = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */
1519
1242
  }
1520
1243
  ) }));
1521
1244
  Table.displayName = "Table";
1522
- var TableHeader = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
1245
+ var TableHeader = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27("thead", { ref, className: cn("[&_tr]:border-b", className), ...props }));
1523
1246
  TableHeader.displayName = "TableHeader";
1524
- var TableBody = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29(
1247
+ var TableBody = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
1525
1248
  "tbody",
1526
1249
  {
1527
1250
  ref,
@@ -1530,7 +1253,7 @@ var TableBody = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE_
1530
1253
  }
1531
1254
  ));
1532
1255
  TableBody.displayName = "TableBody";
1533
- var TableFooter = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29(
1256
+ var TableFooter = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
1534
1257
  "tfoot",
1535
1258
  {
1536
1259
  ref,
@@ -1542,7 +1265,7 @@ var TableFooter = React18.forwardRef(({ className, ...props }, ref) => /* @__PUR
1542
1265
  }
1543
1266
  ));
1544
1267
  TableFooter.displayName = "TableFooter";
1545
- var TableRow = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29(
1268
+ var TableRow = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
1546
1269
  "tr",
1547
1270
  {
1548
1271
  ref,
@@ -1554,7 +1277,7 @@ var TableRow = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__
1554
1277
  }
1555
1278
  ));
1556
1279
  TableRow.displayName = "TableRow";
1557
- var TableHead = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29(
1280
+ var TableHead = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
1558
1281
  "th",
1559
1282
  {
1560
1283
  ref,
@@ -1566,7 +1289,7 @@ var TableHead = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE_
1566
1289
  }
1567
1290
  ));
1568
1291
  TableHead.displayName = "TableHead";
1569
- var TableCell = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29(
1292
+ var TableCell = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
1570
1293
  "td",
1571
1294
  {
1572
1295
  ref,
@@ -1578,7 +1301,7 @@ var TableCell = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE_
1578
1301
  }
1579
1302
  ));
1580
1303
  TableCell.displayName = "TableCell";
1581
- var TableCaption = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx29(
1304
+ var TableCaption = React18.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx27(
1582
1305
  "caption",
1583
1306
  {
1584
1307
  ref,
@@ -1589,7 +1312,7 @@ var TableCaption = React18.forwardRef(({ className, ...props }, ref) => /* @__PU
1589
1312
  TableCaption.displayName = "TableCaption";
1590
1313
 
1591
1314
  // components/form-controls/data-table.tsx
1592
- import { jsx as jsx30, jsxs as jsxs16 } from "react/jsx-runtime";
1315
+ import { jsx as jsx28, jsxs as jsxs15 } from "react/jsx-runtime";
1593
1316
  function DataTable({
1594
1317
  data,
1595
1318
  columns,
@@ -1621,10 +1344,10 @@ function DataTable({
1621
1344
  rowSelection
1622
1345
  }
1623
1346
  });
1624
- return /* @__PURE__ */ jsxs16("div", { className: "w-full mt-4 relative", children: [
1625
- isLoading && /* @__PURE__ */ jsx30(Loader2, { className: "h-4 w-4 animate-spin absolute top-2 right-32" }),
1626
- filterField && /* @__PURE__ */ jsxs16("div", { className: "flex items-center justify-between", children: [
1627
- /* @__PURE__ */ jsx30(
1347
+ return /* @__PURE__ */ jsxs15("div", { className: "w-full mt-4 relative", children: [
1348
+ isLoading && /* @__PURE__ */ jsx28(Loader2, { className: "h-4 w-4 animate-spin absolute top-2 right-32" }),
1349
+ filterField && /* @__PURE__ */ jsxs15("div", { className: "flex items-center justify-between", children: [
1350
+ /* @__PURE__ */ jsx28(
1628
1351
  Input,
1629
1352
  {
1630
1353
  placeholder: `Filter by ${filterField}...`,
@@ -1633,15 +1356,15 @@ function DataTable({
1633
1356
  className: "max-w-sm"
1634
1357
  }
1635
1358
  ),
1636
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center space-x-4", children: [
1637
- refresh && /* @__PURE__ */ jsx30(Button, { variant: "outline", onClick: refresh, children: /* @__PURE__ */ jsx30(Icon2, { name: "RotateCcw", strokeWidth: 2, size: 20 }) }),
1638
- /* @__PURE__ */ jsxs16(DropdownMenu, { children: [
1639
- /* @__PURE__ */ jsx30(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs16(Button, { variant: "outline", children: [
1359
+ /* @__PURE__ */ jsxs15("div", { className: "flex items-center space-x-4", children: [
1360
+ refresh && /* @__PURE__ */ jsx28(Button, { variant: "outline", onClick: refresh, children: /* @__PURE__ */ jsx28(Icon, { name: "RotateCcw", strokeWidth: 2, size: 20 }) }),
1361
+ /* @__PURE__ */ jsxs15(DropdownMenu, { children: [
1362
+ /* @__PURE__ */ jsx28(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsxs15(Button, { variant: "outline", children: [
1640
1363
  "Columns ",
1641
- /* @__PURE__ */ jsx30(ChevronDownIcon2, { className: "ml-2 h-4 w-4" })
1364
+ /* @__PURE__ */ jsx28(ChevronDownIcon2, { className: "ml-2 h-4 w-4" })
1642
1365
  ] }) }),
1643
- /* @__PURE__ */ jsx30(DropdownMenuContent, { align: "end", children: table.getAllColumns().filter((column) => column.getCanHide()).map((column) => {
1644
- return /* @__PURE__ */ jsx30(
1366
+ /* @__PURE__ */ jsx28(DropdownMenuContent, { align: "end", children: table.getAllColumns().filter((column) => column.getCanHide()).map((column) => {
1367
+ return /* @__PURE__ */ jsx28(
1645
1368
  DropdownMenuCheckboxItem,
1646
1369
  {
1647
1370
  className: "capitalize",
@@ -1655,24 +1378,24 @@ function DataTable({
1655
1378
  ] })
1656
1379
  ] })
1657
1380
  ] }),
1658
- /* @__PURE__ */ jsx30("div", { className: "rounded-md border mt-4", children: /* @__PURE__ */ jsxs16(Table, { children: [
1659
- /* @__PURE__ */ jsx30(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx30(TableRow, { children: headerGroup.headers.map((header) => {
1660
- return /* @__PURE__ */ jsx30(TableHead, { children: header.isPlaceholder ? null : flexRender(
1381
+ /* @__PURE__ */ jsx28("div", { className: "rounded-md border mt-4", children: /* @__PURE__ */ jsxs15(Table, { children: [
1382
+ /* @__PURE__ */ jsx28(TableHeader, { children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx28(TableRow, { children: headerGroup.headers.map((header) => {
1383
+ return /* @__PURE__ */ jsx28(TableHead, { children: header.isPlaceholder ? null : flexRender(
1661
1384
  header.column.columnDef.header,
1662
1385
  header.getContext()
1663
1386
  ) }, header.id);
1664
1387
  }) }, headerGroup.id)) }),
1665
- /* @__PURE__ */ jsx30(TableBody, { children: table.getRowModel().rows?.length > 0 ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx30(
1388
+ /* @__PURE__ */ jsx28(TableBody, { children: table.getRowModel().rows?.length > 0 ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx28(
1666
1389
  TableRow,
1667
1390
  {
1668
1391
  "data-state": row.getIsSelected() && "selected",
1669
- children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx30(TableCell, { children: flexRender(
1392
+ children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx28(TableCell, { children: flexRender(
1670
1393
  cell.column.columnDef.cell,
1671
1394
  cell.getContext()
1672
1395
  ) }, cell.id))
1673
1396
  },
1674
1397
  row.id
1675
- )) : /* @__PURE__ */ jsx30(TableRow, { children: /* @__PURE__ */ jsx30(
1398
+ )) : /* @__PURE__ */ jsx28(TableRow, { children: /* @__PURE__ */ jsx28(
1676
1399
  TableCell,
1677
1400
  {
1678
1401
  colSpan: columns.length,
@@ -1680,18 +1403,18 @@ function DataTable({
1680
1403
  }
1681
1404
  ) }) })
1682
1405
  ] }) }),
1683
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center justify-end space-x-2 py-4", children: [
1684
- table.getAllColumns().some((col) => col.id === "select") && /* @__PURE__ */ jsxs16("div", { className: "flex-1 text-sm text-muted-foreground", children: [
1406
+ /* @__PURE__ */ jsxs15("div", { className: "flex items-center justify-end space-x-2 py-4", children: [
1407
+ table.getAllColumns().some((col) => col.id === "select") && /* @__PURE__ */ jsxs15("div", { className: "flex-1 text-sm text-muted-foreground", children: [
1685
1408
  table.getFilteredSelectedRowModel().rows.length,
1686
1409
  " of",
1687
1410
  " ",
1688
1411
  table.getFilteredRowModel().rows.length,
1689
1412
  " row(s) selected."
1690
1413
  ] }),
1691
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center space-x-6 lg:space-x-8", children: [
1692
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center space-x-2", children: [
1693
- /* @__PURE__ */ jsx30("p", { className: "text-sm font-medium", children: "Rows per page" }),
1694
- /* @__PURE__ */ jsxs16(
1414
+ /* @__PURE__ */ jsxs15("div", { className: "flex items-center space-x-6 lg:space-x-8", children: [
1415
+ /* @__PURE__ */ jsxs15("div", { className: "flex items-center space-x-2", children: [
1416
+ /* @__PURE__ */ jsx28("p", { className: "text-sm font-medium", children: "Rows per page" }),
1417
+ /* @__PURE__ */ jsxs15(
1695
1418
  Select,
1696
1419
  {
1697
1420
  value: `${table.getState().pagination.pageSize}`,
@@ -1699,26 +1422,26 @@ function DataTable({
1699
1422
  table.setPageSize(Number(value));
1700
1423
  },
1701
1424
  children: [
1702
- /* @__PURE__ */ jsx30(SelectTrigger, { className: "h-8 w-[70px]", children: /* @__PURE__ */ jsx30(
1425
+ /* @__PURE__ */ jsx28(SelectTrigger, { className: "h-8 w-[70px]", children: /* @__PURE__ */ jsx28(
1703
1426
  SelectValue,
1704
1427
  {
1705
1428
  placeholder: table.getState().pagination.pageSize
1706
1429
  }
1707
1430
  ) }),
1708
- /* @__PURE__ */ jsx30(SelectContent, { side: "top", children: [10, 20, 30, 40, 50].map((pageSize) => /* @__PURE__ */ jsx30(SelectItem, { value: `${pageSize}`, children: pageSize }, pageSize)) })
1431
+ /* @__PURE__ */ jsx28(SelectContent, { side: "top", children: [10, 20, 30, 40, 50].map((pageSize) => /* @__PURE__ */ jsx28(SelectItem, { value: `${pageSize}`, children: pageSize }, pageSize)) })
1709
1432
  ]
1710
1433
  }
1711
1434
  )
1712
1435
  ] }),
1713
- /* @__PURE__ */ jsxs16("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: [
1436
+ /* @__PURE__ */ jsxs15("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: [
1714
1437
  "Page ",
1715
1438
  table.getState().pagination.pageIndex + 1,
1716
1439
  " of",
1717
1440
  " ",
1718
1441
  table.getPageCount()
1719
1442
  ] }),
1720
- /* @__PURE__ */ jsxs16("div", { className: "flex items-center space-x-2", children: [
1721
- /* @__PURE__ */ jsxs16(
1443
+ /* @__PURE__ */ jsxs15("div", { className: "flex items-center space-x-2", children: [
1444
+ /* @__PURE__ */ jsxs15(
1722
1445
  Button,
1723
1446
  {
1724
1447
  variant: "outline",
@@ -1726,12 +1449,12 @@ function DataTable({
1726
1449
  onClick: () => table.setPageIndex(0),
1727
1450
  disabled: !table.getCanPreviousPage(),
1728
1451
  children: [
1729
- /* @__PURE__ */ jsx30("span", { className: "sr-only", children: "Go to first page" }),
1730
- /* @__PURE__ */ jsx30(DoubleArrowLeftIcon, { className: "h-4 w-4" })
1452
+ /* @__PURE__ */ jsx28("span", { className: "sr-only", children: "Go to first page" }),
1453
+ /* @__PURE__ */ jsx28(DoubleArrowLeftIcon, { className: "h-4 w-4" })
1731
1454
  ]
1732
1455
  }
1733
1456
  ),
1734
- /* @__PURE__ */ jsxs16(
1457
+ /* @__PURE__ */ jsxs15(
1735
1458
  Button,
1736
1459
  {
1737
1460
  variant: "outline",
@@ -1739,12 +1462,12 @@ function DataTable({
1739
1462
  onClick: () => table.previousPage(),
1740
1463
  disabled: !table.getCanPreviousPage(),
1741
1464
  children: [
1742
- /* @__PURE__ */ jsx30("span", { className: "sr-only", children: "Go to previous page" }),
1743
- /* @__PURE__ */ jsx30(ChevronLeftIcon, { className: "h-4 w-4" })
1465
+ /* @__PURE__ */ jsx28("span", { className: "sr-only", children: "Go to previous page" }),
1466
+ /* @__PURE__ */ jsx28(ChevronLeftIcon, { className: "h-4 w-4" })
1744
1467
  ]
1745
1468
  }
1746
1469
  ),
1747
- /* @__PURE__ */ jsxs16(
1470
+ /* @__PURE__ */ jsxs15(
1748
1471
  Button,
1749
1472
  {
1750
1473
  variant: "outline",
@@ -1752,12 +1475,12 @@ function DataTable({
1752
1475
  onClick: () => table.nextPage(),
1753
1476
  disabled: !table.getCanNextPage(),
1754
1477
  children: [
1755
- /* @__PURE__ */ jsx30("span", { className: "sr-only", children: "Go to next page" }),
1756
- /* @__PURE__ */ jsx30(ChevronRightIcon3, { className: "h-4 w-4" })
1478
+ /* @__PURE__ */ jsx28("span", { className: "sr-only", children: "Go to next page" }),
1479
+ /* @__PURE__ */ jsx28(ChevronRightIcon3, { className: "h-4 w-4" })
1757
1480
  ]
1758
1481
  }
1759
1482
  ),
1760
- /* @__PURE__ */ jsxs16(
1483
+ /* @__PURE__ */ jsxs15(
1761
1484
  Button,
1762
1485
  {
1763
1486
  variant: "outline",
@@ -1765,8 +1488,8 @@ function DataTable({
1765
1488
  onClick: () => table.setPageIndex(table.getPageCount() - 1),
1766
1489
  disabled: !table.getCanNextPage(),
1767
1490
  children: [
1768
- /* @__PURE__ */ jsx30("span", { className: "sr-only", children: "Go to last page" }),
1769
- /* @__PURE__ */ jsx30(DoubleArrowRightIcon, { className: "h-4 w-4" })
1491
+ /* @__PURE__ */ jsx28("span", { className: "sr-only", children: "Go to last page" }),
1492
+ /* @__PURE__ */ jsx28(DoubleArrowRightIcon, { className: "h-4 w-4" })
1770
1493
  ]
1771
1494
  }
1772
1495
  )
@@ -3350,14 +3073,14 @@ function cleanEscapedString(input) {
3350
3073
 
3351
3074
  // components/ui/calendar.tsx
3352
3075
  import { DayPicker } from "react-day-picker";
3353
- import { jsx as jsx31 } from "react/jsx-runtime";
3076
+ import { jsx as jsx29 } from "react/jsx-runtime";
3354
3077
  function Calendar({
3355
3078
  className,
3356
3079
  classNames,
3357
3080
  showOutsideDays = true,
3358
3081
  ...props
3359
3082
  }) {
3360
- return /* @__PURE__ */ jsx31(
3083
+ return /* @__PURE__ */ jsx29(
3361
3084
  DayPicker,
3362
3085
  {
3363
3086
  showOutsideDays,
@@ -3407,10 +3130,10 @@ function Calendar({
3407
3130
  Calendar.displayName = "Calendar";
3408
3131
 
3409
3132
  // components/form-controls/date-filter.tsx
3410
- import { Fragment as Fragment4, jsx as jsx32, jsxs as jsxs17 } from "react/jsx-runtime";
3133
+ import { Fragment as Fragment3, jsx as jsx30, jsxs as jsxs16 } from "react/jsx-runtime";
3411
3134
  function DateFilter({ className, date, setDate }) {
3412
- return /* @__PURE__ */ jsx32("div", { className: cn("grid gap-2", className), children: /* @__PURE__ */ jsxs17(Popover, { children: [
3413
- /* @__PURE__ */ jsx32(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs17(
3135
+ return /* @__PURE__ */ jsx30("div", { className: cn("grid gap-2", className), children: /* @__PURE__ */ jsxs16(Popover, { children: [
3136
+ /* @__PURE__ */ jsx30(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs16(
3414
3137
  Button,
3415
3138
  {
3416
3139
  id: "date",
@@ -3420,17 +3143,17 @@ function DateFilter({ className, date, setDate }) {
3420
3143
  !date && "text-muted-foreground"
3421
3144
  ),
3422
3145
  children: [
3423
- /* @__PURE__ */ jsx32(CalendarIcon, { className: "mr-2 h-4 w-4" }),
3424
- date?.from ? date.to ? /* @__PURE__ */ jsxs17(Fragment4, { children: [
3146
+ /* @__PURE__ */ jsx30(CalendarIcon, { className: "mr-2 h-4 w-4" }),
3147
+ date?.from ? date.to ? /* @__PURE__ */ jsxs16(Fragment3, { children: [
3425
3148
  format(date.from, "LLL dd, y"),
3426
3149
  " -",
3427
3150
  " ",
3428
3151
  format(date.to, "LLL dd, y")
3429
- ] }) : format(date.from, "LLL dd, y") : /* @__PURE__ */ jsx32("span", { children: "Pick a date" })
3152
+ ] }) : format(date.from, "LLL dd, y") : /* @__PURE__ */ jsx30("span", { children: "Pick a date" })
3430
3153
  ]
3431
3154
  }
3432
3155
  ) }),
3433
- /* @__PURE__ */ jsx32(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx32(
3156
+ /* @__PURE__ */ jsx30(PopoverContent, { className: "w-auto p-0", align: "start", children: /* @__PURE__ */ jsx30(
3434
3157
  Calendar,
3435
3158
  {
3436
3159
  initialFocus: true,
@@ -3446,7 +3169,7 @@ function DateFilter({ className, date, setDate }) {
3446
3169
 
3447
3170
  // components/form-controls/dialog.tsx
3448
3171
  import { icons as icons2 } from "lucide-react";
3449
- import { jsx as jsx33, jsxs as jsxs18 } from "react/jsx-runtime";
3172
+ import { jsx as jsx31, jsxs as jsxs17 } from "react/jsx-runtime";
3450
3173
  var Dialog2 = ({
3451
3174
  title,
3452
3175
  description,
@@ -3460,13 +3183,13 @@ var Dialog2 = ({
3460
3183
  actions
3461
3184
  }) => {
3462
3185
  const IconComponent = icon ? icons2[icon] : null;
3463
- return /* @__PURE__ */ jsxs18(Dialog, { open, onOpenChange, children: [
3464
- /* @__PURE__ */ jsx33(DialogTrigger, { children: trigger }),
3465
- /* @__PURE__ */ jsxs18(DialogContent, { className, children: [
3466
- /* @__PURE__ */ jsxs18(DialogHeader, { children: [
3467
- /* @__PURE__ */ jsxs18(DialogTitle, { className: "capitalize flex items-center gap-2 justify-between pr-8", children: [
3468
- /* @__PURE__ */ jsxs18("div", { className: "flex items-center gap-2", children: [
3469
- IconComponent && /* @__PURE__ */ jsx33(
3186
+ return /* @__PURE__ */ jsxs17(Dialog, { open, onOpenChange, children: [
3187
+ /* @__PURE__ */ jsx31(DialogTrigger, { children: trigger }),
3188
+ /* @__PURE__ */ jsxs17(DialogContent, { className, children: [
3189
+ /* @__PURE__ */ jsxs17(DialogHeader, { children: [
3190
+ /* @__PURE__ */ jsxs17(DialogTitle, { className: "capitalize flex items-center gap-2 justify-between pr-8", children: [
3191
+ /* @__PURE__ */ jsxs17("div", { className: "flex items-center gap-2", children: [
3192
+ IconComponent && /* @__PURE__ */ jsx31(
3470
3193
  IconComponent,
3471
3194
  {
3472
3195
  size: 20,
@@ -3476,7 +3199,7 @@ var Dialog2 = ({
3476
3199
  ),
3477
3200
  title
3478
3201
  ] }),
3479
- actions && /* @__PURE__ */ jsx33("div", { className: "flex items-center gap-2", children: actions.map((action) => /* @__PURE__ */ jsxs18(
3202
+ actions && /* @__PURE__ */ jsx31("div", { className: "flex items-center gap-2", children: actions.map((action) => /* @__PURE__ */ jsxs17(
3480
3203
  Button2,
3481
3204
  {
3482
3205
  variant: action.type,
@@ -3485,8 +3208,8 @@ var Dialog2 = ({
3485
3208
  disabled: action.disabled,
3486
3209
  children: [
3487
3210
  action.label,
3488
- action.icon && /* @__PURE__ */ jsx33(
3489
- Icon2,
3211
+ action.icon && /* @__PURE__ */ jsx31(
3212
+ Icon,
3490
3213
  {
3491
3214
  name: action.icon,
3492
3215
  className: cn(action.iconClassName),
@@ -3499,7 +3222,7 @@ var Dialog2 = ({
3499
3222
  action.label
3500
3223
  )) })
3501
3224
  ] }),
3502
- /* @__PURE__ */ jsx33(DialogDescription, { children: description })
3225
+ /* @__PURE__ */ jsx31(DialogDescription, { children: description })
3503
3226
  ] }),
3504
3227
  children
3505
3228
  ] })
@@ -3509,11 +3232,11 @@ var Dialog2 = ({
3509
3232
  // components/ui/drawer.tsx
3510
3233
  import * as React20 from "react";
3511
3234
  import { Drawer as DrawerPrimitive } from "vaul";
3512
- import { jsx as jsx34, jsxs as jsxs19 } from "react/jsx-runtime";
3235
+ import { jsx as jsx32, jsxs as jsxs18 } from "react/jsx-runtime";
3513
3236
  var Drawer = ({
3514
3237
  shouldScaleBackground = true,
3515
3238
  ...props
3516
- }) => /* @__PURE__ */ jsx34(
3239
+ }) => /* @__PURE__ */ jsx32(
3517
3240
  DrawerPrimitive.Root,
3518
3241
  {
3519
3242
  shouldScaleBackground,
@@ -3524,7 +3247,7 @@ Drawer.displayName = "Drawer";
3524
3247
  var DrawerTrigger = DrawerPrimitive.Trigger;
3525
3248
  var DrawerPortal = DrawerPrimitive.Portal;
3526
3249
  var DrawerClose = DrawerPrimitive.Close;
3527
- var DrawerOverlay = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx34(
3250
+ var DrawerOverlay = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx32(
3528
3251
  DrawerPrimitive.Overlay,
3529
3252
  {
3530
3253
  ref,
@@ -3533,9 +3256,9 @@ var DrawerOverlay = React20.forwardRef(({ className, ...props }, ref) => /* @__P
3533
3256
  }
3534
3257
  ));
3535
3258
  DrawerOverlay.displayName = DrawerPrimitive.Overlay.displayName;
3536
- var DrawerContent = React20.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs19(DrawerPortal, { children: [
3537
- /* @__PURE__ */ jsx34(DrawerOverlay, {}),
3538
- /* @__PURE__ */ jsxs19(
3259
+ var DrawerContent = React20.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs18(DrawerPortal, { children: [
3260
+ /* @__PURE__ */ jsx32(DrawerOverlay, {}),
3261
+ /* @__PURE__ */ jsxs18(
3539
3262
  DrawerPrimitive.Content,
3540
3263
  {
3541
3264
  ref,
@@ -3545,7 +3268,7 @@ var DrawerContent = React20.forwardRef(({ className, children, ...props }, ref)
3545
3268
  ),
3546
3269
  ...props,
3547
3270
  children: [
3548
- /* @__PURE__ */ jsx34("div", { className: "mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted" }),
3271
+ /* @__PURE__ */ jsx32("div", { className: "mx-auto mt-4 h-2 w-[100px] rounded-full bg-muted" }),
3549
3272
  children
3550
3273
  ]
3551
3274
  }
@@ -3555,7 +3278,7 @@ DrawerContent.displayName = "DrawerContent";
3555
3278
  var DrawerHeader = ({
3556
3279
  className,
3557
3280
  ...props
3558
- }) => /* @__PURE__ */ jsx34(
3281
+ }) => /* @__PURE__ */ jsx32(
3559
3282
  "div",
3560
3283
  {
3561
3284
  className: cn("grid gap-1.5 p-4 text-center sm:text-left", className),
@@ -3566,7 +3289,7 @@ DrawerHeader.displayName = "DrawerHeader";
3566
3289
  var DrawerFooter = ({
3567
3290
  className,
3568
3291
  ...props
3569
- }) => /* @__PURE__ */ jsx34(
3292
+ }) => /* @__PURE__ */ jsx32(
3570
3293
  "div",
3571
3294
  {
3572
3295
  className: cn("mt-auto flex flex-col gap-2 p-4", className),
@@ -3574,7 +3297,7 @@ var DrawerFooter = ({
3574
3297
  }
3575
3298
  );
3576
3299
  DrawerFooter.displayName = "DrawerFooter";
3577
- var DrawerTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx34(
3300
+ var DrawerTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx32(
3578
3301
  DrawerPrimitive.Title,
3579
3302
  {
3580
3303
  ref,
@@ -3586,7 +3309,7 @@ var DrawerTitle = React20.forwardRef(({ className, ...props }, ref) => /* @__PUR
3586
3309
  }
3587
3310
  ));
3588
3311
  DrawerTitle.displayName = DrawerPrimitive.Title.displayName;
3589
- var DrawerDescription = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx34(
3312
+ var DrawerDescription = React20.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx32(
3590
3313
  DrawerPrimitive.Description,
3591
3314
  {
3592
3315
  ref,
@@ -3599,22 +3322,22 @@ DrawerDescription.displayName = DrawerPrimitive.Description.displayName;
3599
3322
  // components/ui/scroll-area.tsx
3600
3323
  import * as React21 from "react";
3601
3324
  import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
3602
- import { jsx as jsx35, jsxs as jsxs20 } from "react/jsx-runtime";
3603
- var ScrollArea = React21.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs20(
3325
+ import { jsx as jsx33, jsxs as jsxs19 } from "react/jsx-runtime";
3326
+ var ScrollArea = React21.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs19(
3604
3327
  ScrollAreaPrimitive.Root,
3605
3328
  {
3606
3329
  ref,
3607
3330
  className: cn("relative overflow-hidden", className),
3608
3331
  ...props,
3609
3332
  children: [
3610
- /* @__PURE__ */ jsx35(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children }),
3611
- /* @__PURE__ */ jsx35(ScrollBar, {}),
3612
- /* @__PURE__ */ jsx35(ScrollAreaPrimitive.Corner, {})
3333
+ /* @__PURE__ */ jsx33(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children }),
3334
+ /* @__PURE__ */ jsx33(ScrollBar, {}),
3335
+ /* @__PURE__ */ jsx33(ScrollAreaPrimitive.Corner, {})
3613
3336
  ]
3614
3337
  }
3615
3338
  ));
3616
3339
  ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
3617
- var ScrollBar = React21.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx35(
3340
+ var ScrollBar = React21.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx33(
3618
3341
  ScrollAreaPrimitive.ScrollAreaScrollbar,
3619
3342
  {
3620
3343
  ref,
@@ -3626,13 +3349,13 @@ var ScrollBar = React21.forwardRef(({ className, orientation = "vertical", ...pr
3626
3349
  className
3627
3350
  ),
3628
3351
  ...props,
3629
- children: /* @__PURE__ */ jsx35(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
3352
+ children: /* @__PURE__ */ jsx33(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
3630
3353
  }
3631
3354
  ));
3632
3355
  ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
3633
3356
 
3634
3357
  // components/form-controls/drawer.tsx
3635
- import { jsx as jsx36, jsxs as jsxs21 } from "react/jsx-runtime";
3358
+ import { jsx as jsx34, jsxs as jsxs20 } from "react/jsx-runtime";
3636
3359
  var Drawer2 = ({
3637
3360
  title,
3638
3361
  trigger,
@@ -3642,7 +3365,7 @@ var Drawer2 = ({
3642
3365
  setOpenDrawer,
3643
3366
  ...props
3644
3367
  }) => {
3645
- return /* @__PURE__ */ jsxs21(
3368
+ return /* @__PURE__ */ jsxs20(
3646
3369
  Drawer,
3647
3370
  {
3648
3371
  direction: "right",
@@ -3650,11 +3373,11 @@ var Drawer2 = ({
3650
3373
  onOpenChange: setOpenDrawer,
3651
3374
  ...props,
3652
3375
  children: [
3653
- trigger && /* @__PURE__ */ jsx36(DrawerTrigger, { children: trigger }),
3654
- /* @__PURE__ */ jsx36(DrawerContent, { className: "h-screen top-0 right-0 left-auto mt-0 w-[500px] rounded-none", children: /* @__PURE__ */ jsx36(ScrollArea, { className: "h-screen", children: /* @__PURE__ */ jsxs21("div", { className: "mx-auto w-full p-5", children: [
3655
- /* @__PURE__ */ jsxs21(DrawerHeader, { children: [
3656
- /* @__PURE__ */ jsx36(DrawerTitle, { children: title }),
3657
- /* @__PURE__ */ jsx36(DrawerDescription, { children: description })
3376
+ trigger && /* @__PURE__ */ jsx34(DrawerTrigger, { children: trigger }),
3377
+ /* @__PURE__ */ jsx34(DrawerContent, { className: "h-screen top-0 right-0 left-auto mt-0 w-[500px] rounded-none", children: /* @__PURE__ */ jsx34(ScrollArea, { className: "h-screen", children: /* @__PURE__ */ jsxs20("div", { className: "mx-auto w-full p-5", children: [
3378
+ /* @__PURE__ */ jsxs20(DrawerHeader, { children: [
3379
+ /* @__PURE__ */ jsx34(DrawerTitle, { children: title }),
3380
+ /* @__PURE__ */ jsx34(DrawerDescription, { children: description })
3658
3381
  ] }),
3659
3382
  children
3660
3383
  ] }) }) })
@@ -3664,16 +3387,16 @@ var Drawer2 = ({
3664
3387
  };
3665
3388
 
3666
3389
  // components/form-controls/dropdown-menu.tsx
3667
- import { jsx as jsx37, jsxs as jsxs22 } from "react/jsx-runtime";
3390
+ import { jsx as jsx35, jsxs as jsxs21 } from "react/jsx-runtime";
3668
3391
  var DropdownMenu2 = ({
3669
3392
  trigger,
3670
3393
  items,
3671
3394
  className = "",
3672
3395
  onClick
3673
3396
  }) => {
3674
- return /* @__PURE__ */ jsxs22(DropdownMenu, { children: [
3675
- /* @__PURE__ */ jsx37(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx37("div", { className, children: trigger }) }),
3676
- /* @__PURE__ */ jsx37(DropdownMenuContent, { className: "cursor-pointer", children: items.map((item, index) => /* @__PURE__ */ jsx37(
3397
+ return /* @__PURE__ */ jsxs21(DropdownMenu, { children: [
3398
+ /* @__PURE__ */ jsx35(DropdownMenuTrigger, { asChild: true, children: /* @__PURE__ */ jsx35("div", { className, children: trigger }) }),
3399
+ /* @__PURE__ */ jsx35(DropdownMenuContent, { className: "cursor-pointer", children: items.map((item, index) => /* @__PURE__ */ jsx35(
3677
3400
  DropdownMenuItem,
3678
3401
  {
3679
3402
  className: "cursor-pointer!",
@@ -3686,8 +3409,8 @@ var DropdownMenu2 = ({
3686
3409
  };
3687
3410
 
3688
3411
  // components/form-controls/duration-input.tsx
3689
- import { useEffect as useEffect3, useState as useState4 } from "react";
3690
- import { jsx as jsx38, jsxs as jsxs23 } from "react/jsx-runtime";
3412
+ import { useEffect as useEffect2, useState as useState3 } from "react";
3413
+ import { jsx as jsx36, jsxs as jsxs22 } from "react/jsx-runtime";
3691
3414
  var unitOptions = [
3692
3415
  { label: "Seconds", value: "s", ns: 1e9 },
3693
3416
  { label: "Minutes", value: "m", ns: 6e10 },
@@ -3718,10 +3441,10 @@ function toGoCompatibleDuration(amount, unit) {
3718
3441
  }
3719
3442
  }
3720
3443
  function DurationInput({ value, onChange }) {
3721
- const [amount, setAmount] = useState4("");
3722
- const [unit, setUnit] = useState4("h");
3723
- const [userInteracted, setUserInteracted] = useState4(false);
3724
- useEffect3(() => {
3444
+ const [amount, setAmount] = useState3("");
3445
+ const [unit, setUnit] = useState3("h");
3446
+ const [userInteracted, setUserInteracted] = useState3(false);
3447
+ useEffect2(() => {
3725
3448
  if (userInteracted) return;
3726
3449
  if (value === void 0 || value === null || value === "") {
3727
3450
  setAmount("");
@@ -3770,8 +3493,8 @@ function DurationInput({ value, onChange }) {
3770
3493
  onChange("");
3771
3494
  }
3772
3495
  };
3773
- return /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2", children: [
3774
- /* @__PURE__ */ jsx38(
3496
+ return /* @__PURE__ */ jsxs22("div", { className: "flex items-center gap-2", children: [
3497
+ /* @__PURE__ */ jsx36(
3775
3498
  Input,
3776
3499
  {
3777
3500
  type: "number",
@@ -3781,23 +3504,46 @@ function DurationInput({ value, onChange }) {
3781
3504
  className: "w-20"
3782
3505
  }
3783
3506
  ),
3784
- /* @__PURE__ */ jsxs23(Select, { value: unit, onValueChange: handleUnitChange, children: [
3785
- /* @__PURE__ */ jsx38(SelectTrigger, { className: "w-24", children: /* @__PURE__ */ jsx38(SelectValue, {}) }),
3786
- /* @__PURE__ */ jsx38(SelectContent, { children: unitOptions.map((opt) => /* @__PURE__ */ jsx38(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
3507
+ /* @__PURE__ */ jsxs22(Select, { value: unit, onValueChange: handleUnitChange, children: [
3508
+ /* @__PURE__ */ jsx36(SelectTrigger, { className: "w-24", children: /* @__PURE__ */ jsx36(SelectValue, {}) }),
3509
+ /* @__PURE__ */ jsx36(SelectContent, { children: unitOptions.map((opt) => /* @__PURE__ */ jsx36(SelectItem, { value: opt.value, children: opt.label }, opt.value)) })
3787
3510
  ] })
3788
3511
  ] });
3789
3512
  }
3790
3513
 
3791
3514
  // components/form-controls/filter-combobox.tsx
3792
- import { useState as useState5 } from "react";
3515
+ import { useState as useState4 } from "react";
3793
3516
  import { CheckIcon as CheckIcon4 } from "@radix-ui/react-icons";
3794
3517
 
3518
+ // components/ui/badge.tsx
3519
+ import { cva as cva4 } from "class-variance-authority";
3520
+ import { jsx as jsx37 } from "react/jsx-runtime";
3521
+ var badgeVariants = cva4(
3522
+ "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",
3523
+ {
3524
+ variants: {
3525
+ variant: {
3526
+ default: "border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",
3527
+ secondary: "border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",
3528
+ destructive: "border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",
3529
+ outline: "text-foreground"
3530
+ }
3531
+ },
3532
+ defaultVariants: {
3533
+ variant: "default"
3534
+ }
3535
+ }
3536
+ );
3537
+ function Badge({ className, variant, ...props }) {
3538
+ return /* @__PURE__ */ jsx37("div", { className: cn(badgeVariants({ variant }), className), ...props });
3539
+ }
3540
+
3795
3541
  // components/ui/separator.tsx
3796
3542
  import * as React22 from "react";
3797
3543
  import * as SeparatorPrimitive from "@radix-ui/react-separator";
3798
- import { jsx as jsx39 } from "react/jsx-runtime";
3544
+ import { jsx as jsx38 } from "react/jsx-runtime";
3799
3545
  var Separator3 = React22.forwardRef(
3800
- ({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx39(
3546
+ ({ className, orientation = "horizontal", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx38(
3801
3547
  SeparatorPrimitive.Root,
3802
3548
  {
3803
3549
  ref,
@@ -3815,9 +3561,9 @@ var Separator3 = React22.forwardRef(
3815
3561
  Separator3.displayName = SeparatorPrimitive.Root.displayName;
3816
3562
 
3817
3563
  // components/form-controls/filter-combobox.tsx
3818
- import { Fragment as Fragment5, jsx as jsx40, jsxs as jsxs24 } from "react/jsx-runtime";
3564
+ import { Fragment as Fragment4, jsx as jsx39, jsxs as jsxs23 } from "react/jsx-runtime";
3819
3565
  function FilterCombobox({ title, options, clearLabel }) {
3820
- const [selectedValues, setSelectedValues] = useState5([]);
3566
+ const [selectedValues, setSelectedValues] = useState4([]);
3821
3567
  const handleValueSelect = (value) => {
3822
3568
  if (selectedValues.some((v) => v.value === value.value)) {
3823
3569
  setSelectedValues(selectedValues.filter((v) => v.value !== value.value));
@@ -3825,13 +3571,13 @@ function FilterCombobox({ title, options, clearLabel }) {
3825
3571
  setSelectedValues([...selectedValues, value]);
3826
3572
  }
3827
3573
  };
3828
- return /* @__PURE__ */ jsxs24(Popover, { children: [
3829
- /* @__PURE__ */ jsx40(PopoverTrigger, { asChild: true, className: "w-fit", children: /* @__PURE__ */ jsxs24(Button, { variant: "outline", size: "sm", className: "h-8 border-dashed", children: [
3830
- /* @__PURE__ */ jsx40(Icon2, { name: "CirclePlus", className: "h-4 w-4 mr-2" }),
3574
+ return /* @__PURE__ */ jsxs23(Popover, { children: [
3575
+ /* @__PURE__ */ jsx39(PopoverTrigger, { asChild: true, className: "w-fit", children: /* @__PURE__ */ jsxs23(Button, { variant: "outline", size: "sm", className: "h-8 border-dashed", children: [
3576
+ /* @__PURE__ */ jsx39(Icon, { name: "CirclePlus", className: "h-4 w-4 mr-2" }),
3831
3577
  title,
3832
- selectedValues?.length > 0 && /* @__PURE__ */ jsxs24("div", { className: "flex items-center gap-2 ml-2", children: [
3833
- /* @__PURE__ */ jsx40(Separator3, { orientation: "vertical", className: "h-4" }),
3834
- /* @__PURE__ */ jsx40(Fragment5, { children: selectedValues.length > 2 ? /* @__PURE__ */ jsxs24(
3578
+ selectedValues?.length > 0 && /* @__PURE__ */ jsxs23("div", { className: "flex items-center gap-2 ml-2", children: [
3579
+ /* @__PURE__ */ jsx39(Separator3, { orientation: "vertical", className: "h-4" }),
3580
+ /* @__PURE__ */ jsx39(Fragment4, { children: selectedValues.length > 2 ? /* @__PURE__ */ jsxs23(
3835
3581
  Badge,
3836
3582
  {
3837
3583
  variant: "secondary",
@@ -3843,7 +3589,7 @@ function FilterCombobox({ title, options, clearLabel }) {
3843
3589
  }
3844
3590
  ) : options.filter(
3845
3591
  (option) => selectedValues.some((item) => item.value === option.value)
3846
- ).map((option) => /* @__PURE__ */ jsx40(
3592
+ ).map((option) => /* @__PURE__ */ jsx39(
3847
3593
  Badge,
3848
3594
  {
3849
3595
  variant: "secondary",
@@ -3854,40 +3600,40 @@ function FilterCombobox({ title, options, clearLabel }) {
3854
3600
  )) })
3855
3601
  ] })
3856
3602
  ] }) }),
3857
- /* @__PURE__ */ jsx40(PopoverContent, { className: "w-[200px] p-0", align: "start", children: /* @__PURE__ */ jsxs24(Command, { children: [
3858
- /* @__PURE__ */ jsx40(CommandInput, { placeholder: title }),
3859
- /* @__PURE__ */ jsxs24(CommandList, { children: [
3860
- /* @__PURE__ */ jsx40(CommandEmpty, { children: "No results found." }),
3861
- /* @__PURE__ */ jsx40(CommandGroup, { children: options.map((option) => {
3603
+ /* @__PURE__ */ jsx39(PopoverContent, { className: "w-[200px] p-0", align: "start", children: /* @__PURE__ */ jsxs23(Command, { children: [
3604
+ /* @__PURE__ */ jsx39(CommandInput, { placeholder: title }),
3605
+ /* @__PURE__ */ jsxs23(CommandList, { children: [
3606
+ /* @__PURE__ */ jsx39(CommandEmpty, { children: "No results found." }),
3607
+ /* @__PURE__ */ jsx39(CommandGroup, { children: options.map((option) => {
3862
3608
  const isSelected = selectedValues.some(
3863
3609
  (item) => item.value === option.value
3864
3610
  );
3865
- return /* @__PURE__ */ jsxs24(
3611
+ return /* @__PURE__ */ jsxs23(
3866
3612
  CommandItem,
3867
3613
  {
3868
3614
  onSelect: () => handleValueSelect(option),
3869
3615
  className: "cursor-pointer",
3870
3616
  children: [
3871
- /* @__PURE__ */ jsx40(
3617
+ /* @__PURE__ */ jsx39(
3872
3618
  "div",
3873
3619
  {
3874
3620
  className: cn(
3875
3621
  "mr-2 flex h-4 w-4 items-center justify-center rounded-sm border border-primary",
3876
3622
  isSelected ? "bg-primary text-primary-foreground" : "opacity-50 [&_svg]:invisible"
3877
3623
  ),
3878
- children: /* @__PURE__ */ jsx40(CheckIcon4, { className: cn("h-4 w-4") })
3624
+ children: /* @__PURE__ */ jsx39(CheckIcon4, { className: cn("h-4 w-4") })
3879
3625
  }
3880
3626
  ),
3881
- option?.icon && /* @__PURE__ */ jsx40(Icon2, { name: option?.icon, className: "mr-2 h-4 w-4 text-muted-foreground" }),
3882
- /* @__PURE__ */ jsx40("span", { children: option.label })
3627
+ option?.icon && /* @__PURE__ */ jsx39(Icon, { name: option?.icon, className: "mr-2 h-4 w-4 text-muted-foreground" }),
3628
+ /* @__PURE__ */ jsx39("span", { children: option.label })
3883
3629
  ]
3884
3630
  },
3885
3631
  option.value
3886
3632
  );
3887
3633
  }) }),
3888
- selectedValues.length > 0 && /* @__PURE__ */ jsxs24(Fragment5, { children: [
3889
- /* @__PURE__ */ jsx40(CommandSeparator, {}),
3890
- /* @__PURE__ */ jsx40(CommandGroup, { children: /* @__PURE__ */ jsx40(
3634
+ selectedValues.length > 0 && /* @__PURE__ */ jsxs23(Fragment4, { children: [
3635
+ /* @__PURE__ */ jsx39(CommandSeparator, {}),
3636
+ /* @__PURE__ */ jsx39(CommandGroup, { children: /* @__PURE__ */ jsx39(
3891
3637
  CommandItem,
3892
3638
  {
3893
3639
  onSelect: () => setSelectedValues([]),
@@ -3902,7 +3648,7 @@ function FilterCombobox({ title, options, clearLabel }) {
3902
3648
  }
3903
3649
 
3904
3650
  // components/form-controls/form-combobox.tsx
3905
- import { jsx as jsx41, jsxs as jsxs25 } from "react/jsx-runtime";
3651
+ import { jsx as jsx40, jsxs as jsxs24 } from "react/jsx-runtime";
3906
3652
  function FormCombobox({
3907
3653
  title,
3908
3654
  name,
@@ -3911,15 +3657,15 @@ function FormCombobox({
3911
3657
  data,
3912
3658
  label
3913
3659
  }) {
3914
- return /* @__PURE__ */ jsx41(
3660
+ return /* @__PURE__ */ jsx40(
3915
3661
  FormField,
3916
3662
  {
3917
3663
  control,
3918
3664
  name,
3919
3665
  rules,
3920
- render: ({ field }) => /* @__PURE__ */ jsxs25(FormItem, { children: [
3921
- title && /* @__PURE__ */ jsx41(FormLabel, { children: title }),
3922
- /* @__PURE__ */ jsx41(FormControl, { children: /* @__PURE__ */ jsx41(
3666
+ render: ({ field }) => /* @__PURE__ */ jsxs24(FormItem, { children: [
3667
+ title && /* @__PURE__ */ jsx40(FormLabel, { children: title }),
3668
+ /* @__PURE__ */ jsx40(FormControl, { children: /* @__PURE__ */ jsx40(
3923
3669
  Combobox,
3924
3670
  {
3925
3671
  label,
@@ -3928,7 +3674,7 @@ function FormCombobox({
3928
3674
  onChange: (value) => field.onChange(value)
3929
3675
  }
3930
3676
  ) }),
3931
- /* @__PURE__ */ jsx41(FormMessage, {})
3677
+ /* @__PURE__ */ jsx40(FormMessage, {})
3932
3678
  ] })
3933
3679
  }
3934
3680
  );
@@ -3936,7 +3682,7 @@ function FormCombobox({
3936
3682
 
3937
3683
  // components/form-controls/form-layout.tsx
3938
3684
  import { FormProvider as FormProvider2 } from "react-hook-form";
3939
- import { jsx as jsx42, jsxs as jsxs26 } from "react/jsx-runtime";
3685
+ import { jsx as jsx41, jsxs as jsxs25 } from "react/jsx-runtime";
3940
3686
  function FormLayout({
3941
3687
  children,
3942
3688
  formTitle,
@@ -3948,34 +3694,34 @@ function FormLayout({
3948
3694
  PrimaryActionText,
3949
3695
  CancelText
3950
3696
  }) {
3951
- return /* @__PURE__ */ jsx42(FormProvider2, { ...form, children: /* @__PURE__ */ jsxs26("form", { onSubmit: onSave, className: `flex flex-col gap-6 ${className}`, children: [
3952
- /* @__PURE__ */ jsxs26("div", { className: "flex items-center justify-between w-full border-b pb-6 border-border", children: [
3953
- /* @__PURE__ */ jsxs26("div", { className: "flex flex-col", children: [
3954
- /* @__PURE__ */ jsx42("p", { className: "font-semibold text-lg", children: formTitle }),
3955
- /* @__PURE__ */ jsx42("p", { className: "text-gray-500", children: formDescription })
3697
+ return /* @__PURE__ */ jsx41(FormProvider2, { ...form, children: /* @__PURE__ */ jsxs25("form", { onSubmit: onSave, className: `flex flex-col gap-6 ${className}`, children: [
3698
+ /* @__PURE__ */ jsxs25("div", { className: "flex items-center justify-between w-full border-b pb-6 border-border", children: [
3699
+ /* @__PURE__ */ jsxs25("div", { className: "flex flex-col", children: [
3700
+ /* @__PURE__ */ jsx41("p", { className: "font-semibold text-lg", children: formTitle }),
3701
+ /* @__PURE__ */ jsx41("p", { className: "text-gray-500", children: formDescription })
3956
3702
  ] }),
3957
- /* @__PURE__ */ jsxs26("div", { className: "flex items-center gap-2", children: [
3958
- /* @__PURE__ */ jsx42(Button2, { type: "button", onClick: onCanel, variant: "secondary", children: CancelText }),
3959
- /* @__PURE__ */ jsx42(Button2, { type: "submit", children: PrimaryActionText })
3703
+ /* @__PURE__ */ jsxs25("div", { className: "flex items-center gap-2", children: [
3704
+ /* @__PURE__ */ jsx41(Button2, { type: "button", onClick: onCanel, variant: "secondary", children: CancelText }),
3705
+ /* @__PURE__ */ jsx41(Button2, { type: "submit", children: PrimaryActionText })
3960
3706
  ] })
3961
3707
  ] }),
3962
3708
  children,
3963
- /* @__PURE__ */ jsxs26("div", { className: "flex items-center gap-2 justify-end", children: [
3964
- /* @__PURE__ */ jsx42(Button2, { type: "button", onClick: onCanel, variant: "secondary", children: CancelText }),
3965
- /* @__PURE__ */ jsx42(Button2, { type: "submit", children: PrimaryActionText })
3709
+ /* @__PURE__ */ jsxs25("div", { className: "flex items-center gap-2 justify-end", children: [
3710
+ /* @__PURE__ */ jsx41(Button2, { type: "button", onClick: onCanel, variant: "secondary", children: CancelText }),
3711
+ /* @__PURE__ */ jsx41(Button2, { type: "submit", children: PrimaryActionText })
3966
3712
  ] })
3967
3713
  ] }) });
3968
3714
  }
3969
3715
 
3970
3716
  // components/form-controls/form-row.tsx
3971
- import { jsx as jsx43, jsxs as jsxs27 } from "react/jsx-runtime";
3717
+ import { jsx as jsx42, jsxs as jsxs26 } from "react/jsx-runtime";
3972
3718
  function FormRow({ children, title, description }) {
3973
- return /* @__PURE__ */ jsxs27("div", { className: "grid grid-cols-3 w-full border-b pb-6 border-border", children: [
3974
- /* @__PURE__ */ jsxs27("div", { className: "flex flex-col", children: [
3975
- /* @__PURE__ */ jsx43("p", { className: "font-medium", children: title }),
3976
- /* @__PURE__ */ jsx43("p", { className: "text-gray-500 text-sm", children: description })
3719
+ return /* @__PURE__ */ jsxs26("div", { className: "grid grid-cols-3 w-full border-b pb-6 border-border", children: [
3720
+ /* @__PURE__ */ jsxs26("div", { className: "flex flex-col", children: [
3721
+ /* @__PURE__ */ jsx42("p", { className: "font-medium", children: title }),
3722
+ /* @__PURE__ */ jsx42("p", { className: "text-gray-500 text-sm", children: description })
3977
3723
  ] }),
3978
- /* @__PURE__ */ jsx43("div", { className: "col-span-2 w-[80%]", children })
3724
+ /* @__PURE__ */ jsx42("div", { className: "col-span-2 w-[80%]", children })
3979
3725
  ] });
3980
3726
  }
3981
3727
 
@@ -3983,9 +3729,9 @@ function FormRow({ children, title, description }) {
3983
3729
  import * as React23 from "react";
3984
3730
  import { CheckIcon as CheckIcon5 } from "@radix-ui/react-icons";
3985
3731
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
3986
- import { jsx as jsx44 } from "react/jsx-runtime";
3732
+ import { jsx as jsx43 } from "react/jsx-runtime";
3987
3733
  var RadioGroup2 = React23.forwardRef(({ className, ...props }, ref) => {
3988
- return /* @__PURE__ */ jsx44(
3734
+ return /* @__PURE__ */ jsx43(
3989
3735
  RadioGroupPrimitive.Root,
3990
3736
  {
3991
3737
  className: cn("grid gap-2", className),
@@ -3996,7 +3742,7 @@ var RadioGroup2 = React23.forwardRef(({ className, ...props }, ref) => {
3996
3742
  });
3997
3743
  RadioGroup2.displayName = RadioGroupPrimitive.Root.displayName;
3998
3744
  var RadioGroupItem = React23.forwardRef(({ className, ...props }, ref) => {
3999
- return /* @__PURE__ */ jsx44(
3745
+ return /* @__PURE__ */ jsx43(
4000
3746
  RadioGroupPrimitive.Item,
4001
3747
  {
4002
3748
  ref,
@@ -4005,7 +3751,7 @@ var RadioGroupItem = React23.forwardRef(({ className, ...props }, ref) => {
4005
3751
  className
4006
3752
  ),
4007
3753
  ...props,
4008
- children: /* @__PURE__ */ jsx44(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx44(CheckIcon5, { className: "h-3.5 w-3.5 fill-primary" }) })
3754
+ children: /* @__PURE__ */ jsx43(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx43(CheckIcon5, { className: "h-3.5 w-3.5 fill-primary" }) })
4009
3755
  }
4010
3756
  );
4011
3757
  });
@@ -4016,11 +3762,11 @@ import * as React24 from "react";
4016
3762
  import * as SheetPrimitive from "@radix-ui/react-dialog";
4017
3763
  import { Cross2Icon as Cross2Icon2 } from "@radix-ui/react-icons";
4018
3764
  import { cva as cva5 } from "class-variance-authority";
4019
- import { jsx as jsx45, jsxs as jsxs28 } from "react/jsx-runtime";
3765
+ import { jsx as jsx44, jsxs as jsxs27 } from "react/jsx-runtime";
4020
3766
  var Sheet = SheetPrimitive.Root;
4021
3767
  var SheetTrigger = SheetPrimitive.Trigger;
4022
3768
  var SheetPortal = SheetPrimitive.Portal;
4023
- var SheetOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx45(
3769
+ var SheetOverlay = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx44(
4024
3770
  SheetPrimitive.Overlay,
4025
3771
  {
4026
3772
  className: cn(
@@ -4048,18 +3794,18 @@ var sheetVariants = cva5(
4048
3794
  }
4049
3795
  }
4050
3796
  );
4051
- var SheetContent = React24.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs28(SheetPortal, { children: [
4052
- /* @__PURE__ */ jsx45(SheetOverlay, {}),
4053
- /* @__PURE__ */ jsxs28(
3797
+ var SheetContent = React24.forwardRef(({ side = "right", className, children, ...props }, ref) => /* @__PURE__ */ jsxs27(SheetPortal, { children: [
3798
+ /* @__PURE__ */ jsx44(SheetOverlay, {}),
3799
+ /* @__PURE__ */ jsxs27(
4054
3800
  SheetPrimitive.Content,
4055
3801
  {
4056
3802
  ref,
4057
3803
  className: cn(sheetVariants({ side }), className),
4058
3804
  ...props,
4059
3805
  children: [
4060
- /* @__PURE__ */ jsxs28(SheetPrimitive.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-secondary", children: [
4061
- /* @__PURE__ */ jsx45(Cross2Icon2, { className: "h-4 w-4" }),
4062
- /* @__PURE__ */ jsx45("span", { className: "sr-only", children: "Close" })
3806
+ /* @__PURE__ */ jsxs27(SheetPrimitive.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-secondary", children: [
3807
+ /* @__PURE__ */ jsx44(Cross2Icon2, { className: "h-4 w-4" }),
3808
+ /* @__PURE__ */ jsx44("span", { className: "sr-only", children: "Close" })
4063
3809
  ] }),
4064
3810
  children
4065
3811
  ]
@@ -4070,7 +3816,7 @@ SheetContent.displayName = SheetPrimitive.Content.displayName;
4070
3816
  var SheetHeader = ({
4071
3817
  className,
4072
3818
  ...props
4073
- }) => /* @__PURE__ */ jsx45(
3819
+ }) => /* @__PURE__ */ jsx44(
4074
3820
  "div",
4075
3821
  {
4076
3822
  className: cn(
@@ -4084,7 +3830,7 @@ SheetHeader.displayName = "SheetHeader";
4084
3830
  var SheetFooter = ({
4085
3831
  className,
4086
3832
  ...props
4087
- }) => /* @__PURE__ */ jsx45(
3833
+ }) => /* @__PURE__ */ jsx44(
4088
3834
  "div",
4089
3835
  {
4090
3836
  className: cn(
@@ -4095,7 +3841,7 @@ var SheetFooter = ({
4095
3841
  }
4096
3842
  );
4097
3843
  SheetFooter.displayName = "SheetFooter";
4098
- var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx45(
3844
+ var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx44(
4099
3845
  SheetPrimitive.Title,
4100
3846
  {
4101
3847
  ref,
@@ -4104,7 +3850,7 @@ var SheetTitle = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE
4104
3850
  }
4105
3851
  ));
4106
3852
  SheetTitle.displayName = SheetPrimitive.Title.displayName;
4107
- var SheetDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx45(
3853
+ var SheetDescription = React24.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsx44(
4108
3854
  SheetPrimitive.Description,
4109
3855
  {
4110
3856
  ref,
@@ -4116,10 +3862,10 @@ SheetDescription.displayName = SheetPrimitive.Description.displayName;
4116
3862
 
4117
3863
  // components/ui/textarea.tsx
4118
3864
  import * as React25 from "react";
4119
- import { jsx as jsx46 } from "react/jsx-runtime";
3865
+ import { jsx as jsx45 } from "react/jsx-runtime";
4120
3866
  var Textarea = React25.forwardRef(
4121
3867
  ({ className, ...props }, ref) => {
4122
- return /* @__PURE__ */ jsx46(
3868
+ return /* @__PURE__ */ jsx45(
4123
3869
  "textarea",
4124
3870
  {
4125
3871
  className: cn(
@@ -4137,11 +3883,11 @@ Textarea.displayName = "Textarea";
4137
3883
  // components/ui/tooltip.tsx
4138
3884
  import * as React26 from "react";
4139
3885
  import * as TooltipPrimitive from "@radix-ui/react-tooltip";
4140
- import { jsx as jsx47 } from "react/jsx-runtime";
3886
+ import { jsx as jsx46 } from "react/jsx-runtime";
4141
3887
  var TooltipProvider = TooltipPrimitive.Provider;
4142
3888
  var Tooltip = TooltipPrimitive.Root;
4143
3889
  var TooltipTrigger = TooltipPrimitive.Trigger;
4144
- var TooltipContent = React26.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx47(
3890
+ var TooltipContent = React26.forwardRef(({ className, sideOffset = 4, ...props }, ref) => /* @__PURE__ */ jsx46(
4145
3891
  TooltipPrimitive.Content,
4146
3892
  {
4147
3893
  ref,
@@ -4158,7 +3904,7 @@ TooltipContent.displayName = TooltipPrimitive.Content.displayName;
4158
3904
  // components/ui/chart.tsx
4159
3905
  import * as React27 from "react";
4160
3906
  import * as RechartsPrimitive from "recharts";
4161
- import { Fragment as Fragment6, jsx as jsx48, jsxs as jsxs29 } from "react/jsx-runtime";
3907
+ import { Fragment as Fragment5, jsx as jsx47, jsxs as jsxs28 } from "react/jsx-runtime";
4162
3908
  var THEMES = { light: "", dark: ".dark" };
4163
3909
  var ChartContext = React27.createContext(null);
4164
3910
  function useChart() {
@@ -4171,7 +3917,7 @@ function useChart() {
4171
3917
  var ChartContainer = React27.forwardRef(({ id, className, children, config, ...props }, ref) => {
4172
3918
  const uniqueId = React27.useId();
4173
3919
  const chartId = `chart-${id || uniqueId.replace(/:/g, "")}`;
4174
- return /* @__PURE__ */ jsx48(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxs29(
3920
+ return /* @__PURE__ */ jsx47(ChartContext.Provider, { value: { config }, children: /* @__PURE__ */ jsxs28(
4175
3921
  "div",
4176
3922
  {
4177
3923
  "data-chart": chartId,
@@ -4182,8 +3928,8 @@ var ChartContainer = React27.forwardRef(({ id, className, children, config, ...p
4182
3928
  ),
4183
3929
  ...props,
4184
3930
  children: [
4185
- /* @__PURE__ */ jsx48(ChartStyle, { id: chartId, config }),
4186
- /* @__PURE__ */ jsx48(RechartsPrimitive.ResponsiveContainer, { children })
3931
+ /* @__PURE__ */ jsx47(ChartStyle, { id: chartId, config }),
3932
+ /* @__PURE__ */ jsx47(RechartsPrimitive.ResponsiveContainer, { children })
4187
3933
  ]
4188
3934
  }
4189
3935
  ) });
@@ -4196,7 +3942,7 @@ var ChartStyle = ({ id, config }) => {
4196
3942
  if (!colorConfig.length) {
4197
3943
  return null;
4198
3944
  }
4199
- return /* @__PURE__ */ jsx48(
3945
+ return /* @__PURE__ */ jsx47(
4200
3946
  "style",
4201
3947
  {
4202
3948
  dangerouslySetInnerHTML: {
@@ -4240,12 +3986,12 @@ var ChartTooltipContent = React27.forwardRef(
4240
3986
  const itemConfig = getPayloadConfigFromPayload(config, item, key);
4241
3987
  const value = !labelKey && typeof label === "string" ? config[label]?.label || label : itemConfig?.label;
4242
3988
  if (labelFormatter) {
4243
- return /* @__PURE__ */ jsx48("div", { className: cn("font-medium", labelClassName), children: labelFormatter(value, payload) });
3989
+ return /* @__PURE__ */ jsx47("div", { className: cn("font-medium", labelClassName), children: labelFormatter(value, payload) });
4244
3990
  }
4245
3991
  if (!value) {
4246
3992
  return null;
4247
3993
  }
4248
- return /* @__PURE__ */ jsx48("div", { className: cn("font-medium", labelClassName), children: value });
3994
+ return /* @__PURE__ */ jsx47("div", { className: cn("font-medium", labelClassName), children: value });
4249
3995
  }, [
4250
3996
  label,
4251
3997
  labelFormatter,
@@ -4259,7 +4005,7 @@ var ChartTooltipContent = React27.forwardRef(
4259
4005
  return null;
4260
4006
  }
4261
4007
  const nestLabel = payload.length === 1 && indicator !== "dot";
4262
- return /* @__PURE__ */ jsxs29(
4008
+ return /* @__PURE__ */ jsxs28(
4263
4009
  "div",
4264
4010
  {
4265
4011
  ref,
@@ -4269,19 +4015,19 @@ var ChartTooltipContent = React27.forwardRef(
4269
4015
  ),
4270
4016
  children: [
4271
4017
  !nestLabel ? tooltipLabel : null,
4272
- /* @__PURE__ */ jsx48("div", { className: "grid gap-1.5", children: payload.map((item, index) => {
4018
+ /* @__PURE__ */ jsx47("div", { className: "grid gap-1.5", children: payload.map((item, index) => {
4273
4019
  const key = `${nameKey || item.name || item.dataKey || "value"}`;
4274
4020
  const itemConfig = getPayloadConfigFromPayload(config, item, key);
4275
4021
  const indicatorColor = color || item.payload.fill || item.color;
4276
- return /* @__PURE__ */ jsx48(
4022
+ return /* @__PURE__ */ jsx47(
4277
4023
  "div",
4278
4024
  {
4279
4025
  className: cn(
4280
4026
  "flex w-full flex-wrap items-stretch gap-2 [&>svg]:h-2.5 [&>svg]:w-2.5 [&>svg]:text-muted-foreground",
4281
4027
  indicator === "dot" && "items-center"
4282
4028
  ),
4283
- children: formatter && item?.value !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ jsxs29(Fragment6, { children: [
4284
- itemConfig?.icon ? /* @__PURE__ */ jsx48(itemConfig.icon, {}) : !hideIndicator && /* @__PURE__ */ jsx48(
4029
+ children: formatter && item?.value !== void 0 && item.name ? formatter(item.value, item.name, item, index, item.payload) : /* @__PURE__ */ jsxs28(Fragment5, { children: [
4030
+ itemConfig?.icon ? /* @__PURE__ */ jsx47(itemConfig.icon, {}) : !hideIndicator && /* @__PURE__ */ jsx47(
4285
4031
  "div",
4286
4032
  {
4287
4033
  className: cn(
@@ -4299,7 +4045,7 @@ var ChartTooltipContent = React27.forwardRef(
4299
4045
  }
4300
4046
  }
4301
4047
  ),
4302
- /* @__PURE__ */ jsxs29(
4048
+ /* @__PURE__ */ jsxs28(
4303
4049
  "div",
4304
4050
  {
4305
4051
  className: cn(
@@ -4307,11 +4053,11 @@ var ChartTooltipContent = React27.forwardRef(
4307
4053
  nestLabel ? "items-end" : "items-center"
4308
4054
  ),
4309
4055
  children: [
4310
- /* @__PURE__ */ jsxs29("div", { className: "grid gap-1.5", children: [
4056
+ /* @__PURE__ */ jsxs28("div", { className: "grid gap-1.5", children: [
4311
4057
  nestLabel ? tooltipLabel : null,
4312
- /* @__PURE__ */ jsx48("span", { className: "text-muted-foreground", children: itemConfig?.label || item.name })
4058
+ /* @__PURE__ */ jsx47("span", { className: "text-muted-foreground", children: itemConfig?.label || item.name })
4313
4059
  ] }),
4314
- item.value && /* @__PURE__ */ jsx48("span", { className: "font-mono font-medium tabular-nums text-foreground", children: item.value.toLocaleString() })
4060
+ item.value && /* @__PURE__ */ jsx47("span", { className: "font-mono font-medium tabular-nums text-foreground", children: item.value.toLocaleString() })
4315
4061
  ]
4316
4062
  }
4317
4063
  )
@@ -4332,7 +4078,7 @@ var ChartLegendContent = React27.forwardRef(
4332
4078
  if (!payload?.length) {
4333
4079
  return null;
4334
4080
  }
4335
- return /* @__PURE__ */ jsx48(
4081
+ return /* @__PURE__ */ jsx47(
4336
4082
  "div",
4337
4083
  {
4338
4084
  ref,
@@ -4344,14 +4090,14 @@ var ChartLegendContent = React27.forwardRef(
4344
4090
  children: payload.map((item) => {
4345
4091
  const key = `${nameKey || item.dataKey || "value"}`;
4346
4092
  const itemConfig = getPayloadConfigFromPayload(config, item, key);
4347
- return /* @__PURE__ */ jsxs29(
4093
+ return /* @__PURE__ */ jsxs28(
4348
4094
  "div",
4349
4095
  {
4350
4096
  className: cn(
4351
4097
  "flex items-center gap-1.5 [&>svg]:h-3 [&>svg]:w-3 [&>svg]:text-muted-foreground"
4352
4098
  ),
4353
4099
  children: [
4354
- itemConfig?.icon && !hideIcon ? /* @__PURE__ */ jsx48(itemConfig.icon, {}) : /* @__PURE__ */ jsx48(
4100
+ itemConfig?.icon && !hideIcon ? /* @__PURE__ */ jsx47(itemConfig.icon, {}) : /* @__PURE__ */ jsx47(
4355
4101
  "div",
4356
4102
  {
4357
4103
  className: "h-2 w-2 shrink-0 rounded-[2px]",
@@ -4388,8 +4134,8 @@ function getPayloadConfigFromPayload(config, payload, key) {
4388
4134
  // components/ui/slider.tsx
4389
4135
  import * as React28 from "react";
4390
4136
  import * as SliderPrimitive from "@radix-ui/react-slider";
4391
- import { jsx as jsx49, jsxs as jsxs30 } from "react/jsx-runtime";
4392
- var Slider = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs30(
4137
+ import { jsx as jsx48, jsxs as jsxs29 } from "react/jsx-runtime";
4138
+ var Slider = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ */ jsxs29(
4393
4139
  SliderPrimitive.Root,
4394
4140
  {
4395
4141
  ref,
@@ -4399,15 +4145,15 @@ var Slider = React28.forwardRef(({ className, ...props }, ref) => /* @__PURE__ *
4399
4145
  ),
4400
4146
  ...props,
4401
4147
  children: [
4402
- /* @__PURE__ */ jsx49(SliderPrimitive.Track, { className: "relative h-1.5 w-full grow overflow-hidden rounded-full bg-primary/20", children: /* @__PURE__ */ jsx49(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
4403
- /* @__PURE__ */ jsx49(SliderPrimitive.Thumb, { className: "block h-4 w-4 rounded-full border border-primary/50 bg-background shadow transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50" })
4148
+ /* @__PURE__ */ jsx48(SliderPrimitive.Track, { className: "relative h-1.5 w-full grow overflow-hidden rounded-full bg-primary/20", children: /* @__PURE__ */ jsx48(SliderPrimitive.Range, { className: "absolute h-full bg-primary" }) }),
4149
+ /* @__PURE__ */ jsx48(SliderPrimitive.Thumb, { className: "block h-4 w-4 rounded-full border border-primary/50 bg-background shadow transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50" })
4404
4150
  ]
4405
4151
  }
4406
4152
  ));
4407
4153
  Slider.displayName = SliderPrimitive.Root.displayName;
4408
4154
 
4409
4155
  // components/form-controls/form-with-action-buttons.tsx
4410
- import { jsx as jsx50, jsxs as jsxs31 } from "react/jsx-runtime";
4156
+ import { jsx as jsx49, jsxs as jsxs30 } from "react/jsx-runtime";
4411
4157
  var FormWithActionButtons = ({
4412
4158
  children,
4413
4159
  form,
@@ -4418,10 +4164,10 @@ var FormWithActionButtons = ({
4418
4164
  secondaryButtonAction,
4419
4165
  showSecondaryButton = false
4420
4166
  }) => {
4421
- return /* @__PURE__ */ jsx50(Form, { ...form, children: /* @__PURE__ */ jsxs31("form", { onSubmit: form.handleSubmit(onSubmit), className: "space-y-4", children: [
4167
+ return /* @__PURE__ */ jsx49(Form, { ...form, children: /* @__PURE__ */ jsxs30("form", { onSubmit: form.handleSubmit(onSubmit), className: "space-y-4", children: [
4422
4168
  children,
4423
- /* @__PURE__ */ jsxs31("div", { className: "flex justify-end gap-2", children: [
4424
- showSecondaryButton && /* @__PURE__ */ jsx50(
4169
+ /* @__PURE__ */ jsxs30("div", { className: "flex justify-end gap-2", children: [
4170
+ showSecondaryButton && /* @__PURE__ */ jsx49(
4425
4171
  Button,
4426
4172
  {
4427
4173
  variant: "link",
@@ -4430,29 +4176,29 @@ var FormWithActionButtons = ({
4430
4176
  children: secondaryButtonText
4431
4177
  }
4432
4178
  ),
4433
- /* @__PURE__ */ jsx50(Button, { variant: "default", type: "submit", children: primaryButtonText })
4179
+ /* @__PURE__ */ jsx49(Button, { variant: "default", type: "submit", children: primaryButtonText })
4434
4180
  ] })
4435
4181
  ] }) });
4436
4182
  };
4437
4183
 
4438
4184
  // components/form-controls/helpers.tsx
4439
4185
  import { File, FileSpreadsheet, FileText } from "lucide-react";
4440
- import { jsx as jsx51 } from "react/jsx-runtime";
4186
+ import { jsx as jsx50 } from "react/jsx-runtime";
4441
4187
  var getFileIcon = (fileName) => {
4442
4188
  const extensionMatch = fileName.match(/\.([^.]+)$/);
4443
4189
  const extension = extensionMatch ? extensionMatch[1].toLowerCase() : null;
4444
- if (!extension) return /* @__PURE__ */ jsx51(File, { className: "w-8 h-8 text-gray-500" });
4190
+ if (!extension) return /* @__PURE__ */ jsx50(File, { className: "w-8 h-8 text-gray-500" });
4445
4191
  switch (extension) {
4446
4192
  case "pdf":
4447
- return /* @__PURE__ */ jsx51(File, { className: "w-8 h-8 text-red-500" });
4193
+ return /* @__PURE__ */ jsx50(File, { className: "w-8 h-8 text-red-500" });
4448
4194
  case "doc":
4449
4195
  case "docx":
4450
- return /* @__PURE__ */ jsx51(FileText, { className: "w-8 h-8 text-blue-500" });
4196
+ return /* @__PURE__ */ jsx50(FileText, { className: "w-8 h-8 text-blue-500" });
4451
4197
  case "xls":
4452
4198
  case "xlsx":
4453
- return /* @__PURE__ */ jsx51(FileSpreadsheet, { className: "w-8 h-8 text-green-500" });
4199
+ return /* @__PURE__ */ jsx50(FileSpreadsheet, { className: "w-8 h-8 text-green-500" });
4454
4200
  default:
4455
- return /* @__PURE__ */ jsx51(File, { className: "w-8 h-8 text-gray-500" });
4201
+ return /* @__PURE__ */ jsx50(File, { className: "w-8 h-8 text-gray-500" });
4456
4202
  }
4457
4203
  };
4458
4204
  var getFileName = (url) => {
@@ -4462,14 +4208,14 @@ var getFileName = (url) => {
4462
4208
  };
4463
4209
 
4464
4210
  // components/form-controls/icon-button.tsx
4465
- import { jsx as jsx52, jsxs as jsxs32 } from "react/jsx-runtime";
4211
+ import { jsx as jsx51, jsxs as jsxs31 } from "react/jsx-runtime";
4466
4212
  var IconButton = ({
4467
4213
  item,
4468
4214
  variant,
4469
4215
  onClick,
4470
4216
  ...props
4471
4217
  }) => {
4472
- return /* @__PURE__ */ jsxs32(
4218
+ return /* @__PURE__ */ jsxs31(
4473
4219
  Button,
4474
4220
  {
4475
4221
  type: "button",
@@ -4478,8 +4224,8 @@ var IconButton = ({
4478
4224
  onClick,
4479
4225
  ...props,
4480
4226
  children: [
4481
- /* @__PURE__ */ jsx52("span", { className: "w-4 flex items-center justify-center", children: /* @__PURE__ */ jsx52(Icon2, { name: item.icon, size: 20, strokeWidth: 1 }) }),
4482
- /* @__PURE__ */ jsx52("span", { className: "text-sm", children: item.title })
4227
+ /* @__PURE__ */ jsx51("span", { className: "w-4 flex items-center justify-center", children: /* @__PURE__ */ jsx51(Icon, { name: item.icon, size: 20, strokeWidth: 1 }) }),
4228
+ /* @__PURE__ */ jsx51("span", { className: "text-sm", children: item.title })
4483
4229
  ]
4484
4230
  }
4485
4231
  );
@@ -4487,7 +4233,7 @@ var IconButton = ({
4487
4233
 
4488
4234
  // components/form-controls/input.tsx
4489
4235
  import * as React29 from "react";
4490
- import { jsx as jsx53, jsxs as jsxs33 } from "react/jsx-runtime";
4236
+ import { jsx as jsx52, jsxs as jsxs32 } from "react/jsx-runtime";
4491
4237
  var Input2 = React29.forwardRef(
4492
4238
  ({
4493
4239
  variant = "default",
@@ -4499,79 +4245,28 @@ var Input2 = React29.forwardRef(
4499
4245
  rules,
4500
4246
  ...props
4501
4247
  }, ref) => {
4502
- return isFormField ? /* @__PURE__ */ jsx53(
4248
+ return isFormField ? /* @__PURE__ */ jsx52(
4503
4249
  FormField,
4504
4250
  {
4505
4251
  control,
4506
4252
  name,
4507
4253
  rules,
4508
- render: ({ field }) => /* @__PURE__ */ jsxs33(FormItem, { children: [
4509
- title && /* @__PURE__ */ jsx53(FormLabel, { children: title }),
4510
- /* @__PURE__ */ jsx53(FormControl, { children: /* @__PURE__ */ jsx53(Input, { className, ...props, ...field }) }),
4511
- /* @__PURE__ */ jsx53(FormMessage, {})
4254
+ render: ({ field }) => /* @__PURE__ */ jsxs32(FormItem, { children: [
4255
+ title && /* @__PURE__ */ jsx52(FormLabel, { children: title }),
4256
+ /* @__PURE__ */ jsx52(FormControl, { children: /* @__PURE__ */ jsx52(Input, { className, ...props, ...field }) }),
4257
+ /* @__PURE__ */ jsx52(FormMessage, {})
4512
4258
  ] })
4513
4259
  }
4514
- ) : /* @__PURE__ */ jsx53(Input, { className, ref, ...props });
4260
+ ) : /* @__PURE__ */ jsx52(Input, { className, ref, ...props });
4515
4261
  }
4516
4262
  );
4517
4263
  Input2.displayName = "Input";
4518
4264
 
4519
- // components/form-controls/knowledge-graph-word-cloud.tsx
4520
- import { useKnowledgeGraphContext } from "@elqnt/kg";
4521
- import { Loader2 as Loader22 } from "lucide-react";
4522
- import { Fragment as Fragment7, jsx as jsx54, jsxs as jsxs34 } from "react/jsx-runtime";
4523
- function KnowledgeGraphWordCloud() {
4524
- const { labels } = useKnowledgeGraphContext();
4525
- if (!labels || !(labels instanceof Array)) {
4526
- return null;
4527
- }
4528
- const data = labels?.map((item) => {
4529
- return { text: item?.label, value: item?.count };
4530
- });
4531
- return /* @__PURE__ */ jsxs34("div", { className: "rounded-xl border bg-card h-full shadow relative p-5", children: [
4532
- /* @__PURE__ */ jsx54("p", { className: "capitalize mb-10 font-semibold text-xl", children: "Graph Distribution" }),
4533
- !data ? /* @__PURE__ */ jsx54("div", { className: "absolute w-full flex justify-end", children: /* @__PURE__ */ jsx54(Loader22, { className: "animate-spin" }) }) : /* @__PURE__ */ jsx54(Fragment7, {})
4534
- ] });
4535
- }
4536
-
4537
- // components/form-controls/layout/org-selector.tsx
4538
- import { useUserContext } from "@elqnt/auth";
4539
- import { useEffect as useEffect4, useState as useState6 } from "react";
4540
- import { jsx as jsx55 } from "react/jsx-runtime";
4541
- function OrgSelector() {
4542
- const { user, selectedOrgId, setSelectedOrgId } = useUserContext();
4543
- const [orgAccess, setOrgAccess] = useState6([]);
4544
- useEffect4(() => {
4545
- if (user?.orgAccess) {
4546
- const formattedOrgAccess = user.orgAccess.filter((org) => org.orgId && org.orgTitle).map((org) => ({
4547
- value: org.orgId,
4548
- label: org.orgTitle
4549
- }));
4550
- setOrgAccess(formattedOrgAccess);
4551
- }
4552
- }, [user]);
4553
- const handleOrgIdChange = (value) => {
4554
- setSelectedOrgId?.(value);
4555
- };
4556
- if (!user) {
4557
- return null;
4558
- }
4559
- return /* @__PURE__ */ jsx55(
4560
- Combobox,
4561
- {
4562
- defaultValue: selectedOrgId,
4563
- options: orgAccess,
4564
- onChange: handleOrgIdChange,
4565
- label: "Select an Organization"
4566
- }
4567
- );
4568
- }
4569
-
4570
4265
  // components/form-controls/layout/page-header.tsx
4571
4266
  import { ChevronLeft } from "lucide-react";
4572
4267
  import Link from "next/link";
4573
4268
  import { useRouter } from "next/navigation";
4574
- import { jsx as jsx56, jsxs as jsxs35 } from "react/jsx-runtime";
4269
+ import { jsx as jsx53, jsxs as jsxs33 } from "react/jsx-runtime";
4575
4270
  function PageHeader({
4576
4271
  title,
4577
4272
  description,
@@ -4609,7 +4304,7 @@ function PageHeader({
4609
4304
  return "justify-between";
4610
4305
  }
4611
4306
  }
4612
- return /* @__PURE__ */ jsxs35(
4307
+ return /* @__PURE__ */ jsxs33(
4613
4308
  "div",
4614
4309
  {
4615
4310
  className: cn(
@@ -4617,25 +4312,25 @@ function PageHeader({
4617
4312
  getJustifyClass()
4618
4313
  ),
4619
4314
  children: [
4620
- /* @__PURE__ */ jsxs35("div", { children: [
4621
- /* @__PURE__ */ jsx56("div", { children: /* @__PURE__ */ jsxs35("div", { className: "flex items-center gap-2", children: [
4622
- goBackLink && /* @__PURE__ */ jsx56(Link, { href: goBackLink, children: /* @__PURE__ */ jsx56(ChevronLeft, { className: "h-4 w-4" }) }),
4623
- showBack && !goBackLink && /* @__PURE__ */ jsx56(
4315
+ /* @__PURE__ */ jsxs33("div", { children: [
4316
+ /* @__PURE__ */ jsx53("div", { children: /* @__PURE__ */ jsxs33("div", { className: "flex items-center gap-2", children: [
4317
+ goBackLink && /* @__PURE__ */ jsx53(Link, { href: goBackLink, children: /* @__PURE__ */ jsx53(ChevronLeft, { className: "h-4 w-4" }) }),
4318
+ showBack && !goBackLink && /* @__PURE__ */ jsx53(
4624
4319
  "button",
4625
4320
  {
4626
4321
  onClick: handleBack,
4627
4322
  className: "h-8 w-8 p-0 flex items-center justify-center rounded-md border border-gray-200 hover:bg-gray-50 transition-colors",
4628
- children: /* @__PURE__ */ jsx56(ChevronLeft, { className: "h-4 w-4" })
4323
+ children: /* @__PURE__ */ jsx53(ChevronLeft, { className: "h-4 w-4" })
4629
4324
  }
4630
4325
  ),
4631
- titleComponent ?? (title && /* @__PURE__ */ jsx56("h2", { className: "font-semibold text-lg text-primary p-0 m-0", children: title }))
4326
+ titleComponent ?? (title && /* @__PURE__ */ jsx53("h2", { className: "font-semibold text-lg text-primary p-0 m-0", children: title }))
4632
4327
  ] }) }),
4633
- description && /* @__PURE__ */ jsx56("p", { className: "text-sm text-gray-500", children: description })
4328
+ description && /* @__PURE__ */ jsx53("p", { className: "text-sm text-gray-500", children: description })
4634
4329
  ] }),
4635
- /* @__PURE__ */ jsxs35("div", { className: "flex gap-2 items-center", children: [
4330
+ /* @__PURE__ */ jsxs33("div", { className: "flex gap-2 items-center", children: [
4636
4331
  rightSideComponent,
4637
4332
  actions?.map(
4638
- (action, index) => action.href ? /* @__PURE__ */ jsx56(Link, { href: action.href, children: /* @__PURE__ */ jsx56(Button2, { variant: action.type, children: action.label }) }, index) : /* @__PURE__ */ jsx56(Button2, { variant: action.type, onClick: action.onAction, children: action.label }, index)
4333
+ (action, index) => action.href ? /* @__PURE__ */ jsx53(Link, { href: action.href, children: /* @__PURE__ */ jsx53(Button2, { variant: action.type, children: action.label }) }, index) : /* @__PURE__ */ jsx53(Button2, { variant: action.type, onClick: action.onAction, children: action.label }, index)
4639
4334
  )
4640
4335
  ] })
4641
4336
  ]
@@ -4643,17 +4338,11 @@ function PageHeader({
4643
4338
  );
4644
4339
  }
4645
4340
 
4646
- // components/form-controls/layout/left-nav.tsx
4647
- import { useUserContext as useUserContext2 } from "@elqnt/auth";
4648
- import Link3 from "next/link";
4649
- import { usePathname, useRouter as useRouter3 } from "next/navigation";
4650
- import { useEffect as useEffect5, useState as useState7 } from "react";
4651
-
4652
4341
  // components/form-controls/layout/profile-menu.tsx
4653
4342
  import { signOut } from "next-auth/react";
4654
4343
  import Link2 from "next/link";
4655
4344
  import { useRouter as useRouter2 } from "next/navigation";
4656
- import { jsx as jsx57, jsxs as jsxs36 } from "react/jsx-runtime";
4345
+ import { jsx as jsx54, jsxs as jsxs34 } from "react/jsx-runtime";
4657
4346
  function ProfileMenu({ children, pathName }) {
4658
4347
  const router = useRouter2();
4659
4348
  const handleSignOut = async () => {
@@ -4675,9 +4364,9 @@ function ProfileMenu({ children, pathName }) {
4675
4364
  onClick: handleSignOut
4676
4365
  }
4677
4366
  ];
4678
- return /* @__PURE__ */ jsxs36(Popover, { children: [
4679
- /* @__PURE__ */ jsx57(PopoverTrigger, { asChild: true, children }),
4680
- /* @__PURE__ */ jsx57(PopoverContent, { className: "p-0! flex flex-col", children: links.map((link) => /* @__PURE__ */ jsxs36(
4367
+ return /* @__PURE__ */ jsxs34(Popover, { children: [
4368
+ /* @__PURE__ */ jsx54(PopoverTrigger, { asChild: true, children }),
4369
+ /* @__PURE__ */ jsx54(PopoverContent, { className: "p-0! flex flex-col", children: links.map((link) => /* @__PURE__ */ jsxs34(
4681
4370
  Link2,
4682
4371
  {
4683
4372
  href: link?.href,
@@ -4685,7 +4374,7 @@ function ProfileMenu({ children, pathName }) {
4685
4374
  className: `cursor-pointer w-full hover:bg-primary/10 hover:text-primary p-4 flex items-center gap-4 text-gray-500
4686
4375
  ${pathName.includes(link?.href) && "bg-primary/10 text-primary"}`,
4687
4376
  children: [
4688
- /* @__PURE__ */ jsx57(Icon2, { name: link?.icon, size: 20 }),
4377
+ /* @__PURE__ */ jsx54(Icon, { name: link?.icon, size: 20 }),
4689
4378
  link?.title
4690
4379
  ]
4691
4380
  },
@@ -4694,188 +4383,10 @@ function ProfileMenu({ children, pathName }) {
4694
4383
  ] });
4695
4384
  }
4696
4385
 
4697
- // components/form-controls/layout/left-nav.tsx
4698
- import { Fragment as Fragment8, jsx as jsx58, jsxs as jsxs37 } from "react/jsx-runtime";
4699
- var articles = [
4700
- { key: "getting-started", title: "Getting Started", href: "#" },
4701
- { key: "helpdesk", title: "Helpdesk", href: "#" }
4702
- ];
4703
- function LeftNav({
4704
- fullMenuItems,
4705
- menuItems,
4706
- pageTitle,
4707
- ExpandedLogo,
4708
- Logo
4709
- }) {
4710
- const router = useRouter3();
4711
- const pathName = usePathname();
4712
- const { user, selectedOrgId, selectedOrg } = useUserContext2();
4713
- const [isExpanded, setIsExpanded] = useState7(() => {
4714
- const stored = localStorage.getItem("isExpanded");
4715
- return stored === null ? true : stored === "true";
4716
- });
4717
- const [apps, setApps] = useState7([]);
4718
- const [items, setItems] = useState7(menuItems);
4719
- useEffect5(() => {
4720
- setItems(menuItems);
4721
- }, [menuItems]);
4722
- useEffect5(() => {
4723
- if (!user || !selectedOrgId || !selectedOrg) return;
4724
- const orgAccess = user.orgAccess?.find(
4725
- (org) => org.orgId === selectedOrgId
4726
- );
4727
- if (!orgAccess) return;
4728
- const apps2 = fullMenuItems?.filter(
4729
- (item) => selectedOrg.apps?.includes(item.key)
4730
- );
4731
- setApps(apps2);
4732
- }, [user, selectedOrgId, selectedOrg]);
4733
- useEffect5(() => {
4734
- localStorage.setItem("isExpanded", isExpanded.toString());
4735
- }, [isExpanded]);
4736
- return /* @__PURE__ */ jsx58(
4737
- "div",
4738
- {
4739
- style: { height: "calc(100vh - 32px)" },
4740
- className: `relative pt-4 ${isExpanded ? "min-w-72" : "min-w-16"} transition-width duration-300 rounded-lg text-gray-500 sticky top-4 bg-white`,
4741
- children: /* @__PURE__ */ jsx58(TooltipProvider, { children: /* @__PURE__ */ jsxs37("div", { className: "absolute top-0 flex flex-col gap-8 justify-between h-full w-full duration-300 ease-in-out sc-card bg-white! p-3 overflow-y-scroll hide-scrollbar", children: [
4742
- /* @__PURE__ */ jsxs37(
4743
- "div",
4744
- {
4745
- className: `flex flex-col gap-1 ${!isExpanded && "items-center"}`,
4746
- children: [
4747
- /* @__PURE__ */ jsxs37("div", { className: "cursor-pointer flex items-center justify-between mb-4 w-full", children: [
4748
- /* @__PURE__ */ jsx58(
4749
- "div",
4750
- {
4751
- onClick: () => isExpanded ? router.push("/") : setIsExpanded(true),
4752
- children: isExpanded ? /* @__PURE__ */ jsx58(ExpandedLogo, {}) : /* @__PURE__ */ jsx58(Logo, {})
4753
- }
4754
- ),
4755
- isExpanded && /* @__PURE__ */ jsx58("span", { onClick: () => setIsExpanded(false), children: /* @__PURE__ */ jsx58(Icon2, { name: "ChevronsLeftRight" }) })
4756
- ] }),
4757
- items ? /* @__PURE__ */ jsxs37(Fragment8, { children: [
4758
- /* @__PURE__ */ jsxs37(
4759
- "div",
4760
- {
4761
- onClick: () => setItems(void 0),
4762
- className: "flex items-center px-1 gap-2 cursor-pointer mb-4 text-lg",
4763
- children: [
4764
- /* @__PURE__ */ jsx58(Icon2, { name: "ArrowLeft", size: 19 }),
4765
- isExpanded && /* @__PURE__ */ jsx58("span", { children: pageTitle })
4766
- ]
4767
- }
4768
- ),
4769
- menuItems?.map((item) => /* @__PURE__ */ jsx58(
4770
- Link3,
4771
- {
4772
- href: item.href,
4773
- className: `flex items-center gap-2 cursor-pointer w-full text-sm rounded-lg py-3 ${isExpanded ? "pl-2 hover:bg-primary/10 hover:text-primary" : "pl-0 justify-center"}
4774
- ${item.href && (item.href?.split("/").length > 2 ? pathName?.includes(item.href) ?? "" : pathName === item.href) && isExpanded ? "bg-primary/10 text-primary" : ""}
4775
- `,
4776
- children: isExpanded ? /* @__PURE__ */ jsxs37(Fragment8, { children: [
4777
- /* @__PURE__ */ jsx58(Icon2, { name: item.icon, size: 19 }),
4778
- /* @__PURE__ */ jsx58("span", { children: item.title })
4779
- ] }) : /* @__PURE__ */ jsxs37(Tooltip, { delayDuration: 0, children: [
4780
- /* @__PURE__ */ jsx58(TooltipTrigger, { children: /* @__PURE__ */ jsx58(Icon2, { name: item.icon }) }),
4781
- /* @__PURE__ */ jsx58(TooltipContent, { side: "right", children: /* @__PURE__ */ jsx58("p", { children: item.title }) })
4782
- ] })
4783
- },
4784
- item.title
4785
- ))
4786
- ] }) : isExpanded ? /* @__PURE__ */ jsxs37(Fragment8, { children: [
4787
- /* @__PURE__ */ jsxs37("div", { id: "menu-row", children: [
4788
- /* @__PURE__ */ jsx58("h2", { className: "text-xl font-semibold", children: "Apps" }),
4789
- /* @__PURE__ */ jsx58("div", { className: "grid grid-cols-2 gap-2 mt-6", children: apps.filter((item) => item.key !== "home").map((item) => /* @__PURE__ */ jsx58(
4790
- IconButton,
4791
- {
4792
- item,
4793
- variant: "ghost",
4794
- onClick: () => {
4795
- router.push(item.href);
4796
- setItems(menuItems);
4797
- }
4798
- },
4799
- item.key
4800
- )) })
4801
- ] }),
4802
- /* @__PURE__ */ jsxs37("div", { id: "help-row", className: "mt-12 ml-2", children: [
4803
- /* @__PURE__ */ jsx58("h2", { className: "text-xl font-semibold", children: "Help" }),
4804
- /* @__PURE__ */ jsx58("div", { className: "mt-6", children: /* @__PURE__ */ jsx58(Input, { placeholder: "Search help content" }) }),
4805
- /* @__PURE__ */ jsx58("ul", { className: "mt-6 ml-4 list-disc", children: articles.map((item) => /* @__PURE__ */ jsx58("li", { children: /* @__PURE__ */ jsx58(
4806
- Link3,
4807
- {
4808
- href: item.href,
4809
- className: "block mb-2 underline",
4810
- onClick: () => setIsExpanded(false),
4811
- children: item.title
4812
- }
4813
- ) }, item.key)) })
4814
- ] })
4815
- ] }) : /* @__PURE__ */ jsx58("div", { className: "flex flex-col gap-6 mt-2", children: apps?.map((item) => /* @__PURE__ */ jsxs37(Tooltip, { delayDuration: 0, children: [
4816
- /* @__PURE__ */ jsx58(TooltipTrigger, { children: /* @__PURE__ */ jsx58(
4817
- "div",
4818
- {
4819
- onClick: () => {
4820
- router.push(item.href);
4821
- setItems(menuItems);
4822
- },
4823
- children: /* @__PURE__ */ jsx58(Icon2, { name: item.icon })
4824
- }
4825
- ) }),
4826
- /* @__PURE__ */ jsx58(TooltipContent, { side: "right", children: /* @__PURE__ */ jsx58("p", { children: item.title }) })
4827
- ] }, item.key)) })
4828
- ]
4829
- }
4830
- ),
4831
- /* @__PURE__ */ jsxs37("div", { children: [
4832
- isExpanded && /* @__PURE__ */ jsx58("div", { className: "mb-2", children: /* @__PURE__ */ jsx58(OrgSelector, {}) }),
4833
- /* @__PURE__ */ jsxs37(
4834
- Link3,
4835
- {
4836
- href: "/admin/settings",
4837
- className: `flex items-center gap-4 cursor-pointer w-full rounded-lg py-2 mb-1 ${isExpanded ? "pl-2 hover:bg-primary/10 hover:text-primary" : "pl-0"}
4838
- ${pathName?.includes("/settings") && isExpanded ? "bg-primary/10 text-primary" : ""}
4839
- `,
4840
- children: [
4841
- /* @__PURE__ */ jsx58(Icon2, { name: "Settings" }),
4842
- isExpanded && /* @__PURE__ */ jsx58("span", { children: "Settings" })
4843
- ]
4844
- }
4845
- ),
4846
- /* @__PURE__ */ jsxs37(
4847
- Link3,
4848
- {
4849
- href: "/admin/help",
4850
- className: `flex items-center gap-4 cursor-pointer w-full rounded-lg py-2 mb-1 ${isExpanded ? "pl-2 hover:bg-primary/10 hover:text-primary" : "pl-0"}
4851
- ${pathName?.includes("/help") && isExpanded ? "bg-primary/10 text-primary" : ""}
4852
- `,
4853
- children: [
4854
- /* @__PURE__ */ jsx58(Icon2, { name: "HeartHandshake" }),
4855
- isExpanded && /* @__PURE__ */ jsx58("span", { children: "Help" })
4856
- ]
4857
- }
4858
- ),
4859
- /* @__PURE__ */ jsx58(ProfileMenu, { pathName: pathName ?? "", children: /* @__PURE__ */ jsxs37(
4860
- "div",
4861
- {
4862
- className: `flex items-center gap-4 cursor-pointer w-full rounded-lg py-2 ${isExpanded ? "pl-2 hover:bg-primary/10 hover:text-primary" : "pl-0"}`,
4863
- children: [
4864
- /* @__PURE__ */ jsx58(Icon2, { name: "User" }),
4865
- isExpanded && /* @__PURE__ */ jsx58("span", { children: user?.firstName })
4866
- ]
4867
- }
4868
- ) })
4869
- ] })
4870
- ] }) })
4871
- }
4872
- );
4873
- }
4874
-
4875
4386
  // components/form-controls/multi-select.tsx
4876
- import { Check as Check2, X as X2 } from "lucide-react";
4877
- import { useState as useState8 } from "react";
4878
- import { jsx as jsx59, jsxs as jsxs38 } from "react/jsx-runtime";
4387
+ import { Check as Check2, X } from "lucide-react";
4388
+ import { useState as useState5 } from "react";
4389
+ import { jsx as jsx55, jsxs as jsxs35 } from "react/jsx-runtime";
4879
4390
  var MultiSelect = ({
4880
4391
  defaultValue = [],
4881
4392
  placeholder,
@@ -4883,8 +4394,8 @@ var MultiSelect = ({
4883
4394
  className = "",
4884
4395
  onValueChange
4885
4396
  }) => {
4886
- const [open, setOpen] = useState8(false);
4887
- const [selectedValues, setSelectedValues] = useState8(defaultValue);
4397
+ const [open, setOpen] = useState5(false);
4398
+ const [selectedValues, setSelectedValues] = useState5(defaultValue);
4888
4399
  const handleSelect = (value) => {
4889
4400
  let updatedValues;
4890
4401
  if (selectedValues.includes(value)) {
@@ -4901,17 +4412,17 @@ var MultiSelect = ({
4901
4412
  setSelectedValues(updatedValues);
4902
4413
  onValueChange(updatedValues);
4903
4414
  };
4904
- return /* @__PURE__ */ jsxs38(Popover, { open, onOpenChange: setOpen, children: [
4905
- /* @__PURE__ */ jsx59(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx59(
4415
+ return /* @__PURE__ */ jsxs35(Popover, { open, onOpenChange: setOpen, children: [
4416
+ /* @__PURE__ */ jsx55(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx55(
4906
4417
  Button,
4907
4418
  {
4908
4419
  variant: "outline",
4909
4420
  role: "combobox",
4910
4421
  "aria-expanded": open,
4911
4422
  className: cn("min-h-10 h-auto w-full justify-between", className),
4912
- children: /* @__PURE__ */ jsxs38("div", { className: "flex flex-wrap gap-1", children: [
4423
+ children: /* @__PURE__ */ jsxs35("div", { className: "flex flex-wrap gap-1", children: [
4913
4424
  selectedValues.length === 0 && placeholder,
4914
- selectedValues.map((value) => /* @__PURE__ */ jsxs38(
4425
+ selectedValues.map((value) => /* @__PURE__ */ jsxs35(
4915
4426
  Badge,
4916
4427
  {
4917
4428
  variant: "secondary",
@@ -4919,7 +4430,7 @@ var MultiSelect = ({
4919
4430
  onClick: (e) => handleClear(value, e),
4920
4431
  children: [
4921
4432
  options.find((opt) => opt.value === value)?.label,
4922
- /* @__PURE__ */ jsx59(X2, { className: "ml-1 h-3 w-3" })
4433
+ /* @__PURE__ */ jsx55(X, { className: "ml-1 h-3 w-3" })
4923
4434
  ]
4924
4435
  },
4925
4436
  value
@@ -4927,12 +4438,12 @@ var MultiSelect = ({
4927
4438
  ] })
4928
4439
  }
4929
4440
  ) }),
4930
- /* @__PURE__ */ jsx59(PopoverContent, { className: "p-0", children: /* @__PURE__ */ jsx59(Command, { children: /* @__PURE__ */ jsx59(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs38(
4441
+ /* @__PURE__ */ jsx55(PopoverContent, { className: "p-0", children: /* @__PURE__ */ jsx55(Command, { children: /* @__PURE__ */ jsx55(CommandGroup, { children: options.map((option) => /* @__PURE__ */ jsxs35(
4931
4442
  CommandItem,
4932
4443
  {
4933
4444
  onSelect: () => handleSelect(option.value),
4934
4445
  children: [
4935
- /* @__PURE__ */ jsx59(
4446
+ /* @__PURE__ */ jsx55(
4936
4447
  Check2,
4937
4448
  {
4938
4449
  className: cn(
@@ -4950,18 +4461,18 @@ var MultiSelect = ({
4950
4461
  };
4951
4462
 
4952
4463
  // components/form-controls/multi-step-process.tsx
4953
- import { Check as Check3, Loader2 as Loader23 } from "lucide-react";
4954
- import { useEffect as useEffect6, useState as useState9 } from "react";
4955
- import { jsx as jsx60, jsxs as jsxs39 } from "react/jsx-runtime";
4464
+ import { Check as Check3, Loader2 as Loader22 } from "lucide-react";
4465
+ import { useEffect as useEffect3, useState as useState6 } from "react";
4466
+ import { jsx as jsx56, jsxs as jsxs36 } from "react/jsx-runtime";
4956
4467
  var MultiStepProcess = ({
4957
4468
  initialSteps,
4958
4469
  onFinish,
4959
4470
  finishButtonText
4960
4471
  }) => {
4961
- const [steps, setSteps] = useState9(
4472
+ const [steps, setSteps] = useState6(
4962
4473
  initialSteps.map((step) => ({ ...step, isValid: false, isComplete: false }))
4963
4474
  );
4964
- const [currentStepIndex, setCurrentStepIndex] = useState9(0);
4475
+ const [currentStepIndex, setCurrentStepIndex] = useState6(0);
4965
4476
  const updateStep = (stepIndex, updates) => {
4966
4477
  setSteps(
4967
4478
  (prevSteps) => prevSteps.map(
@@ -4988,7 +4499,7 @@ var MultiStepProcess = ({
4988
4499
  }
4989
4500
  updateStep(currentStepIndex, { isLoading: false });
4990
4501
  };
4991
- useEffect6(() => {
4502
+ useEffect3(() => {
4992
4503
  const currentStep = steps[currentStepIndex];
4993
4504
  if (currentStep.isComplete) {
4994
4505
  goToNextStep();
@@ -5001,7 +4512,7 @@ var MultiStepProcess = ({
5001
4512
  };
5002
4513
  const renderStepComponent = (step, index) => {
5003
4514
  const StepComponent = step.component;
5004
- return /* @__PURE__ */ jsx60(
4515
+ return /* @__PURE__ */ jsx56(
5005
4516
  StepComponent,
5006
4517
  {
5007
4518
  step,
@@ -5011,23 +4522,23 @@ var MultiStepProcess = ({
5011
4522
  };
5012
4523
  const isLastStep = currentStepIndex === steps.length - 1;
5013
4524
  const currentStepData = steps[currentStepIndex];
5014
- return /* @__PURE__ */ jsxs39(Card, { className: "p-6", children: [
5015
- /* @__PURE__ */ jsx60("div", { className: "mb-8", children: /* @__PURE__ */ jsx60("div", { className: "flex justify-between items-start", children: steps.map((step, i) => /* @__PURE__ */ jsxs39("div", { className: "flex flex-col items-center", children: [
5016
- /* @__PURE__ */ jsx60(
4525
+ return /* @__PURE__ */ jsxs36(Card, { className: "p-6", children: [
4526
+ /* @__PURE__ */ jsx56("div", { className: "mb-8", children: /* @__PURE__ */ jsx56("div", { className: "flex justify-between items-start", children: steps.map((step, i) => /* @__PURE__ */ jsxs36("div", { className: "flex flex-col items-center", children: [
4527
+ /* @__PURE__ */ jsx56(
5017
4528
  "div",
5018
4529
  {
5019
4530
  className: `
5020
4531
  w-10 h-10 rounded-full flex items-center justify-center mb-2
5021
4532
  ${i < currentStepIndex ? "bg-green-500 text-white" : i === currentStepIndex ? "bg-blue-500 text-white" : "bg-gray-200 text-gray-500"}
5022
4533
  `,
5023
- children: i < currentStepIndex ? /* @__PURE__ */ jsx60(Check3, { className: "w-6 h-6" }) : /* @__PURE__ */ jsx60("span", { children: step.id })
4534
+ children: i < currentStepIndex ? /* @__PURE__ */ jsx56(Check3, { className: "w-6 h-6" }) : /* @__PURE__ */ jsx56("span", { children: step.id })
5024
4535
  }
5025
4536
  ),
5026
- /* @__PURE__ */ jsx60("span", { className: "text-sm text-center max-w-[100px]", children: step.title })
4537
+ /* @__PURE__ */ jsx56("span", { className: "text-sm text-center max-w-[100px]", children: step.title })
5027
4538
  ] }, i)) }) }),
5028
- /* @__PURE__ */ jsx60("div", { className: "mb-3", children: renderStepComponent(currentStepData, currentStepIndex) }),
5029
- /* @__PURE__ */ jsxs39("div", { className: "flex justify-between", children: [
5030
- /* @__PURE__ */ jsx60(
4539
+ /* @__PURE__ */ jsx56("div", { className: "mb-3", children: renderStepComponent(currentStepData, currentStepIndex) }),
4540
+ /* @__PURE__ */ jsxs36("div", { className: "flex justify-between", children: [
4541
+ /* @__PURE__ */ jsx56(
5031
4542
  Button,
5032
4543
  {
5033
4544
  onClick: goToPreviousStep,
@@ -5036,12 +4547,12 @@ var MultiStepProcess = ({
5036
4547
  children: "Previous"
5037
4548
  }
5038
4549
  ),
5039
- /* @__PURE__ */ jsx60(
4550
+ /* @__PURE__ */ jsx56(
5040
4551
  Button,
5041
4552
  {
5042
4553
  onClick: goToNextStep,
5043
4554
  disabled: !currentStepData.isValid || currentStepData.isLoading,
5044
- children: currentStepData.isLoading ? /* @__PURE__ */ jsx60(Loader23, { className: "h-6 w-6 animate-spin" }) : isLastStep ? finishButtonText ?? "Finish" : "Next"
4555
+ children: currentStepData.isLoading ? /* @__PURE__ */ jsx56(Loader22, { className: "h-6 w-6 animate-spin" }) : isLastStep ? finishButtonText ?? "Finish" : "Next"
5045
4556
  }
5046
4557
  )
5047
4558
  ] })
@@ -5049,7 +4560,7 @@ var MultiStepProcess = ({
5049
4560
  };
5050
4561
 
5051
4562
  // components/form-controls/popover.tsx
5052
- import { jsx as jsx61, jsxs as jsxs40 } from "react/jsx-runtime";
4563
+ import { jsx as jsx57, jsxs as jsxs37 } from "react/jsx-runtime";
5053
4564
  var Popover2 = ({
5054
4565
  trigger,
5055
4566
  children,
@@ -5057,9 +4568,9 @@ var Popover2 = ({
5057
4568
  align = "center",
5058
4569
  sideOffset = 4
5059
4570
  }) => {
5060
- return /* @__PURE__ */ jsxs40(Popover, { children: [
5061
- /* @__PURE__ */ jsx61(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx61("div", { className, children: trigger }) }),
5062
- /* @__PURE__ */ jsx61(
4571
+ return /* @__PURE__ */ jsxs37(Popover, { children: [
4572
+ /* @__PURE__ */ jsx57(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsx57("div", { className, children: trigger }) }),
4573
+ /* @__PURE__ */ jsx57(
5063
4574
  PopoverContent,
5064
4575
  {
5065
4576
  align,
@@ -5073,34 +4584,34 @@ var Popover2 = ({
5073
4584
 
5074
4585
  // components/form-controls/radio-group.tsx
5075
4586
  import * as React31 from "react";
5076
- import { jsx as jsx62, jsxs as jsxs41 } from "react/jsx-runtime";
4587
+ import { jsx as jsx58, jsxs as jsxs38 } from "react/jsx-runtime";
5077
4588
  var RadioGroup3 = React31.forwardRef(({ className, options, defaultValue, title, name, control, isFormField, ...props }, ref) => {
5078
4589
  if (!isFormField) {
5079
- return /* @__PURE__ */ jsx62(RadioGroup2, { defaultValue, ...props, ref, children: options?.map((option) => /* @__PURE__ */ jsxs41("div", { className: "flex items-center space-x-2 cursor-pointer", children: [
5080
- /* @__PURE__ */ jsx62(RadioGroupItem, { value: option.value, id: option.value }),
5081
- /* @__PURE__ */ jsx62("label", { htmlFor: option.value, children: option.label })
4590
+ return /* @__PURE__ */ jsx58(RadioGroup2, { defaultValue, ...props, ref, children: options?.map((option) => /* @__PURE__ */ jsxs38("div", { className: "flex items-center space-x-2 cursor-pointer", children: [
4591
+ /* @__PURE__ */ jsx58(RadioGroupItem, { value: option.value, id: option.value }),
4592
+ /* @__PURE__ */ jsx58("label", { htmlFor: option.value, children: option.label })
5082
4593
  ] }, option.value)) });
5083
4594
  }
5084
- return /* @__PURE__ */ jsx62(
4595
+ return /* @__PURE__ */ jsx58(
5085
4596
  FormField,
5086
4597
  {
5087
4598
  control,
5088
4599
  name,
5089
- render: ({ field }) => /* @__PURE__ */ jsxs41(FormItem, { children: [
5090
- title && /* @__PURE__ */ jsx62(FormLabel, { children: title }),
5091
- /* @__PURE__ */ jsx62(FormControl, { children: /* @__PURE__ */ jsx62(
4600
+ render: ({ field }) => /* @__PURE__ */ jsxs38(FormItem, { children: [
4601
+ title && /* @__PURE__ */ jsx58(FormLabel, { children: title }),
4602
+ /* @__PURE__ */ jsx58(FormControl, { children: /* @__PURE__ */ jsx58(
5092
4603
  RadioGroup2,
5093
4604
  {
5094
4605
  onValueChange: field.onChange,
5095
4606
  defaultValue: field.value,
5096
4607
  ...props,
5097
- children: options?.map((option) => /* @__PURE__ */ jsxs41("div", { className: "flex items-center space-x-2 cursor-pointer", children: [
5098
- /* @__PURE__ */ jsx62(RadioGroupItem, { value: option.value, id: option.value }),
5099
- /* @__PURE__ */ jsx62("label", { htmlFor: option.value, children: option.label })
4608
+ children: options?.map((option) => /* @__PURE__ */ jsxs38("div", { className: "flex items-center space-x-2 cursor-pointer", children: [
4609
+ /* @__PURE__ */ jsx58(RadioGroupItem, { value: option.value, id: option.value }),
4610
+ /* @__PURE__ */ jsx58("label", { htmlFor: option.value, children: option.label })
5100
4611
  ] }, option.value))
5101
4612
  }
5102
4613
  ) }),
5103
- /* @__PURE__ */ jsx62(FormMessage, {})
4614
+ /* @__PURE__ */ jsx58(FormMessage, {})
5104
4615
  ] })
5105
4616
  }
5106
4617
  );
@@ -5116,22 +4627,22 @@ import {
5116
4627
  ScrollAreaThumb as ShadcnScrollAreaThumb,
5117
4628
  ScrollAreaCorner as ShadcnScrollAreaCorner
5118
4629
  } from "@radix-ui/react-scroll-area";
5119
- import { jsx as jsx63, jsxs as jsxs42 } from "react/jsx-runtime";
5120
- var ScrollArea2 = React32.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs42(
4630
+ import { jsx as jsx59, jsxs as jsxs39 } from "react/jsx-runtime";
4631
+ var ScrollArea2 = React32.forwardRef(({ className, children, ...props }, ref) => /* @__PURE__ */ jsxs39(
5121
4632
  ShadcnScrollArea,
5122
4633
  {
5123
4634
  ref,
5124
4635
  className: cn("relative overflow-hidden", className),
5125
4636
  ...props,
5126
4637
  children: [
5127
- /* @__PURE__ */ jsx63(ShadcnScrollAreaViewport, { className: "h-full w-full rounded-[inherit]", children }),
5128
- /* @__PURE__ */ jsx63(ScrollBar2, {}),
5129
- /* @__PURE__ */ jsx63(ShadcnScrollAreaCorner, {})
4638
+ /* @__PURE__ */ jsx59(ShadcnScrollAreaViewport, { className: "h-full w-full rounded-[inherit]", children }),
4639
+ /* @__PURE__ */ jsx59(ScrollBar2, {}),
4640
+ /* @__PURE__ */ jsx59(ShadcnScrollAreaCorner, {})
5130
4641
  ]
5131
4642
  }
5132
4643
  ));
5133
4644
  ScrollArea2.displayName = ShadcnScrollArea.displayName;
5134
- var ScrollBar2 = React32.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx63(
4645
+ var ScrollBar2 = React32.forwardRef(({ className, orientation = "vertical", ...props }, ref) => /* @__PURE__ */ jsx59(
5135
4646
  ShadcnScrollAreaScrollbar,
5136
4647
  {
5137
4648
  ref,
@@ -5143,13 +4654,13 @@ var ScrollBar2 = React32.forwardRef(({ className, orientation = "vertical", ...p
5143
4654
  className
5144
4655
  ),
5145
4656
  ...props,
5146
- children: /* @__PURE__ */ jsx63(ShadcnScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
4657
+ children: /* @__PURE__ */ jsx59(ShadcnScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
5147
4658
  }
5148
4659
  ));
5149
4660
  ScrollBar2.displayName = ShadcnScrollAreaScrollbar.displayName;
5150
4661
 
5151
4662
  // components/form-controls/select.tsx
5152
- import { jsx as jsx64, jsxs as jsxs43 } from "react/jsx-runtime";
4663
+ import { jsx as jsx60, jsxs as jsxs40 } from "react/jsx-runtime";
5153
4664
  var Select2 = ({
5154
4665
  defaultValue,
5155
4666
  placeholder,
@@ -5157,9 +4668,9 @@ var Select2 = ({
5157
4668
  className = "",
5158
4669
  onValueChange
5159
4670
  }) => {
5160
- return /* @__PURE__ */ jsxs43(Select, { value: defaultValue, onValueChange, children: [
5161
- /* @__PURE__ */ jsx64(SelectTrigger, { className, children: /* @__PURE__ */ jsx64(SelectValue, { placeholder }) }),
5162
- /* @__PURE__ */ jsx64(SelectContent, { children: options?.map((option, i) => /* @__PURE__ */ jsx64(SelectItem, { value: option.value, children: option.label }, i)) })
4671
+ return /* @__PURE__ */ jsxs40(Select, { value: defaultValue, onValueChange, children: [
4672
+ /* @__PURE__ */ jsx60(SelectTrigger, { className, children: /* @__PURE__ */ jsx60(SelectValue, { placeholder }) }),
4673
+ /* @__PURE__ */ jsx60(SelectContent, { children: options?.map((option, i) => /* @__PURE__ */ jsx60(SelectItem, { value: option.value, children: option.label }, i)) })
5163
4674
  ] });
5164
4675
  };
5165
4676
 
@@ -5171,8 +4682,8 @@ var CollapsibleContent2 = CollapsiblePrimitive.CollapsibleContent;
5171
4682
  // components/ui/progress.tsx
5172
4683
  import * as React33 from "react";
5173
4684
  import * as ProgressPrimitive from "@radix-ui/react-progress";
5174
- import { jsx as jsx65 } from "react/jsx-runtime";
5175
- var Progress = React33.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsx65(
4685
+ import { jsx as jsx61 } from "react/jsx-runtime";
4686
+ var Progress = React33.forwardRef(({ className, value, ...props }, ref) => /* @__PURE__ */ jsx61(
5176
4687
  ProgressPrimitive.Root,
5177
4688
  {
5178
4689
  ref,
@@ -5181,7 +4692,7 @@ var Progress = React33.forwardRef(({ className, value, ...props }, ref) => /* @_
5181
4692
  className
5182
4693
  ),
5183
4694
  ...props,
5184
- children: /* @__PURE__ */ jsx65(
4695
+ children: /* @__PURE__ */ jsx61(
5185
4696
  ProgressPrimitive.Indicator,
5186
4697
  {
5187
4698
  className: "h-full w-full flex-1 bg-primary transition-all",
@@ -5194,26 +4705,26 @@ Progress.displayName = ProgressPrimitive.Root.displayName;
5194
4705
 
5195
4706
  // components/form-controls/setup-guide.tsx
5196
4707
  import { Check as Check4 } from "lucide-react";
5197
- import { useId as useId3, useState as useState10 } from "react";
5198
- import { jsx as jsx66, jsxs as jsxs44 } from "react/jsx-runtime";
4708
+ import { useId as useId3, useState as useState7 } from "react";
4709
+ import { jsx as jsx62, jsxs as jsxs41 } from "react/jsx-runtime";
5199
4710
  var SetupGuide = ({
5200
4711
  onDismiss,
5201
4712
  onStepComplete,
5202
4713
  items
5203
4714
  }) => {
5204
- const [expanded, setExpanded] = useState10(
4715
+ const [expanded, setExpanded] = useState7(
5205
4716
  items.findIndex((item) => !item.complete)
5206
4717
  );
5207
- const [isGuideOpen, setIsGuideOpen] = useState10(true);
4718
+ const [isGuideOpen, setIsGuideOpen] = useState7(true);
5208
4719
  const accessId = useId3();
5209
4720
  const completedItemsLength = items.filter((item) => item.complete).length;
5210
- return /* @__PURE__ */ jsxs44("div", { className: "p-0", children: [
5211
- /* @__PURE__ */ jsx66("div", { className: "px-4 pb-4", children: /* @__PURE__ */ jsx66("div", { className: "space-y-4", children: /* @__PURE__ */ jsx66("div", { className: "mt-2", children: /* @__PURE__ */ jsxs44("div", { className: "flex items-center gap-2", children: [
5212
- completedItemsLength === items.length ? /* @__PURE__ */ jsxs44("div", { className: "flex items-center gap-1", children: [
5213
- /* @__PURE__ */ jsx66(Check4, { className: "h-4 w-4 text-gray-400" }),
5214
- /* @__PURE__ */ jsx66("span", { className: "text-sm text-gray-400", children: "Done" })
5215
- ] }) : /* @__PURE__ */ jsx66("span", { className: "text-sm", children: `${completedItemsLength} / ${items.length} completed` }),
5216
- completedItemsLength !== items.length && /* @__PURE__ */ jsx66("div", { className: "w-24", children: /* @__PURE__ */ jsx66(
4721
+ return /* @__PURE__ */ jsxs41("div", { className: "p-0", children: [
4722
+ /* @__PURE__ */ jsx62("div", { className: "px-4 pb-4", children: /* @__PURE__ */ jsx62("div", { className: "space-y-4", children: /* @__PURE__ */ jsx62("div", { className: "mt-2", children: /* @__PURE__ */ jsxs41("div", { className: "flex items-center gap-2", children: [
4723
+ completedItemsLength === items.length ? /* @__PURE__ */ jsxs41("div", { className: "flex items-center gap-1", children: [
4724
+ /* @__PURE__ */ jsx62(Check4, { className: "h-4 w-4 text-gray-400" }),
4725
+ /* @__PURE__ */ jsx62("span", { className: "text-sm text-gray-400", children: "Done" })
4726
+ ] }) : /* @__PURE__ */ jsx62("span", { className: "text-sm", children: `${completedItemsLength} / ${items.length} completed` }),
4727
+ completedItemsLength !== items.length && /* @__PURE__ */ jsx62("div", { className: "w-24", children: /* @__PURE__ */ jsx62(
5217
4728
  Progress,
5218
4729
  {
5219
4730
  value: completedItemsLength / items.length * 100,
@@ -5221,7 +4732,7 @@ var SetupGuide = ({
5221
4732
  }
5222
4733
  ) })
5223
4734
  ] }) }) }) }),
5224
- /* @__PURE__ */ jsx66(Collapsible, { open: isGuideOpen, id: accessId, children: /* @__PURE__ */ jsx66(CollapsibleContent2, { className: "p-2", children: /* @__PURE__ */ jsx66("div", { className: "space-y-1", children: items.map((item) => /* @__PURE__ */ jsx66(
4735
+ /* @__PURE__ */ jsx62(Collapsible, { open: isGuideOpen, id: accessId, children: /* @__PURE__ */ jsx62(CollapsibleContent2, { className: "p-2", children: /* @__PURE__ */ jsx62("div", { className: "space-y-1", children: items.map((item) => /* @__PURE__ */ jsx62(
5225
4736
  SetupItem,
5226
4737
  {
5227
4738
  expanded: expanded === item.id,
@@ -5231,7 +4742,7 @@ var SetupGuide = ({
5231
4742
  },
5232
4743
  item.id
5233
4744
  )) }) }) }),
5234
- completedItemsLength === items.length && /* @__PURE__ */ jsx66("div", { className: "border-t border-gray-200 bg-gray-50 p-3", children: /* @__PURE__ */ jsx66("div", { className: "flex justify-end", children: /* @__PURE__ */ jsx66(Button, { onClick: onDismiss, children: "Dismiss Guide" }) }) })
4745
+ completedItemsLength === items.length && /* @__PURE__ */ jsx62("div", { className: "border-t border-gray-200 bg-gray-50 p-3", children: /* @__PURE__ */ jsx62("div", { className: "flex justify-end", children: /* @__PURE__ */ jsx62(Button, { onClick: onDismiss, children: "Dismiss Guide" }) }) })
5235
4746
  ] });
5236
4747
  };
5237
4748
  var SetupItem = ({
@@ -5246,44 +4757,44 @@ var SetupItem = ({
5246
4757
  secondaryButton,
5247
4758
  id
5248
4759
  }) => {
5249
- const [loading, setLoading] = useState10(false);
4760
+ const [loading, setLoading] = useState7(false);
5250
4761
  const completeItem = async () => {
5251
4762
  setLoading(true);
5252
4763
  await onComplete(id);
5253
4764
  setLoading(false);
5254
4765
  };
5255
- return /* @__PURE__ */ jsx66("div", { className: `rounded ${expanded ? "bg-gray-100" : ""}`, children: /* @__PURE__ */ jsx66("div", { className: `p-2 ${expanded ? "" : "hover:bg-gray-50"}`, children: /* @__PURE__ */ jsxs44("div", { className: "flex gap-2 items-start", children: [
5256
- /* @__PURE__ */ jsx66(TooltipProvider, { children: /* @__PURE__ */ jsxs44(Tooltip, { children: [
5257
- /* @__PURE__ */ jsx66(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx66(
4766
+ return /* @__PURE__ */ jsx62("div", { className: `rounded ${expanded ? "bg-gray-100" : ""}`, children: /* @__PURE__ */ jsx62("div", { className: `p-2 ${expanded ? "" : "hover:bg-gray-50"}`, children: /* @__PURE__ */ jsxs41("div", { className: "flex gap-2 items-start", children: [
4767
+ /* @__PURE__ */ jsx62(TooltipProvider, { children: /* @__PURE__ */ jsxs41(Tooltip, { children: [
4768
+ /* @__PURE__ */ jsx62(TooltipTrigger, { asChild: true, children: /* @__PURE__ */ jsx62(
5258
4769
  Button,
5259
4770
  {
5260
4771
  variant: "ghost",
5261
4772
  size: "icon",
5262
4773
  className: "mt-0.5",
5263
4774
  onClick: completeItem,
5264
- children: loading ? /* @__PURE__ */ jsx66("div", { className: "h-5 w-5 animate-spin rounded-full border-2 border-gray-300 border-t-gray-600" }) : complete ? /* @__PURE__ */ jsx66("div", { className: "h-5 w-5 rounded-full bg-gray-900 flex items-center justify-center", children: /* @__PURE__ */ jsx66(Check4, { className: "h-3 w-3 text-white" }) }) : /* @__PURE__ */ jsx66("div", { className: "h-5 w-5 rounded-full border-2 border-gray-300" })
4775
+ children: loading ? /* @__PURE__ */ jsx62("div", { className: "h-5 w-5 animate-spin rounded-full border-2 border-gray-300 border-t-gray-600" }) : complete ? /* @__PURE__ */ jsx62("div", { className: "h-5 w-5 rounded-full bg-gray-900 flex items-center justify-center", children: /* @__PURE__ */ jsx62(Check4, { className: "h-3 w-3 text-white" }) }) : /* @__PURE__ */ jsx62("div", { className: "h-5 w-5 rounded-full border-2 border-gray-300" })
5265
4776
  }
5266
4777
  ) }),
5267
- /* @__PURE__ */ jsx66(TooltipContent, { children: complete ? "Mark as not done" : "Mark as done" })
4778
+ /* @__PURE__ */ jsx62(TooltipContent, { children: complete ? "Mark as not done" : "Mark as done" })
5268
4779
  ] }) }),
5269
- /* @__PURE__ */ jsx66(
4780
+ /* @__PURE__ */ jsx62(
5270
4781
  "div",
5271
4782
  {
5272
4783
  className: `grow ${expanded ? "" : "cursor-pointer"}`,
5273
4784
  onClick: expanded ? void 0 : setExpanded,
5274
- children: /* @__PURE__ */ jsxs44("div", { className: "space-y-3", id: id.toString(), children: [
5275
- /* @__PURE__ */ jsx66("h4", { className: expanded ? "text-sm font-semibold" : "text-sm", children: title }),
5276
- /* @__PURE__ */ jsx66(Collapsible, { open: expanded, children: /* @__PURE__ */ jsx66(CollapsibleContent2, { className: "pb-2 pr-2", children: /* @__PURE__ */ jsxs44("div", { className: "space-y-4", children: [
5277
- /* @__PURE__ */ jsx66("p", { className: "text-sm text-gray-600", children: description }),
5278
- (primaryButton || secondaryButton) && /* @__PURE__ */ jsxs44("div", { className: "space-x-3", children: [
5279
- primaryButton && /* @__PURE__ */ jsx66(Button, { ...primaryButton.props, children: primaryButton.content }),
5280
- secondaryButton && /* @__PURE__ */ jsx66(Button, { variant: "outline", ...secondaryButton.props, children: secondaryButton.content })
4785
+ children: /* @__PURE__ */ jsxs41("div", { className: "space-y-3", id: id.toString(), children: [
4786
+ /* @__PURE__ */ jsx62("h4", { className: expanded ? "text-sm font-semibold" : "text-sm", children: title }),
4787
+ /* @__PURE__ */ jsx62(Collapsible, { open: expanded, children: /* @__PURE__ */ jsx62(CollapsibleContent2, { className: "pb-2 pr-2", children: /* @__PURE__ */ jsxs41("div", { className: "space-y-4", children: [
4788
+ /* @__PURE__ */ jsx62("p", { className: "text-sm text-gray-600", children: description }),
4789
+ (primaryButton || secondaryButton) && /* @__PURE__ */ jsxs41("div", { className: "space-x-3", children: [
4790
+ primaryButton && /* @__PURE__ */ jsx62(Button, { ...primaryButton.props, children: primaryButton.content }),
4791
+ secondaryButton && /* @__PURE__ */ jsx62(Button, { variant: "outline", ...secondaryButton.props, children: secondaryButton.content })
5281
4792
  ] })
5282
4793
  ] }) }) })
5283
4794
  ] })
5284
4795
  }
5285
4796
  ),
5286
- image && expanded && /* @__PURE__ */ jsx66(
4797
+ image && expanded && /* @__PURE__ */ jsx62(
5287
4798
  "img",
5288
4799
  {
5289
4800
  src: image.url,
@@ -5295,7 +4806,7 @@ var SetupItem = ({
5295
4806
  };
5296
4807
 
5297
4808
  // components/form-controls/sheet.tsx
5298
- import { jsx as jsx67, jsxs as jsxs45 } from "react/jsx-runtime";
4809
+ import { jsx as jsx63, jsxs as jsxs42 } from "react/jsx-runtime";
5299
4810
  var Sheet2 = ({
5300
4811
  title,
5301
4812
  trigger,
@@ -5303,20 +4814,20 @@ var Sheet2 = ({
5303
4814
  children,
5304
4815
  ...props
5305
4816
  }) => {
5306
- return /* @__PURE__ */ jsxs45(Sheet, { ...props, children: [
5307
- trigger && /* @__PURE__ */ jsx67(SheetTrigger, { children: trigger }),
5308
- /* @__PURE__ */ jsx67(SheetContent, { children: /* @__PURE__ */ jsxs45(SheetHeader, { children: [
5309
- /* @__PURE__ */ jsx67(SheetTitle, { children: title }),
5310
- /* @__PURE__ */ jsx67(SheetDescription, { children: description }),
4817
+ return /* @__PURE__ */ jsxs42(Sheet, { ...props, children: [
4818
+ trigger && /* @__PURE__ */ jsx63(SheetTrigger, { children: trigger }),
4819
+ /* @__PURE__ */ jsx63(SheetContent, { children: /* @__PURE__ */ jsxs42(SheetHeader, { children: [
4820
+ /* @__PURE__ */ jsx63(SheetTitle, { children: title }),
4821
+ /* @__PURE__ */ jsx63(SheetDescription, { children: description }),
5311
4822
  children
5312
4823
  ] }) })
5313
4824
  ] });
5314
4825
  };
5315
4826
 
5316
4827
  // components/form-controls/tags-input.tsx
5317
- import { X as X3 } from "lucide-react";
4828
+ import { X as X2 } from "lucide-react";
5318
4829
  import * as React35 from "react";
5319
- import { jsx as jsx68, jsxs as jsxs46 } from "react/jsx-runtime";
4830
+ import { jsx as jsx64, jsxs as jsxs43 } from "react/jsx-runtime";
5320
4831
  var TagsInput = React35.forwardRef(
5321
4832
  ({ variant = "default", className, value, onChange, ...props }, ref) => {
5322
4833
  const [inputValue, setInputValue] = React35.useState("");
@@ -5335,15 +4846,15 @@ var TagsInput = React35.forwardRef(
5335
4846
  const removeTag = (index) => {
5336
4847
  onChange(value.filter((_, i) => i !== index));
5337
4848
  };
5338
- return /* @__PURE__ */ jsxs46("div", { className: "flex flex-wrap gap-2 p-2 border rounded", children: [
5339
- value.map((tag, index) => /* @__PURE__ */ jsxs46(
4849
+ return /* @__PURE__ */ jsxs43("div", { className: "flex flex-wrap gap-2 p-2 border rounded", children: [
4850
+ value.map((tag, index) => /* @__PURE__ */ jsxs43(
5340
4851
  "span",
5341
4852
  {
5342
4853
  className: "bg-gray-200 px-2 py-1 rounded flex items-center",
5343
4854
  children: [
5344
4855
  tag,
5345
- /* @__PURE__ */ jsx68(
5346
- X3,
4856
+ /* @__PURE__ */ jsx64(
4857
+ X2,
5347
4858
  {
5348
4859
  className: "ml-1 w-4 h-4 cursor-pointer",
5349
4860
  onClick: () => removeTag(index)
@@ -5353,7 +4864,7 @@ var TagsInput = React35.forwardRef(
5353
4864
  },
5354
4865
  index
5355
4866
  )),
5356
- /* @__PURE__ */ jsx68(
4867
+ /* @__PURE__ */ jsx64(
5357
4868
  "input",
5358
4869
  {
5359
4870
  className: "grow border-none focus:ring-0",
@@ -5371,7 +4882,7 @@ TagsInput.displayName = "TagsInput";
5371
4882
 
5372
4883
  // components/form-controls/textarea.tsx
5373
4884
  import * as React36 from "react";
5374
- import { jsx as jsx69, jsxs as jsxs47 } from "react/jsx-runtime";
4885
+ import { jsx as jsx65, jsxs as jsxs44 } from "react/jsx-runtime";
5375
4886
  var Textarea2 = React36.forwardRef(
5376
4887
  ({
5377
4888
  variant = "default",
@@ -5383,15 +4894,15 @@ var Textarea2 = React36.forwardRef(
5383
4894
  rules,
5384
4895
  ...props
5385
4896
  }, ref) => {
5386
- return isFormField ? /* @__PURE__ */ jsx69(
4897
+ return isFormField ? /* @__PURE__ */ jsx65(
5387
4898
  FormField,
5388
4899
  {
5389
4900
  control,
5390
4901
  name,
5391
4902
  rules,
5392
- render: ({ field }) => /* @__PURE__ */ jsxs47(FormItem, { children: [
5393
- title && /* @__PURE__ */ jsx69(FormLabel, { children: title }),
5394
- /* @__PURE__ */ jsx69(FormControl, { children: /* @__PURE__ */ jsx69(
4903
+ render: ({ field }) => /* @__PURE__ */ jsxs44(FormItem, { children: [
4904
+ title && /* @__PURE__ */ jsx65(FormLabel, { children: title }),
4905
+ /* @__PURE__ */ jsx65(FormControl, { children: /* @__PURE__ */ jsx65(
5395
4906
  Textarea,
5396
4907
  {
5397
4908
  className: `${className} resize-none`,
@@ -5399,10 +4910,10 @@ var Textarea2 = React36.forwardRef(
5399
4910
  ...props
5400
4911
  }
5401
4912
  ) }),
5402
- /* @__PURE__ */ jsx69(FormMessage, {})
4913
+ /* @__PURE__ */ jsx65(FormMessage, {})
5403
4914
  ] })
5404
4915
  }
5405
- ) : /* @__PURE__ */ jsx69(
4916
+ ) : /* @__PURE__ */ jsx65(
5406
4917
  Textarea,
5407
4918
  {
5408
4919
  className: `${className} resize-none`,
@@ -5416,8 +4927,8 @@ Textarea2.displayName = "Textarea";
5416
4927
 
5417
4928
  // components/form-controls/time-picker.tsx
5418
4929
  import { Clock } from "lucide-react";
5419
- import { useState as useState12 } from "react";
5420
- import { jsx as jsx70, jsxs as jsxs48 } from "react/jsx-runtime";
4930
+ import { useState as useState9 } from "react";
4931
+ import { jsx as jsx66, jsxs as jsxs45 } from "react/jsx-runtime";
5421
4932
  var TimePicker = ({
5422
4933
  value,
5423
4934
  onValueChange,
@@ -5425,7 +4936,7 @@ var TimePicker = ({
5425
4936
  className = "",
5426
4937
  disabled = false
5427
4938
  }) => {
5428
- const [open, setOpen] = useState12(false);
4939
+ const [open, setOpen] = useState9(false);
5429
4940
  const hours = Array.from({ length: 24 }, (_, i) => ({
5430
4941
  value: i.toString().padStart(2, "0"),
5431
4942
  label: i.toString().padStart(2, "0")
@@ -5441,21 +4952,21 @@ var TimePicker = ({
5441
4952
  const handleMinuteChange = (newMinute) => {
5442
4953
  onValueChange(`${hour}:${newMinute}`);
5443
4954
  };
5444
- return /* @__PURE__ */ jsxs48(Popover, { open, onOpenChange: setOpen, children: [
5445
- /* @__PURE__ */ jsx70(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs48(
4955
+ return /* @__PURE__ */ jsxs45(Popover, { open, onOpenChange: setOpen, children: [
4956
+ /* @__PURE__ */ jsx66(PopoverTrigger, { asChild: true, children: /* @__PURE__ */ jsxs45(
5446
4957
  Button,
5447
4958
  {
5448
4959
  variant: "outline",
5449
4960
  className: `w-full justify-start text-left font-normal ${className}`,
5450
4961
  disabled,
5451
4962
  children: [
5452
- /* @__PURE__ */ jsx70(Clock, { className: "mr-2 h-4 w-4" }),
4963
+ /* @__PURE__ */ jsx66(Clock, { className: "mr-2 h-4 w-4" }),
5453
4964
  value || placeholder
5454
4965
  ]
5455
4966
  }
5456
4967
  ) }),
5457
- /* @__PURE__ */ jsx70(PopoverContent, { className: "w-auto p-4", align: "start", children: /* @__PURE__ */ jsxs48("div", { className: "flex items-center gap-2", children: [
5458
- /* @__PURE__ */ jsx70(
4968
+ /* @__PURE__ */ jsx66(PopoverContent, { className: "w-auto p-4", align: "start", children: /* @__PURE__ */ jsxs45("div", { className: "flex items-center gap-2", children: [
4969
+ /* @__PURE__ */ jsx66(
5459
4970
  Select2,
5460
4971
  {
5461
4972
  defaultValue: hour,
@@ -5465,8 +4976,8 @@ var TimePicker = ({
5465
4976
  className: "w-[80px]"
5466
4977
  }
5467
4978
  ),
5468
- /* @__PURE__ */ jsx70("span", { className: "text-lg", children: ":" }),
5469
- /* @__PURE__ */ jsx70(
4979
+ /* @__PURE__ */ jsx66("span", { className: "text-lg", children: ":" }),
4980
+ /* @__PURE__ */ jsx66(
5470
4981
  Select2,
5471
4982
  {
5472
4983
  defaultValue: minute,
@@ -5481,19 +4992,19 @@ var TimePicker = ({
5481
4992
  };
5482
4993
 
5483
4994
  // components/form-controls/tooltip.tsx
5484
- import { jsx as jsx71, jsxs as jsxs49 } from "react/jsx-runtime";
4995
+ import { jsx as jsx67, jsxs as jsxs46 } from "react/jsx-runtime";
5485
4996
  var Tooltip3 = ({ children, tipContent }) => {
5486
- return /* @__PURE__ */ jsx71(TooltipProvider, { children: /* @__PURE__ */ jsxs49(Tooltip, { delayDuration: 0, children: [
5487
- /* @__PURE__ */ jsx71(TooltipTrigger, { children }),
5488
- /* @__PURE__ */ jsx71(TooltipContent, { children: /* @__PURE__ */ jsx71("p", { children: tipContent }) })
4997
+ return /* @__PURE__ */ jsx67(TooltipProvider, { children: /* @__PURE__ */ jsxs46(Tooltip, { delayDuration: 0, children: [
4998
+ /* @__PURE__ */ jsx67(TooltipTrigger, { children }),
4999
+ /* @__PURE__ */ jsx67(TooltipContent, { children: /* @__PURE__ */ jsx67("p", { children: tipContent }) })
5489
5000
  ] }) });
5490
5001
  };
5491
5002
 
5492
5003
  // components/form-controls/upload-widget.tsx
5493
- import { Loader2 as Loader24, Upload } from "lucide-react";
5004
+ import { Loader2 as Loader23, Upload } from "lucide-react";
5494
5005
  import { useDropzone } from "react-dropzone";
5495
5006
  import { toast } from "sonner";
5496
- import { jsx as jsx72, jsxs as jsxs50 } from "react/jsx-runtime";
5007
+ import { jsx as jsx68, jsxs as jsxs47 } from "react/jsx-runtime";
5497
5008
  function UploadWidget({
5498
5009
  accept,
5499
5010
  maxSize,
@@ -5525,18 +5036,18 @@ function UploadWidget({
5525
5036
  maxFiles
5526
5037
  };
5527
5038
  const { getRootProps, getInputProps, isDragActive } = useDropzone(dropzoneOptions);
5528
- return /* @__PURE__ */ jsxs50(
5039
+ return /* @__PURE__ */ jsxs47(
5529
5040
  "div",
5530
5041
  {
5531
5042
  ...getRootProps(),
5532
5043
  className: "relative border-2 border-dashed border-gray-300 rounded-lg p-6 text-center cursor-pointer min-h-[160px]",
5533
5044
  children: [
5534
- isUploading && /* @__PURE__ */ jsx72("div", { className: "absolute top-3 right-3", children: /* @__PURE__ */ jsx72(Loader24, { className: "animate-spin h-6 w-6 text-primary" }) }),
5535
- /* @__PURE__ */ jsx72("input", { ...getInputProps() }),
5536
- isDragActive ? /* @__PURE__ */ jsx72("p", { children: "Drop the files here ..." }) : /* @__PURE__ */ jsxs50("div", { children: [
5537
- /* @__PURE__ */ jsx72(Upload, { className: "mx-auto h-12 w-12 text-gray-400" }),
5538
- /* @__PURE__ */ jsx72("p", { children: "Drag n drop some files here, or click to select files" }),
5539
- /* @__PURE__ */ jsxs50("p", { className: "text-sm text-gray-500", children: [
5045
+ isUploading && /* @__PURE__ */ jsx68("div", { className: "absolute top-3 right-3", children: /* @__PURE__ */ jsx68(Loader23, { className: "animate-spin h-6 w-6 text-primary" }) }),
5046
+ /* @__PURE__ */ jsx68("input", { ...getInputProps() }),
5047
+ isDragActive ? /* @__PURE__ */ jsx68("p", { children: "Drop the files here ..." }) : /* @__PURE__ */ jsxs47("div", { children: [
5048
+ /* @__PURE__ */ jsx68(Upload, { className: "mx-auto h-12 w-12 text-gray-400" }),
5049
+ /* @__PURE__ */ jsx68("p", { children: "Drag n drop some files here, or click to select files" }),
5050
+ /* @__PURE__ */ jsxs47("p", { className: "text-sm text-gray-500", children: [
5540
5051
  "Only ",
5541
5052
  acceptedTypes,
5542
5053
  " files up to ",
@@ -5544,11 +5055,11 @@ function UploadWidget({
5544
5055
  "MB are accepted"
5545
5056
  ] })
5546
5057
  ] }),
5547
- fileUrls.length > 0 && /* @__PURE__ */ jsx72("div", { className: "mt-4 border-t border-gray-300 pt-4", children: /* @__PURE__ */ jsx72("ul", { className: "flex flex-wrap gap-2", children: fileUrls.map((url, i) => {
5058
+ fileUrls.length > 0 && /* @__PURE__ */ jsx68("div", { className: "mt-4 border-t border-gray-300 pt-4", children: /* @__PURE__ */ jsx68("ul", { className: "flex flex-wrap gap-2", children: fileUrls.map((url, i) => {
5548
5059
  const fileName = getFileName(url);
5549
- return /* @__PURE__ */ jsxs50("li", { className: "flex items-center space-x-2 text-sm", children: [
5550
- /* @__PURE__ */ jsx72("div", { children: getFileIcon(fileName) }),
5551
- /* @__PURE__ */ jsx72("span", { children: fileName })
5060
+ return /* @__PURE__ */ jsxs47("li", { className: "flex items-center space-x-2 text-sm", children: [
5061
+ /* @__PURE__ */ jsx68("div", { children: getFileIcon(fileName) }),
5062
+ /* @__PURE__ */ jsx68("span", { children: fileName })
5552
5063
  ] }, i);
5553
5064
  }) }) })
5554
5065
  ]
@@ -5559,15 +5070,15 @@ function UploadWidget({
5559
5070
  // components/general/markdown-renderer.tsx
5560
5071
  import ReactMarkdown from "react-markdown";
5561
5072
  import remarkGfm from "remark-gfm";
5562
- import { jsx as jsx73 } from "react/jsx-runtime";
5073
+ import { jsx as jsx69 } from "react/jsx-runtime";
5563
5074
  function MarkdownRenderer({ content }) {
5564
- return /* @__PURE__ */ jsx73(
5075
+ return /* @__PURE__ */ jsx69(
5565
5076
  ReactMarkdown,
5566
5077
  {
5567
5078
  remarkPlugins: [remarkGfm],
5568
5079
  className: "text-primary-900",
5569
5080
  components: {
5570
- a: ({ node, ...props }) => /* @__PURE__ */ jsx73(
5081
+ a: ({ node, ...props }) => /* @__PURE__ */ jsx69(
5571
5082
  "a",
5572
5083
  {
5573
5084
  target: "_blank",
@@ -5576,20 +5087,20 @@ function MarkdownRenderer({ content }) {
5576
5087
  ...props
5577
5088
  }
5578
5089
  ),
5579
- h1: ({ node, ...props }) => /* @__PURE__ */ jsx73("h1", { className: "text-2xl font-bold mt-6 mb-4", ...props }),
5580
- h2: ({ node, ...props }) => /* @__PURE__ */ jsx73("h2", { className: "text-xl font-semibold mt-5 mb-3", ...props }),
5581
- h3: ({ node, ...props }) => /* @__PURE__ */ jsx73("h3", { className: "text-lg font-semibold mt-4 mb-2", ...props }),
5582
- code: ({ node, ...props }) => /* @__PURE__ */ jsx73(
5090
+ h1: ({ node, ...props }) => /* @__PURE__ */ jsx69("h1", { className: "text-2xl font-bold mt-6 mb-4", ...props }),
5091
+ h2: ({ node, ...props }) => /* @__PURE__ */ jsx69("h2", { className: "text-xl font-semibold mt-5 mb-3", ...props }),
5092
+ h3: ({ node, ...props }) => /* @__PURE__ */ jsx69("h3", { className: "text-lg font-semibold mt-4 mb-2", ...props }),
5093
+ code: ({ node, ...props }) => /* @__PURE__ */ jsx69(
5583
5094
  "code",
5584
5095
  {
5585
5096
  className: "block bg-stone-100 p-3 rounded font-mono",
5586
5097
  ...props
5587
5098
  }
5588
5099
  ),
5589
- ul: ({ node, ...props }) => /* @__PURE__ */ jsx73("ul", { className: "list-disc pl-6 my-4", ...props }),
5590
- ol: ({ node, ...props }) => /* @__PURE__ */ jsx73("ol", { className: "list-decimal pl-6 my-4", ...props }),
5591
- p: ({ node, ...props }) => /* @__PURE__ */ jsx73("p", { className: "my-4", ...props }),
5592
- blockquote: ({ node, ...props }) => /* @__PURE__ */ jsx73(
5100
+ ul: ({ node, ...props }) => /* @__PURE__ */ jsx69("ul", { className: "list-disc pl-6 my-4", ...props }),
5101
+ ol: ({ node, ...props }) => /* @__PURE__ */ jsx69("ol", { className: "list-decimal pl-6 my-4", ...props }),
5102
+ p: ({ node, ...props }) => /* @__PURE__ */ jsx69("p", { className: "my-4", ...props }),
5103
+ blockquote: ({ node, ...props }) => /* @__PURE__ */ jsx69(
5593
5104
  "blockquote",
5594
5105
  {
5595
5106
  className: "border-l-4 border-stone-200 pl-4 my-4 italic",
@@ -5603,9 +5114,9 @@ function MarkdownRenderer({ content }) {
5603
5114
  }
5604
5115
 
5605
5116
  // components/general/chat-loading.tsx
5606
- import { jsx as jsx74, jsxs as jsxs51 } from "react/jsx-runtime";
5117
+ import { jsx as jsx70, jsxs as jsxs48 } from "react/jsx-runtime";
5607
5118
  function ChatLoading() {
5608
- return /* @__PURE__ */ jsxs51(
5119
+ return /* @__PURE__ */ jsxs48(
5609
5120
  "svg",
5610
5121
  {
5611
5122
  xmlns: "http://www.w3.org/2000/svg",
@@ -5613,7 +5124,7 @@ function ChatLoading() {
5613
5124
  width: "60",
5614
5125
  height: "15",
5615
5126
  children: [
5616
- /* @__PURE__ */ jsx74("circle", { cx: "7.5", cy: "7.5", r: "3.5", fill: "#444444", children: /* @__PURE__ */ jsx74(
5127
+ /* @__PURE__ */ jsx70("circle", { cx: "7.5", cy: "7.5", r: "3.5", fill: "#444444", children: /* @__PURE__ */ jsx70(
5617
5128
  "animate",
5618
5129
  {
5619
5130
  attributeName: "cy",
@@ -5626,7 +5137,7 @@ function ChatLoading() {
5626
5137
  values: "7.5;3.5;7.5"
5627
5138
  }
5628
5139
  ) }),
5629
- /* @__PURE__ */ jsx74("circle", { cx: "30", cy: "7.5", r: "3.5", fill: "#444444", children: /* @__PURE__ */ jsx74(
5140
+ /* @__PURE__ */ jsx70("circle", { cx: "30", cy: "7.5", r: "3.5", fill: "#444444", children: /* @__PURE__ */ jsx70(
5630
5141
  "animate",
5631
5142
  {
5632
5143
  attributeName: "cy",
@@ -5639,7 +5150,7 @@ function ChatLoading() {
5639
5150
  values: "7.5;3.5;7.5"
5640
5151
  }
5641
5152
  ) }),
5642
- /* @__PURE__ */ jsx74("circle", { cx: "52.5", cy: "7.5", r: "3.5", fill: "#444444", children: /* @__PURE__ */ jsx74(
5153
+ /* @__PURE__ */ jsx70("circle", { cx: "52.5", cy: "7.5", r: "3.5", fill: "#444444", children: /* @__PURE__ */ jsx70(
5643
5154
  "animate",
5644
5155
  {
5645
5156
  attributeName: "cy",
@@ -5658,10 +5169,10 @@ function ChatLoading() {
5658
5169
  }
5659
5170
 
5660
5171
  // components/layout/action-bar.tsx
5661
- import { ArrowLeft, icons as icons3, Loader2 as Loader25 } from "lucide-react";
5662
- import { useRouter as useRouter4 } from "next/navigation";
5172
+ import { ArrowLeft, icons as icons3, Loader2 as Loader24 } from "lucide-react";
5173
+ import { useRouter as useRouter3 } from "next/navigation";
5663
5174
  import React37 from "react";
5664
- import { Fragment as Fragment9, jsx as jsx75, jsxs as jsxs52 } from "react/jsx-runtime";
5175
+ import { Fragment as Fragment6, jsx as jsx71, jsxs as jsxs49 } from "react/jsx-runtime";
5665
5176
  var colorStyles = {
5666
5177
  red: "bg-red-50 hover:bg-red-100 text-red-600",
5667
5178
  blue: "bg-blue-50 hover:bg-blue-100 text-blue-600",
@@ -5675,50 +5186,50 @@ function EloquentActionBar({
5675
5186
  buttons,
5676
5187
  title
5677
5188
  }) {
5678
- const router = useRouter4();
5189
+ const router = useRouter3();
5679
5190
  const LucideIcons = icons3;
5680
- return /* @__PURE__ */ jsxs52("div", { className: "flex bg-white border-gray-200 border-b border-x rounded-t-lg items-center", children: [
5681
- showBack && /* @__PURE__ */ jsxs52(Fragment9, { children: [
5682
- /* @__PURE__ */ jsxs52(
5191
+ return /* @__PURE__ */ jsxs49("div", { className: "flex bg-white border-gray-200 border-b border-x rounded-t-lg items-center", children: [
5192
+ showBack && /* @__PURE__ */ jsxs49(Fragment6, { children: [
5193
+ /* @__PURE__ */ jsxs49(
5683
5194
  "button",
5684
5195
  {
5685
5196
  onClick: () => router.back(),
5686
5197
  className: "flex items-center px-3 py-2 hover:bg-gray-100 transition-colors",
5687
5198
  children: [
5688
- /* @__PURE__ */ jsx75(ArrowLeft, { className: "w-5 h-5 mr-2 text-gray-600" }),
5689
- /* @__PURE__ */ jsx75("span", { className: "text-gray-600 font-medium", children: "Back" })
5199
+ /* @__PURE__ */ jsx71(ArrowLeft, { className: "w-5 h-5 mr-2 text-gray-600" }),
5200
+ /* @__PURE__ */ jsx71("span", { className: "text-gray-600 font-medium", children: "Back" })
5690
5201
  ]
5691
5202
  }
5692
5203
  ),
5693
- /* @__PURE__ */ jsx75(Separator3, { orientation: "vertical", className: "h-full" })
5204
+ /* @__PURE__ */ jsx71(Separator3, { orientation: "vertical", className: "h-full" })
5694
5205
  ] }),
5695
- /* @__PURE__ */ jsx75("div", { className: "flex items-center", children: buttons.map((button, index) => {
5206
+ /* @__PURE__ */ jsx71("div", { className: "flex items-center", children: buttons.map((button, index) => {
5696
5207
  const Icon3 = LucideIcons[button.icon];
5697
- return /* @__PURE__ */ jsxs52(React37.Fragment, { children: [
5698
- /* @__PURE__ */ jsxs52(
5208
+ return /* @__PURE__ */ jsxs49(React37.Fragment, { children: [
5209
+ /* @__PURE__ */ jsxs49(
5699
5210
  "button",
5700
5211
  {
5701
5212
  onClick: button.action,
5702
5213
  disabled: button.isLoading,
5703
5214
  className: `flex items-center px-4 py-2 transition-colors ${colorStyles[button.color]} ${button.isLoading ? "opacity-70 cursor-not-allowed" : ""}`,
5704
5215
  children: [
5705
- button.isLoading ? /* @__PURE__ */ jsx75(Loader25, { className: "w-5 h-5 mr-2 animate-spin" }) : /* @__PURE__ */ jsx75(Icon3, { className: "w-5 h-5 mr-2" }),
5706
- /* @__PURE__ */ jsx75("span", { className: "font-medium", children: button.label })
5216
+ button.isLoading ? /* @__PURE__ */ jsx71(Loader24, { className: "w-5 h-5 mr-2 animate-spin" }) : /* @__PURE__ */ jsx71(Icon3, { className: "w-5 h-5 mr-2" }),
5217
+ /* @__PURE__ */ jsx71("span", { className: "font-medium", children: button.label })
5707
5218
  ]
5708
5219
  }
5709
5220
  ),
5710
- index < buttons.length - 1 && /* @__PURE__ */ jsx75(Separator3, { orientation: "vertical", className: "h-full" })
5221
+ index < buttons.length - 1 && /* @__PURE__ */ jsx71(Separator3, { orientation: "vertical", className: "h-full" })
5711
5222
  ] }, button.label);
5712
5223
  }) }),
5713
- title && /* @__PURE__ */ jsx75("span", { className: "text-lg", children: title })
5224
+ title && /* @__PURE__ */ jsx71("span", { className: "text-lg", children: title })
5714
5225
  ] });
5715
5226
  }
5716
5227
 
5717
5228
  // components/schema-fields/dropdown-field.tsx
5718
- import { jsx as jsx76, jsxs as jsxs53 } from "react/jsx-runtime";
5229
+ import { jsx as jsx72, jsxs as jsxs50 } from "react/jsx-runtime";
5719
5230
  function ColorDot({ color }) {
5720
5231
  if (!color) return null;
5721
- return /* @__PURE__ */ jsx76(
5232
+ return /* @__PURE__ */ jsx72(
5722
5233
  "div",
5723
5234
  {
5724
5235
  className: "w-3 h-3 rounded-full mr-2 inline-block",
@@ -5735,25 +5246,25 @@ function DropdownField({ schema, value, onChange }) {
5735
5246
  const renderSelectedValue = () => {
5736
5247
  const selectedOption = options?.find((opt) => opt.value === value);
5737
5248
  if (!selectedOption) return null;
5738
- return /* @__PURE__ */ jsxs53("div", { className: "flex items-center", children: [
5739
- /* @__PURE__ */ jsx76(ColorDot, { color: selectedOption.color }),
5249
+ return /* @__PURE__ */ jsxs50("div", { className: "flex items-center", children: [
5250
+ /* @__PURE__ */ jsx72(ColorDot, { color: selectedOption.color }),
5740
5251
  selectedOption.label
5741
5252
  ] });
5742
5253
  };
5743
- return /* @__PURE__ */ jsxs53(
5254
+ return /* @__PURE__ */ jsxs50(
5744
5255
  Select,
5745
5256
  {
5746
5257
  value: value ?? "",
5747
5258
  onValueChange: onChange,
5748
5259
  children: [
5749
- /* @__PURE__ */ jsx76(SelectTrigger, { children: /* @__PURE__ */ jsx76(SelectValue, { children: renderSelectedValue() }) }),
5750
- /* @__PURE__ */ jsx76(SelectContent, { children: options?.map((option) => /* @__PURE__ */ jsxs53(
5260
+ /* @__PURE__ */ jsx72(SelectTrigger, { children: /* @__PURE__ */ jsx72(SelectValue, { children: renderSelectedValue() }) }),
5261
+ /* @__PURE__ */ jsx72(SelectContent, { children: options?.map((option) => /* @__PURE__ */ jsxs50(
5751
5262
  SelectItem,
5752
5263
  {
5753
5264
  value: option.value,
5754
5265
  className: "flex items-center",
5755
5266
  children: [
5756
- /* @__PURE__ */ jsx76(ColorDot, { color: option.color }),
5267
+ /* @__PURE__ */ jsx72(ColorDot, { color: option.color }),
5757
5268
  option.label
5758
5269
  ]
5759
5270
  },
@@ -5765,7 +5276,7 @@ function DropdownField({ schema, value, onChange }) {
5765
5276
  }
5766
5277
 
5767
5278
  // components/schema-fields/string-field.tsx
5768
- import { jsx as jsx77 } from "react/jsx-runtime";
5279
+ import { jsx as jsx73 } from "react/jsx-runtime";
5769
5280
  function StringField({
5770
5281
  name,
5771
5282
  schema,
@@ -5797,7 +5308,7 @@ function StringField({
5797
5308
  return "text";
5798
5309
  }
5799
5310
  };
5800
- return /* @__PURE__ */ jsx77(
5311
+ return /* @__PURE__ */ jsx73(
5801
5312
  Input,
5802
5313
  {
5803
5314
  value: value || "",
@@ -5816,14 +5327,14 @@ function StringField({
5816
5327
  }
5817
5328
 
5818
5329
  // components/schema-fields/string-multi-line-field.tsx
5819
- import { jsx as jsx78 } from "react/jsx-runtime";
5330
+ import { jsx as jsx74 } from "react/jsx-runtime";
5820
5331
  function StringMultiLineField({
5821
5332
  name,
5822
5333
  schema,
5823
5334
  value,
5824
5335
  onChange
5825
5336
  }) {
5826
- return /* @__PURE__ */ jsx78(
5337
+ return /* @__PURE__ */ jsx74(
5827
5338
  Textarea,
5828
5339
  {
5829
5340
  value: value || "",
@@ -5837,10 +5348,10 @@ function StringMultiLineField({
5837
5348
 
5838
5349
  // components/schema-fields/text-field.tsx
5839
5350
  import { RiCheckLine } from "@remixicon/react";
5840
- import { useState as useState13 } from "react";
5841
- import { jsx as jsx79, jsxs as jsxs54 } from "react/jsx-runtime";
5351
+ import { useState as useState10 } from "react";
5352
+ import { jsx as jsx75, jsxs as jsxs51 } from "react/jsx-runtime";
5842
5353
  function TextField({ schema, value, onChange }) {
5843
- return /* @__PURE__ */ jsx79(TooltipProvider, { children: /* @__PURE__ */ jsx79("div", { className: "rounded-lg border bg-background flex flex-col", children: /* @__PURE__ */ jsx79(
5354
+ return /* @__PURE__ */ jsx75(TooltipProvider, { children: /* @__PURE__ */ jsx75("div", { className: "rounded-lg border bg-background flex flex-col", children: /* @__PURE__ */ jsx75(
5844
5355
  Input,
5845
5356
  {
5846
5357
  value,
@@ -5851,7 +5362,7 @@ function TextField({ schema, value, onChange }) {
5851
5362
  }
5852
5363
 
5853
5364
  // components/schema-fields/schema-field.tsx
5854
- import { jsx as jsx80, jsxs as jsxs55 } from "react/jsx-runtime";
5365
+ import { jsx as jsx76, jsxs as jsxs52 } from "react/jsx-runtime";
5855
5366
  function getFieldType(schema) {
5856
5367
  if (schema.enum) return "dropdown";
5857
5368
  if (schema.format === "richtext") return "text";
@@ -5873,38 +5384,63 @@ function SchemaField(props) {
5873
5384
  case "email":
5874
5385
  case "phone":
5875
5386
  case "url":
5876
- return /* @__PURE__ */ jsx80(StringField, { ...props });
5387
+ return /* @__PURE__ */ jsx76(StringField, { ...props });
5877
5388
  case "stringMultiline":
5878
- return /* @__PURE__ */ jsx80(StringMultiLineField, { ...props });
5389
+ return /* @__PURE__ */ jsx76(StringMultiLineField, { ...props });
5879
5390
  case "text":
5880
- return /* @__PURE__ */ jsx80(TextField, { ...props });
5391
+ return /* @__PURE__ */ jsx76(TextField, { ...props });
5881
5392
  case "dropdown":
5882
- return /* @__PURE__ */ jsx80(DropdownField, { ...props });
5393
+ return /* @__PURE__ */ jsx76(DropdownField, { ...props });
5883
5394
  default:
5884
- return /* @__PURE__ */ jsxs55("div", { className: "text-red-500", children: [
5395
+ return /* @__PURE__ */ jsxs52("div", { className: "text-red-500", children: [
5885
5396
  "Unsupported field type: ",
5886
5397
  fieldType
5887
5398
  ] });
5888
5399
  }
5889
5400
  };
5890
- return /* @__PURE__ */ jsxs55("div", { className: cn("space-y-2", getColspanBySchema(schema)), children: [
5891
- /* @__PURE__ */ jsxs55(Label2, { children: [
5401
+ return /* @__PURE__ */ jsxs52("div", { className: cn("space-y-2", getColspanBySchema(schema)), children: [
5402
+ /* @__PURE__ */ jsxs52(Label, { children: [
5892
5403
  label ?? schema.title ?? name,
5893
- schema.required && /* @__PURE__ */ jsx80("span", { className: "text-red-500", children: "*" })
5404
+ schema.required && /* @__PURE__ */ jsx76("span", { className: "text-red-500", children: "*" })
5894
5405
  ] }),
5895
5406
  renderField(),
5896
- schema.description && /* @__PURE__ */ jsx80("p", { className: "text-sm text-gray-500", children: schema.description })
5407
+ schema.description && /* @__PURE__ */ jsx76("p", { className: "text-sm text-gray-500", children: schema.description })
5897
5408
  ] });
5898
5409
  }
5899
5410
 
5411
+ // ../docs/dist/index.mjs
5412
+ import { File as File2, FileSpreadsheet as FileSpreadsheet2, FileText as FileText2 } from "lucide-react";
5413
+ import { jsx as jsx77 } from "react/jsx-runtime";
5414
+ var getFileIcon2 = (fileName) => {
5415
+ const extensionMatch = fileName.match(/\.([^.]+)$/);
5416
+ const extension = extensionMatch ? extensionMatch[1].toLowerCase() : null;
5417
+ if (!extension) return /* @__PURE__ */ jsx77(File2, { className: "w-8 h-8 text-gray-500" });
5418
+ switch (extension) {
5419
+ case "pdf":
5420
+ return /* @__PURE__ */ jsx77(File2, { className: "w-8 h-8 text-red-500" });
5421
+ case "doc":
5422
+ case "docx":
5423
+ return /* @__PURE__ */ jsx77(FileText2, { className: "w-8 h-8 text-blue-500" });
5424
+ case "xls":
5425
+ case "xlsx":
5426
+ return /* @__PURE__ */ jsx77(FileSpreadsheet2, { className: "w-8 h-8 text-green-500" });
5427
+ default:
5428
+ return /* @__PURE__ */ jsx77(File2, { className: "w-8 h-8 text-gray-500" });
5429
+ }
5430
+ };
5431
+ var getFileName2 = (url) => {
5432
+ const fileName = decodeURIComponent(url.split("/").pop() ?? "");
5433
+ const cleanFileName = fileName.replace(/%28(\d+)%29/g, "($1)").replace(/[^\w\s().-]/g, "").replace(/\s+/g, "_").replace(/-\d+(?=\.pdf)/g, "");
5434
+ return cleanFileName;
5435
+ };
5436
+
5900
5437
  // components/upload/upload-widget-v2.tsx
5901
- import { getFileIcon as getFileIcon2, getFileName as getFileName2 } from "@elqnt/docs";
5902
- import { Loader2 as Loader26, UploadCloud } from "lucide-react";
5903
- import { useState as useState14 } from "react";
5438
+ import { Loader2 as Loader25, UploadCloud } from "lucide-react";
5439
+ import { useState as useState11 } from "react";
5904
5440
  import { useDropzone as useDropzone2 } from "react-dropzone";
5905
5441
  import { toast as toast2 } from "sonner";
5906
5442
  import { uploadFile, uploadToS3 } from "./upload/upload-actions";
5907
- import { jsx as jsx81, jsxs as jsxs56 } from "react/jsx-runtime";
5443
+ import { jsx as jsx78, jsxs as jsxs53 } from "react/jsx-runtime";
5908
5444
  function UploadWidgetV2({
5909
5445
  accept,
5910
5446
  maxSize,
@@ -5914,8 +5450,8 @@ function UploadWidgetV2({
5914
5450
  uploadDestination = "azure",
5915
5451
  hideUploadedFiles = false
5916
5452
  }) {
5917
- const [isUploading, setIsUploading] = useState14(false);
5918
- const [fileUrls, setFileUrls] = useState14([]);
5453
+ const [isUploading, setIsUploading] = useState11(false);
5454
+ const [fileUrls, setFileUrls] = useState11([]);
5919
5455
  const fileMaxSizeMB = maxSize / 1024 / 1024;
5920
5456
  const acceptedTypes = accept ? Object.values(accept).flat().join(", ") : "";
5921
5457
  const handleUpload = async (files) => {
@@ -5962,7 +5498,7 @@ function UploadWidgetV2({
5962
5498
  maxSize,
5963
5499
  maxFiles
5964
5500
  });
5965
- return /* @__PURE__ */ jsxs56(
5501
+ return /* @__PURE__ */ jsxs53(
5966
5502
  "div",
5967
5503
  {
5968
5504
  ...getRootProps(),
@@ -5971,12 +5507,12 @@ function UploadWidgetV2({
5971
5507
  className
5972
5508
  ),
5973
5509
  children: [
5974
- isUploading && /* @__PURE__ */ jsx81("div", { className: "absolute top-3 right-3", children: /* @__PURE__ */ jsx81(Loader26, { className: "animate-spin h-6 w-6 text-primary" }) }),
5975
- /* @__PURE__ */ jsx81("input", { ...getInputProps() }),
5976
- isDragActive ? /* @__PURE__ */ jsx81("p", { children: "Drop the files here ..." }) : /* @__PURE__ */ jsxs56("div", { children: [
5977
- /* @__PURE__ */ jsx81(UploadCloud, { className: "mx-auto h-12 w-12 text-gray-400" }),
5978
- /* @__PURE__ */ jsx81("p", { children: "Drag n drop some files here, or click to select files" }),
5979
- /* @__PURE__ */ jsxs56("p", { className: "text-sm text-gray-500", children: [
5510
+ isUploading && /* @__PURE__ */ jsx78("div", { className: "absolute top-3 right-3", children: /* @__PURE__ */ jsx78(Loader25, { className: "animate-spin h-6 w-6 text-primary" }) }),
5511
+ /* @__PURE__ */ jsx78("input", { ...getInputProps() }),
5512
+ isDragActive ? /* @__PURE__ */ jsx78("p", { children: "Drop the files here ..." }) : /* @__PURE__ */ jsxs53("div", { children: [
5513
+ /* @__PURE__ */ jsx78(UploadCloud, { className: "mx-auto h-12 w-12 text-gray-400" }),
5514
+ /* @__PURE__ */ jsx78("p", { children: "Drag n drop some files here, or click to select files" }),
5515
+ /* @__PURE__ */ jsxs53("p", { className: "text-sm text-gray-500", children: [
5980
5516
  "Only ",
5981
5517
  acceptedTypes,
5982
5518
  " files up to ",
@@ -5984,11 +5520,11 @@ function UploadWidgetV2({
5984
5520
  "MB are accepted"
5985
5521
  ] })
5986
5522
  ] }),
5987
- !hideUploadedFiles && fileUrls.length > 0 && /* @__PURE__ */ jsx81("div", { className: "mt-4 border-t border-gray-300 pt-4", children: /* @__PURE__ */ jsx81("ul", { className: "flex flex-wrap gap-2", children: fileUrls.map((url, i) => {
5523
+ !hideUploadedFiles && fileUrls.length > 0 && /* @__PURE__ */ jsx78("div", { className: "mt-4 border-t border-gray-300 pt-4", children: /* @__PURE__ */ jsx78("ul", { className: "flex flex-wrap gap-2", children: fileUrls.map((url, i) => {
5988
5524
  const fileName = getFileName2(url);
5989
- return /* @__PURE__ */ jsxs56("li", { className: "flex items-center space-x-2 text-sm", children: [
5990
- /* @__PURE__ */ jsx81("div", { children: getFileIcon2(fileName) }),
5991
- /* @__PURE__ */ jsx81("span", { children: fileName })
5525
+ return /* @__PURE__ */ jsxs53("li", { className: "flex items-center space-x-2 text-sm", children: [
5526
+ /* @__PURE__ */ jsx78("div", { children: getFileIcon2(fileName) }),
5527
+ /* @__PURE__ */ jsx78("span", { children: fileName })
5992
5528
  ] }, i);
5993
5529
  }) }) })
5994
5530
  ]
@@ -6018,7 +5554,6 @@ export {
6018
5554
  DurationInput,
6019
5555
  EloquentActionBar,
6020
5556
  FilterCombobox,
6021
- FilterDialog,
6022
5557
  Form,
6023
5558
  FormCombobox,
6024
5559
  FormControl,
@@ -6030,15 +5565,12 @@ export {
6030
5565
  FormMessage,
6031
5566
  FormRow,
6032
5567
  FormWithActionButtons,
6033
- Icon2 as Icon,
5568
+ Icon,
6034
5569
  IconButton,
6035
5570
  Input2 as Input,
6036
- KnowledgeGraphWordCloud,
6037
- LeftNav,
6038
5571
  MarkdownRenderer,
6039
5572
  MultiSelect,
6040
5573
  MultiStepProcess,
6041
- OrgSelector,
6042
5574
  PageHeader,
6043
5575
  Popover2 as Popover,
6044
5576
  ProfileMenu,