shadcn-ui-react 0.3.6 → 0.3.8

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.
package/dist/index.js CHANGED
@@ -5512,19 +5512,116 @@ import {
5512
5512
  Controller,
5513
5513
  useFormContext
5514
5514
  } from "react-hook-form";
5515
- import React43 from "react";
5515
+ import React44 from "react";
5516
+ import { Slot as Slot3 } from "@radix-ui/react-slot";
5517
+ import { Asterisk } from "lucide-react";
5518
+
5519
+ // src/components/input.tsx
5520
+ import * as React41 from "react";
5521
+ import { Mail, Search, Eye, EyeOff } from "lucide-react";
5522
+ import { jsx as jsx17, jsxs as jsxs10 } from "react/jsx-runtime";
5523
+ var Input = React41.forwardRef(
5524
+ (_a, ref) => {
5525
+ var _b = _a, {
5526
+ className,
5527
+ variant = "outline",
5528
+ size = "md",
5529
+ leading,
5530
+ trailing,
5531
+ invalid = false,
5532
+ disabled
5533
+ } = _b, props = __objRest(_b, [
5534
+ "className",
5535
+ "variant",
5536
+ "size",
5537
+ "leading",
5538
+ "trailing",
5539
+ "invalid",
5540
+ "disabled"
5541
+ ]);
5542
+ const base = "block w-full bg-transparent text-foreground placeholder:text-muted-foreground outline-none transition disabled:opacity-50 disabled:cursor-not-allowed";
5543
+ const sizeCls = size === "sm" ? "h-9 px-3 text-sm" : size === "lg" ? "h-12 px-5 text-base" : "h-11 px-4 text-sm";
5544
+ const variants = {
5545
+ outline: "rounded-md border border-input bg-input backdrop-blur-sm shadow-sm hover:border-primary/60 focus:border-primary focus:ring-2 focus:ring-primary/20",
5546
+ soft: "rounded-md border border-transparent bg-muted/60 hover:bg-muted shadow-sm focus:bg-input/80 focus:ring-2 focus:ring-primary/20",
5547
+ ghost: "rounded-md border border-transparent bg-transparent hover:bg-muted/50 focus:ring-2 focus:ring-ring",
5548
+ filled: "rounded-md border border-input bg-muted/70 hover:bg-muted shadow-inner focus:bg-input/70 focus:ring-2 focus:ring-primary/20",
5549
+ flushed: (
5550
+ // sin bordes laterales/superior, solo inferior; sin sombras ni radios
5551
+ "rounded-none border-0 border-b border-input px-0 shadow-none focus:border-b-2 focus:border-primary focus:ring-0"
5552
+ ),
5553
+ unstyled: (
5554
+ // sin estilos, útil para inputs embebidos o controles muy custom
5555
+ "border-0 shadow-none focus:ring-0"
5556
+ ),
5557
+ link: (
5558
+ // aspecto tipo enlace: inline height-auto, sin paddings ni borde
5559
+ "border-0 p-0 h-auto shadow-none bg-transparent text-primary underline-offset-4 focus:underline focus:ring-0"
5560
+ )
5561
+ };
5562
+ const errorCls = invalid ? "border-destructive focus:border-destructive focus:ring-destructive/20" : "";
5563
+ const iconPadLeft = leading && variant !== "flushed" && variant !== "link" ? size === "lg" ? "pl-12" : "pl-10" : "";
5564
+ const iconPadRight = trailing && variant !== "flushed" && variant !== "link" ? size === "lg" ? "pr-12" : "pr-10" : "";
5565
+ const specialSizeForFlushed = variant === "flushed" ? size === "sm" ? "h-9 text-sm" : size === "lg" ? "h-12 text-base" : "h-11 text-sm" : "";
5566
+ const specialSizeForLink = variant === "link" ? "text-sm" : "";
5567
+ return /* @__PURE__ */ jsxs10("div", { className: cn("relative", disabled && "opacity-80"), children: [
5568
+ leading ? /* @__PURE__ */ jsx17(
5569
+ "span",
5570
+ {
5571
+ className: cn(
5572
+ "pointer-events-none absolute left-3 top-1/2 -translate-y-1/2 opacity-60",
5573
+ size === "lg" ? "text-[1.15rem]" : "text-[1rem]",
5574
+ // no desplazamos visualmente en variantes sin padding
5575
+ variant === "flushed" || variant === "link" ? "hidden" : ""
5576
+ ),
5577
+ children: leading
5578
+ }
5579
+ ) : null,
5580
+ /* @__PURE__ */ jsx17(
5581
+ "input",
5582
+ __spreadValues({
5583
+ ref,
5584
+ "aria-invalid": invalid || void 0,
5585
+ disabled,
5586
+ className: cn(
5587
+ base,
5588
+ variants[variant],
5589
+ variant === "flushed" ? specialSizeForFlushed : variant === "link" ? specialSizeForLink : sizeCls,
5590
+ errorCls,
5591
+ iconPadLeft,
5592
+ iconPadRight,
5593
+ className
5594
+ )
5595
+ }, props)
5596
+ ),
5597
+ trailing ? /* @__PURE__ */ jsx17(
5598
+ "span",
5599
+ {
5600
+ className: cn(
5601
+ "absolute right-3 top-1/2 -translate-y-1/2 opacity-70",
5602
+ size === "lg" ? "text-[1.15rem]" : "text-[1rem]",
5603
+ variant === "flushed" || variant === "link" ? "hidden" : ""
5604
+ ),
5605
+ children: trailing
5606
+ }
5607
+ ) : null
5608
+ ] });
5609
+ }
5610
+ );
5611
+ Input.displayName = "Input";
5612
+ Input.displayName = "Input";
5516
5613
 
5517
5614
  // src/components/Label/label.tsx
5518
5615
  import * as LabelPrimitive from "@radix-ui/react-label";
5519
5616
  import { cva as cva4 } from "class-variance-authority";
5520
- import * as React41 from "react";
5521
- import { jsx as jsx17 } from "react/jsx-runtime";
5617
+ import * as React42 from "react";
5618
+ import { jsx as jsx18 } from "react/jsx-runtime";
5522
5619
  var labelVariants = cva4(
5523
5620
  "text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-label"
5524
5621
  );
