@lawnguru/ui 0.0.0-stage → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -3
- 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-2ZNU7SP6.js +2 -0
- package/dist/chunk-2ZNU7SP6.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-C6BWVSUV.js +2 -0
- package/dist/chunk-C6BWVSUV.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-EPZCTKQC.js +2 -0
- package/dist/chunk-EPZCTKQC.js.map +7 -0
- package/dist/chunk-EWEMD7AS.js +2 -0
- package/dist/chunk-EWEMD7AS.js.map +7 -0
- package/dist/chunk-F4MEBVNH.js +2 -0
- package/dist/chunk-F4MEBVNH.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-HE3CSN3R.js +2 -0
- package/dist/chunk-HE3CSN3R.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-JAPB4ZVX.js +2 -0
- package/dist/chunk-JAPB4ZVX.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-KLHKZS2N.js +2 -0
- package/dist/chunk-KLHKZS2N.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-LS37UWHK.js +2 -0
- package/dist/chunk-LS37UWHK.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-N4JYYENQ.js +2 -0
- package/dist/chunk-N4JYYENQ.js.map +7 -0
- package/dist/chunk-NAS2AFA3.js +2 -0
- package/dist/chunk-NAS2AFA3.js.map +7 -0
- package/dist/chunk-NMUGPQJR.js +2 -0
- package/dist/chunk-NMUGPQJR.js.map +7 -0
- package/dist/chunk-OSONBAJY.js +2 -0
- package/dist/chunk-OSONBAJY.js.map +7 -0
- package/dist/chunk-P2J4T7VX.js +2 -0
- package/dist/chunk-P2J4T7VX.js.map +7 -0
- package/dist/chunk-PLDAFSMG.js +2 -0
- package/dist/chunk-PLDAFSMG.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-U26IEDZT.js +2 -0
- package/dist/chunk-U26IEDZT.js.map +7 -0
- package/dist/chunk-UQUO6MUG.js +2 -0
- package/dist/chunk-UQUO6MUG.js.map +7 -0
- package/dist/chunk-UUB5URTQ.js +2 -0
- package/dist/chunk-UUB5URTQ.js.map +7 -0
- package/dist/chunk-V3VA2O5O.js +2 -0
- package/dist/chunk-V3VA2O5O.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-YLCKVKJM.js +2 -0
- package/dist/chunk-YLCKVKJM.js.map +7 -0
- package/dist/chunk-Z2DKDZMC.js +2 -0
- package/dist/chunk-Z2DKDZMC.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 +133 -6
|
@@ -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 r}from"./chunk-WIFBPNRH.js";import{a as e,c as o}from"./chunk-WHECA25N.js";import*as n from"react";import{Slot as p}from"radix-ui";import{cva as v}from"class-variance-authority";import{jsx as f}from"react/jsx-runtime";var g=v("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-lg text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",{variants:{variant:{default:"bg-primary text-primary-foreground shadow hover:bg-primary/90",destructive:"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90",outline:"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground","destructive-outline":"border border-input bg-background text-destructive shadow-sm hover:bg-destructive/5",secondary:"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2",sm:"h-8 px-3 text-xs",lg:"h-10 px-8",xl:"h-14 px-8",icon:"h-9 w-9"}},defaultVariants:{variant:"default",size:"default"}}),b=n.forwardRef((m,c)=>{var t=m,{className:s,variant:i,size:a,asChild:d=!1}=t,u=o(t,["className","variant","size","asChild"]);let l=d?p.Slot:"button";return f(l,e({className:r(g({variant:i,size:a,className:s})),ref:c},u))});b.displayName="Button";export{g as a,b};
|
|
2
|
+
//# sourceMappingURL=chunk-JAPB4ZVX.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/button/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\r\nimport { Slot as SlotPrimitive } from \"radix-ui\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\n\r\nimport { cn } from \"@/lib/utils\";\r\n\r\nconst buttonVariants = cva(\r\n \"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-lg text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n \"bg-primary text-primary-foreground shadow hover:bg-primary/90\",\r\n destructive:\r\n \"bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90\",\r\n outline:\r\n \"border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground\",\r\n \"destructive-outline\":\r\n \"border border-input bg-background text-destructive shadow-sm hover:bg-destructive/5\",\r\n secondary:\r\n \"bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80\",\r\n ghost: \"hover:bg-accent hover:text-accent-foreground\",\r\n link: \"text-primary underline-offset-4 hover:underline\",\r\n },\r\n size: {\r\n default: \"h-9 px-4 py-2\",\r\n sm: \"h-8 px-3 text-xs\",\r\n lg: \"h-10 px-8\",\r\n xl: \"h-14 px-8\",\r\n icon: \"h-9 w-9\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n);\r\n\r\nexport type ButtonProps = {\r\n asChild?: boolean;\r\n} & React.ButtonHTMLAttributes<HTMLButtonElement> &\r\n VariantProps<typeof buttonVariants>;\r\n\r\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\r\n ({ className, variant, size, asChild = false, ...props }, ref) => {\r\n const Comp = asChild ? SlotPrimitive.Slot : \"button\";\r\n return (\r\n <Comp\r\n className={cn(buttonVariants({ variant, size, className }))}\r\n ref={ref}\r\n {...props}\r\n />\r\n );\r\n },\r\n);\r\nButton.displayName = \"Button\";\r\n\r\nexport { Button, buttonVariants };\r\n"],
|
|
5
|
+
"mappings": "uFAAA,UAAYA,MAAW,QACvB,OAAS,QAAQC,MAAqB,WACtC,OAAS,OAAAC,MAA8B,2BA8CjC,cAAAC,MAAA,oBA1CN,IAAMC,EAAiBC,EACrB,wSACA,CACE,SAAU,CACR,QAAS,CACP,QACE,gEACF,YACE,+EACF,QACE,2FACF,sBACE,sFACF,UACE,yEACF,MAAO,+CACP,KAAM,iDACR,EACA,KAAM,CACJ,QAAS,gBACT,GAAI,mBACJ,GAAI,YACJ,GAAI,YACJ,KAAM,SACR,CACF,EACA,gBAAiB,CACf,QAAS,UACT,KAAM,SACR,CACF,CACF,EAOMC,EAAe,aACnB,CAACC,EAAyDC,IAAQ,CAAjE,IAAAC,EAAAF,EAAE,WAAAG,EAAW,QAAAC,EAAS,KAAAC,EAAM,QAAAC,EAAU,EA7CzC,EA6CGJ,EAAgDK,EAAAC,EAAhDN,EAAgD,CAA9C,YAAW,UAAS,OAAM,YAC3B,IAAMO,EAAOH,EAAUI,EAAc,KAAO,SAC5C,OACEd,EAACa,EAAAE,EAAA,CACC,UAAWC,EAAGf,EAAe,CAAE,QAAAO,EAAS,KAAAC,EAAM,UAAAF,CAAU,CAAC,CAAC,EAC1D,IAAKF,GACDM,EACN,CAEJ,CACF,EACAR,EAAO,YAAc",
|
|
6
|
+
"names": ["React", "SlotPrimitive", "cva", "jsx", "buttonVariants", "cva", "Button", "_a", "ref", "_b", "className", "variant", "size", "asChild", "props", "__objRest", "Comp", "SlotPrimitive", "__spreadValues", "cn"]
|
|
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 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-KLHKZS2N.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/tabs/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\nimport { Tabs as TabsPrimitive } from \"radix-ui\";\r\n\r\nimport { cn } from \"@/lib/utils\";\r\n\r\nconst Tabs = TabsPrimitive.Root;\r\n\r\nconst tabsListVariants = cva(\"text-muted-foreground\", {\r\n variants: {\r\n variant: {\r\n default:\r\n \"inline-flex h-9 items-center justify-center rounded-lg bg-muted p-1\",\r\n underline:\r\n \"flex h-auto w-full items-center justify-start rounded-none border-b bg-transparent p-0\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n});\r\n\r\nconst tabsTriggerVariants = cva(\r\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\",\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n \"rounded-md px-3 py-1 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow\",\r\n underline:\r\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\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n },\r\n },\r\n);\r\n\r\n// Lets TabsList share its variant with every descendant TabsTrigger, so consumers\r\n// only set variant once on the list (mirrors ToggleGroup/ToggleGroupItem).\r\nconst TabsListContext = React.createContext<\r\n VariantProps<typeof tabsTriggerVariants>\r\n>({ variant: \"default\" });\r\n\r\nconst TabsList = React.forwardRef<\r\n React.ElementRef<typeof TabsPrimitive.List>,\r\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.List> &\r\n VariantProps<typeof tabsListVariants>\r\n>(({ className, variant, children, ...props }, ref) => (\r\n <TabsListContext.Provider value={{ variant }}>\r\n <TabsPrimitive.List\r\n ref={ref}\r\n className={cn(tabsListVariants({ variant }), className)}\r\n {...props}\r\n >\r\n {children}\r\n </TabsPrimitive.List>\r\n </TabsListContext.Provider>\r\n));\r\nTabsList.displayName = TabsPrimitive.List.displayName;\r\n\r\nconst TabsTrigger = React.forwardRef<\r\n React.ElementRef<typeof TabsPrimitive.Trigger>,\r\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Trigger> &\r\n VariantProps<typeof tabsTriggerVariants>\r\n>(({ className, variant, ...props }, ref) => {\r\n const context = React.useContext(TabsListContext);\r\n\r\n return (\r\n <TabsPrimitive.Trigger\r\n ref={ref}\r\n className={cn(\r\n tabsTriggerVariants({ variant: variant ?? context.variant }),\r\n className,\r\n )}\r\n {...props}\r\n />\r\n );\r\n});\r\nTabsTrigger.displayName = TabsPrimitive.Trigger.displayName;\r\n\r\nconst TabsContent = React.forwardRef<\r\n React.ElementRef<typeof TabsPrimitive.Content>,\r\n React.ComponentPropsWithoutRef<typeof TabsPrimitive.Content>\r\n>(({ className, ...props }, ref) => (\r\n <TabsPrimitive.Content\r\n ref={ref}\r\n className={cn(\r\n \"mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2\",\r\n className,\r\n )}\r\n {...props}\r\n />\r\n));\r\nTabsContent.displayName = TabsPrimitive.Content.displayName;\r\n\r\nexport {\r\n Tabs,\r\n TabsList,\r\n TabsTrigger,\r\n TabsContent,\r\n tabsListVariants,\r\n tabsTriggerVariants,\r\n};\r\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 y,b as k}from"./chunk-JAPB4ZVX.js";import{a as e}from"./chunk-WIFBPNRH.js";import{a as r,b as v,c as u}from"./chunk-WHECA25N.js";import*as p from"react";import{ChevronDownIcon as D,ChevronLeftIcon as N,ChevronRightIcon as R}from"lucide-react";import{DayPicker as B,getDefaultClassNames as C}from"react-day-picker";import{jsx as o}from"react/jsx-runtime";function q(b){var _=b,{className:f,classNames:h,showOutsideDays:a=!0,captionLayout:c="label",buttonVariant:w="ghost",formatters:i,components:x}=_,g=u(_,["className","classNames","showOutsideDays","captionLayout","buttonVariant","formatters","components"]);let t=C();return o(B,r({showOutsideDays:a,className:e("bg-background group/calendar p-3 [--cell-width:auto] [--cell-height:36px] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent",String.raw`rtl:**:[.rdp-button\_next>svg]:rotate-180`,String.raw`rtl:**:[.rdp-button\_previous>svg]:rotate-180`,f),captionLayout:c,formatters:r({formatMonthDropdown:n=>n.toLocaleString("default",{month:"short"})},i),classNames:r({root:e("w-fit",t.root),months:e("relative flex flex-col gap-4 md:flex-row",t.months),month:e("flex w-full flex-col gap-4",t.month),nav:e("absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1",t.nav),button_previous:e(y({variant:w}),"h-[--cell-height] w-[--cell-width] select-none p-0 aria-disabled:opacity-50",t.button_previous),button_next:e(y({variant:w}),"h-[--cell-height] w-[--cell-width] select-none p-0 aria-disabled:opacity-50",t.button_next),month_caption:e("flex h-[--cell-height] w-full items-center justify-center px-[--cell-width]",t.month_caption),dropdowns:e("flex h-[--cell-height] w-full items-center justify-center gap-1.5 text-sm font-medium",t.dropdowns),dropdown_root:e("has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border",t.dropdown_root),dropdown:e("absolute inset-0 opacity-0",t.dropdown),caption_label:e("select-none font-medium",c==="label"?"text-sm":"[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5",t.caption_label),table:"w-full border-collapse",weekdays:e("flex",t.weekdays),weekday:e("text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal",t.weekday),week:e("mt-2 flex w-full h-[--cell-height]",t.week),week_number_header:e("w-[--cell-width] select-none",t.week_number_header),week_number:e("text-muted-foreground select-none text-[0.8rem]",t.week_number),day:e("group/day relative aspect-square h-[--cell-height] w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md",t.day),range_start:e("bg-accent rounded-l-md",t.range_start),range_middle:e("rounded-none",t.range_middle),range_end:e("bg-accent rounded-r-md",t.range_end),today:e("bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none",t.today),outside:e("text-muted-foreground aria-selected:text-muted-foreground",t.outside),disabled:e("text-muted-foreground opacity-50",t.disabled),hidden:e("invisible",t.hidden)},h),components:r({Root:m=>{var s=m,{className:n,rootRef:d}=s,l=u(s,["className","rootRef"]);return o("div",r({"data-slot":"calendar",ref:d,className:e(n)},l))},Chevron:m=>{var s=m,{className:n,orientation:d}=s,l=u(s,["className","orientation"]);return d==="left"?o(N,r({className:e("size-4",n)},l)):d==="right"?o(R,r({className:e("size-4",n)},l)):o(D,r({className:e("size-4",n)},l))},DayButton:z,WeekNumber:l=>{var m=l,{children:n}=m,d=u(m,["children"]);return o("td",v(r({},d),{children:o("div",{className:"flex w-[--cell-width] h-[--cell-height] items-center justify-center text-center",children:n})}))}},x)},g))}function z(w){var i=w,{className:f,day:h,modifiers:a}=i,c=u(i,["className","day","modifiers"]);let x=C(),g=p.useRef(null);return p.useEffect(()=>{var b;a.focused&&((b=g.current)==null||b.focus())},[a.focused]),o(k,r({ref:g,variant:"ghost",size:"icon","data-day":h.date.toLocaleDateString(),"data-selected-single":a.selected&&!a.range_start&&!a.range_end&&!a.range_middle,"data-range-start":a.range_start,"data-range-end":a.range_end,"data-range-middle":a.range_middle,className:e("data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-primary data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 flex aspect-square h-[--cell-height] w-full min-w-[--cell-width] flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] [&>span]:text-xs [&>span]:opacity-70",x.day,f)},c))}export{q as a,z as b};
|
|
2
|
+
//# sourceMappingURL=chunk-LS37UWHK.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/calendar/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from 'react'\r\nimport { ChevronDownIcon, ChevronLeftIcon, ChevronRightIcon } from 'lucide-react'\r\nimport { DayButton, DayPicker, getDefaultClassNames } from 'react-day-picker'\r\n\r\nimport { cn } from '@/lib/utils'\r\nimport { Button, buttonVariants } from '@/components/button'\r\n\r\nfunction Calendar({\r\n className,\r\n classNames,\r\n showOutsideDays = true,\r\n captionLayout = 'label',\r\n buttonVariant = 'ghost',\r\n formatters,\r\n components,\r\n ...props\r\n}: React.ComponentProps<typeof DayPicker> & {\r\n buttonVariant?: React.ComponentProps<typeof Button>['variant']\r\n}) {\r\n const defaultClassNames = getDefaultClassNames()\r\n\r\n return (\r\n <DayPicker\r\n showOutsideDays={showOutsideDays}\r\n className={cn(\r\n 'bg-background group/calendar p-3 [--cell-width:auto] [--cell-height:36px] [[data-slot=card-content]_&]:bg-transparent [[data-slot=popover-content]_&]:bg-transparent',\r\n String.raw`rtl:**:[.rdp-button\\_next>svg]:rotate-180`,\r\n String.raw`rtl:**:[.rdp-button\\_previous>svg]:rotate-180`,\r\n className,\r\n )}\r\n captionLayout={captionLayout}\r\n formatters={{\r\n formatMonthDropdown: (date) => date.toLocaleString('default', { month: 'short' }),\r\n ...formatters,\r\n }}\r\n classNames={{\r\n root: cn('w-fit', defaultClassNames.root),\r\n months: cn('relative flex flex-col gap-4 md:flex-row', defaultClassNames.months),\r\n month: cn('flex w-full flex-col gap-4', defaultClassNames.month),\r\n nav: cn(\r\n 'absolute inset-x-0 top-0 flex w-full items-center justify-between gap-1',\r\n defaultClassNames.nav,\r\n ),\r\n button_previous: cn(\r\n buttonVariants({ variant: buttonVariant }),\r\n 'h-[--cell-height] w-[--cell-width] select-none p-0 aria-disabled:opacity-50',\r\n defaultClassNames.button_previous,\r\n ),\r\n button_next: cn(\r\n buttonVariants({ variant: buttonVariant }),\r\n 'h-[--cell-height] w-[--cell-width] select-none p-0 aria-disabled:opacity-50',\r\n defaultClassNames.button_next,\r\n ),\r\n month_caption: cn(\r\n 'flex h-[--cell-height] w-full items-center justify-center px-[--cell-width]',\r\n defaultClassNames.month_caption,\r\n ),\r\n dropdowns: cn(\r\n 'flex h-[--cell-height] w-full items-center justify-center gap-1.5 text-sm font-medium',\r\n defaultClassNames.dropdowns,\r\n ),\r\n dropdown_root: cn(\r\n 'has-focus:border-ring border-input shadow-xs has-focus:ring-ring/50 has-focus:ring-[3px] relative rounded-md border',\r\n defaultClassNames.dropdown_root,\r\n ),\r\n dropdown: cn('absolute inset-0 opacity-0', defaultClassNames.dropdown),\r\n caption_label: cn(\r\n 'select-none font-medium',\r\n captionLayout === 'label'\r\n ? 'text-sm'\r\n : '[&>svg]:text-muted-foreground flex h-8 items-center gap-1 rounded-md pl-2 pr-1 text-sm [&>svg]:size-3.5',\r\n defaultClassNames.caption_label,\r\n ),\r\n table: 'w-full border-collapse',\r\n weekdays: cn('flex', defaultClassNames.weekdays),\r\n weekday: cn(\r\n 'text-muted-foreground flex-1 select-none rounded-md text-[0.8rem] font-normal',\r\n defaultClassNames.weekday,\r\n ),\r\n week: cn('mt-2 flex w-full h-[--cell-height]', defaultClassNames.week),\r\n week_number_header: cn(\r\n 'w-[--cell-width] select-none',\r\n defaultClassNames.week_number_header,\r\n ),\r\n week_number: cn(\r\n 'text-muted-foreground select-none text-[0.8rem]',\r\n defaultClassNames.week_number,\r\n ),\r\n day: cn(\r\n 'group/day relative aspect-square h-[--cell-height] w-full select-none p-0 text-center [&:first-child[data-selected=true]_button]:rounded-l-md [&:last-child[data-selected=true]_button]:rounded-r-md',\r\n defaultClassNames.day,\r\n ),\r\n range_start: cn('bg-accent rounded-l-md', defaultClassNames.range_start),\r\n range_middle: cn('rounded-none', defaultClassNames.range_middle),\r\n range_end: cn('bg-accent rounded-r-md', defaultClassNames.range_end),\r\n today: cn(\r\n 'bg-accent text-accent-foreground rounded-md data-[selected=true]:rounded-none',\r\n defaultClassNames.today,\r\n ),\r\n outside: cn(\r\n 'text-muted-foreground aria-selected:text-muted-foreground',\r\n defaultClassNames.outside,\r\n ),\r\n disabled: cn('text-muted-foreground opacity-50', defaultClassNames.disabled),\r\n hidden: cn('invisible', defaultClassNames.hidden),\r\n ...classNames,\r\n }}\r\n components={{\r\n Root: ({ className, rootRef, ...props }) => {\r\n return <div data-slot=\"calendar\" ref={rootRef} className={cn(className)} {...props} />\r\n },\r\n Chevron: ({ className, orientation, ...props }) => {\r\n if (orientation === 'left') {\r\n return <ChevronLeftIcon className={cn('size-4', className)} {...props} />\r\n }\r\n\r\n if (orientation === 'right') {\r\n return <ChevronRightIcon className={cn('size-4', className)} {...props} />\r\n }\r\n\r\n return <ChevronDownIcon className={cn('size-4', className)} {...props} />\r\n },\r\n DayButton: CalendarDayButton,\r\n WeekNumber: ({ children, ...props }) => {\r\n return (\r\n <td {...props}>\r\n <div className=\"flex w-[--cell-width] h-[--cell-height] items-center justify-center text-center\">\r\n {children}\r\n </div>\r\n </td>\r\n )\r\n },\r\n ...components,\r\n }}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nfunction CalendarDayButton({\r\n className,\r\n day,\r\n modifiers,\r\n ...props\r\n}: React.ComponentProps<typeof DayButton>) {\r\n const defaultClassNames = getDefaultClassNames()\r\n\r\n const ref = React.useRef<HTMLButtonElement>(null)\r\n React.useEffect(() => {\r\n if (modifiers.focused) ref.current?.focus()\r\n }, [modifiers.focused])\r\n\r\n return (\r\n <Button\r\n ref={ref}\r\n variant=\"ghost\"\r\n size=\"icon\"\r\n data-day={day.date.toLocaleDateString()}\r\n data-selected-single={\r\n modifiers.selected &&\r\n !modifiers.range_start &&\r\n !modifiers.range_end &&\r\n !modifiers.range_middle\r\n }\r\n data-range-start={modifiers.range_start}\r\n data-range-end={modifiers.range_end}\r\n data-range-middle={modifiers.range_middle}\r\n className={cn(\r\n 'data-[selected-single=true]:bg-primary data-[selected-single=true]:text-primary-foreground data-[range-middle=true]:bg-accent data-[range-middle=true]:text-primary data-[range-start=true]:bg-primary data-[range-start=true]:text-primary-foreground data-[range-end=true]:bg-primary data-[range-end=true]:text-primary-foreground group-data-[focused=true]/day:border-ring group-data-[focused=true]/day:ring-ring/50 flex aspect-square h-[--cell-height] w-full min-w-[--cell-width] flex-col gap-1 font-normal leading-none data-[range-end=true]:rounded-md data-[range-middle=true]:rounded-none data-[range-start=true]:rounded-md group-data-[focused=true]/day:relative group-data-[focused=true]/day:z-10 group-data-[focused=true]/day:ring-[3px] [&>span]:text-xs [&>span]:opacity-70',\r\n defaultClassNames.day,\r\n className,\r\n )}\r\n {...props}\r\n />\r\n )\r\n}\r\n\r\nexport { Calendar, CalendarDayButton }\r\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["React", "ChevronDownIcon", "ChevronLeftIcon", "ChevronRightIcon", "DayPicker", "getDefaultClassNames", "jsx", "Calendar", "_a", "_b", "className", "classNames", "showOutsideDays", "captionLayout", "buttonVariant", "formatters", "components", "props", "__objRest", "defaultClassNames", "getDefaultClassNames", "DayPicker", "__spreadValues", "cn", "date", "buttonVariants", "rootRef", "_c", "_d", "orientation", "ChevronLeftIcon", "ChevronRightIcon", "ChevronDownIcon", "CalendarDayButton", "_e", "_f", "children", "__spreadProps", "day", "modifiers", "ref", "Button"]
|
|
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 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-N4JYYENQ.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/badge/index.tsx"],
|
|
4
|
+
"sourcesContent": ["import * as React from \"react\";\r\nimport { cva, type VariantProps } from \"class-variance-authority\";\r\n\r\nimport { cn } from \"@/lib/utils\";\r\n\r\nconst badgeVariants = cva(\r\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\",\r\n {\r\n variants: {\r\n variant: {\r\n default:\r\n \"border-transparent bg-primary text-primary-foreground shadow hover:bg-primary/80\",\r\n secondary:\r\n \"border-transparent bg-secondary text-secondary-foreground hover:bg-secondary/80\",\r\n destructive:\r\n \"border-transparent bg-destructive text-destructive-foreground shadow hover:bg-destructive/80\",\r\n highlight:\r\n \"border-transparent bg-highlight text-highlight-foreground shadow hover:bg-highlight/80\",\r\n outline: \"text-foreground\",\r\n \"brand-silent\":\r\n \"border-transparent bg-surface-color-brand-silent font-medium tracking-[0.015em] text-content-brand\",\r\n },\r\n size: {\r\n default: \"\",\r\n chip: \"h-5 min-w-5 justify-center rounded-full px-0 py-0 tabular-nums\",\r\n pill: \"h-5 min-w-5 justify-center rounded-full px-1.5 py-0.5 text-[11px] leading-[14px]\",\r\n },\r\n },\r\n defaultVariants: {\r\n variant: \"default\",\r\n size: \"default\",\r\n },\r\n },\r\n);\r\n\r\nexport type BadgeProps = {} & React.HTMLAttributes<HTMLDivElement> &\r\n VariantProps<typeof badgeVariants>;\r\n\r\nfunction Badge({ className, variant, size, ...props }: BadgeProps) {\r\n return (\r\n <div\r\n className={cn(badgeVariants({ variant, size }), className)}\r\n {...props}\r\n />\r\n );\r\n}\r\n\r\nexport { Badge, badgeVariants };\r\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 f,f as l}from"./chunk-HE3CSN3R.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-NAS2AFA3.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}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 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-OSONBAJY.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/components/photo-upload/index.tsx"],
|
|
4
|
+
"sourcesContent": ["\"use client\";\r\n\r\nimport * as React from \"react\";\r\nimport { ArrowUpIcon, XIcon } from \"lucide-react\";\r\n\r\nimport { cn } from \"@/lib/utils\";\r\nimport { Spinner } from \"@/components/spinner\";\r\n\r\nexport type PhotoUploadFile = {\r\n id: string;\r\n name: string;\r\n previewUrl?: string;\r\n status: \"uploading\" | \"uploaded\" | \"error\";\r\n error?: string;\r\n};\r\n\r\nexport type PhotoUploadRejectReason = \"max-files\" | \"max-size\" | \"type\";\r\n\r\nexport type PhotoUploadProps = Omit<React.ComponentProps<\"div\">, \"onError\"> & {\r\n files: PhotoUploadFile[];\r\n onAdd: (files: File[]) => void;\r\n onRemove: (id: string) => void;\r\n onReject?: (file: File, reason: PhotoUploadRejectReason) => void;\r\n accept?: string;\r\n maxFiles?: number;\r\n maxSizeBytes?: number;\r\n disabled?: boolean;\r\n label?: React.ReactNode;\r\n hint?: React.ReactNode;\r\n uploadedLabel?: string;\r\n};\r\n\r\nfunction matchesAccept(file: File, accept: string) {\r\n return accept\r\n .split(\",\")\r\n .map((type) => type.trim().toLowerCase())\r\n .some((type) => {\r\n if (type.startsWith(\".\")) return file.name.toLowerCase().endsWith(type);\r\n if (type.endsWith(\"/*\")) return file.type.startsWith(type.slice(0, -1));\r\n return file.type === type;\r\n });\r\n}\r\n\r\n/**\r\n * Dropzone and file list for photos. The consumer owns the upload and each file's status.\r\n * @param props.files - files already added, with their upload status\r\n * @param props.onAdd - called with the files that passed validation\r\n * @param props.onRemove - called with the id of the file to remove\r\n * @param props.onReject - called for each file that failed validation\r\n */\r\nfunction PhotoUpload({\r\n className,\r\n files,\r\n onAdd,\r\n onRemove,\r\n onReject,\r\n accept = \"image/jpeg,image/png\",\r\n maxFiles,\r\n maxSizeBytes,\r\n disabled,\r\n label = \"Choose files or drag them here\",\r\n hint = \"JPG or PNG \u00B7 10MB per file\",\r\n uploadedLabel = \"Uploaded\",\r\n ...props\r\n}: PhotoUploadProps) {\r\n const inputRef = React.useRef<HTMLInputElement>(null);\r\n const [dragging, setDragging] = React.useState(false);\r\n const full = maxFiles !== undefined && files.length >= maxFiles;\r\n const inactive = disabled || full;\r\n\r\n const addFiles = (incoming: File[]) => {\r\n const accepted: File[] = [];\r\n let slots =\r\n maxFiles === undefined ? Infinity : Math.max(maxFiles - files.length, 0);\r\n\r\n for (const file of incoming) {\r\n if (!matchesAccept(file, accept)) {\r\n onReject?.(file, \"type\");\r\n } else if (maxSizeBytes !== undefined && file.size > maxSizeBytes) {\r\n onReject?.(file, \"max-size\");\r\n } else if (slots <= 0) {\r\n onReject?.(file, \"max-files\");\r\n } else {\r\n accepted.push(file);\r\n slots -= 1;\r\n }\r\n }\r\n\r\n if (accepted.length) onAdd(accepted);\r\n };\r\n\r\n const handleDrop = (event: React.DragEvent<HTMLButtonElement>) => {\r\n event.preventDefault();\r\n setDragging(false);\r\n if (inactive) return;\r\n addFiles(Array.from(event.dataTransfer.files));\r\n };\r\n\r\n return (\r\n <div\r\n data-slot=\"photo-upload\"\r\n className={cn(\"flex w-full flex-col gap-3\", className)}\r\n {...props}\r\n >\r\n <button\r\n type=\"button\"\r\n disabled={inactive}\r\n onClick={() => inputRef.current?.click()}\r\n onDragOver={(event) => {\r\n event.preventDefault();\r\n if (!inactive) setDragging(true);\r\n }}\r\n onDragLeave={() => setDragging(false)}\r\n onDrop={handleDrop}\r\n data-dragging={dragging ? \"\" : undefined}\r\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\"\r\n >\r\n <span className=\"flex size-11 items-center justify-center rounded-full border border-muted-foreground text-muted-foreground\">\r\n <ArrowUpIcon className=\"size-5\" aria-hidden=\"true\" />\r\n </span>\r\n <span className=\"text-sm font-medium text-foreground\">{label}</span>\r\n <span className=\"text-xs font-medium text-muted-foreground\">\r\n {hint}\r\n </span>\r\n </button>\r\n <input\r\n ref={inputRef}\r\n type=\"file\"\r\n accept={accept}\r\n multiple={maxFiles !== 1}\r\n className=\"hidden\"\r\n tabIndex={-1}\r\n aria-hidden=\"true\"\r\n onChange={(event) => {\r\n addFiles(Array.from(event.target.files ?? []));\r\n event.target.value = \"\";\r\n }}\r\n />\r\n {files.length > 0 && (\r\n <ul className=\"flex flex-col gap-3\">\r\n {files.map((file) => (\r\n <li\r\n key={file.id}\r\n data-status={file.status}\r\n className=\"flex items-center gap-2 rounded-md border border-foreground/15 bg-background px-3 py-2.5\"\r\n >\r\n {file.previewUrl ? (\r\n <img\r\n src={file.previewUrl}\r\n alt=\"\"\r\n className=\"size-7 shrink-0 rounded-[6px] border border-foreground/15 object-cover\"\r\n />\r\n ) : (\r\n <span className=\"size-7 shrink-0 rounded-[6px] border border-foreground/15 bg-muted\" />\r\n )}\r\n <span className=\"min-w-0 flex-1 truncate text-sm text-foreground\">\r\n {file.name}\r\n </span>\r\n {file.status === \"uploading\" && (\r\n <Spinner className=\"size-4 text-muted-foreground\" />\r\n )}\r\n {file.status === \"uploaded\" && (\r\n <span className=\"text-xs font-medium text-content-brand\">\r\n {uploadedLabel}\r\n </span>\r\n )}\r\n {file.status === \"error\" && (\r\n <span className=\"text-xs font-medium text-destructive\">\r\n {file.error ?? \"Upload failed\"}\r\n </span>\r\n )}\r\n <button\r\n type=\"button\"\r\n disabled={disabled}\r\n onClick={() => onRemove(file.id)}\r\n aria-label={`Remove ${file.name}`}\r\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\"\r\n >\r\n <XIcon className=\"size-4\" />\r\n </button>\r\n </li>\r\n ))}\r\n </ul>\r\n )}\r\n </div>\r\n );\r\n}\r\n\r\nexport { PhotoUpload };\r\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 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
|