shadcn-ui-react 0.3.7 → 0.4.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.
- package/README.md +19 -3
- package/dist/index.cjs +423 -189
- package/dist/index.d.cts +76 -20
- package/dist/index.d.ts +76 -20
- package/dist/index.js +459 -228
- package/dist/style.css +242 -57
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -5508,60 +5508,125 @@ var Form = ({
|
|
|
5508
5508
|
};
|
|
5509
5509
|
|
|
5510
5510
|
// src/components/Form/form-field.tsx
|
|
5511
|
+
import React42 from "react";
|
|
5511
5512
|
import {
|
|
5512
5513
|
Controller,
|
|
5513
5514
|
useFormContext
|
|
5514
5515
|
} from "react-hook-form";
|
|
5515
|
-
import React43 from "react";
|
|
5516
|
-
|
|
5517
|
-
// src/components/Label/label.tsx
|
|
5518
|
-
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
5519
|
-
import { cva as cva4 } from "class-variance-authority";
|
|
5520
|
-
import * as React41 from "react";
|
|
5521
|
-
import { jsx as jsx17 } from "react/jsx-runtime";
|
|
5522
|
-
var labelVariants = cva4(
|
|
5523
|
-
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-label"
|
|
5524
|
-
);
|
|
5525
|
-
var Label3 = React41.forwardRef((_a, ref) => {
|
|
5526
|
-
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5527
|
-
return /* @__PURE__ */ jsx17(
|
|
5528
|
-
LabelPrimitive.Root,
|
|
5529
|
-
__spreadValues({
|
|
5530
|
-
ref,
|
|
5531
|
-
className: cn(labelVariants(), className)
|
|
5532
|
-
}, props)
|
|
5533
|
-
);
|
|
5534
|
-
});
|
|
5535
|
-
Label3.displayName = LabelPrimitive.Root.displayName;
|
|
5536
|
-
|
|
5537
|
-
// src/components/Form/form-field.tsx
|
|
5538
5516
|
import { Slot as Slot3 } from "@radix-ui/react-slot";
|
|
5517
|
+
import { Asterisk } from "lucide-react";
|
|
5539
5518
|
|
|
5540
5519
|
// src/components/input.tsx
|
|
5541
|
-
import * as
|
|
5542
|
-
import {
|
|
5543
|
-
|
|
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(
|
|
5544
5524
|
(_a, ref) => {
|
|
5545
|
-
var _b = _a, {
|
|
5546
|
-
|
|
5547
|
-
"
|
|
5548
|
-
|
|
5549
|
-
|
|
5550
|
-
|
|
5551
|
-
|
|
5552
|
-
|
|
5553
|
-
|
|
5554
|
-
|
|
5555
|
-
|
|
5556
|
-
|
|
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 variants2 = {
|
|
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
|
+
variants2[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
|
+
] });
|
|
5557
5609
|
}
|
|
5558
5610
|
);
|
|
5559
5611
|
Input.displayName = "Input";
|
|
5612
|
+
Input.displayName = "Input";
|
|
5560
5613
|
|
|
5561
5614
|
// src/components/Form/form-field.tsx
|
|
5562
|
-
import {
|
|
5563
|
-
|
|
5564
|
-
|
|
5615
|
+
import { jsx as jsx18, jsxs as jsxs11 } from "react/jsx-runtime";
|
|
5616
|
+
var inputVariants = {
|
|
5617
|
+
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",
|
|
5618
|
+
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",
|
|
5619
|
+
ghost: "rounded-md border border-transparent bg-transparent hover:bg-muted/50 focus:ring-2 focus:ring-ring",
|
|
5620
|
+
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",
|
|
5621
|
+
// sin bordes laterales/superior, solo inferior; sin sombras ni radios
|
|
5622
|
+
flushed: "rounded-none border-0 border-b border-input px-0 shadow-none focus:border-b-2 focus:border-primary focus:ring-0",
|
|
5623
|
+
// sin estilos, útil para inputs embebidos o controles muy custom
|
|
5624
|
+
unstyled: "border-0 shadow-none focus:ring-0",
|
|
5625
|
+
// aspecto tipo enlace: inline height-auto, sin paddings ni borde
|
|
5626
|
+
link: "border-0 p-0 h-auto shadow-none bg-transparent text-primary underline-offset-4 focus:underline focus:ring-0"
|
|
5627
|
+
};
|
|
5628
|
+
var variants = inputVariants;
|
|
5629
|
+
var FormFieldContext = React42.createContext(
|
|
5565
5630
|
null
|
|
5566
5631
|
);
|
|
5567
5632
|
var FormField = (_a) => {
|
|
@@ -5571,11 +5636,13 @@ var FormField = (_a) => {
|
|
|
5571
5636
|
label,
|
|
5572
5637
|
placeholder,
|
|
5573
5638
|
requiredLabel,
|
|
5574
|
-
className
|
|
5639
|
+
className,
|
|
5575
5640
|
classNameDefault,
|
|
5576
5641
|
labelClassName,
|
|
5577
5642
|
messageClassName,
|
|
5578
5643
|
requiredLabelClassName,
|
|
5644
|
+
variant = "outline",
|
|
5645
|
+
size = "md",
|
|
5579
5646
|
rules,
|
|
5580
5647
|
shouldUnregister,
|
|
5581
5648
|
defaultValue,
|
|
@@ -5591,6 +5658,8 @@ var FormField = (_a) => {
|
|
|
5591
5658
|
"labelClassName",
|
|
5592
5659
|
"messageClassName",
|
|
5593
5660
|
"requiredLabelClassName",
|
|
5661
|
+
"variant",
|
|
5662
|
+
"size",
|
|
5594
5663
|
"rules",
|
|
5595
5664
|
"shouldUnregister",
|
|
5596
5665
|
"defaultValue",
|
|
@@ -5601,7 +5670,7 @@ var FormField = (_a) => {
|
|
|
5601
5670
|
formState: { errors }
|
|
5602
5671
|
} = useFormContext();
|
|
5603
5672
|
const fieldError = (_a2 = errors[name]) == null ? void 0 : _a2.message;
|
|
5604
|
-
return /* @__PURE__ */
|
|
5673
|
+
return /* @__PURE__ */ jsx18(FormFieldContext.Provider, { value: { name }, children: /* @__PURE__ */ jsx18(
|
|
5605
5674
|
Controller,
|
|
5606
5675
|
{
|
|
5607
5676
|
control,
|
|
@@ -5609,20 +5678,29 @@ var FormField = (_a) => {
|
|
|
5609
5678
|
rules,
|
|
5610
5679
|
shouldUnregister,
|
|
5611
5680
|
defaultValue,
|
|
5612
|
-
render: ({ field }) => /* @__PURE__ */
|
|
5613
|
-
label && /* @__PURE__ */
|
|
5614
|
-
|
|
5615
|
-
|
|
5616
|
-
|
|
5617
|
-
|
|
5618
|
-
|
|
5619
|
-
|
|
5620
|
-
|
|
5681
|
+
render: ({ field }) => /* @__PURE__ */ jsxs11(FormItem, { children: [
|
|
5682
|
+
label && /* @__PURE__ */ jsxs11(
|
|
5683
|
+
FormLabel,
|
|
5684
|
+
{
|
|
5685
|
+
className: cn(
|
|
5686
|
+
"flex items-center gap-0 self-center",
|
|
5687
|
+
labelClassName
|
|
5688
|
+
),
|
|
5689
|
+
children: [
|
|
5690
|
+
label,
|
|
5691
|
+
requiredLabel && /* @__PURE__ */ jsx18(
|
|
5692
|
+
Asterisk,
|
|
5693
|
+
{
|
|
5694
|
+
className: cn(
|
|
5695
|
+
"ml-[1px] h-3 w-3 text-red-500",
|
|
5696
|
+
requiredLabelClassName
|
|
5697
|
+
)
|
|
5698
|
+
}
|
|
5621
5699
|
)
|
|
5622
|
-
|
|
5623
|
-
|
|
5624
|
-
|
|
5625
|
-
/* @__PURE__ */
|
|
5700
|
+
]
|
|
5701
|
+
}
|
|
5702
|
+
),
|
|
5703
|
+
/* @__PURE__ */ jsx18(FormControl, { children: /* @__PURE__ */ jsx18(
|
|
5626
5704
|
Input,
|
|
5627
5705
|
__spreadProps(__spreadValues(__spreadValues({}, field), inputProps), {
|
|
5628
5706
|
onChange: (e) => {
|
|
@@ -5630,45 +5708,42 @@ var FormField = (_a) => {
|
|
|
5630
5708
|
onChange == null ? void 0 : onChange(e.target.value);
|
|
5631
5709
|
},
|
|
5632
5710
|
placeholder,
|
|
5633
|
-
className,
|
|
5711
|
+
className: cn("bg-input px-[0.9rem] py-5", className),
|
|
5634
5712
|
classNameDefault: classNameDefault != null ? classNameDefault : true
|
|
5635
5713
|
})
|
|
5636
5714
|
) }),
|
|
5637
|
-
fieldError && /* @__PURE__ */
|
|
5715
|
+
fieldError && /* @__PURE__ */ jsx18(FormMessage, { className: messageClassName, children: fieldError })
|
|
5638
5716
|
] })
|
|
5639
5717
|
}
|
|
5640
5718
|
) });
|
|
5641
5719
|
};
|
|
5642
|
-
var FormItemContext =
|
|
5720
|
+
var FormItemContext = React42.createContext(
|
|
5643
5721
|
{}
|
|
5644
5722
|
);
|
|
5645
|
-
var FormItem =
|
|
5723
|
+
var FormItem = React42.forwardRef((_a, ref) => {
|
|
5646
5724
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5647
|
-
const id =
|
|
5648
|
-
return /* @__PURE__ */
|
|
5725
|
+
const id = React42.useId();
|
|
5726
|
+
return /* @__PURE__ */ jsx18(FormItemContext.Provider, { value: { id }, children: /* @__PURE__ */ jsx18("div", __spreadValues({ ref, className: cn("space-y-2", className) }, props)) });
|
|
5649
5727
|
});
|
|
5650
5728
|
FormItem.displayName = "FormItem";
|
|
5651
|
-
var FormLabel = React43.forwardRef((_a, ref) => {
|
|
5652
|
-
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5653
|
-
const { error, formItemId } = useFormField();
|
|
5654
|
-
return /* @__PURE__ */ jsx19(
|
|
5655
|
-
Label3,
|
|
5656
|
-
__spreadValues({
|
|
5657
|
-
ref,
|
|
5658
|
-
className: cn(error && "text-destructive", className),
|
|
5659
|
-
htmlFor: formItemId
|
|
5660
|
-
}, props)
|
|
5661
|
-
);
|
|
5662
|
-
});
|
|
5663
|
-
FormLabel.displayName = "FormLabel";
|
|
5664
5729
|
var useFormField = () => {
|
|
5665
|
-
const fieldContext =
|
|
5666
|
-
const itemContext =
|
|
5730
|
+
const fieldContext = React42.useContext(FormFieldContext);
|
|
5731
|
+
const itemContext = React42.useContext(FormItemContext);
|
|
5667
5732
|
const { getFieldState, formState } = useFormContext();
|
|
5733
|
+
if (!(itemContext == null ? void 0 : itemContext.id)) {
|
|
5734
|
+
const id2 = React42.useId();
|
|
5735
|
+
return {
|
|
5736
|
+
id: id2,
|
|
5737
|
+
formItemId: `${id2}-form-item`,
|
|
5738
|
+
formDescriptionId: `${id2}-form-item-description`,
|
|
5739
|
+
formMessageId: `${id2}-form-item-message`,
|
|
5740
|
+
error: null
|
|
5741
|
+
};
|
|
5742
|
+
}
|
|
5668
5743
|
if (!fieldContext) {
|
|
5669
5744
|
const { id: id2 } = itemContext;
|
|
5670
5745
|
return {
|
|
5671
|
-
id:
|
|
5746
|
+
id: id2,
|
|
5672
5747
|
formItemId: `${id2}-form-item`,
|
|
5673
5748
|
formDescriptionId: `${id2}-form-item-description`,
|
|
5674
5749
|
formMessageId: `${id2}-form-item-message`,
|
|
@@ -5676,9 +5751,6 @@ var useFormField = () => {
|
|
|
5676
5751
|
};
|
|
5677
5752
|
}
|
|
5678
5753
|
const fieldState = getFieldState(fieldContext.name, formState);
|
|
5679
|
-
if (!fieldContext) {
|
|
5680
|
-
throw new Error("useFormField should be used within <FormField>");
|
|
5681
|
-
}
|
|
5682
5754
|
const { id } = itemContext;
|
|
5683
5755
|
return __spreadValues({
|
|
5684
5756
|
id,
|
|
@@ -5688,10 +5760,23 @@ var useFormField = () => {
|
|
|
5688
5760
|
formMessageId: `${id}-form-item-message`
|
|
5689
5761
|
}, fieldState);
|
|
5690
5762
|
};
|
|
5691
|
-
var
|
|
5763
|
+
var FormLabel = React42.forwardRef((_a, ref) => {
|
|
5764
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5765
|
+
const { error, formItemId } = useFormField();
|
|
5766
|
+
return /* @__PURE__ */ jsx18(
|
|
5767
|
+
Label3,
|
|
5768
|
+
__spreadValues({
|
|
5769
|
+
ref,
|
|
5770
|
+
className: cn(error && "text-destructive", className),
|
|
5771
|
+
htmlFor: formItemId
|
|
5772
|
+
}, props)
|
|
5773
|
+
);
|
|
5774
|
+
});
|
|
5775
|
+
FormLabel.displayName = "FormLabel";
|
|
5776
|
+
var FormControl = React42.forwardRef((_a, ref) => {
|
|
5692
5777
|
var props = __objRest(_a, []);
|
|
5693
5778
|
const { error, formItemId, formDescriptionId, formMessageId } = useFormField();
|
|
5694
|
-
return /* @__PURE__ */
|
|
5779
|
+
return /* @__PURE__ */ jsx18(
|
|
5695
5780
|
Slot3,
|
|
5696
5781
|
__spreadValues({
|
|
5697
5782
|
ref,
|
|
@@ -5702,48 +5787,209 @@ var FormControl = React43.forwardRef((_a, ref) => {
|
|
|
5702
5787
|
);
|
|
5703
5788
|
});
|
|
5704
5789
|
FormControl.displayName = "FormControl";
|
|
5705
|
-
var FormDescription =
|
|
5790
|
+
var FormDescription = React42.forwardRef((_a, ref) => {
|
|
5706
5791
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5707
5792
|
const { formDescriptionId } = useFormField();
|
|
5708
|
-
return /* @__PURE__ */
|
|
5793
|
+
return /* @__PURE__ */ jsx18(
|
|
5709
5794
|
"p",
|
|
5710
5795
|
__spreadValues({
|
|
5711
5796
|
ref,
|
|
5712
5797
|
id: formDescriptionId,
|
|
5713
|
-
className: cn("text-[0.8rem]
|
|
5798
|
+
className: cn("text-muted-foreground text-[0.8rem]", className)
|
|
5714
5799
|
}, props)
|
|
5715
5800
|
);
|
|
5716
5801
|
});
|
|
5717
5802
|
FormDescription.displayName = "FormDescription";
|
|
5718
|
-
var FormMessage =
|
|
5803
|
+
var FormMessage = React42.forwardRef((_a, ref) => {
|
|
5719
5804
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
5720
5805
|
const { error, formMessageId } = useFormField();
|
|
5721
|
-
const body = error ?
|
|
5722
|
-
if (!body)
|
|
5723
|
-
|
|
5724
|
-
}
|
|
5725
|
-
return /* @__PURE__ */ jsx19(
|
|
5806
|
+
const body = error ? error == null ? void 0 : error.message : children;
|
|
5807
|
+
if (!body) return null;
|
|
5808
|
+
return /* @__PURE__ */ jsx18(
|
|
5726
5809
|
"p",
|
|
5727
5810
|
__spreadProps(__spreadValues({
|
|
5728
5811
|
ref,
|
|
5729
5812
|
id: formMessageId,
|
|
5730
|
-
className: cn("text-[0.8rem] font-medium
|
|
5813
|
+
className: cn("text-destructive text-[0.8rem] font-medium", className)
|
|
5731
5814
|
}, props), {
|
|
5732
5815
|
children: body
|
|
5733
5816
|
})
|
|
5734
5817
|
);
|
|
5735
5818
|
});
|
|
5736
5819
|
FormMessage.displayName = "FormMessage";
|
|
5820
|
+
var FormSelect = ({
|
|
5821
|
+
name,
|
|
5822
|
+
control,
|
|
5823
|
+
rules,
|
|
5824
|
+
shouldUnregister,
|
|
5825
|
+
defaultValue,
|
|
5826
|
+
placeholder,
|
|
5827
|
+
label,
|
|
5828
|
+
requiredLabel,
|
|
5829
|
+
className,
|
|
5830
|
+
contentClassName,
|
|
5831
|
+
labelClassName,
|
|
5832
|
+
messageClassName,
|
|
5833
|
+
requiredLabelClassName,
|
|
5834
|
+
items,
|
|
5835
|
+
children,
|
|
5836
|
+
onChange,
|
|
5837
|
+
disabled,
|
|
5838
|
+
size = "md",
|
|
5839
|
+
variant = "outline",
|
|
5840
|
+
invalid,
|
|
5841
|
+
searchable = false,
|
|
5842
|
+
searchPlaceholder = "Buscar\u2026"
|
|
5843
|
+
}) => {
|
|
5844
|
+
var _a;
|
|
5845
|
+
const {
|
|
5846
|
+
formState: { errors }
|
|
5847
|
+
} = useFormContext();
|
|
5848
|
+
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";
|
|
5849
|
+
const sizeTrigger = {
|
|
5850
|
+
sm: "h-9 px-3 text-sm",
|
|
5851
|
+
md: "h-11 px-4 text-sm",
|
|
5852
|
+
lg: "h-12 px-5 text-base"
|
|
5853
|
+
};
|
|
5854
|
+
const errorCls = invalid ? "ring-destructive focus:ring-destructive/40 border-destructive" : "";
|
|
5855
|
+
const specialFlushed = variant === "flushed" ? size === "sm" ? "h-9 text-sm" : size === "lg" ? "h-12 text-base" : "h-11 text-sm" : "";
|
|
5856
|
+
const specialLink = variant === "link" ? "text-sm" : "";
|
|
5857
|
+
const contentBase = "bg-popover text-popover-foreground border border-border rounded-md shadow-md";
|
|
5858
|
+
const itemSize = {
|
|
5859
|
+
sm: "h-8 text-sm",
|
|
5860
|
+
md: "h-9 text-sm",
|
|
5861
|
+
lg: "h-10 text-base"
|
|
5862
|
+
};
|
|
5863
|
+
const fieldError = (_a = errors[name]) == null ? void 0 : _a.message;
|
|
5864
|
+
const [query, setQuery] = React42.useState("");
|
|
5865
|
+
const getOptionText = React42.useCallback((opt) => {
|
|
5866
|
+
var _a2;
|
|
5867
|
+
if (typeof opt.label === "string") return opt.label.toLowerCase();
|
|
5868
|
+
const extra = typeof ((_a2 = opt == null ? void 0 : opt.data) == null ? void 0 : _a2.search) === "string" ? opt.data.search.toLowerCase() : "";
|
|
5869
|
+
return `${opt.value}${extra}`.toLowerCase();
|
|
5870
|
+
}, []);
|
|
5871
|
+
const searchRef = React42.useRef(null);
|
|
5872
|
+
const filteredItems = React42.useMemo(() => {
|
|
5873
|
+
if (!items) return items;
|
|
5874
|
+
if (!searchable || !query.trim()) return items;
|
|
5875
|
+
const q = query.trim().toLowerCase();
|
|
5876
|
+
return items.filter((opt) => getOptionText(opt).includes(q));
|
|
5877
|
+
}, [items, searchable, query, getOptionText]);
|
|
5878
|
+
return /* @__PURE__ */ jsx18(FormFieldContext.Provider, { value: { name }, children: /* @__PURE__ */ jsx18(
|
|
5879
|
+
Controller,
|
|
5880
|
+
{
|
|
5881
|
+
control,
|
|
5882
|
+
name,
|
|
5883
|
+
rules,
|
|
5884
|
+
shouldUnregister,
|
|
5885
|
+
defaultValue,
|
|
5886
|
+
render: ({ field }) => {
|
|
5887
|
+
var _a2, _b, _c;
|
|
5888
|
+
return /* @__PURE__ */ jsxs11(FormItem, { children: [
|
|
5889
|
+
label && /* @__PURE__ */ jsxs11(
|
|
5890
|
+
FormLabel,
|
|
5891
|
+
{
|
|
5892
|
+
className: cn("flex items-center gap-0", labelClassName),
|
|
5893
|
+
children: [
|
|
5894
|
+
label,
|
|
5895
|
+
requiredLabel && /* @__PURE__ */ jsx18(
|
|
5896
|
+
Asterisk,
|
|
5897
|
+
{
|
|
5898
|
+
className: cn(
|
|
5899
|
+
"ml-[4px] h-3 w-3 text-red-500",
|
|
5900
|
+
requiredLabelClassName
|
|
5901
|
+
)
|
|
5902
|
+
}
|
|
5903
|
+
)
|
|
5904
|
+
]
|
|
5905
|
+
}
|
|
5906
|
+
),
|
|
5907
|
+
/* @__PURE__ */ jsxs11(
|
|
5908
|
+
Select2,
|
|
5909
|
+
{
|
|
5910
|
+
value: (_a2 = field.value) != null ? _a2 : "",
|
|
5911
|
+
onValueChange: (v) => {
|
|
5912
|
+
field.onChange(v);
|
|
5913
|
+
onChange == null ? void 0 : onChange(v);
|
|
5914
|
+
},
|
|
5915
|
+
disabled,
|
|
5916
|
+
children: [
|
|
5917
|
+
/* @__PURE__ */ jsx18(FormControl, { children: /* @__PURE__ */ jsx18(
|
|
5918
|
+
SelectTrigger,
|
|
5919
|
+
{
|
|
5920
|
+
className: cn(
|
|
5921
|
+
triggerBase,
|
|
5922
|
+
variants[variant],
|
|
5923
|
+
variant === "flushed" ? specialFlushed : variant === "link" ? specialLink : sizeTrigger[size],
|
|
5924
|
+
errorCls,
|
|
5925
|
+
className
|
|
5926
|
+
),
|
|
5927
|
+
children: /* @__PURE__ */ jsx18(SelectValue, { placeholder })
|
|
5928
|
+
}
|
|
5929
|
+
) }),
|
|
5930
|
+
/* @__PURE__ */ jsxs11(
|
|
5931
|
+
SelectContent,
|
|
5932
|
+
{
|
|
5933
|
+
className: cn(contentBase, contentClassName),
|
|
5934
|
+
onCloseAutoFocus: (e) => {
|
|
5935
|
+
e.preventDefault();
|
|
5936
|
+
requestAnimationFrame(() => {
|
|
5937
|
+
var _a3;
|
|
5938
|
+
return (_a3 = searchRef.current) == null ? void 0 : _a3.focus();
|
|
5939
|
+
});
|
|
5940
|
+
},
|
|
5941
|
+
children: [
|
|
5942
|
+
searchable && ((_b = items == null ? void 0 : items.length) != null ? _b : 0) > 0 && /* @__PURE__ */ jsx18("div", { className: "border-border bg-popover sticky top-0 border-b p-2", children: /* @__PURE__ */ jsx18(
|
|
5943
|
+
"input",
|
|
5944
|
+
{
|
|
5945
|
+
ref: searchRef,
|
|
5946
|
+
autoFocus: true,
|
|
5947
|
+
value: query,
|
|
5948
|
+
onChange: (e) => setQuery(e.target.value),
|
|
5949
|
+
placeholder: searchPlaceholder,
|
|
5950
|
+
className: cn(
|
|
5951
|
+
"border-input bg-input focus:ring-primary/20 w-full rounded-md border px-3 py-2 text-sm outline-none focus:ring-2"
|
|
5952
|
+
),
|
|
5953
|
+
onKeyDown: (e) => {
|
|
5954
|
+
if (e.key !== "Escape") e.stopPropagation();
|
|
5955
|
+
},
|
|
5956
|
+
onPointerDown: (e) => e.stopPropagation(),
|
|
5957
|
+
onClick: (e) => e.stopPropagation()
|
|
5958
|
+
}
|
|
5959
|
+
) }),
|
|
5960
|
+
children && !searchable ? children : (_c = filteredItems != null ? filteredItems : items) == null ? void 0 : _c.map((opt) => /* @__PURE__ */ jsx18(
|
|
5961
|
+
SelectItem,
|
|
5962
|
+
{
|
|
5963
|
+
value: opt.value,
|
|
5964
|
+
disabled: opt.disabled,
|
|
5965
|
+
className: cn(itemSize[size]),
|
|
5966
|
+
children: opt.label
|
|
5967
|
+
},
|
|
5968
|
+
opt.value
|
|
5969
|
+
))
|
|
5970
|
+
]
|
|
5971
|
+
}
|
|
5972
|
+
)
|
|
5973
|
+
]
|
|
5974
|
+
}
|
|
5975
|
+
),
|
|
5976
|
+
fieldError && /* @__PURE__ */ jsx18(FormMessage, { className: messageClassName, children: fieldError })
|
|
5977
|
+
] });
|
|
5978
|
+
}
|
|
5979
|
+
}
|
|
5980
|
+
) });
|
|
5981
|
+
};
|
|
5982
|
+
FormSelect.displayName = "FormSelect";
|
|
5737
5983
|
|
|
5738
5984
|
// src/components/hover-card.tsx
|
|
5739
5985
|
import * as HoverCardPrimitive from "@radix-ui/react-hover-card";
|
|
5740
|
-
import * as
|
|
5741
|
-
import { jsx as
|
|
5986
|
+
import * as React43 from "react";
|
|
5987
|
+
import { jsx as jsx19 } from "react/jsx-runtime";
|
|
5742
5988
|
var HoverCard = HoverCardPrimitive.Root;
|
|
5743
5989
|
var HoverCardTrigger = HoverCardPrimitive.Trigger;
|
|
5744
|
-
var HoverCardContent =
|
|
5990
|
+
var HoverCardContent = React43.forwardRef((_a, ref) => {
|
|
5745
5991
|
var _b = _a, { className, align = "center", sideOffset = 4 } = _b, props = __objRest(_b, ["className", "align", "sideOffset"]);
|
|
5746
|
-
return /* @__PURE__ */
|
|
5992
|
+
return /* @__PURE__ */ jsx19(
|
|
5747
5993
|
HoverCardPrimitive.Content,
|
|
5748
5994
|
__spreadValues({
|
|
5749
5995
|
ref,
|
|
@@ -5822,11 +6068,11 @@ var Icons = IconsApp;
|
|
|
5822
6068
|
// src/components/input-otp.tsx
|
|
5823
6069
|
import { DashIcon } from "@radix-ui/react-icons";
|
|
5824
6070
|
import { OTPInput, OTPInputContext } from "input-otp";
|
|
5825
|
-
import * as
|
|
5826
|
-
import { jsx as
|
|
5827
|
-
var InputOTP =
|
|
6071
|
+
import * as React44 from "react";
|
|
6072
|
+
import { jsx as jsx20, jsxs as jsxs12 } from "react/jsx-runtime";
|
|
6073
|
+
var InputOTP = React44.forwardRef((_a, ref) => {
|
|
5828
6074
|
var _b = _a, { className, containerClassName } = _b, props = __objRest(_b, ["className", "containerClassName"]);
|
|
5829
|
-
return /* @__PURE__ */
|
|
6075
|
+
return /* @__PURE__ */ jsx20(
|
|
5830
6076
|
OTPInput,
|
|
5831
6077
|
__spreadValues({
|
|
5832
6078
|
ref,
|
|
@@ -5839,16 +6085,16 @@ var InputOTP = React45.forwardRef((_a, ref) => {
|
|
|
5839
6085
|
);
|
|
5840
6086
|
});
|
|
5841
6087
|
InputOTP.displayName = "InputOTP";
|
|
5842
|
-
var InputOTPGroup =
|
|
6088
|
+
var InputOTPGroup = React44.forwardRef((_a, ref) => {
|
|
5843
6089
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
5844
|
-
return /* @__PURE__ */
|
|
6090
|
+
return /* @__PURE__ */ jsx20("div", __spreadValues({ ref, className: cn("flex items-center", className) }, props));
|
|
5845
6091
|
});
|
|
5846
6092
|
InputOTPGroup.displayName = "InputOTPGroup";
|
|
5847
|
-
var InputOTPSlot =
|
|
6093
|
+
var InputOTPSlot = React44.forwardRef((_a, ref) => {
|
|
5848
6094
|
var _b = _a, { index, className } = _b, props = __objRest(_b, ["index", "className"]);
|
|
5849
|
-
const inputOTPContext =
|
|
6095
|
+
const inputOTPContext = React44.useContext(OTPInputContext);
|
|
5850
6096
|
const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];
|
|
5851
|
-
return /* @__PURE__ */
|
|
6097
|
+
return /* @__PURE__ */ jsxs12(
|
|
5852
6098
|
"div",
|
|
5853
6099
|
__spreadProps(__spreadValues({
|
|
5854
6100
|
ref,
|
|
@@ -5860,18 +6106,38 @@ var InputOTPSlot = React45.forwardRef((_a, ref) => {
|
|
|
5860
6106
|
}, props), {
|
|
5861
6107
|
children: [
|
|
5862
6108
|
char,
|
|
5863
|
-
hasFakeCaret && /* @__PURE__ */
|
|
6109
|
+
hasFakeCaret && /* @__PURE__ */ jsx20("div", { className: "pointer-events-none absolute inset-0 flex items-center justify-center", children: /* @__PURE__ */ jsx20("div", { className: "animate-caret-blink h-4 w-px bg-foreground duration-1000" }) })
|
|
5864
6110
|
]
|
|
5865
6111
|
})
|
|
5866
6112
|
);
|
|
5867
6113
|
});
|
|
5868
6114
|
InputOTPSlot.displayName = "InputOTPSlot";
|
|
5869
|
-
var InputOTPSeparator =
|
|
6115
|
+
var InputOTPSeparator = React44.forwardRef((_a, ref) => {
|
|
5870
6116
|
var props = __objRest(_a, []);
|
|
5871
|
-
return /* @__PURE__ */
|
|
6117
|
+
return /* @__PURE__ */ jsx20("div", __spreadProps(__spreadValues({ ref, role: "separator" }, props), { children: /* @__PURE__ */ jsx20(DashIcon, {}) }));
|
|
5872
6118
|
});
|
|
5873
6119
|
InputOTPSeparator.displayName = "InputOTPSeparator";
|
|
5874
6120
|
|
|
6121
|
+
// src/components/Label/label.tsx
|
|
6122
|
+
import * as LabelPrimitive from "@radix-ui/react-label";
|
|
6123
|
+
import { cva as cva4 } from "class-variance-authority";
|
|
6124
|
+
import * as React45 from "react";
|
|
6125
|
+
import { jsx as jsx21 } from "react/jsx-runtime";
|
|
6126
|
+
var labelVariants = cva4(
|
|
6127
|
+
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70 text-label"
|
|
6128
|
+
);
|
|
6129
|
+
var Label3 = React45.forwardRef((_a, ref) => {
|
|
6130
|
+
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6131
|
+
return /* @__PURE__ */ jsx21(
|
|
6132
|
+
LabelPrimitive.Root,
|
|
6133
|
+
__spreadValues({
|
|
6134
|
+
ref,
|
|
6135
|
+
className: cn(labelVariants(), className)
|
|
6136
|
+
}, props)
|
|
6137
|
+
);
|
|
6138
|
+
});
|
|
6139
|
+
Label3.displayName = LabelPrimitive.Root.displayName;
|
|
6140
|
+
|
|
5875
6141
|
// src/components/menubar.tsx
|
|
5876
6142
|
import {
|
|
5877
6143
|
CheckIcon as CheckIcon4,
|
|
@@ -5880,7 +6146,7 @@ import {
|
|
|
5880
6146
|
} from "@radix-ui/react-icons";
|
|
5881
6147
|
import * as MenubarPrimitive from "@radix-ui/react-menubar";
|
|
5882
6148
|
import * as React46 from "react";
|
|
5883
|
-
import { jsx as jsx22, jsxs as
|
|
6149
|
+
import { jsx as jsx22, jsxs as jsxs13 } from "react/jsx-runtime";
|
|
5884
6150
|
var MenubarMenu = MenubarPrimitive.Menu;
|
|
5885
6151
|
var MenubarGroup = MenubarPrimitive.Group;
|
|
5886
6152
|
var MenubarPortal = MenubarPrimitive.Portal;
|
|
@@ -5916,7 +6182,7 @@ var MenubarTrigger = React46.forwardRef((_a, ref) => {
|
|
|
5916
6182
|
MenubarTrigger.displayName = MenubarPrimitive.Trigger.displayName;
|
|
5917
6183
|
var MenubarSubTrigger = React46.forwardRef((_a, ref) => {
|
|
5918
6184
|
var _b = _a, { className, inset, children } = _b, props = __objRest(_b, ["className", "inset", "children"]);
|
|
5919
|
-
return /* @__PURE__ */
|
|
6185
|
+
return /* @__PURE__ */ jsxs13(
|
|
5920
6186
|
MenubarPrimitive.SubTrigger,
|
|
5921
6187
|
__spreadProps(__spreadValues({
|
|
5922
6188
|
ref,
|
|
@@ -5984,7 +6250,7 @@ var MenubarItem = React46.forwardRef((_a, ref) => {
|
|
|
5984
6250
|
MenubarItem.displayName = MenubarPrimitive.Item.displayName;
|
|
5985
6251
|
var MenubarCheckboxItem = React46.forwardRef((_a, ref) => {
|
|
5986
6252
|
var _b = _a, { className, children, checked } = _b, props = __objRest(_b, ["className", "children", "checked"]);
|
|
5987
|
-
return /* @__PURE__ */
|
|
6253
|
+
return /* @__PURE__ */ jsxs13(
|
|
5988
6254
|
MenubarPrimitive.CheckboxItem,
|
|
5989
6255
|
__spreadProps(__spreadValues({
|
|
5990
6256
|
ref,
|
|
@@ -6004,7 +6270,7 @@ var MenubarCheckboxItem = React46.forwardRef((_a, ref) => {
|
|
|
6004
6270
|
MenubarCheckboxItem.displayName = MenubarPrimitive.CheckboxItem.displayName;
|
|
6005
6271
|
var MenubarRadioItem = React46.forwardRef((_a, ref) => {
|
|
6006
6272
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6007
|
-
return /* @__PURE__ */
|
|
6273
|
+
return /* @__PURE__ */ jsxs13(
|
|
6008
6274
|
MenubarPrimitive.RadioItem,
|
|
6009
6275
|
__spreadProps(__spreadValues({
|
|
6010
6276
|
ref,
|
|
@@ -6066,7 +6332,7 @@ var MenubarShortcut = (_a) => {
|
|
|
6066
6332
|
MenubarShortcut.displayname = "MenubarShortcut";
|
|
6067
6333
|
|
|
6068
6334
|
// src/components/modal.tsx
|
|
6069
|
-
import { jsx as jsx23, jsxs as
|
|
6335
|
+
import { jsx as jsx23, jsxs as jsxs14 } from "react/jsx-runtime";
|
|
6070
6336
|
var Modal = ({
|
|
6071
6337
|
title,
|
|
6072
6338
|
description,
|
|
@@ -6080,8 +6346,8 @@ var Modal = ({
|
|
|
6080
6346
|
onClose();
|
|
6081
6347
|
}
|
|
6082
6348
|
};
|
|
6083
|
-
return /* @__PURE__ */ jsx23(Dialog, { open: isOpen, onOpenChange: onChange, children: /* @__PURE__ */
|
|
6084
|
-
/* @__PURE__ */
|
|
6349
|
+
return /* @__PURE__ */ jsx23(Dialog, { open: isOpen, onOpenChange: onChange, children: /* @__PURE__ */ jsxs14(DialogContent, { className, children: [
|
|
6350
|
+
/* @__PURE__ */ jsxs14(DialogHeader, { children: [
|
|
6085
6351
|
/* @__PURE__ */ jsx23(DialogTitle, { children: title }),
|
|
6086
6352
|
/* @__PURE__ */ jsx23(DialogDescription, { children: description })
|
|
6087
6353
|
] }),
|
|
@@ -6094,10 +6360,10 @@ import { ChevronDownIcon as ChevronDownIcon2 } from "@radix-ui/react-icons";
|
|
|
6094
6360
|
import * as NavigationMenuPrimitive from "@radix-ui/react-navigation-menu";
|
|
6095
6361
|
import { cva as cva5 } from "class-variance-authority";
|
|
6096
6362
|
import * as React47 from "react";
|
|
6097
|
-
import { jsx as jsx24, jsxs as
|
|
6363
|
+
import { jsx as jsx24, jsxs as jsxs15 } from "react/jsx-runtime";
|
|
6098
6364
|
var NavigationMenu = React47.forwardRef((_a, ref) => {
|
|
6099
6365
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6100
|
-
return /* @__PURE__ */
|
|
6366
|
+
return /* @__PURE__ */ jsxs15(
|
|
6101
6367
|
NavigationMenuPrimitive.Root,
|
|
6102
6368
|
__spreadProps(__spreadValues({
|
|
6103
6369
|
ref,
|
|
@@ -6134,7 +6400,7 @@ var navigationMenuTriggerStyle = cva5(
|
|
|
6134
6400
|
);
|
|
6135
6401
|
var NavigationMenuTrigger = React47.forwardRef((_a, ref) => {
|
|
6136
6402
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6137
|
-
return /* @__PURE__ */
|
|
6403
|
+
return /* @__PURE__ */ jsxs15(
|
|
6138
6404
|
NavigationMenuPrimitive.Trigger,
|
|
6139
6405
|
__spreadProps(__spreadValues({
|
|
6140
6406
|
ref,
|
|
@@ -6209,7 +6475,7 @@ import {
|
|
|
6209
6475
|
} from "@radix-ui/react-icons";
|
|
6210
6476
|
import * as React48 from "react";
|
|
6211
6477
|
import { ChevronLeft as ChevronLeft2, ChevronRight as ChevronRight2 } from "lucide-react";
|
|
6212
|
-
import { jsx as jsx25, jsxs as
|
|
6478
|
+
import { jsx as jsx25, jsxs as jsxs16 } from "react/jsx-runtime";
|
|
6213
6479
|
var Pagination = (_a) => {
|
|
6214
6480
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6215
6481
|
return /* @__PURE__ */ jsx25(
|
|
@@ -6269,7 +6535,7 @@ var PaginationPreviousLast = (_a) => {
|
|
|
6269
6535
|
} = _b, props = __objRest(_b, [
|
|
6270
6536
|
"className"
|
|
6271
6537
|
]);
|
|
6272
|
-
return /* @__PURE__ */
|
|
6538
|
+
return /* @__PURE__ */ jsxs16(
|
|
6273
6539
|
PaginationLink,
|
|
6274
6540
|
__spreadProps(__spreadValues({
|
|
6275
6541
|
"aria-label": "Go to previous page",
|
|
@@ -6290,7 +6556,7 @@ var PaginationPrevious = (_a) => {
|
|
|
6290
6556
|
} = _b, props = __objRest(_b, [
|
|
6291
6557
|
"className"
|
|
6292
6558
|
]);
|
|
6293
|
-
return /* @__PURE__ */
|
|
6559
|
+
return /* @__PURE__ */ jsxs16(
|
|
6294
6560
|
PaginationLink,
|
|
6295
6561
|
__spreadProps(__spreadValues({
|
|
6296
6562
|
"aria-label": "Go to previous page",
|
|
@@ -6311,7 +6577,7 @@ var PaginationNext = (_a) => {
|
|
|
6311
6577
|
} = _b, props = __objRest(_b, [
|
|
6312
6578
|
"className"
|
|
6313
6579
|
]);
|
|
6314
|
-
return /* @__PURE__ */
|
|
6580
|
+
return /* @__PURE__ */ jsxs16(
|
|
6315
6581
|
PaginationLink,
|
|
6316
6582
|
__spreadProps(__spreadValues({
|
|
6317
6583
|
"aria-label": "Go to next page",
|
|
@@ -6332,7 +6598,7 @@ var PaginationNextLast = (_a) => {
|
|
|
6332
6598
|
} = _b, props = __objRest(_b, [
|
|
6333
6599
|
"className"
|
|
6334
6600
|
]);
|
|
6335
|
-
return /* @__PURE__ */
|
|
6601
|
+
return /* @__PURE__ */ jsxs16(
|
|
6336
6602
|
PaginationLink,
|
|
6337
6603
|
__spreadProps(__spreadValues({
|
|
6338
6604
|
"aria-label": "Go to next page",
|
|
@@ -6353,7 +6619,7 @@ var PaginationEllipsis = (_a) => {
|
|
|
6353
6619
|
} = _b, props = __objRest(_b, [
|
|
6354
6620
|
"className"
|
|
6355
6621
|
]);
|
|
6356
|
-
return /* @__PURE__ */
|
|
6622
|
+
return /* @__PURE__ */ jsxs16(
|
|
6357
6623
|
"span",
|
|
6358
6624
|
__spreadProps(__spreadValues({
|
|
6359
6625
|
"aria-hidden": true,
|
|
@@ -6498,10 +6764,10 @@ var ResizableHandle = (_a) => {
|
|
|
6498
6764
|
// src/components/scroll-area.tsx
|
|
6499
6765
|
import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area";
|
|
6500
6766
|
import * as React52 from "react";
|
|
6501
|
-
import { jsx as jsx30, jsxs as
|
|
6767
|
+
import { jsx as jsx30, jsxs as jsxs17 } from "react/jsx-runtime";
|
|
6502
6768
|
var ScrollArea = React52.forwardRef((_a, ref) => {
|
|
6503
6769
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6504
|
-
return /* @__PURE__ */
|
|
6770
|
+
return /* @__PURE__ */ jsxs17(
|
|
6505
6771
|
ScrollAreaPrimitive.Root,
|
|
6506
6772
|
__spreadProps(__spreadValues({
|
|
6507
6773
|
ref,
|
|
@@ -6580,13 +6846,13 @@ import {
|
|
|
6580
6846
|
} from "@radix-ui/react-icons";
|
|
6581
6847
|
import * as SelectPrimitive from "@radix-ui/react-select";
|
|
6582
6848
|
import * as React54 from "react";
|
|
6583
|
-
import { jsx as jsx32, jsxs as
|
|
6849
|
+
import { jsx as jsx32, jsxs as jsxs18 } from "react/jsx-runtime";
|
|
6584
6850
|
var Select2 = SelectPrimitive.Root;
|
|
6585
6851
|
var SelectGroup = SelectPrimitive.Group;
|
|
6586
6852
|
var SelectValue = SelectPrimitive.Value;
|
|
6587
6853
|
var SelectTrigger = React54.forwardRef((_a, ref) => {
|
|
6588
6854
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6589
|
-
return /* @__PURE__ */
|
|
6855
|
+
return /* @__PURE__ */ jsxs18(
|
|
6590
6856
|
SelectPrimitive.Trigger,
|
|
6591
6857
|
__spreadProps(__spreadValues({
|
|
6592
6858
|
ref,
|
|
@@ -6637,7 +6903,7 @@ var SelectScrollDownButton = React54.forwardRef((_a, ref) => {
|
|
|
6637
6903
|
SelectScrollDownButton.displayName = SelectPrimitive.ScrollDownButton.displayName;
|
|
6638
6904
|
var SelectContent = React54.forwardRef((_a, ref) => {
|
|
6639
6905
|
var _b = _a, { className, children, position = "popper" } = _b, props = __objRest(_b, ["className", "children", "position"]);
|
|
6640
|
-
return /* @__PURE__ */ jsx32(SelectPrimitive.Portal, { children: /* @__PURE__ */
|
|
6906
|
+
return /* @__PURE__ */ jsx32(SelectPrimitive.Portal, { children: /* @__PURE__ */ jsxs18(
|
|
6641
6907
|
SelectPrimitive.Content,
|
|
6642
6908
|
__spreadProps(__spreadValues({
|
|
6643
6909
|
ref,
|
|
@@ -6679,7 +6945,7 @@ var SelectLabel = React54.forwardRef((_a, ref) => {
|
|
|
6679
6945
|
SelectLabel.displayName = SelectPrimitive.Label.displayName;
|
|
6680
6946
|
var SelectItem = React54.forwardRef((_a, ref) => {
|
|
6681
6947
|
var _b = _a, { className, children } = _b, props = __objRest(_b, ["className", "children"]);
|
|
6682
|
-
return /* @__PURE__ */
|
|
6948
|
+
return /* @__PURE__ */ jsxs18(
|
|
6683
6949
|
SelectPrimitive.Item,
|
|
6684
6950
|
__spreadProps(__spreadValues({
|
|
6685
6951
|
ref,
|
|
@@ -6737,7 +7003,7 @@ import * as SheetPrimitive from "@radix-ui/react-dialog";
|
|
|
6737
7003
|
import { Cross2Icon as Cross2Icon2 } from "@radix-ui/react-icons";
|
|
6738
7004
|
import { cva as cva6 } from "class-variance-authority";
|
|
6739
7005
|
import * as React56 from "react";
|
|
6740
|
-
import { jsx as jsx34, jsxs as
|
|
7006
|
+
import { jsx as jsx34, jsxs as jsxs19 } from "react/jsx-runtime";
|
|
6741
7007
|
var Sheet = SheetPrimitive.Root;
|
|
6742
7008
|
var SheetTrigger = SheetPrimitive.Trigger;
|
|
6743
7009
|
var SheetClose = SheetPrimitive.Close;
|
|
@@ -6775,9 +7041,9 @@ var sheetVariants = cva6(
|
|
|
6775
7041
|
);
|
|
6776
7042
|
var SheetContent = React56.forwardRef((_a, ref) => {
|
|
6777
7043
|
var _b = _a, { side = "right", className, children } = _b, props = __objRest(_b, ["side", "className", "children"]);
|
|
6778
|
-
return /* @__PURE__ */
|
|
7044
|
+
return /* @__PURE__ */ jsxs19(SheetPortal, { children: [
|
|
6779
7045
|
/* @__PURE__ */ jsx34(SheetOverlay, {}),
|
|
6780
|
-
/* @__PURE__ */
|
|
7046
|
+
/* @__PURE__ */ jsxs19(
|
|
6781
7047
|
SheetPrimitive.Content,
|
|
6782
7048
|
__spreadProps(__spreadValues({
|
|
6783
7049
|
ref,
|
|
@@ -6785,7 +7051,7 @@ var SheetContent = React56.forwardRef((_a, ref) => {
|
|
|
6785
7051
|
}, props), {
|
|
6786
7052
|
children: [
|
|
6787
7053
|
children,
|
|
6788
|
-
/* @__PURE__ */
|
|
7054
|
+
/* @__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: [
|
|
6789
7055
|
/* @__PURE__ */ jsx34(Cross2Icon2, { className: "h-4 w-4" }),
|
|
6790
7056
|
/* @__PURE__ */ jsx34("span", { className: "sr-only", children: "Close" })
|
|
6791
7057
|
] })
|
|
@@ -6871,10 +7137,10 @@ function Skeleton(_a) {
|
|
|
6871
7137
|
// src/components/slider.tsx
|
|
6872
7138
|
import * as SliderPrimitive from "@radix-ui/react-slider";
|
|
6873
7139
|
import * as React57 from "react";
|
|
6874
|
-
import { jsx as jsx36, jsxs as
|
|
7140
|
+
import { jsx as jsx36, jsxs as jsxs20 } from "react/jsx-runtime";
|
|
6875
7141
|
var Slider = React57.forwardRef((_a, ref) => {
|
|
6876
7142
|
var _b = _a, { className } = _b, props = __objRest(_b, ["className"]);
|
|
6877
|
-
return /* @__PURE__ */
|
|
7143
|
+
return /* @__PURE__ */ jsxs20(
|
|
6878
7144
|
SliderPrimitive.Root,
|
|
6879
7145
|
__spreadProps(__spreadValues({
|
|
6880
7146
|
ref,
|
|
@@ -7425,7 +7691,7 @@ function useToast() {
|
|
|
7425
7691
|
}
|
|
7426
7692
|
|
|
7427
7693
|
// src/shared/alert-modal.tsx
|
|
7428
|
-
import { jsx as jsx46, jsxs as
|
|
7694
|
+
import { jsx as jsx46, jsxs as jsxs21 } from "react/jsx-runtime";
|
|
7429
7695
|
var AlertModal = ({
|
|
7430
7696
|
isOpen,
|
|
7431
7697
|
onClose,
|
|
@@ -7446,7 +7712,7 @@ var AlertModal = ({
|
|
|
7446
7712
|
isOpen,
|
|
7447
7713
|
onClose,
|
|
7448
7714
|
className,
|
|
7449
|
-
children: children ? children : /* @__PURE__ */
|
|
7715
|
+
children: children ? children : /* @__PURE__ */ jsxs21("div", { className: "flex w-full items-center justify-end space-x-2 pt-6", children: [
|
|
7450
7716
|
/* @__PURE__ */ jsx46(Button, { disabled: loading, variant: "outline", onClick: onClose, children: cancelText }),
|
|
7451
7717
|
/* @__PURE__ */ jsx46(
|
|
7452
7718
|
Button,
|
|
@@ -7466,9 +7732,9 @@ var AlertModal = ({
|
|
|
7466
7732
|
// src/shared/breadcrumbs.tsx
|
|
7467
7733
|
import { Slash } from "lucide-react";
|
|
7468
7734
|
import { Fragment } from "react";
|
|
7469
|
-
import { jsx as jsx47, jsxs as
|
|
7735
|
+
import { jsx as jsx47, jsxs as jsxs22 } from "react/jsx-runtime";
|
|
7470
7736
|
function Breadcrumbs({ items, className, classNameList }) {
|
|
7471
|
-
return /* @__PURE__ */ jsx47(Breadcrumb, { className, children: /* @__PURE__ */ jsx47(BreadcrumbList, { className: classNameList, children: items.map((item, index) => /* @__PURE__ */
|
|
7737
|
+
return /* @__PURE__ */ jsx47(Breadcrumb, { className, children: /* @__PURE__ */ jsx47(BreadcrumbList, { className: classNameList, children: items.map((item, index) => /* @__PURE__ */ jsxs22(Fragment, { children: [
|
|
7472
7738
|
index !== items.length - 1 && /* @__PURE__ */ jsx47(BreadcrumbItem, { className: item.className, children: /* @__PURE__ */ jsx47(BreadcrumbLink, { href: item.link, children: item.title }) }),
|
|
7473
7739
|
index < items.length - 1 && /* @__PURE__ */ jsx47(BreadcrumbSeparator, { children: /* @__PURE__ */ jsx47(Slash, {}) }),
|
|
7474
7740
|
index === items.length - 1 && /* @__PURE__ */ jsx47(BreadcrumbPage, { children: item.title })
|
|
@@ -7489,7 +7755,7 @@ import {
|
|
|
7489
7755
|
useReactTable
|
|
7490
7756
|
} from "@tanstack/react-table";
|
|
7491
7757
|
import { ChevronLeftIcon as ChevronLeftIcon2, ChevronRightIcon as ChevronRightIcon6 } from "lucide-react";
|
|
7492
|
-
import { Fragment as Fragment2, jsx as jsx48, jsxs as
|
|
7758
|
+
import { Fragment as Fragment2, jsx as jsx48, jsxs as jsxs23 } from "react/jsx-runtime";
|
|
7493
7759
|
function DataTable({
|
|
7494
7760
|
columns,
|
|
7495
7761
|
data,
|
|
@@ -7540,14 +7806,14 @@ function DataTable({
|
|
|
7540
7806
|
onPageChange(pagination.pageIndex + 1);
|
|
7541
7807
|
}
|
|
7542
7808
|
}, [pagination]);
|
|
7543
|
-
return /* @__PURE__ */
|
|
7544
|
-
/* @__PURE__ */
|
|
7545
|
-
/* @__PURE__ */
|
|
7546
|
-
|
|
7547
|
-
|
|
7548
|
-
|
|
7549
|
-
|
|
7550
|
-
/* @__PURE__ */ jsx48(
|
|
7809
|
+
return /* @__PURE__ */ jsxs23(Fragment2, { children: [
|
|
7810
|
+
/* @__PURE__ */ jsx48("div", { className: cn("rounded-md border", className), children: /* @__PURE__ */ jsxs23(ScrollArea, { className: "h-[calc(80vh-220px)] md:h-[calc(80dvh-80px)]", children: [
|
|
7811
|
+
/* @__PURE__ */ jsxs23(Table, { className: cn("relative", tableClassName), children: [
|
|
7812
|
+
/* @__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(
|
|
7813
|
+
header.column.columnDef.header,
|
|
7814
|
+
header.getContext()
|
|
7815
|
+
) }, header.id)) }, headerGroup.id)) }),
|
|
7816
|
+
/* @__PURE__ */ jsx48(TableBody, { className: bodyClassName, children: table.getRowModel().rows.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx48(
|
|
7551
7817
|
TableRow,
|
|
7552
7818
|
{
|
|
7553
7819
|
"data-state": row.getIsSelected() ? "selected" : void 0,
|
|
@@ -7566,51 +7832,13 @@ function DataTable({
|
|
|
7566
7832
|
className: "h-24 text-center",
|
|
7567
7833
|
children: "No results."
|
|
7568
7834
|
}
|
|
7569
|
-
) }) })
|
|
7570
|
-
|
|
7571
|
-
|
|
7572
|
-
] }),
|
|
7573
|
-
/* @__PURE__ */
|
|
7574
|
-
|
|
7575
|
-
|
|
7576
|
-
className: cn(
|
|
7577
|
-
"h-[calc(80vh-220px)] rounded-md border md:h-[calc(80dvh-80px)]",
|
|
7578
|
-
className
|
|
7579
|
-
),
|
|
7580
|
-
children: [
|
|
7581
|
-
/* @__PURE__ */ jsxs22(Table, { className: cn("relative", tableClassName), children: [
|
|
7582
|
-
/* @__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(
|
|
7583
|
-
header.column.columnDef.header,
|
|
7584
|
-
header.getContext()
|
|
7585
|
-
) }, header.id)) }, headerGroup.id)) }),
|
|
7586
|
-
/* @__PURE__ */ jsx48(TableBody, { className: bodyClassName, children: table.getRowModel().rows.length ? table.getRowModel().rows.map((row) => /* @__PURE__ */ jsx48(
|
|
7587
|
-
TableRow,
|
|
7588
|
-
{
|
|
7589
|
-
"data-state": row.getIsSelected() ? "selected" : void 0,
|
|
7590
|
-
onClick: () => onClickItem(row.original),
|
|
7591
|
-
className: rowClassName,
|
|
7592
|
-
children: row.getVisibleCells().map((cell) => /* @__PURE__ */ jsx48(TableCell, { className: cellClassName, children: flexRender(
|
|
7593
|
-
cell.column.columnDef.cell,
|
|
7594
|
-
cell.getContext()
|
|
7595
|
-
) }, cell.id))
|
|
7596
|
-
},
|
|
7597
|
-
row.id
|
|
7598
|
-
)) : emptyData || /* @__PURE__ */ jsx48(TableRow, { children: /* @__PURE__ */ jsx48(
|
|
7599
|
-
TableCell,
|
|
7600
|
-
{
|
|
7601
|
-
colSpan: columns.length,
|
|
7602
|
-
className: "h-24 text-center",
|
|
7603
|
-
children: "No results."
|
|
7604
|
-
}
|
|
7605
|
-
) }) })
|
|
7606
|
-
] }),
|
|
7607
|
-
/* @__PURE__ */ jsx48(ScrollBar, { orientation: "horizontal" })
|
|
7608
|
-
]
|
|
7609
|
-
}
|
|
7610
|
-
),
|
|
7611
|
-
/* @__PURE__ */ jsxs22("div", { className: "flex flex-col items-center justify-end gap-2 space-x-2 py-4 sm:flex-row", children: [
|
|
7612
|
-
/* @__PURE__ */ jsxs22("div", { className: "flex w-full items-center justify-between", children: [
|
|
7613
|
-
isRowsSelected ? /* @__PURE__ */ jsxs22("div", { className: "text-muted-foreground flex-1 text-sm", children: [
|
|
7835
|
+
) }) })
|
|
7836
|
+
] }),
|
|
7837
|
+
/* @__PURE__ */ jsx48(ScrollBar, { orientation: "horizontal" })
|
|
7838
|
+
] }) }),
|
|
7839
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex flex-col items-center justify-end gap-2 space-x-2 py-4 sm:flex-row", children: [
|
|
7840
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between", children: [
|
|
7841
|
+
isRowsSelected ? /* @__PURE__ */ jsxs23("div", { className: "text-muted-foreground flex-1 text-sm", children: [
|
|
7614
7842
|
table.getFilteredSelectedRowModel().rows.length,
|
|
7615
7843
|
" ",
|
|
7616
7844
|
ofLabel,
|
|
@@ -7618,14 +7846,14 @@ function DataTable({
|
|
|
7618
7846
|
table.getFilteredRowModel().rows.length,
|
|
7619
7847
|
" " + rowsSelectedLabel
|
|
7620
7848
|
] }) : null,
|
|
7621
|
-
totalRows ? /* @__PURE__ */
|
|
7849
|
+
totalRows ? /* @__PURE__ */ jsxs23("div", { className: "text-sm text-muted-foreground", children: [
|
|
7622
7850
|
"Total: ",
|
|
7623
7851
|
totalRows,
|
|
7624
7852
|
" registros"
|
|
7625
7853
|
] }) : null,
|
|
7626
|
-
/* @__PURE__ */
|
|
7854
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
|
|
7627
7855
|
/* @__PURE__ */ jsx48("p", { className: "text-sm font-medium whitespace-nowrap", children: rowPerPageLabel }),
|
|
7628
|
-
/* @__PURE__ */
|
|
7856
|
+
/* @__PURE__ */ jsxs23(
|
|
7629
7857
|
Select2,
|
|
7630
7858
|
{
|
|
7631
7859
|
value: `${pagination.pageSize}`,
|
|
@@ -7645,8 +7873,8 @@ function DataTable({
|
|
|
7645
7873
|
)
|
|
7646
7874
|
] })
|
|
7647
7875
|
] }),
|
|
7648
|
-
/* @__PURE__ */
|
|
7649
|
-
/* @__PURE__ */
|
|
7876
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex w-full items-center justify-between gap-2 sm:justify-end", children: [
|
|
7877
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: [
|
|
7650
7878
|
pageLabel,
|
|
7651
7879
|
" ",
|
|
7652
7880
|
pagination.pageIndex + 1,
|
|
@@ -7655,7 +7883,7 @@ function DataTable({
|
|
|
7655
7883
|
" ",
|
|
7656
7884
|
pageCount
|
|
7657
7885
|
] }),
|
|
7658
|
-
/* @__PURE__ */
|
|
7886
|
+
/* @__PURE__ */ jsxs23("div", { className: "flex items-center space-x-2", children: [
|
|
7659
7887
|
/* @__PURE__ */ jsx48(
|
|
7660
7888
|
Button,
|
|
7661
7889
|
{
|
|
@@ -7711,7 +7939,7 @@ function DataTable({
|
|
|
7711
7939
|
}
|
|
7712
7940
|
|
|
7713
7941
|
// src/shared/data-table-skeleton.tsx
|
|
7714
|
-
import { jsx as jsx49, jsxs as
|
|
7942
|
+
import { jsx as jsx49, jsxs as jsxs24 } from "react/jsx-runtime";
|
|
7715
7943
|
function DataTableSkeleton({
|
|
7716
7944
|
columnCount,
|
|
7717
7945
|
rowCount = 10,
|
|
@@ -7719,27 +7947,27 @@ function DataTableSkeleton({
|
|
|
7719
7947
|
filterableColumnCount = 0,
|
|
7720
7948
|
showViewOptions = true
|
|
7721
7949
|
}) {
|
|
7722
|
-
return /* @__PURE__ */
|
|
7723
|
-
/* @__PURE__ */
|
|
7724
|
-
/* @__PURE__ */
|
|
7950
|
+
return /* @__PURE__ */ jsxs24("div", { className: "w-full space-y-3 overflow-auto", children: [
|
|
7951
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex w-full items-center justify-between space-x-2 overflow-auto p-1", children: [
|
|
7952
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex flex-1 items-center space-x-2 space-y-4", children: [
|
|
7725
7953
|
searchableColumnCount > 0 ? Array.from({ length: searchableColumnCount }).map((_, i) => /* @__PURE__ */ jsx49(Skeleton, { className: "h-10 w-[150px] lg:w-[250px]" }, i)) : null,
|
|
7726
7954
|
filterableColumnCount > 0 ? Array.from({ length: filterableColumnCount }).map((_, i) => /* @__PURE__ */ jsx49(Skeleton, { className: "h-10 w-[70px] border-dashed" }, i)) : null
|
|
7727
7955
|
] }),
|
|
7728
7956
|
showViewOptions ? /* @__PURE__ */ jsx49(Skeleton, { className: "ml-auto hidden h-7 w-[70px] lg:flex" }) : null
|
|
7729
7957
|
] }),
|
|
7730
|
-
/* @__PURE__ */ jsx49("div", { className: "rounded-md border", children: /* @__PURE__ */
|
|
7958
|
+
/* @__PURE__ */ jsx49("div", { className: "rounded-md border", children: /* @__PURE__ */ jsxs24(Table, { children: [
|
|
7731
7959
|
/* @__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)) }),
|
|
7732
7960
|
/* @__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)) })
|
|
7733
7961
|
] }) }),
|
|
7734
|
-
/* @__PURE__ */
|
|
7962
|
+
/* @__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: [
|
|
7735
7963
|
/* @__PURE__ */ jsx49("div", { className: "flex-1", children: /* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-40" }) }),
|
|
7736
|
-
/* @__PURE__ */
|
|
7737
|
-
/* @__PURE__ */
|
|
7964
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex flex-col items-center gap-4 sm:flex-row sm:gap-6 lg:gap-8", children: [
|
|
7965
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex items-center space-x-2", children: [
|
|
7738
7966
|
/* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-24" }),
|
|
7739
7967
|
/* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-[70px]" })
|
|
7740
7968
|
] }),
|
|
7741
7969
|
/* @__PURE__ */ jsx49("div", { className: "flex w-[100px] items-center justify-center text-sm font-medium", children: /* @__PURE__ */ jsx49(Skeleton, { className: "h-8 w-20" }) }),
|
|
7742
|
-
/* @__PURE__ */
|
|
7970
|
+
/* @__PURE__ */ jsxs24("div", { className: "flex items-center space-x-2", children: [
|
|
7743
7971
|
/* @__PURE__ */ jsx49(Skeleton, { className: "hidden size-8 lg:block" }),
|
|
7744
7972
|
/* @__PURE__ */ jsx49(Skeleton, { className: "size-8" }),
|
|
7745
7973
|
/* @__PURE__ */ jsx49(Skeleton, { className: "size-8" }),
|
|
@@ -7753,9 +7981,9 @@ function DataTableSkeleton({
|
|
|
7753
7981
|
// src/shared/fileupload.tsx
|
|
7754
7982
|
import { AvatarIcon } from "@radix-ui/react-icons";
|
|
7755
7983
|
import { CameraIcon } from "lucide-react";
|
|
7756
|
-
import { useEffect as useEffect5, useState as
|
|
7984
|
+
import { useEffect as useEffect5, useState as useState6 } from "react";
|
|
7757
7985
|
import { useDropzone } from "react-dropzone";
|
|
7758
|
-
import { jsx as jsx50, jsxs as
|
|
7986
|
+
import { jsx as jsx50, jsxs as jsxs25 } from "react/jsx-runtime";
|
|
7759
7987
|
function FileUpload({
|
|
7760
7988
|
onChange,
|
|
7761
7989
|
value,
|
|
@@ -7779,10 +8007,10 @@ function FileUpload({
|
|
|
7779
8007
|
"relative h-36 w-36 overflow-hidden rounded-full bg-gray-200 shadow-2xl ",
|
|
7780
8008
|
classNameContent
|
|
7781
8009
|
),
|
|
7782
|
-
children: /* @__PURE__ */
|
|
8010
|
+
children: /* @__PURE__ */ jsxs25("div", __spreadProps(__spreadValues({}, getRootProps({ className: "dropzone cursor-pointer" })), { children: [
|
|
7783
8011
|
/* @__PURE__ */ jsx50("input", __spreadValues({}, getInputProps())),
|
|
7784
8012
|
value && !!value.length ? /* @__PURE__ */ jsx50(ImagePreview, { file: value[0] }) : /* @__PURE__ */ jsx50(AvatarIcon, { className: "h-36 w-36 text-gray-100" }),
|
|
7785
|
-
/* @__PURE__ */
|
|
8013
|
+
/* @__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: [
|
|
7786
8014
|
/* @__PURE__ */ jsx50(CameraIcon, { className: "h-4 w-4 text-muted-foreground" }),
|
|
7787
8015
|
label
|
|
7788
8016
|
] })
|
|
@@ -7791,7 +8019,7 @@ function FileUpload({
|
|
|
7791
8019
|
) });
|
|
7792
8020
|
}
|
|
7793
8021
|
function ImagePreview({ file }) {
|
|
7794
|
-
const [objectUrl, setObjectUrl] =
|
|
8022
|
+
const [objectUrl, setObjectUrl] = useState6(null);
|
|
7795
8023
|
useEffect5(() => {
|
|
7796
8024
|
const url = URL.createObjectURL(file);
|
|
7797
8025
|
setObjectUrl(url);
|
|
@@ -7810,9 +8038,9 @@ function ImagePreview({ file }) {
|
|
|
7810
8038
|
}
|
|
7811
8039
|
|
|
7812
8040
|
// src/shared/heading.tsx
|
|
7813
|
-
import { jsx as jsx51, jsxs as
|
|
8041
|
+
import { jsx as jsx51, jsxs as jsxs26 } from "react/jsx-runtime";
|
|
7814
8042
|
function Heading({ title, description, className }) {
|
|
7815
|
-
return /* @__PURE__ */
|
|
8043
|
+
return /* @__PURE__ */ jsxs26("div", { className, children: [
|
|
7816
8044
|
/* @__PURE__ */ jsx51("div", { className: "text-lg font-bold tracking-tight text-primary sm:text-3xl", children: title }),
|
|
7817
8045
|
/* @__PURE__ */ jsx51("p", { className: "text-sm text-muted-foreground", children: description })
|
|
7818
8046
|
] });
|
|
@@ -7820,9 +8048,9 @@ function Heading({ title, description, className }) {
|
|
|
7820
8048
|
|
|
7821
8049
|
// src/shared/page-head.tsx
|
|
7822
8050
|
import { Helmet } from "react-helmet-next";
|
|
7823
|
-
import { jsx as jsx52, jsxs as
|
|
8051
|
+
import { jsx as jsx52, jsxs as jsxs27 } from "react/jsx-runtime";
|
|
7824
8052
|
function PageHead({ title = "shadcn-ui-react" }) {
|
|
7825
|
-
return /* @__PURE__ */ jsx52(Helmet, { children: /* @__PURE__ */
|
|
8053
|
+
return /* @__PURE__ */ jsx52(Helmet, { children: /* @__PURE__ */ jsxs27("title", { children: [
|
|
7826
8054
|
" ",
|
|
7827
8055
|
title,
|
|
7828
8056
|
" "
|
|
@@ -7830,7 +8058,7 @@ function PageHead({ title = "shadcn-ui-react" }) {
|
|
|
7830
8058
|
}
|
|
7831
8059
|
|
|
7832
8060
|
// src/shared/pagination-section.tsx
|
|
7833
|
-
import { jsx as jsx53, jsxs as
|
|
8061
|
+
import { jsx as jsx53, jsxs as jsxs28 } from "react/jsx-runtime";
|
|
7834
8062
|
function PaginationSection({
|
|
7835
8063
|
totalPosts,
|
|
7836
8064
|
postsPerPage,
|
|
@@ -7900,8 +8128,8 @@ function PaginationSection({
|
|
|
7900
8128
|
}
|
|
7901
8129
|
return renderedPages;
|
|
7902
8130
|
};
|
|
7903
|
-
return /* @__PURE__ */ jsx53("div", { className: "p-4", children: /* @__PURE__ */ jsx53(Pagination, { children: /* @__PURE__ */
|
|
7904
|
-
/* @__PURE__ */
|
|
8131
|
+
return /* @__PURE__ */ jsx53("div", { className: "p-4", children: /* @__PURE__ */ jsx53(Pagination, { children: /* @__PURE__ */ jsxs28(PaginationContent, { children: [
|
|
8132
|
+
/* @__PURE__ */ jsxs28(PaginationItem, { children: [
|
|
7905
8133
|
/* @__PURE__ */ jsx53(
|
|
7906
8134
|
PaginationPreviousLast,
|
|
7907
8135
|
{
|
|
@@ -7912,7 +8140,7 @@ function PaginationSection({
|
|
|
7912
8140
|
/* @__PURE__ */ jsx53(PaginationPrevious, { onClick: handlePrevPage, size: void 0 })
|
|
7913
8141
|
] }),
|
|
7914
8142
|
renderPages(),
|
|
7915
|
-
/* @__PURE__ */
|
|
8143
|
+
/* @__PURE__ */ jsxs28(PaginationItem, { children: [
|
|
7916
8144
|
/* @__PURE__ */ jsx53(PaginationNext, { onClick: handleNextPage, size: void 0 }),
|
|
7917
8145
|
/* @__PURE__ */ jsx53(PaginationNextLast, { onClick: handleNextPageLast, size: void 0 })
|
|
7918
8146
|
] })
|
|
@@ -7921,7 +8149,7 @@ function PaginationSection({
|
|
|
7921
8149
|
|
|
7922
8150
|
// src/shared/dropzone.tsx
|
|
7923
8151
|
import { useDropzone as useDropzone2 } from "react-dropzone";
|
|
7924
|
-
import { jsx as jsx54, jsxs as
|
|
8152
|
+
import { jsx as jsx54, jsxs as jsxs29 } from "react/jsx-runtime";
|
|
7925
8153
|
function Dropzone({
|
|
7926
8154
|
label,
|
|
7927
8155
|
onChange,
|
|
@@ -7942,9 +8170,9 @@ function Dropzone({
|
|
|
7942
8170
|
},
|
|
7943
8171
|
accept
|
|
7944
8172
|
}, options));
|
|
7945
|
-
return /* @__PURE__ */
|
|
8173
|
+
return /* @__PURE__ */ jsxs29("div", { className: cn("space-y-2", className), children: [
|
|
7946
8174
|
label && /* @__PURE__ */ jsx54("p", { className: cn("font-medium", labelClassName), children: label }),
|
|
7947
|
-
/* @__PURE__ */
|
|
8175
|
+
/* @__PURE__ */ jsxs29(
|
|
7948
8176
|
"div",
|
|
7949
8177
|
__spreadProps(__spreadValues({}, getRootProps()), {
|
|
7950
8178
|
className: cn(
|
|
@@ -7958,7 +8186,7 @@ function Dropzone({
|
|
|
7958
8186
|
]
|
|
7959
8187
|
})
|
|
7960
8188
|
),
|
|
7961
|
-
value && value.length > 0 && /* @__PURE__ */ jsx54("ul", { className: cn("text-sm text-gray-700 space-y-1", valueClassName), children: value.map((file, idx) => /* @__PURE__ */
|
|
8189
|
+
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: [
|
|
7962
8190
|
"\u2022 ",
|
|
7963
8191
|
file.name
|
|
7964
8192
|
] }, idx)) })
|
|
@@ -8073,6 +8301,7 @@ export {
|
|
|
8073
8301
|
FormItem,
|
|
8074
8302
|
FormLabel,
|
|
8075
8303
|
FormMessage,
|
|
8304
|
+
FormSelect,
|
|
8076
8305
|
Heading,
|
|
8077
8306
|
HoverCard,
|
|
8078
8307
|
HoverCardContent,
|
|
@@ -8189,10 +8418,12 @@ export {
|
|
|
8189
8418
|
badgeVariants,
|
|
8190
8419
|
buttonVariants,
|
|
8191
8420
|
cn,
|
|
8421
|
+
inputVariants,
|
|
8192
8422
|
navigationMenuTriggerStyle,
|
|
8193
8423
|
reducer,
|
|
8194
8424
|
toast,
|
|
8195
8425
|
toggleVariants,
|
|
8196
8426
|
useFormField,
|
|
8197
|
-
useToast
|
|
8427
|
+
useToast,
|
|
8428
|
+
variants
|
|
8198
8429
|
};
|