@lawnguru/ui 0.0.0-stage → 3.0.2
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 +30 -2
- package/dist/chunk-2FVVWPIW.js +2 -0
- package/dist/chunk-2FVVWPIW.js.map +7 -0
- package/dist/chunk-2R5NZUY2.js +2 -0
- package/dist/chunk-2R5NZUY2.js.map +7 -0
- package/dist/chunk-322C3AJR.js +2 -0
- package/dist/chunk-322C3AJR.js.map +7 -0
- package/dist/chunk-46MFR2CI.js +2 -0
- package/dist/chunk-46MFR2CI.js.map +7 -0
- package/dist/chunk-4HREOJXZ.js +2 -0
- package/dist/chunk-4HREOJXZ.js.map +7 -0
- package/dist/chunk-5AXWISGI.js +2 -0
- package/dist/chunk-5AXWISGI.js.map +7 -0
- package/dist/chunk-62LTWWXS.js +2 -0
- package/dist/chunk-62LTWWXS.js.map +7 -0
- package/dist/chunk-63IVPQSD.js +2 -0
- package/dist/chunk-63IVPQSD.js.map +7 -0
- package/dist/chunk-6MI7ACXZ.js +2 -0
- package/dist/chunk-6MI7ACXZ.js.map +7 -0
- package/dist/chunk-7EVFMYIH.js +2 -0
- package/dist/chunk-7EVFMYIH.js.map +7 -0
- package/dist/chunk-7H74R7P4.js +2 -0
- package/dist/chunk-7H74R7P4.js.map +7 -0
- package/dist/chunk-7TYPESVD.js +2 -0
- package/dist/chunk-7TYPESVD.js.map +7 -0
- package/dist/chunk-A4EVMSOO.js +2 -0
- package/dist/chunk-A4EVMSOO.js.map +7 -0
- package/dist/chunk-BF3VTYEM.js +2 -0
- package/dist/chunk-BF3VTYEM.js.map +7 -0
- package/dist/chunk-BJWILCTE.js +2 -0
- package/dist/chunk-BJWILCTE.js.map +7 -0
- package/dist/chunk-BY3UM6EV.js +2 -0
- package/dist/chunk-BY3UM6EV.js.map +7 -0
- package/dist/chunk-CALZEY6V.js +2 -0
- package/dist/chunk-CALZEY6V.js.map +7 -0
- package/dist/chunk-CF236UZ4.js +2 -0
- package/dist/chunk-CF236UZ4.js.map +7 -0
- package/dist/chunk-DBMJIVTY.js +2 -0
- package/dist/chunk-DBMJIVTY.js.map +7 -0
- package/dist/chunk-DCPZZOJQ.js +2 -0
- package/dist/chunk-DCPZZOJQ.js.map +7 -0
- package/dist/chunk-FKH5WAC7.js +2 -0
- package/dist/chunk-FKH5WAC7.js.map +7 -0
- package/dist/chunk-FUXRPZVU.js +2 -0
- package/dist/chunk-FUXRPZVU.js.map +7 -0
- package/dist/chunk-GATZOHQ6.js +1 -0
- package/dist/chunk-GATZOHQ6.js.map +7 -0
- package/dist/chunk-GTEOHHVD.js +2 -0
- package/dist/chunk-GTEOHHVD.js.map +7 -0
- package/dist/chunk-IM2PR6JL.js +2 -0
- package/dist/chunk-IM2PR6JL.js.map +7 -0
- package/dist/chunk-INK2D47B.js +2 -0
- package/dist/chunk-INK2D47B.js.map +7 -0
- package/dist/chunk-JVQR7SBQ.js +2 -0
- package/dist/chunk-JVQR7SBQ.js.map +7 -0
- package/dist/chunk-KCQQSXMU.js +2 -0
- package/dist/chunk-KCQQSXMU.js.map +7 -0
- package/dist/chunk-KGEITSDG.js +2 -0
- package/dist/chunk-KGEITSDG.js.map +7 -0
- package/dist/chunk-KR5A3H22.js +2 -0
- package/dist/chunk-KR5A3H22.js.map +7 -0
- package/dist/chunk-L4EACCHY.js +2 -0
- package/dist/chunk-L4EACCHY.js.map +7 -0
- package/dist/chunk-LUG5DIYB.js +2 -0
- package/dist/chunk-LUG5DIYB.js.map +7 -0
- package/dist/chunk-M3WRRDK4.js +2 -0
- package/dist/chunk-M3WRRDK4.js.map +7 -0
- package/dist/chunk-NMUGPQJR.js +2 -0
- package/dist/chunk-NMUGPQJR.js.map +7 -0
- package/dist/chunk-P2J4T7VX.js +2 -0
- package/dist/chunk-P2J4T7VX.js.map +7 -0
- package/dist/chunk-PQXLSFXS.js +2 -0
- package/dist/chunk-PQXLSFXS.js.map +7 -0
- package/dist/chunk-PRAYE34P.js +2 -0
- package/dist/chunk-PRAYE34P.js.map +7 -0
- package/dist/chunk-PYVYS6W4.js +2 -0
- package/dist/chunk-PYVYS6W4.js.map +7 -0
- package/dist/chunk-Q3PG3WWG.js +2 -0
- package/dist/chunk-Q3PG3WWG.js.map +7 -0
- package/dist/chunk-RHVVPPZE.js +2 -0
- package/dist/chunk-RHVVPPZE.js.map +7 -0
- package/dist/chunk-RRDBPO2I.js +2 -0
- package/dist/chunk-RRDBPO2I.js.map +7 -0
- package/dist/chunk-S2I5LIDP.js +2 -0
- package/dist/chunk-S2I5LIDP.js.map +7 -0
- package/dist/chunk-SJZ34LYG.js +2 -0
- package/dist/chunk-SJZ34LYG.js.map +7 -0
- package/dist/chunk-T73JL4BL.js +2 -0
- package/dist/chunk-T73JL4BL.js.map +7 -0
- package/dist/chunk-UUB5URTQ.js +2 -0
- package/dist/chunk-UUB5URTQ.js.map +7 -0
- package/dist/chunk-VIGX5NKJ.js +2 -0
- package/dist/chunk-VIGX5NKJ.js.map +7 -0
- package/dist/chunk-WHECA25N.js +2 -0
- package/dist/chunk-WHECA25N.js.map +7 -0
- package/dist/chunk-WIFBPNRH.js +2 -0
- package/dist/chunk-WIFBPNRH.js.map +7 -0
- package/dist/chunk-ZJVH3SNI.js +2 -0
- package/dist/chunk-ZJVH3SNI.js.map +7 -0
- package/dist/components/alert/index.js +2 -0
- package/dist/components/alert/index.js.map +7 -0
- package/dist/components/avatar/index.js +2 -0
- package/dist/components/avatar/index.js.map +7 -0
- package/dist/components/badge/index.js +2 -0
- package/dist/components/badge/index.js.map +7 -0
- package/dist/components/button/index.js +2 -0
- package/dist/components/button/index.js.map +7 -0
- package/dist/components/calendar/index.js +2 -0
- package/dist/components/calendar/index.js.map +7 -0
- package/dist/components/card/index.js +2 -0
- package/dist/components/card/index.js.map +7 -0
- package/dist/components/carousel/index.js +2 -0
- package/dist/components/carousel/index.js.map +7 -0
- package/dist/components/checkbox/index.js +2 -0
- package/dist/components/checkbox/index.js.map +7 -0
- package/dist/components/collapsible/index.js +2 -0
- package/dist/components/collapsible/index.js.map +7 -0
- package/dist/components/combobox/index.js +2 -0
- package/dist/components/combobox/index.js.map +7 -0
- package/dist/components/command/index.js +2 -0
- package/dist/components/command/index.js.map +7 -0
- package/dist/components/confirm/index.js +2 -0
- package/dist/components/confirm/index.js.map +7 -0
- package/dist/components/dialog/index.js +2 -0
- package/dist/components/dialog/index.js.map +7 -0
- package/dist/components/dialog-responsive/index.js +2 -0
- package/dist/components/dialog-responsive/index.js.map +7 -0
- package/dist/components/drawer/index.js +2 -0
- package/dist/components/drawer/index.js.map +7 -0
- package/dist/components/dropdown-menu/index.js +2 -0
- package/dist/components/dropdown-menu/index.js.map +7 -0
- package/dist/components/dropdown-menu-responsive/index.js +2 -0
- package/dist/components/dropdown-menu-responsive/index.js.map +7 -0
- package/dist/components/empty/index.js +2 -0
- package/dist/components/empty/index.js.map +7 -0
- package/dist/components/form/index.js +2 -0
- package/dist/components/form/index.js.map +7 -0
- package/dist/components/input/index.js +2 -0
- package/dist/components/input/index.js.map +7 -0
- package/dist/components/input-group/index.js +2 -0
- package/dist/components/input-group/index.js.map +7 -0
- package/dist/components/input-otp/index.js +2 -0
- package/dist/components/input-otp/index.js.map +7 -0
- package/dist/components/input-password/index.js +2 -0
- package/dist/components/input-password/index.js.map +7 -0
- package/dist/components/item/index.js +2 -0
- package/dist/components/item/index.js.map +7 -0
- package/dist/components/label/index.js +2 -0
- package/dist/components/label/index.js.map +7 -0
- package/dist/components/loading-page/index.js +2 -0
- package/dist/components/loading-page/index.js.map +7 -0
- package/dist/components/photo-lightbox/index.js +2 -0
- package/dist/components/photo-lightbox/index.js.map +7 -0
- package/dist/components/photo-upload/index.js +2 -0
- package/dist/components/photo-upload/index.js.map +7 -0
- package/dist/components/popover/index.js +2 -0
- package/dist/components/popover/index.js.map +7 -0
- package/dist/components/progress/index.js +2 -0
- package/dist/components/progress/index.js.map +7 -0
- package/dist/components/questionnaire/index.js +2 -0
- package/dist/components/questionnaire/index.js.map +7 -0
- package/dist/components/radio-group/index.js +2 -0
- package/dist/components/radio-group/index.js.map +7 -0
- package/dist/components/rating/index.js +2 -0
- package/dist/components/rating/index.js.map +7 -0
- package/dist/components/resizable/index.js +2 -0
- package/dist/components/resizable/index.js.map +7 -0
- package/dist/components/scroll-area/index.js +2 -0
- package/dist/components/scroll-area/index.js.map +7 -0
- package/dist/components/select/index.js +2 -0
- package/dist/components/select/index.js.map +7 -0
- package/dist/components/separator/index.js +2 -0
- package/dist/components/separator/index.js.map +7 -0
- package/dist/components/sheet/index.js +2 -0
- package/dist/components/sheet/index.js.map +7 -0
- package/dist/components/slider/index.js +2 -0
- package/dist/components/slider/index.js.map +7 -0
- package/dist/components/spinner/index.js +2 -0
- package/dist/components/spinner/index.js.map +7 -0
- package/dist/components/table/index.js +2 -0
- package/dist/components/table/index.js.map +7 -0
- package/dist/components/tabs/index.js +2 -0
- package/dist/components/tabs/index.js.map +7 -0
- package/dist/components/text-area/index.js +2 -0
- package/dist/components/text-area/index.js.map +7 -0
- package/dist/components/toggle/index.js +2 -0
- package/dist/components/toggle/index.js.map +7 -0
- package/dist/components/toggle-group/index.js +2 -0
- package/dist/components/toggle-group/index.js.map +7 -0
- package/dist/hooks/index.js +2 -0
- package/dist/hooks/index.js.map +7 -0
- package/dist/hooks/use-is-touch-device.js +2 -0
- package/dist/hooks/use-is-touch-device.js.map +7 -0
- package/dist/index.d.ts +716 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +7 -0
- package/dist/lib/utils.js +2 -0
- package/dist/lib/utils.js.map +7 -0
- package/dist/output.css +4882 -0
- package/dist/tailwind.preset.d.ts +341 -0
- package/dist/tailwind.preset.js +2 -0
- package/dist/tailwind.preset.js.map +7 -0
- package/dist/variables.css +93 -0
- package/package.json +131 -4
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/card/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Card = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\n \"rounded-xl border bg-card text-card-foreground shadow\",\n className,\n )}\n {...props}\n />\n));\nCard.displayName = \"Card\";\n\nconst CardHeader = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex flex-col space-y-1.5 p-6\", className)}\n {...props}\n />\n));\nCardHeader.displayName = \"CardHeader\";\n\nconst CardTitle = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"font-semibold leading-none tracking-tight\", className)}\n {...props}\n />\n));\nCardTitle.displayName = \"CardTitle\";\n\nconst CardDescription = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nCardDescription.displayName = \"CardDescription\";\n\nconst CardContent = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div ref={ref} className={cn(\"p-6 pt-0\", className)} {...props} />\n));\nCardContent.displayName = \"CardContent\";\n\nconst CardFooter = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center p-6 pt-0\", className)}\n {...props}\n />\n));\nCardFooter.displayName = \"CardFooter\";\n\nexport {\n Card,\n CardHeader,\n CardFooter,\n CardTitle,\n CardDescription,\n CardContent,\n};\n"],
|
|
5
|
+
"mappings": "uFAAA,UAAYA,MAAW,QAQrB,cAAAC,MAAA,oBAJF,IAAMC,EAAa,aAGjB,CAACC,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAPL,EAOGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,MAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EACT,wDACAJ,CACF,GACIC,EACN,EACD,EACDL,EAAK,YAAc,OAEnB,IAAMS,EAAmB,aAGvB,CAACR,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAtBL,EAsBGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,MAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EAAG,gCAAiCJ,CAAS,GACpDC,EACN,EACD,EACDI,EAAW,YAAc,aAEzB,IAAMC,EAAkB,aAGtB,CAACT,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAlCL,EAkCGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,MAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EAAG,4CAA6CJ,CAAS,GAChEC,EACN,EACD,EACDK,EAAU,YAAc,YAExB,IAAMC,EAAwB,aAG5B,CAACV,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CA9CL,EA8CGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,MAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EAAG,gCAAiCJ,CAAS,GACpDC,EACN,EACD,EACDM,EAAgB,YAAc,kBAE9B,IAAMC,EAAoB,aAGxB,CAACX,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CA1DL,EA0DGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,MAAAQ,EAAA,CAAI,IAAKL,EAAK,UAAWM,EAAG,WAAYJ,CAAS,GAAOC,EAAO,EACjE,EACDO,EAAY,YAAc,cAE1B,IAAMC,EAAmB,aAGvB,CAACZ,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAlEL,EAkEGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,MAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EAAG,6BAA8BJ,CAAS,GACjDC,EACN,EACD,EACDQ,EAAW,YAAc",
|
|
6
|
+
"names": ["React", "jsx", "Card", "_a", "ref", "_b", "className", "props", "__objRest", "__spreadValues", "cn", "CardHeader", "CardTitle", "CardDescription", "CardContent", "CardFooter"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as p}from"./chunk-WIFBPNRH.js";import{a as s,b as f,c as i}from"./chunk-WHECA25N.js";import*as o from"react";import{OTPInput as v,OTPInputContext as P}from"input-otp";import{MinusIcon as I}from"lucide-react";import{jsx as n,jsxs as h}from"react/jsx-runtime";var O=o.forwardRef((m,c)=>{var r=m,{className:e,containerClassName:t}=r,a=i(r,["className","containerClassName"]);return n(v,s({ref:c,containerClassName:p("flex items-center gap-2 has-[:disabled]:opacity-50",t),className:p("disabled:cursor-not-allowed",e)},a))});O.displayName="InputOTP";var T=o.forwardRef((c,a)=>{var m=c,{className:e}=m,t=i(m,["className"]);return n("div",s({ref:a,className:p("flex items-center gap-2",e)},t))});T.displayName="InputOTPGroup";var x=o.forwardRef((m,c)=>{var r=m,{index:e,className:t}=r,a=i(r,["index","className"]);let d=o.useContext(P),{char:l,hasFakeCaret:u,isActive:R}=d.slots[e];return h("div",f(s({ref:c,className:p("relative flex h-10 w-10 items-center justify-center rounded-sm border border-input py-6 text-sm font-normal shadow-sm transition-all sm:w-12 sm:text-lg",R&&"z-10 ring-2 ring-primary ring-offset-2",t)},a),{children:[l,u&&n("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center",children:n("div",{className:"animate-caret-blink h-4 w-px bg-foreground duration-1000"})})]}))});x.displayName="InputOTPSlot";var y=o.forwardRef((a,t)=>{var e=i(a,[]);return n("div",f(s({ref:t,role:"separator"},e),{children:n(I,{})}))});y.displayName="InputOTPSeparator";export{O as a,T as b,x as c,y as d};
|
|
2
|
+
//# sourceMappingURL=chunk-CF236UZ4.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/input-otp/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { OTPInput, OTPInputContext } from \"input-otp\";\nimport { cn } from \"@/lib/utils\";\nimport { MinusIcon } from \"lucide-react\";\n\nconst InputOTP = React.forwardRef<\n React.ElementRef<typeof OTPInput>,\n React.ComponentPropsWithoutRef<typeof OTPInput>\n>(({ className, containerClassName, ...props }, ref) => (\n <OTPInput\n ref={ref}\n containerClassName={cn(\n \"flex items-center gap-2 has-[:disabled]:opacity-50\",\n containerClassName,\n )}\n className={cn(\"disabled:cursor-not-allowed\", className)}\n {...props}\n />\n));\nInputOTP.displayName = \"InputOTP\";\n\nconst InputOTPGroup = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n />\n));\nInputOTPGroup.displayName = \"InputOTPGroup\";\n\nconst InputOTPSlot = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\"> & { index: number }\n>(({ index, className, ...props }, ref) => {\n const inputOTPContext = React.useContext(OTPInputContext);\n const { char, hasFakeCaret, isActive } = inputOTPContext.slots[index];\n\n return (\n <div\n ref={ref}\n className={cn(\n \"relative flex h-10 w-10 items-center justify-center rounded-sm border border-input py-6 text-sm font-normal shadow-sm transition-all sm:w-12 sm:text-lg\",\n isActive && \"z-10 ring-2 ring-primary ring-offset-2\",\n className,\n )}\n {...props}\n >\n {char}\n {hasFakeCaret && (\n <div className=\"pointer-events-none absolute inset-0 flex items-center justify-center\">\n <div className=\"animate-caret-blink h-4 w-px bg-foreground duration-1000\" />\n </div>\n )}\n </div>\n );\n});\nInputOTPSlot.displayName = \"InputOTPSlot\";\n\nconst InputOTPSeparator = React.forwardRef<\n React.ElementRef<\"div\">,\n React.ComponentPropsWithoutRef<\"div\">\n>(({ ...props }, ref) => (\n <div ref={ref} role=\"separator\" {...props}>\n <MinusIcon />\n </div>\n));\nInputOTPSeparator.displayName = \"InputOTPSeparator\";\n\nexport { InputOTP, InputOTPGroup, InputOTPSlot, InputOTPSeparator };\n"],
|
|
5
|
+
"mappings": "8FAAA,UAAYA,MAAW,QACvB,OAAS,YAAAC,EAAU,mBAAAC,MAAuB,YAE1C,OAAS,aAAAC,MAAiB,eAMxB,cAAAC,EAgCE,QAAAC,MAhCF,oBAJF,IAAMC,EAAiB,aAGrB,CAACC,EAA6CC,IAAK,CAAlD,IAAAC,EAAAF,EAAE,WAAAG,EAAW,mBAAAC,CARhB,EAQGF,EAAoCG,EAAAC,EAApCJ,EAAoC,CAAlC,YAAW,uBACd,OAAAL,EAACU,EAAAC,EAAA,CACC,IAAKP,EACL,mBAAoBQ,EAClB,qDACAL,CACF,EACA,UAAWK,EAAG,8BAA+BN,CAAS,GAClDE,EACN,EACD,EACDN,EAAS,YAAc,WAEvB,IAAMW,EAAsB,aAG1B,CAACV,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAxBL,EAwBGD,EAAgBG,EAAAC,EAAhBJ,EAAgB,CAAd,cACH,OAAAL,EAAC,MAAAW,EAAA,CACC,IAAKP,EACL,UAAWQ,EAAG,0BAA2BN,CAAS,GAC9CE,EACN,EACD,EACDK,EAAc,YAAc,gBAE5B,IAAMC,EAAqB,aAGzB,CAACX,EAAgCC,IAAQ,CAAxC,IAAAC,EAAAF,EAAE,OAAAY,EAAO,UAAAT,CApCZ,EAoCGD,EAAuBG,EAAAC,EAAvBJ,EAAuB,CAArB,QAAO,cACV,IAAMW,EAAwB,aAAWC,CAAe,EAClD,CAAE,KAAAC,EAAM,aAAAC,EAAc,SAAAC,CAAS,EAAIJ,EAAgB,MAAMD,CAAK,EAEpE,OACEd,EAAC,MAAAoB,EAAAV,EAAA,CACC,IAAKP,EACL,UAAWQ,EACT,0JACAQ,GAAY,yCACZd,CACF,GACIE,GAPL,CASE,UAAAU,EACAC,GACCnB,EAAC,OAAI,UAAU,wEACb,SAAAA,EAAC,OAAI,UAAU,2DAA2D,EAC5E,IAEJ,CAEJ,CAAC,EACDc,EAAa,YAAc,eAE3B,IAAMQ,EAA0B,aAG9B,CAACnB,EAAcC,IAAK,CAAnB,IAAKI,EAAAC,EAALN,EAAK,IACN,OAAAH,EAAC,MAAAqB,EAAAV,EAAA,CAAI,IAAKP,EAAK,KAAK,aAAgBI,GAAnC,CACC,SAAAR,EAACuB,EAAA,EAAU,GACb,EACD,EACDD,EAAkB,YAAc",
|
|
6
|
+
"names": ["React", "OTPInput", "OTPInputContext", "MinusIcon", "jsx", "jsxs", "InputOTP", "_a", "ref", "_b", "className", "containerClassName", "props", "__objRest", "OTPInput", "__spreadValues", "cn", "InputOTPGroup", "InputOTPSlot", "index", "inputOTPContext", "OTPInputContext", "char", "hasFakeCaret", "isActive", "__spreadProps", "InputOTPSeparator", "MinusIcon"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as P}from"./chunk-7TYPESVD.js";import{a as c}from"./chunk-WIFBPNRH.js";import{a as l,b as x,c as d}from"./chunk-WHECA25N.js";import*as o from"react";import{Slot as y}from"radix-ui";import{Controller as C,FormProvider as V,useFormContext as v}from"react-hook-form";import{jsx as n}from"react/jsx-runtime";var D=i=>{var s=i,{children:t}=s,a=d(s,["children"]);let{setFocus:r,formState:{errors:e}}=a;return o.useEffect(()=>{let m=Object.keys(e).reduce((p,f)=>{let F=p;return e[F]?F:f},null);m&&r(m)},[e,r]),n(V,x(l({},a),{children:t}))},R=o.createContext({}),$=a=>{var t=d(a,[]);return n(R.Provider,{value:{name:t.name},children:n(C,l({},t))})},u=()=>{let t=o.useContext(R),a=o.useContext(T),{getFieldState:i,formState:s}=v(),r=i(t.name,s);if(!t)throw new Error("useFormField should be used within <FormField>");let{id:e}=a;return l({id:e,name:t.name,formItemId:`${e}-form-item`,formDescriptionId:`${e}-form-item-description`,formMessageId:`${e}-form-item-message`},r)},T=o.createContext({}),I=o.forwardRef((s,i)=>{var r=s,{className:t}=r,a=d(r,["className"]);let e=o.useId();return n(T.Provider,{value:{id:e},children:n("div",l({ref:i,className:c("space-y-2",t)},a))})});I.displayName="FormItem";var b=o.forwardRef((s,i)=>{var r=s,{className:t}=r,a=d(r,["className"]);let{error:e,formItemId:m}=u();return n(P,l({ref:i,className:c(e&&"text-destructive",t),htmlFor:m},a))});b.displayName="FormLabel";var h=o.forwardRef((i,a)=>{var t=d(i,[]);let{error:s,formItemId:r,formDescriptionId:e,formMessageId:m}=u();return n(y.Slot,l({ref:a,id:r,"aria-describedby":s?`${e} ${m}`:`${e}`,"aria-invalid":!!s},t))});h.displayName="FormControl";var L=o.forwardRef((s,i)=>{var r=s,{className:t}=r,a=d(r,["className"]);let{formDescriptionId:e}=u();return n("p",l({ref:i,id:e,className:c("text-[0.8rem] text-muted-foreground",t)},a))});L.displayName="FormDescription";var g=o.forwardRef((r,s)=>{var e=r,{className:t,children:a}=e,i=d(e,["className","children"]);var F;let{error:m,formMessageId:p}=u(),f=m?String((F=m==null?void 0:m.message)!=null?F:""):a;return f?n("p",x(l({ref:s,id:p,className:c("text-[0.8rem] font-medium text-destructive",t)},i),{children:f})):null});g.displayName="FormMessage";export{D as a,$ as b,u as c,I as d,b as e,h as f,L as g,g as h};
|
|
2
|
+
//# sourceMappingURL=chunk-DBMJIVTY.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/form/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { Label as LabelPrimitive, Slot as SlotPrimitive } from \"radix-ui\";\n\nimport {\n Controller,\n FormProvider,\n FormProviderProps,\n useFormContext,\n type ControllerProps,\n type FieldPath,\n type FieldValues,\n} from \"react-hook-form\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Label } from \"@/components/label\";\n\nconst Form = <\n TFieldValues extends FieldValues,\n TContext = object,\n TTransformedValues extends FieldValues | undefined = undefined,\n>({\n children,\n ...props\n}: FormProviderProps<TFieldValues, TContext, TTransformedValues>) => {\n const {\n setFocus,\n formState: { errors },\n } = props;\n\n React.useEffect(() => {\n const firstError = (\n Object.keys(errors) as Array<keyof typeof errors>\n ).reduce<keyof typeof errors | null>((field, a) => {\n const fieldKey = field as keyof typeof errors;\n return !!errors[fieldKey] ? fieldKey : a;\n }, null);\n\n if (firstError) {\n setFocus(firstError as FieldPath<TFieldValues>);\n }\n }, [errors, setFocus]);\n\n return <FormProvider {...props}>{children}</FormProvider>;\n};\n\ntype FormFieldContextValue<\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n> = {\n name: TName;\n};\n\nconst FormFieldContext = React.createContext<FormFieldContextValue>(\n {} as FormFieldContextValue,\n);\n\nconst FormField = <\n TFieldValues extends FieldValues = FieldValues,\n TName extends FieldPath<TFieldValues> = FieldPath<TFieldValues>,\n>({\n ...props\n}: ControllerProps<TFieldValues, TName>) => {\n return (\n <FormFieldContext.Provider value={{ name: props.name }}>\n <Controller {...props} />\n </FormFieldContext.Provider>\n );\n};\n\nconst useFormField = () => {\n const fieldContext = React.useContext(FormFieldContext);\n const itemContext = React.useContext(FormItemContext);\n const { getFieldState, formState } = useFormContext();\n\n const fieldState = getFieldState(fieldContext.name, formState);\n\n if (!fieldContext) {\n throw new Error(\"useFormField should be used within <FormField>\");\n }\n\n const { id } = itemContext;\n\n return {\n id,\n name: fieldContext.name,\n formItemId: `${id}-form-item`,\n formDescriptionId: `${id}-form-item-description`,\n formMessageId: `${id}-form-item-message`,\n ...fieldState,\n };\n};\n\ntype FormItemContextValue = {\n id: string;\n};\n\nconst FormItemContext = React.createContext<FormItemContextValue>(\n {} as FormItemContextValue,\n);\n\nconst FormItem = React.forwardRef<\n HTMLDivElement,\n React.HTMLAttributes<HTMLDivElement>\n>(({ className, ...props }, ref) => {\n const id = React.useId();\n\n return (\n <FormItemContext.Provider value={{ id }}>\n <div ref={ref} className={cn(\"space-y-2\", className)} {...props} />\n </FormItemContext.Provider>\n );\n});\nFormItem.displayName = \"FormItem\";\n\nconst FormLabel = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root>\n>(({ className, ...props }, ref) => {\n const { error, formItemId } = useFormField();\n\n return (\n <Label\n ref={ref}\n className={cn(error && \"text-destructive\", className)}\n htmlFor={formItemId}\n {...props}\n />\n );\n});\nFormLabel.displayName = \"FormLabel\";\n\nconst FormControl = React.forwardRef<\n React.ElementRef<typeof SlotPrimitive.Slot>,\n React.ComponentPropsWithoutRef<typeof SlotPrimitive.Slot>\n>(({ ...props }, ref) => {\n const { error, formItemId, formDescriptionId, formMessageId } =\n useFormField();\n\n return (\n <SlotPrimitive.Slot\n ref={ref}\n id={formItemId}\n aria-describedby={\n !error\n ? `${formDescriptionId}`\n : `${formDescriptionId} ${formMessageId}`\n }\n aria-invalid={!!error}\n {...props}\n />\n );\n});\nFormControl.displayName = \"FormControl\";\n\nconst FormDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => {\n const { formDescriptionId } = useFormField();\n\n return (\n <p\n ref={ref}\n id={formDescriptionId}\n className={cn(\"text-[0.8rem] text-muted-foreground\", className)}\n {...props}\n />\n );\n});\nFormDescription.displayName = \"FormDescription\";\n\nconst FormMessage = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, children, ...props }, ref) => {\n const { error, formMessageId } = useFormField();\n const body = error ? String(error?.message ?? \"\") : children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n id={formMessageId}\n className={cn(\"text-[0.8rem] font-medium text-destructive\", className)}\n {...props}\n >\n {body}\n </p>\n );\n});\nFormMessage.displayName = \"FormMessage\";\n\nexport {\n useFormField,\n Form,\n FormItem,\n FormLabel,\n FormControl,\n FormDescription,\n FormMessage,\n FormField,\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "SlotPrimitive", "Controller", "FormProvider", "useFormContext", "jsx", "Form", "_a", "_b", "children", "props", "__objRest", "setFocus", "errors", "firstError", "field", "a", "fieldKey", "FormProvider", "__spreadProps", "__spreadValues", "FormFieldContext", "FormField", "Controller", "useFormField", "fieldContext", "itemContext", "FormItemContext", "getFieldState", "formState", "useFormContext", "fieldState", "id", "FormItem", "ref", "className", "cn", "FormLabel", "error", "formItemId", "Label", "FormControl", "formDescriptionId", "formMessageId", "SlotPrimitive", "FormDescription", "FormMessage", "body"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as b}from"./chunk-WIFBPNRH.js";import{a as o,c as r}from"./chunk-WHECA25N.js";import*as s from"react";import{jsx as T}from"react/jsx-runtime";var m=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("div",{className:"relative w-full overflow-auto",children:T("table",o({ref:l,className:b("w-full caption-bottom text-sm",t)},a))})});m.displayName="Table";var d=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("thead",o({ref:l,className:b("[&_tr]:border-b",t)},a))});d.displayName="TableHeader";var n=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("tbody",o({ref:l,className:b("[&_tr:last-child]:border-0",t)},a))});n.displayName="TableBody";var i=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("tfoot",o({ref:l,className:b("border-t bg-muted/50 font-medium [&>tr]:last:border-b-0",t)},a))});i.displayName="TableFooter";var f=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("tr",o({ref:l,className:b("border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted",t)},a))});f.displayName="TableRow";var R=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("th",o({ref:l,className:b("h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t)},a))});R.displayName="TableHead";var H=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("td",o({ref:l,className:b("p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t)},a))});H.displayName="TableCell";var L=s.forwardRef((c,l)=>{var e=c,{className:t}=e,a=r(e,["className"]);return T("caption",o({ref:l,className:b("mt-4 text-sm text-muted-foreground",t)},a))});L.displayName="TableCaption";export{m as a,d as b,n as c,i as d,f as e,R as f,H as g,L as h};
|
|
2
|
+
//# sourceMappingURL=chunk-DCPZZOJQ.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/table/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react'\n\nimport { cn } from '@/lib/utils'\n\nconst Table = React.forwardRef<HTMLTableElement, React.HTMLAttributes<HTMLTableElement>>(\n ({ className, ...props }, ref) => (\n <div className=\"relative w-full overflow-auto\">\n <table ref={ref} className={cn('w-full caption-bottom text-sm', className)} {...props} />\n </div>\n ),\n)\nTable.displayName = 'Table'\n\nconst TableHeader = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead ref={ref} className={cn('[&_tr]:border-b', className)} {...props} />\n))\nTableHeader.displayName = 'TableHeader'\n\nconst TableBody = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody ref={ref} className={cn('[&_tr:last-child]:border-0', className)} {...props} />\n))\nTableBody.displayName = 'TableBody'\n\nconst TableFooter = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tfoot\n ref={ref}\n className={cn('border-t bg-muted/50 font-medium [&>tr]:last:border-b-0', className)}\n {...props}\n />\n))\nTableFooter.displayName = 'TableFooter'\n\nconst TableRow = React.forwardRef<HTMLTableRowElement, React.HTMLAttributes<HTMLTableRowElement>>(\n ({ className, ...props }, ref) => (\n <tr\n ref={ref}\n className={cn(\n 'border-b transition-colors hover:bg-muted/50 data-[state=selected]:bg-muted',\n className,\n )}\n {...props}\n />\n ),\n)\nTableRow.displayName = 'TableRow'\n\nconst TableHead = React.forwardRef<\n HTMLTableCellElement,\n React.ThHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <th\n ref={ref}\n className={cn(\n 'h-10 px-2 text-left align-middle font-medium text-muted-foreground [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n))\nTableHead.displayName = 'TableHead'\n\nconst TableCell = React.forwardRef<\n HTMLTableCellElement,\n React.TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td\n ref={ref}\n className={cn(\n 'p-2 align-middle [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]',\n className,\n )}\n {...props}\n />\n))\nTableCell.displayName = 'TableCell'\n\nconst TableCaption = React.forwardRef<\n HTMLTableCaptionElement,\n React.HTMLAttributes<HTMLTableCaptionElement>\n>(({ className, ...props }, ref) => (\n <caption ref={ref} className={cn('mt-4 text-sm text-muted-foreground', className)} {...props} />\n))\nTableCaption.displayName = 'TableCaption'\n\nexport { Table, TableHeader, TableBody, TableFooter, TableHead, TableRow, TableCell, TableCaption }\n"],
|
|
5
|
+
"mappings": "uFAAA,UAAYA,MAAW,QAOjB,cAAAC,MAAA,oBAHN,IAAMC,EAAc,aAClB,CAACC,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CALL,EAKGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACD,OAAAJ,EAAC,OAAI,UAAU,gCACb,SAAAA,EAAC,QAAAQ,EAAA,CAAM,IAAKL,EAAK,UAAWM,EAAG,gCAAiCJ,CAAS,GAAOC,EAAO,EACzF,EAEJ,EACAL,EAAM,YAAc,QAEpB,IAAMS,EAAoB,aAGxB,CAACR,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAhBL,EAgBGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,QAAAQ,EAAA,CAAM,IAAKL,EAAK,UAAWM,EAAG,kBAAmBJ,CAAS,GAAOC,EAAO,EAC1E,EACDI,EAAY,YAAc,cAE1B,IAAMC,EAAkB,aAGtB,CAACT,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAxBL,EAwBGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,QAAAQ,EAAA,CAAM,IAAKL,EAAK,UAAWM,EAAG,6BAA8BJ,CAAS,GAAOC,EAAO,EACrF,EACDK,EAAU,YAAc,YAExB,IAAMC,EAAoB,aAGxB,CAACV,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAhCL,EAgCGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,QAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EAAG,0DAA2DJ,CAAS,GAC9EC,EACN,EACD,EACDM,EAAY,YAAc,cAE1B,IAAMC,EAAiB,aACrB,CAACX,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CA1CL,EA0CGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACD,OAAAJ,EAAC,KAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EACT,8EACAJ,CACF,GACIC,EACN,EAEJ,EACAO,EAAS,YAAc,WAEvB,IAAMC,EAAkB,aAGtB,CAACZ,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CA1DL,EA0DGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,KAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EACT,yIACAJ,CACF,GACIC,EACN,EACD,EACDQ,EAAU,YAAc,YAExB,IAAMC,EAAkB,aAGtB,CAACb,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAzEL,EAyEGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,KAAAQ,EAAA,CACC,IAAKL,EACL,UAAWM,EACT,uFACAJ,CACF,GACIC,EACN,EACD,EACDS,EAAU,YAAc,YAExB,IAAMC,EAAqB,aAGzB,CAACd,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAxFL,EAwFGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAAC,UAAAQ,EAAA,CAAQ,IAAKL,EAAK,UAAWM,EAAG,qCAAsCJ,CAAS,GAAOC,EAAO,EAC/F,EACDU,EAAa,YAAc",
|
|
6
|
+
"names": ["React", "jsx", "Table", "_a", "ref", "_b", "className", "props", "__objRest", "__spreadValues", "cn", "TableHeader", "TableBody", "TableFooter", "TableRow", "TableHead", "TableCell", "TableCaption"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as f}from"./chunk-WIFBPNRH.js";import{a as l,c as i}from"./chunk-WHECA25N.js";import*as m from"react";import{Avatar as a}from"radix-ui";import{jsx as c}from"react/jsx-runtime";var p=m.forwardRef((s,r)=>{var e=s,{className:t}=e,o=i(e,["className"]);return c(a.Root,l({ref:r,className:f("relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full",t)},o))});p.displayName=a.Root.displayName;var R=m.forwardRef((s,r)=>{var e=s,{className:t}=e,o=i(e,["className"]);return c(a.Image,l({ref:r,className:f("aspect-square h-full w-full",t)},o))});R.displayName=a.Image.displayName;var v=m.forwardRef((s,r)=>{var e=s,{className:t}=e,o=i(e,["className"]);return c(a.Fallback,l({ref:r,className:f("flex h-full w-full items-center justify-center rounded-full bg-muted",t)},o))});v.displayName=a.Fallback.displayName;export{p as a,R as b,v as c};
|
|
2
|
+
//# sourceMappingURL=chunk-FKH5WAC7.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/avatar/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { Avatar as AvatarPrimitive } from \"radix-ui\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Avatar = React.forwardRef<\n React.ElementRef<typeof AvatarPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Root>\n>(({ className, ...props }, ref) => (\n <AvatarPrimitive.Root\n ref={ref}\n className={cn(\n \"relative flex h-10 w-10 shrink-0 overflow-hidden rounded-full\",\n className,\n )}\n {...props}\n />\n));\nAvatar.displayName = AvatarPrimitive.Root.displayName;\n\nconst AvatarImage = React.forwardRef<\n React.ElementRef<typeof AvatarPrimitive.Image>,\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Image>\n>(({ className, ...props }, ref) => (\n <AvatarPrimitive.Image\n ref={ref}\n className={cn(\"aspect-square h-full w-full\", className)}\n {...props}\n />\n));\nAvatarImage.displayName = AvatarPrimitive.Image.displayName;\n\nconst AvatarFallback = React.forwardRef<\n React.ElementRef<typeof AvatarPrimitive.Fallback>,\n React.ComponentPropsWithoutRef<typeof AvatarPrimitive.Fallback>\n>(({ className, ...props }, ref) => (\n <AvatarPrimitive.Fallback\n ref={ref}\n className={cn(\n \"flex h-full w-full items-center justify-center rounded-full bg-muted\",\n className,\n )}\n {...props}\n />\n));\nAvatarFallback.displayName = AvatarPrimitive.Fallback.displayName;\n\nexport { Avatar, AvatarImage, AvatarFallback };\n"],
|
|
5
|
+
"mappings": "uFAAA,UAAYA,MAAW,QACvB,OAAS,UAAUC,MAAuB,WAQxC,cAAAC,MAAA,oBAJF,IAAMC,EAAe,aAGnB,CAACC,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CARL,EAQGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAACQ,EAAgB,KAAhBC,EAAA,CACC,IAAKN,EACL,UAAWO,EACT,gEACAL,CACF,GACIC,EACN,EACD,EACDL,EAAO,YAAcO,EAAgB,KAAK,YAE1C,IAAMG,EAAoB,aAGxB,CAACT,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAvBL,EAuBGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAACQ,EAAgB,MAAhBC,EAAA,CACC,IAAKN,EACL,UAAWO,EAAG,8BAA+BL,CAAS,GAClDC,EACN,EACD,EACDK,EAAY,YAAcH,EAAgB,MAAM,YAEhD,IAAMI,EAAuB,aAG3B,CAACV,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAnCL,EAmCGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OAAAJ,EAACQ,EAAgB,SAAhBC,EAAA,CACC,IAAKN,EACL,UAAWO,EACT,uEACAL,CACF,GACIC,EACN,EACD,EACDM,EAAe,YAAcJ,EAAgB,SAAS",
|
|
6
|
+
"names": ["React", "AvatarPrimitive", "jsx", "Avatar", "_a", "ref", "_b", "className", "props", "__objRest", "AvatarPrimitive", "__spreadValues", "cn", "AvatarImage", "AvatarFallback"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as g}from"./chunk-6MI7ACXZ.js";import{b as c}from"./chunk-BF3VTYEM.js";import{a as m}from"./chunk-NMUGPQJR.js";import{a as s}from"./chunk-WIFBPNRH.js";import{a as o,c as e}from"./chunk-WHECA25N.js";import{cva as f}from"class-variance-authority";import{jsx as i}from"react/jsx-runtime";function w(r){var t=r,{className:n}=t,a=e(t,["className"]);return i("div",o({"data-slot":"input-group",role:"group",className:s("group/input-group shadow-xs relative flex w-full items-center rounded-md border border-input outline-none transition-[color,box-shadow] dark:bg-input/30","h-9 min-w-0 has-[>textarea]:h-auto","has-[>[data-align=inline-start]]:[&>input]:pl-2","has-[>[data-align=inline-end]]:[&>input]:pr-2","has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3","has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3","has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50","has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40",n)},a))}var b=f("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]","inline-end":"order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]","block-start":"order-first w-full justify-start px-3 pt-3 group-has-[>input]/input-group:pt-2.5 [.border-b]:pb-3","block-end":"order-last w-full justify-start px-3 pb-3 group-has-[>input]/input-group:pb-2.5 [.border-t]:pt-3"}},defaultVariants:{align:"inline-start"}});function G(t){var u=t,{className:n,align:a="inline-start"}=u,r=e(u,["className","align"]);return i("div",o({role:"group","data-slot":"input-group-addon","data-align":a,className:s(b({align:a}),n),onClick:l=>{var p,d;l.target.closest("button")||(d=(p=l.currentTarget.parentElement)==null?void 0:p.querySelector("input"))==null||d.focus()}},r))}var h=f("flex items-center gap-2 text-sm shadow-none",{variants:{size:{xs:"h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-2 has-[>svg]:px-2 [&>svg:not([class*='size-'])]:size-3.5",sm:"h-8 gap-1.5 rounded-md px-2.5 has-[>svg]:px-2.5","icon-xs":"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0","icon-sm":"size-8 p-0 has-[>svg]:p-0"}},defaultVariants:{size:"xs"}});function I(l){var p=l,{className:n,type:a="button",variant:r="ghost",size:t}=p,u=e(p,["className","type","variant","size"]);return i(c,o({type:a,variant:r,className:s(h({size:t}),n)},u))}function P(r){var t=r,{className:n}=t,a=e(t,["className"]);return i("span",o({className:s("flex items-center gap-2 text-sm text-muted-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none",n)},a))}function C(r){var t=r,{className:n}=t,a=e(t,["className"]);return i(g,o({"data-slot":"input-group-control",className:s("h-full flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 focus-visible:ring-offset-0 dark:bg-transparent",n)},a))}function R(r){var t=r,{className:n}=t,a=e(t,["className"]);return i(m,o({"data-slot":"input-group-control",className:s("flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent",n)},a))}export{w as a,G as b,I as c,P as d,C as e,R as f};
|
|
2
|
+
//# sourceMappingURL=chunk-FUXRPZVU.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/input-group/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Button } from \"@/components/button\";\nimport { Input } from \"@/components/input\";\nimport { Textarea } from \"@/components/text-area\";\n\nfunction InputGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"input-group\"\n role=\"group\"\n className={cn(\n \"group/input-group shadow-xs relative flex w-full items-center rounded-md border border-input outline-none transition-[color,box-shadow] dark:bg-input/30\",\n \"h-9 min-w-0 has-[>textarea]:h-auto\",\n\n // Variants based on alignment.\n \"has-[>[data-align=inline-start]]:[&>input]:pl-2\",\n \"has-[>[data-align=inline-end]]:[&>input]:pr-2\",\n \"has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>[data-align=block-start]]:[&>input]:pb-3\",\n \"has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-end]]:[&>input]:pt-3\",\n\n // Focus state.\n \"has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-[3px] has-[[data-slot=input-group-control]:focus-visible]:ring-ring/50\",\n\n // Error state.\n \"has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-destructive/20 dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40\",\n\n className,\n )}\n {...props}\n />\n );\n}\n\nconst inputGroupAddonVariants = cva(\n \"flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 [&>kbd]:rounded-[calc(var(--radius)-5px)] [&>svg:not([class*='size-'])]:size-4\",\n {\n variants: {\n align: {\n \"inline-start\":\n \"order-first pl-3 has-[>button]:ml-[-0.45rem] has-[>kbd]:ml-[-0.35rem]\",\n \"inline-end\":\n \"order-last pr-3 has-[>button]:mr-[-0.45rem] has-[>kbd]:mr-[-0.35rem]\",\n \"block-start\":\n \"order-first w-full justify-start px-3 pt-3 group-has-[>input]/input-group:pt-2.5 [.border-b]:pb-3\",\n \"block-end\":\n \"order-last w-full justify-start px-3 pb-3 group-has-[>input]/input-group:pb-2.5 [.border-t]:pt-3\",\n },\n },\n defaultVariants: {\n align: \"inline-start\",\n },\n },\n);\n\nfunction InputGroupAddon({\n className,\n align = \"inline-start\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof inputGroupAddonVariants>) {\n return (\n <div\n role=\"group\"\n data-slot=\"input-group-addon\"\n data-align={align}\n className={cn(inputGroupAddonVariants({ align }), className)}\n onClick={(e) => {\n if ((e.target as HTMLElement).closest(\"button\")) {\n return;\n }\n e.currentTarget.parentElement?.querySelector(\"input\")?.focus();\n }}\n {...props}\n />\n );\n}\n\nconst inputGroupButtonVariants = cva(\n \"flex items-center gap-2 text-sm shadow-none\",\n {\n variants: {\n size: {\n xs: \"h-6 gap-1 rounded-[calc(var(--radius)-5px)] px-2 has-[>svg]:px-2 [&>svg:not([class*='size-'])]:size-3.5\",\n sm: \"h-8 gap-1.5 rounded-md px-2.5 has-[>svg]:px-2.5\",\n \"icon-xs\":\n \"size-6 rounded-[calc(var(--radius)-5px)] p-0 has-[>svg]:p-0\",\n \"icon-sm\": \"size-8 p-0 has-[>svg]:p-0\",\n },\n },\n defaultVariants: {\n size: \"xs\",\n },\n },\n);\n\nfunction InputGroupButton({\n className,\n type = \"button\",\n variant = \"ghost\",\n size,\n ...props\n}: Omit<React.ComponentProps<typeof Button>, \"size\"> & {\n size?: \"xs\" | \"sm\" | \"icon-xs\" | \"icon-sm\";\n}) {\n return (\n <Button\n type={type}\n variant={variant}\n className={cn(inputGroupButtonVariants({ size }), className)}\n {...props}\n />\n );\n}\n\nfunction InputGroupText({ className, ...props }: React.ComponentProps<\"span\">) {\n return (\n <span\n className={cn(\n \"flex items-center gap-2 text-sm text-muted-foreground [&_svg:not([class*='size-'])]:size-4 [&_svg]:pointer-events-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction InputGroupInput({\n className,\n ...props\n}: React.ComponentProps<\"input\">) {\n return (\n <Input\n data-slot=\"input-group-control\"\n className={cn(\n \"h-full flex-1 rounded-none border-0 bg-transparent shadow-none focus-visible:ring-0 focus-visible:ring-offset-0 dark:bg-transparent\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction InputGroupTextarea({\n className,\n ...props\n}: React.ComponentProps<\"textarea\">) {\n return (\n <Textarea\n data-slot=\"input-group-control\"\n className={cn(\n \"flex-1 resize-none rounded-none border-0 bg-transparent py-3 shadow-none focus-visible:ring-0 dark:bg-transparent\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n InputGroup,\n InputGroupAddon,\n InputGroupButton,\n InputGroupText,\n InputGroupInput,\n InputGroupTextarea,\n};\n"],
|
|
5
|
+
"mappings": "+MACA,OAAS,OAAAA,MAA8B,2BASnC,cAAAC,MAAA,oBAFJ,SAASC,EAAWC,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CARtB,EAQoBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACpB,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,cACV,KAAK,QACL,UAAWC,EACT,2JACA,qCAGA,kDACA,gDACA,iIACA,2HAGA,kMAGA,iLAEAJ,CACF,GACIC,EACN,CAEJ,CAEA,IAAMI,EAA0BC,EAC9B,0PACA,CACE,SAAU,CACR,MAAO,CACL,eACE,wEACF,aACE,uEACF,cACE,oGACF,YACE,kGACJ,CACF,EACA,gBAAiB,CACf,MAAO,cACT,CACF,CACF,EAEA,SAASC,EAAgBT,EAIsD,CAJtD,IAAAC,EAAAD,EACvB,WAAAE,EACA,MAAAQ,EAAQ,cA3DV,EAyDyBT,EAGpBE,EAAAC,EAHoBH,EAGpB,CAFH,YACA,UAGA,OACEH,EAAC,MAAAO,EAAA,CACC,KAAK,QACL,YAAU,oBACV,aAAYK,EACZ,UAAWJ,EAAGC,EAAwB,CAAE,MAAAG,CAAM,CAAC,EAAGR,CAAS,EAC3D,QAAUS,GAAM,CApEtB,IAAAX,EAAAC,EAqEaU,EAAE,OAAuB,QAAQ,QAAQ,IAG9CV,GAAAD,EAAAW,EAAE,cAAc,gBAAhB,YAAAX,EAA+B,cAAc,WAA7C,MAAAC,EAAuD,OACzD,GACIE,EACN,CAEJ,CAEA,IAAMS,EAA2BJ,EAC/B,8CACA,CACE,SAAU,CACR,KAAM,CACJ,GAAI,0GACJ,GAAI,kDACJ,UACE,8DACF,UAAW,2BACb,CACF,EACA,gBAAiB,CACf,KAAM,IACR,CACF,CACF,EAEA,SAASK,EAAiBb,EAQvB,CARuB,IAAAC,EAAAD,EACxB,WAAAE,EACA,KAAAY,EAAO,SACP,QAAAC,EAAU,QACV,KAAAC,CArGF,EAiG0Bf,EAKrBE,EAAAC,EALqBH,EAKrB,CAJH,YACA,OACA,UACA,SAKA,OACEH,EAACmB,EAAAZ,EAAA,CACC,KAAMS,EACN,QAASC,EACT,UAAWT,EAAGM,EAAyB,CAAE,KAAAI,CAAK,CAAC,EAAGd,CAAS,GACvDC,EACN,CAEJ,CAEA,SAASe,EAAelB,EAAuD,CAAvD,IAAAC,EAAAD,EAAE,WAAAE,CApH1B,EAoHwBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACxB,OACEH,EAAC,OAAAO,EAAA,CACC,UAAWC,EACT,yHACAJ,CACF,GACIC,EACN,CAEJ,CAEA,SAASgB,EAAgBnB,EAGS,CAHT,IAAAC,EAAAD,EACvB,WAAAE,CAjIF,EAgIyBD,EAEpBE,EAAAC,EAFoBH,EAEpB,CADH,cAGA,OACEH,EAACsB,EAAAf,EAAA,CACC,YAAU,sBACV,UAAWC,EACT,sIACAJ,CACF,GACIC,EACN,CAEJ,CAEA,SAASkB,EAAmBrB,EAGS,CAHT,IAAAC,EAAAD,EAC1B,WAAAE,CAjJF,EAgJ4BD,EAEvBE,EAAAC,EAFuBH,EAEvB,CADH,cAGA,OACEH,EAACwB,EAAAjB,EAAA,CACC,YAAU,sBACV,UAAWC,EACT,oHACAJ,CACF,GACIC,EACN,CAEJ",
|
|
6
|
+
"names": ["cva", "jsx", "InputGroup", "_a", "_b", "className", "props", "__objRest", "__spreadValues", "cn", "inputGroupAddonVariants", "cva", "InputGroupAddon", "align", "e", "inputGroupButtonVariants", "InputGroupButton", "type", "variant", "size", "Button", "InputGroupText", "InputGroupInput", "Input", "InputGroupTextarea", "Textarea"]
|
|
7
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
//# sourceMappingURL=chunk-GATZOHQ6.js.map
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as n}from"./chunk-WIFBPNRH.js";import{a,c as r}from"./chunk-WHECA25N.js";import{Loader2Icon as i}from"lucide-react";import{jsx as m}from"react/jsx-runtime";function f(p){var o=p,{className:e}=o,t=r(o,["className"]);return m(i,a({role:"status","aria-label":"Loading",className:n("size-4 animate-spin",e)},t))}export{f as a};
|
|
2
|
+
//# sourceMappingURL=chunk-GTEOHHVD.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/spinner/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { Loader2Icon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nfunction Spinner({ className, ...props }: React.ComponentProps<\"svg\">) {\n return (\n <Loader2Icon\n role=\"status\"\n aria-label=\"Loading\"\n className={cn(\"size-4 animate-spin\", className)}\n {...props}\n />\n );\n}\n\nexport { Spinner };\n"],
|
|
5
|
+
"mappings": "kFACA,OAAS,eAAAA,MAAmB,eAMxB,cAAAC,MAAA,oBAFJ,SAASC,EAAQC,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CALnB,EAKiBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACjB,OACEH,EAACO,EAAAC,EAAA,CACC,KAAK,SACL,aAAW,UACX,UAAWC,EAAG,sBAAuBL,CAAS,GAC1CC,EACN,CAEJ",
|
|
6
|
+
"names": ["Loader2Icon", "jsx", "Spinner", "_a", "_b", "className", "props", "__objRest", "Loader2Icon", "__spreadValues", "cn"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as s}from"./chunk-WIFBPNRH.js";import{a as t,c as i}from"./chunk-WHECA25N.js";import*as n from"react";import{unstable_PasswordToggleField as o}from"radix-ui";import{EyeOffIcon as f,EyeIcon as g}from"lucide-react";import{jsx as e,jsxs as u}from"react/jsx-runtime";var p=n.forwardRef((c,d)=>{var r=c,{className:l}=r,a=i(r,["className"]);return e(o.Root,{children:u("div",{className:"relative",children:[e(o.Input,t({ref:d,className:s("flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 pr-10 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",l)},a)),e(o.Toggle,{className:s("absolute right-0 top-0 inline-flex h-10 items-center justify-center px-3 py-2 hover:bg-transparent","text-muted-foreground transition-colors hover:text-foreground","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2","disabled:pointer-events-none disabled:opacity-50"),children:e(o.Icon,{visible:e(g,{className:"h-4 w-4"}),hidden:e(f,{className:"h-4 w-4"})})})]})})});p.displayName="InputPassword";export{p as a};
|
|
2
|
+
//# sourceMappingURL=chunk-IM2PR6JL.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/input-password/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { unstable_PasswordToggleField as PasswordToggleField } from \"radix-ui\";\nimport { EyeOffIcon, EyeIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\n\nexport type InputPasswordProps = {\n className?: string;\n} & React.ComponentPropsWithoutRef<typeof PasswordToggleField.Input>;\n\nconst InputPassword = React.forwardRef<\n React.ElementRef<typeof PasswordToggleField.Input>,\n InputPasswordProps\n>(({ className, ...props }, ref) => {\n return (\n <PasswordToggleField.Root>\n <div className=\"relative\">\n <PasswordToggleField.Input\n ref={ref}\n className={cn(\n \"flex h-10 w-full rounded-md border border-input bg-background px-3 py-2 pr-10 text-sm ring-offset-background file:border-0 file:bg-transparent file:text-sm file:font-medium placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n <PasswordToggleField.Toggle\n className={cn(\n \"absolute right-0 top-0 inline-flex h-10 items-center justify-center px-3 py-2 hover:bg-transparent\",\n \"text-muted-foreground transition-colors hover:text-foreground\",\n \"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n \"disabled:pointer-events-none disabled:opacity-50\",\n )}\n >\n <PasswordToggleField.Icon\n visible={<EyeIcon className=\"h-4 w-4\" />}\n hidden={<EyeOffIcon className=\"h-4 w-4\" />}\n />\n </PasswordToggleField.Toggle>\n </div>\n </PasswordToggleField.Root>\n );\n});\nInputPassword.displayName = \"InputPassword\";\n\nexport { InputPassword };\n"],
|
|
5
|
+
"mappings": "uFAAA,UAAYA,MAAW,QACvB,OAAS,gCAAgCC,MAA2B,WACpE,OAAS,cAAAC,EAAY,WAAAC,MAAe,eAc9B,OACE,OAAAC,EADF,QAAAC,MAAA,oBANN,IAAMC,EAAsB,aAG1B,CAACC,EAAyBC,IAAQ,CAAjC,IAAAC,EAAAF,EAAE,WAAAG,CAbL,EAaGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OACEL,EAACS,EAAoB,KAApB,CACC,SAAAR,EAAC,OAAI,UAAU,WACb,UAAAD,EAACS,EAAoB,MAApBC,EAAA,CACC,IAAKN,EACL,UAAWO,EACT,qWACAL,CACF,GACIC,EACN,EACAP,EAACS,EAAoB,OAApB,CACC,UAAWE,EACT,qGACA,gEACA,sGACA,kDACF,EAEA,SAAAX,EAACS,EAAoB,KAApB,CACC,QAAST,EAACY,EAAA,CAAQ,UAAU,UAAU,EACtC,OAAQZ,EAACa,EAAA,CAAW,UAAU,UAAU,EAC1C,EACF,GACF,EACF,CAEJ,CAAC,EACDX,EAAc,YAAc",
|
|
6
|
+
"names": ["React", "PasswordToggleField", "EyeOffIcon", "EyeIcon", "jsx", "jsxs", "InputPassword", "_a", "ref", "_b", "className", "props", "__objRest", "PasswordToggleField", "__spreadValues", "cn", "EyeIcon", "EyeOffIcon"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as s}from"./chunk-WIFBPNRH.js";import{a as l,c as o}from"./chunk-WHECA25N.js";import*as i from"react";import{cva as g}from"class-variance-authority";import{jsx as n}from"react/jsx-runtime";var b=g("relative w-full rounded-lg border px-4 py-3 text-sm [&>svg]:absolute [&>svg]:left-4 [&>svg]:text-foreground [&>svg~*]:pl-7",{variants:{variant:{default:"bg-background text-foreground",destructive:"border-destructive/50 bg-rose-50 text-destructive dark:border-destructive [&>svg]:text-destructive",warning:"border-yellow-500/50 bg-yellow-50 text-yellow-800 dark:border-yellow-500 dark:bg-yellow-950/30 dark:text-yellow-200 [&>svg]:text-yellow-600 dark:[&>svg]:text-yellow-400",info:"border-blue-500/50 bg-blue-50 text-blue-800 dark:border-blue-500 dark:bg-blue-950/30 dark:text-blue-200 [&>svg]:text-blue-600 dark:[&>svg]:text-blue-400"}},defaultVariants:{variant:"default"}}),c=i.forwardRef((e,d)=>{var p=e,{className:t,variant:r}=p,a=o(p,["className","variant"]);return n("div",l({ref:d,role:"alert",className:s(b({variant:r}),t)},a))});c.displayName="Alert";var u=i.forwardRef((d,a)=>{var e=d,{className:t}=e,r=o(e,["className"]);return n("h5",l({ref:a,className:s("mb-1 font-medium leading-none tracking-tight",t)},r))});u.displayName="AlertTitle";var v=i.forwardRef((d,a)=>{var e=d,{className:t}=e,r=o(e,["className"]);return n("div",l({ref:a,className:s("text-sm [&_p]:leading-relaxed",t)},r))});v.displayName="AlertDescription";export{c as a,u as b,v as c};
|
|
2
|
+
//# sourceMappingURL=chunk-INK2D47B.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/alert/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst alertVariants = cva(\n \"relative w-full rounded-lg border px-4 py-3 text-sm [&>svg]:absolute [&>svg]:left-4 [&>svg]:text-foreground [&>svg~*]:pl-7\",\n {\n variants: {\n variant: {\n default: \"bg-background text-foreground\",\n destructive:\n \"border-destructive/50 bg-rose-50 text-destructive dark:border-destructive [&>svg]:text-destructive\",\n warning:\n \"border-yellow-500/50 bg-yellow-50 text-yellow-800 dark:border-yellow-500 dark:bg-yellow-950/30 dark:text-yellow-200 [&>svg]:text-yellow-600 dark:[&>svg]:text-yellow-400\",\n info: \"border-blue-500/50 bg-blue-50 text-blue-800 dark:border-blue-500 dark:bg-blue-950/30 dark:text-blue-200 [&>svg]:text-blue-600 dark:[&>svg]:text-blue-400\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nexport type AlertProps = React.HTMLAttributes<HTMLDivElement> &\n VariantProps<typeof alertVariants>;\nexport type AlertTitleProps = React.HTMLAttributes<HTMLHeadingElement>;\nexport type AlertDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;\n\nconst Alert = React.forwardRef<HTMLDivElement, AlertProps>(\n ({ className, variant, ...props }, ref) => (\n <div\n ref={ref}\n role=\"alert\"\n className={cn(alertVariants({ variant }), className)}\n {...props}\n />\n ),\n);\nAlert.displayName = \"Alert\";\n\nconst AlertTitle = React.forwardRef<HTMLParagraphElement, AlertTitleProps>(\n ({ className, ...props }, ref) => (\n <h5\n ref={ref}\n className={cn(\"mb-1 font-medium leading-none tracking-tight\", className)}\n {...props}\n />\n ),\n);\nAlertTitle.displayName = \"AlertTitle\";\n\nconst AlertDescription = React.forwardRef<\n HTMLParagraphElement,\n AlertDescriptionProps\n>(({ className, ...props }, ref) => (\n <div\n ref={ref}\n className={cn(\"text-sm [&_p]:leading-relaxed\", className)}\n {...props}\n />\n));\nAlertDescription.displayName = \"AlertDescription\";\n\nexport { Alert, AlertTitle, AlertDescription };\n"],
|
|
5
|
+
"mappings": "uFAAA,UAAYA,MAAW,QACvB,OAAS,OAAAC,MAA8B,2BA8BnC,cAAAC,MAAA,oBA1BJ,IAAMC,EAAgBC,EACpB,6HACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,gCACT,YACE,qGACF,QACE,2KACF,KAAM,0JACR,CACF,EACA,gBAAiB,CACf,QAAS,SACX,CACF,CACF,EAOMC,EAAc,aAClB,CAACC,EAAkCC,IAAK,CAAvC,IAAAC,EAAAF,EAAE,WAAAG,EAAW,QAAAC,CA9BhB,EA8BGF,EAAyBG,EAAAC,EAAzBJ,EAAyB,CAAvB,YAAW,YACZ,OAAAN,EAAC,MAAAW,EAAA,CACC,IAAKN,EACL,KAAK,QACL,UAAWO,EAAGX,EAAc,CAAE,QAAAO,CAAQ,CAAC,EAAGD,CAAS,GAC/CE,EACN,EAEJ,EACAN,EAAM,YAAc,QAEpB,IAAMU,EAAmB,aACvB,CAACT,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CA1CL,EA0CGD,EAAgBG,EAAAC,EAAhBJ,EAAgB,CAAd,cACD,OAAAN,EAAC,KAAAW,EAAA,CACC,IAAKN,EACL,UAAWO,EAAG,+CAAgDL,CAAS,GACnEE,EACN,EAEJ,EACAI,EAAW,YAAc,aAEzB,IAAMC,EAAyB,aAG7B,CAACV,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CAvDL,EAuDGD,EAAgBG,EAAAC,EAAhBJ,EAAgB,CAAd,cACH,OAAAN,EAAC,MAAAW,EAAA,CACC,IAAKN,EACL,UAAWO,EAAG,gCAAiCL,CAAS,GACpDE,EACN,EACD,EACDK,EAAiB,YAAc",
|
|
6
|
+
"names": ["React", "cva", "jsx", "alertVariants", "cva", "Alert", "_a", "ref", "_b", "className", "variant", "props", "__objRest", "__spreadValues", "cn", "AlertTitle", "AlertDescription"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as f,f as l}from"./chunk-2R5NZUY2.js";import{a as p}from"./chunk-WIFBPNRH.js";import{a as n,b as c,c as d}from"./chunk-WHECA25N.js";import*as s from"react";import{Command as m}from"cmdk";import{SearchIcon as R}from"lucide-react";import{jsx as r,jsxs as _}from"react/jsx-runtime";var u=s.forwardRef((i,a)=>{var o=i,{className:e}=o,t=d(o,["className"]);return r(m,n({ref:a,className:p("flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground",e)},t))});u.displayName=m.displayName;var E=a=>{var i=a,{children:e}=i,t=d(i,["children"]);return r(f,c(n({},t),{children:r(l,{className:"overflow-hidden p-0",children:r(u,{className:"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5",children:e})})}))},g=s.forwardRef((i,a)=>{var o=i,{className:e}=o,t=d(o,["className"]);return _("div",{className:"flex items-center border-b px-3","cmdk-input-wrapper":"",children:[r(R,{className:"mr-2 h-4 w-4 shrink-0 opacity-50"}),r(m.Input,n({ref:a,className:p("flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50",e)},t))]})});g.displayName=m.Input.displayName;var y=s.forwardRef((i,a)=>{var o=i,{className:e}=o,t=d(o,["className"]);return r(m.List,n({ref:a,className:p("max-h-[var(--radix-popover-content-available-height,300px)] overflow-y-auto overflow-x-hidden",e)},t))});y.displayName=m.List.displayName;var h=s.forwardRef((e,t)=>r(m.Empty,n({ref:t,className:"py-6 text-center text-sm"},e)));h.displayName=m.Empty.displayName;var v=s.forwardRef((i,a)=>{var o=i,{className:e}=o,t=d(o,["className"]);return r(m.Group,n({ref:a,className:p("overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground",e)},t))});v.displayName=m.Group.displayName;var C=s.forwardRef((i,a)=>{var o=i,{className:e}=o,t=d(o,["className"]);return r(m.Separator,n({ref:a,className:p("-mx-1 h-px bg-border",e)},t))});C.displayName=m.Separator.displayName;var x=s.forwardRef((i,a)=>{var o=i,{className:e}=o,t=d(o,["className"]);return r(m.Item,n({ref:a,className:p("relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",e)},t))});x.displayName=m.Item.displayName;var N=a=>{var i=a,{className:e}=i,t=d(i,["className"]);return r("span",n({className:p("ml-auto text-xs tracking-widest text-muted-foreground",e)},t))};N.displayName="CommandShortcut";export{u as a,E as b,g as c,y as d,h as e,v as f,C as g,x as h,N as i};
|
|
2
|
+
//# sourceMappingURL=chunk-JVQR7SBQ.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/command/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { cn } from \"@/lib/utils\";\nimport { Dialog, DialogContent } from \"@/components/dialog\";\nimport { SearchIcon } from \"lucide-react\";\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n \"flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground\",\n className,\n )}\n {...props}\n />\n));\nCommand.displayName = CommandPrimitive.displayName;\n\nconst CommandDialog = ({\n children,\n ...props\n}: React.ComponentPropsWithoutRef<typeof Dialog>) => {\n return (\n <Dialog {...props}>\n <DialogContent className=\"overflow-hidden p-0\">\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n};\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input>\n>(({ className, ...props }, ref) => (\n <div className=\"flex items-center border-b px-3\" cmdk-input-wrapper=\"\">\n <SearchIcon className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n \"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n {...props}\n />\n </div>\n));\n\nCommandInput.displayName = CommandPrimitive.Input.displayName;\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn(\n \"max-h-[var(--radix-popover-content-available-height,300px)] overflow-y-auto overflow-x-hidden\",\n className,\n )}\n {...props}\n />\n));\n\nCommandList.displayName = CommandPrimitive.List.displayName;\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty\n ref={ref}\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n));\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName;\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n \"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className,\n )}\n {...props}\n />\n));\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName;\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n));\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName;\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default select-none items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-accent data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n className,\n )}\n {...props}\n />\n));\n\nCommandItem.displayName = CommandPrimitive.Item.displayName;\n\nconst CommandShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className,\n )}\n {...props}\n />\n );\n};\nCommandShortcut.displayName = \"CommandShortcut\";\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "CommandPrimitive", "SearchIcon", "jsx", "jsxs", "Command", "_a", "ref", "_b", "className", "props", "__objRest", "CommandPrimitive", "__spreadValues", "cn", "CommandDialog", "children", "Dialog", "__spreadProps", "DialogContent", "CommandInput", "SearchIcon", "CommandList", "CommandEmpty", "CommandGroup", "CommandSeparator", "CommandItem", "CommandShortcut"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as d}from"./chunk-GTEOHHVD.js";import{a as n}from"./chunk-WIFBPNRH.js";import{a as s,b as l,c as r}from"./chunk-WHECA25N.js";import{jsx as i,jsxs as m}from"react/jsx-runtime";function v(x){var o=x,{className:f,variant:e="fill",title:a,description:t,spinnerClassName:p,style:g}=o,c=r(o,["className","variant","title","description","spinnerClassName","style"]);return m("div",l(s({"data-slot":"loading-page","data-variant":e,style:s({animationDelay:"300ms",animationFillMode:"both"},g),className:n("duration-300 animate-in fade-in zoom-in-95","flex flex-col items-center justify-center gap-3 text-center",e==="fill"&&"min-w-0 flex-1",e==="screen"&&"fixed inset-0 z-50 bg-background",f)},c),{children:[i(d,{className:n("size-6",p)}),(a||t)&&m("div",{className:"flex flex-col gap-1",children:[a&&i("p",{className:"text-sm font-medium tracking-tight",children:a}),t&&i("p",{className:"text-xs/relaxed text-muted-foreground",children:t})]})]}))}export{v as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KCQQSXMU.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/loading-page/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Spinner } from \"@/components/spinner\";\n\ntype LoadingPageProps = React.ComponentProps<\"div\"> & {\n /**\n * \"fill\" \u2014 flex-1, fills available space like Empty.\n * \"screen\" \u2014 fixed inset-0 overlay covering the full viewport (z-50, bg-background).\n * @default \"fill\"\n */\n variant?: \"fill\" | \"screen\";\n /** Optional label rendered below the spinner. */\n title?: string;\n /** Optional supporting text rendered below the title. */\n description?: string;\n /** Extra class names forwarded to the Spinner. */\n spinnerClassName?: string;\n};\n\nfunction LoadingPage({\n className,\n variant = \"fill\",\n title,\n description,\n spinnerClassName,\n style,\n ...props\n}: LoadingPageProps) {\n return (\n <div\n data-slot=\"loading-page\"\n data-variant={variant}\n // Fade + subtle scale-up after 300 ms \u2014 invisible before delay so fast\n // loads never flash the loader; eases out so the entrance feels instant.\n style={{ animationDelay: \"300ms\", animationFillMode: \"both\", ...style }}\n className={cn(\n \"duration-300 animate-in fade-in zoom-in-95\",\n \"flex flex-col items-center justify-center gap-3 text-center\",\n variant === \"fill\" && \"min-w-0 flex-1\",\n variant === \"screen\" && \"fixed inset-0 z-50 bg-background\",\n className,\n )}\n {...props}\n >\n <Spinner className={cn(\"size-6\", spinnerClassName)} />\n {(title || description) && (\n <div className=\"flex flex-col gap-1\">\n {title && (\n <p className=\"text-sm font-medium tracking-tight\">{title}</p>\n )}\n {description && (\n <p className=\"text-xs/relaxed text-muted-foreground\">\n {description}\n </p>\n )}\n </div>\n )}\n </div>\n );\n}\n\nexport { LoadingPage };\nexport type { LoadingPageProps };\n"],
|
|
5
|
+
"mappings": "sIA6CM,cAAAA,EAEE,QAAAC,MAFF,oBAzBN,SAASC,EAAYC,EAQA,CARA,IAAAC,EAAAD,EACnB,WAAAE,EACA,QAAAC,EAAU,OACV,MAAAC,EACA,YAAAC,EACA,iBAAAC,EACA,MAAAC,CA1BF,EAoBqBN,EAOhBO,EAAAC,EAPgBR,EAOhB,CANH,YACA,UACA,QACA,cACA,mBACA,UAGA,OACEH,EAAC,MAAAY,EAAAC,EAAA,CACC,YAAU,eACV,eAAcR,EAGd,MAAOQ,EAAA,CAAE,eAAgB,QAAS,kBAAmB,QAAWJ,GAChE,UAAWK,EACT,6CACA,8DACAT,IAAY,QAAU,iBACtBA,IAAY,UAAY,mCACxBD,CACF,GACIM,GAbL,CAeC,UAAAX,EAACgB,EAAA,CAAQ,UAAWD,EAAG,SAAUN,CAAgB,EAAG,GAClDF,GAASC,IACTP,EAAC,OAAI,UAAU,sBACZ,UAAAM,GACCP,EAAC,KAAE,UAAU,qCAAsC,SAAAO,EAAM,EAE1DC,GACCR,EAAC,KAAE,UAAU,wCACV,SAAAQ,EACH,GAEJ,IAEJ,CAEJ",
|
|
6
|
+
"names": ["jsx", "jsxs", "LoadingPage", "_a", "_b", "className", "variant", "title", "description", "spinnerClassName", "style", "props", "__objRest", "__spreadProps", "__spreadValues", "cn", "Spinner"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as c}from"./chunk-WIFBPNRH.js";import{a as f,b,c as d}from"./chunk-WHECA25N.js";import*as e from"react";import{cva as m}from"class-variance-authority";import{Tabs as a}from"radix-ui";import{jsx as p}from"react/jsx-runtime";var V=a.Root,g=m("text-muted-foreground",{variants:{variant:{default:"inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1",underline:"flex h-auto w-full items-center justify-start rounded-none border-b bg-transparent p-0"}},defaultVariants:{variant:"default"}}),v=m("inline-flex items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50",{variants:{variant:{default:"rounded-md px-3 py-1 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow",underline:"rounded-none border-b-2 border-transparent px-3 py-2 data-[state=active]:border-primary data-[state=active]:bg-transparent data-[state=active]:text-primary data-[state=active]:shadow-none"}},defaultVariants:{variant:"default"}}),u=e.createContext({variant:"default"}),y=e.forwardRef((l,s)=>{var o=l,{className:i,variant:t,children:r}=o,n=d(o,["className","variant","children"]);return p(u.Provider,{value:{variant:t},children:p(a.List,b(f({ref:s,className:c(g({variant:t}),i)},n),{children:r}))})});y.displayName=a.List.displayName;var T=e.forwardRef((s,n)=>{var l=s,{className:i,variant:t}=l,r=d(l,["className","variant"]);let o=e.useContext(u);return p(a.Trigger,f({ref:n,className:c(v({variant:t!=null?t:o.variant}),i)},r))});T.displayName=a.Trigger.displayName;var R=e.forwardRef((n,r)=>{var s=n,{className:i}=s,t=d(s,["className"]);return p(a.Content,f({ref:r,className:c("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",i)},t))});R.displayName=a.Content.displayName;export{V as a,g as b,v as c,y as d,T as e,R as f};
|
|
2
|
+
//# sourceMappingURL=chunk-KGEITSDG.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/tabs/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { Tabs as TabsPrimitive } from \"radix-ui\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Tabs = TabsPrimitive.Root;\n\nconst tabsListVariants = cva(\"text-muted-foreground\", {\n variants: {\n variant: {\n default:\n \"inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1\",\n underline:\n \"flex h-auto w-full items-center justify-start rounded-none border-b bg-transparent p-0\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n});\n\nconst tabsTriggerVariants = cva(\n \"inline-flex items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50\",\n {\n variants: {\n variant: {\n default:\n \"rounded-md px-3 py-1 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow\",\n underline:\n \"rounded-none border-b-2 border-transparent px-3 py-2 data-[state=active]:border-primary data-[state=active]:bg-transparent data-[state=active]:text-primary data-[state=active]:shadow-none\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\n// Lets TabsList share its variant with every descendant TabsTrigger, so consumers\n// only set variant once on the list (mirrors ToggleGroup/ToggleGroupItem).\nconst TabsListContext = React.createContext<\n VariantProps<typeof tabsTriggerVariants>\n>({ variant: \"default\" });\n\nconst TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List> &\n VariantProps<typeof tabsListVariants>\n>(({ className, variant, children, ...props }, ref) => (\n <TabsListContext.Provider value={{ variant }}>\n <TabsPrimitive.List\n ref={ref}\n className={cn(tabsListVariants({ variant }), className)}\n {...props}\n >\n {children}\n </TabsPrimitive.List>\n </TabsListContext.Provider>\n));\nTabsList.displayName = TabsPrimitive.List.displayName;\n\nconst TabsTrigger = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger> &\n VariantProps<typeof tabsTriggerVariants>\n>(({ className, variant, ...props }, ref) => {\n const context = React.useContext(TabsListContext);\n\n return (\n <TabsPrimitive.Trigger\n ref={ref}\n className={cn(\n tabsTriggerVariants({ variant: variant ?? context.variant }),\n className,\n )}\n {...props}\n />\n );\n});\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\n\nconst TabsContent = React.forwardRef<\n React.ElementRef<typeof TabsPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitive.Content\n ref={ref}\n className={cn(\n \"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\n className,\n )}\n {...props}\n />\n));\nTabsContent.displayName = TabsPrimitive.Content.displayName;\n\nexport {\n Tabs,\n TabsList,\n TabsTrigger,\n TabsContent,\n tabsListVariants,\n tabsTriggerVariants,\n};\n"],
|
|
5
|
+
"mappings": "yFAAA,UAAYA,MAAW,QACvB,OAAS,OAAAC,MAA8B,2BACvC,OAAS,QAAQC,MAAqB,WAiDlC,cAAAC,MAAA,oBA7CJ,IAAMC,EAAOC,EAAc,KAErBC,EAAmBC,EAAI,wBAAyB,CACpD,SAAU,CACR,QAAS,CACP,QACE,sEACF,UACE,wFACJ,CACF,EACA,gBAAiB,CACf,QAAS,SACX,CACF,CAAC,EAEKC,EAAsBD,EAC1B,2QACA,CACE,SAAU,CACR,QAAS,CACP,QACE,wHACF,UACE,6LACJ,CACF,EACA,gBAAiB,CACf,QAAS,SACX,CACF,CACF,EAIME,EAAwB,gBAE5B,CAAE,QAAS,SAAU,CAAC,EAElBC,EAAiB,aAIrB,CAACC,EAA4CC,IAAK,CAAjD,IAAAC,EAAAF,EAAE,WAAAG,EAAW,QAAAC,EAAS,SAAAC,CAjDzB,EAiDGH,EAAmCI,EAAAC,EAAnCL,EAAmC,CAAjC,YAAW,UAAS,aACvB,OAAAV,EAACM,EAAgB,SAAhB,CAAyB,MAAO,CAAE,QAAAM,CAAQ,EACzC,SAAAZ,EAACE,EAAc,KAAdc,EAAAC,EAAA,CACC,IAAKR,EACL,UAAWS,EAAGf,EAAiB,CAAE,QAAAS,CAAQ,CAAC,EAAGD,CAAS,GAClDG,GAHL,CAKE,SAAAD,GACH,EACF,EACD,EACDN,EAAS,YAAcL,EAAc,KAAK,YAE1C,IAAMiB,EAAoB,aAIxB,CAACX,EAAkCC,IAAQ,CAA1C,IAAAC,EAAAF,EAAE,WAAAG,EAAW,QAAAC,CAlEhB,EAkEGF,EAAyBI,EAAAC,EAAzBL,EAAyB,CAAvB,YAAW,YACd,IAAMU,EAAgB,aAAWd,CAAe,EAEhD,OACEN,EAACE,EAAc,QAAde,EAAA,CACC,IAAKR,EACL,UAAWS,EACTb,EAAoB,CAAE,QAASO,GAAA,KAAAA,EAAWQ,EAAQ,OAAQ,CAAC,EAC3DT,CACF,GACIG,EACN,CAEJ,CAAC,EACDK,EAAY,YAAcjB,EAAc,QAAQ,YAEhD,IAAMmB,EAAoB,aAGxB,CAACb,EAAyBC,IAAK,CAA9B,IAAAC,EAAAF,EAAE,WAAAG,CArFL,EAqFGD,EAAgBI,EAAAC,EAAhBL,EAAgB,CAAd,cACH,OAAAV,EAACE,EAAc,QAAde,EAAA,CACC,IAAKR,EACL,UAAWS,EACT,kIACAP,CACF,GACIG,EACN,EACD,EACDO,EAAY,YAAcnB,EAAc,QAAQ",
|
|
6
|
+
"names": ["React", "cva", "TabsPrimitive", "jsx", "Tabs", "TabsPrimitive", "tabsListVariants", "cva", "tabsTriggerVariants", "TabsListContext", "TabsList", "_a", "ref", "_b", "className", "variant", "children", "props", "__objRest", "__spreadProps", "__spreadValues", "cn", "TabsTrigger", "context", "TabsContent"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as w}from"./chunk-GTEOHHVD.js";import{a as P}from"./chunk-WIFBPNRH.js";import{a as N,b as y,c as U}from"./chunk-WHECA25N.js";import*as l from"react";import{ArrowUpIcon as E,XIcon as M}from"lucide-react";import{jsx as t,jsxs as m}from"react/jsx-runtime";function R(d,s){return s.split(",").map(r=>r.trim().toLowerCase()).some(r=>r.startsWith(".")?d.name.toLowerCase().endsWith(r):r.endsWith("/*")?d.type.startsWith(r.slice(0,-1)):d.type===r)}function H(W){var b=W,{className:d,files:s,onAdd:r,onRemove:z,onReject:o,accept:c="image/jpeg,image/png",maxFiles:i,maxSizeBytes:g,disabled:f,label:D="Choose files or drag them here",hint:k="JPG or PNG \xB7 10MB per file",uploadedLabel:C="Uploaded"}=b,L=U(b,["className","files","onAdd","onRemove","onReject","accept","maxFiles","maxSizeBytes","disabled","label","hint","uploadedLabel"]);let x=l.useRef(null),[A,u]=l.useState(!1),F=i!==void 0&&s.length>=i,p=f||F,h=e=>{let a=[],v=i===void 0?1/0:Math.max(i-s.length,0);for(let n of e)R(n,c)?g!==void 0&&n.size>g?o==null||o(n,"max-size"):v<=0?o==null||o(n,"max-files"):(a.push(n),v-=1):o==null||o(n,"type");a.length&&r(a)},I=e=>{e.preventDefault(),u(!1),!p&&h(Array.from(e.dataTransfer.files))};return m("div",y(N({"data-slot":"photo-upload",className:P("flex w-full flex-col gap-3",d)},L),{children:[m("button",{type:"button",disabled:p,onClick:()=>{var e;return(e=x.current)==null?void 0:e.click()},onDragOver:e=>{e.preventDefault(),p||u(!0)},onDragLeave:()=>u(!1),onDrop:I,"data-dragging":A?"":void 0,className:"flex w-full flex-col items-center justify-center gap-1.5 rounded-lg border-[1.5px] border-dashed border-foreground/15 bg-muted px-4 py-7 text-center outline-none transition-colors hover:bg-muted/70 focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[dragging]:border-surface-color-brand data-[dragging]:bg-surface-color-brand-bland",children:[t("span",{className:"flex size-11 items-center justify-center rounded-full border border-muted-foreground text-muted-foreground",children:t(E,{className:"size-5","aria-hidden":"true"})}),t("span",{className:"text-sm font-medium text-foreground",children:D}),t("span",{className:"text-xs font-medium text-muted-foreground",children:k})]}),t("input",{ref:x,type:"file",accept:c,multiple:i!==1,className:"hidden",tabIndex:-1,"aria-hidden":"true",onChange:e=>{var a;h(Array.from((a=e.target.files)!=null?a:[])),e.target.value=""}}),s.length>0&&t("ul",{className:"flex flex-col gap-3",children:s.map(e=>{var a;return m("li",{"data-status":e.status,className:"flex items-center gap-2 rounded-md border border-foreground/15 bg-background px-3 py-2.5",children:[e.previewUrl?t("img",{src:e.previewUrl,alt:"",className:"size-7 shrink-0 rounded-[6px] border border-foreground/15 object-cover"}):t("span",{className:"size-7 shrink-0 rounded-[6px] border border-foreground/15 bg-muted"}),t("span",{className:"min-w-0 flex-1 truncate text-sm text-foreground",children:e.name}),e.status==="uploading"&&t(w,{className:"size-4 text-muted-foreground"}),e.status==="uploaded"&&t("span",{className:"text-xs font-medium text-content-brand",children:C}),e.status==="error"&&t("span",{className:"text-xs font-medium text-destructive",children:(a=e.error)!=null?a:"Upload failed"}),t("button",{type:"button",disabled:f,onClick:()=>z(e.id),"aria-label":`Remove ${e.name}`,className:"rounded-sm text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50",children:t(M,{className:"size-4"})})]},e.id)})})]}))}export{H as a};
|
|
2
|
+
//# sourceMappingURL=chunk-KR5A3H22.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/photo-upload/index.tsx"],
|
|
4
|
+
"sourcesContent": ["\"use client\";\n\nimport * as React from \"react\";\nimport { ArrowUpIcon, XIcon } from \"lucide-react\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Spinner } from \"@/components/spinner\";\n\nexport type PhotoUploadFile = {\n id: string;\n name: string;\n previewUrl?: string;\n status: \"uploading\" | \"uploaded\" | \"error\";\n error?: string;\n};\n\nexport type PhotoUploadRejectReason = \"max-files\" | \"max-size\" | \"type\";\n\nexport type PhotoUploadProps = Omit<React.ComponentProps<\"div\">, \"onError\"> & {\n files: PhotoUploadFile[];\n onAdd: (files: File[]) => void;\n onRemove: (id: string) => void;\n onReject?: (file: File, reason: PhotoUploadRejectReason) => void;\n accept?: string;\n maxFiles?: number;\n maxSizeBytes?: number;\n disabled?: boolean;\n label?: React.ReactNode;\n hint?: React.ReactNode;\n uploadedLabel?: string;\n};\n\nfunction matchesAccept(file: File, accept: string) {\n return accept\n .split(\",\")\n .map((type) => type.trim().toLowerCase())\n .some((type) => {\n if (type.startsWith(\".\")) return file.name.toLowerCase().endsWith(type);\n if (type.endsWith(\"/*\")) return file.type.startsWith(type.slice(0, -1));\n return file.type === type;\n });\n}\n\n/**\n * Dropzone and file list for photos. The consumer owns the upload and each file's status.\n * @param props.files - files already added, with their upload status\n * @param props.onAdd - called with the files that passed validation\n * @param props.onRemove - called with the id of the file to remove\n * @param props.onReject - called for each file that failed validation\n */\nfunction PhotoUpload({\n className,\n files,\n onAdd,\n onRemove,\n onReject,\n accept = \"image/jpeg,image/png\",\n maxFiles,\n maxSizeBytes,\n disabled,\n label = \"Choose files or drag them here\",\n hint = \"JPG or PNG \u00B7 10MB per file\",\n uploadedLabel = \"Uploaded\",\n ...props\n}: PhotoUploadProps) {\n const inputRef = React.useRef<HTMLInputElement>(null);\n const [dragging, setDragging] = React.useState(false);\n const full = maxFiles !== undefined && files.length >= maxFiles;\n const inactive = disabled || full;\n\n const addFiles = (incoming: File[]) => {\n const accepted: File[] = [];\n let slots =\n maxFiles === undefined ? Infinity : Math.max(maxFiles - files.length, 0);\n\n for (const file of incoming) {\n if (!matchesAccept(file, accept)) {\n onReject?.(file, \"type\");\n } else if (maxSizeBytes !== undefined && file.size > maxSizeBytes) {\n onReject?.(file, \"max-size\");\n } else if (slots <= 0) {\n onReject?.(file, \"max-files\");\n } else {\n accepted.push(file);\n slots -= 1;\n }\n }\n\n if (accepted.length) onAdd(accepted);\n };\n\n const handleDrop = (event: React.DragEvent<HTMLButtonElement>) => {\n event.preventDefault();\n setDragging(false);\n if (inactive) return;\n addFiles(Array.from(event.dataTransfer.files));\n };\n\n return (\n <div\n data-slot=\"photo-upload\"\n className={cn(\"flex w-full flex-col gap-3\", className)}\n {...props}\n >\n <button\n type=\"button\"\n disabled={inactive}\n onClick={() => inputRef.current?.click()}\n onDragOver={(event) => {\n event.preventDefault();\n if (!inactive) setDragging(true);\n }}\n onDragLeave={() => setDragging(false)}\n onDrop={handleDrop}\n data-dragging={dragging ? \"\" : undefined}\n className=\"flex w-full flex-col items-center justify-center gap-1.5 rounded-lg border-[1.5px] border-dashed border-foreground/15 bg-muted px-4 py-7 text-center outline-none transition-colors hover:bg-muted/70 focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50 data-[dragging]:border-surface-color-brand data-[dragging]:bg-surface-color-brand-bland\"\n >\n <span className=\"flex size-11 items-center justify-center rounded-full border border-muted-foreground text-muted-foreground\">\n <ArrowUpIcon className=\"size-5\" aria-hidden=\"true\" />\n </span>\n <span className=\"text-sm font-medium text-foreground\">{label}</span>\n <span className=\"text-xs font-medium text-muted-foreground\">\n {hint}\n </span>\n </button>\n <input\n ref={inputRef}\n type=\"file\"\n accept={accept}\n multiple={maxFiles !== 1}\n className=\"hidden\"\n tabIndex={-1}\n aria-hidden=\"true\"\n onChange={(event) => {\n addFiles(Array.from(event.target.files ?? []));\n event.target.value = \"\";\n }}\n />\n {files.length > 0 && (\n <ul className=\"flex flex-col gap-3\">\n {files.map((file) => (\n <li\n key={file.id}\n data-status={file.status}\n className=\"flex items-center gap-2 rounded-md border border-foreground/15 bg-background px-3 py-2.5\"\n >\n {file.previewUrl ? (\n <img\n src={file.previewUrl}\n alt=\"\"\n className=\"size-7 shrink-0 rounded-[6px] border border-foreground/15 object-cover\"\n />\n ) : (\n <span className=\"size-7 shrink-0 rounded-[6px] border border-foreground/15 bg-muted\" />\n )}\n <span className=\"min-w-0 flex-1 truncate text-sm text-foreground\">\n {file.name}\n </span>\n {file.status === \"uploading\" && (\n <Spinner className=\"size-4 text-muted-foreground\" />\n )}\n {file.status === \"uploaded\" && (\n <span className=\"text-xs font-medium text-content-brand\">\n {uploadedLabel}\n </span>\n )}\n {file.status === \"error\" && (\n <span className=\"text-xs font-medium text-destructive\">\n {file.error ?? \"Upload failed\"}\n </span>\n )}\n <button\n type=\"button\"\n disabled={disabled}\n onClick={() => onRemove(file.id)}\n aria-label={`Remove ${file.name}`}\n className=\"rounded-sm text-muted-foreground outline-none transition-colors hover:text-foreground focus-visible:ring-2 focus-visible:ring-ring/50 disabled:cursor-not-allowed disabled:opacity-50\"\n >\n <XIcon className=\"size-4\" />\n </button>\n </li>\n ))}\n </ul>\n )}\n </div>\n );\n}\n\nexport { PhotoUpload };\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "ArrowUpIcon", "XIcon", "jsx", "jsxs", "matchesAccept", "file", "accept", "type", "PhotoUpload", "_a", "_b", "className", "files", "onAdd", "onRemove", "onReject", "maxFiles", "maxSizeBytes", "disabled", "label", "hint", "uploadedLabel", "props", "__objRest", "inputRef", "dragging", "setDragging", "full", "inactive", "addFiles", "incoming", "accepted", "slots", "handleDrop", "event", "__spreadProps", "__spreadValues", "cn", "ArrowUpIcon", "Spinner", "XIcon"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as p}from"./chunk-WIFBPNRH.js";import{a as c,b as m,c as f}from"./chunk-WHECA25N.js";import*as n from"react";import{ScrollArea as r}from"radix-ui";import{jsx as o,jsxs as d}from"react/jsx-runtime";var R=n.forwardRef((S,i)=>{var l=S,{className:a,children:e}=l,t=f(l,["className","children"]);return d(r.Root,m(c({ref:i,className:p("relative overflow-hidden",a)},t),{children:[o(r.Viewport,{className:"h-full w-full rounded-[inherit]",children:e}),o(s,{}),o(r.Corner,{})]}))});R.displayName=r.Root.displayName;var s=n.forwardRef((S,i)=>{var l=S,{className:a,orientation:e="vertical"}=l,t=f(l,["className","orientation"]);return o(r.ScrollAreaScrollbar,m(c({ref:i,orientation:e,className:p("flex touch-none select-none transition-colors",e==="vertical"&&"h-full w-2.5 border-l border-l-transparent p-[1px]",e==="horizontal"&&"h-2.5 flex-col border-t border-t-transparent p-[1px]",a)},t),{children:o(r.ScrollAreaThumb,{className:"relative flex-1 rounded-full bg-border"})}))});s.displayName=r.ScrollAreaScrollbar.displayName;export{R as a,s as b};
|
|
2
|
+
//# sourceMappingURL=chunk-L4EACCHY.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/scroll-area/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { ScrollArea as ScrollAreaPrimitive } from \"radix-ui\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst ScrollArea = React.forwardRef<\n React.ElementRef<typeof ScrollAreaPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <ScrollAreaPrimitive.Root\n ref={ref}\n className={cn(\"relative overflow-hidden\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n));\nScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;\n\nconst ScrollBar = React.forwardRef<\n React.ElementRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>\n>(({ className, orientation = \"vertical\", ...props }, ref) => (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n ref={ref}\n orientation={orientation}\n className={cn(\n \"flex touch-none select-none transition-colors\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent p-[1px]\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent p-[1px]\",\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb className=\"relative flex-1 rounded-full bg-border\" />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n));\nScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;\n\nexport { ScrollArea, ScrollBar };\n"],
|
|
5
|
+
"mappings": "8FAAA,UAAYA,MAAW,QACvB,OAAS,cAAcC,MAA2B,WAQhD,OAKE,OAAAC,EALF,QAAAC,MAAA,oBAJF,IAAMC,EAAmB,aAGvB,CAACC,EAAmCC,IAAK,CAAxC,IAAAC,EAAAF,EAAE,WAAAG,EAAW,SAAAC,CARhB,EAQGF,EAA0BG,EAAAC,EAA1BJ,EAA0B,CAAxB,YAAW,aACd,OAAAJ,EAACS,EAAoB,KAApBC,EAAAC,EAAA,CACC,IAAKR,EACL,UAAWS,EAAG,2BAA4BP,CAAS,GAC/CE,GAHL,CAKC,UAAAR,EAACU,EAAoB,SAApB,CAA6B,UAAU,kCACrC,SAAAH,EACH,EACAP,EAACc,EAAA,EAAU,EACXd,EAACU,EAAoB,OAApB,EAA2B,IAC9B,EACD,EACDR,EAAW,YAAcQ,EAAoB,KAAK,YAElD,IAAMI,EAAkB,aAGtB,CAACX,EAAmDC,IAAK,CAAxD,IAAAC,EAAAF,EAAE,WAAAG,EAAW,YAAAS,EAAc,UA1B9B,EA0BGV,EAA0CG,EAAAC,EAA1CJ,EAA0C,CAAxC,YAAW,gBACd,OAAAL,EAACU,EAAoB,oBAApBC,EAAAC,EAAA,CACC,IAAKR,EACL,YAAaW,EACb,UAAWF,EACT,gDACAE,IAAgB,YACd,qDACFA,IAAgB,cACd,uDACFT,CACF,GACIE,GAXL,CAaC,SAAAR,EAACU,EAAoB,gBAApB,CAAoC,UAAU,yCAAyC,GAC1F,EACD,EACDI,EAAU,YAAcJ,EAAoB,oBAAoB",
|
|
6
|
+
"names": ["React", "ScrollAreaPrimitive", "jsx", "jsxs", "ScrollArea", "_a", "ref", "_b", "className", "children", "props", "__objRest", "ScrollAreaPrimitive", "__spreadProps", "__spreadValues", "cn", "ScrollBar", "orientation"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as n}from"./chunk-WIFBPNRH.js";import{a as e,c as t}from"./chunk-WHECA25N.js";import{cva as s}from"class-variance-authority";import{jsx as u}from"react/jsx-runtime";var g=s("inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-normal transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",{variants:{variant:{default:"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80",secondary:"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80",destructive:"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80",highlight:"border-transparent bg-highlight text-highlight-foreground shadow hover:bg-highlight/80",outline:"text-foreground","brand-silent":"border-transparent bg-surface-color-brand-silent font-medium tracking-[0.015em] text-content-brand"},size:{default:"",chip:"h-5 min-w-5 justify-center rounded-full px-0 py-0 tabular-nums",pill:"h-5 min-w-5 justify-center rounded-full px-1.5 py-0.5 text-[11px] leading-[14px]"}},defaultVariants:{variant:"default",size:"default"}});function c(p){var r=p,{className:o,variant:a,size:i}=r,d=t(r,["className","variant","size"]);return u("div",e({className:n(g({variant:a,size:i}),o)},d))}export{g as a,c as b};
|
|
2
|
+
//# sourceMappingURL=chunk-LUG5DIYB.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/badge/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst badgeVariants = cva(\n \"inline-flex items-center rounded-md border px-2.5 py-0.5 text-xs font-normal transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2\",\n {\n variants: {\n variant: {\n default:\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\n secondary:\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\n destructive:\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\n highlight:\n \"border-transparent bg-highlight text-highlight-foreground shadow hover:bg-highlight/80\",\n outline: \"text-foreground\",\n \"brand-silent\":\n \"border-transparent bg-surface-color-brand-silent font-medium tracking-[0.015em] text-content-brand\",\n },\n size: {\n default: \"\",\n chip: \"h-5 min-w-5 justify-center rounded-full px-0 py-0 tabular-nums\",\n pill: \"h-5 min-w-5 justify-center rounded-full px-1.5 py-0.5 text-[11px] leading-[14px]\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nexport type BadgeProps = {} & React.HTMLAttributes<HTMLDivElement> &\n VariantProps<typeof badgeVariants>;\n\nfunction Badge({ className, variant, size, ...props }: BadgeProps) {\n return (\n <div\n className={cn(badgeVariants({ variant, size }), className)}\n {...props}\n />\n );\n}\n\nexport { Badge, badgeVariants };\n"],
|
|
5
|
+
"mappings": "uFACA,OAAS,OAAAA,MAA8B,2BAuCnC,cAAAC,MAAA,oBAnCJ,IAAMC,EAAgBC,EACpB,qKACA,CACE,SAAU,CACR,QAAS,CACP,QACE,mFACF,UACE,kFACF,YACE,+FACF,UACE,yFACF,QAAS,kBACT,eACE,oGACJ,EACA,KAAM,CACJ,QAAS,GACT,KAAM,iEACN,KAAM,kFACR,CACF,EACA,gBAAiB,CACf,QAAS,UACT,KAAM,SACR,CACF,CACF,EAKA,SAASC,EAAMC,EAAoD,CAApD,IAAAC,EAAAD,EAAE,WAAAE,EAAW,QAAAC,EAAS,KAAAC,CAtCrC,EAsCeH,EAA+BI,EAAAC,EAA/BL,EAA+B,CAA7B,YAAW,UAAS,SACnC,OACEL,EAAC,MAAAW,EAAA,CACC,UAAWC,EAAGX,EAAc,CAAE,QAAAM,EAAS,KAAAC,CAAK,CAAC,EAAGF,CAAS,GACrDG,EACN,CAEJ",
|
|
6
|
+
"names": ["cva", "jsx", "badgeVariants", "cva", "Badge", "_a", "_b", "className", "variant", "size", "props", "__objRest", "__spreadValues", "cn"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as d}from"./chunk-RRDBPO2I.js";import{a as r}from"./chunk-WIFBPNRH.js";import{a as n,c as i}from"./chunk-WHECA25N.js";import{Slot as f}from"radix-ui";import{cva as p}from"class-variance-authority";import{jsx as s}from"react/jsx-runtime";function y(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("div",n({role:"list","data-slot":"item-group",className:r("group/item-group flex flex-col",a)},e))}function R(o){var t=o,{className:a}=t,e=i(t,["className"]);return s(d,n({"data-slot":"item-separator",orientation:"horizontal",className:r("my-0",a)},e))}var u=p("group/item [a]:hover:bg-accent/50 focus-visible:border-ring focus-visible:ring-ring/50 [a]:transition-colors flex flex-wrap items-center rounded-md border border-transparent text-sm outline-none transition-colors duration-100 focus-visible:ring-[3px]",{variants:{variant:{default:"bg-transparent",outline:"border-border",muted:"bg-muted/50"},size:{default:"gap-4 p-4 ",sm:"gap-2.5 px-4 py-3"}},defaultVariants:{variant:"default",size:"default"}});function I(g){var l=g,{className:a,variant:e="default",size:o="default",asChild:t=!1}=l,m=i(l,["className","variant","size","asChild"]);let c=t?f.Slot:"div";return s(c,n({"data-slot":"item","data-variant":e,"data-size":o,className:r(u({variant:e,size:o,className:a}))},m))}var v=p("flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:translate-y-0.5 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none",{variants:{variant:{default:"bg-transparent",icon:"bg-muted size-8 rounded-sm border [&_svg:not([class*='size-'])]:size-4",image:"size-10 overflow-hidden rounded-sm [&_img]:size-full [&_img]:object-cover"}},defaultVariants:{variant:"default"}});function N(t){var m=t,{className:a,variant:e="default"}=m,o=i(m,["className","variant"]);return s("div",n({"data-slot":"item-media","data-variant":e,className:r(v({variant:e,className:a}))},o))}function h(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("div",n({"data-slot":"item-content",className:r("flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none",a)},e))}function V(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("div",n({"data-slot":"item-title",className:r("flex w-fit items-center gap-2 text-sm font-medium leading-snug",a)},e))}function z(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("p",n({"data-slot":"item-description",className:r("line-clamp-2 text-balance text-sm font-normal leading-normal text-muted-foreground","[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4",a)},e))}function S(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("div",n({"data-slot":"item-actions",className:r("flex items-center gap-2",a)},e))}function w(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("div",n({"data-slot":"item-header",className:r("flex basis-full items-center justify-between gap-2",a)},e))}function _(o){var t=o,{className:a}=t,e=i(t,["className"]);return s("div",n({"data-slot":"item-footer",className:r("flex basis-full items-center justify-between gap-2",a)},e))}export{y as a,R as b,I as c,N as d,h as e,V as f,z as g,S as h,w as i,_ as j};
|
|
2
|
+
//# sourceMappingURL=chunk-M3WRRDK4.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/item/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\nimport { Slot as SlotPrimitive } from \"radix-ui\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/lib/utils\";\nimport { Separator } from \"@/components/separator\";\n\nfunction ItemGroup({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n role=\"list\"\n data-slot=\"item-group\"\n className={cn(\"group/item-group flex flex-col\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemSeparator({\n className,\n ...props\n}: React.ComponentProps<typeof Separator>) {\n return (\n <Separator\n data-slot=\"item-separator\"\n orientation=\"horizontal\"\n className={cn(\"my-0\", className)}\n {...props}\n />\n );\n}\n\nconst itemVariants = cva(\n \"group/item [a]:hover:bg-accent/50 focus-visible:border-ring focus-visible:ring-ring/50 [a]:transition-colors flex flex-wrap items-center rounded-md border border-transparent text-sm outline-none transition-colors duration-100 focus-visible:ring-[3px]\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n outline: \"border-border\",\n muted: \"bg-muted/50\",\n },\n size: {\n default: \"gap-4 p-4 \",\n sm: \"gap-2.5 px-4 py-3\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n size: \"default\",\n },\n },\n);\n\nfunction Item({\n className,\n variant = \"default\",\n size = \"default\",\n asChild = false,\n ...props\n}: React.ComponentProps<\"div\"> &\n VariantProps<typeof itemVariants> & { asChild?: boolean }) {\n const Comp = asChild ? SlotPrimitive.Slot : \"div\";\n return (\n <Comp\n data-slot=\"item\"\n data-variant={variant}\n data-size={size}\n className={cn(itemVariants({ variant, size, className }))}\n {...props}\n />\n );\n}\n\nconst itemMediaVariants = cva(\n \"flex shrink-0 items-center justify-center gap-2 group-has-[[data-slot=item-description]]/item:translate-y-0.5 group-has-[[data-slot=item-description]]/item:self-start [&_svg]:pointer-events-none\",\n {\n variants: {\n variant: {\n default: \"bg-transparent\",\n icon: \"bg-muted size-8 rounded-sm border [&_svg:not([class*='size-'])]:size-4\",\n image:\n \"size-10 overflow-hidden rounded-sm [&_img]:size-full [&_img]:object-cover\",\n },\n },\n defaultVariants: {\n variant: \"default\",\n },\n },\n);\n\nfunction ItemMedia({\n className,\n variant = \"default\",\n ...props\n}: React.ComponentProps<\"div\"> & VariantProps<typeof itemMediaVariants>) {\n return (\n <div\n data-slot=\"item-media\"\n data-variant={variant}\n className={cn(itemMediaVariants({ variant, className }))}\n {...props}\n />\n );\n}\n\nfunction ItemContent({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-content\"\n className={cn(\n \"flex flex-1 flex-col gap-1 [&+[data-slot=item-content]]:flex-none\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemTitle({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-title\"\n className={cn(\n \"flex w-fit items-center gap-2 text-sm font-medium leading-snug\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemDescription({ className, ...props }: React.ComponentProps<\"p\">) {\n return (\n <p\n data-slot=\"item-description\"\n className={cn(\n \"line-clamp-2 text-balance text-sm font-normal leading-normal text-muted-foreground\",\n \"[&>a:hover]:text-primary [&>a]:underline [&>a]:underline-offset-4\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemActions({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-actions\"\n className={cn(\"flex items-center gap-2\", className)}\n {...props}\n />\n );\n}\n\nfunction ItemHeader({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-header\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nfunction ItemFooter({ className, ...props }: React.ComponentProps<\"div\">) {\n return (\n <div\n data-slot=\"item-footer\"\n className={cn(\n \"flex basis-full items-center justify-between gap-2\",\n className,\n )}\n {...props}\n />\n );\n}\n\nexport {\n Item,\n ItemMedia,\n ItemContent,\n ItemActions,\n ItemGroup,\n ItemSeparator,\n ItemTitle,\n ItemDescription,\n ItemHeader,\n ItemFooter,\n};\n"],
|
|
5
|
+
"mappings": "+HACA,OAAS,QAAQA,MAAqB,WACtC,OAAS,OAAAC,MAA8B,2BAOnC,cAAAC,MAAA,oBAFJ,SAASC,EAAUC,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CAPrB,EAOmBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACnB,OACEH,EAAC,MAAAO,EAAA,CACC,KAAK,OACL,YAAU,aACV,UAAWC,EAAG,iCAAkCJ,CAAS,GACrDC,EACN,CAEJ,CAEA,SAASI,EAAcP,EAGoB,CAHpB,IAAAC,EAAAD,EACrB,WAAAE,CAnBF,EAkBuBD,EAElBE,EAAAC,EAFkBH,EAElB,CADH,cAGA,OACEH,EAACU,EAAAH,EAAA,CACC,YAAU,iBACV,YAAY,aACZ,UAAWC,EAAG,OAAQJ,CAAS,GAC3BC,EACN,CAEJ,CAEA,IAAMM,EAAeC,EACnB,6PACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,iBACT,QAAS,gBACT,MAAO,aACT,EACA,KAAM,CACJ,QAAS,aACT,GAAI,mBACN,CACF,EACA,gBAAiB,CACf,QAAS,UACT,KAAM,SACR,CACF,CACF,EAEA,SAASC,EAAKX,EAO+C,CAP/C,IAAAC,EAAAD,EACZ,WAAAE,EACA,QAAAU,EAAU,UACV,KAAAC,EAAO,UACP,QAAAC,EAAU,EAzDZ,EAqDcb,EAKTE,EAAAC,EALSH,EAKT,CAJH,YACA,UACA,OACA,YAIA,IAAMc,EAAOD,EAAUE,EAAc,KAAO,MAC5C,OACElB,EAACiB,EAAAV,EAAA,CACC,YAAU,OACV,eAAcO,EACd,YAAWC,EACX,UAAWP,EAAGG,EAAa,CAAE,QAAAG,EAAS,KAAAC,EAAM,UAAAX,CAAU,CAAC,CAAC,GACpDC,EACN,CAEJ,CAEA,IAAMc,EAAoBP,EACxB,qMACA,CACE,SAAU,CACR,QAAS,CACP,QAAS,iBACT,KAAM,yEACN,MACE,2EACJ,CACF,EACA,gBAAiB,CACf,QAAS,SACX,CACF,CACF,EAEA,SAASQ,EAAUlB,EAIsD,CAJtD,IAAAC,EAAAD,EACjB,WAAAE,EACA,QAAAU,EAAU,SA5FZ,EA0FmBX,EAGdE,EAAAC,EAHcH,EAGd,CAFH,YACA,YAGA,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,aACV,eAAcO,EACd,UAAWN,EAAGW,EAAkB,CAAE,QAAAL,EAAS,UAAAV,CAAU,CAAC,CAAC,GACnDC,EACN,CAEJ,CAEA,SAASgB,EAAYnB,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CAzGvB,EAyGqBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACrB,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,eACV,UAAWC,EACT,oEACAJ,CACF,GACIC,EACN,CAEJ,CAEA,SAASiB,EAAUpB,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CAtHrB,EAsHmBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACnB,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,aACV,UAAWC,EACT,iEACAJ,CACF,GACIC,EACN,CAEJ,CAEA,SAASkB,EAAgBrB,EAAoD,CAApD,IAAAC,EAAAD,EAAE,WAAAE,CAnI3B,EAmIyBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACzB,OACEH,EAAC,IAAAO,EAAA,CACC,YAAU,mBACV,UAAWC,EACT,qFACA,oEACAJ,CACF,GACIC,EACN,CAEJ,CAEA,SAASmB,EAAYtB,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CAjJvB,EAiJqBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACrB,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,eACV,UAAWC,EAAG,0BAA2BJ,CAAS,GAC9CC,EACN,CAEJ,CAEA,SAASoB,EAAWvB,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CA3JtB,EA2JoBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACpB,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,cACV,UAAWC,EACT,qDACAJ,CACF,GACIC,EACN,CAEJ,CAEA,SAASqB,EAAWxB,EAAsD,CAAtD,IAAAC,EAAAD,EAAE,WAAAE,CAxKtB,EAwKoBD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACpB,OACEH,EAAC,MAAAO,EAAA,CACC,YAAU,cACV,UAAWC,EACT,qDACAJ,CACF,GACIC,EACN,CAEJ",
|
|
6
|
+
"names": ["SlotPrimitive", "cva", "jsx", "ItemGroup", "_a", "_b", "className", "props", "__objRest", "__spreadValues", "cn", "ItemSeparator", "Separator", "itemVariants", "cva", "Item", "variant", "size", "asChild", "Comp", "SlotPrimitive", "itemMediaVariants", "ItemMedia", "ItemContent", "ItemTitle", "ItemDescription", "ItemActions", "ItemHeader", "ItemFooter"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a}from"./chunk-WIFBPNRH.js";import{a as r,c as t}from"./chunk-WHECA25N.js";import*as o from"react";import{jsx as l}from"react/jsx-runtime";var i=o.forwardRef((m,d)=>{var e=m,{className:s}=e,n=t(e,["className"]);return l("textarea",r({className:a("flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm",s),ref:d},n))});i.displayName="Textarea";export{i as a};
|
|
2
|
+
//# sourceMappingURL=chunk-NMUGPQJR.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/text-area/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\n\nimport { cn } from \"@/lib/utils\";\n\nconst Textarea = React.forwardRef<\n HTMLTextAreaElement,\n React.ComponentProps<\"textarea\">\n>(({ className, ...props }, ref) => {\n return (\n <textarea\n className={cn(\n \"flex min-h-[60px] w-full rounded-md border border-input bg-transparent px-3 py-2 text-base shadow-sm placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:cursor-not-allowed disabled:opacity-50 md:text-sm\",\n className,\n )}\n ref={ref}\n {...props}\n />\n );\n});\nTextarea.displayName = \"Textarea\";\n\nexport { Textarea };\n"],
|
|
5
|
+
"mappings": "kFAAA,UAAYA,MAAW,QASnB,cAAAC,MAAA,oBALJ,IAAMC,EAAiB,aAGrB,CAACC,EAAyBC,IAAQ,CAAjC,IAAAC,EAAAF,EAAE,WAAAG,CAPL,EAOGD,EAAgBE,EAAAC,EAAhBH,EAAgB,CAAd,cACH,OACEJ,EAAC,WAAAQ,EAAA,CACC,UAAWC,EACT,4QACAJ,CACF,EACA,IAAKF,GACDG,EACN,CAEJ,CAAC,EACDL,EAAS,YAAc",
|
|
6
|
+
"names": ["React", "jsx", "Textarea", "_a", "ref", "_b", "className", "props", "__objRest", "__spreadValues", "cn"]
|
|
7
|
+
}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a as Ce}from"./chunk-WIFBPNRH.js";import{a as E,b as A,c as J,f as ce,g as $e,h as We}from"./chunk-WHECA25N.js";import{GripVertical as pn}from"lucide-react";import{jsx as pe}from"react/jsx-runtime";import{useState as be,useCallback as it,useId as Lt,useLayoutEffect as Rt,useEffect as Se,useRef as j,createContext as kt,useImperativeHandle as st,useMemo as Mt,useSyncExternalStore as Et,useContext as It}from"react";function Dt(e,t){let n=getComputedStyle(e),o=parseFloat(n.fontSize);return t*o}function Tt(e,t){let n=getComputedStyle(e.ownerDocument.documentElement),o=parseFloat(n.fontSize);return t*o}function Ot(e){return e/100*window.innerHeight}function Nt(e){return e/100*window.innerWidth}function At(e){switch(typeof e){case"number":return[e,"px"];case"string":{let t=parseFloat(e);return e.endsWith("%")?[t,"%"]:e.endsWith("px")?[t,"px"]:e.endsWith("rem")?[t,"rem"]:e.endsWith("em")?[t,"em"]:e.endsWith("vh")?[t,"vh"]:e.endsWith("vw")?[t,"vw"]:[t,"%"]}}}function de({groupSize:e,panelElement:t,styleProp:n}){let o,[r,a]=At(n);switch(a){case"%":{o=r/100*e;break}case"px":{o=r;break}case"rem":{o=Tt(t,r);break}case"em":{o=Dt(t,r);break}case"vh":{o=Ot(r);break}case"vw":{o=Nt(r);break}}return o}function O(e){return parseFloat(e.toFixed(3))}function le({group:e}){let{orientation:t,panels:n}=e;return n.reduce((o,r)=>(o+=t==="horizontal"?r.element.offsetWidth:r.element.offsetHeight,o),0)}function Le(e){let{panels:t}=e,n=le({group:e});return n===0?t.map(o=>({groupResizeBehavior:o.panelConstraints.groupResizeBehavior,collapsedSize:0,collapsible:o.panelConstraints.collapsible===!0,defaultSize:void 0,disabled:o.panelConstraints.disabled,minSize:0,maxSize:100,panelId:o.id})):t.map(o=>{let{element:r,panelConstraints:a}=o,u=0;if(a.collapsedSize!==void 0){let c=de({groupSize:n,panelElement:r,styleProp:a.collapsedSize});u=O(c/n*100)}let i;if(a.defaultSize!==void 0){let c=de({groupSize:n,panelElement:r,styleProp:a.defaultSize});i=O(c/n*100)}let s=0;if(a.minSize!==void 0){let c=de({groupSize:n,panelElement:r,styleProp:a.minSize});s=O(c/n*100)}let l=100;if(a.maxSize!==void 0){let c=de({groupSize:n,panelElement:r,styleProp:a.maxSize});l=O(c/n*100)}return{groupResizeBehavior:a.groupResizeBehavior,collapsedSize:u,collapsible:a.collapsible===!0,defaultSize:i,disabled:a.disabled,minSize:s,maxSize:l,panelId:o.id}})}function R(e,t="Assertion error"){if(!e)throw Error(t)}function Re(e,t){return Array.from(t).sort(e==="horizontal"?Ft:Gt)}function Ft(e,t){let n=e.element.offsetLeft-t.element.offsetLeft;return n!==0?n:e.element.offsetWidth-t.element.offsetWidth}function Gt(e,t){let n=e.element.offsetTop-t.element.offsetTop;return n!==0?n:e.element.offsetHeight-t.element.offsetHeight}function lt(e){return e!==null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.ELEMENT_NODE}function ut(e,t){return{x:e.x>=t.left&&e.x<=t.right?0:Math.min(Math.abs(e.x-t.left),Math.abs(e.x-t.right)),y:e.y>=t.top&&e.y<=t.bottom?0:Math.min(Math.abs(e.y-t.top),Math.abs(e.y-t.bottom))}}function jt({orientation:e,rects:t,targetRect:n}){let o={x:n.x+n.width/2,y:n.y+n.height/2},r,a=Number.MAX_VALUE;for(let u of t){let{x:i,y:s}=ut(o,u),l=e==="horizontal"?i:s;l<a&&(a=l,r=u)}return R(r,"No rect found"),r}var ve;function Bt(){return ve===void 0&&(typeof matchMedia=="function"?ve=!!matchMedia("(pointer:coarse)").matches:ve=!1),ve}function ct(e){let{element:t,orientation:n,panels:o,separators:r}=e,a=Re(n,Array.from(t.children).filter(lt).map(z=>({element:z}))).map(({element:z})=>z),u=[],i=!1,s=!1,l=-1,c=-1,b=0,p,h=[];{let z=-1;for(let f of a)f.hasAttribute("data-panel")&&(z++,f.hasAttribute("data-disabled")||(b++,l===-1&&(l=z),c=z))}if(b>1){let z=-1;for(let f of a)if(f.hasAttribute("data-panel")){z++;let g=o.find(d=>d.element===f);if(g){if(p){let d=p.element.getBoundingClientRect(),v=f.getBoundingClientRect(),y;if(s){let S=n==="horizontal"?new DOMRect(d.right,d.top,0,d.height):new DOMRect(d.left,d.bottom,d.width,0),m=n==="horizontal"?new DOMRect(v.left,v.top,0,v.height):new DOMRect(v.left,v.top,v.width,0);switch(h.length){case 0:{y=[S,m];break}case 1:{let w=h[0],C=jt({orientation:n,rects:[d,v],targetRect:w.element.getBoundingClientRect()});y=[w,C===d?m:S];break}default:{y=h;break}}}else h.length?y=h:y=[n==="horizontal"?new DOMRect(d.right,v.top,v.left-d.right,v.height):new DOMRect(v.left,d.bottom,v.width,v.top-d.bottom)];for(let S of y){let m="width"in S?S:S.element.getBoundingClientRect(),w=Bt()?e.resizeTargetMinimumSize.coarse:e.resizeTargetMinimumSize.fine;if(m.width<w){let I=w-m.width;m=new DOMRect(m.x-I/2,m.y,m.width+I,m.height)}if(m.height<w){let I=w-m.height;m=new DOMRect(m.x,m.y-I/2,m.width,m.height+I)}let C=z<=l||z>c;!i&&!C&&u.push({group:e,groupSize:le({group:e}),panels:[p,g],separator:"width"in S?void 0:S,rect:m}),i=!1}}s=!1,p=g,h=[]}}else if(f.hasAttribute("data-separator")){f.ariaDisabled!==null&&(i=!0);let g=r.find(d=>d.element===f);g?h.push(g):(p=void 0,h=[])}else s=!0}return u}var Y,ze=class{constructor(){$e(this,Y,{})}addListener(t,n){let o=ce(this,Y)[t];return o===void 0?ce(this,Y)[t]=[n]:o.includes(n)||o.push(n),()=>{this.removeListener(t,n)}}emit(t,n){let o=ce(this,Y)[t];if(o!==void 0)if(o.length===1)o[0].call(null,n);else{let r=!1,a=null,u=Array.from(o);for(let i=0;i<u.length;i++){let s=u[i];try{s.call(null,n)}catch(l){a===null&&(r=!0,a=l)}}if(r)throw a}}removeAllListeners(){We(this,Y,{})}removeListener(t,n){let o=ce(this,Y)[t];if(o!==void 0){let r=o.indexOf(n);r>=0&&o.splice(r,1)}}};Y=new WeakMap;var ie={cursorFlags:0,state:"inactive"},ke=new ze;function q(){return ie}function $t(e){return ke.addListener("change",e)}function Wt(e){let t=ie,n=E({},ie);n.cursorFlags=e,ie=n,ke.emit("change",{prev:t,next:n})}function se(e){let t=ie;ie=e,ke.emit("change",{prev:t,next:e})}var Ht=e=>e,Pe=()=>{},dt=1,ft=2,pt=4,ht=8,He=3,Ue=12,me;function Ve(){return me===void 0&&(me=!1,typeof window<"u"&&(window.navigator.userAgent.includes("Chrome")||window.navigator.userAgent.includes("Firefox"))&&(me=!0)),me}function Ut({cursorFlags:e,groups:t,state:n}){let o=0,r=0;switch(n){case"active":case"hover":t.forEach(a=>{if(!a.mutableState.disableCursor)switch(a.orientation){case"horizontal":{o++;break}case"vertical":{r++;break}}})}if(!(o===0&&r===0)){switch(n){case"active":{if(e&&Ve()){let a=(e&dt)!==0,u=(e&ft)!==0,i=(e&pt)!==0,s=(e&ht)!==0;if(a)return i?"se-resize":s?"ne-resize":"e-resize";if(u)return i?"sw-resize":s?"nw-resize":"w-resize";if(i)return"s-resize";if(s)return"n-resize"}break}}return Ve()?o>0&&r>0?"move":o>0?"ew-resize":"ns-resize":o>0&&r>0?"grab":o>0?"col-resize":"row-resize"}}var Ye=new WeakMap;function Me(e){var r;if(e.defaultView===null||e.defaultView===void 0)return;let{prevStyle:t,styleSheet:n}=(r=Ye.get(e))!=null?r:{};n===void 0&&(n=new e.defaultView.CSSStyleSheet,e.adoptedStyleSheets&&(Object.isExtensible(e.adoptedStyleSheets)?e.adoptedStyleSheets.push(n):e.adoptedStyleSheets=[...e.adoptedStyleSheets,n]));let o=q();switch(o.state){case"active":case"hover":{let a=Ut({cursorFlags:o.cursorFlags,groups:o.hitRegions.map(i=>i.group),state:o.state}),u=`*, *:hover {cursor: ${a} !important; }`;if(t===u)return;t=u,a?n.cssRules.length===0?n.insertRule(u):n.replaceSync(u):n.cssRules.length===1&&n.deleteRule(0);break}case"inactive":{t=void 0,n.cssRules.length===1&&n.deleteRule(0);break}}Ye.set(e,{prevStyle:t,styleSheet:n})}var B=new Map,gt=new ze;function Vt(e){B=new Map(B),B.delete(e)}function Xe(e,t){for(let[n]of B)if(n.id===e)return n}function X(e,t){for(let[n,o]of B)if(n.id===e)return o;if(t)throw Error(`Could not find data for Group with id ${e}`)}function Q(){return B}function Ee(e,t){return gt.addListener("groupChange",n=>{n.group.id===e&&t(n)})}function V(e,t,n){let o=B.get(e);B=new Map(B),B.set(e,t),gt.emit("groupChange",{group:e,isUserInteraction:(n==null?void 0:n.isUserInteraction)===!0,prev:o,next:t})}function vt(e){let t=q(),n=!1;return t.state==="active"&&(se({cursorFlags:0,state:"inactive"}),t.hitRegions.length>0&&(Me(e),n=!0,t.hitRegions.forEach(o=>{let r=X(o.group.id,!0);V(o.group,r,{isUserInteraction:!0})}))),n}function Je(e){e.defaultPrevented||vt(e.currentTarget)}function Yt(e,t,n){let o,r={x:1/0,y:1/0};for(let a of t){let u=ut(n,a.rect);switch(e){case"horizontal":{u.x<=r.x&&(o=a,r=u);break}case"vertical":{u.y<=r.y&&(o=a,r=u);break}}}return o?{distance:r,hitRegion:o}:void 0}function Xt(e){return e!==null&&typeof e=="object"&&"nodeType"in e&&e.nodeType===Node.DOCUMENT_FRAGMENT_NODE}function Jt(e,t){if(e===t)throw new Error("Cannot compare node with itself");let n={a:Ke(e),b:Ke(t)},o;for(;n.a.at(-1)===n.b.at(-1);)o=n.a.pop(),n.b.pop();R(o,"Stacking order can only be calculated for elements with a common ancestor");let r={a:qe(_e(n.a)),b:qe(_e(n.b))};if(r.a===r.b){let a=o.childNodes,u={a:n.a.at(-1),b:n.b.at(-1)},i=a.length;for(;i--;){let s=a[i];if(s===u.a)return 1;if(s===u.b)return-1}}return Math.sign(r.a-r.b)}var _t=/\b(?:position|zIndex|opacity|transform|webkitTransform|mixBlendMode|filter|webkitFilter|isolation)\b/;function qt(e){var n;let t=getComputedStyle((n=mt(e))!=null?n:e).display;return t==="flex"||t==="inline-flex"}function Kt(e){let t=getComputedStyle(e);return!!(t.position==="fixed"||t.zIndex!=="auto"&&(t.position!=="static"||qt(e))||+t.opacity<1||"transform"in t&&t.transform!=="none"||"webkitTransform"in t&&t.webkitTransform!=="none"||"mixBlendMode"in t&&t.mixBlendMode!=="normal"||"filter"in t&&t.filter!=="none"||"webkitFilter"in t&&t.webkitFilter!=="none"||"isolation"in t&&t.isolation==="isolate"||_t.test(t.willChange)||t.webkitOverflowScrolling==="touch")}function _e(e){let t=e.length;for(;t--;){let n=e[t];if(R(n,"Missing node"),Kt(n))return n}return null}function qe(e){return e&&Number(getComputedStyle(e).zIndex)||0}function Ke(e){let t=[];for(;e;)t.push(e),e=mt(e);return t}function mt(e){let{parentNode:t}=e;return Xt(t)?t.host:t}function Zt(e,t){return e.x<t.x+t.width&&e.x+e.width>t.x&&e.y<t.y+t.height&&e.y+e.height>t.y}function Qt({groupElement:e,hitRegion:t,pointerEventTarget:n}){if(!lt(n)||n.contains(e)||e.contains(n))return!0;if(Jt(n,e)>0){let o=n;for(;o;){if(o.contains(e))return!0;if(Zt(o.getBoundingClientRect(),t))return!1;o=o.parentElement}}return!0}function Ie(e,t){let n=[];return t.forEach((o,r)=>{if(r.disabled)return;let a=ct(r),u=Yt(r.orientation,a,{x:e.clientX,y:e.clientY});u&&u.distance.x<=0&&u.distance.y<=0&&Qt({groupElement:r.element,hitRegion:u.hitRegion.rect,pointerEventTarget:e.target})&&n.push(u.hitRegion)}),n}function en(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n])return!1;return!0}function T(e,t,n=0){return Math.abs(O(e)-O(t))<=n}function G(e,t){return T(e,t)?0:e>t?1:-1}function ae({overrideDisabledPanels:e,panelConstraints:t,prevSize:n,size:o}){let{collapsedSize:r=0,collapsible:a,disabled:u,maxSize:i=100,minSize:s=0}=t;if(u&&!e)return n;if(G(o,s)<0)if(a){let l=(r+s)/2;G(o,l)<0?o=r:o=s}else o=s;return o=Math.min(i,o),o=O(o),o}function he({delta:e,initialLayout:t,panelConstraints:n,pivotIndices:o,prevLayout:r,trigger:a}){if(T(e,0))return t;let u=a==="imperative-api",i=Object.values(t),s=Object.values(r),l=[...i],[c,b]=o;R(c!=null,"Invalid first pivot index"),R(b!=null,"Invalid second pivot index");let p=0;switch(a){case"keyboard":{{let f=e<0?b:c,g=n[f];R(g,`Panel constraints not found for index ${f}`);let{collapsedSize:d=0,collapsible:v,minSize:y=0}=g;if(v){let S=i[f];if(R(S!=null,`Previous layout not found for panel index ${f}`),T(S,d)){let m=y-S;G(m,Math.abs(e))>0&&(e=e<0?0-m:m)}}}{let f=e<0?c:b,g=n[f];R(g,`No panel constraints found for index ${f}`);let{collapsedSize:d=0,collapsible:v,minSize:y=0}=g;if(v){let S=i[f];if(R(S!=null,`Previous layout not found for panel index ${f}`),T(S,y)){let m=S-d;G(m,Math.abs(e))>0&&(e=e<0?0-m:m)}}}break}default:{let f=e<0?b:c,g=n[f];R(g,`Panel constraints not found for index ${f}`);let d=i[f],{collapsible:v,collapsedSize:y,minSize:S}=g;if(v&&G(d,S)<0)if(e>0){let m=S-y,w=m/2,C=d+e;G(C,S)<0&&(e=G(e,w)<=0?0:m)}else{let m=S-y,w=100-m/2,C=d-e;G(C,S)<0&&(e=G(100+e,w)>0?0:-m)}break}}{let f=e<0?1:-1,g=e<0?b:c,d=0;for(;;){let y=i[g];R(y!=null,`Previous layout not found for panel index ${g}`);let S=ae({overrideDisabledPanels:u,panelConstraints:n[g],prevSize:y,size:100})-y;if(d+=S,g+=f,g<0||g>=n.length)break}let v=Math.min(Math.abs(e),Math.abs(d));e=e<0?0-v:v}{let f=e<0?c:b;for(;f>=0&&f<n.length;){let g=Math.abs(e)-Math.abs(p),d=i[f];R(d!=null,`Previous layout not found for panel index ${f}`);let v=d-g,y=ae({overrideDisabledPanels:u,panelConstraints:n[f],prevSize:d,size:v});if(!T(d,y)&&(p+=d-y,l[f]=y,p.toFixed(3).localeCompare(Math.abs(e).toFixed(3),void 0,{numeric:!0})>=0))break;e<0?f--:f++}}if(en(s,l))return r;{let f=e<0?b:c,g=i[f];R(g!=null,`Previous layout not found for panel index ${f}`);let d=g+p,v=ae({overrideDisabledPanels:u,panelConstraints:n[f],prevSize:g,size:d});if(l[f]=v,!T(v,d)){let y=d-v,S=e<0?b:c;for(;S>=0&&S<n.length;){let m=l[S];R(m!=null,`Previous layout not found for panel index ${S}`);let w=m+y,C=ae({overrideDisabledPanels:u,panelConstraints:n[S],prevSize:m,size:w});if(T(m,C)||(y-=C-m,l[S]=C),T(y,0))break;e>0?S--:S++}}}let h=Object.values(l).reduce((f,g)=>g+f,0);if(!T(h,100,.1))return r;let z=Object.keys(r);return l.reduce((f,g,d)=>(f[z[d]]=g,f),{})}function K(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(t[n]===void 0||G(e[n],t[n])!==0)return!1;return!0}function Z({layout:e,panelConstraints:t}){let n=Object.values(e),o=[...n],r=o.reduce((i,s)=>i+s,0);if(o.length!==t.length)throw Error(`Invalid ${t.length} panel layout: ${o.map(i=>`${i}%`).join(", ")}`);if(!T(r,100)&&o.length>0)for(let i=0;i<t.length;i++){let s=o[i];R(s!=null,`No layout data found for index ${i}`);let l=100/r*s;o[i]=l}let a=0;for(let i=0;i<t.length;i++){let s=n[i];R(s!=null,`No layout data found for index ${i}`);let l=o[i];R(l!=null,`No layout data found for index ${i}`);let c=ae({overrideDisabledPanels:!0,panelConstraints:t[i],prevSize:s,size:l});l!=c&&(a+=l-c,o[i]=c)}if(!T(a,0))for(let i=0;i<t.length;i++){let s=o[i];R(s!=null,`No layout data found for index ${i}`);let l=s+a,c=ae({overrideDisabledPanels:!0,panelConstraints:t[i],prevSize:s,size:l});if(s!==c&&(a-=c-s,o[i]=c,T(a,0)))break}let u=Object.keys(e);return o.reduce((i,s,l)=>(i[u[l]]=s,i),{})}function bt({groupId:e,panelId:t}){let n=()=>{let s=Q();for(let[l,{defaultLayoutDeferred:c,derivedPanelConstraints:b,layout:p,groupSize:h,separatorToPanels:z}]of s)if(l.id===e)return{defaultLayoutDeferred:c,derivedPanelConstraints:b,group:l,groupSize:h,layout:p,separatorToPanels:z};throw Error(`Group ${e} not found`)},o=()=>{let s=n().derivedPanelConstraints.find(l=>l.panelId===t);if(s!==void 0)return s;throw Error(`Panel constraints not found for Panel ${t}`)},r=()=>{let s=n().group.panels.find(l=>l.id===t);if(s!==void 0)return s;throw Error(`Layout not found for Panel ${t}`)},a=()=>{let s=n().layout[t];if(s!==void 0)return s;throw Error(`Layout not found for Panel ${t}`)},u=({nextSize:s,panels:l,prevLayout:c,derivedPanelConstraints:b})=>{let p=a(),h=l.findIndex(g=>g.id===t),z=h===0,f=h===l.length-1;if(f&&s<p&&(z||l.slice(0,h).every((g,d)=>{let v=b[d];return(v==null?void 0:v.collapsible)&&T(v.collapsedSize,c[v.panelId])}))){let g=l.slice(0,h).reduce((d,v)=>d+c[v.id],0);return A(E({},c),{[t]:O(100-g)})}return he({delta:f?p-s:s-p,initialLayout:c,panelConstraints:b,pivotIndices:f?[h-1,h]:[h,h+1],prevLayout:c,trigger:"imperative-api"})},i=s=>{let l=a();if(s===l)return;let{defaultLayoutDeferred:c,derivedPanelConstraints:b,group:p,groupSize:h,layout:z,separatorToPanels:f}=n(),g=u({nextSize:s,panels:p.panels,prevLayout:z,derivedPanelConstraints:b}),d=Z({layout:g,panelConstraints:b});K(z,d)||V(p,{defaultLayoutDeferred:c,derivedPanelConstraints:b,groupSize:h,layout:d,separatorToPanels:f})};return{collapse:()=>{let{collapsible:s,collapsedSize:l}=o(),{mutableValues:c}=r(),b=a();s&&b!==l&&(c.expandToSize=b,i(l))},expand:()=>{var h;let{collapsible:s,collapsedSize:l,minSize:c}=o(),{mutableValues:b}=r(),p=a();if(s&&p===l){let z=(h=b.expandToSize)!=null?h:c;z===0&&(z=1),i(z)}},getSize:()=>{let{group:s}=n(),l=a(),{element:c}=r(),b=s.orientation==="horizontal"?c.offsetWidth:c.offsetHeight;return{asPercentage:l,inPixels:b}},isCollapsed:()=>{let{collapsible:s,collapsedSize:l}=o(),c=a();return s&&T(l,c)},resize:s=>{let{group:l}=n(),{element:c}=r(),b=le({group:l}),p=de({groupSize:b,panelElement:c,styleProp:s}),h=O(p/b*100);i(h)}}}function Ze(e){if(e.defaultPrevented)return;let t=Q();Ie(e,t).forEach(n=>{if(n.separator&&!n.separator.disableDoubleClick){let o=n.panels.find(r=>r.panelConstraints.defaultSize!==void 0);if(o){let r=o.panelConstraints.defaultSize,a=bt({groupId:n.group.id,panelId:o.id});a&&r!==void 0&&(a.resize(r),e.preventDefault())}}})}function ye(e){let t=Q();for(let[n]of t)if(n.separators.some(o=>o.element===e))return n;throw Error("Could not find parent Group for separator element")}function yt({groupId:e}){let t=()=>{let n=Q();for(let[o,r]of n)if(o.id===e)return E({group:o},r);throw Error(`Could not find Group with id "${e}"`)};return{getLayout(){let{defaultLayoutDeferred:n,layout:o}=t();return n?{}:o},setLayout(n){let{defaultLayoutDeferred:o,derivedPanelConstraints:r,group:a,groupSize:u,layout:i,separatorToPanels:s}=t(),l=Z({layout:n,panelConstraints:r});return o?i:(K(i,l)||V(a,{defaultLayoutDeferred:o,derivedPanelConstraints:r,groupSize:u,layout:l,separatorToPanels:s}),l)}}}function _(e,t){let n=ye(e),o=X(n.id,!0),r=n.separators.find(c=>c.element===e);R(r,"Matching separator not found");let a=o.separatorToPanels.get(r);R(a,"Matching panels not found");let u=a.map(c=>n.panels.indexOf(c)),i=yt({groupId:n.id}).getLayout(),s=he({delta:t,initialLayout:i,panelConstraints:o.derivedPanelConstraints,pivotIndices:u,prevLayout:i,trigger:"keyboard"}),l=Z({layout:s,panelConstraints:o.derivedPanelConstraints});K(i,l)||V(n,{defaultLayoutDeferred:o.defaultLayoutDeferred,derivedPanelConstraints:o.derivedPanelConstraints,groupSize:o.groupSize,layout:l,separatorToPanels:o.separatorToPanels},{isUserInteraction:!0})}function Qe(e){var o;if(e.defaultPrevented)return;let t=e.currentTarget,n=ye(t);if(!n.disabled)switch(e.key){case"ArrowDown":{e.preventDefault(),n.orientation==="vertical"&&_(t,5);break}case"ArrowLeft":{e.preventDefault(),n.orientation==="horizontal"&&_(t,-5);break}case"ArrowRight":{e.preventDefault(),n.orientation==="horizontal"&&_(t,5);break}case"ArrowUp":{e.preventDefault(),n.orientation==="vertical"&&_(t,-5);break}case"End":{e.preventDefault(),_(t,100);break}case"Enter":{e.preventDefault();let r=ye(t),a=X(r.id,!0),{derivedPanelConstraints:u,layout:i,separatorToPanels:s}=a,l=r.separators.find(h=>h.element===t);R(l,"Matching separator not found");let c=s.get(l);R(c,"Matching panels not found");let b=c[0],p=u.find(h=>h.panelId===b.id);if(R(p,"Panel metadata not found"),p.collapsible){let h=i[b.id],z=p.collapsedSize===h?(o=r.mutableState.expandedPanelSizes[b.id])!=null?o:p.minSize:p.collapsedSize;_(t,z-h)}break}case"F6":{e.preventDefault();let r=ye(t).separators.map(i=>i.element),a=Array.from(r).findIndex(i=>i===e.currentTarget);R(a!==null,"Index not found");let u=e.shiftKey?a>0?a-1:r.length-1:a+1<r.length?a+1:0;r[u].focus({preventScroll:!0});break}case"Home":{e.preventDefault(),_(t,-100);break}}}function et(e){if(e.defaultPrevented||e.pointerType==="mouse"&&e.button>0)return;let t=Q(),n=Ie(e,t),o=new Map,r=!1;n.forEach(a=>{a.separator&&(r||(r=!0,a.separator.element.focus({focusVisible:!1,preventScroll:!0})));let u=t.get(a.group);u&&o.set(a.group,u.layout)}),se({cursorFlags:0,hitRegions:n,initialLayoutMap:o,pointerDownAtPoint:{x:e.clientX,y:e.clientY},state:"active"}),n.length&&e.preventDefault()}function zt({document:e,event:t,hitRegions:n,initialLayoutMap:o,mountedGroups:r,pointerDownAtPoint:a,prevCursorFlags:u}){let i=0;n.forEach(l=>{let{group:c,groupSize:b}=l,{orientation:p,panels:h}=c,{disableCursor:z}=c.mutableState,f=0;a?p==="horizontal"?f=(t.clientX-a.x)/b*100:f=(t.clientY-a.y)/b*100:p==="horizontal"?f=t.clientX<0?-100:100:f=t.clientY<0?-100:100;let g=o.get(c),d=r.get(c);if(!g||!d)return;let{defaultLayoutDeferred:v,derivedPanelConstraints:y,groupSize:S,layout:m,separatorToPanels:w}=d;if(y&&m&&w){let C=he({delta:f,initialLayout:g,panelConstraints:y,pivotIndices:l.panels.map(I=>h.indexOf(I)),prevLayout:m,trigger:"mouse-or-touch"});if(K(C,m)){if(f!==0&&!z)switch(p){case"horizontal":{i|=f<0?dt:ft;break}case"vertical":{i|=f<0?pt:ht;break}}}else V(l.group,{defaultLayoutDeferred:v,derivedPanelConstraints:y,groupSize:S,layout:C,separatorToPanels:w})}});let s=0;t.movementX===0?s|=u&He:s|=i&He,t.movementY===0?s|=u&Ue:s|=i&Ue,Wt(s),Me(e)}function tt(e){let t=Q(),n=q();n.state==="active"&&zt({document:e.currentTarget,event:e,hitRegions:n.hitRegions,initialLayoutMap:n.initialLayoutMap,mountedGroups:t,prevCursorFlags:n.cursorFlags})}function nt(e){var o,r;if(e.defaultPrevented)return;let t=q(),n=Q();switch(t.state){case"active":{if(e.buttons===0){se({cursorFlags:0,state:"inactive"}),t.hitRegions.forEach(a=>{let u=X(a.group.id,!0);V(a.group,u,{isUserInteraction:!0})});return}for(let a of t.hitRegions)if(a.separator){let{element:u}=a.separator;(o=u.hasPointerCapture)!=null&&o.call(u,e.pointerId)||((r=u.setPointerCapture)==null||r.call(u,e.pointerId))}zt({document:e.currentTarget,event:e,hitRegions:t.hitRegions,initialLayoutMap:t.initialLayoutMap,mountedGroups:n,pointerDownAtPoint:t.pointerDownAtPoint,prevCursorFlags:t.cursorFlags});break}default:{let a=Ie(e,n);a.length===0?t.state!=="inactive"&&se({cursorFlags:0,state:"inactive"}):se({cursorFlags:0,hitRegions:a,state:"hover"}),Me(e.currentTarget);break}}}function ot(e){e.relatedTarget instanceof HTMLIFrameElement&&q().state==="hover"&&se({cursorFlags:0,state:"inactive"})}function rt(e){e.defaultPrevented||e.pointerType==="mouse"&&e.button>0||vt(e.currentTarget)&&e.preventDefault()}function at(e){let t=0,n=0,o={};for(let a of e)if(a.defaultSize!==void 0){t++;let u=O(a.defaultSize);n+=u,o[a.panelId]=u}else o[a.panelId]=void 0;let r=e.length-t;if(r!==0){let a=O((100-n)/r);for(let u of e)u.defaultSize===void 0&&(o[u.panelId]=a)}return o}function tn(e,t,n){if(!n[0])return;let o=e.panels.find(s=>s.element===t);if(!o||!o.onResize)return;let r=le({group:e}),a=e.orientation==="horizontal"?o.element.offsetWidth:o.element.offsetHeight,u=o.mutableValues.prevSize,i={asPercentage:O(a/r*100),inPixels:a};o.mutableValues.prevSize=i,o.onResize(i,o.id,u)}function nn(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function on({group:e,nextGroupSize:t,prevGroupSize:n,prevLayout:o}){var b,p;if(n<=0||t<=0||n===t)return o;let r=0,a=0,u=!1,i=new Map,s=[];for(let h of e.panels){let z=(b=o[h.id])!=null?b:0;if(h.panelConstraints.groupResizeBehavior==="preserve-pixel-size"){u=!0;let f=z/100*n,g=O(f/t*100);i.set(h.id,g),r+=g}else s.push(h.id),a+=z}if(!u||s.length===0)return o;let l=100-r,c=E({},o);if(i.forEach((h,z)=>{c[z]=h}),a>0)for(let h of s){let z=(p=o[h])!=null?p:0;c[h]=O(z/a*l)}else{let h=O(l/s.length);for(let z of s)c[z]=h}return c}function rn(e,t){let n=e.map(r=>r.id),o=Object.keys(t);if(n.length!==o.length)return!1;for(let r of n)if(!o.includes(r))return!1;return!0}var re=new Map;function an(e){var z,f,g;let t=!0;R(e.element.ownerDocument.defaultView,"Cannot register an unmounted Group");let n=e.element.ownerDocument.defaultView.ResizeObserver,o=new Set,r=new Set,a=new n(d=>{for(let v of d){let{borderBoxSize:y,target:S}=v;if(S===e.element){if(t){let m=le({group:e});if(m===0)return;let w=X(e.id);if(!w)return;let C=Le(e),I=w.defaultLayoutDeferred?at(C):w.layout,$=on({group:e,nextGroupSize:m,prevGroupSize:w.groupSize,prevLayout:I}),D=Z({layout:$,panelConstraints:C});if(!w.defaultLayoutDeferred&&K(w.layout,D)&&nn(w.derivedPanelConstraints,C)&&w.groupSize===m)return;V(e,{defaultLayoutDeferred:!1,derivedPanelConstraints:C,groupSize:m,layout:D,separatorToPanels:w.separatorToPanels})}}else tn(e,S,y)}});a.observe(e.element),e.panels.forEach(d=>{R(!o.has(d.id),`Panel ids must be unique; id "${d.id}" was used more than once`),o.add(d.id),d.onResize&&a.observe(d.element)});let u=le({group:e}),i=Le(e),s=e.panels.map(({id:d})=>d).join(","),l=e.mutableState.defaultLayout;l&&(rn(e.panels,l)||(l=void 0));let c=(f=(z=e.mutableState.layouts[s])!=null?z:l)!=null?f:at(i),b=Z({layout:c,panelConstraints:i}),p=e.element.ownerDocument;re.set(p,((g=re.get(p))!=null?g:0)+1);let h=new Map;return ct(e).forEach(d=>{d.separator&&h.set(d.separator,d.panels)}),V(e,{defaultLayoutDeferred:u===0,derivedPanelConstraints:i,groupSize:u,layout:b,separatorToPanels:h}),e.separators.forEach(d=>{R(!r.has(d.id),`Separator ids must be unique; id "${d.id}" was used more than once`),r.add(d.id),d.element.addEventListener("keydown",Qe)}),re.get(p)===1&&(p.addEventListener("contextmenu",Je,!0),p.addEventListener("dblclick",Ze,!0),p.addEventListener("pointerdown",et,!0),p.addEventListener("pointerleave",tt),p.addEventListener("pointermove",nt),p.addEventListener("pointerout",ot),p.addEventListener("pointerup",rt,!0)),function(){var d;t=!1,re.set(p,Math.max(0,((d=re.get(p))!=null?d:0)-1)),Vt(e),e.separators.forEach(v=>{v.element.removeEventListener("keydown",Qe)}),re.get(p)||(p.removeEventListener("contextmenu",Je,!0),p.removeEventListener("dblclick",Ze,!0),p.removeEventListener("pointerdown",et,!0),p.removeEventListener("pointerleave",tt),p.removeEventListener("pointermove",nt),p.removeEventListener("pointerout",ot),p.removeEventListener("pointerup",rt,!0)),a.disconnect()}}function sn(){let[e,t]=be({}),n=it(()=>t({}),[]);return[e,n]}function De(e){let t=Lt();return`${e!=null?e:t}`}var ee=typeof window<"u"?Rt:Se;function fe(e){let t=j(e);return ee(()=>{t.current=e},[e]),it((...n)=>{var o;return(o=t.current)==null?void 0:o.call(t,...n)},[t])}function Te(...e){return fe(t=>{e.forEach(n=>{if(n)switch(typeof n){case"function":{n(t);break}case"object":{n.current=t;break}}})})}function Oe(e){let t=j(E({},e));return ee(()=>{for(let n in e)t.current[n]=e[n]},[e]),t.current}var St=kt(null);function ln(e,t){let n=j({getLayout:()=>({}),setLayout:Ht});st(t,()=>n.current,[]),ee(()=>{Object.assign(n.current,yt({groupId:e}))})}function Ne(z){var f=z,{children:e,className:t,defaultLayout:n,disableCursor:o,disabled:r,elementRef:a,groupRef:u,id:i,onLayoutChange:s,onLayoutChanged:l,orientation:c="horizontal",resizeTargetMinimumSize:b={coarse:20,fine:10},style:p}=f,h=J(f,["children","className","defaultLayout","disableCursor","disabled","elementRef","groupRef","id","onLayoutChange","onLayoutChanged","orientation","resizeTargetMinimumSize","style"]);let g=j({onLayoutChange:{},onLayoutChanged:{}}),d=fe(x=>{K(g.current.onLayoutChange,x)||(g.current.onLayoutChange=x,s==null||s(x))}),v=fe((x,P)=>{K(g.current.onLayoutChanged,x)||(g.current.onLayoutChanged=x,l==null||l(x,{isUserInteraction:P}))}),y=De(i),S=j(null),[m,w]=sn(),C=j({lastExpandedPanelSizes:{},layouts:{},panels:[],resizeTargetMinimumSize:b,separators:[]}),I=Te(S,a);ln(y,u);let $=fe((x,P)=>{var N;let k=q(),L=Xe(x),M=X(x);if(M){let te=!1;return k.state==="active"&&(te=k.hitRegions.some(ne=>ne.group===L)),{flexGrow:(N=M.layout[P])!=null?N:1,pointerEvents:te?"none":void 0}}if(n!=null&&n[P])return{flexGrow:n==null?void 0:n[P]}}),D=Oe({defaultLayout:n,disableCursor:o}),F=Mt(()=>({get disableCursor(){return!!D.disableCursor},getPanelStyles:$,id:y,orientation:c,registerPanel:x=>{let P=C.current;return P.panels=Re(c,[...P.panels,x]),w(),()=>{P.panels=P.panels.filter(k=>k!==x),w()}},registerSeparator:x=>{let P=C.current;return P.separators=Re(c,[...P.separators,x]),w(),()=>{P.separators=P.separators.filter(k=>k!==x),w()}},updatePanelProps:(x,{disabled:P})=>{let k=C.current.panels.find(N=>N.id===x);k&&(k.panelConstraints.disabled=P);let L=Xe(y),M=X(y);L&&M&&V(L,A(E({},M),{derivedPanelConstraints:Le(L)}))},updateSeparatorProps:(x,{disabled:P,disableDoubleClick:k})=>{let L=C.current.separators.find(M=>M.id===x);L&&(L.disabled=P,L.disableDoubleClick=k)}}),[$,y,w,c,D]),W=j(null);return ee(()=>{let x=S.current;if(x===null)return;let P=C.current,k;if(D.defaultLayout!==void 0&&Object.keys(D.defaultLayout).length===P.panels.length){k={};for(let H of P.panels){let oe=D.defaultLayout[H.id];oe!==void 0&&(k[H.id]=oe)}}let L={disabled:!!r,element:x,id:y,mutableState:{defaultLayout:k,disableCursor:!!D.disableCursor,expandedPanelSizes:C.current.lastExpandedPanelSizes,layouts:C.current.layouts},orientation:c,panels:P.panels,resizeTargetMinimumSize:P.resizeTargetMinimumSize,separators:P.separators};W.current=L;let M=an(L),{defaultLayoutDeferred:N,derivedPanelConstraints:te,layout:ne}=X(L.id,!0);!N&&te.length>0&&(d(ne),v(ne,!1));let ue=Ee(y,H=>{let{defaultLayoutDeferred:oe,derivedPanelConstraints:je,layout:ge}=H.next;if(oe||je.length===0)return;let wt=L.panels.map(({id:U})=>U).join(",");L.mutableState.layouts[wt]=ge,je.forEach(U=>{var Be;if(U.collapsible){let{layout:xe}=(Be=H.prev)!=null?Be:{};if(xe){let Ct=T(U.collapsedSize,ge[U.panelId]),Pt=T(U.collapsedSize,xe[U.panelId]);Ct&&!Pt&&(L.mutableState.expandedPanelSizes[U.panelId]=xe[U.panelId])}}});let xt=q().state!=="active";d(ge),xt&&v(ge,H.isUserInteraction)});return()=>{W.current=null,M(),ue()}},[r,y,v,d,c,m,D]),Se(()=>{let x=W.current;x&&(x.mutableState.defaultLayout=n,x.mutableState.disableCursor=!!o)}),pe(St.Provider,{value:F,children:pe("div",A(E({},h),{className:t,"data-group":!0,"data-testid":y,id:y,ref:I,style:A(E({height:"100%",width:"100%",overflow:"hidden"},p),{display:"flex",flexDirection:c==="horizontal"?"row":"column",flexWrap:"nowrap",touchAction:c==="horizontal"?"pan-y":"pan-x"}),children:e}))})}Ne.displayName="Group";function Ae(){let e=It(St);return R(e,"Group Context not found; did you render a Panel or Separator outside of a Group?"),e}function un(e,t){let{id:n}=Ae(),o=j({collapse:Pe,expand:Pe,getSize:()=>({asPercentage:0,inPixels:0}),isCollapsed:()=>!1,resize:Pe});st(t,()=>o.current,[]),ee(()=>{Object.assign(o.current,bt({groupId:n,panelId:e}))})}function Fe(f){var g=f,{children:e,className:t,collapsedSize:n="0%",collapsible:o=!1,defaultSize:r,disabled:a,elementRef:u,groupResizeBehavior:i="preserve-relative-size",id:s,maxSize:l="100%",minSize:c="0%",onResize:b,panelRef:p,style:h}=g,z=J(g,["children","className","collapsedSize","collapsible","defaultSize","disabled","elementRef","groupResizeBehavior","id","maxSize","minSize","onResize","panelRef","style"]);let d=!!s,v=De(s),y=Oe({disabled:a}),S=j(null),m=Te(S,u),{getPanelStyles:w,id:C,orientation:I,registerPanel:$,updatePanelProps:D}=Ae(),F=b!==null,W=fe((L,M,N)=>{b==null||b(L,s,N)});ee(()=>{let L=S.current;if(L!==null){let M={element:L,id:v,idIsStable:d,mutableValues:{expandToSize:void 0,prevSize:void 0},onResize:F?W:void 0,panelConstraints:{groupResizeBehavior:i,collapsedSize:n,collapsible:o,defaultSize:r,disabled:y.disabled,maxSize:l,minSize:c}};return $(M)}},[i,n,o,r,F,v,d,l,c,W,$,y]),Se(()=>{D(v,{disabled:a})},[a,v,D]),un(v,p);let x=()=>{let L=w(C,v);if(L)return JSON.stringify(L)},P=Et(L=>Ee(C,L),x,x),k;return P?k=JSON.parse(P):r!==void 0?k={flexGrow:void 0,flexShrink:void 0,flexBasis:r}:k={flexGrow:1},pe("div",A(E({},z),{"data-disabled":a||void 0,"data-panel":!0,"data-testid":v,id:v,ref:m,style:E(A(E({},cn),{display:"flex",flexBasis:0,flexShrink:1,overflow:"visible"}),k),children:pe("div",{className:t,style:A(E({maxHeight:"100%",maxWidth:"100%",flexGrow:1,overflow:"auto"},h),{touchAction:I==="horizontal"?"pan-y":"pan-x"}),children:e})}))}Fe.displayName="Panel";var cn={minHeight:0,maxHeight:"100%",height:"auto",minWidth:0,maxWidth:"100%",width:"auto",border:"none",borderWidth:0,padding:0,margin:0};function dn({layout:e,panelConstraints:t,panelId:n,panelIndex:o}){let r,a,u=e[n],i=t.find(s=>s.panelId===n);if(i){let s=i.maxSize,l=i.collapsible?i.collapsedSize:i.minSize,c=[o,o+1];a=Z({layout:he({delta:l-u,initialLayout:e,panelConstraints:t,pivotIndices:c,prevLayout:e}),panelConstraints:t})[n],r=Z({layout:he({delta:s-u,initialLayout:e,panelConstraints:t,pivotIndices:c,prevLayout:e}),panelConstraints:t})[n]}return{valueControls:n,valueMax:r,valueMin:a,valueNow:u}}function Ge(s){var l=s,{children:e,className:t,disabled:n,disableDoubleClick:o,elementRef:r,id:a,style:u}=l,i=J(l,["children","className","disabled","disableDoubleClick","elementRef","id","style"]);let c=De(a),b=Oe({disabled:n,disableDoubleClick:o}),[p,h]=be({}),[z,f]=be("inactive"),[g,d]=be(!1),v=j(null),y=Te(v,r),{disableCursor:S,id:m,orientation:w,registerSeparator:C,updateSeparatorProps:I}=Ae(),$=w==="horizontal"?"vertical":"horizontal";ee(()=>{let W=v.current;if(W!==null){let x={disabled:b.disabled,disableDoubleClick:b.disableDoubleClick,element:W,id:c},P=C(x),k=$t(M=>{f(M.next.state!=="inactive"&&M.next.hitRegions.some(N=>N.separator===x)?M.next.state:"inactive")}),L=Ee(m,M=>{let{derivedPanelConstraints:N,layout:te,separatorToPanels:ne}=M.next,ue=ne.get(x);if(ue){let H=ue[0],oe=ue.indexOf(H);h(dn({layout:te,panelConstraints:N,panelId:H.id,panelIndex:oe}))}});return()=>{k(),L(),P()}}},[m,c,C,b]),Se(()=>{I(c,{disabled:n,disableDoubleClick:o})},[n,o,c,I]);let D;n&&!S&&(D="not-allowed");let F;return n?F="disabled":z==="active"?F="active":g?F="focus":F=z,pe("div",A(E({},i),{"aria-controls":p.valueControls,"aria-disabled":n||void 0,"aria-orientation":$,"aria-valuemax":p.valueMax,"aria-valuemin":p.valueMin,"aria-valuenow":p.valueNow,children:e,className:t,"data-separator":F,"data-testid":c,id:c,onBlur:()=>d(!1),onFocus:()=>d(!0),ref:y,role:"separator",style:A(E({flexBasis:"auto",cursor:D},u),{flexGrow:0,flexShrink:0,touchAction:"none"}),tabIndex:n?void 0:0}))}Ge.displayName="Separator";import{jsx as we}from"react/jsx-runtime";var yn=n=>{var o=n,{className:e}=o,t=J(o,["className"]);return we(Ne,E({className:Ce("flex h-full w-full data-[panel-group-direction=vertical]:flex-col",e)},t))},zn=Fe,Sn=o=>{var r=o,{withHandle:e,className:t}=r,n=J(r,["withHandle","className"]);return we(Ge,A(E({className:Ce("relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",t)},n),{children:e&&we("div",{className:"z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border",children:we(pn,{className:"h-2.5 w-2.5"})})}))};export{yn as a,zn as b,Sn as c};
|
|
2
|
+
//# sourceMappingURL=chunk-P2J4T7VX.js.map
|