5525
- var Label3 = React41.forwardRef((_a, ref) => {
5622
+ var Label3 = React42.forwardRef((_a, ref) => {
5526
5623
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5527
- return /* @__PURE__ */ jsx17(
5624
+ return /* @__PURE__ */ jsx18(
5528
5625
  LabelPrimitive.Root,
5529
5626
  __spreadValues({
5530
5627
  ref,
@@ -5534,34 +5631,146 @@ var Label3 = React41.forwardRef((_a, ref) => {
5534
5631
  });
5535
5632
  Label3.displayName = LabelPrimitive.Root.displayName;
5536
5633
 
5537
- // src/components/Form/form-field.tsx
5538
- import { Slot as Slot3 } from "@radix-ui/react-slot";
5539
-
5540
- // src/components/input.tsx
5541
- import * as React42 from "react";
5542
- import { jsx as jsx18 } from "react/jsx-runtime";
5543
- var Input = React42.forwardRef(
5544
- (_a, ref) => {
5545
- var _b = _a, { className, type } = _b, props = __objRest(_b, ["className", "type"]);
5546
- return /* @__PURE__ */ jsx18(
5547
- "input",
5548
- __spreadValues({
5549
- type,
5550
- className: cn(
5551
- "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",
5552
- className
5634
+ // src/components/select.tsx
5635
+ import {
5636
+ CaretSortIcon,
5637
+ CheckIcon as CheckIcon4,
5638
+ ChevronDownIcon as ChevronDownIcon2,
5639
+ ChevronUpIcon
5640
+ } from "@radix-ui/react-icons";
5641
+ import * as SelectPrimitive from "@radix-ui/react-select";
5642
+ import * as React43 from "react";
5643
+ import { jsx as jsx19, jsxs as jsxs11 } from "react/jsx-runtime";
5644
+ var Select2 = SelectPrimitive.Root;
5645
+ var SelectGroup = SelectPrimitive.Group;
5646
+ var SelectValue = SelectPrimitive.Value;
5647
+ var SelectTrigger = React43.forwardRef((_a, ref) => {
5648
+ var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
5649
+ return /* @__PURE__ */ jsxs11(
5650
+ SelectPrimitive.Trigger,
5651
+ __spreadProps(__spreadValues({
5652
+ ref,
5653
+ className: cn(
5654
+ "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",
5655
+ className
5656
+ )
5657
+ }, props), {
5658
+ children: [
5659
+ children,
5660
+ /* @__PURE__ */ jsx19(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx19(CaretSortIcon, { className: "h-4 w-4 opacity-50" }) })
5661
+ ]
5662
+ })
5663
+ );
5664
+ });
5665
+ SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
5666
+ var SelectScrollUpButton = React43.forwardRef((_a, ref) => {
5667
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5668
+ return /* @__PURE__ */ jsx19(
5669
+ SelectPrimitive.ScrollUpButton,
5670
+ __spreadProps(__spreadValues({
5671
+ ref,
5672
+ className: cn(
5673
+ "flex cursor-default items-center justify-center py-1",
5674
+ className
5675
+ )
5676
+ }, props), {
5677
+ children: /* @__PURE__ */ jsx19(ChevronUpIcon, {})
5678
+ })
5679
+ );
5680
+ });
5681
+ SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
5682
+ var SelectScrollDownButton = React43.forwardRef((_a, ref) => {
5683
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5684
+ return /* @__PURE__ */ jsx19(
5685
+ SelectPrimitive.ScrollDownButton,
5686
+ __spreadProps(__spreadValues({
5687
+ ref,
5688
+ className: cn(
5689
+ "flex cursor-default items-center justify-center py-1",
5690
+ className
5691
+ )
5692
+ }, props), {
5693
+ children: /* @__PURE__ */ jsx19(ChevronDownIcon2, {})
5694
+ })
5695
+ );
5696
+ });
5697
+ SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
5698
+ var SelectContent = React43.forwardRef((_a, ref) => {
5699
+ var _b = _a, { className, children, position = "popper" } = _b, props = __objRest(_b, ["className", "children", "position"]);
5700
+ return /* @__PURE__ */ jsx19(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs11(
5701
+ SelectPrimitive.Content,
5702
+ __spreadProps(__spreadValues({
5703
+ ref,
5704
+ className: cn(
5705
+ "relative z-50 max-h-96 min-w-[8rem] 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",
5706
+ 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",
5707
+ className
5708
+ ),
5709
+ position
5710
+ }, props), {
5711
+ children: [
5712
+ /* @__PURE__ */ jsx19(SelectScrollUpButton, {}),
5713
+ /* @__PURE__ */ jsx19(
5714
+ SelectPrimitive.Viewport,
5715
+ {
5716
+ className: cn(
5717
+ "p-1",
5718
+ position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
5719
+ ),
5720
+ children
5721
+ }
5553
5722
  ),
5554
- ref
5555
- }, props)
5556
- );
5557
- }
5558
- );
5559
- Input.displayName = "Input";
5723
+ /* @__PURE__ */ jsx19(SelectScrollDownButton, {})
5724
+ ]
5725
+ })
5726
+ ) });
5727
+ });
5728
+ SelectContent.displayName = SelectPrimitive.Content.displayName;
5729
+ var SelectLabel = React43.forwardRef((_a, ref) => {
5730
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5731
+ return /* @__PURE__ */ jsx19(
5732
+ SelectPrimitive.Label,
5733
+ __spreadValues({
5734
+ ref,
5735
+ className: cn("px-2 py-1.5 text-sm font-semibold", className)
5736
+ }, props)
5737
+ );
5738
+ });
5739
+ SelectLabel.displayName = SelectPrimitive.Label.displayName;
5740
+ var SelectItem = React43.forwardRef((_a, ref) => {
5741
+ var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
5742
+ return /* @__PURE__ */ jsxs11(
5743
+ SelectPrimitive.Item,
5744
+ __spreadProps(__spreadValues({
5745
+ ref,
5746
+ className: cn(
5747
+ "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",
5748
+ className
5749
+ )
5750
+ }, props), {
5751
+ children: [
5752
+ /* @__PURE__ */ jsx19("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx19(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx19(CheckIcon4, { className: "h-4 w-4" }) }) }),
5753
+ /* @__PURE__ */ jsx19(SelectPrimitive.ItemText, { children })
5754
+ ]
5755
+ })
5756
+ );
5757
+ });
5758
+ SelectItem.displayName = SelectPrimitive.Item.displayName;
5759
+ var SelectSeparator = React43.forwardRef((_a, ref) => {
5760
+ var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5761
+ return /* @__PURE__ */ jsx19(
5762
+ SelectPrimitive.Separator,
5763
+ __spreadValues({
5764
+ ref,
5765
+ className: cn("-mx-1 my-1 h-px bg-muted", className)
5766
+ }, props)
5767
+ );
5768
+ });
5769
+ SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
5560
5770
 
5561
5771
  // src/components/Form/form-field.tsx
5562
- import { Asterisk } from "lucide-react";
5563
- import { jsx as jsx19, jsxs as jsxs10 } from "react/jsx-runtime";
5564
- var FormFieldContext = React43.createContext(
5772
+ import { jsx as jsx20, jsxs as jsxs12 } from "react/jsx-runtime";
5773
+ var FormFieldContext = React44.createContext(
5565
5774
  null
5566
5775
  );
5567
5776
  var FormField = (_a) => {
@@ -5571,10 +5780,13 @@ var FormField = (_a) => {
5571
5780
  label,
5572
5781
  placeholder,
5573
5782
  requiredLabel,
5574
- className = "px-4 py-6 shadow-inner drop-shadow-xl",
5783
+ className,
5784
+ classNameDefault,
5575
5785
  labelClassName,
5576
5786
  messageClassName,
5577
5787
  requiredLabelClassName,
5788
+ variant = "outline",
5789
+ size = "md",
5578
5790
  rules,
5579
5791
  shouldUnregister,
5580
5792
  defaultValue,
@@ -5586,9 +5798,12 @@ var FormField = (_a) => {
5586
5798
  "placeholder",
5587
5799
  "requiredLabel",
5588
5800
  "className",
5801
+ "classNameDefault",
5589
5802
  "labelClassName",
5590
5803
  "messageClassName",
5591
5804
  "requiredLabelClassName",
5805
+ "variant",
5806
+ "size",
5592
5807
  "rules",
5593
5808
  "shouldUnregister",
5594
5809
  "defaultValue",
@@ -5599,7 +5814,7 @@ var FormField = (_a) => {
5599
5814
  formState: { errors }
5600
5815
  } = useFormContext();
5601
5816
  const fieldError = (_a2 = errors[name]) == null ? void 0 : _a2.message;
5602
- return /* @__PURE__ */ jsx19(FormFieldContext.Provider, { value: { name }, children: /* @__PURE__ */ jsx19(
5817
+ return /* @__PURE__ */ jsx20(FormFieldContext.Provider, { value: { name }, children: /* @__PURE__ */ jsx20(
5603
5818
  Controller,
5604
5819
  {
5605
5820
  control,
@@ -5607,48 +5822,60 @@ var FormField = (_a) => {
5607
5822
  rules,
5608
5823
  shouldUnregister,
5609
5824
  defaultValue,
5610
- render: ({ field }) => /* @__PURE__ */ jsxs10(FormItem, { children: [
5611
- label && /* @__PURE__ */ jsxs10(FormLabel, { className: cn("flex items-center self-center gap-0", labelClassName), children: [
5612
- label,
5613
- requiredLabel && /* @__PURE__ */ jsx19(
5614
- Asterisk,
5615
- {
5616
- className: cn(
5617
- "h-3 w-3 text-red-500 ml-[1px]",
5618
- requiredLabelClassName
5825
+ render: ({ field }) => /* @__PURE__ */ jsxs12(FormItem, { children: [
5826
+ label && /* @__PURE__ */ jsxs12(
5827
+ FormLabel,
5828
+ {
5829
+ className: cn(
5830
+ "flex items-center gap-0 self-center",
5831
+ labelClassName
5832
+ ),
5833
+ children: [
5834
+ label,
5835
+ requiredLabel && /* @__PURE__ */ jsx20(
5836
+ Asterisk,
5837
+ {
5838
+ className: cn(
5839
+ "ml-[1px] h-3 w-3 text-red-500",
5840
+ requiredLabelClassName
5841
+ )
5842
+ }
5619
5843
  )
5620
- }
5621
- )
5622
- ] }),
5623
- /* @__PURE__ */ jsx19(FormControl, { children: /* @__PURE__ */ jsx19(
5844
+ ]
5845
+ }
5846
+ ),
5847
+ /* @__PURE__ */ jsx20(FormControl, { children: /* @__PURE__ */ jsx20(
5624
5848
  Input,
5625
5849
  __spreadProps(__spreadValues(__spreadValues({}, field), inputProps), {
5626
5850
  onChange: (e) => {
5627
5851
  field.onChange(e);
5628
5852
  onChange == null ? void 0 : onChange(e.target.value);
5629
5853
  },
5854
+ variant,
5855
+ size,
5630
5856
  placeholder,
5631
- className
5857
+ className: cn("bg-input px-[0.9rem] py-5", className),
5858
+ classNameDefault: classNameDefault != null ? classNameDefault : true
5632
5859
  })
5633
5860
  ) }),
5634
- fieldError && /* @__PURE__ */ jsx19(FormMessage, { className: messageClassName, children: fieldError })
5861
+ fieldError && /* @__PURE__ */ jsx20(FormMessage, { className: messageClassName, children: fieldError })
5635
5862
  ] })
5636
5863
  }
5637
5864
  ) });
5638
5865
  };
5639
- var FormItemContext = React43.createContext(
5866
+ var FormItemContext = React44.createContext(
5640
5867
  {}
5641
5868
  );
5642
- var FormItem = React43.forwardRef((_a, ref) => {
5869
+ var FormItem = React44.forwardRef((_a, ref) => {
5643
5870
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5644
- const id = React43.useId();
5645
- return /* @__PURE__ */ jsx19(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx19("div", __spreadValues({ ref, className: cn("space-y-2", className) }, props)) });
5871
+ const id = React44.useId();
5872
+ return /* @__PURE__ */ jsx20(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx20("div", __spreadValues({ ref, className: cn("space-y-2", className) }, props)) });
5646
5873
  });
5647
5874
  FormItem.displayName = "FormItem";
5648
- var FormLabel = React43.forwardRef((_a, ref) => {
5875
+ var FormLabel = React44.forwardRef((_a, ref) => {
5649
5876
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5650
5877
  const { error, formItemId } = useFormField();
5651
- return /* @__PURE__ */ jsx19(
5878
+ return /* @__PURE__ */ jsx20(
5652
5879
  Label3,
5653
5880
  __spreadValues({
5654
5881
  ref,
@@ -5659,8 +5886,8 @@ var FormLabel = React43.forwardRef((_a, ref) => {
5659
5886
  });
5660
5887
  FormLabel.displayName = "FormLabel";
5661
5888
  var useFormField = () => {
5662
- const fieldContext = React43.useContext(FormFieldContext);
5663
- const itemContext = React43.useContext(FormItemContext);
5889
+ const fieldContext = React44.useContext(FormFieldContext);
5890
+ const itemContext = React44.useContext(FormItemContext);
5664
5891
  const { getFieldState, formState } = useFormContext();
5665
5892
  if (!fieldContext) {
5666
5893
  const { id: id2 } = itemContext;
@@ -5685,10 +5912,10 @@ var useFormField = () => {
5685
5912
  formMessageId: `${id}-form-item-message`
5686
5913
  }, fieldState);
5687
5914
  };
5688
- var FormControl = React43.forwardRef((_a, ref) => {
5915
+ var FormControl = React44.forwardRef((_a, ref) => {
5689
5916
  var props = __objRest(_a, []);
5690
5917
  const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
5691
- return /* @__PURE__ */ jsx19(
5918
+ return /* @__PURE__ */ jsx20(
5692
5919
  Slot3,
5693
5920
  __spreadValues({
5694
5921
  ref,
@@ -5699,48 +5926,174 @@ var FormControl = React43.forwardRef((_a, ref) => {
5699
5926
  );
5700
5927
  });
5701
5928
  FormControl.displayName = "FormControl";
5702
- var FormDescription = React43.forwardRef((_a, ref) => {
5929
+ var FormDescription = React44.forwardRef((_a, ref) => {
5703
5930
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5704
5931
  const { formDescriptionId } = useFormField();
5705
- return /* @__PURE__ */ jsx19(
5932
+ return /* @__PURE__ */ jsx20(
5706
5933
  "p",
5707
5934
  __spreadValues({
5708
5935
  ref,
5709
5936
  id: formDescriptionId,
5710
- className: cn("text-[0.8rem] text-muted-foreground", className)
5937
+ className: cn("text-muted-foreground text-[0.8rem]", className)
5711
5938
  }, props)
5712
5939
  );
5713
5940
  });
5714
5941
  FormDescription.displayName = "FormDescription";
5715
- var FormMessage = React43.forwardRef((_a, ref) => {
5942
+ var FormMessage = React44.forwardRef((_a, ref) => {
5716
5943
  var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
5717
5944
  const { error, formMessageId } = useFormField();
5718
5945
  const body = error ? String(error == null ? void 0 : error.message) : children;
5719
5946
  if (!body) {
5720
5947
  return null;
5721
5948
  }
5722
- return /* @__PURE__ */ jsx19(
5949
+ return /* @__PURE__ */ jsx20(
5723
5950
  "p",
5724
5951
  __spreadProps(__spreadValues({
5725
5952
  ref,
5726
5953
  id: formMessageId,
5727
- className: cn("text-[0.8rem] font-medium text-destructive", className)
5954
+ className: cn("text-destructive text-[0.8rem] font-medium", className)
5728
5955
  }, props), {
5729
5956
  children: body
5730
5957
  })
5731
5958
  );
5732
5959
  });
5733
5960
  FormMessage.displayName = "FormMessage";
5961
+ var FormSelect = ({
5962
+ name,
5963
+ control,
5964
+ rules,
5965
+ shouldUnregister,
5966
+ defaultValue,
5967
+ placeholder,
5968
+ label,
5969
+ requiredLabel,
5970
+ className,
5971
+ contentClassName,
5972
+ labelClassName,
5973
+ messageClassName,
5974
+ requiredLabelClassName,
5975
+ items,
5976
+ children,
5977
+ onChange,
5978
+ disabled,
5979
+ size = "md",
5980
+ variant = "outline",
5981
+ invalid
5982
+ }) => {
5983
+ var _a;
5984
+ const {
5985
+ formState: { errors }
5986
+ } = useFormContext();
5987
+ const triggerBase = "relative inline-flex w-full items-center justify-between outline-none transition disabled:opacity-50 disabled:cursor-not-allowed text-foreground placeholder:text-muted-foreground ring-offset-background";
5988
+ const sizeTrigger = {
5989
+ sm: "h-9 px-3 text-sm",
5990
+ md: "h-11 px-4 text-sm",
5991
+ lg: "h-12 px-5 text-base"
5992
+ };
5993
+ const variants = {
5994
+ outline: "rounded-md border border-input bg-input backdrop-blur-sm shadow-sm hover:border-primary/60 focus:border-primary focus:ring-2 focus:ring-primary/20",
5995
+ soft: "rounded-md border border-transparent bg-muted/60 hover:bg-muted shadow-sm focus:bg-input/80 focus:ring-2 focus:ring-primary/20",
5996
+ ghost: "rounded-md border border-transparent bg-transparent hover:bg-muted/50 focus:ring-2 focus:ring-ring",
5997
+ filled: "rounded-md border border-input bg-muted/70 hover:bg-muted shadow-inner focus:bg-input/70 focus:ring-2 focus:ring-primary/20",
5998
+ flushed: (
5999
+ // sin bordes laterales/superior, solo inferior; sin sombras ni radios
6000
+ "rounded-none border-0 border-b border-input px-0 shadow-none focus:border-b-2 focus:border-primary focus:ring-0"
6001
+ ),
6002
+ unstyled: (
6003
+ // sin estilos, útil para inputs embebidos o controles muy custom
6004
+ "border-0 shadow-none focus:ring-0"
6005
+ ),
6006
+ link: (
6007
+ // aspecto tipo enlace: inline height-auto, sin paddings ni borde
6008
+ "border-0 p-0 h-auto shadow-none bg-transparent text-primary underline-offset-4 focus:underline focus:ring-0"
6009
+ )
6010
+ };
6011
+ const errorCls = invalid ? "ring-destructive focus:ring-destructive/40 border-destructive" : "";
6012
+ const specialFlushed = variant === "flushed" ? size === "sm" ? "h-9 text-sm" : size === "lg" ? "h-12 text-base" : "h-11 text-sm" : "";
6013
+ const specialLink = variant === "link" ? "text-sm" : "";
6014
+ const contentBase = "bg-popover text-popover-foreground border border-border rounded-md shadow-md";
6015
+ const itemSize = {
6016
+ sm: "h-8 text-sm",
6017
+ md: "h-9 text-sm",
6018
+ lg: "h-10 text-base"
6019
+ };
6020
+ const fieldError = (_a = errors[name]) == null ? void 0 : _a.message;
6021
+ return /* @__PURE__ */ jsx20(FormFieldContext.Provider, { value: { name }, children: /* @__PURE__ */ jsx20(
6022
+ Controller,
6023
+ {
6024
+ control,
6025
+ name,
6026
+ rules,
6027
+ shouldUnregister,
6028
+ defaultValue,
6029
+ render: ({ field }) => {
6030
+ var _a2;
6031
+ return /* @__PURE__ */ jsxs12(FormItem, { children: [
6032
+ label && /* @__PURE__ */ jsxs12(FormLabel, { className: cn("flex items-center gap-0", labelClassName), children: [
6033
+ label,
6034
+ requiredLabel && /* @__PURE__ */ jsx20(
6035
+ Asterisk,
6036
+ {
6037
+ className: cn(
6038
+ "ml-[4px] h-3 w-3 text-red-500",
6039
+ requiredLabelClassName
6040
+ )
6041
+ }
6042
+ )
6043
+ ] }),
6044
+ /* @__PURE__ */ jsxs12(
6045
+ Select2,
6046
+ {
6047
+ value: (_a2 = field.value) != null ? _a2 : "",
6048
+ onValueChange: (v) => {
6049
+ field.onChange(v);
6050
+ onChange == null ? void 0 : onChange(v);
6051
+ },
6052
+ disabled,
6053
+ children: [
6054
+ /* @__PURE__ */ jsx20(FormControl, { children: /* @__PURE__ */ jsx20(
6055
+ SelectTrigger,
6056
+ {
6057
+ className: cn(
6058
+ triggerBase,
6059
+ variants[variant],
6060
+ variant === "flushed" ? specialFlushed : variant === "link" ? specialLink : sizeTrigger[size],
6061
+ errorCls,
6062
+ className
6063
+ ),
6064
+ children: /* @__PURE__ */ jsx20(SelectValue, { placeholder })
6065
+ }
6066
+ ) }),
6067
+ /* @__PURE__ */ jsx20(SelectContent, { className: cn(contentBase, contentClassName), children: children ? children : items == null ? void 0 : items.map((opt) => /* @__PURE__ */ jsx20(
6068
+ SelectItem,
6069
+ {
6070
+ value: opt.value,
6071
+ disabled: opt.disabled,
6072
+ className: cn(itemSize[size]),
6073
+ children: opt.label
6074
+ },
6075
+ opt.value
6076
+ )) })
6077
+ ]
6078
+ }
6079
+ ),
6080
+ fieldError && /* @__PURE__ */ jsx20(FormMessage, { className: messageClassName, children: fieldError })
6081
+ ] });
6082
+ }
6083
+ }
6084
+ ) });
6085
+ };
6086
+ FormSelect.displayName = "FormSelect";
5734
6087
 
5735
6088
  // src/components/hover-card.tsx
5736
6089
  import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
5737
- import * as React44 from "react";
5738
- import { jsx as jsx20 } from "react/jsx-runtime";
6090
+ import * as React45 from "react";
6091
+ import { jsx as jsx21 } from "react/jsx-runtime";
5739
6092
  var HoverCard = HoverCardPrimitive.Root;
5740
6093
  var HoverCardTrigger = HoverCardPrimitive.Trigger;
5741
- var HoverCardContent = React44.forwardRef((_a, ref) => {
6094
+ var HoverCardContent = React45.forwardRef((_a, ref) => {
5742
6095
  var _b = _a, { className, align = "center", sideOffset = 4 } = _b, props = __objRest(_b, ["className", "align", "sideOffset"]);
5743
- return /* @__PURE__ */ jsx20(
6096
+ return /* @__PURE__ */ jsx21(
5744
6097
  HoverCardPrimitive.Content,
5745
6098
  __spreadValues({
5746
6099
  ref,
@@ -5819,11 +6172,11 @@ var Icons = IconsApp;
5819
6172
  // src/components/input-otp.tsx
5820
6173
  import { DashIcon } from "@radix-ui/react-icons";
5821
6174
  import { OTPInput, OTPInputContext } from "input-otp";
5822
- import * as React45 from "react";
5823
- import { jsx as jsx21, jsxs as jsxs11 } from "react/jsx-runtime";
5824
- var InputOTP = React45.forwardRef((_a, ref) => {
6175
+ import * as React46 from "react";
6176
+ import { jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
6177
+ var InputOTP = React46.forwardRef((_a, ref) => {
5825
6178
  var _b = _a, { className, containerClassName } = _b, props = __objRest(_b, ["className", "containerClassName"]);
5826
- return /* @__PURE__ */ jsx21(
6179
+ return /* @__PURE__ */ jsx22(
5827
6180
  OTPInput,
5828
6181
  __spreadValues({
5829
6182
  ref,
@@ -5836,16 +6189,16 @@ var InputOTP = React45.forwardRef((_a, ref) => {
5836
6189
  );
5837
6190
  });
5838
6191
  InputOTP.displayName = "InputOTP";
5839
- var InputOTPGroup = React45.forwardRef((_a, ref) => {
6192
+ var InputOTPGroup = React46.forwardRef((_a, ref) => {
5840
6193
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5841
- return /* @__PURE__ */ jsx21("div", __spreadValues({ ref, className: cn("flex items-center", className) }, props));
6194
+ return /* @__PURE__ */ jsx22("div", __spreadValues({ ref, className: cn("flex items-center", className) }, props));
5842
6195
  });
5843
6196
  InputOTPGroup.displayName = "InputOTPGroup";
5844
- var InputOTPSlot = React45.forwardRef((_a, ref) => {
6197
+ var InputOTPSlot = React46.forwardRef((_a, ref) => {
5845
6198
  var _b = _a, { index, className } = _b, props = __objRest(_b, ["index", "className"]);
5846
- const inputOTPContext = React45.useContext(OTPInputContext);
6199
+ const inputOTPContext = React46.useContext(OTPInputContext);
5847
6200
  const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
5848
- return /* @__PURE__ */ jsxs11(
6201
+ return /* @__PURE__ */ jsxs13(
5849
6202
  "div",
5850
6203
  __spreadProps(__spreadValues({
5851
6204
  ref,
@@ -5857,35 +6210,35 @@ var InputOTPSlot = React45.forwardRef((_a, ref) => {
5857
6210
  }, props), {
5858
6211
  children: [
5859
6212
  char,
5860
- hasFakeCaret && /* @__PURE__ */ jsx21("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx21("div", { className: "animate-caret-blink h-4 w-px bg-foreground duration-1000" }) })
6213
+ hasFakeCaret && /* @__PURE__ */ jsx22("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx22("div", { className: "animate-caret-blink h-4 w-px bg-foreground duration-1000" }) })
5861
6214
  ]
5862
6215
  })
5863
6216
  );
5864
6217
  });
5865
6218
  InputOTPSlot.displayName = "InputOTPSlot";
5866
- var InputOTPSeparator = React45.forwardRef((_a, ref) => {
6219
+ var InputOTPSeparator = React46.forwardRef((_a, ref) => {
5867
6220
  var props = __objRest(_a, []);
5868
- return /* @__PURE__ */ jsx21("div", __spreadProps(__spreadValues({ ref, role: "separator" }, props), { children: /* @__PURE__ */ jsx21(DashIcon, {}) }));
6221
+ return /* @__PURE__ */ jsx22("div", __spreadProps(__spreadValues({ ref, role: "separator" }, props), { children: /* @__PURE__ */ jsx22(DashIcon, {}) }));
5869
6222
  });
5870
6223
  InputOTPSeparator.displayName = "InputOTPSeparator";
5871
6224
 
5872
6225
  // src/components/menubar.tsx
5873
6226
  import {
5874
- CheckIcon as CheckIcon4,
6227
+ CheckIcon as CheckIcon5,
5875
6228
  ChevronRightIcon as ChevronRightIcon4,
5876
6229
  DotFilledIcon as DotFilledIcon3
5877
6230
  } from "@radix-ui/react-icons";
5878
6231
  import * as MenubarPrimitive from "@radix-ui/react-menubar";
5879
- import * as React46 from "react";
5880
- import { jsx as jsx22, jsxs as jsxs12 } from "react/jsx-runtime";
6232
+ import * as React47 from "react";
6233
+ import { jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
5881
6234
  var MenubarMenu = MenubarPrimitive.Menu;
5882
6235
  var MenubarGroup = MenubarPrimitive.Group;
5883
6236
  var MenubarPortal = MenubarPrimitive.Portal;
5884
6237
  var MenubarSub = MenubarPrimitive.Sub;
5885
6238
  var MenubarRadioGroup = MenubarPrimitive.RadioGroup;
5886
- var Menubar = React46.forwardRef((_a, ref) => {
6239
+ var Menubar = React47.forwardRef((_a, ref) => {
5887
6240
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5888
- return /* @__PURE__ */ jsx22(
6241
+ return /* @__PURE__ */ jsx23(
5889
6242
  MenubarPrimitive.Root,
5890
6243
  __spreadValues({
5891
6244
  ref,
@@ -5897,9 +6250,9 @@ var Menubar = React46.forwardRef((_a, ref) => {
5897
6250
  );
5898
6251
  });
5899
6252
  Menubar.displayName = MenubarPrimitive.Root.displayName;
5900
- var MenubarTrigger = React46.forwardRef((_a, ref) => {
6253
+ var MenubarTrigger = React47.forwardRef((_a, ref) => {
5901
6254
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5902
- return /* @__PURE__ */ jsx22(
6255
+ return /* @__PURE__ */ jsx23(
5903
6256
  MenubarPrimitive.Trigger,
5904
6257
  __spreadValues({
5905
6258
  ref,
@@ -5911,9 +6264,9 @@ var MenubarTrigger = React46.forwardRef((_a, ref) => {
5911
6264
  );
5912
6265
  });
5913
6266
  MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
5914
- var MenubarSubTrigger = React46.forwardRef((_a, ref) => {
6267
+ var MenubarSubTrigger = React47.forwardRef((_a, ref) => {
5915
6268
  var _b = _a, { className, inset, children } = _b, props = __objRest(_b, ["className", "inset", "children"]);
5916
- return /* @__PURE__ */ jsxs12(
6269
+ return /* @__PURE__ */ jsxs14(
5917
6270
  MenubarPrimitive.SubTrigger,
5918
6271
  __spreadProps(__spreadValues({
5919
6272
  ref,
@@ -5925,15 +6278,15 @@ var MenubarSubTrigger = React46.forwardRef((_a, ref) => {
5925
6278
  }, props), {
5926
6279
  children: [
5927
6280
  children,
5928
- /* @__PURE__ */ jsx22(ChevronRightIcon4, { className: "ml-auto h-4 w-4" })
6281
+ /* @__PURE__ */ jsx23(ChevronRightIcon4, { className: "ml-auto h-4 w-4" })
5929
6282
  ]
5930
6283
  })
5931
6284
  );
5932
6285
  });
5933
6286
  MenubarSubTrigger.displayName = MenubarPrimitive.SubTrigger.displayName;
5934
- var MenubarSubContent = React46.forwardRef((_a, ref) => {
6287
+ var MenubarSubContent = React47.forwardRef((_a, ref) => {
5935
6288
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
5936
- return /* @__PURE__ */ jsx22(
6289
+ return /* @__PURE__ */ jsx23(
5937
6290
  MenubarPrimitive.SubContent,
5938
6291
  __spreadValues({
5939
6292
  ref,
@@ -5945,10 +6298,10 @@ var MenubarSubContent = React46.forwardRef((_a, ref) => {
5945
6298
  );
5946
6299
  });
5947
6300
  MenubarSubContent.displayName = MenubarPrimitive.SubContent.displayName;
5948
- var MenubarContent = React46.forwardRef(
6301
+ var MenubarContent = React47.forwardRef(
5949
6302
  (_a, ref) => {
5950
6303
  var _b = _a, { className, align = "start", alignOffset = -4, sideOffset = 8 } = _b, props = __objRest(_b, ["className", "align", "alignOffset", "sideOffset"]);
5951
- return /* @__PURE__ */ jsx22(MenubarPrimitive.Portal, { children: /* @__PURE__ */ jsx22(
6304
+ return /* @__PURE__ */ jsx23(MenubarPrimitive.Portal, { children: /* @__PURE__ */ jsx23(
5952
6305
  MenubarPrimitive.Content,
5953
6306
  __spreadValues({
5954
6307
  ref,
@@ -5964,9 +6317,9 @@ var MenubarContent = React46.forwardRef(
5964
6317
  }
5965
6318
  );
5966
6319
  MenubarContent.displayName = MenubarPrimitive.Content.displayName;
5967
- var MenubarItem = React46.forwardRef((_a, ref) => {
6320
+ var MenubarItem = React47.forwardRef((_a, ref) => {
5968
6321
  var _b = _a, { className, inset } = _b, props = __objRest(_b, ["className", "inset"]);
5969
- return /* @__PURE__ */ jsx22(
6322
+ return /* @__PURE__ */ jsx23(
5970
6323
  MenubarPrimitive.Item,
5971
6324
  __spreadValues({
5972
6325
  ref,
@@ -5979,9 +6332,9 @@ var MenubarItem = React46.forwardRef((_a, ref) => {
5979
6332
  );
5980
6333
  });
5981
6334
  MenubarItem.displayName = MenubarPrimitive.Item.displayName;
5982
- var MenubarCheckboxItem = React46.forwardRef((_a, ref) => {
6335
+ var MenubarCheckboxItem = React47.forwardRef((_a, ref) => {
5983
6336
  var _b = _a, { className, children, checked } = _b, props = __objRest(_b, ["className", "children", "checked"]);
5984
- return /* @__PURE__ */ jsxs12(
6337
+ return /* @__PURE__ */ jsxs14(
5985
6338
  MenubarPrimitive.CheckboxItem,
5986
6339
  __spreadProps(__spreadValues({
5987
6340
  ref,
@@ -5992,16 +6345,16 @@ var MenubarCheckboxItem = React46.forwardRef((_a, ref) => {
5992
6345
  checked
5993
6346
  }, props), {
5994
6347
  children: [
5995
- /* @__PURE__ */ jsx22("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx22(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx22(CheckIcon4, { className: "h-4 w-4" }) }) }),
6348
+ /* @__PURE__ */ jsx23("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx23(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx23(CheckIcon5, { className: "h-4 w-4" }) }) }),
5996
6349
  children
5997
6350
  ]
5998
6351
  })
5999
6352
  );
6000
6353
  });
6001
6354
  MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
6002
- var MenubarRadioItem = React46.forwardRef((_a, ref) => {
6355
+ var MenubarRadioItem = React47.forwardRef((_a, ref) => {
6003
6356
  var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6004
- return /* @__PURE__ */ jsxs12(
6357
+ return /* @__PURE__ */ jsxs14(
6005
6358
  MenubarPrimitive.RadioItem,
6006
6359
  __spreadProps(__spreadValues({
6007
6360
  ref,
@@ -6011,16 +6364,16 @@ var MenubarRadioItem = React46.forwardRef((_a, ref) => {
6011
6364
  )
6012
6365
  }, props), {
6013
6366
  children: [
6014
- /* @__PURE__ */ jsx22("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx22(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx22(DotFilledIcon3, { className: "h-4 w-4 fill-current" }) }) }),
6367
+ /* @__PURE__ */ jsx23("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx23(MenubarPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx23(DotFilledIcon3, { className: "h-4 w-4 fill-current" }) }) }),
6015
6368
  children
6016
6369
  ]
6017
6370
  })
6018
6371
  );
6019
6372
  });
6020
6373
  MenubarRadioItem.displayName = MenubarPrimitive.RadioItem.displayName;
6021
- var MenubarLabel = React46.forwardRef((_a, ref) => {
6374
+ var MenubarLabel = React47.forwardRef((_a, ref) => {
6022
6375
  var _b = _a, { className, inset } = _b, props = __objRest(_b, ["className", "inset"]);
6023
- return /* @__PURE__ */ jsx22(
6376
+ return /* @__PURE__ */ jsx23(
6024
6377
  MenubarPrimitive.Label,
6025
6378
  __spreadValues({
6026
6379
  ref,
@@ -6033,9 +6386,9 @@ var MenubarLabel = React46.forwardRef((_a, ref) => {
6033
6386
  );
6034
6387
  });
6035
6388
  MenubarLabel.displayName = MenubarPrimitive.Label.displayName;
6036
- var MenubarSeparator = React46.forwardRef((_a, ref) => {
6389
+ var MenubarSeparator = React47.forwardRef((_a, ref) => {
6037
6390
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6038
- return /* @__PURE__ */ jsx22(
6391
+ return /* @__PURE__ */ jsx23(
6039
6392
  MenubarPrimitive.Separator,
6040
6393
  __spreadValues({
6041
6394
  ref,
@@ -6050,7 +6403,7 @@ var MenubarShortcut = (_a) => {
6050
6403
  } = _b, props = __objRest(_b, [
6051
6404
  "className"
6052
6405
  ]);
6053
- return /* @__PURE__ */ jsx22(
6406
+ return /* @__PURE__ */ jsx23(
6054
6407
  "span",
6055
6408
  __spreadValues({
6056
6409
  className: cn(
@@ -6063,7 +6416,7 @@ var MenubarShortcut = (_a) => {
6063
6416
  MenubarShortcut.displayname = "MenubarShortcut";
6064
6417
 
6065
6418
  // src/components/modal.tsx
6066
- import { jsx as jsx23, jsxs as jsxs13 } from "react/jsx-runtime";
6419
+ import { jsx as jsx24, jsxs as jsxs15 } from "react/jsx-runtime";
6067
6420
  var Modal = ({
6068
6421
  title,
6069
6422
  description,
@@ -6077,24 +6430,24 @@ var Modal = ({
6077
6430
  onClose();
6078
6431
  }
6079
6432
  };
6080
- return /* @__PURE__ */ jsx23(Dialog, { open: isOpen, onOpenChange: onChange, children: /* @__PURE__ */ jsxs13(DialogContent, { className, children: [
6081
- /* @__PURE__ */ jsxs13(DialogHeader, { children: [
6082
- /* @__PURE__ */ jsx23(DialogTitle, { children: title }),
6083
- /* @__PURE__ */ jsx23(DialogDescription, { children: description })
6433
+ return /* @__PURE__ */ jsx24(Dialog, { open: isOpen, onOpenChange: onChange, children: /* @__PURE__ */ jsxs15(DialogContent, { className, children: [
6434
+ /* @__PURE__ */ jsxs15(DialogHeader, { children: [
6435
+ /* @__PURE__ */ jsx24(DialogTitle, { children: title }),
6436
+ /* @__PURE__ */ jsx24(DialogDescription, { children: description })
6084
6437
  ] }),
6085
- /* @__PURE__ */ jsx23("div", { children })
6438
+ /* @__PURE__ */ jsx24("div", { children })
6086
6439
  ] }) });
6087
6440
  };
6088
6441
 
6089
6442
  // src/components/navigation-menu.tsx
6090
- import { ChevronDownIcon as ChevronDownIcon2 } from "@radix-ui/react-icons";
6443
+ import { ChevronDownIcon as ChevronDownIcon3 } from "@radix-ui/react-icons";
6091
6444
  import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
6092
6445
  import { cva as cva5 } from "class-variance-authority";
6093
- import * as React47 from "react";
6094
- import { jsx as jsx24, jsxs as jsxs14 } from "react/jsx-runtime";
6095
- var NavigationMenu = React47.forwardRef((_a, ref) => {
6446
+ import * as React48 from "react";
6447
+ import { jsx as jsx25, jsxs as jsxs16 } from "react/jsx-runtime";
6448
+ var NavigationMenu = React48.forwardRef((_a, ref) => {
6096
6449
  var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6097
- return /* @__PURE__ */ jsxs14(
6450
+ return /* @__PURE__ */ jsxs16(
6098
6451
  NavigationMenuPrimitive.Root,
6099
6452
  __spreadProps(__spreadValues({
6100
6453
  ref,
@@ -6105,15 +6458,15 @@ var NavigationMenu = React47.forwardRef((_a, ref) => {
6105
6458
  }, props), {
6106
6459
  children: [
6107
6460
  children,
6108
- /* @__PURE__ */ jsx24(NavigationMenuViewport, {})
6461
+ /* @__PURE__ */ jsx25(NavigationMenuViewport, {})
6109
6462
  ]
6110
6463
  })
6111
6464
  );
6112
6465
  });
6113
6466
  NavigationMenu.displayName = NavigationMenuPrimitive.Root.displayName;
6114
- var NavigationMenuList = React47.forwardRef((_a, ref) => {
6467
+ var NavigationMenuList = React48.forwardRef((_a, ref) => {
6115
6468
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6116
- return /* @__PURE__ */ jsx24(
6469
+ return /* @__PURE__ */ jsx25(
6117
6470
  NavigationMenuPrimitive.List,
6118
6471
  __spreadValues({
6119
6472
  ref,
@@ -6129,9 +6482,9 @@ var NavigationMenuItem = NavigationMenuPrimitive.Item;
6129
6482
  var navigationMenuTriggerStyle = cva5(
6130
6483
  "group inline-flex h-9 w-max items-center justify-center rounded-md bg-background px-4 py-2 text-sm font-medium transition-colors hover:bg-accent hover:text-accent-foreground focus:bg-accent focus:text-accent-foreground focus:outline-none disabled:pointer-events-none disabled:opacity-50 data-[active]:bg-accent/50 data-[state=open]:bg-accent/50"
6131
6484
  );
6132
- var NavigationMenuTrigger = React47.forwardRef((_a, ref) => {
6485
+ var NavigationMenuTrigger = React48.forwardRef((_a, ref) => {
6133
6486
  var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6134
- return /* @__PURE__ */ jsxs14(
6487
+ return /* @__PURE__ */ jsxs16(
6135
6488
  NavigationMenuPrimitive.Trigger,
6136
6489
  __spreadProps(__spreadValues({
6137
6490
  ref,
@@ -6140,8 +6493,8 @@ var NavigationMenuTrigger = React47.forwardRef((_a, ref) => {
6140
6493
  children: [
6141
6494
  children,
6142
6495
  " ",
6143
- /* @__PURE__ */ jsx24(
6144
- ChevronDownIcon2,
6496
+ /* @__PURE__ */ jsx25(
6497
+ ChevronDownIcon3,
6145
6498
  {
6146
6499
  className: "relative top-[1px] ml-1 h-3 w-3 transition duration-300 group-data-[state=open]:rotate-180",
6147
6500
  "aria-hidden": "true"
@@ -6152,9 +6505,9 @@ var NavigationMenuTrigger = React47.forwardRef((_a, ref) => {
6152
6505
  );
6153
6506
  });
6154
6507
  NavigationMenuTrigger.displayName = NavigationMenuPrimitive.Trigger.displayName;
6155
- var NavigationMenuContent = React47.forwardRef((_a, ref) => {
6508
+ var NavigationMenuContent = React48.forwardRef((_a, ref) => {
6156
6509
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6157
- return /* @__PURE__ */ jsx24(
6510
+ return /* @__PURE__ */ jsx25(
6158
6511
  NavigationMenuPrimitive.Content,
6159
6512
  __spreadValues({
6160
6513
  ref,
@@ -6167,9 +6520,9 @@ var NavigationMenuContent = React47.forwardRef((_a, ref) => {
6167
6520
  });
6168
6521
  NavigationMenuContent.displayName = NavigationMenuPrimitive.Content.displayName;
6169
6522
  var NavigationMenuLink = NavigationMenuPrimitive.Link;
6170
- var NavigationMenuViewport = React47.forwardRef((_a, ref) => {
6523
+ var NavigationMenuViewport = React48.forwardRef((_a, ref) => {
6171
6524
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6172
- return /* @__PURE__ */ jsx24("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx24(
6525
+ return /* @__PURE__ */ jsx25("div", { className: cn("absolute left-0 top-full flex justify-center"), children: /* @__PURE__ */ jsx25(
6173
6526
  NavigationMenuPrimitive.Viewport,
6174
6527
  __spreadValues({
6175
6528
  className: cn(
@@ -6181,9 +6534,9 @@ var NavigationMenuViewport = React47.forwardRef((_a, ref) => {
6181
6534
  ) });
6182
6535
  });
6183
6536
  NavigationMenuViewport.displayName = NavigationMenuPrimitive.Viewport.displayName;
6184
- var NavigationMenuIndicator = React47.forwardRef((_a, ref) => {
6537
+ var NavigationMenuIndicator = React48.forwardRef((_a, ref) => {
6185
6538
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6186
- return /* @__PURE__ */ jsx24(
6539
+ return /* @__PURE__ */ jsx25(
6187
6540
  NavigationMenuPrimitive.Indicator,
6188
6541
  __spreadProps(__spreadValues({
6189
6542
  ref,
@@ -6192,7 +6545,7 @@ var NavigationMenuIndicator = React47.forwardRef((_a, ref) => {
6192
6545
  className
6193
6546
  )
6194
6547
  }, props), {
6195
- children: /* @__PURE__ */ jsx24("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
6548
+ children: /* @__PURE__ */ jsx25("div", { className: "relative top-[60%] h-2 w-2 rotate-45 rounded-tl-sm bg-border shadow-md" })
6196
6549
  })
6197
6550
  );
6198
6551
  });
@@ -6204,12 +6557,12 @@ import {
6204
6557
  ChevronRightIcon as ChevronRightIcon5,
6205
6558
  DotsHorizontalIcon as DotsHorizontalIcon2
6206
6559
  } from "@radix-ui/react-icons";
6207
- import * as React48 from "react";
6560
+ import * as React49 from "react";
6208
6561
  import { ChevronLeft as ChevronLeft2, ChevronRight as ChevronRight2 } from "lucide-react";
6209
- import { jsx as jsx25, jsxs as jsxs15 } from "react/jsx-runtime";
6562
+ import { jsx as jsx26, jsxs as jsxs17 } from "react/jsx-runtime";
6210
6563
  var Pagination = (_a) => {
6211
6564
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6212
- return /* @__PURE__ */ jsx25(
6565
+ return /* @__PURE__ */ jsx26(
6213
6566
  "nav",
6214
6567
  __spreadValues({
6215
6568
  role: "navigation",
@@ -6219,9 +6572,9 @@ var Pagination = (_a) => {
6219
6572
  );
6220
6573
  };
6221
6574
  Pagination.displayName = "Pagination";
6222
- var PaginationContent = React48.forwardRef((_a, ref) => {
6575
+ var PaginationContent = React49.forwardRef((_a, ref) => {
6223
6576
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6224
- return /* @__PURE__ */ jsx25(
6577
+ return /* @__PURE__ */ jsx26(
6225
6578
  "ul",
6226
6579
  __spreadValues({
6227
6580
  ref,
@@ -6230,9 +6583,9 @@ var PaginationContent = React48.forwardRef((_a, ref) => {
6230
6583
  );
6231
6584
  });
6232
6585
  PaginationContent.displayName = "PaginationContent";
6233
- var PaginationItem = React48.forwardRef((_a, ref) => {
6586
+ var PaginationItem = React49.forwardRef((_a, ref) => {
6234
6587
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6235
- return /* @__PURE__ */ jsx25("li", __spreadValues({ ref, className: cn("", className) }, props));
6588
+ return /* @__PURE__ */ jsx26("li", __spreadValues({ ref, className: cn("", className) }, props));
6236
6589
  });
6237
6590
  PaginationItem.displayName = "PaginationItem";
6238
6591
  var PaginationLink = (_a) => {
@@ -6245,7 +6598,7 @@ var PaginationLink = (_a) => {
6245
6598
  "isActive",
6246
6599
  "size"
6247
6600
  ]);
6248
- return /* @__PURE__ */ jsx25(
6601
+ return /* @__PURE__ */ jsx26(
6249
6602
  "a",
6250
6603
  __spreadValues({
6251
6604
  "aria-current": isActive ? "page" : void 0,
@@ -6266,7 +6619,7 @@ var PaginationPreviousLast = (_a) => {
6266
6619
  } = _b, props = __objRest(_b, [
6267
6620
  "className"
6268
6621
  ]);
6269
- return /* @__PURE__ */ jsxs15(
6622
+ return /* @__PURE__ */ jsxs17(
6270
6623
  PaginationLink,
6271
6624
  __spreadProps(__spreadValues({
6272
6625
  "aria-label": "Go to previous page",
@@ -6274,8 +6627,8 @@ var PaginationPreviousLast = (_a) => {
6274
6627
  className: cn("gap-1 pl-2.5", className)
6275
6628
  }, props), {
6276
6629
  children: [
6277
- /* @__PURE__ */ jsx25(ChevronLeft2, { className: "h-4 w-4" }),
6278
- /* @__PURE__ */ jsx25("span", { className: "sr-only", children: "Previous Last" })
6630
+ /* @__PURE__ */ jsx26(ChevronLeft2, { className: "h-4 w-4" }),
6631
+ /* @__PURE__ */ jsx26("span", { className: "sr-only", children: "Previous Last" })
6279
6632
  ]
6280
6633
  })
6281
6634
  );
@@ -6287,7 +6640,7 @@ var PaginationPrevious = (_a) => {
6287
6640
  } = _b, props = __objRest(_b, [
6288
6641
  "className"
6289
6642
  ]);
6290
- return /* @__PURE__ */ jsxs15(
6643
+ return /* @__PURE__ */ jsxs17(
6291
6644
  PaginationLink,
6292
6645
  __spreadProps(__spreadValues({
6293
6646
  "aria-label": "Go to previous page",
@@ -6295,8 +6648,8 @@ var PaginationPrevious = (_a) => {
6295
6648
  className: cn("gap-1 pl-2.5", className)
6296
6649
  }, props), {
6297
6650
  children: [
6298
- /* @__PURE__ */ jsx25(ChevronLeftIcon, { className: "h-4 w-4" }),
6299
- /* @__PURE__ */ jsx25("span", { children: "Previous" })
6651
+ /* @__PURE__ */ jsx26(ChevronLeftIcon, { className: "h-4 w-4" }),
6652
+ /* @__PURE__ */ jsx26("span", { children: "Previous" })
6300
6653
  ]
6301
6654
  })
6302
6655
  );
@@ -6308,7 +6661,7 @@ var PaginationNext = (_a) => {
6308
6661
  } = _b, props = __objRest(_b, [
6309
6662
  "className"
6310
6663
  ]);
6311
- return /* @__PURE__ */ jsxs15(
6664
+ return /* @__PURE__ */ jsxs17(
6312
6665
  PaginationLink,
6313
6666
  __spreadProps(__spreadValues({
6314
6667
  "aria-label": "Go to next page",
@@ -6316,8 +6669,8 @@ var PaginationNext = (_a) => {
6316
6669
  className: cn("gap-1 pr-2.5", className)
6317
6670
  }, props), {
6318
6671
  children: [
6319
- /* @__PURE__ */ jsx25("span", { children: "Next" }),
6320
- /* @__PURE__ */ jsx25(ChevronRightIcon5, { className: "h-4 w-4" })
6672
+ /* @__PURE__ */ jsx26("span", { children: "Next" }),
6673
+ /* @__PURE__ */ jsx26(ChevronRightIcon5, { className: "h-4 w-4" })
6321
6674
  ]
6322
6675
  })
6323
6676
  );
@@ -6329,7 +6682,7 @@ var PaginationNextLast = (_a) => {
6329
6682
  } = _b, props = __objRest(_b, [
6330
6683
  "className"
6331
6684
  ]);
6332
- return /* @__PURE__ */ jsxs15(
6685
+ return /* @__PURE__ */ jsxs17(
6333
6686
  PaginationLink,
6334
6687
  __spreadProps(__spreadValues({
6335
6688
  "aria-label": "Go to next page",
@@ -6337,8 +6690,8 @@ var PaginationNextLast = (_a) => {
6337
6690
  className: cn("gap-1 pr-2.5", className)
6338
6691
  }, props), {
6339
6692
  children: [
6340
- /* @__PURE__ */ jsx25("span", { className: "sr-only", children: "Next Last" }),
6341
- /* @__PURE__ */ jsx25(ChevronRight2, { className: "h-4 w-4" })
6693
+ /* @__PURE__ */ jsx26("span", { className: "sr-only", children: "Next Last" }),
6694
+ /* @__PURE__ */ jsx26(ChevronRight2, { className: "h-4 w-4" })
6342
6695
  ]
6343
6696
  })
6344
6697
  );
@@ -6350,15 +6703,15 @@ var PaginationEllipsis = (_a) => {
6350
6703
  } = _b, props = __objRest(_b, [
6351
6704
  "className"
6352
6705
  ]);
6353
- return /* @__PURE__ */ jsxs15(
6706
+ return /* @__PURE__ */ jsxs17(
6354
6707
  "span",
6355
6708
  __spreadProps(__spreadValues({
6356
6709
  "aria-hidden": true,
6357
6710
  className: cn("flex h-9 w-9 items-center justify-center", className)
6358
6711
  }, props), {
6359
6712
  children: [
6360
- /* @__PURE__ */ jsx25(DotsHorizontalIcon2, { className: "h-4 w-4" }),
6361
- /* @__PURE__ */ jsx25("span", { className: "sr-only", children: "More pages" })
6713
+ /* @__PURE__ */ jsx26(DotsHorizontalIcon2, { className: "h-4 w-4" }),
6714
+ /* @__PURE__ */ jsx26("span", { className: "sr-only", children: "More pages" })
6362
6715
  ]
6363
6716
  })
6364
6717
  );
@@ -6367,14 +6720,14 @@ PaginationEllipsis.displayName = "PaginationEllipsis";
6367
6720
 
6368
6721
  // src/components/popover.tsx
6369
6722
  import * as PopoverPrimitive from "@radix-ui/react-popover";
6370
- import * as React49 from "react";
6371
- import { jsx as jsx26 } from "react/jsx-runtime";
6723
+ import * as React50 from "react";
6724
+ import { jsx as jsx27 } from "react/jsx-runtime";
6372
6725
  var Popover = PopoverPrimitive.Root;
6373
6726
  var PopoverTrigger = PopoverPrimitive.Trigger;
6374
6727
  var PopoverAnchor = PopoverPrimitive.Anchor;
6375
- var PopoverContent = React49.forwardRef((_a, ref) => {
6728
+ var PopoverContent = React50.forwardRef((_a, ref) => {
6376
6729
  var _b = _a, { className, align = "center", sideOffset = 4 } = _b, props = __objRest(_b, ["className", "align", "sideOffset"]);
6377
- return /* @__PURE__ */ jsx26(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx26(
6730
+ return /* @__PURE__ */ jsx27(PopoverPrimitive.Portal, { children: /* @__PURE__ */ jsx27(
6378
6731
  PopoverPrimitive.Content,
6379
6732
  __spreadValues({
6380
6733
  ref,
@@ -6391,11 +6744,11 @@ PopoverContent.displayName = PopoverPrimitive.Content.displayName;
6391
6744
 
6392
6745
  // src/components/progress.tsx
6393
6746
  import * as ProgressPrimitive from "@radix-ui/react-progress";
6394
- import * as React50 from "react";
6395
- import { jsx as jsx27 } from "react/jsx-runtime";
6396
- var Progress = React50.forwardRef((_a, ref) => {
6747
+ import * as React51 from "react";
6748
+ import { jsx as jsx28 } from "react/jsx-runtime";
6749
+ var Progress = React51.forwardRef((_a, ref) => {
6397
6750
  var _b = _a, { className, value } = _b, props = __objRest(_b, ["className", "value"]);
6398
- return /* @__PURE__ */ jsx27(
6751
+ return /* @__PURE__ */ jsx28(
6399
6752
  ProgressPrimitive.Root,
6400
6753
  __spreadProps(__spreadValues({
6401
6754
  ref,
@@ -6404,7 +6757,7 @@ var Progress = React50.forwardRef((_a, ref) => {
6404
6757
  className
6405
6758
  )
6406
6759
  }, props), {
6407
- children: /* @__PURE__ */ jsx27(
6760
+ children: /* @__PURE__ */ jsx28(
6408
6761
  ProgressPrimitive.Indicator,
6409
6762
  {
6410
6763
  className: "h-full w-full flex-1 bg-primary transition-all",
@@ -6417,13 +6770,13 @@ var Progress = React50.forwardRef((_a, ref) => {
6417
6770
  Progress.displayName = ProgressPrimitive.Root.displayName;
6418
6771
 
6419
6772
  // src/components/radio-group.tsx
6420
- import { CheckIcon as CheckIcon5 } from "@radix-ui/react-icons";
6773
+ import { CheckIcon as CheckIcon6 } from "@radix-ui/react-icons";
6421
6774
  import * as RadioGroupPrimitive from "@radix-ui/react-radio-group";
6422
- import * as React51 from "react";
6423
- import { jsx as jsx28 } from "react/jsx-runtime";
6424
- var RadioGroup4 = React51.forwardRef((_a, ref) => {
6775
+ import * as React52 from "react";
6776
+ import { jsx as jsx29 } from "react/jsx-runtime";
6777
+ var RadioGroup4 = React52.forwardRef((_a, ref) => {
6425
6778
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6426
- return /* @__PURE__ */ jsx28(
6779
+ return /* @__PURE__ */ jsx29(
6427
6780
  RadioGroupPrimitive.Root,
6428
6781
  __spreadProps(__spreadValues({
6429
6782
  className: cn("grid gap-2", className)
@@ -6433,9 +6786,9 @@ var RadioGroup4 = React51.forwardRef((_a, ref) => {
6433
6786
  );
6434
6787
  });
6435
6788
  RadioGroup4.displayName = RadioGroupPrimitive.Root.displayName;
6436
- var RadioGroupItem = React51.forwardRef((_a, ref) => {
6789
+ var RadioGroupItem = React52.forwardRef((_a, ref) => {
6437
6790
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6438
- return /* @__PURE__ */ jsx28(
6791
+ return /* @__PURE__ */ jsx29(
6439
6792
  RadioGroupPrimitive.Item,
6440
6793
  __spreadProps(__spreadValues({
6441
6794
  ref,
@@ -6444,7 +6797,7 @@ var RadioGroupItem = React51.forwardRef((_a, ref) => {
6444
6797
  className
6445
6798
  )
6446
6799
  }, props), {
6447
- children: /* @__PURE__ */ jsx28(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx28(CheckIcon5, { className: "h-3.5 w-3.5 fill-primary" }) })
6800
+ children: /* @__PURE__ */ jsx29(RadioGroupPrimitive.Indicator, { className: "flex items-center justify-center", children: /* @__PURE__ */ jsx29(CheckIcon6, { className: "h-3.5 w-3.5 fill-primary" }) })
6448
6801
  })
6449
6802
  );
6450
6803
  });
@@ -6453,14 +6806,14 @@ RadioGroupItem.displayName = RadioGroupPrimitive.Item.displayName;
6453
6806
  // src/components/resizable.tsx
6454
6807
  import { DragHandleDots2Icon } from "@radix-ui/react-icons";
6455
6808
  import * as ResizablePrimitive from "react-resizable-panels";
6456
- import { jsx as jsx29 } from "react/jsx-runtime";
6809
+ import { jsx as jsx30 } from "react/jsx-runtime";
6457
6810
  var ResizablePanelGroup = (_a) => {
6458
6811
  var _b = _a, {
6459
6812
  className
6460
6813
  } = _b, props = __objRest(_b, [
6461
6814
  "className"
6462
6815
  ]);
6463
- return /* @__PURE__ */ jsx29(
6816
+ return /* @__PURE__ */ jsx30(
6464
6817
  ResizablePrimitive.PanelGroup,
6465
6818
  __spreadValues({
6466
6819
  className: cn(
@@ -6479,7 +6832,7 @@ var ResizableHandle = (_a) => {
6479
6832
  "withHandle",
6480
6833
  "className"
6481
6834
  ]);
6482
- return /* @__PURE__ */ jsx29(
6835
+ return /* @__PURE__ */ jsx30(
6483
6836
  ResizablePrimitive.PanelResizeHandle,
6484
6837
  __spreadProps(__spreadValues({
6485
6838
  className: cn(
@@ -6487,35 +6840,35 @@ var ResizableHandle = (_a) => {
6487
6840
  className
6488
6841
  )
6489
6842
  }, props), {
6490
- children: withHandle && /* @__PURE__ */ jsx29("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border", children: /* @__PURE__ */ jsx29(DragHandleDots2Icon, { className: "h-2.5 w-2.5" }) })
6843
+ children: withHandle && /* @__PURE__ */ jsx30("div", { className: "z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border", children: /* @__PURE__ */ jsx30(DragHandleDots2Icon, { className: "h-2.5 w-2.5" }) })
6491
6844
  })
6492
6845
  );
6493
6846
  };
6494
6847
 
6495
6848
  // src/components/scroll-area.tsx
6496
6849
  import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
6497
- import * as React52 from "react";
6498
- import { jsx as jsx30, jsxs as jsxs16 } from "react/jsx-runtime";
6499
- var ScrollArea = React52.forwardRef((_a, ref) => {
6850
+ import * as React53 from "react";
6851
+ import { jsx as jsx31, jsxs as jsxs18 } from "react/jsx-runtime";
6852
+ var ScrollArea = React53.forwardRef((_a, ref) => {
6500
6853
  var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6501
- return /* @__PURE__ */ jsxs16(
6854
+ return /* @__PURE__ */ jsxs18(
6502
6855
  ScrollAreaPrimitive.Root,
6503
6856
  __spreadProps(__spreadValues({
6504
6857
  ref,
6505
6858
  className: cn("relative overflow-hidden", className)
6506
6859
  }, props), {
6507
6860
  children: [
6508
- /* @__PURE__ */ jsx30(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children }),
6509
- /* @__PURE__ */ jsx30(ScrollBar, {}),
6510
- /* @__PURE__ */ jsx30(ScrollAreaPrimitive.Corner, {})
6861
+ /* @__PURE__ */ jsx31(ScrollAreaPrimitive.Viewport, { className: "h-full w-full rounded-[inherit]", children }),
6862
+ /* @__PURE__ */ jsx31(ScrollBar, {}),
6863
+ /* @__PURE__ */ jsx31(ScrollAreaPrimitive.Corner, {})
6511
6864
  ]
6512
6865
  })
6513
6866
  );
6514
6867
  });
6515
6868
  ScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;
6516
- var ScrollBar = React52.forwardRef((_a, ref) => {
6869
+ var ScrollBar = React53.forwardRef((_a, ref) => {
6517
6870
  var _b = _a, { className, orientation = "vertical" } = _b, props = __objRest(_b, ["className", "orientation"]);
6518
- return /* @__PURE__ */ jsx30(
6871
+ return /* @__PURE__ */ jsx31(
6519
6872
  ScrollAreaPrimitive.ScrollAreaScrollbar,
6520
6873
  __spreadProps(__spreadValues({
6521
6874
  ref,
@@ -6527,182 +6880,47 @@ var ScrollBar = React52.forwardRef((_a, ref) => {
6527
6880
  className
6528
6881
  )
6529
6882
  }, props), {
6530
- children: /* @__PURE__ */ jsx30(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
6883
+ children: /* @__PURE__ */ jsx31(ScrollAreaPrimitive.ScrollAreaThumb, { className: "relative flex-1 rounded-full bg-border" })
6531
6884
  })
6532
6885
  );
6533
6886
  });
6534
6887
  ScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;
6535
6888
 
6536
6889
  // src/components/search-input.tsx
6537
- import React53, { useCallback as useCallback4 } from "react";
6890
+ import React54, { useCallback as useCallback4 } from "react";
6538
6891
  import { useDebounce } from "use-debounce";
6539
- import { jsx as jsx31 } from "react/jsx-runtime";
6892
+ import { jsx as jsx32 } from "react/jsx-runtime";
6540
6893
  function SearchInput({
6541
6894
  value,
6542
6895
  placeholder,
6543
6896
  className,
6897
+ classNameDefault,
6544
6898
  debounceTime = 750,
6545
6899
  onSearch
6546
6900
  }) {
6547
- const [searchTerm, setSearchTerm] = React53.useState(value);
6901
+ const [searchTerm, setSearchTerm] = React54.useState(value);
6548
6902
  const [debouncedValue] = useDebounce(searchTerm, debounceTime);
6549
6903
  const handleSettingSearchParams = useCallback4((newSearchValue) => {
6550
6904
  onSearch(newSearchValue);
6551
6905
  }, []);
6552
- React53.useEffect(() => {
6906
+ React54.useEffect(() => {
6553
6907
  handleSettingSearchParams(debouncedValue);
6554
6908
  }, [debouncedValue, handleSettingSearchParams]);
6555
- React53.useEffect(() => {
6909
+ React54.useEffect(() => {
6556
6910
  setSearchTerm(value);
6557
6911
  }, [value]);
6558
- return /* @__PURE__ */ jsx31(
6912
+ return /* @__PURE__ */ jsx32(
6559
6913
  Input,
6560
6914
  {
6561
6915
  placeholder: placeholder || `Search...`,
6562
6916
  value: searchTerm,
6563
6917
  onChange: (event) => setSearchTerm(event.target.value),
6564
- className: cn("w-full md:max-w-sm", className)
6918
+ className: cn("w-full md:max-w-sm", className),
6919
+ classNameDefault: classNameDefault != null ? classNameDefault : true
6565
6920
  }
6566
6921
  );
6567
6922
  }
6568
6923
 
6569
- // src/components/select.tsx
6570
- import {
6571
- CaretSortIcon,
6572
- CheckIcon as CheckIcon6,
6573
- ChevronDownIcon as ChevronDownIcon3,
6574
- ChevronUpIcon
6575
- } from "@radix-ui/react-icons";
6576
- import * as SelectPrimitive from "@radix-ui/react-select";
6577
- import * as React54 from "react";
6578
- import { jsx as jsx32, jsxs as jsxs17 } from "react/jsx-runtime";
6579
- var Select2 = SelectPrimitive.Root;
6580
- var SelectGroup = SelectPrimitive.Group;
6581
- var SelectValue = SelectPrimitive.Value;
6582
- var SelectTrigger = React54.forwardRef((_a, ref) => {
6583
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6584
- return /* @__PURE__ */ jsxs17(
6585
- SelectPrimitive.Trigger,
6586
- __spreadProps(__spreadValues({
6587
- ref,
6588
- className: cn(
6589
- "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",
6590
- className
6591
- )
6592
- }, props), {
6593
- children: [
6594
- children,
6595
- /* @__PURE__ */ jsx32(SelectPrimitive.Icon, { asChild: true, children: /* @__PURE__ */ jsx32(CaretSortIcon, { className: "h-4 w-4 opacity-50" }) })
6596
- ]
6597
- })
6598
- );
6599
- });
6600
- SelectTrigger.displayName = SelectPrimitive.Trigger.displayName;
6601
- var SelectScrollUpButton = React54.forwardRef((_a, ref) => {
6602
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6603
- return /* @__PURE__ */ jsx32(
6604
- SelectPrimitive.ScrollUpButton,
6605
- __spreadProps(__spreadValues({
6606
- ref,
6607
- className: cn(
6608
- "flex cursor-default items-center justify-center py-1",
6609
- className
6610
- )
6611
- }, props), {
6612
- children: /* @__PURE__ */ jsx32(ChevronUpIcon, {})
6613
- })
6614
- );
6615
- });
6616
- SelectScrollUpButton.displayName = SelectPrimitive.ScrollUpButton.displayName;
6617
- var SelectScrollDownButton = React54.forwardRef((_a, ref) => {
6618
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6619
- return /* @__PURE__ */ jsx32(
6620
- SelectPrimitive.ScrollDownButton,
6621
- __spreadProps(__spreadValues({
6622
- ref,
6623
- className: cn(
6624
- "flex cursor-default items-center justify-center py-1",
6625
- className
6626
- )
6627
- }, props), {
6628
- children: /* @__PURE__ */ jsx32(ChevronDownIcon3, {})
6629
- })
6630
- );
6631
- });
6632
- SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
6633
- var SelectContent = React54.forwardRef((_a, ref) => {
6634
- var _b = _a, { className, children, position = "popper" } = _b, props = __objRest(_b, ["className", "children", "position"]);
6635
- return /* @__PURE__ */ jsx32(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs17(
6636
- SelectPrimitive.Content,
6637
- __spreadProps(__spreadValues({
6638
- ref,
6639
- className: cn(
6640
- "relative z-50 max-h-96 min-w-[8rem] 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",
6641
- 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",
6642
- className
6643
- ),
6644
- position
6645
- }, props), {
6646
- children: [
6647
- /* @__PURE__ */ jsx32(SelectScrollUpButton, {}),
6648
- /* @__PURE__ */ jsx32(
6649
- SelectPrimitive.Viewport,
6650
- {
6651
- className: cn(
6652
- "p-1",
6653
- position === "popper" && "h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"
6654
- ),
6655
- children
6656
- }
6657
- ),
6658
- /* @__PURE__ */ jsx32(SelectScrollDownButton, {})
6659
- ]
6660
- })
6661
- ) });
6662
- });
6663
- SelectContent.displayName = SelectPrimitive.Content.displayName;
6664
- var SelectLabel = React54.forwardRef((_a, ref) => {
6665
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6666
- return /* @__PURE__ */ jsx32(
6667
- SelectPrimitive.Label,
6668
- __spreadValues({
6669
- ref,
6670
- className: cn("px-2 py-1.5 text-sm font-semibold", className)
6671
- }, props)
6672
- );
6673
- });
6674
- SelectLabel.displayName = SelectPrimitive.Label.displayName;
6675
- var SelectItem = React54.forwardRef((_a, ref) => {
6676
- var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
6677
- return /* @__PURE__ */ jsxs17(
6678
- SelectPrimitive.Item,
6679
- __spreadProps(__spreadValues({
6680
- ref,
6681
- className: cn(
6682
- "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",
6683
- className
6684
- )
6685
- }, props), {
6686
- children: [
6687
- /* @__PURE__ */ jsx32("span", { className: "absolute right-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ jsx32(SelectPrimitive.ItemIndicator, { children: /* @__PURE__ */ jsx32(CheckIcon6, { className: "h-4 w-4" }) }) }),
6688
- /* @__PURE__ */ jsx32(SelectPrimitive.ItemText, { children })
6689
- ]
6690
- })
6691
- );
6692
- });
6693
- SelectItem.displayName = SelectPrimitive.Item.displayName;
6694
- var SelectSeparator = React54.forwardRef((_a, ref) => {
6695
- var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6696
- return /* @__PURE__ */ jsx32(
6697
- SelectPrimitive.Separator,
6698
- __spreadValues({
6699
- ref,
6700
- className: cn("-mx-1 my-1 h-px bg-muted", className)
6701
- }, props)
6702
- );
6703
- });
6704
- SelectSeparator.displayName = SelectPrimitive.Separator.displayName;
6705
-
6706
6924
  // src/components/separator.tsx
6707
6925
  import * as SeparatorPrimitive from "@radix-ui/react-separator";
6708
6926
  import * as React55 from "react";
@@ -6732,7 +6950,7 @@ import * as SheetPrimitive from "@radix-ui/react-dialog";
6732
6950
  import { Cross2Icon as Cross2Icon2 } from "@radix-ui/react-icons";
6733
6951
  import { cva as cva6 } from "class-variance-authority";
6734
6952
  import * as React56 from "react";
6735
- import { jsx as jsx34, jsxs as jsxs18 } from "react/jsx-runtime";
6953
+ import { jsx as jsx34, jsxs as jsxs19 } from "react/jsx-runtime";
6736
6954
  var Sheet = SheetPrimitive.Root;
6737
6955
  var SheetTrigger = SheetPrimitive.Trigger;
6738
6956
  var SheetClose = SheetPrimitive.Close;
@@ -6770,9 +6988,9 @@ var sheetVariants = cva6(
6770
6988
  );
6771
6989
  var SheetContent = React56.forwardRef((_a, ref) => {
6772
6990
  var _b = _a, { side = "right", className, children } = _b, props = __objRest(_b, ["side", "className", "children"]);
6773
- return /* @__PURE__ */ jsxs18(SheetPortal, { children: [
6991
+ return /* @__PURE__ */ jsxs19(SheetPortal, { children: [
6774
6992
  /* @__PURE__ */ jsx34(SheetOverlay, {}),
6775
- /* @__PURE__ */ jsxs18(
6993
+ /* @__PURE__ */ jsxs19(
6776
6994
  SheetPrimitive.Content,
6777
6995
  __spreadProps(__spreadValues({
6778
6996
  ref,
@@ -6780,7 +6998,7 @@ var SheetContent = React56.forwardRef((_a, ref) => {
6780
6998
  }, props), {
6781
6999
  children: [
6782
7000
  children,
6783
- /* @__PURE__ */ jsxs18(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: [
7001
+ /* @__PURE__ */ jsxs19(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: [
6784
7002
  /* @__PURE__ */ jsx34(Cross2Icon2, { className: "h-4 w-4" }),
6785
7003
  /* @__PURE__ */ jsx34("span", { className: "sr-only", children: "Close" })
6786
7004
  ] })
@@ -6866,10 +7084,10 @@ function Skeleton(_a) {
6866
7084
  // src/components/slider.tsx
6867
7085
  import * as SliderPrimitive from "@radix-ui/react-slider";
6868
7086
  import * as React57 from "react";
6869
- import { jsx as jsx36, jsxs as jsxs19 } from "react/jsx-runtime";
7087
+ import { jsx as jsx36, jsxs as jsxs20 } from "react/jsx-runtime";
6870
7088
  var Slider = React57.forwardRef((_a, ref) => {
6871
7089
  var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
6872
- return /* @__PURE__ */ jsxs19(
7090
+ return /* @__PURE__ */ jsxs20(
6873
7091
  SliderPrimitive.Root,
6874
7092
  __spreadProps(__spreadValues({
6875
7093
  ref,
@@ -7420,7 +7638,7 @@ function useToast() {
7420
7638
  }
7421
7639
 
7422
7640
  // src/shared/alert-modal.tsx
7423
- import { jsx as jsx46, jsxs as jsxs20 } from "react/jsx-runtime";
7641
+ import { jsx as jsx46, jsxs as jsxs21 } from "react/jsx-runtime";
7424
7642
  var AlertModal = ({
7425
7643
  isOpen,
7426
7644
  onClose,
@@ -7441,7 +7659,7 @@ var AlertModal = ({
7441
7659
  isOpen,
7442
7660
  onClose,
7443
7661
  className,
7444
- children: children ? children : /* @__PURE__ */ jsxs20("div", { className: "flex w-full items-center justify-end space-x-2 pt-6", children: [
7662
+ children: children ? children : /* @__PURE__ */ jsxs21("div", { className: "flex w-full items-center justify-end space-x-2 pt-6", children: [
7445
7663
  /* @__PURE__ */ jsx46(Button, { disabled: loading, variant: "outline", onClick: onClose, children: cancelText }),
7446
7664
  /* @__PURE__ */ jsx46(
7447
7665
  Button,
@@ -7461,9 +7679,9 @@ var AlertModal = ({
7461
7679
  // src/shared/breadcrumbs.tsx
7462
7680
  import { Slash } from "lucide-react";
7463
7681
  import { Fragment } from "react";
7464
- import { jsx as jsx47, jsxs as jsxs21 } from "react/jsx-runtime";
7682
+ import { jsx as jsx47, jsxs as jsxs22 } from "react/jsx-runtime";
7465
7683
  function Breadcrumbs({ items, className, classNameList }) {
7466
- return /* @__PURE__ */ jsx47(Breadcrumb, { className, children: /* @__PURE__ */ jsx47(BreadcrumbList, { className: classNameList, children: items.map((item, index) => /* @__PURE__ */ jsxs21(Fragment, { children: [
7684
+ return /* @__PURE__ */ jsx47(Breadcrumb, { className, children: /* @__PURE__ */ jsx47(BreadcrumbList, { className: classNameList, children: items.map((item, index) => /* @__PURE__ */ jsxs22(Fragment, { children: [
7467
7685
  index !== items.length - 1 && /* @__PURE__ */ jsx47(BreadcrumbItem, { className: item.className, children: /* @__PURE__ */ jsx47(BreadcrumbLink, { href: item.link, children: item.title }) }),
7468
7686
  index < items.length - 1 && /* @__PURE__ */ jsx47(BreadcrumbSeparator, { children: /* @__PURE__ */ jsx47(Slash, {}) }),
7469
7687
  index === items.length - 1 && /* @__PURE__ */ jsx47(BreadcrumbPage, { children: item.title })
@@ -7484,7 +7702,7 @@ import {
7484
7702
  useReactTable
7485
7703
  } from "@tanstack/react-table";
7486
7704
  import { ChevronLeftIcon as ChevronLeftIcon2, ChevronRightIcon as ChevronRightIcon6 } from "lucide-react";
7487
- import { Fragment as Fragment2, jsx as jsx48, jsxs as jsxs22 } from "react/jsx-runtime";
7705
+ import { Fragment as Fragment2, jsx as jsx48, jsxs as jsxs23 } from "react/jsx-runtime";
7488
7706
  function DataTable({
7489
7707
  columns,
7490
7708
  data,
@@ -7535,13 +7753,13 @@ function DataTable({
7535
7753
  onPageChange(pagination.pageIndex + 1);
7536
7754
  }
7537
7755
  }, [pagination]);
7538
- return /* @__PURE__ */ jsxs22(Fragment2, { children: [
7539
- /* @__PURE__ */ jsxs22("div", { className: "rounded-md border", children: [
7756
+ return /* @__PURE__ */ jsxs23(Fragment2, { children: [
7757
+ /* @__PURE__ */ jsxs23("div", { className: "rounded-md border", children: [
7540
7758
  /* @__PURE__ */ jsx48(Table, { className: cn("relative", tableClassName), children: /* @__PURE__ */ jsx48(TableHeader, { className: headerClassName, children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx48(TableRow, { className: rowClassName, children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx48(TableHead, { className: headerClassName, children: header.isPlaceholder ? null : flexRender(
7541
7759
  header.column.columnDef.header,
7542
7760
  header.getContext()
7543
7761
  ) }, header.id)) }, headerGroup.id)) }) }),
7544
- /* @__PURE__ */ jsxs22(ScrollArea, { className: "h-[calc(80vh-220px)] md:h-[calc(80dvh-80px)]", children: [
7762
+ /* @__PURE__ */ jsxs23(ScrollArea, { className: "h-[calc(80vh-220px)] md:h-[calc(80dvh-80px)]", children: [
7545
7763
  /* @__PURE__ */ jsx48(Table, { className: cn("relative", tableClassName), children: /* @__PURE__ */ jsx48(TableBody, { className: bodyClassName, children: table.getRowModel().rows.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx48(
7546
7764
  TableRow,
7547
7765
  {
@@ -7565,7 +7783,7 @@ function DataTable({
7565
7783
  /* @__PURE__ */ jsx48(ScrollBar, { orientation: "horizontal" })
7566
7784
  ] })
7567
7785
  ] }),
7568
- /* @__PURE__ */ jsxs22(
7786
+ /* @__PURE__ */ jsxs23(
7569
7787
  ScrollArea,
7570
7788
  {
7571
7789
  className: cn(
@@ -7573,7 +7791,7 @@ function DataTable({
7573
7791
  className
7574
7792
  ),
7575
7793
  children: [
7576
- /* @__PURE__ */ jsxs22(Table, { className: cn("relative", tableClassName), children: [
7794
+ /* @__PURE__ */ jsxs23(Table, { className: cn("relative", tableClassName), children: [
7577
7795
  /* @__PURE__ */ jsx48(TableHeader, { className: headerClassName, children: table.getHeaderGroups().map((headerGroup) => /* @__PURE__ */ jsx48(TableRow, { className: rowClassName, children: headerGroup.headers.map((header) => /* @__PURE__ */ jsx48(TableHead, { className: headerClassName, children: header.isPlaceholder ? null : flexRender(
7578
7796
  header.column.columnDef.header,
7579
7797
  header.getContext()
@@ -7603,9 +7821,9 @@ function DataTable({
7603
7821
  ]
7604
7822
  }
7605
7823
  ),
7606
- /* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center justify-end gap-2 space-x-2 py-4 sm:flex-row", children: [
7607
- /* @__PURE__ */ jsxs22("div", { className: "flex w-full items-center justify-between", children: [
7608
- isRowsSelected ? /* @__PURE__ */ jsxs22("div", { className: "text-muted-foreground flex-1 text-sm", children: [
7824
+ /* @__PURE__ */ jsxs23("div", { className: "flex flex-col items-center justify-end gap-2 space-x-2 py-4 sm:flex-row", children: [
7825
+ /* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between", children: [
7826
+ isRowsSelected ? /* @__PURE__ */ jsxs23("div", { className: "text-muted-foreground flex-1 text-sm", children: [
7609
7827
  table.getFilteredSelectedRowModel().rows.length,
7610
7828
  " ",
7611
7829
  ofLabel,
@@ -7613,14 +7831,14 @@ function DataTable({
7613
7831
  table.getFilteredRowModel().rows.length,
7614
7832
  " " + rowsSelectedLabel
7615
7833
  ] }) : null,
7616
- totalRows ? /* @__PURE__ */ jsxs22("div", { className: "text-sm text-muted-foreground", children: [
7834
+ totalRows ? /* @__PURE__ */ jsxs23("div", { className: "text-sm text-muted-foreground", children: [
7617
7835
  "Total: ",
7618
7836
  totalRows,
7619
7837
  " registros"
7620
7838
  ] }) : null,
7621
- /* @__PURE__ */ jsxs22("div", { className: "flex items-center space-x-2", children: [
7839
+ /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
7622
7840
  /* @__PURE__ */ jsx48("p", { className: "text-sm font-medium whitespace-nowrap", children: rowPerPageLabel }),
7623
- /* @__PURE__ */ jsxs22(
7841
+ /* @__PURE__ */ jsxs23(
7624
7842
  Select2,
7625
7843
  {
7626
7844
  value: `${pagination.pageSize}`,
@@ -7640,8 +7858,8 @@ function DataTable({
7640
7858
  )
7641
7859
  ] })
7642
7860
  ] }),
7643
- /* @__PURE__ */ jsxs22("div", { className: "flex w-full items-center justify-between gap-2 sm:justify-end", children: [
7644
- /* @__PURE__ */ jsxs22("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: [
7861
+ /* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between gap-2 sm:justify-end", children: [
7862
+ /* @__PURE__ */ jsxs23("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: [
7645
7863
  pageLabel,
7646
7864
  " ",
7647
7865
  pagination.pageIndex + 1,
@@ -7650,7 +7868,7 @@ function DataTable({
7650
7868
  " ",
7651
7869
  pageCount
7652
7870
  ] }),
7653
- /* @__PURE__ */ jsxs22("div", { className: "flex items-center space-x-2", children: [
7871
+ /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
7654
7872
  /* @__PURE__ */ jsx48(
7655
7873
  Button,
7656
7874
  {
@@ -7706,7 +7924,7 @@ function DataTable({
7706
7924
  }
7707
7925
 
7708
7926
  // src/shared/data-table-skeleton.tsx
7709
- import { jsx as jsx49, jsxs as jsxs23 } from "react/jsx-runtime";
7927
+ import { jsx as jsx49, jsxs as jsxs24 } from "react/jsx-runtime";
7710
7928
  function DataTableSkeleton({
7711
7929
  columnCount,
7712
7930
  rowCount = 10,
@@ -7714,27 +7932,27 @@ function DataTableSkeleton({
7714
7932
  filterableColumnCount = 0,
7715
7933
  showViewOptions = true
7716
7934
  }) {
7717
- return /* @__PURE__ */ jsxs23("div", { className: "w-full space-y-3 overflow-auto", children: [
7718
- /* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between space-x-2 overflow-auto p-1", children: [
7719
- /* @__PURE__ */ jsxs23("div", { className: "flex flex-1 items-center space-x-2 space-y-4", children: [
7935
+ return /* @__PURE__ */ jsxs24("div", { className: "w-full space-y-3 overflow-auto", children: [
7936
+ /* @__PURE__ */ jsxs24("div", { className: "flex w-full items-center justify-between space-x-2 overflow-auto p-1", children: [
7937
+ /* @__PURE__ */ jsxs24("div", { className: "flex flex-1 items-center space-x-2 space-y-4", children: [
7720
7938
  searchableColumnCount > 0 ? Array.from({ length: searchableColumnCount }).map((_, i) => /* @__PURE__ */ jsx49(Skeleton, { className: "h-10 w-[150px] lg:w-[250px]" }, i)) : null,
7721
7939
  filterableColumnCount > 0 ? Array.from({ length: filterableColumnCount }).map((_, i) => /* @__PURE__ */ jsx49(Skeleton, { className: "h-10 w-[70px] border-dashed" }, i)) : null
7722
7940
  ] }),
7723
7941
  showViewOptions ? /* @__PURE__ */ jsx49(Skeleton, { className: "ml-auto hidden h-7 w-[70px] lg:flex" }) : null
7724
7942
  ] }),
7725
- /* @__PURE__ */ jsx49("div", { className: "rounded-md border", children: /* @__PURE__ */ jsxs23(Table, { children: [
7943
+ /* @__PURE__ */ jsx49("div", { className: "rounded-md border", children: /* @__PURE__ */ jsxs24(Table, { children: [
7726
7944
  /* @__PURE__ */ jsx49(TableHeader, { children: Array.from({ length: 1 }).map((_, i) => /* @__PURE__ */ jsx49(TableRow, { className: "hover:bg-transparent", children: Array.from({ length: columnCount }).map((_2, i2) => /* @__PURE__ */ jsx49(TableHead, { children: /* @__PURE__ */ jsx49(Skeleton, { className: "h-6 w-full" }) }, i2)) }, i)) }),
7727
7945
  /* @__PURE__ */ jsx49(TableBody, { children: Array.from({ length: rowCount }).map((_, i) => /* @__PURE__ */ jsx49(TableRow, { className: "hover:bg-transparent", children: Array.from({ length: columnCount }).map((_2, i2) => /* @__PURE__ */ jsx49(TableCell, { children: /* @__PURE__ */ jsx49(Skeleton, { className: "h-6 w-full" }) }, i2)) }, i)) })
7728
7946
  ] }) }),
7729
- /* @__PURE__ */ jsxs23("div", { className: "flex w-full flex-col items-center justify-between gap-4 overflow-auto px-2 py-1 sm:flex-row sm:gap-8", children: [
7947
+ /* @__PURE__ */ jsxs24("div", { className: "flex w-full flex-col items-center justify-between gap-4 overflow-auto px-2 py-1 sm:flex-row sm:gap-8", children: [
7730
7948
  /* @__PURE__ */ jsx49("div", { className: "flex-1", children: /* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-40" }) }),
7731
- /* @__PURE__ */ jsxs23("div", { className: "flex flex-col items-center gap-4 sm:flex-row sm:gap-6 lg:gap-8", children: [
7732
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
7949
+ /* @__PURE__ */ jsxs24("div", { className: "flex flex-col items-center gap-4 sm:flex-row sm:gap-6 lg:gap-8", children: [
7950
+ /* @__PURE__ */ jsxs24("div", { className: "flex items-center space-x-2", children: [
7733
7951
  /* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-24" }),
7734
7952
  /* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-[70px]" })
7735
7953
  ] }),
7736
7954
  /* @__PURE__ */ jsx49("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: /* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-20" }) }),
7737
- /* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
7955
+ /* @__PURE__ */ jsxs24("div", { className: "flex items-center space-x-2", children: [
7738
7956
  /* @__PURE__ */ jsx49(Skeleton, { className: "hidden size-8 lg:block" }),
7739
7957
  /* @__PURE__ */ jsx49(Skeleton, { className: "size-8" }),
7740
7958
  /* @__PURE__ */ jsx49(Skeleton, { className: "size-8" }),
@@ -7748,9 +7966,9 @@ function DataTableSkeleton({
7748
7966
  // src/shared/fileupload.tsx
7749
7967
  import { AvatarIcon } from "@radix-ui/react-icons";
7750
7968
  import { CameraIcon } from "lucide-react";
7751
- import { useEffect as useEffect5, useState as useState5 } from "react";
7969
+ import { useEffect as useEffect5, useState as useState6 } from "react";
7752
7970
  import { useDropzone } from "react-dropzone";
7753
- import { jsx as jsx50, jsxs as jsxs24 } from "react/jsx-runtime";
7971
+ import { jsx as jsx50, jsxs as jsxs25 } from "react/jsx-runtime";
7754
7972
  function FileUpload({
7755
7973
  onChange,
7756
7974
  value,
@@ -7774,10 +7992,10 @@ function FileUpload({
7774
7992
  "relative h-36 w-36 overflow-hidden rounded-full bg-gray-200 shadow-2xl ",
7775
7993
  classNameContent
7776
7994
  ),
7777
- children: /* @__PURE__ */ jsxs24("div", __spreadProps(__spreadValues({}, getRootProps({ className: "dropzone cursor-pointer" })), { children: [
7995
+ children: /* @__PURE__ */ jsxs25("div", __spreadProps(__spreadValues({}, getRootProps({ className: "dropzone cursor-pointer" })), { children: [
7778
7996
  /* @__PURE__ */ jsx50("input", __spreadValues({}, getInputProps())),
7779
7997
  value && !!value.length ? /* @__PURE__ */ jsx50(ImagePreview, { file: value[0] }) : /* @__PURE__ */ jsx50(AvatarIcon, { className: "h-36 w-36 text-gray-100" }),
7780
- /* @__PURE__ */ jsxs24("p", { className: "absolute -bottom-5 left-1/2 flex w-full -translate-x-1/2 -translate-y-1/2 transform flex-col items-center justify-center bg-gray-300 bg-opacity-50 py-1 text-xs font-normal text-muted-foreground ", children: [
7998
+ /* @__PURE__ */ jsxs25("p", { className: "absolute -bottom-5 left-1/2 flex w-full -translate-x-1/2 -translate-y-1/2 transform flex-col items-center justify-center bg-gray-300 bg-opacity-50 py-1 text-xs font-normal text-muted-foreground ", children: [
7781
7999
  /* @__PURE__ */ jsx50(CameraIcon, { className: "h-4 w-4 text-muted-foreground" }),
7782
8000
  label
7783
8001
  ] })
@@ -7786,7 +8004,7 @@ function FileUpload({
7786
8004
  ) });
7787
8005
  }
7788
8006
  function ImagePreview({ file }) {
7789
- const [objectUrl, setObjectUrl] = useState5(null);
8007
+ const [objectUrl, setObjectUrl] = useState6(null);
7790
8008
  useEffect5(() => {
7791
8009
  const url = URL.createObjectURL(file);
7792
8010
  setObjectUrl(url);
@@ -7805,9 +8023,9 @@ function ImagePreview({ file }) {
7805
8023
  }
7806
8024
 
7807
8025
  // src/shared/heading.tsx
7808
- import { jsx as jsx51, jsxs as jsxs25 } from "react/jsx-runtime";
8026
+ import { jsx as jsx51, jsxs as jsxs26 } from "react/jsx-runtime";
7809
8027
  function Heading({ title, description, className }) {
7810
- return /* @__PURE__ */ jsxs25("div", { className, children: [
8028
+ return /* @__PURE__ */ jsxs26("div", { className, children: [
7811
8029
  /* @__PURE__ */ jsx51("div", { className: "text-lg font-bold tracking-tight text-primary sm:text-3xl", children: title }),
7812
8030
  /* @__PURE__ */ jsx51("p", { className: "text-sm text-muted-foreground", children: description })
7813
8031
  ] });
@@ -7815,9 +8033,9 @@ function Heading({ title, description, className }) {
7815
8033
 
7816
8034
  // src/shared/page-head.tsx
7817
8035
  import { Helmet } from "react-helmet-next";
7818
- import { jsx as jsx52, jsxs as jsxs26 } from "react/jsx-runtime";
8036
+ import { jsx as jsx52, jsxs as jsxs27 } from "react/jsx-runtime";
7819
8037
  function PageHead({ title = "shadcn-ui-react" }) {
7820
- return /* @__PURE__ */ jsx52(Helmet, { children: /* @__PURE__ */ jsxs26("title", { children: [
8038
+ return /* @__PURE__ */ jsx52(Helmet, { children: /* @__PURE__ */ jsxs27("title", { children: [
7821
8039
  " ",
7822
8040
  title,
7823
8041
  " "
@@ -7825,7 +8043,7 @@ function PageHead({ title = "shadcn-ui-react" }) {
7825
8043
  }
7826
8044
 
7827
8045
  // src/shared/pagination-section.tsx
7828
- import { jsx as jsx53, jsxs as jsxs27 } from "react/jsx-runtime";
8046
+ import { jsx as jsx53, jsxs as jsxs28 } from "react/jsx-runtime";
7829
8047
  function PaginationSection({
7830
8048
  totalPosts,
7831
8049
  postsPerPage,
@@ -7895,8 +8113,8 @@ function PaginationSection({
7895
8113
  }
7896
8114
  return renderedPages;
7897
8115
  };
7898
- return /* @__PURE__ */ jsx53("div", { className: "p-4", children: /* @__PURE__ */ jsx53(Pagination, { children: /* @__PURE__ */ jsxs27(PaginationContent, { children: [
7899
- /* @__PURE__ */ jsxs27(PaginationItem, { children: [
8116
+ return /* @__PURE__ */ jsx53("div", { className: "p-4", children: /* @__PURE__ */ jsx53(Pagination, { children: /* @__PURE__ */ jsxs28(PaginationContent, { children: [
8117
+ /* @__PURE__ */ jsxs28(PaginationItem, { children: [
7900
8118
  /* @__PURE__ */ jsx53(
7901
8119
  PaginationPreviousLast,
7902
8120
  {
@@ -7907,7 +8125,7 @@ function PaginationSection({
7907
8125
  /* @__PURE__ */ jsx53(PaginationPrevious, { onClick: handlePrevPage, size: void 0 })
7908
8126
  ] }),
7909
8127
  renderPages(),
7910
- /* @__PURE__ */ jsxs27(PaginationItem, { children: [
8128
+ /* @__PURE__ */ jsxs28(PaginationItem, { children: [
7911
8129
  /* @__PURE__ */ jsx53(PaginationNext, { onClick: handleNextPage, size: void 0 }),
7912
8130
  /* @__PURE__ */ jsx53(PaginationNextLast, { onClick: handleNextPageLast, size: void 0 })
7913
8131
  ] })
@@ -7916,7 +8134,7 @@ function PaginationSection({
7916
8134
 
7917
8135
  // src/shared/dropzone.tsx
7918
8136
  import { useDropzone as useDropzone2 } from "react-dropzone";
7919
- import { jsx as jsx54, jsxs as jsxs28 } from "react/jsx-runtime";
8137
+ import { jsx as jsx54, jsxs as jsxs29 } from "react/jsx-runtime";
7920
8138
  function Dropzone({
7921
8139
  label,
7922
8140
  onChange,
@@ -7937,9 +8155,9 @@ function Dropzone({
7937
8155
  },
7938
8156
  accept
7939
8157
  }, options));
7940
- return /* @__PURE__ */ jsxs28("div", { className: cn("space-y-2", className), children: [
8158
+ return /* @__PURE__ */ jsxs29("div", { className: cn("space-y-2", className), children: [
7941
8159
  label && /* @__PURE__ */ jsx54("p", { className: cn("font-medium", labelClassName), children: label }),
7942
- /* @__PURE__ */ jsxs28(
8160
+ /* @__PURE__ */ jsxs29(
7943
8161
  "div",
7944
8162
  __spreadProps(__spreadValues({}, getRootProps()), {
7945
8163
  className: cn(
@@ -7953,7 +8171,7 @@ function Dropzone({
7953
8171
  ]
7954
8172
  })
7955
8173
  ),
7956
- value && value.length > 0 && /* @__PURE__ */ jsx54("ul", { className: cn("text-sm text-gray-700 space-y-1", valueClassName), children: value.map((file, idx) => /* @__PURE__ */ jsxs28("li", { children: [
8174
+ value && value.length > 0 && /* @__PURE__ */ jsx54("ul", { className: cn("text-sm text-gray-700 space-y-1", valueClassName), children: value.map((file, idx) => /* @__PURE__ */ jsxs29("li", { children: [
7957
8175
  "\u2022 ",
7958
8176
  file.name
7959
8177
  ] }, idx)) })
@@ -8068,6 +8286,7 @@ export {
8068
8286
  FormItem,
8069
8287
  FormLabel,
8070
8288
  FormMessage,
8289
+ FormSelect,
8071
8290
  Heading,
8072
8291
  HoverCard,
8073
8292
  HoverCardContent,