@pixonui/react 0.5.14 → 0.5.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -66,6 +66,6 @@ import*as we from'react';import we__default,{useRef,useState,useEffect,createCon
|
|
|
66
66
|
`})]})}function RC({data:e,keys:t,colors:r=["cyan","purple","emerald"],maxValue:o,height:n=300,className:a,...s}){let[i,c]=useState(0),d=we__default.useRef(null);we__default.useEffect(()=>{if(!d.current)return;let h=new ResizeObserver(p=>{p[0]&&c(p[0].contentRect.width);});return h.observe(d.current),()=>h.disconnect()},[]);let m={x:i/2,y:n/2},u=Math.min(i,n)/2-40,f=useMemo(()=>{if(o)return o;let h=0;return e.forEach(p=>{t.forEach(b=>{let w=Number(p[b])||0;w>h&&(h=w);});}),h*1.1||100},[e,t,o]),g=Math.PI*2/e.length,x={cyan:"rgba(6, 182, 212, 0.5)",purple:"rgba(139, 92, 246, 0.5)",emerald:"rgba(16, 185, 129, 0.5)",amber:"rgba(245, 158, 11, 0.5)",rose:"rgba(244, 63, 94, 0.5)"},v={cyan:"#06b6d4",purple:"#8b5cf6",emerald:"#10b981",amber:"#f59e0b",rose:"#f43f5e"};return i===0?jsx("div",{ref:d,style:{height:n}}):jsx("div",{ref:d,className:l("relative w-full select-none",a),style:{height:n},...s,children:jsxs("svg",{width:"100%",height:"100%",viewBox:`0 0 ${i} ${n}`,className:"overflow-visible",children:[[1,2,3,4,5].map(h=>{let p=u/5*h,b=e.map((w,k)=>{let y=g*k-Math.PI/2;return `${m.x+Math.cos(y)*p},${m.y+Math.sin(y)*p}`}).join(" ");return jsx("polygon",{points:b,fill:"none",stroke:"rgba(255,255,255,0.1)",strokeWidth:"1"},h)}),e.map((h,p)=>{let b=g*p-Math.PI/2,w=m.x+Math.cos(b)*u,k=m.y+Math.sin(b)*u,y=m.x+Math.cos(b)*(u+20),N=m.y+Math.sin(b)*(u+20);return jsxs("g",{children:[jsx("line",{x1:m.x,y1:m.y,x2:w,y2:k,stroke:"rgba(255,255,255,0.1)",strokeWidth:"1"}),jsx("text",{x:y,y:N,textAnchor:"middle",dominantBaseline:"middle",fill:"rgba(255,255,255,0.6)",fontSize:"12",children:h.subject})]},p)}),t.map((h,p)=>{let b=e.map((N,C)=>{let L=(Number(N[h])||0)/f*u,H=g*C-Math.PI/2;return `${m.x+Math.cos(H)*L},${m.y+Math.sin(H)*L}`}).join(" "),w=r[p%r.length]||"cyan",k=x[w],y=v[w];return jsx("polygon",{points:b,fill:k,fillOpacity:.3,stroke:y,strokeWidth:2,className:"transition-all duration-500 ease-out hover:fill-opacity-50"},h)})]})})}function SC({data:e,color:t="emerald",height:r=40,strokeWidth:o=2,fill:n=false,className:a,...s}){let i=Math.max(...e),c=Math.min(...e),d=i-c||1,u={cyan:"#06b6d4",purple:"#8b5cf6",emerald:"#10b981",amber:"#f59e0b",rose:"#f43f5e",white:"#ffffff"}[t],f=e.map((v,h)=>{let p=h/(e.length-1)*100,w=95-(v-c)/d*90;return {x:p,y:w}}),g="";if(f.length>0){g=`M ${f[0].x} ${f[0].y}`;for(let v=0;v<f.length-1;v++){let h=f[v],p=f[v+1],b=h.x+(p.x-h.x)/2,w=h.y,k=h.x+(p.x-h.x)/2,y=p.y;g+=` C ${b} ${w}, ${k} ${y}, ${p.x} ${p.y}`;}}let x=n?`${g} L 100 100 L 0 100 Z`:void 0;return jsx("div",{className:l("w-full overflow-hidden",a),style:{height:r},...s,children:jsxs("svg",{width:"100%",height:"100%",viewBox:"0 0 100 100",preserveAspectRatio:"none",className:"overflow-visible",children:[n&&jsx("path",{d:x,fill:u,fillOpacity:.1,stroke:"none"}),jsx("path",{d:g,fill:"none",stroke:u,strokeWidth:o,strokeLinecap:"round",strokeLinejoin:"round",vectorEffect:"non-scaling-stroke"})]})})}function AC({ticks:e=5,format:t=r=>r.toString()}){let{height:r,padding:o,maxValue:n}=Me(),a=r-o.top-o.bottom;return jsx("g",{children:Array.from({length:e+1}).map((s,i)=>{let c=n/e*i,d=r-o.bottom-a/e*i;return jsx("text",{x:o.left-10,y:d,textAnchor:"end",dominantBaseline:"middle",className:"fill-gray-400 dark:fill-white/40 text-xs font-medium",children:t(Math.round(c))},i)})})}var ha=createContext(void 0);function $C({defaultValue:e,value:t,onValueChange:r,className:o,children:n,...a}){let[s,i]=useState(e),c=m=>{t===void 0&&i(m),r?.(m);},d=t!==void 0?t:s;return jsx(ha.Provider,{value:{value:d,onValueChange:c},children:jsx("div",{className:l("w-full",o),...a,children:n})})}function FC({className:e,children:t,...r}){return jsx("div",{role:"tablist",className:l("inline-flex h-10 items-center justify-center rounded-2xl bg-gray-100 p-1 text-gray-500 dark:bg-white/[0.03] dark:text-white/60",e),...r,children:t})}function UC({className:e,value:t,children:r,...o}){let n=useContext(ha);if(!n)throw new Error("TabsTrigger must be used within Tabs");let a=n.value===t;return jsx("button",{type:"button",role:"tab","aria-selected":a,"aria-controls":`tabs-content-${t}`,id:`tabs-trigger-${t}`,onClick:()=>n.onValueChange(t),className:l("inline-flex items-center justify-center whitespace-nowrap rounded-2xl px-3 py-1.5 text-sm font-medium ring-offset-white transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-gray-400 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 dark:ring-offset-zinc-950 dark:focus-visible:ring-white/20",a?"bg-white text-gray-900 shadow-sm dark:bg-white/[0.06] dark:text-white dark:backdrop-blur-sm":"hover:bg-gray-200 hover:text-gray-900 dark:hover:bg-white/[0.03] dark:hover:text-white",e),...o,children:r})}function WC({className:e,value:t,children:r,...o}){let n=useContext(ha);if(!n)throw new Error("TabsContent must be used within Tabs");return n.value!==t?null:jsx("div",{role:"tabpanel",id:`tabs-content-${t}`,"aria-labelledby":`tabs-trigger-${t}`,tabIndex:0,className:l("mt-2 ring-offset-white focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-white/20 focus-visible:ring-offset-2",e),...o,children:r})}var GC=we__default.forwardRef(({className:e,children:t,...r},o)=>jsx("aside",{ref:o,className:l("flex h-full w-64 flex-col border-r backdrop-blur-xl transition-colors duration-200","border-gray-200 bg-white/50","dark:border-white/10 dark:bg-black/20",e),...r,children:t})),jC=we__default.forwardRef(({className:e,children:t,...r},o)=>jsx("div",{ref:o,className:l("flex h-16 items-center px-6 border-b border-gray-200 dark:border-white/5",e),...r,children:t})),QC=we__default.forwardRef(({className:e,children:t,...r},o)=>jsx("div",{ref:o,className:l("flex-1 overflow-y-auto py-4 px-3 space-y-1",e),...r,children:t})),JC=we__default.forwardRef(({className:e,children:t,...r},o)=>jsx("div",{ref:o,className:l("p-4 border-t border-gray-200 dark:border-white/5",e),...r,children:t})),ZC=we__default.forwardRef(({className:e,children:t,active:r,icon:o,badge:n,...a},s)=>jsxs("button",{ref:s,className:l("flex w-full items-center gap-3 rounded-2xl px-3 py-2 text-sm font-medium transition-colors","hover:bg-gray-100 hover:text-gray-900 dark:hover:bg-white/[0.03] dark:hover:text-white",r?"bg-gray-200 text-gray-900 dark:bg-white/[0.06] dark:text-white":"text-gray-600 dark:text-white/60",e),...a,children:[o&&jsx("span",{className:l("flex h-4 w-4 items-center justify-center",r?"text-gray-900 dark:text-white":"text-gray-500 dark:text-white/60"),children:o}),jsx("span",{className:"flex-1 text-left",children:t}),n&&jsx("span",{className:"flex h-5 min-w-5 items-center justify-center rounded-full bg-gray-200 dark:bg-white/[0.06] px-1.5 text-[10px] font-bold text-gray-900 dark:text-white",children:n})]})),eM=we__default.forwardRef(({className:e,children:t,label:r,...o},n)=>jsxs("div",{ref:n,className:l("mb-6",e),...o,children:[r&&jsx("div",{className:"mb-2 px-3 text-xs font-semibold uppercase tracking-wider text-gray-500 dark:text-white/40",children:r}),jsx("div",{className:"space-y-1",children:t})]}));var tp={sm:"max-w-screen-sm",md:"max-w-screen-md",lg:"max-w-screen-lg",xl:"max-w-screen-xl","2xl":"max-w-screen-2xl",full:"max-w-full"};function lM({logo:e,links:t=[],actions:r,className:o,maxWidth:n="xl"}){let[a,s]=useState(false),[i,c]=useState(false);return useEffect(()=>{let d=()=>{s(window.scrollY>20);};return window.addEventListener("scroll",d),()=>window.removeEventListener("scroll",d)},[]),jsx("nav",{className:l("fixed top-0 left-0 right-0 z-50 transition-all duration-300 px-4 py-4",a?"py-3":"py-6",o),children:jsxs("div",{className:l("mx-auto transition-all duration-300",tp[n]),children:[jsxs(ne,{className:l("flex items-center justify-between px-6 py-3 transition-all duration-300",a?"rounded-2xl border-white/10 bg-white/70 dark:bg-zinc-900/70 backdrop-blur-xl shadow-lg":"rounded-2xl border-transparent bg-transparent dark:bg-transparent backdrop-blur-none shadow-none"),children:[jsx("div",{className:"flex items-center gap-2",children:e||jsx("span",{className:"text-xl font-bold tracking-tighter",children:"PIXON"})}),jsx("div",{className:"hidden md:flex items-center gap-8",children:t.map(d=>jsx("a",{href:d.href,className:"text-sm font-medium text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white transition-colors",children:d.label},d.label))}),jsxs("div",{className:"flex items-center gap-4",children:[jsx("div",{className:"hidden md:flex items-center gap-2",children:r}),jsx("button",{className:"md:hidden p-2 text-zinc-600 dark:text-zinc-400 hover:bg-zinc-100 dark:hover:bg-white/[0.03] rounded-2xl transition-colors",onClick:()=>c(!i),children:i?jsx(X$1,{size:20}):jsx(Menu,{size:20})})]})]}),jsx("div",{className:l("md:hidden absolute top-full left-4 right-4 mt-2 transition-all duration-300 origin-top",i?"opacity-100 scale-100 translate-y-0":"opacity-0 scale-95 -translate-y-4 pointer-events-none"),children:jsxs(ne,{className:"p-4 flex flex-col gap-4 shadow-2xl border-white/10 bg-white/90 dark:bg-zinc-900/90 backdrop-blur-2xl",children:[t.map(d=>jsx("a",{href:d.href,className:"text-base font-medium px-4 py-2 rounded-2xl hover:bg-zinc-100 dark:hover:bg-white/[0.03] text-zinc-600 hover:text-zinc-900 dark:text-zinc-400 dark:hover:text-white transition-all",onClick:()=>c(false),children:d.label},d.label)),jsx("div",{className:"pt-4 border-t border-zinc-200 dark:border-white/10 flex flex-col gap-2",children:r})]})})]})})}var go=createContext(void 0);function at({children:e}){let[t,r]=useState(false),o=useRef(null);return jsx(go.Provider,{value:{isOpen:t,setIsOpen:r,triggerRef:o},children:jsx("div",{className:"relative inline-block text-left",children:e})})}function nt({className:e,children:t,...r}){let o=useContext(go);if(!o)throw new Error("DropdownMenuTrigger must be used within DropdownMenu");let n=a=>{o.setIsOpen(!o.isOpen),r.onClick?.(a);};return jsx("button",{ref:o.triggerRef,type:"button","aria-haspopup":"menu","aria-expanded":o.isOpen?"true":"false",onClick:n,className:l("inline-flex items-center justify-center",e),...r,children:t})}function st({className:e,children:t,align:r="start",side:o="bottom",...n}){let a=useContext(go);if(!a)throw new Error("DropdownMenuContent must be used within DropdownMenu");let s=useRef(null),{position:i,isPositioned:c}=Kt(a.triggerRef,s,{side:o,align:r,isOpen:a.isOpen});if(useEffect(()=>{if(a.isOpen){let m=f=>{s.current&&!s.current.contains(f.target)&&a.triggerRef.current&&!a.triggerRef.current.contains(f.target)&&a.setIsOpen(false);},u=f=>{if(f.key==="Escape"&&(a.setIsOpen(false),a.triggerRef.current?.focus()),f.key==="ArrowDown"||f.key==="ArrowUp"){f.preventDefault();let g=s.current?.querySelectorAll('[role="menuitem"]');if(!g.length)return;let x=Array.from(g).indexOf(document.activeElement),v=0;f.key==="ArrowDown"?v=(x+1)%g.length:v=(x-1+g.length)%g.length,g[v]?.focus();}};return document.addEventListener("mousedown",m),document.addEventListener("keydown",u),()=>{document.removeEventListener("mousedown",m),document.removeEventListener("keydown",u);}}},[a.isOpen,a.setIsOpen,a.triggerRef]),!a.isOpen)return null;let d=()=>o==="bottom"?r==="start"?"top left":r==="end"?"top right":"top center":o==="top"?r==="start"?"bottom left":r==="end"?"bottom right":"bottom center":o==="left"?r==="start"?"top right":r==="end"?"bottom right":"center right":o==="right"?r==="start"?"top left":r==="end"?"bottom left":"center left":"center center";return createPortal(jsx("div",{ref:s,role:"menu","aria-orientation":"vertical",style:{top:i.top,left:i.left,transformOrigin:d()},className:l("fixed z-[110] min-w-[8rem] overflow-hidden rounded-2xl border border-gray-200 dark:border-white/10 bg-white/80 dark:bg-white/[0.03] backdrop-blur-xl p-1 shadow-md duration-100",c?"animate-in fade-in zoom-in-95 opacity-100":"opacity-0",e),...n,children:t}),document.body)}function K({className:e,children:t,...r}){let o=useContext(go);return jsx("button",{type:"button",role:"menuitem",onClick:a=>{o?.setIsOpen(false),r.onClick?.(a);},className:l("relative flex w-full cursor-pointer select-none items-center rounded-2xl px-3 py-2 text-sm outline-none transition-colors","text-gray-700 dark:text-white/80","hover:bg-gray-100 hover:text-gray-900 dark:hover:bg-white/[0.06] dark:hover:text-white","focus:bg-gray-100 focus:text-gray-900 dark:focus:bg-white/[0.06] dark:focus:text-white","data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e),...r,children:t})}function Bs({className:e,children:t,...r}){return jsx("div",{className:l("px-2 py-1.5 text-sm font-semibold text-gray-900 dark:text-white",e),...r,children:t})}function xa({className:e,...t}){return jsx("div",{className:l("-mx-1 my-1 h-px bg-gray-200 dark:bg-white/[0.03]",e),...t})}function NM({name:e,description:t,avatarSrc:r,avatarFallback:o,className:n,side:a="top",align:s="start"}){return jsxs(at,{children:[jsx(nt,{className:l("w-full outline-none",n),children:jsxs("div",{className:"group flex w-full items-center gap-3 rounded-2xl border border-gray-200 dark:border-white/5 bg-white dark:bg-white/[0.03] p-3 transition-colors hover:bg-gray-50 dark:hover:bg-white/[0.06]",children:[jsx(z,{src:r,fallback:o||e.charAt(0),size:"sm"}),jsxs("div",{className:"flex flex-1 flex-col items-start text-left",children:[jsx("span",{className:"text-xs font-medium text-gray-900 dark:text-white",children:e}),t&&jsx("span",{className:"text-[10px] text-gray-500 dark:text-white/50",children:t})]}),jsx(Settings,{className:"h-4 w-4 text-gray-400 dark:text-white/50 transition-colors group-hover:text-gray-900 dark:group-hover:text-white"})]})}),jsxs(st,{className:"w-56",align:s,side:a,children:[jsx(Bs,{children:"My Account"}),jsx(xa,{}),jsxs(K,{children:[jsx(User,{className:"mr-2 h-4 w-4"}),jsx("span",{children:"Profile"})]}),jsxs(K,{children:[jsx(Settings,{className:"mr-2 h-4 w-4"}),jsx("span",{children:"Settings"})]}),jsx(xa,{}),jsxs(K,{className:"text-rose-400 focus:text-rose-400",children:[jsx(LogOut,{className:"mr-2 h-4 w-4"}),jsx("span",{children:"Log out"})]})]})]})}var lp=we__default.forwardRef(({...e},t)=>jsx("nav",{ref:t,"aria-label":"breadcrumb",...e}));lp.displayName="Breadcrumb";var cp=we__default.forwardRef(({className:e,...t},r)=>jsx("ol",{ref:r,className:l("flex flex-wrap items-center gap-1.5 break-words text-sm text-gray-500 dark:text-white/50 sm:gap-2.5",e),...t}));cp.displayName="BreadcrumbList";var dp=we__default.forwardRef(({className:e,...t},r)=>jsx("li",{ref:r,className:l("inline-flex items-center gap-1.5",e),...t}));dp.displayName="BreadcrumbItem";var mp=we__default.forwardRef(({className:e,...t},r)=>jsx("a",{ref:r,className:l("transition-colors hover:text-gray-900 dark:hover:text-white",e),...t}));mp.displayName="BreadcrumbLink";var up=we__default.forwardRef(({className:e,...t},r)=>jsx("span",{ref:r,role:"link","aria-disabled":"true","aria-current":"page",className:l("font-normal text-gray-900 dark:text-white",e),...t}));up.displayName="BreadcrumbPage";var pp=({children:e,className:t,...r})=>jsx("li",{role:"presentation","aria-hidden":"true",className:l("[&>svg]:size-3.5",t),...r,children:e??jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4",children:jsx("path",{d:"m9 18 6-6-6-6"})})});pp.displayName="BreadcrumbSeparator";var fp=({className:e,...t})=>jsxs("span",{role:"presentation","aria-hidden":"true",className:l("flex h-9 w-9 items-center justify-center",e),...t,children:[jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4",children:[jsx("circle",{cx:"12",cy:"12",r:"1"}),jsx("circle",{cx:"19",cy:"12",r:"1"}),jsx("circle",{cx:"5",cy:"12",r:"1"})]}),jsx("span",{className:"sr-only",children:"More"})]});fp.displayName="BreadcrumbElipssis";function SM({contentId:e="main-content",className:t,children:r="Skip to content"}){return jsx("a",{href:`#${e}`,className:l("sr-only focus:not-sr-only focus:fixed focus:top-4 focus:left-4 focus:z-[100] focus:px-4 focus:py-2 focus:bg-purple-600 focus:text-white focus:rounded-xl focus:shadow-2xl focus:outline-none focus:ring-2 focus:ring-white/20 transition-all",t),children:r})}var hp=({className:e,...t})=>jsx("nav",{role:"navigation","aria-label":"pagination",className:l("mx-auto flex w-full justify-center",e),...t});hp.displayName="Pagination";var bp=we__default.forwardRef(({className:e,...t},r)=>jsx("ul",{ref:r,className:l("flex flex-row items-center gap-1",e),...t}));bp.displayName="PaginationContent";var xp=we__default.forwardRef(({className:e,...t},r)=>jsx("li",{ref:r,className:l("",e),...t}));xp.displayName="PaginationItem";var va=({className:e,isActive:t,...r})=>jsx("a",{"aria-current":t?"page":void 0,className:l("inline-flex h-9 w-9 items-center justify-center rounded-2xl text-sm font-medium transition-colors","hover:bg-gray-100 dark:hover:bg-white/[0.03] hover:text-gray-900 dark:hover:text-white",t?"bg-gray-100 text-gray-900 dark:bg-white/[0.06] dark:text-white":"text-gray-500 dark:text-white/60",e),...r});va.displayName="PaginationLink";var vp=({className:e,...t})=>jsxs(va,{"aria-label":"Go to previous page",className:l("w-auto gap-1 px-2.5",e),...t,children:[jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4",children:jsx("path",{d:"m15 18-6-6 6-6"})}),jsx("span",{children:"Previous"})]});vp.displayName="PaginationPrevious";var wp=({className:e,...t})=>jsxs(va,{"aria-label":"Go to next page",className:l("w-auto gap-1 px-2.5",e),...t,children:[jsx("span",{children:"Next"}),jsx("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4",children:jsx("path",{d:"m9 18 6-6-6-6"})})]});wp.displayName="PaginationNext";var yp=({className:e,...t})=>jsxs("span",{"aria-hidden":true,className:l("flex h-9 w-9 items-center justify-center",e),...t,children:[jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-4 w-4",children:[jsx("circle",{cx:"12",cy:"12",r:"1"}),jsx("circle",{cx:"19",cy:"12",r:"1"}),jsx("circle",{cx:"5",cy:"12",r:"1"})]}),jsx("span",{className:"sr-only",children:"More pages"})]});yp.displayName="PaginationEllipsis";var KM=({steps:e,currentStep:t,className:r,onStepClick:o})=>jsx("div",{className:l("flex w-full flex-col gap-4 md:flex-row",r),children:e.map((n,a)=>{let s=t>a,i=t===a,c=!!o;return jsxs("div",{className:l("flex flex-1 flex-col gap-2 md:flex-row md:items-center md:gap-4",c&&"cursor-pointer"),onClick:()=>c&&o(a),children:[jsxs("div",{className:"flex items-center gap-4 md:flex-col md:gap-2",children:[jsxs("div",{className:"flex items-center",children:[jsx("div",{className:l("flex h-8 w-8 items-center justify-center rounded-full border-2 text-sm font-semibold transition-colors",s?"border-blue-600 bg-blue-600 text-white dark:border-blue-500 dark:bg-blue-500":i?"border-blue-600 text-blue-600 dark:border-blue-500 dark:text-blue-500":"border-gray-300 text-gray-500 dark:border-white/20 dark:text-white/40"),children:s?jsx(Check,{className:"h-4 w-4"}):a+1}),a<e.length-1&&jsx("div",{className:l("ml-4 h-px flex-1 bg-gray-200 md:hidden dark:bg-white/[0.03]",s&&"bg-blue-600 dark:bg-blue-500")})]}),jsxs("div",{className:"flex flex-col",children:[jsx("span",{className:l("text-sm font-medium",i||s?"text-gray-900 dark:text-white":"text-gray-500 dark:text-white/50"),children:n.title}),n.description&&jsx("span",{className:"text-xs text-gray-500 dark:text-white/40 hidden md:block",children:n.description})]})]}),a<e.length-1&&jsx("div",{className:l("hidden h-px flex-1 bg-gray-200 md:block dark:bg-white/[0.03]",s&&"bg-blue-600 dark:bg-blue-500")})]},a)})});function qM({isOpen:e,onClose:t,onConfirm:r,title:o,description:n,confirmText:a="Confirm",cancelText:s="Cancel",variant:i="primary",isLoading:c=false}){return jsxs(oo,{isOpen:e,onClose:t,children:[jsx(ao,{children:jsxs("div",{className:"flex items-center gap-3",children:[i==="danger"&&jsx("div",{className:"flex h-10 w-10 items-center justify-center rounded-full bg-rose-500/10 text-rose-500",children:jsx(AlertTriangle,{className:"h-5 w-5"})}),jsx(Je,{as:"h3",children:o})]})}),jsx("div",{className:"py-2",children:jsx(ve,{className:"text-gray-500 dark:text-white/60",children:n})}),jsxs(no,{children:[jsx(R,{variant:"ghost",onClick:t,disabled:c,children:s}),jsx(R,{variant:i==="danger"?"danger":"primary",onClick:r,isLoading:c,children:a})]})]})}function tR({isOpen:e,onClose:t,children:r,className:o}){let n=useRef(null),[a,s]=we__default.useState(false);useEffect(()=>{s(true);},[]),useEffect(()=>{let c=n.current;c&&(e?c.open||c.showModal():c.open&&c.close());},[e,a]),useEffect(()=>{let c=n.current;if(!c)return;let d=m=>{m.preventDefault(),t();};return c.addEventListener("cancel",d),()=>c.removeEventListener("cancel",d)},[t,a]);let i=c=>{c.target===n.current&&t();};return a?createPortal(jsx("dialog",{ref:n,onClick:i,className:l("fixed inset-0 z-[100] bg-transparent p-0 backdrop:bg-black/60 backdrop:backdrop-blur-sm open:grid open:place-items-center","open:animate-in open:fade-in open:duration-200",o),children:jsxs("div",{className:l("relative w-full max-w-lg scale-100 gap-4 border border-gray-200 dark:border-white/10 bg-white dark:bg-[#0A0A0A]/90 p-6 shadow-2xl backdrop-blur-xl transition-all sm:rounded-2xl","animate-in fade-in zoom-in-95 duration-200 slide-in-from-bottom-2"),children:[r,jsxs("button",{onClick:t,className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-gray-400 dark:focus:ring-white/20 disabled:pointer-events-none",children:[jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"text-gray-900 dark:text-white",children:[jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]}),jsx("span",{className:"sr-only",children:"Close"})]})]})}),document.body):null}function rR({className:e,children:t}){return jsx("div",{className:l("flex flex-col space-y-1.5 text-center sm:text-left mb-4",e),children:t})}function oR({className:e,children:t}){return jsx("div",{className:l("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 mt-6",e),children:t})}function aR({className:e,children:t}){return jsx(Je,{as:"h2",className:l("text-lg font-semibold leading-none tracking-tight",e),children:t})}function nR({className:e,children:t}){return jsx("p",{className:l("text-sm text-gray-500 dark:text-gray-400",e),children:t})}function fR({isOpen:e,onClose:t,position:r="right",children:o,className:n}){let[a,s]=useState(false),[i,c]=useState(false),d=useRef(null);useEffect(()=>{if(e)c(true),requestAnimationFrame(()=>{requestAnimationFrame(()=>{s(true);});}),document.body.style.overflow="hidden";else {s(false);let g=setTimeout(()=>{c(false),document.body.style.overflow="unset";},300);return ()=>clearTimeout(g)}},[e]),useEffect(()=>{let g=x=>{x.key==="Escape"&&t();};return e&&document.addEventListener("keydown",g),()=>{document.removeEventListener("keydown",g);}},[e,t]);let m=g=>{g.target===d.current&&t();};if(!i)return null;let u={left:"left-0 h-full w-3/4 max-w-sm border-r",right:"right-0 h-full w-3/4 max-w-sm border-l",bottom:"bottom-0 w-full h-auto max-h-[90vh] border-t rounded-t-2xl"},f={left:a?"translate-x-0":"-translate-x-full",right:a?"translate-x-0":"translate-x-full",bottom:a?"translate-y-0":"translate-y-full"};return createPortal(jsx("div",{ref:d,onClick:m,className:l("fixed inset-0 z-[100] flex bg-black/60 backdrop-blur-sm transition-opacity duration-300",a?"opacity-100":"opacity-0"),role:"dialog","aria-modal":"true",children:jsx("div",{className:l("absolute bg-white dark:bg-[#0A0A0A] border-gray-200 dark:border-white/10 p-6 shadow-2xl transition-transform duration-300 ease-in-out",u[r],f[r],n),children:o})}),document.body)}function gR({className:e,children:t,...r}){return jsx("div",{className:l("flex flex-col space-y-1.5 text-center sm:text-left mb-6",e),...r,children:t})}function hR({className:e,children:t,...r}){return jsx("div",{className:l("flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2 mt-auto pt-6",e),...r,children:t})}function bR({className:e,children:t,...r}){return jsx(Je,{as:"h2",className:l("text-lg font-semibold leading-none tracking-tight",e),...r,children:t})}function xR({className:e,children:t,...r}){return jsx(ve,{variant:"muted",className:l("text-sm",e),...r,children:t})}function MR({content:e,children:t,position:r="top",delay:o=200,className:n}){let[a,s]=useState(false),i=useRef(null),c=useRef(null),d=useRef(null),{position:m,isPositioned:u}=Kt(c,d,{side:r,align:"center",sideOffset:8,isOpen:a}),f=()=>{i.current&&clearTimeout(i.current),i.current=setTimeout(()=>s(true),o);},g=()=>{i.current&&clearTimeout(i.current),s(false);};useEffect(()=>()=>{i.current&&clearTimeout(i.current);},[]);let x={top:"slide-in-from-bottom-2",bottom:"slide-in-from-top-2",left:"slide-in-from-right-2",right:"slide-in-from-left-2"};return jsxs("div",{ref:c,className:"relative inline-flex",onMouseEnter:f,onMouseLeave:g,onFocus:f,onBlur:g,children:[t,a&&createPortal(jsx("div",{ref:d,role:"tooltip",style:{top:m.top,left:m.left},className:l("fixed z-[120] min-w-max max-w-xs rounded-2xl border border-gray-200 dark:border-white/10 bg-white dark:bg-[#0A0A0A]/90 px-3 py-1.5 text-xs text-gray-900 dark:text-white shadow-xl backdrop-blur-md","duration-200",u?"animate-in fade-in opacity-100":"opacity-0",x[r],n),children:e}),document.body)]})}var Ap=we__default.forwardRef(({className:e,size:t="lg",...r},o)=>jsx("div",{ref:o,className:l("mx-auto w-full px-4",{sm:"max-w-screen-sm",md:"max-w-screen-md",lg:"max-w-screen-lg",xl:"max-w-screen-xl",full:"max-w-full"}[t],e),...r}));Ap.displayName="Container";var Vp=we__default.forwardRef(({className:e,direction:t="col",gap:r=4,align:o,justify:n,wrap:a,style:s,...i},c)=>jsx("div",{ref:c,className:l("flex",{"flex-row":t==="row","flex-col":t==="col","flex-row-reverse":t==="row-reverse","flex-col-reverse":t==="col-reverse","flex-wrap":a,"items-start":o==="start","items-end":o==="end","items-center":o==="center","items-baseline":o==="baseline","items-stretch":o==="stretch","justify-start":n==="start","justify-end":n==="end","justify-center":n==="center","justify-between":n==="between","justify-around":n==="around","justify-evenly":n==="evenly"},e),style:{gap:typeof r=="number"?`${r*.25}rem`:r,...s},...i}));Vp.displayName="Stack";var $p=we__default.forwardRef(({className:e,cols:t=1,sm:r,md:o,lg:n,xl:a,gap:s=4,style:i,...c},d)=>jsx("div",{ref:d,className:l("grid",r&&`sm:grid-cols-${r}`,o&&`md:grid-cols-${o}`,n&&`lg:grid-cols-${n}`,a&&`xl:grid-cols-${a}`,e),style:{gridTemplateColumns:t?`repeat(${t}, minmax(0, 1fr))`:void 0,gap:typeof s=="number"?`${s*.25}rem`:s,...i},...c}));$p.displayName="Grid";var Up=we__default.forwardRef(({variant:e="none",noise:t=false,patternColor:r,size:o=24,mask:n="none",animate:a=false,followMouse:s=false,bgColor:i,className:c,children:d,style:m,...u},f)=>{let g=we__default.useRef(null);we__default.useEffect(()=>{if(!s)return;let h=p=>{let b=g.current;if(!b)return;let w=b.getBoundingClientRect(),k=p.clientX-w.left,y=p.clientY-w.top;b.style.setProperty("--mouse-x",`${k}px`),b.style.setProperty("--mouse-y",`${y}px`);};return window.addEventListener("mousemove",h),()=>window.removeEventListener("mousemove",h)},[s]);let x=()=>{let h={},p=r||"var(--pattern-color, rgba(255,255,255,0.08))";return e==="dots"?{...h,backgroundImage:`radial-gradient(${p} 1px, transparent 1px)`,backgroundSize:`${o}px ${o}px`,transform:s?"translate3d(calc((var(--mouse-x, 0) - 24px) / 40), calc((var(--mouse-y, 0) - 24px) / 40), 0)":void 0}:e==="grid"?{...h,backgroundImage:`
|
|
67
67
|
linear-gradient(to right, ${p} 1px, transparent 1px),
|
|
68
68
|
linear-gradient(to bottom, ${p} 1px, transparent 1px)
|
|
69
|
-
`,backgroundSize:`${o}px ${o}px`,transform:s?"translate3d(calc((var(--mouse-x, 0) - 24px) / 40), calc((var(--mouse-y, 0) - 24px) / 40), 0)":void 0}:e==="gradient"?{...h,background:s?`radial-gradient(circle at var(--mouse-x, center) var(--mouse-y, center), ${p}, transparent)`:`radial-gradient(circle at center, ${p}, transparent)`}:e==="beams"?{...h,background:`radial-gradient(60% 40% at 50% 0%, ${p} 0%, transparent 100%)`}:h},v=n==="fade"?{maskImage:"radial-gradient(ellipse at center, black, transparent 90%)",WebkitMaskImage:"radial-gradient(ellipse at center, black, transparent 90%)"}:{};return jsxs("div",{ref:h=>{h&&(g.current=h),typeof f=="function"?f(h):f&&(f.current=h);},className:l("absolute inset-0 overflow-hidden pointer-events-none transition-transform duration-300 ease-out","z-0","[--pattern-color:rgba(0,0,0,0.05)] dark:[--pattern-color:rgba(255,255,255,0.08)]",i?.startsWith("bg-")?i:"",c),style:{...x(),...v,...m,backgroundColor:i&&!i.startsWith("bg-")?i:void 0},...u,children:[t&&jsx("div",{className:"absolute inset-0 opacity-[0.03] pointer-events-none brightness-100 contrast-150",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")`}}),e==="beams"&&jsxs("div",{className:"absolute inset-0 overflow-hidden",children:[jsx("div",{className:"absolute top-0 left-1/4 w-px h-full bg-gradient-to-b from-transparent via-white/10 to-transparent"}),jsx("div",{className:"absolute top-0 right-1/4 w-px h-full bg-gradient-to-b from-transparent via-white/10 to-transparent"})]}),e==="mesh"&&jsxs("div",{className:l("absolute inset-0 opacity-30 blur-[100px]",a&&"animate-pulse"),children:[jsx("div",{className:"absolute top-[-10%] left-[-10%] w-[50%] h-[50%] rounded-full bg-blue-500/20"}),jsx("div",{className:"absolute bottom-[-10%] right-[-10%] w-[50%] h-[50%] rounded-full bg-purple-500/20"}),jsx("div",{className:"absolute top-[20%] right-[10%] w-[40%] h-[40%] rounded-full bg-indigo-500/10"})]}),d]})});Up.displayName="Background";var jR=({children:e,className:t,size:r=300,color:o,fill:n,...a})=>{let s=useRef(null),i=n||o||"rgba(255, 255, 255, 0.1)";return jsxs("div",{ref:s,onMouseMove:u=>{let f=s.current;if(!f)return;let g=f.getBoundingClientRect(),x=u.clientX-g.left,v=u.clientY-g.top;f.style.setProperty("--mouse-x",`${x}px`),f.style.setProperty("--mouse-y",`${v}px`);},onMouseEnter:()=>{s.current?.style.setProperty("--opacity","1");},onMouseLeave:()=>{s.current?.style.setProperty("--opacity","0");},className:l("relative overflow-hidden rounded-2xl border border-gray-200 bg-white dark:border-white/10 dark:bg-black",t),...a,children:[jsx("div",{className:"pointer-events-none absolute -inset-px transition-opacity duration-300",style:{opacity:"var(--opacity, 0)",background:`radial-gradient(${r}px circle at var(--mouse-x, center) var(--mouse-y, center), ${i}, transparent 80%)`}}),e&&jsx("div",{className:"relative h-full",children:e})]})};var of=cva("relative flex w-full flex-col rounded-2xl border transition-all duration-200 focus-within:ring-4",{variants:{variant:{default:"bg-white border-gray-200 shadow-sm focus-within:border-purple-500/50 focus-within:ring-purple-500/10 dark:bg-white/[0.03] dark:border-white/10 dark:shadow-none",ghost:"bg-transparent border-transparent shadow-none focus-within:bg-white/50 dark:focus-within:bg-white/5"}},defaultVariants:{variant:"default"}}),af=we__default.forwardRef(({className:e,variant:t,onSubmit:r,isGenerating:o,onAttach:n,onFilesSelected:a,onStop:s,onMic:i,maxLength:c,footer:d,attachments:m,onRemoveAttachment:u,accept:f,multiple:g,placeholder:x="Ask AI anything...",value:v,onChange:h,...p},b)=>{let[w,k]=useState(""),y=v!==void 0,N=y?v:w,C=useRef(null),T=useRef(null),L=()=>{C.current&&(C.current.style.height="auto",C.current.style.height=`${C.current.scrollHeight}px`);};useEffect(()=>{L();},[N]);let H=M=>{let Y=M.target.value;c&&Y.length>c||(y||k(Y),h?.(M));},E=M=>{M.key==="Enter"&&!M.shiftKey&&(M.preventDefault(),N.trim()&&!o&&(r?.(N),y||k(""))),p.onKeyDown?.(M);},S=()=>{o&&s?s():N.trim()&&(r?.(N),y||k(""));},O=()=>{a&&T.current?T.current.click():n?.();},V=M=>{M.target.files&&M.target.files.length>0&&a?.(M.target.files),T.current&&(T.current.value="");};return jsxs("div",{className:l(of({variant:t,className:e})),children:[jsx("input",{type:"file",ref:T,className:"hidden",onChange:V,accept:f,multiple:g}),m&&m.length>0&&jsx("div",{className:"flex flex-wrap gap-2 px-4 pt-4",children:m.map(M=>jsxs("div",{className:"group relative flex items-center gap-2 rounded-xl border border-gray-200 bg-gray-50 px-3 py-1.5 text-sm transition-colors hover:bg-gray-100 dark:border-white/10 dark:bg-white/[0.03] dark:hover:bg-white/[0.06]",children:[jsx("div",{className:"flex h-5 w-5 items-center justify-center rounded-lg bg-white dark:bg-white/[0.06]",children:jsx(File,{className:"h-3 w-3 text-purple-500"})}),jsx("span",{className:"max-w-[120px] truncate text-gray-700 dark:text-gray-300",children:M.name}),jsx("button",{onClick:()=>u?.(M.id),className:"ml-1 rounded-full p-0.5 text-gray-400 opacity-0 transition-all hover:bg-gray-200 hover:text-gray-600 group-hover:opacity-100 dark:hover:bg-white/[0.06] dark:hover:text-white",type:"button",children:jsx(X$1,{className:"h-3 w-3"})})]},M.id))}),jsx("textarea",{ref:M=>{C.current=M,typeof b=="function"?b(M):b&&(b.current=M);},value:N,onChange:H,onKeyDown:E,placeholder:x,rows:1,className:l("w-full resize-none bg-transparent px-4 py-4 text-base outline-none max-h-[200px]","text-gray-900 placeholder:text-gray-400","dark:text-white dark:placeholder:text-white/40"),disabled:o&&!s,...p}),jsxs("div",{className:"flex items-center justify-between px-2 pb-2",children:[jsxs("div",{className:"flex items-center gap-1",children:[jsx(R,{variant:"ghost",size:"icon",className:"text-gray-400 hover:text-gray-600 dark:text-white/40 dark:hover:text-white",onClick:O,type:"button",title:"Attach file",children:jsx(Paperclip,{className:"h-5 w-5"})}),i&&jsx(R,{variant:"ghost",size:"icon",className:"text-gray-400 hover:text-gray-600 dark:text-white/40 dark:hover:text-white",onClick:i,type:"button",title:"Use microphone",children:jsx(Mic,{className:"h-5 w-5"})})]}),jsxs("div",{className:"flex items-center gap-3",children:[c&&jsxs("span",{className:"text-xs text-gray-400 dark:text-white/30",children:[N.length,"/",c]}),jsx(R,{size:"icon",disabled:!N.trim()&&!o||o&&!s,onClick:S,className:l("h-8 w-8 rounded-full transition-all duration-200",N.trim()||o?"bg-purple-600 text-white hover:bg-purple-500 shadow-lg shadow-purple-500/25":"bg-gray-100 text-gray-400 dark:bg-white/[0.06] dark:text-white/20"),children:o?s?jsx(Square,{className:"h-3 w-3 fill-current"}):jsx(Sparkles,{className:"h-4 w-4 animate-pulse"}):jsx(ArrowUp,{className:"h-4 w-4"})})]})]}),d&&jsx("div",{className:"border-t border-gray-100 px-4 py-2 text-xs text-gray-400 dark:border-white/5 dark:text-white/30",children:d})]})});af.displayName="AIPromptInput";var hf=cva("group relative overflow-hidden rounded-2xl border transition-all duration-200",{variants:{variant:{default:"bg-gray-50 border-gray-200 dark:bg-white/[0.02] dark:border-white/10",ghost:"bg-transparent border-transparent",outline:"bg-transparent border-gray-200 dark:border-white/10"}},defaultVariants:{variant:"default"}}),bf=we__default.forwardRef(({className:e,variant:t,children:r,onCopy:o,onRegenerate:n,onFeedback:a,onShare:s,onEdit:i,timestamp:c,sources:d,model:m,usage:u,...f},g)=>jsxs("div",{ref:g,className:l(hf({variant:t,className:e})),...f,children:[jsxs("div",{className:"absolute left-4 top-4 flex items-center gap-3",children:[jsx("div",{className:"flex h-6 w-6 items-center justify-center rounded-full bg-gradient-to-br from-purple-500 to-blue-500 shadow-lg shadow-purple-500/20",children:jsx(Sparkles,{className:"h-3.5 w-3.5 text-white"})}),c&&jsx("span",{className:"text-xs font-medium text-gray-400 dark:text-white/30",children:c})]}),jsxs("div",{className:"pl-14 pr-4 py-4",children:[jsx("div",{className:"prose prose-sm dark:prose-invert max-w-none text-gray-700 dark:text-gray-300",children:r}),d&&d.length>0&&jsx("div",{className:"mt-4 flex flex-wrap gap-2",children:d.map((x,v)=>jsxs("a",{href:x.url,target:"_blank",rel:"noopener noreferrer",className:l("flex items-center gap-1.5 rounded-full border px-3 py-1 text-xs transition-colors","border-gray-200 bg-white text-gray-600 hover:bg-gray-50","dark:border-white/10 dark:bg-white/[0.03] dark:text-white/60 dark:hover:bg-white/[0.06]"),children:[jsx("span",{className:"max-w-[150px] truncate",children:x.title}),jsx(ExternalLink,{className:"h-3 w-3 opacity-50"})]},v))})]}),jsxs("div",{className:"flex items-center justify-between border-t border-gray-200 bg-white/50 px-2 py-1.5 backdrop-blur dark:border-white/5 dark:bg-white/[0.02]",children:[jsxs("div",{className:"flex items-center gap-3 px-2 text-[10px] font-medium text-gray-400 dark:text-white/20",children:[m&&jsx("span",{children:m}),u&&jsx("span",{children:u})]}),jsxs("div",{className:"flex items-center gap-1",children:[jsxs(R,{variant:"ghost",size:"sm",className:"h-7 px-2 text-xs text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:o,children:[jsx(Copy,{className:"mr-1.5 h-3.5 w-3.5"}),"Copy"]}),s&&jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:s,title:"Share",children:jsx(Share,{className:"h-3.5 w-3.5"})}),i&&jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:i,title:"Edit",children:jsx(Edit,{className:"h-3.5 w-3.5"})}),jsx("div",{className:"mx-1 h-3 w-px bg-gray-200 dark:bg-white/10"}),jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:n,title:"Regenerate",children:jsx(RefreshCw,{className:"h-3.5 w-3.5"})}),jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:()=>a?.("up"),title:"Helpful",children:jsx(ThumbsUp,{className:"h-3.5 w-3.5"})}),jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:()=>a?.("down"),title:"Not helpful",children:jsx(ThumbsDown,{className:"h-3.5 w-3.5"})})]})]})]}));bf.displayName="AIResponse";function f4({children:e,className:t,...r}){return jsx("div",{className:l("flex h-[800px] w-full overflow-hidden rounded-3xl border border-gray-200 dark:border-white/10 bg-white dark:bg-black/40 backdrop-blur-xl shadow-2xl",t),...r,children:e})}function N4({conversations:e,activeId:t,onSelect:r,onNewChat:o,onSearch:n,onArchive:a,onPin:s,onMute:i,onDelete:c,filter:d="all",sortBy:m="recent",hideHeader:u=false,className:f,...g}){let[x,v]=useState(""),h=useMemo(()=>e.filter(b=>(b.user?.name||b.group?.name||"").toLowerCase().includes(x.toLowerCase())),[e,x]),p=b=>{let w=b.target.value;v(w),n?.(w);};return jsxs("div",{className:l("flex flex-col border-r border-gray-200 dark:border-white/10 bg-gray-50/50 dark:bg-white/[0.02]",!f?.includes("w-")&&"w-80",f),...g,children:[!u&&jsxs("div",{className:"p-4 space-y-4",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("h2",{className:"text-xl font-bold text-gray-900 dark:text-white",children:"Messages"}),jsxs("div",{className:"flex items-center gap-1",children:[jsx("button",{className:"p-2 rounded-full hover:bg-gray-200 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",title:"Filter",children:jsx(Filter,{className:"h-4 w-4"})}),jsx("button",{onClick:o,className:"p-2 rounded-full hover:bg-gray-200 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",title:"New Chat",children:jsx(Plus,{className:"h-5 w-5"})})]})]}),jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400"}),jsx("input",{type:"text",value:x,onChange:p,placeholder:"Search messages...",className:"w-full h-10 pl-9 pr-4 rounded-2xl bg-white dark:bg-white/[0.03] border border-gray-200 dark:border-white/10 text-sm focus:outline-none focus:ring-2 focus:ring-blue-500/50 transition-all placeholder:text-gray-400 dark:text-white"})]})]}),jsx("div",{className:"flex-1 overflow-y-auto [&::-webkit-scrollbar]:w-1.5 [&::-webkit-scrollbar-thumb]:bg-white/10 [&::-webkit-scrollbar-thumb]:rounded-full hover:[&::-webkit-scrollbar-thumb]:bg-white/20 [&::-webkit-scrollbar-track]:bg-transparent",children:jsx("div",{className:"flex flex-col",children:h.map(b=>{let w=b.user?.name||b.group?.name||"Unknown",k=b.user?.avatar||b.group?.avatar,y=b.user?.status==="online",N=t===b.id;return jsx("div",{className:"p-2",children:jsxs("div",{onClick:()=>r?.(b.id),className:l("w-full h-16 flex items-center gap-3 p-3 rounded-2xl transition-all text-left group cursor-pointer",N?"bg-blue-500/10 dark:bg-white/[0.06] shadow-[0_0_15px_rgba(59,130,246,0.1)] dark:shadow-[0_0_15px_rgba(255,255,255,0.05)]":"hover:bg-gray-100 dark:hover:bg-white/[0.03]"),children:[jsxs("div",{className:"relative flex-shrink-0",children:[jsx(z,{src:k,alt:w,fallback:w[0]}),y&&jsx("div",{className:"absolute -bottom-0.5 -right-0.5 w-3.5 h-3.5 bg-green-500 border-2 border-white dark:border-[#0a0a0a] rounded-full"})]}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center justify-between mb-0.5",children:[jsx("span",{className:l("font-semibold truncate",N?"text-blue-600 dark:text-white":"text-gray-900 dark:text-white/90"),children:w}),b.lastMessage&&jsx("span",{className:"text-[10px] text-gray-400 dark:text-white/30 whitespace-nowrap",children:new Date(b.lastMessage.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]}),jsxs("div",{className:"flex items-center justify-between gap-2",children:[jsx("p",{className:"text-xs text-gray-500 dark:text-white/40 truncate",children:b.isTyping?jsx("span",{className:"text-blue-500 animate-pulse",children:"typing..."}):b.lastMessage?.content||"No messages yet"}),b.unreadCount>0&&jsx("span",{className:"flex-shrink-0 min-w-[18px] h-[18px] flex items-center justify-center bg-blue-500 text-white text-[10px] font-bold rounded-full px-1",children:b.unreadCount})]})]}),jsx("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity",onClick:C=>C.stopPropagation(),children:jsxs(at,{children:[jsx(nt,{className:"p-1 rounded-lg hover:bg-gray-200 dark:hover:bg-white/10 text-gray-400",children:jsx(MoreVertical,{className:"h-4 w-4"})}),jsxs(st,{align:"end",children:[jsxs(K,{onClick:()=>s?.(b.id),children:[jsx(Pin,{className:"h-4 w-4 mr-2"})," Pin"]}),jsxs(K,{onClick:()=>a?.(b.id),children:[jsx(Archive,{className:"h-4 w-4 mr-2"})," Archive"]}),jsxs(K,{onClick:()=>i?.(b.id),children:[jsx(BellOff,{className:"h-4 w-4 mr-2"})," Mute"]}),jsxs(K,{className:"text-red-500",onClick:()=>c?.(b.id),children:[jsx(Trash2,{className:"h-4 w-4 mr-2"})," Delete"]})]})]})})]})},b.id)})})})]})}function P4({user:e,onBack:t,onInfo:r,onCall:o,onVideoCall:n,onSearch:a,onMute:s,isTyping:i,isMuted:c,actions:d,className:m,...u}){return jsxs("div",{className:l("flex h-16 items-center justify-between border-b border-gray-200 dark:border-white/10 bg-white/80 dark:bg-black/40 backdrop-blur px-4 sticky top-0 z-10",m),...u,children:[jsxs("div",{className:"flex items-center gap-3",children:[t&&jsx("button",{onClick:t,className:"md:hidden p-2 -ml-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06]",children:jsx(ArrowLeft,{className:"h-5 w-5 text-gray-600 dark:text-white/70"})}),jsxs("div",{className:"relative cursor-pointer",onClick:r,children:[jsx(z,{src:e.avatar,alt:e.name,fallback:e.name[0]}),e.status==="online"&&jsx("span",{className:"absolute bottom-0 right-0 h-3 w-3 rounded-full bg-green-500 border-2 border-white dark:border-black"})]}),jsxs("div",{className:"cursor-pointer",onClick:r,children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx("h3",{className:"font-semibold text-gray-900 dark:text-white leading-none",children:e.name}),c&&jsx(BellOff,{className:"h-3 w-3 text-gray-400"})]}),jsx("p",{className:l("text-xs mt-1 transition-colors",i?"text-blue-500 font-medium animate-pulse":"text-gray-500 dark:text-white/50"),children:i?"typing...":e.status==="online"?"Online":`Last seen ${e.lastSeen?.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}`})]})]}),jsxs("div",{className:"flex items-center gap-1",children:[a&&jsx("button",{onClick:a,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Search,{className:"h-5 w-5"})}),jsx("button",{onClick:o,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Phone,{className:"h-5 w-5"})}),jsx("button",{onClick:n,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Video,{className:"h-5 w-5"})}),d,jsx("button",{onClick:r,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(MoreVertical,{className:"h-5 w-5"})})]})]})}function Ws({src:e,duration:t,isMe:r,className:o,...n}){let[a,s]=useState(false),[i,c]=useState(0),[d,m]=useState(false),u=useRef(null),f=()=>{u.current&&(a?u.current.pause():u.current.play(),s(!a));},g=()=>{u.current&&c(u.current.currentTime);},x=()=>{s(false),c(0);},v=p=>{let b=Math.floor(p/60),w=Math.floor(p%60);return `${b}:${w.toString().padStart(2,"0")}`},h=t?i/t*100:0;return jsxs("div",{className:l("flex items-center gap-3 p-2 rounded-2xl min-w-[200px]",r?"bg-white/10":"bg-gray-100 dark:bg-white/[0.03]",o),...n,children:[jsx("audio",{ref:u,src:e,onTimeUpdate:g,onEnded:x}),jsx("button",{onClick:f,className:l("w-10 h-10 rounded-full flex items-center justify-center transition-all",r?"bg-white text-blue-600":"bg-blue-500 text-white"),children:a?jsx(Pause,{className:"h-5 w-5 fill-current"}):jsx(Play,{className:"h-5 w-5 fill-current ml-0.5"})}),jsxs("div",{className:"flex-1 space-y-1",children:[jsx("div",{className:"h-1.5 w-full bg-gray-300 dark:bg-white/10 rounded-full overflow-hidden",children:jsx("div",{className:l("h-full transition-all duration-100",r?"bg-white":"bg-blue-500"),style:{width:`${h}%`}})}),jsxs("div",{className:"flex justify-between text-[10px] font-medium opacity-60",children:[jsx("span",{children:v(i)}),jsx("span",{children:t?v(t):"--:--"})]})]}),jsx("button",{onClick:()=>m(!d),className:"p-1.5 rounded-full hover:bg-black/5 dark:hover:bg-white/5 opacity-60",children:d?jsx(VolumeX,{className:"h-4 w-4"}):jsx(Volume2,{className:"h-4 w-4"})})]})}function _s({status:e,className:t,...r}){return e==="sending"?jsx("div",{className:l("w-3 h-3 border border-current border-t-transparent rounded-full animate-spin opacity-50",t),...r}):e==="failed"?jsx("span",{className:l("text-red-500 text-[10px] font-bold",t),...r,children:"!"}):jsxs("div",{className:l("flex items-center",t),...r,children:[e==="sent"&&jsx(Check,{className:"h-3 w-3 opacity-50"}),e==="delivered"&&jsx(CheckCheck,{className:"h-3 w-3 opacity-50"}),e==="read"&&jsx(CheckCheck,{className:"h-3 w-3 text-blue-500"})]})}function Xs({url:e,title:t,description:r,image:o,siteName:n,className:a,...s}){return jsxs("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:l("block overflow-hidden rounded-xl border border-gray-200 dark:border-white/10 bg-white dark:bg-white/[0.03] hover:bg-gray-50 dark:hover:bg-white/[0.05] transition-all group",a),...s,children:[o&&jsx("div",{className:"aspect-video w-full overflow-hidden border-b border-gray-200 dark:border-white/10",children:jsx("img",{src:o,alt:t,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500"})}),jsxs("div",{className:"p-3 space-y-1",children:[n&&jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-blue-500",children:n}),jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-white line-clamp-1",children:t||e}),r&&jsx("p",{className:"text-xs text-gray-500 dark:text-white/50 line-clamp-2",children:r}),jsxs("div",{className:"flex items-center gap-1 text-[10px] text-gray-400 pt-1",children:[jsx(ExternalLink,{className:"h-3 w-3"}),jsx("span",{className:"truncate",children:new URL(e).hostname})]})]})]})}function qs({data:e,isOwn:t,onAction:r}){return jsxs("div",{className:"space-y-2 max-w-sm",children:[(()=>{if(!e.header)return null;switch(e.header.type){case "text":return jsx("h4",{className:"font-bold mb-1 text-sm",children:e.header.text});case "image":return jsx("div",{className:"mb-2 rounded-lg overflow-hidden border border-white/10",children:jsx("img",{src:e.header.attachment?.url,alt:"Header",className:"w-full h-auto object-cover"})});default:return null}})(),jsx("p",{className:"text-sm leading-relaxed",children:e.body}),e.footer&&jsx("p",{className:"text-[10px] opacity-50 italic",children:e.footer}),e.type==="button"&&e.buttons&&jsx("div",{className:"flex flex-col gap-1 mt-3",children:e.buttons.map(n=>jsxs("button",{onClick:()=>r?.(n),className:l("flex items-center justify-center gap-2 p-2.5 rounded-xl text-sm font-medium transition-all","bg-white/10 hover:bg-white/20 border border-white/10 active:scale-[0.98]",t?"text-white":"text-blue-500 dark:text-blue-400"),children:[n.type==="url"&&jsx(ExternalLink,{className:"h-3.5 w-3.5"}),n.type==="call"&&jsx(Phone,{className:"h-3.5 w-3.5"}),n.type==="reply"&&jsx(Reply,{className:"h-3.5 w-3.5"}),n.text]},n.id))}),e.type==="list"&&e.sections&&jsx("div",{className:"mt-3 space-y-3",children:e.sections.map((n,a)=>jsxs("div",{className:"space-y-1",children:[n.title&&jsx("p",{className:"text-[10px] uppercase tracking-wider opacity-40 font-bold px-1",children:n.title}),jsx("div",{className:"flex flex-col gap-1",children:n.rows.map(s=>jsxs("button",{onClick:()=>r?.({id:s.id,text:s.title,type:"reply"}),className:"flex flex-col items-start p-3 rounded-xl bg-white/5 hover:bg-white/10 border border-white/5 transition-colors text-left",children:[jsx("span",{className:"text-sm font-medium",children:s.title}),s.description&&jsx("span",{className:"text-xs opacity-50 line-clamp-1",children:s.description})]},s.id))})]},a))})]})}function Gs({cards:e,isOwn:t,onAction:r}){let o=we__default.useRef(null),n=a=>{o.current&&o.current.scrollBy({left:a==="left"?-240:240,behavior:"smooth"});};return jsxs("div",{className:"relative group/carousel max-w-[300px] sm:max-w-[400px]",children:[jsx("div",{ref:o,className:"flex gap-3 overflow-x-auto scrollbar-hide snap-x snap-mandatory pb-2",children:e.map((a,s)=>jsxs("div",{className:"flex-shrink-0 w-[240px] snap-start rounded-2xl bg-white/5 dark:bg-white/[0.03] border border-white/10 overflow-hidden flex flex-col",children:[a.header?.attachment&&jsx("div",{className:"aspect-video w-full overflow-hidden",children:jsx("img",{src:a.header.attachment.url,alt:"Card",className:"w-full h-full object-cover"})}),jsxs("div",{className:"p-3 flex-1 flex flex-col",children:[jsx("p",{className:"text-sm leading-relaxed mb-1",children:a.body}),a.footer&&jsx("p",{className:"text-[10px] opacity-50 italic mb-3",children:a.footer}),jsx("div",{className:"mt-auto flex flex-col gap-1",children:a.buttons.map(i=>jsxs("button",{onClick:()=>r?.(i),className:l("flex items-center justify-center gap-2 p-2 rounded-lg text-xs font-medium transition-all","bg-white/10 hover:bg-white/20 border border-white/10",t?"text-white":"text-blue-500 dark:text-blue-400"),children:[i.type==="url"&&jsx(ExternalLink,{className:"h-3 w-3"}),i.type==="call"&&jsx(Phone,{className:"h-3 w-3"}),i.type==="reply"&&jsx(Reply,{className:"h-3 w-3"}),i.text]},i.id))})]})]},s))}),e.length>1&&jsxs(Fragment,{children:[jsx("button",{onClick:()=>n("left"),className:"absolute left-[-12px] top-1/2 -translate-y-1/2 p-1.5 rounded-full bg-white dark:bg-gray-800 shadow-lg border border-white/10 opacity-0 group-hover/carousel:opacity-100 transition-opacity z-10",children:jsx(ChevronLeft,{className:"h-4 w-4"})}),jsx("button",{onClick:()=>n("right"),className:"absolute right-[-12px] top-1/2 -translate-y-1/2 p-1.5 rounded-full bg-white dark:bg-gray-800 shadow-lg border border-white/10 opacity-0 group-hover/carousel:opacity-100 transition-opacity z-10",children:jsx(ChevronRight,{className:"h-4 w-4"})})]})]})}function Js({message:e,isOwn:t,showAvatar:r,showStatus:o=true,className:n,onReply:a,onReact:s,onDelete:i,onEdit:c,onForward:d,onCopy:m,onPin:u,onSelect:f,isSelected:g}){let x=()=>!t||!o?null:jsx(_s,{status:e.status||"sent",className:"ml-1"}),v=()=>{if(e.type==="revoked")return jsxs("p",{className:"text-sm italic opacity-50 flex items-center gap-2",children:[jsx(Trash2,{className:"h-3 w-3"})," This message was deleted"]});switch(e.type){case "audio":return jsx(Ws,{src:e.attachments?.[0]?.url||"",duration:e.attachments?.[0]?.duration,isMe:t});case "location":return jsxs("div",{className:"space-y-2",children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx(MapPin,{className:"h-4 w-4"}),jsx("span",{className:"text-sm font-medium",children:e.location?.address||"Shared Location"})]}),jsxs("div",{className:"aspect-video rounded-xl bg-gray-200 dark:bg-white/10 flex items-center justify-center overflow-hidden relative group/map",children:[jsx(MapPin,{className:"h-8 w-8 opacity-20 group-hover/map:scale-110 transition-transform"}),jsx("div",{className:"absolute inset-0 bg-blue-500/5 group-hover/map:bg-blue-500/10 transition-colors"})]})]});case "contact":return jsxs("div",{className:"flex items-center gap-3 p-2 rounded-xl bg-black/5 dark:bg-white/10 border border-white/5",children:[jsx("div",{className:"w-10 h-10 rounded-full bg-blue-500 flex items-center justify-center text-white shadow-lg shadow-blue-500/20",children:jsx(User,{className:"h-5 w-5"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-sm font-bold truncate",children:e.contact?.name}),jsx("p",{className:"text-xs opacity-60 truncate",children:e.contact?.phone})]})]});case "file":return jsxs("div",{className:"flex items-center gap-3 p-3 rounded-xl bg-black/5 dark:bg-white/10 border border-white/5 hover:bg-black/10 dark:hover:bg-white/20 transition-colors cursor-pointer",children:[jsx("div",{className:"w-10 h-10 rounded-xl bg-blue-500/20 flex items-center justify-center text-blue-500",children:jsx(FileText,{className:"h-6 w-6"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-sm font-medium truncate",children:e.attachments?.[0]?.name||"File"}),jsx("p",{className:"text-[10px] opacity-60 uppercase",children:e.attachments?.[0]?.size||"Unknown size"})]})]});case "sticker":return jsx("div",{className:"relative group/sticker",children:jsx("img",{src:e.attachments?.[0]?.url,alt:"Sticker",className:"w-32 h-32 object-contain"})});case "image":return jsxs("div",{className:"space-y-2",children:[jsx("div",{className:"relative rounded-2xl overflow-hidden border border-white/5 group/image",children:jsx(qo,{src:e.attachments?.[0]?.url||"",alt:e.content||"Image",className:"max-h-[300px] w-auto object-contain bg-black/20"})}),e.content&&jsx("p",{className:"text-sm leading-relaxed whitespace-pre-wrap break-words px-1",children:e.content})]});case "video":return jsxs("div",{className:"space-y-2",children:[jsx("div",{className:"relative rounded-2xl overflow-hidden border border-white/5 bg-black/20 aspect-video flex items-center justify-center group/video",children:jsx("video",{src:e.attachments?.[0]?.url,controls:true,className:"max-h-[300px] w-full"})}),e.content&&jsx("p",{className:"text-sm leading-relaxed whitespace-pre-wrap break-words px-1",children:e.content})]});case "interactive":return e.interactive?.type==="carousel"&&e.interactive.cards?jsx(Gs,{cards:e.interactive.cards,isOwn:t}):e.interactive?jsx(qs,{data:e.interactive,isOwn:t}):null;default:let h=/(https?:\/\/[^\s]+)/g,p=e.content.match(h);return jsxs("div",{className:"space-y-2",children:[e.replyTo&&jsxs("div",{className:"mb-2 p-2 rounded-lg bg-black/5 dark:bg-white/5 border-l-4 border-blue-500 text-xs",children:[jsx("p",{className:"font-bold text-blue-500 truncate",children:e.replyTo.senderId===e.senderId?"You":"Other"}),jsx("p",{className:"opacity-60 truncate",children:e.replyTo.content})]}),jsx("p",{className:"text-sm leading-relaxed whitespace-pre-wrap break-words",children:e.content}),p&&p.map(b=>jsx(Xs,{url:b},b))]})}};return jsxs("div",{className:l("flex w-full mb-4 group/bubble",t?"justify-end":"justify-start",n),children:[!t&&r&&jsx("div",{className:"mr-2 mt-auto",children:jsx(z,{src:e.contact?.avatar,alt:e.contact?.name||"User",className:"w-8 h-8",fallback:(e.contact?.name||e.senderId||"?").charAt(0).toUpperCase()})}),jsxs("div",{className:l("relative max-w-[75%] sm:max-w-[60%] transition-all duration-300",g&&"scale-95 opacity-80"),children:[jsx(Hn,{preset:"spring",children:jsxs("div",{className:l("relative p-3 rounded-2xl shadow-sm backdrop-blur-md border",t?"bg-blue-600/90 dark:bg-blue-500/20 text-white border-blue-500/20 rounded-tr-none":"bg-white/80 dark:bg-white/[0.05] text-gray-900 dark:text-white border-white/10 rounded-tl-none","hover:shadow-lg hover:shadow-blue-500/5 transition-shadow"),children:[!t&&e.remoteJid?.endsWith("@g.us")&&e.contact?.name&&jsx("p",{className:"text-[11px] font-bold text-blue-500 dark:text-blue-400 mb-1 truncate",children:e.contact.name}),v(),jsxs("div",{className:"flex items-center justify-end gap-1 mt-1 opacity-60 text-[10px]",children:[jsx("span",{children:new Date(e.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),x()]}),e.reactions&&Object.keys(e.reactions).length>0&&jsx("div",{className:"absolute -bottom-3 right-2 flex -space-x-1",children:Object.entries(e.reactions).map(([h,p])=>jsx("div",{className:"bg-white dark:bg-gray-800 border border-gray-200 dark:border-white/10 rounded-full px-1.5 py-0.5 text-xs shadow-sm animate-in zoom-in-50",title:p.join(", "),children:h},h))})]})}),jsxs("div",{className:l("absolute top-0 opacity-0 group-hover/bubble:opacity-100 transition-opacity flex items-center gap-1",t?"right-full mr-2":"left-full ml-2"),children:[jsxs(at,{children:[jsx(nt,{className:"p-1.5 rounded-full hover:bg-gray-100 dark:hover:bg-white/10 text-gray-400 transition-colors",children:jsx(Smile,{className:"h-4 w-4"})}),jsx(st,{side:"top",className:"flex gap-1 p-1",children:["\u{1F44D}","\u2764\uFE0F","\u{1F602}","\u{1F62E}","\u{1F622}","\u{1F64F}"].map(h=>jsx("button",{onClick:()=>s?.(h),className:"p-1.5 hover:bg-gray-100 dark:hover:bg-white/10 rounded-lg transition-transform hover:scale-125",children:h},h))})]}),jsxs(at,{children:[jsx(nt,{className:"p-1.5 rounded-full hover:bg-gray-100 dark:hover:bg-white/10 text-gray-400 transition-colors",children:jsx(MoreHorizontal,{className:"h-4 w-4"})}),jsxs(st,{align:t?"end":"start",children:[jsxs(K,{onClick:a,children:[jsx(Reply,{className:"h-4 w-4 mr-2"})," Reply"]}),jsxs(K,{onClick:m,children:[jsx(Copy,{className:"h-4 w-4 mr-2"})," Copy"]}),jsxs(K,{onClick:d,children:[jsx(Forward,{className:"h-4 w-4 mr-2"})," Forward"]}),jsxs(K,{onClick:u,children:[jsx(Pin,{className:"h-4 w-4 mr-2"})," Pin"]}),t&&jsxs(Fragment,{children:[jsxs(K,{onClick:c,children:[jsx(Edit2,{className:"h-4 w-4 mr-2"})," Edit"]}),jsxs(K,{className:"text-red-500",onClick:i,children:[jsx(Trash2,{className:"h-4 w-4 mr-2"})," Delete"]})]})]})]})]})]})]})}function CL({messages:e,currentUserId:t,className:r,onReply:o,onReact:n,onDelete:a,onEdit:s,onForward:i,onCopy:c,onPin:d,onSelect:m,onLoadMore:u,hasMore:f,isLoadingMore:g,selectedMessages:x=[],dateFormat:v="MMMM d, yyyy",groupByDate:h=true,...p}){let[b,w]=useState(true),k=useRef(null),y=useRef(null),N=useCallback((T="auto")=>{y.current?.scrollIntoView({behavior:T});},[]);useEffect(()=>{b&&N("smooth");},[e.length,b,N]);let C=T=>{let L=T.currentTarget,H=Math.abs(L.scrollHeight-L.clientHeight-L.scrollTop)<100;w(H),L.scrollTop===0&&f&&!g&&u&&u();};return e.length===0&&!g?jsx("div",{className:l("flex-1 flex items-center justify-center p-8 text-center text-gray-500 dark:text-white/40",r),...p,children:jsxs("div",{className:"max-w-sm space-y-4",children:[jsx("div",{className:"w-24 h-24 bg-blue-500/10 dark:bg-white/[0.03] rounded-full flex items-center justify-center mx-auto mb-6 animate-pulse",children:jsx(MessageSquare,{className:"h-12 w-12 text-blue-500"})}),jsx("h3",{className:"text-xl font-medium text-gray-900 dark:text-white",children:"No messages yet"}),jsx("p",{children:"Start the conversation by sending a message below."})]})}):jsxs("div",{className:l("flex-1 relative overflow-hidden",r),...p,children:[jsx("div",{ref:k,onScroll:C,className:"h-full overflow-y-auto p-4 [&::-webkit-scrollbar]:w-1.5 [&::-webkit-scrollbar-thumb]:bg-white/10 [&::-webkit-scrollbar-thumb]:rounded-full hover:[&::-webkit-scrollbar-thumb]:bg-white/20 [&::-webkit-scrollbar-track]:bg-transparent",children:jsxs("div",{className:"flex flex-col gap-4",children:[e.map((T,L)=>{let H=T.senderId===t,E=L>0?e[L-1]:null,S=!H&&(!E||E.senderId!==T.senderId);return jsx(Js,{message:T,isOwn:H,showAvatar:S,onReply:()=>o?.(T),onReact:O=>n?.(T,O),onDelete:()=>a?.(T),onEdit:()=>s?.(T),onForward:()=>i?.(T),onCopy:()=>c?.(T),onPin:()=>d?.(T),onSelect:()=>m?.(T),isSelected:x.includes(T.id)},T.id)}),jsx("div",{ref:y})]})}),!b&&jsx("button",{onClick:()=>N("smooth"),className:"absolute bottom-6 right-6 p-3 rounded-full bg-white dark:bg-white/10 backdrop-blur border border-gray-200 dark:border-white/10 shadow-lg text-gray-600 dark:text-white hover:scale-110 transition-all z-10",children:jsx(ArrowDown,{className:"h-5 w-5"})})]})}function ei(){let[e,t]=useState(false),[r,o]=useState(0),[n,a]=useState(null),[s,i]=useState(null),c=useRef(null),d=useRef(null),m=useRef([]),u=useCallback(async()=>{try{let v=await navigator.mediaDevices.getUserMedia({audio:!0}),h=MediaRecorder.isTypeSupported("audio/ogg; codecs=opus")?"audio/ogg; codecs=opus":"audio/webm";c.current=new MediaRecorder(v,{mimeType:h}),m.current=[],c.current.ondataavailable=p=>{p.data.size>0&&m.current.push(p.data);},c.current.onstop=()=>{let p=new Blob(m.current,{type:h}),b=URL.createObjectURL(p);a(p),i(b),v.getTracks().forEach(w=>w.stop());},c.current.start(),t(!0),o(0),d.current=window.setInterval(()=>{o(p=>p+1);},1e3);}catch(v){throw console.error("Failed to start recording",v),v}},[]),f=useCallback(()=>{c.current&&e&&(c.current.stop(),t(false),d.current&&clearInterval(d.current));},[e]),g=useCallback(()=>{c.current&&e&&(c.current.stop(),t(false),d.current&&clearInterval(d.current),a(null),i(null),o(0));},[e]),x=useCallback(()=>{a(null),i(null),o(0);},[]);return {isRecording:e,duration:r,audioBlob:n,audioUrl:s,startRecording:u,stopRecording:f,cancelRecording:g,clearAudio:x}}function ti({onSend:e,onCancel:t,className:r,...o}){let{isRecording:n,duration:a,audioBlob:s,startRecording:i,stopRecording:c,cancelRecording:d}=ei();useEffect(()=>(i(),()=>d()),[i,d]);let m=u=>{let f=Math.floor(u/60),g=u%60;return `${f}:${g.toString().padStart(2,"0")}`};return jsxs("div",{className:l("flex items-center gap-3 p-2 rounded-2xl bg-gray-100 dark:bg-white/[0.03] border border-gray-200 dark:border-white/10 animate-in slide-in-from-bottom-2",r),...o,children:[jsxs("div",{className:"flex items-center gap-2 px-3 py-1.5 rounded-xl bg-red-500/10 text-red-500",children:[jsx("div",{className:"w-2 h-2 rounded-full bg-red-500 animate-pulse"}),jsx("span",{className:"text-sm font-mono font-bold",children:m(a)})]}),jsx("div",{className:"flex-1 h-8 flex items-center gap-0.5 px-2",children:[...Array(20)].map((u,f)=>jsx("div",{className:"w-1 bg-red-500/40 rounded-full transition-all duration-150",style:{height:n?`${20+Math.random()*80}%`:"20%",animationDelay:`${f*.05}s`}},f))}),jsxs("div",{className:"flex items-center gap-1",children:[jsx("button",{onClick:()=>{d(),t();},className:"p-2 rounded-full hover:bg-gray-200 dark:hover:bg-white/10 text-gray-500 transition-colors",children:jsx(Trash2,{className:"h-5 w-5"})}),n?jsx(R,{size:"icon",variant:"ghost",onClick:c,className:"rounded-full bg-red-500 text-white hover:bg-red-600",children:jsx(Square,{className:"h-4 w-4 fill-current"})}):jsx(R,{size:"icon",onClick:()=>s&&e(s,a),className:"rounded-full bg-blue-500 text-white hover:bg-blue-600",children:jsx(Send,{className:"h-4 w-4"})})]})]})}function qL({value:e,onValueChange:t,onSend:r,onChange:o,onAttach:n,onMic:a,onVoiceEnd:s,onEmoji:i,onGif:c,onLocation:d,onContact:m,onPoll:u,onPix:f,onCarousel:g,onButtons:x,onList:v,onCancelReply:h,placeholder:p="Type a message...",users:b=[],replyingTo:w,isRecording:k,maxLength:y,disabled:N,className:C,...T}){let[L,H]=useState(""),E=e!==void 0?e:L,S=P=>{t?t(P):H(P);},[O,V]=useState(false),[M,Y]=useState(null),[de,Z]=useState(0),te=useRef(null),Le=useMemo(()=>M===null?[]:b.filter(P=>P.name.toLowerCase().includes(M.toLowerCase())).slice(0,5),[b,M]),wt=P=>{if(N)return;let I=P.target.value;if(y&&I.length>y)return;S(I),o?.(I);I[P.target.selectionStart-1];let Qe=I.slice(0,P.target.selectionStart).match(/@(\w*)$/);Qe?(Y(Qe[1]||""),Z(0)):Y(null),te.current&&(te.current.style.height="auto",te.current.style.height=`${Math.min(te.current.scrollHeight,120)}px`);},zr=P=>{if(!te.current)return;let I=te.current.selectionStart,A=E.slice(0,I).replace(/@\w*$/,`@${P.name} `),re=E.slice(I);S(A+re),Y(null),te.current.focus();},U=P=>{if(!N){if(M!==null&&Le.length>0){P.key==="ArrowDown"?(P.preventDefault(),Z(I=>(I+1)%Le.length)):P.key==="ArrowUp"?(P.preventDefault(),Z(I=>(I-1+Le.length)%Le.length)):P.key==="Enter"||P.key==="Tab"?(P.preventDefault(),zr(Le[de])):P.key==="Escape"&&Y(null);return}P.key==="Enter"&&!P.shiftKey&&(P.preventDefault(),_());}},_=()=>{N||!E.trim()&&!k||(r?.(E),S(""),te.current&&(te.current.style.height="auto"));};return jsxs("div",{className:l("p-4 bg-white/80 dark:bg-black/40 backdrop-blur border-t border-gray-200 dark:border-white/10 relative",C),...T,children:[M!==null&&Le.length>0&&jsx("div",{className:"absolute bottom-full left-4 mb-2 w-64 bg-white dark:bg-gray-900 border border-gray-200 dark:border-white/10 rounded-2xl shadow-2xl overflow-hidden animate-in slide-in-from-bottom-4",children:Le.map((P,I)=>jsxs("button",{onClick:()=>zr(P),className:l("w-full flex items-center gap-3 p-3 text-left transition-colors",I===de?"bg-blue-500/10 dark:bg-white/10":"hover:bg-gray-50 dark:hover:bg-white/5"),children:[jsx(z,{src:P.avatar,alt:P.name,className:"w-8 h-8"}),jsxs("div",{children:[jsx("p",{className:"text-sm font-bold dark:text-white",children:P.name}),jsxs("p",{className:"text-xs text-gray-500 dark:text-white/40",children:["@",P.name.toLowerCase().replace(/\s/g,"")]})]})]},P.id))}),w&&jsxs("div",{className:"mb-3 flex items-center justify-between p-3 rounded-2xl bg-blue-500/5 border-l-4 border-blue-500 animate-in slide-in-from-bottom-2",children:[jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-xs font-bold text-blue-500",children:"Replying to"}),jsx("p",{className:"text-sm text-gray-600 dark:text-white/60 truncate",children:w.content})]}),jsx("button",{onClick:h,className:"p-1.5 rounded-full hover:bg-gray-200 dark:hover:bg-white/10 text-gray-400",children:jsx(X$1,{className:"h-4 w-4"})})]}),jsxs("div",{className:"flex items-end gap-2",children:[jsxs("div",{className:"flex items-center gap-1 mb-1",children:[jsxs(at,{children:[jsx(nt,{disabled:N,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-500 dark:text-white/50 transition-colors disabled:opacity-50",children:jsx(Paperclip,{className:"h-5 w-5"})}),jsxs(st,{align:"start",side:"top",children:[jsxs(K,{onClick:n,children:[jsx(Image,{className:"h-4 w-4 mr-2"})," Image & Video"]}),jsxs(K,{onClick:n,children:[jsx(Paperclip,{className:"h-4 w-4 mr-2"})," Document"]}),jsxs(K,{onClick:d,children:[jsx(MapPin,{className:"h-4 w-4 mr-2"})," Location"]}),jsxs(K,{onClick:m,children:[jsx(AtSign,{className:"h-4 w-4 mr-2"})," Contact"]}),jsxs(K,{onClick:u,children:[jsx(AtSign,{className:"h-4 w-4 mr-2"})," Poll"]}),jsxs(K,{onClick:f,children:[jsx(AtSign,{className:"h-4 w-4 mr-2"})," PIX"]}),jsxs(K,{onClick:g,children:[jsx(Layout,{className:"h-4 w-4 mr-2"})," Carousel"]}),jsxs(K,{onClick:x,children:[jsx(Layout,{className:"h-4 w-4 mr-2"})," Buttons"]}),jsxs(K,{onClick:v,children:[jsx(List,{className:"h-4 w-4 mr-2"})," List Menu"]}),jsxs(K,{onClick:c,children:[jsx(Gift,{className:"h-4 w-4 mr-2"})," GIF"]})]})]}),jsx("button",{onClick:i,disabled:N,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-500 dark:text-white/50 transition-colors disabled:opacity-50",children:jsx(Smile,{className:"h-5 w-5"})})]}),jsx("div",{className:"flex-1 relative",children:k?jsx(ti,{onSend:(P,I)=>s?.(P,I),onCancel:()=>h?.()}):jsx("textarea",{ref:te,value:E,onChange:wt,onKeyDown:U,placeholder:p,disabled:N,rows:1,className:"w-full p-2.5 max-h-[120px] rounded-2xl bg-gray-100 dark:bg-white/[0.03] border border-transparent focus:border-blue-500/50 focus:bg-white dark:focus:bg-white/[0.06] text-sm resize-none transition-all outline-none dark:text-white placeholder:text-gray-400"})}),jsx("div",{className:"flex items-center gap-1 mb-1",children:E.trim()||k?jsx("button",{onClick:_,disabled:N,className:"p-2.5 rounded-full bg-blue-500 text-white hover:bg-blue-600 shadow-lg shadow-blue-500/20 transition-all active:scale-90",children:jsx(Send,{className:"h-5 w-5"})}):jsx("button",{onClick:a,disabled:N,className:"p-2.5 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-500 dark:text-white/50 transition-colors disabled:opacity-50",children:jsx(Mic,{className:"h-5 w-5"})})})]})]})}function nP({user:e,onClose:t,className:r,...o}){return jsxs("div",{className:l("w-80 border-l border-gray-200 dark:border-white/10 bg-white dark:bg-black/20 flex flex-col",r),...o,children:[jsxs("div",{className:"h-16 flex items-center px-4 border-b border-gray-200 dark:border-white/10",children:[jsx("button",{onClick:t,className:"p-2 -ml-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06]",children:jsx(X$1,{className:"h-5 w-5 text-gray-500"})}),jsx("span",{className:"ml-2 font-semibold text-gray-900 dark:text-white",children:"Contact Info"})]}),jsxs(it,{className:"flex-1",children:[jsxs("div",{className:"p-6 flex flex-col items-center text-center",children:[jsx(z,{src:e.avatar,alt:e.name,fallback:e.name[0],className:"h-24 w-24 mb-4 text-2xl"}),jsx("h2",{className:"text-xl font-bold text-gray-900 dark:text-white",children:e.name}),jsx("p",{className:"text-sm text-gray-500 dark:text-white/50 mt-1",children:e.phone||"+1 (555) 000-0000"}),jsxs("div",{className:"mt-6 w-full",children:[jsx("p",{className:"text-sm text-gray-500 dark:text-white/50 mb-1 text-left",children:"About"}),jsx("p",{className:"text-sm text-gray-900 dark:text-white text-left",children:e.bio||"Hey there! I am using Pixon Chat."})]})]}),jsx(Sr,{}),jsxs("div",{className:"p-4 space-y-4",children:[jsx("h3",{className:"text-xs font-semibold text-gray-500 dark:text-white/40 uppercase tracking-wider",children:"Media & Docs"}),jsx("div",{className:"grid grid-cols-3 gap-2",children:[1,2,3,4,5,6].map(n=>jsxs("div",{className:"aspect-square rounded-2xl bg-gray-100 dark:bg-white/[0.03] overflow-hidden relative group cursor-pointer",children:[jsx("div",{className:"absolute inset-0 flex items-center justify-center text-gray-400",children:jsx(Image,{className:"h-6 w-6"})}),jsx("div",{className:"absolute inset-0 bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity"})]},n))})]}),jsx(Sr,{}),jsx("div",{className:"p-4 space-y-4",children:jsxs("div",{className:"flex items-center justify-between",children:[jsxs("div",{className:"flex items-center gap-3 text-gray-700 dark:text-white/80",children:[jsx(Bell,{className:"h-5 w-5"}),jsx("span",{className:"text-sm font-medium",children:"Mute Notifications"})]}),jsx(Eo,{})]})}),jsx(Sr,{}),jsxs("div",{className:"p-4 space-y-2",children:[jsxs("button",{className:"w-full flex items-center gap-3 p-3 rounded-2xl hover:bg-red-50 dark:hover:bg-red-500/10 text-red-600 dark:text-red-400 transition-colors text-sm font-medium",children:[jsx(Ban,{className:"h-5 w-5"}),"Block ",e.name]}),jsxs("button",{className:"w-full flex items-center gap-3 p-3 rounded-2xl hover:bg-red-50 dark:hover:bg-red-500/10 text-red-600 dark:text-red-400 transition-colors text-sm font-medium",children:[jsx(Trash2,{className:"h-5 w-5"}),"Delete Chat"]})]})]})]})}function cP({users:e=[],variant:t="default",className:r,...o}){let n=e.length===0?"Someone is typing":e.length===1?`${e[0]} is typing`:e.length===2?`${e[0]} and ${e[1]} are typing`:`${e[0]} and ${e.length-1} others are typing`;return t==="bubble"?jsx("div",{className:l("flex items-center gap-1 px-3 py-2 rounded-2xl bg-gray-100 dark:bg-white/[0.03] w-fit",r),...o,children:jsxs("div",{className:"flex gap-1",children:[jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-gray-400 animate-bounce [animation-delay:-0.3s]"}),jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-gray-400 animate-bounce [animation-delay:-0.15s]"}),jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-gray-400 animate-bounce"})]})}):jsxs("div",{className:l("flex items-center gap-2 text-xs text-gray-500 dark:text-white/40 italic",r),...o,children:[jsxs("div",{className:"flex gap-0.5",children:[jsx("span",{className:"w-1 h-1 rounded-full bg-current animate-bounce [animation-delay:-0.3s]"}),jsx("span",{className:"w-1 h-1 rounded-full bg-current animate-bounce [animation-delay:-0.15s]"}),jsx("span",{className:"w-1 h-1 rounded-full bg-current animate-bounce"})]}),n]})}function fP({message:e,onCancel:t,className:r,...o}){return jsxs("div",{className:l("flex items-center gap-3 p-2 rounded-xl bg-blue-500/5 border-l-4 border-blue-500 animate-in slide-in-from-bottom-2",r),...o,children:[jsx("div",{className:"p-1.5 rounded-lg bg-blue-500/10 text-blue-500",children:jsx(Reply,{className:"h-4 w-4"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-xs font-bold text-blue-500",children:"Replying to"}),jsx("p",{className:"text-sm text-gray-600 dark:text-white/60 truncate",children:e.content})]}),t&&jsx("button",{onClick:t,className:"p-1 rounded-full hover:bg-gray-200 dark:hover:bg-white/10 text-gray-400 transition-colors",children:jsx(X$1,{className:"h-4 w-4"})})]})}function vP({type:e="info",message:t,action:r,onClose:o,className:n,...a}){let s={info:Info,warning:AlertCircle,error:AlertCircle,success:CheckCircle2},i={info:"bg-blue-500/10 text-blue-600 dark:text-blue-400 border-blue-500/20",warning:"bg-amber-500/10 text-amber-600 dark:text-amber-400 border-amber-500/20",error:"bg-red-500/10 text-red-600 dark:text-red-400 border-red-500/20",success:"bg-green-500/10 text-green-600 dark:text-green-400 border-green-500/20"},c=s[e];return jsxs("div",{className:l("flex items-center gap-3 px-4 py-2 border-b text-sm animate-in slide-in-from-top duration-300",i[e],n),...a,children:[jsx(c,{className:"h-4 w-4 shrink-0"}),jsx("p",{className:"flex-1 font-medium",children:t}),r&&jsx("button",{onClick:r.onClick,className:"text-xs font-bold uppercase tracking-wider hover:underline",children:r.label}),o&&jsx("button",{onClick:o,className:"p-1 rounded-full hover:bg-black/5 dark:hover:bg-white/5 transition-colors",children:jsx(X$1,{className:"h-4 w-4"})})]})}function TP({date:e,className:t,...r}){return jsx("div",{className:l("flex justify-center sticky top-0 z-10 py-4",t),...r,children:jsxs("div",{className:"flex items-center gap-2 px-3 py-1 rounded-full bg-gray-100/80 dark:bg-white/5 backdrop-blur text-[10px] font-bold uppercase tracking-wider text-gray-500 dark:text-white/40 border border-gray-200 dark:border-white/10 shadow-sm",children:[jsx(Calendar,{className:"h-3 w-3"}),e]})})}function LP({status:e="offline",size:t="md",className:r,...o}){let n={online:"bg-green-500",offline:"bg-gray-400",away:"bg-amber-500",busy:"bg-red-500"},a={sm:"h-2 w-2",md:"h-3 w-3",lg:"h-4 w-4"};return jsx("span",{className:l("rounded-full border-2 border-white dark:border-black shrink-0",n[e],a[t],e==="online"&&"animate-pulse",r),...o})}function DP({content:e,className:t,...r}){return jsx("div",{className:l("flex justify-center py-2",t),...r,children:jsx("div",{className:"px-4 py-1 rounded-lg bg-gray-100/50 dark:bg-white/[0.02] text-[11px] font-medium text-gray-500 dark:text-white/30 border border-gray-200/50 dark:border-white/5",children:e})})}function zP({group:e,onBack:t,onInfo:r,isTyping:o,typingUsers:n=[],className:a,...s}){let i=n.length>0?`${n.join(", ")} ${n.length===1?"is":"are"} typing...`:"typing...";return jsxs("div",{className:l("flex h-16 items-center justify-between border-b border-gray-200 dark:border-white/10 bg-white/80 dark:bg-black/40 backdrop-blur px-4 sticky top-0 z-10",a),...s,children:[jsxs("div",{className:"flex items-center gap-3",children:[t&&jsx("button",{onClick:t,className:"md:hidden p-2 -ml-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06]",children:jsx(ArrowLeft,{className:"h-5 w-5 text-gray-600 dark:text-white/70"})}),jsx("div",{className:"relative cursor-pointer",onClick:r,children:jsxs("div",{className:"flex -space-x-3",children:[e.members.slice(0,2).map((c,d)=>jsx(z,{src:c.avatar,alt:c.name,fallback:c.name[0],className:l("border-2 border-white dark:border-black",d===0?"z-10":"z-0")},c.id)),e.members.length>2&&jsxs("div",{className:"w-10 h-10 rounded-full bg-gray-200 dark:bg-white/10 border-2 border-white dark:border-black flex items-center justify-center text-[10px] font-bold text-gray-600 dark:text-white/60 z-0",children:["+",e.members.length-2]})]})}),jsxs("div",{className:"cursor-pointer min-w-0",onClick:r,children:[jsx("h3",{className:"font-semibold text-gray-900 dark:text-white leading-none truncate",children:e.name}),jsx("p",{className:l("text-xs mt-1 truncate transition-colors",o?"text-blue-500 font-medium animate-pulse":"text-gray-500 dark:text-white/50"),children:o?i:`${e.members.length} members`})]})]}),jsxs("div",{className:"flex items-center gap-1",children:[jsx("button",{className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Phone,{className:"h-5 w-5"})}),jsx("button",{className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Video,{className:"h-5 w-5"})}),jsx("button",{onClick:r,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(MoreVertical,{className:"h-5 w-5"})})]})]})}function YP({users:e,selectedIndex:t,onSelect:r,className:o,...n}){return e.length===0?null:jsx(ne,{className:l("w-64 overflow-hidden shadow-xl animate-in fade-in slide-in-from-bottom-2",o),...n,children:jsxs("div",{className:"p-1",children:[jsx("div",{className:"px-3 py-2 text-[10px] font-bold uppercase tracking-wider text-gray-400 border-b border-gray-200 dark:border-white/5 mb-1",children:"Mention someone"}),e.map((a,s)=>jsxs("button",{onClick:()=>r(a),className:l("w-full flex items-center gap-2 p-2 rounded-xl text-left transition-colors",s===t?"bg-blue-500 text-white":"hover:bg-gray-100 dark:hover:bg-white/[0.06]"),children:[jsx(z,{src:a.avatar,alt:a.name,fallback:a.name[0],size:"sm"}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-sm font-medium truncate",children:a.name}),a.status&&jsx("p",{className:l("text-[10px]",s===t?"text-white/70":"text-gray-500"),children:a.status})]})]},a.id))]})})}var q0=[{name:"Smileys",emojis:["\u{1F600}","\u{1F603}","\u{1F604}","\u{1F601}","\u{1F606}","\u{1F605}","\u{1F602}","\u{1F923}","\u{1F60A}","\u{1F607}","\u{1F642}","\u{1F643}","\u{1F609}","\u{1F60C}","\u{1F60D}","\u{1F970}","\u{1F618}","\u{1F617}","\u{1F619}","\u{1F61A}","\u{1F60B}","\u{1F61B}","\u{1F61D}","\u{1F61C}","\u{1F92A}","\u{1F928}","\u{1F9D0}","\u{1F913}","\u{1F60E}","\u{1F929}","\u{1F973}","\u{1F60F}","\u{1F612}","\u{1F61E}","\u{1F614}","\u{1F61F}","\u{1F615}","\u{1F641}","\u2639\uFE0F","\u{1F623}","\u{1F616}","\u{1F62B}","\u{1F629}","\u{1F97A}","\u{1F622}","\u{1F62D}","\u{1F624}","\u{1F620}","\u{1F621}","\u{1F92C}","\u{1F92F}","\u{1F633}","\u{1F975}","\u{1F976}","\u{1F631}","\u{1F628}","\u{1F630}","\u{1F625}","\u{1F613}","\u{1F917}","\u{1F914}","\u{1F92D}","\u{1F92B}","\u{1F925}","\u{1F636}","\u{1F610}","\u{1F611}","\u{1F62C}","\u{1F644}","\u{1F62F}","\u{1F626}","\u{1F627}","\u{1F62E}","\u{1F632}","\u{1F971}","\u{1F634}","\u{1F924}","\u{1F62A}","\u{1F635}","\u{1F910}","\u{1F974}","\u{1F922}","\u{1F92E}","\u{1F927}","\u{1F637}","\u{1F912}","\u{1F915}"]},{name:"Hearts",emojis:["\u2764\uFE0F","\u{1F9E1}","\u{1F49B}","\u{1F49A}","\u{1F499}","\u{1F49C}","\u{1F5A4}","\u{1F90D}","\u{1F90E}","\u{1F494}","\u2763\uFE0F","\u{1F495}","\u{1F49E}","\u{1F493}","\u{1F497}","\u{1F496}","\u{1F498}","\u{1F49D}","\u{1F49F}"]},{name:"Gestures",emojis:["\u{1F44D}","\u{1F44E}","\u{1F44C}","\u{1F90C}","\u{1F90F}","\u270C\uFE0F","\u{1F91E}","\u{1F91F}","\u{1F918}","\u{1F919}","\u{1F448}","\u{1F449}","\u{1F446}","\u{1F595}","\u{1F447}","\u261D\uFE0F","\u270A","\u{1F44A}","\u{1F91B}","\u{1F91C}","\u{1F44F}","\u{1F64C}","\u{1F450}","\u{1F932}","\u{1F91D}","\u{1F64F}","\u270D\uFE0F","\u{1F485}","\u{1F933}","\u{1F4AA}","\u{1F9BE}","\u{1F9B5}","\u{1F9BF}","\u{1F9B6}","\u{1F463}","\u{1F442}","\u{1F9BB}","\u{1F443}","\u{1F9E0}","\u{1FAC0}","\u{1FAC1}","\u{1F9B7}","\u{1F9B4}","\u{1F440}","\u{1F441}\uFE0F","\u{1F445}","\u{1F444}"]},{name:"Activities",emojis:["\u26BD","\u{1F3C0}","\u{1F3C8}","\u26BE","\u{1F94E}","\u{1F3BE}","\u{1F3D0}","\u{1F3C9}","\u{1F94F}","\u{1F3B1}","\u{1FA80}","\u{1F3D3}","\u{1F3F8}","\u{1F3D2}","\u{1F3D1}","\u{1F94D}","\u{1F3CF}","\u{1FA83}","\u{1F945}","\u26F3","\u{1FA81}","\u{1F3F9}","\u{1F3A3}","\u{1F93F}","\u{1F94A}","\u{1F94B}","\u{1F3BD}","\u{1F6F9}","\u{1F6FC}","\u{1F6F7}","\u26F8\uFE0F","\u{1F3BF}","\u26F7\uFE0F","\u{1F3C2}","\u{1FA82}","\u{1F3CB}\uFE0F","\u{1F93C}","\u{1F938}","\u26F9\uFE0F","\u{1F93A}","\u{1F93E}","\u{1F3CC}\uFE0F","\u{1F3C7}","\u{1F9D8}","\u{1F3C4}","\u{1F3CA}","\u{1F93D}","\u{1F6A3}","\u{1F9D7}","\u{1F6B5}","\u{1F6B4}"]},{name:"Nature",emojis:["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F43B}\u200D\u2744\uFE0F","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F437}","\u{1F43D}","\u{1F438}","\u{1F435}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F412}","\u{1F414}","\u{1F427}","\u{1F426}","\u{1F424}","\u{1F423}","\u{1F425}","\u{1F986}","\u{1F985}","\u{1F989}","\u{1F987}","\u{1F43A}","\u{1F417}","\u{1F434}","\u{1F984}","\u{1F41D}","\u{1FAB1}","\u{1F41B}","\u{1F98B}","\u{1F40C}","\u{1F41E}","\u{1F41C}","\u{1F99F}","\u{1FAB0}","\u{1FAB2}","\u{1FAB3}","\u{1F997}","\u{1F577}\uFE0F","\u{1F578}\uFE0F","\u{1F982}","\u{1F422}","\u{1F40D}","\u{1F98E}","\u{1F996}","\u{1F995}","\u{1F419}","\u{1F991}","\u{1F990}","\u{1F99E}","\u{1F980}","\u{1F421}","\u{1F420}","\u{1F41F}","\u{1F42C}","\u{1F433}","\u{1F40B}","\u{1F988}","\u{1F40A}","\u{1F405}","\u{1F406}","\u{1F993}","\u{1F98D}","\u{1F9A7}","\u{1F9A3}","\u{1F418}","\u{1F99B}","\u{1F98F}","\u{1F42A}","\u{1F42B}","\u{1F992}","\u{1F998}","\u{1F9AC}","\u{1F403}","\u{1F402}","\u{1F404}","\u{1F40E}","\u{1F416}","\u{1F40F}","\u{1F411}","\u{1F410}","\u{1F98C}","\u{1F415}","\u{1F429}","\u{1F9AE}","\u{1F415}\u200D\u{1F9BA}","\u{1F408}","\u{1F408}\u200D\u2B1B","\u{1F413}","\u{1F983}","\u{1F99A}","\u{1F99C}","\u{1F9A2}","\u{1F9A9}","\u{1F54A}\uFE0F","\u{1F407}","\u{1F99D}","\u{1F9A8}","\u{1F9A1}","\u{1F9AB}","\u{1F9A6}","\u{1F9A5}","\u{1F401}","\u{1F400}","\u{1F43F}\uFE0F","\u{1F994}","\u{1F43E}","\u{1F409}","\u{1F432}","\u{1F335}","\u{1F384}","\u{1F332}","\u{1F333}","\u{1F334}","\u{1FAB5}","\u{1F331}","\u{1F33F}","\u2618\uFE0F","\u{1F340}","\u{1F38D}","\u{1FAB4}","\u{1F38B}","\u{1F343}","\u{1F342}","\u{1F341}","\u{1F344}","\u{1F41A}","\u{1FAA8}","\u{1F33E}","\u{1F490}","\u{1F337}","\u{1F339}","\u{1F940}","\u{1F33A}","\u{1F338}","\u{1F33C}","\u{1F33B}","\u{1F31E}","\u{1F31D}","\u{1F31B}","\u{1F31C}","\u{1F31A}","\u{1F315}","\u{1F316}","\u{1F317}","\u{1F318}","\u{1F311}","\u{1F312}","\u{1F313}","\u{1F314}","\u{1F319}","\u{1F30E}","\u{1F30D}","\u{1F30F}","\u{1FA90}","\u{1F4AB}","\u2B50\uFE0F","\u{1F31F}","\u2728","\u26A1\uFE0F","\u2604\uFE0F","\u{1F4A5}","\u{1F525}","\u{1F32A}\uFE0F","\u{1F308}","\u2600\uFE0F","\u{1F324}\uFE0F","\u26C5\uFE0F","\u{1F325}\uFE0F","\u2601\uFE0F","\u{1F326}\uFE0F","\u{1F327}\uFE0F","\u26C8\uFE0F","\u{1F329}\uFE0F","\u{1F328}\uFE0F","\u2744\uFE0F","\u2603\uFE0F","\u26C4\uFE0F","\u{1F32C}\uFE0F","\u{1F4A8}","\u{1F4A7}","\u{1F4A6}","\u2614\uFE0F","\u2602\uFE0F","\u{1F30A}","\u{1F32B}\uFE0F"]}];function ZP({onSelect:e,className:t,...r}){let[o,n]=useState(""),a=q0.map(s=>({...s,emojis:s.emojis.filter(i=>o===""||i.includes(o))})).filter(s=>s.emojis.length>0);return jsxs(ne,{className:l("w-72 h-96 flex flex-col overflow-hidden shadow-2xl",t),...r,children:[jsx("div",{className:"p-3 border-b border-gray-200 dark:border-white/10",children:jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-gray-400"}),jsx("input",{type:"text",value:o,onChange:s=>n(s.target.value),placeholder:"Search emoji...",className:"w-full h-8 pl-8 pr-3 rounded-lg bg-gray-100 dark:bg-white/5 text-xs focus:outline-none focus:ring-2 focus:ring-blue-500/50 transition-all"})]})}),jsx("div",{className:"flex-1 overflow-y-auto p-2 custom-scrollbar",children:a.map(s=>jsxs("div",{className:"mb-4",children:[jsx("h4",{className:"text-[10px] font-bold uppercase tracking-wider text-gray-400 px-2 mb-2",children:s.name}),jsx("div",{className:"grid grid-cols-8 gap-1",children:s.emojis.map(i=>jsx("button",{onClick:()=>e(i),className:"h-8 w-8 flex items-center justify-center rounded-lg hover:bg-gray-100 dark:hover:bg-white/10 text-lg transition-colors",children:i},i))})]},s.name))})]})}function lE({onSearch:e,results:t,onResultClick:r,onClose:o,className:n,...a}){let[s,i]=useState(""),c=d=>{let m=d.target.value;i(m),e(m);};return jsxs("div",{className:l("flex flex-col h-full bg-white dark:bg-gray-900 border-l border-gray-200 dark:border-white/10 animate-in slide-in-from-right duration-300",n),...a,children:[jsxs("div",{className:"p-4 border-b border-gray-200 dark:border-white/10 flex items-center justify-between",children:[jsx("h3",{className:"font-bold text-gray-900 dark:text-white",children:"Search Messages"}),jsx("button",{onClick:o,className:"p-1 rounded-full hover:bg-gray-100 dark:hover:bg-white/10",children:jsx(X$1,{className:"h-5 w-5 text-gray-500"})})]}),jsx("div",{className:"p-4",children:jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400"}),jsx("input",{type:"text",value:s,onChange:c,placeholder:"Search in conversation...",className:"w-full h-10 pl-10 pr-4 rounded-xl bg-gray-100 dark:bg-white/5 border-none text-sm focus:ring-2 focus:ring-blue-500/50 transition-all",autoFocus:true})]})}),jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s&&t.length===0?jsx("div",{className:"p-8 text-center text-gray-500 dark:text-white/30",children:jsxs("p",{className:"text-sm",children:['No messages found for "',s,'"']})}):jsx("div",{className:"space-y-1",children:t.map(d=>jsxs("button",{onClick:()=>r(d),className:"w-full p-3 rounded-xl hover:bg-gray-100 dark:hover:bg-white/5 text-left transition-all group",children:[jsxs("div",{className:"flex justify-between mb-1",children:[jsx("span",{className:"text-[10px] font-bold text-blue-500 uppercase",children:d.timestamp.toLocaleDateString()}),jsx("span",{className:"text-[10px] text-gray-400",children:d.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]}),jsx("p",{className:"text-sm text-gray-700 dark:text-white/70 line-clamp-2 group-hover:text-gray-900 dark:group-hover:text-white",children:d.content})]},d.id))})})]})}var Ba=class{constructor(){this.state={conversations:new Map,messages:new Map,activeChatId:null,presence:new Map};this.listeners=new Set;this.getState=()=>this.state;this.subscribe=t=>(this.listeners.add(t),()=>this.listeners.delete(t));}emitChange(t){this.state=t;for(let r of this.listeners)r();}setConversations(t){this.emitChange({...this.state,conversations:new Map(t.map(r=>[r.id,r]))});}upsertConversation(t){let r=new Map(this.state.conversations),o=r.get(t.id);r.set(t.id,{...o||{unreadCount:0},...t}),this.emitChange({...this.state,conversations:r});}setMessages(t,r){let o=new Map(this.state.messages);o.set(t,r),this.emitChange({...this.state,messages:o});}addMessage(t,r){let o=this.state.messages.get(t)||[];if(o.some(i=>i.id===r.id))return;let n=new Map(this.state.messages);n.set(t,[...o,r]);let a={...this.state,messages:n},s=this.state.conversations.get(t);if(s){let i=new Map(this.state.conversations);i.set(t,{...s,lastMessage:r,unreadCount:this.state.activeChatId===t?0:(s.unreadCount||0)+1}),a.conversations=i;}this.emitChange(a);}updateMessageStatus(t,r,o){let n=this.state.messages.get(t);if(!n)return;let a=n.findIndex(s=>s.id===r);if(a!==-1){let s=[...n],i=s[a];if(i){s[a]={...i,status:o};let c=new Map(this.state.messages);c.set(t,s),this.emitChange({...this.state,messages:c});}}}updateMessage(t,r,o){let n=this.state.messages.get(t);if(!n)return;let a=n.findIndex(s=>s.id===r);if(a!==-1){let s=[...n];s[a]={...s[a],...o};let i=new Map(this.state.messages);i.set(t,s),this.emitChange({...this.state,messages:i});}}addReaction(t,r,o,n){let a=this.state.messages.get(t);if(!a)return;let s=a.findIndex(i=>i.id===r);if(s!==-1){let i=[...a],c={...i[s]},d={...c.reactions||{}},m=[...d[o]||[]];if(!m.includes(n)){m.push(n),d[o]=m,c.reactions=d,i[s]=c;let u=new Map(this.state.messages);u.set(t,i),this.emitChange({...this.state,messages:u});}}}removeReaction(t,r,o,n){let a=this.state.messages.get(t);if(!a)return;let s=a.findIndex(i=>i.id===r);if(s!==-1){let i=[...a],c={...i[s]},d={...c.reactions||{}};if(d[o]){d[o]=d[o].filter(u=>u!==n),d[o].length===0&&delete d[o],c.reactions=d,i[s]=c;let m=new Map(this.state.messages);m.set(t,i),this.emitChange({...this.state,messages:m});}}}deleteMessage(t,r){let o=this.state.messages.get(t);if(!o)return;let n=o.findIndex(a=>a.id===r);if(n!==-1){let a=[...o];a[n]={...a[n],type:"revoked",content:"Esta mensagem foi apagada",attachments:[],reactions:{}};let s=new Map(this.state.messages);s.set(t,a),this.emitChange({...this.state,messages:s});}}setActiveChat(t){let r={...this.state,activeChatId:t};if(t){let o=this.state.conversations.get(t);if(o&&o.unreadCount>0){let n=new Map(this.state.conversations);n.set(t,{...o,unreadCount:0}),r.conversations=n;}}this.emitChange(r);}setUserPresence(t,r){let o=new Map(this.state.presence);o.set(t,r),this.emitChange({...this.state,presence:o});}},je=new Ba;function ko(e){let t=useSyncExternalStore(je.subscribe,je.getState);return useMemo(()=>e(t),[t,e])}var eg=e=>Array.from(e.conversations.values()).sort((t,r)=>{if(t.isPinned&&!r.isPinned)return -1;if(!t.isPinned&&r.isPinned)return 1;let o=t.lastMessage?.timestamp.getTime()||0;return (r.lastMessage?.timestamp.getTime()||0)-o});function uE(){return ko(eg)}function pE(e){let t=useCallback(r=>e?r.messages.get(e)||[]:[],[e]);return ko(t)}function fE(){let e=useCallback(t=>t.activeChatId?t.conversations.get(t.activeChatId):null,[]);return ko(e)}function gE(e){let t=useCallback(r=>r.presence.get(e)||"unavailable",[e]);return ko(t)}function Va({url:e,token:t,rooms:r=[],onConnect:o,onDisconnect:n,onError:a}){let s=useRef(null);useEffect(()=>{let d=io(e,{auth:{token:t},transports:["websocket"],reconnectionAttempts:5,reconnectionDelay:1e3});return s.current=d,d.on("connect",()=>{console.log("Socket connected:",d.id),r.forEach(m=>d.emit("join",m)),o?.();}),d.on("disconnect",m=>{console.log("Socket disconnected:",m),n?.();}),d.on("connect_error",m=>{console.error("Socket connection error:",m),a?.(m);}),()=>{d.disconnect();}},[e,t,r,o,n,a]);let i=useCallback((d,m)=>{s.current?.connected?s.current.emit(d,m):console.warn("Socket not connected. Event buffered or dropped:",d);},[]),c=useCallback((d,m)=>(s.current?.on(d,m),()=>{s.current?.off(d,m);}),[]);return {socket:s.current,emit:i,on:c,isConnected:s.current?.connected||false}}function TE(e,t){let{on:r,emit:o,isConnected:n}=Va({url:e,token:t});return useEffect(()=>{r("chats.set",a=>{je.setConversations(a);}),r("chats.upsert",a=>{a.forEach(s=>je.upsertConversation(s));}),r("chats.update",a=>{a.forEach(s=>{s.id&&je.upsertConversation(s);});}),r("messages.upsert",({chatId:a,messages:s})=>{s.forEach(i=>je.addMessage(a,i));}),r("messages.update",({chatId:a,messageId:s,status:i})=>{je.updateMessageStatus(a,s,i);}),r("presence.update",({userId:a,status:s})=>{je.setUserPresence(a,s);}),r("groups.update",a=>{a.forEach(s=>{je.upsertConversation({id:s.id,group:s});});});},[r]),{isConnected:n,emit:o}}function CE(e,t){let{emit:r}=Va({url:""});return {setPresence:n=>{r("presence.send",{chatId:e,userId:t,status:n});}}}function ME(){return {uploadMedia:async(t,r)=>({url:"...",thumbnail:"...",blurhash:"..."})}}function RE(e){return {search:r=>r?e.filter(o=>o.content.toLowerCase().includes(r.toLowerCase())):e}}function EE({itemCount:e,itemHeight:t,overscan:r=5,initialScrollTop:o=0,startAtBottom:n=false}){let[a,s]=useState(o),[i,c]=useState(0),d=useRef(null),m=useRef(false),u=useCallback(p=>typeof t=="function"?t(p):t,[t]);useLayoutEffect(()=>{if(d.current){let p=new ResizeObserver(b=>{for(let w of b)c(w.contentRect.height);});return p.observe(d.current),o>0&&(d.current.scrollTop=o),()=>p.disconnect()}},[o]);let f=useCallback(p=>{s(p.currentTarget.scrollTop);},[]),{visibleItems:g,totalHeight:x,startIndex:v}=useMemo(()=>{let p=0,b=[];for(let T=0;T<e;T++)b.push(p),p+=u(T);let w=0,y=0,N=e-1;for(;y<=N;){let T=Math.floor((y+N)/2),L=b[T];L!==void 0&&L<=a?(w=T,y=T+1):N=T-1;}w=Math.max(0,w-r);let C=[];for(let T=w;T<e;T++){let L=b[T];if(L===void 0||L>a+i+r*u(T))break;C.push({index:T,offsetTop:L,height:u(T)});}return {visibleItems:C,totalHeight:p,startIndex:w}},[a,i,e,u,r]);useLayoutEffect(()=>{if(n&&!m.current&&x>0&&d.current&&i>0){let p=d.current,b=x-i;b>0&&(p.scrollTop=b,s(b)),m.current=true;}},[x,i,n]);let h=useCallback((p,b="auto")=>{if(d.current){let w=0;for(let k=0;k<p;k++)w+=u(k);d.current.scrollTo({top:w,behavior:b});}},[u]);return {containerRef:d,visibleItems:g,totalHeight:x,startIndex:v,onScroll:f,scrollToIndex:h,scrollToBottom:(p="auto")=>{d.current&&d.current.scrollTo({top:d.current.scrollHeight,behavior:p});}}}function ui(){let[e,t]=useState({scrollX:0,scrollY:0,scrollProgressX:0,scrollProgressY:0}),r=useRef(false),o=useCallback(()=>{r.current||(window.requestAnimationFrame(()=>{let n=window.scrollX,a=window.scrollY,s=document.documentElement.scrollWidth-document.documentElement.clientWidth,i=document.documentElement.scrollHeight-document.documentElement.clientHeight;t({scrollX:n,scrollY:a,scrollProgressX:s>0?n/s:0,scrollProgressY:i>0?a/i:0}),r.current=false;}),r.current=true);},[]);return useEffect(()=>(window.addEventListener("scroll",o,{passive:true}),o(),()=>window.removeEventListener("scroll",o)),[o]),e}function BE({className:e,color:t="bg-blue-500",height:r=2,position:o="top",...n}){let{scrollProgressY:a}=ui();return jsx("div",{className:l("fixed left-0 right-0 z-[100] w-full pointer-events-none",o==="top"?"top-0":"bottom-0",e),style:{height:r},...n,children:jsx("div",{className:l("h-full transition-all duration-75 ease-out",t),style:{width:`${a*100}%`,boxShadow:a>0?`0 0 10px ${t.replace("bg-","var(--")}`:"none"}})})}var mg=we__default.forwardRef(({orientation:e="horizontal",className:t,...r},o)=>jsx("hr",{ref:o,className:l("border-0 bg-gray-200 dark:bg-white/10",{"h-px w-full":e==="horizontal","h-full w-px":e==="vertical"},t),...r}));mg.displayName="Divider";var fg=we__default.forwardRef(({children:e,className:t,...r},o)=>jsx("kbd",{ref:o,className:l("rounded-lg border border-gray-200 dark:border-white/10 bg-gray-100 dark:bg-white/[0.03] px-2 py-1 text-[11px] font-semibold text-gray-500 dark:text-white/65",t),...r,children:e}));fg.displayName="Kbd";var vg={theme:"system",setTheme:()=>null},gi=createContext(vg);function GE({children:e,defaultTheme:t="system",storageKey:r="vite-ui-theme",...o}){let[n,a]=useState(t);useEffect(()=>{let i=localStorage.getItem(r);i&&a(i);},[r]),useEffect(()=>{let i=window.document.documentElement;if(i.classList.remove("light","dark"),n==="system"){let c=window.matchMedia("(prefers-color-scheme: dark)"),d=()=>{i.classList.remove("light","dark"),i.classList.add(c.matches?"dark":"light");};return d(),c.addEventListener("change",d),()=>c.removeEventListener("change",d)}i.classList.add(n);},[n]);let s={theme:n,setTheme:i=>{localStorage.setItem(r,i),a(i);}};return jsx(gi.Provider,{...o,value:s,children:e})}var hi=()=>{let e=useContext(gi);if(e===void 0)throw new Error("useTheme must be used within a ThemeProvider");return e};function rS({className:e}){let{setTheme:t,theme:r}=hi();return jsxs(R,{variant:"ghost",size:"icon",className:l("h-9 w-9",e),onClick:()=>t(r==="light"?"dark":"light"),children:[jsx(Sun,{className:"h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0"}),jsx(Moon,{className:"absolute h-[1.2rem] w-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]})}function Mg(e,t=true){let[r,o]=useState({data:null,error:null,isLoading:false}),n=useCallback(async()=>{o({data:null,error:null,isLoading:true});try{let a=await e();return o({data:a,error:null,isLoading:!1}),a}catch(a){throw o({data:null,error:a,isLoading:false}),a}},[e]);return useEffect(()=>{t&&n();},[n,t]),{...r,execute:n}}function sS(e,t){let r=useCallback(()=>fetch(e,t).then(o=>o.json()),[e,t]);return Mg(r)}function cS({initialMessages:e=[],onSendMessage:t,scrollThreshold:r=100}={}){let[o,n]=useState(e),[a,s]=useState(false),[i,c]=useState(false),d=useRef(null),m=useRef(true),u=useCallback((v="smooth")=>{d.current&&d.current.scrollTo({top:d.current.scrollHeight,behavior:v});},[]),f=useCallback(()=>{if(d.current){let{scrollTop:v,scrollHeight:h,clientHeight:p}=d.current;m.current=h-v-p<r;}},[r]);useEffect(()=>{m.current&&u();},[o,u]);let g=useCallback(async(v,h)=>{if(!v.trim())return;let p=crypto.randomUUID(),b={id:p,content:v,senderId:h,timestamp:new Date,status:"sending"};n(w=>[...w,b]);try{t&&await t(v),n(w=>w.map(k=>k.id===p?{...k,status:"sent"}:k));}catch{n(k=>k.map(y=>y.id===p?{...y,status:"error"}:y));}},[t]),x=useCallback(()=>{n([]);},[]);return {messages:o,setMessages:n,sendMessage:g,clearMessages:x,isTyping:a,setIsTyping:s,isLoading:i,setIsLoading:c,scrollRef:d,handleScroll:f,scrollToBottom:u}}function pS(e=[]){let[t,r]=useState(e),o=useCallback(d=>{r(m=>[...m,d]);},[]),n=useCallback((d,m)=>{r(u=>u.map(f=>f.id===d?{...f,status:m}:f));},[]),a=useCallback(d=>{r(m=>m.filter(u=>u.id!==d));},[]),s=useCallback((d,m)=>{r(u=>u.map(f=>f.id===d?{...f,content:m,isEdited:true}:f));},[]),i=useCallback((d,m,u)=>{r(f=>f.map(g=>{if(g.id!==d)return g;let x={...g.reactions||{}},v=x[m]||[];return v.includes(u)?(x[m]=v.filter(h=>h!==u),x[m].length===0&&delete x[m]):x[m]=[...v,u],{...g,reactions:x}}));},[]),c=useCallback(()=>{r([]);},[]);return {messages:t,setMessages:r,addMessage:o,updateMessageStatus:n,deleteMessage:a,editMessage:s,addReaction:i,clearMessages:c}}function hS(e){let[t,r]=useState(""),o=useMemo(()=>{if(!t.trim())return [];let n=t.toLowerCase();return e.filter(a=>a.content.toLowerCase().includes(n))},[e,t]);return {query:t,setQuery:r,results:o}}function vS(e){let t=useRef(null);return useEffect(()=>{let r=o=>{let n=t.current;!n||n.contains(o?.target||null)||e(o);};return document.addEventListener("mousedown",r),document.addEventListener("touchstart",r),()=>{document.removeEventListener("mousedown",r),document.removeEventListener("touchstart",r);}},[e]),t}function kS({timeout:e=2e3}={}){let[t,r]=useState(false),[o,n]=useState(null);return {copy:useCallback(async s=>{if(!navigator?.clipboard){n(new Error("Clipboard API not supported"));return}try{await navigator.clipboard.writeText(s),r(!0),setTimeout(()=>r(!1),e);}catch(i){n(i instanceof Error?i:new Error("Failed to copy"));}},[e]),copied:t,error:o}}function CS(e,t){let[r,o]=useState(e);return useEffect(()=>{let n=setTimeout(()=>{o(e);},t);return ()=>{clearTimeout(n);}},[e,t]),r}function LS(e){let[t,r]=useState(false),[o,n]=useState({x:0,y:0}),a=useRef({x:0,y:0}),s=useRef({x:0,y:0}),i=useRef(Date.now()),c=useRef({x:0,y:0}),d=useCallback((f,g)=>{r(true),a.current={x:f-o.x,y:g-o.y},s.current={x:f,y:g},i.current=Date.now();},[o]),m=useCallback((f,g)=>{if(!t)return;let x=f-a.current.x,v=g-a.current.y,h=Date.now(),p=h-i.current;p>0&&(c.current={x:(f-s.current.x)/p,y:(g-s.current.y)/p}),n({x,y:v}),s.current={x:f,y:g},i.current=h,e?.({isDragging:true,offset:{x,y:v},velocity:c.current});},[t,e]),u=useCallback(()=>{r(false),e?.({isDragging:false,offset:o,velocity:c.current});},[o,e]);return useEffect(()=>{let f=h=>m(h.clientX,h.clientY),g=h=>{h.touches[0]&&m(h.touches[0].clientX,h.touches[0].clientY);},x=()=>u(),v=()=>u();return t&&(window.addEventListener("mousemove",f),window.addEventListener("mouseup",x),window.addEventListener("touchmove",g),window.addEventListener("touchend",v)),()=>{window.removeEventListener("mousemove",f),window.removeEventListener("mouseup",x),window.removeEventListener("touchmove",g),window.removeEventListener("touchend",v);}},[t,m,u]),{isDragging:t,offset:o,dragProps:{onMouseDown:f=>d(f.clientX,f.clientY),onTouchStart:f=>{f.touches[0]&&d(f.touches[0].clientX,f.touches[0].clientY);},style:{cursor:t?"grabbing":"grab",touchAction:"none"}}}}function SS(e){let[t,r]=useState({progress:0,scrollY:0,isIntersecting:false}),o=useRef(false);return useEffect(()=>{let n=e.current;if(!n)return;let a=()=>{o.current||(window.requestAnimationFrame(()=>{let s=n.getBoundingClientRect(),i=window.innerHeight,c=i+s.height,d=i-s.top,m=Math.max(0,Math.min(1,d/c));r({progress:m,scrollY:window.scrollY,isIntersecting:s.top<i&&s.bottom>0}),o.current=false;}),o.current=true);};return window.addEventListener("scroll",a,{passive:true}),window.addEventListener("resize",a),a(),()=>{window.removeEventListener("scroll",a),window.removeEventListener("resize",a);}},[e]),t}function IS(e,t){let r=useRef(null);return useLayoutEffect(()=>{let o=document.querySelector(`[data-flip-id="${e}"]`);if(!o)return;let n=r.current,a=o.getBoundingClientRect();if(n){let s=n.left-a.left,i=n.top-a.top,c=n.width/a.width,d=n.height/a.height;(Math.abs(s)>.5||Math.abs(i)>.5||Math.abs(c-1)>.01||Math.abs(d-1)>.01)&&o.animate([{transformOrigin:"top left",transform:`translate(${s}px, ${i}px) scale(${c}, ${d})`},{transformOrigin:"top left",transform:"none"}],{duration:400,easing:"cubic-bezier(0.2, 0.8, 0.2, 1)"});}r.current=a;},t),{"data-flip-id":e}}function OS({initialValues:e,onSubmit:t}){let[r,o]=useState(e),[n,a]=useState({}),[s,i]=useState(false),c=useCallback(u=>{let{name:f,value:g,type:x}=u.target,v=x==="checkbox"?u.target.checked:g;o(h=>({...h,[f]:v})),n[f]&&a(h=>({...h,[f]:""}));},[n]),d=useCallback(async u=>{u.preventDefault();let f=u.currentTarget;if(!f.checkValidity()){let g={};Array.from(f.elements).forEach(x=>{let v=x;v.name&&!v.validity.valid&&(g[v.name]=v.validationMessage);}),a(g);return}i(true);try{await t(r);}finally{i(false);}},[r,t]),m=useCallback(u=>({name:u,value:r[u],onChange:c,error:n[u]}),[r,n,c]);return {values:r,errors:n,isSubmitting:s,handleChange:c,handleSubmit:d,register:m,setValues:o,setErrors:a}}function $S(e){let[t,r]=useState({past:[],present:e,future:[]}),o=t.past.length>0,n=t.future.length>0,a=useCallback(()=>{o&&r(d=>{let m=d.past[d.past.length-1];return m===void 0?d:{past:d.past.slice(0,d.past.length-1),present:m,future:[d.present,...d.future]}});},[o]),s=useCallback(()=>{n&&r(d=>{let m=d.future[0];if(m===void 0)return d;let u=d.future.slice(1);return {past:[...d.past,d.present],present:m,future:u}});},[n]),i=useCallback(d=>{r(m=>{let u=typeof d=="function"?d(m.present):d;return m.present===u?m:{past:[...m.past,m.present],present:u,future:[]}});},[]),c=useCallback(()=>{r({past:[],present:e,future:[]});},[e]);return {state:t.present,set:i,undo:a,redo:s,clear:c,canUndo:o,canRedo:n,history:t}}function WS(e=3e3){let[t,r]=useState(false),o=useRef();return useEffect(()=>{let n=()=>{r(false),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{r(true);},e);},a=["mousemove","mousedown","keydown","touchstart","scroll"];return a.forEach(s=>{window.addEventListener(s,n);}),n(),()=>{a.forEach(s=>{window.removeEventListener(s,n);}),o.current&&clearTimeout(o.current);}},[e]),t}function XS({onLoadMore:e,isLoading:t,hasMore:r,threshold:o=100,root:n=null}){let a=useRef(null),s=useRef(null),i=useCallback(c=>{let d=c[0];d&&d.isIntersecting&&r&&!t&&e();},[r,t,e]);return useEffect(()=>{let c=s.current;if(c)return a.current=new IntersectionObserver(i,{root:n,rootMargin:`0px 0px ${o}px 0px`,threshold:.1}),a.current.observe(c),()=>{a.current&&a.current.disconnect();}},[i,n,o]),s}function QS(e,{threshold:t=0,root:r=null,rootMargin:o="0%",freezeOnceVisible:n=false}={}){let[a,s]=useState(),i=a?.isIntersecting&&n,c=([d])=>{s(d);};return useEffect(()=>{let d=e?.current;if(!!!window.IntersectionObserver||i||!d)return;let u={threshold:t,root:r,rootMargin:o},f=new IntersectionObserver(c,u);return f.observe(d),()=>f.disconnect()},[e,t,r,o,i]),a}function eD(e){let[t,r]=useState(e),o=useCallback((i,c,d,m)=>{r(u=>{let f=u.columns[c],g=u.columns[d],x=u.tasks[i];if(!f||!g||!x)return u;let v=Array.from(f.taskIds);v.splice(v.indexOf(i),1);let h={...f,taskIds:v},p=c===d?v:Array.from(g.taskIds);p.splice(m,0,i);let b={...g,taskIds:p};return {...u,columns:{...u.columns,[c]:h,[d]:b},tasks:{...u.tasks,[i]:{...x,columnId:d}}}});},[]),n=useCallback((i,c)=>{r(d=>{let m=Array.from(d.columnOrder);return m.splice(m.indexOf(i),1),m.splice(c,0,i),{...d,columnOrder:m}});},[]),a=useCallback((i,c)=>{r(d=>{let m=d.columns[i];if(!m)return d;let u={...m,taskIds:[...m.taskIds,c.id]};return {...d,tasks:{...d.tasks,[c.id]:c},columns:{...d.columns,[i]:u}}});},[]),s=useCallback(i=>{r(c=>{let d=c.tasks[i];if(!d)return c;let m=c.columns[d.columnId];if(!m)return c;let u={...c.tasks};delete u[i];let f={...m,taskIds:m.taskIds.filter(g=>g!==i)};return {...c,tasks:u,columns:{...c.columns,[d.columnId]:f}}});},[]);return {board:t,setBoard:r,moveTask:o,moveColumn:n,addTask:a,removeTask:s}}function oD(e){let t=useRef(e);t.current=e,useEffect(()=>{let r=o=>{let n=[];(o.ctrlKey||o.metaKey)&&n.push("mod"),o.shiftKey&&n.push("shift"),o.altKey&&n.push("alt");let s=o.key.toLowerCase();["control","meta","shift","alt"].includes(s)||n.push(s);let i=n.join("+"),c=t.current[i]||t.current[s];c&&c(o);};return window.addEventListener("keydown",r),()=>window.removeEventListener("keydown",r)},[]);}function sD(e){let t=useRef(false);useEffect(()=>{t.current||(t.current=true,e());},[]);}function iD(e){useEffect(()=>()=>{e();},[]);}function mD(e,t){let[r,o]=useState(()=>{if(typeof window>"u")return t;try{let a=window.localStorage.getItem(e);return a?JSON.parse(a):t}catch(a){return console.warn(`Error reading localStorage key "${e}":`,a),t}}),n=useCallback(a=>{try{let s=a instanceof Function?a(r):a;o(s),typeof window<"u"&&window.localStorage.setItem(e,JSON.stringify(s));}catch(s){console.warn(`Error setting localStorage key "${e}":`,s);}},[e,r]);return [r,n]}function fD(e){let[t,r]=useState({x:0,y:0,elementX:0,elementY:0,percentageX:0,percentageY:0}),o=useRef(),n=useRef({x:0,y:0});return useEffect(()=>{let a=i=>{n.current={x:i.clientX,y:i.clientY},o.current||(o.current=requestAnimationFrame(s));},s=()=>{let{x:i,y:c}=n.current,d=0,m=0,u=0,f=0;if(e?.current){let g=e.current.getBoundingClientRect();d=i-g.left,m=c-g.top,u=Math.max(0,Math.min(100,d/g.width*100)),f=Math.max(0,Math.min(100,m/g.height*100));}r({x:i,y:c,elementX:d,elementY:m,percentageX:u,percentageY:f}),o.current=void 0;};return window.addEventListener("mousemove",a),()=>{window.removeEventListener("mousemove",a),o.current&&cancelAnimationFrame(o.current);}},[e]),t}function bD(){let[e,t]=useState({alpha:null,beta:null,gamma:null,absolute:false});return useEffect(()=>{let r=o=>{t({alpha:o.alpha,beta:o.beta,gamma:o.gamma,absolute:o.absolute});};return typeof window<"u"&&"DeviceOrientationEvent"in window&&window.addEventListener("deviceorientation",r),()=>{window.removeEventListener("deviceorientation",r);}},[]),e}function wD(e){let t=useRef();return useEffect(()=>{t.current=e;},[e]),t.current}function ND(e){let t=useRef(null),r=useCallback((o,n,a)=>{!o||a||!t.current||(o.dataset.messageId=n,t.current.observe(o));},[]);return useEffect(()=>(t.current=new IntersectionObserver(o=>{o.forEach(n=>{if(n.isIntersecting){let a=n.target.dataset.messageId;a&&(e(a),t.current?.unobserve(n.target));}});},{threshold:.5}),()=>{t.current?.disconnect();}),[e]),{registerMessage:r}}function MD(){let[e,t]=useState(false);return useEffect(()=>{let r=window.matchMedia("(prefers-reduced-motion: reduce)");t(r.matches);let o=n=>{t(n.matches);};return r.addEventListener("change",o),()=>r.removeEventListener("change",o)},[]),e}var gh={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function hh(e){let[t,r]=useState(false);return useEffect(()=>{let o=window.matchMedia(e);r(o.matches);let n=()=>r(o.matches);return o.addEventListener("change",n),()=>o.removeEventListener("change",n)},[e]),t}function PD(e){return hh(`(min-width: ${gh[e]}px)`)}function ED(e){let[t,r]=useState({width:0,height:0});return useLayoutEffect(()=>{if(!e.current)return;let o=new ResizeObserver(n=>{for(let a of n)r({width:a.contentRect.width,height:a.contentRect.height});});return o.observe(e.current),()=>o.disconnect()},[e]),t}function HD(e=10){let[t,r]=useState(null),o=useRef(0);return useEffect(()=>{let n=()=>{let s=window.scrollY;if(Math.abs(s-o.current)<e)return;let i=s>o.current?"down":"up";i!==t&&(s>0||i==="down")&&r(i),o.current=s>0?s:0;},a=()=>{window.requestAnimationFrame(n);};return window.addEventListener("scroll",a),()=>window.removeEventListener("scroll",a)},[t,e]),t}function BD(e=true){useLayoutEffect(()=>{if(!e)return;let t=window.getComputedStyle(document.body).overflow,r=window.getComputedStyle(document.body).paddingRight,o=window.innerWidth-document.documentElement.clientWidth;return document.body.style.overflow="hidden",o>0&&(document.body.style.paddingRight=`${parseFloat(r)+o}px`),()=>{document.body.style.overflow=t,document.body.style.paddingRight=r;}},[e]);}function yh(e,t,r){let[o,n]=t,[a,s]=r,i=(e-o)/(n-o),c=Math.max(0,Math.min(1,i));return a+c*(s-a)}function VD(e,t,r){return yh(e,t,r)}function $D(){let[e,t]=useState(0),r=useRef(0),o=useRef(Date.now()),n=useRef();return useEffect(()=>{let a=()=>{let i=window.scrollY,c=Date.now(),d=c-o.current;if(d>0){let u=(i-r.current)/d;t(u);}r.current=i,o.current=c,n.current&&cancelAnimationFrame(n.current),n.current=requestAnimationFrame(s);},s=()=>{t(i=>Math.abs(i)<.01?0:i*.9),n.current=requestAnimationFrame(s);};return window.addEventListener("scroll",a,{passive:true}),()=>{window.removeEventListener("scroll",a),n.current&&cancelAnimationFrame(n.current);}},[]),e}function Ch(e,t){let r=e.toLowerCase().replace(/\s/g,""),o=t.toLowerCase(),n=0;for(let a=0;a<o.length&&n<r.length;a++)o[a]===r[n]&&n++;return n===r.length}function WD(e,t,r){return useMemo(()=>t.trim()?e.filter(o=>r.some(n=>{let a=o[n];return a==null?false:Ch(t,String(a))})):e,[e,t,r])}function XD(e,t){let r=useCallback(()=>{if(typeof window>"u")return t;try{let s=window.sessionStorage.getItem(e);return s?JSON.parse(s):t}catch(s){return console.warn(`Error reading sessionStorage key "${e}":`,s),t}},[t,e]),[o,n]=useState(r),a=useCallback(s=>{try{let i=s instanceof Function?s(o):s;n(i),typeof window<"u"&&window.sessionStorage.setItem(e,JSON.stringify(i));}catch(i){console.warn(`Error setting sessionStorage key "${e}":`,i);}},[e,o]);return useEffect(()=>{n(r());},[r]),[o,a]}function jD(e,t={}){let{stiffness:r=.15,damping:o=.8,mass:n=1,precision:a=.01}=t,[s,i]=useState(e),c=useRef(0),d=useRef(e),m=useRef();return useEffect(()=>{let u=()=>{let f=e-d.current,x=f*r/n;if(c.current=(c.current+x)*o,d.current+=c.current,Math.abs(f)<a&&Math.abs(c.current)<a){d.current=e,i(e),m.current=void 0;return}i(d.current),m.current=requestAnimationFrame(u);};return m.current&&cancelAnimationFrame(m.current),m.current=requestAnimationFrame(u),()=>{m.current&&cancelAnimationFrame(m.current);}},[e,r,o,n,a]),s}function JD(e,t=100,r=0){return r+e*t}function ZD(e,t=100){return Array.from({length:e},(r,o)=>o*t)}var Mi="01XYZ#%&@$+-/<>!_";function rH(e,t=800,r=true){let[o,n]=useState(e),a=useRef();return useEffect(()=>{if(!r){n(e);return}let s=Date.now(),i=()=>{let c=Date.now()-s,d=Math.min(c/t,1),m=e.split("").map((u,f)=>u===" "?" ":d>f/e.length?u:Mi[Math.floor(Math.random()*Mi.length)]).join("");n(m),d<1&&(a.current=requestAnimationFrame(i));};return a.current=requestAnimationFrame(i),()=>{a.current&&cancelAnimationFrame(a.current);}},[e,t,r]),o}function nH(e,t){let[r,o]=useState(e),n=useRef(Date.now());return useEffect(()=>{let a=setTimeout(()=>{Date.now()-n.current>=t&&(o(e),n.current=Date.now());},t-(Date.now()-n.current));return ()=>{clearTimeout(a);}},[e,t]),r}function lH(e=0){let[t,r]=useState(e),[o,n]=useState(false),a=useRef(null),s=useCallback(()=>{o||(n(true),a.current=setInterval(()=>{r(m=>m+1);},1e3));},[o]),i=useCallback(()=>{o&&a.current&&(clearInterval(a.current),n(false));},[o]),c=useCallback(()=>{a.current&&clearInterval(a.current),n(false),r(0);},[]);return useEffect(()=>()=>{a.current&&clearInterval(a.current);},[]),{seconds:t,isActive:o,start:s,pause:i,reset:c,formattedTime:(m=>{let u=Math.floor(m/3600),f=Math.floor(m%3600/60),g=m%60;return [u,f,g].map(x=>x<10?"0"+x:x).filter((x,v)=>x!=="00"||v>0).join(":")})(t)}}function uH(){let e=useContext(Ko);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}function gH(e=false){let[t,r]=useState(e),o=useCallback(()=>{r(n=>!n);},[]);return [t,o,r]}function xH(e=3e3){let[t,r]=useState(false),o=useRef(null),n=useCallback(a=>{r(a),o.current&&clearTimeout(o.current),a&&(o.current=window.setTimeout(()=>{r(false);},e));},[e]);return useEffect(()=>()=>{o.current&&clearTimeout(o.current);},[]),{isTyping:t,setTyping:n}}function yH(){return {startTransition:t=>{if(!document.startViewTransition){t();return}document.startViewTransition(()=>{flushSync(()=>{t();});});}}}function NH(e,t={month:"short",day:"numeric",year:"numeric"}){let r=new Date(e);return new Intl.DateTimeFormat("en-US",t).format(r)}function TH(e){return new Intl.NumberFormat("en-US").format(e)}function CH(e,t="USD"){return new Intl.NumberFormat("en-US",{style:"currency",currency:t}).format(e)}function RH(e,t){return e.length<=t?e:e.slice(0,t)+"..."}function LH(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}
|
|
69
|
+
`,backgroundSize:`${o}px ${o}px`,transform:s?"translate3d(calc((var(--mouse-x, 0) - 24px) / 40), calc((var(--mouse-y, 0) - 24px) / 40), 0)":void 0}:e==="gradient"?{...h,background:s?`radial-gradient(circle at var(--mouse-x, center) var(--mouse-y, center), ${p}, transparent)`:`radial-gradient(circle at center, ${p}, transparent)`}:e==="beams"?{...h,background:`radial-gradient(60% 40% at 50% 0%, ${p} 0%, transparent 100%)`}:h},v=n==="fade"?{maskImage:"radial-gradient(ellipse at center, black, transparent 90%)",WebkitMaskImage:"radial-gradient(ellipse at center, black, transparent 90%)"}:{};return jsxs("div",{ref:h=>{h&&(g.current=h),typeof f=="function"?f(h):f&&(f.current=h);},className:l("absolute inset-0 overflow-hidden pointer-events-none transition-transform duration-300 ease-out","z-0","[--pattern-color:rgba(0,0,0,0.05)] dark:[--pattern-color:rgba(255,255,255,0.08)]",i?.startsWith("bg-")?i:"",c),style:{...x(),...v,...m,backgroundColor:i&&!i.startsWith("bg-")?i:void 0},...u,children:[t&&jsx("div",{className:"absolute inset-0 opacity-[0.03] pointer-events-none brightness-100 contrast-150",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")`}}),e==="beams"&&jsxs("div",{className:"absolute inset-0 overflow-hidden",children:[jsx("div",{className:"absolute top-0 left-1/4 w-px h-full bg-gradient-to-b from-transparent via-white/10 to-transparent"}),jsx("div",{className:"absolute top-0 right-1/4 w-px h-full bg-gradient-to-b from-transparent via-white/10 to-transparent"})]}),e==="mesh"&&jsxs("div",{className:l("absolute inset-0 opacity-30 blur-[100px]",a&&"animate-pulse"),children:[jsx("div",{className:"absolute top-[-10%] left-[-10%] w-[50%] h-[50%] rounded-full bg-blue-500/20"}),jsx("div",{className:"absolute bottom-[-10%] right-[-10%] w-[50%] h-[50%] rounded-full bg-purple-500/20"}),jsx("div",{className:"absolute top-[20%] right-[10%] w-[40%] h-[40%] rounded-full bg-indigo-500/10"})]}),d]})});Up.displayName="Background";var jR=({children:e,className:t,size:r=300,color:o,fill:n,...a})=>{let s=useRef(null),i=n||o||"rgba(255, 255, 255, 0.1)";return jsxs("div",{ref:s,onMouseMove:u=>{let f=s.current;if(!f)return;let g=f.getBoundingClientRect(),x=u.clientX-g.left,v=u.clientY-g.top;f.style.setProperty("--mouse-x",`${x}px`),f.style.setProperty("--mouse-y",`${v}px`);},onMouseEnter:()=>{s.current?.style.setProperty("--opacity","1");},onMouseLeave:()=>{s.current?.style.setProperty("--opacity","0");},className:l("relative overflow-hidden rounded-2xl border border-gray-200 bg-white dark:border-white/10 dark:bg-black",t),...a,children:[jsx("div",{className:"pointer-events-none absolute -inset-px transition-opacity duration-300",style:{opacity:"var(--opacity, 0)",background:`radial-gradient(${r}px circle at var(--mouse-x, center) var(--mouse-y, center), ${i}, transparent 80%)`}}),e&&jsx("div",{className:"relative h-full",children:e})]})};var of=cva("relative flex w-full flex-col rounded-2xl border transition-all duration-200 focus-within:ring-4",{variants:{variant:{default:"bg-white border-gray-200 shadow-sm focus-within:border-purple-500/50 focus-within:ring-purple-500/10 dark:bg-white/[0.03] dark:border-white/10 dark:shadow-none",ghost:"bg-transparent border-transparent shadow-none focus-within:bg-white/50 dark:focus-within:bg-white/5"}},defaultVariants:{variant:"default"}}),af=we__default.forwardRef(({className:e,variant:t,onSubmit:r,isGenerating:o,onAttach:n,onFilesSelected:a,onStop:s,onMic:i,maxLength:c,footer:d,attachments:m,onRemoveAttachment:u,accept:f,multiple:g,placeholder:x="Ask AI anything...",value:v,onChange:h,...p},b)=>{let[w,k]=useState(""),y=v!==void 0,N=y?v:w,C=useRef(null),T=useRef(null),L=()=>{C.current&&(C.current.style.height="auto",C.current.style.height=`${C.current.scrollHeight}px`);};useEffect(()=>{L();},[N]);let H=M=>{let Y=M.target.value;c&&Y.length>c||(y||k(Y),h?.(M));},E=M=>{M.key==="Enter"&&!M.shiftKey&&(M.preventDefault(),N.trim()&&!o&&(r?.(N),y||k(""))),p.onKeyDown?.(M);},S=()=>{o&&s?s():N.trim()&&(r?.(N),y||k(""));},O=()=>{a&&T.current?T.current.click():n?.();},V=M=>{M.target.files&&M.target.files.length>0&&a?.(M.target.files),T.current&&(T.current.value="");};return jsxs("div",{className:l(of({variant:t,className:e})),children:[jsx("input",{type:"file",ref:T,className:"hidden",onChange:V,accept:f,multiple:g}),m&&m.length>0&&jsx("div",{className:"flex flex-wrap gap-2 px-4 pt-4",children:m.map(M=>jsxs("div",{className:"group relative flex items-center gap-2 rounded-xl border border-gray-200 bg-gray-50 px-3 py-1.5 text-sm transition-colors hover:bg-gray-100 dark:border-white/10 dark:bg-white/[0.03] dark:hover:bg-white/[0.06]",children:[jsx("div",{className:"flex h-5 w-5 items-center justify-center rounded-lg bg-white dark:bg-white/[0.06]",children:jsx(File,{className:"h-3 w-3 text-purple-500"})}),jsx("span",{className:"max-w-[120px] truncate text-gray-700 dark:text-gray-300",children:M.name}),jsx("button",{onClick:()=>u?.(M.id),className:"ml-1 rounded-full p-0.5 text-gray-400 opacity-0 transition-all hover:bg-gray-200 hover:text-gray-600 group-hover:opacity-100 dark:hover:bg-white/[0.06] dark:hover:text-white",type:"button",children:jsx(X$1,{className:"h-3 w-3"})})]},M.id))}),jsx("textarea",{ref:M=>{C.current=M,typeof b=="function"?b(M):b&&(b.current=M);},value:N,onChange:H,onKeyDown:E,placeholder:x,rows:1,className:l("w-full resize-none bg-transparent px-4 py-4 text-base outline-none max-h-[200px]","text-gray-900 placeholder:text-gray-400","dark:text-white dark:placeholder:text-white/40"),disabled:o&&!s,...p}),jsxs("div",{className:"flex items-center justify-between px-2 pb-2",children:[jsxs("div",{className:"flex items-center gap-1",children:[jsx(R,{variant:"ghost",size:"icon",className:"text-gray-400 hover:text-gray-600 dark:text-white/40 dark:hover:text-white",onClick:O,type:"button",title:"Attach file",children:jsx(Paperclip,{className:"h-5 w-5"})}),i&&jsx(R,{variant:"ghost",size:"icon",className:"text-gray-400 hover:text-gray-600 dark:text-white/40 dark:hover:text-white",onClick:i,type:"button",title:"Use microphone",children:jsx(Mic,{className:"h-5 w-5"})})]}),jsxs("div",{className:"flex items-center gap-3",children:[c&&jsxs("span",{className:"text-xs text-gray-400 dark:text-white/30",children:[N.length,"/",c]}),jsx(R,{size:"icon",disabled:!N.trim()&&!o||o&&!s,onClick:S,className:l("h-8 w-8 rounded-full transition-all duration-200",N.trim()||o?"bg-purple-600 text-white hover:bg-purple-500 shadow-lg shadow-purple-500/25":"bg-gray-100 text-gray-400 dark:bg-white/[0.06] dark:text-white/20"),children:o?s?jsx(Square,{className:"h-3 w-3 fill-current"}):jsx(Sparkles,{className:"h-4 w-4 animate-pulse"}):jsx(ArrowUp,{className:"h-4 w-4"})})]})]}),d&&jsx("div",{className:"border-t border-gray-100 px-4 py-2 text-xs text-gray-400 dark:border-white/5 dark:text-white/30",children:d})]})});af.displayName="AIPromptInput";var hf=cva("group relative overflow-hidden rounded-2xl border transition-all duration-200",{variants:{variant:{default:"bg-gray-50 border-gray-200 dark:bg-white/[0.02] dark:border-white/10",ghost:"bg-transparent border-transparent",outline:"bg-transparent border-gray-200 dark:border-white/10"}},defaultVariants:{variant:"default"}}),bf=we__default.forwardRef(({className:e,variant:t,children:r,onCopy:o,onRegenerate:n,onFeedback:a,onShare:s,onEdit:i,timestamp:c,sources:d,model:m,usage:u,...f},g)=>jsxs("div",{ref:g,className:l(hf({variant:t,className:e})),...f,children:[jsxs("div",{className:"absolute left-4 top-4 flex items-center gap-3",children:[jsx("div",{className:"flex h-6 w-6 items-center justify-center rounded-full bg-gradient-to-br from-purple-500 to-blue-500 shadow-lg shadow-purple-500/20",children:jsx(Sparkles,{className:"h-3.5 w-3.5 text-white"})}),c&&jsx("span",{className:"text-xs font-medium text-gray-400 dark:text-white/30",children:c})]}),jsxs("div",{className:"pl-14 pr-4 py-4",children:[jsx("div",{className:"prose prose-sm dark:prose-invert max-w-none text-gray-700 dark:text-gray-300",children:r}),d&&d.length>0&&jsx("div",{className:"mt-4 flex flex-wrap gap-2",children:d.map((x,v)=>jsxs("a",{href:x.url,target:"_blank",rel:"noopener noreferrer",className:l("flex items-center gap-1.5 rounded-full border px-3 py-1 text-xs transition-colors","border-gray-200 bg-white text-gray-600 hover:bg-gray-50","dark:border-white/10 dark:bg-white/[0.03] dark:text-white/60 dark:hover:bg-white/[0.06]"),children:[jsx("span",{className:"max-w-[150px] truncate",children:x.title}),jsx(ExternalLink,{className:"h-3 w-3 opacity-50"})]},v))})]}),jsxs("div",{className:"flex items-center justify-between border-t border-gray-200 bg-white/50 px-2 py-1.5 backdrop-blur dark:border-white/5 dark:bg-white/[0.02]",children:[jsxs("div",{className:"flex items-center gap-3 px-2 text-[10px] font-medium text-gray-400 dark:text-white/20",children:[m&&jsx("span",{children:m}),u&&jsx("span",{children:u})]}),jsxs("div",{className:"flex items-center gap-1",children:[jsxs(R,{variant:"ghost",size:"sm",className:"h-7 px-2 text-xs text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:o,children:[jsx(Copy,{className:"mr-1.5 h-3.5 w-3.5"}),"Copy"]}),s&&jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:s,title:"Share",children:jsx(Share,{className:"h-3.5 w-3.5"})}),i&&jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:i,title:"Edit",children:jsx(Edit,{className:"h-3.5 w-3.5"})}),jsx("div",{className:"mx-1 h-3 w-px bg-gray-200 dark:bg-white/10"}),jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:n,title:"Regenerate",children:jsx(RefreshCw,{className:"h-3.5 w-3.5"})}),jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:()=>a?.("up"),title:"Helpful",children:jsx(ThumbsUp,{className:"h-3.5 w-3.5"})}),jsx(R,{variant:"ghost",size:"icon",className:"h-7 w-7 text-gray-500 hover:text-gray-900 dark:text-white/40 dark:hover:text-white",onClick:()=>a?.("down"),title:"Not helpful",children:jsx(ThumbsDown,{className:"h-3.5 w-3.5"})})]})]})]}));bf.displayName="AIResponse";function f4({children:e,className:t,...r}){return jsx("div",{className:l("flex h-[800px] w-full overflow-hidden rounded-3xl border border-gray-200 dark:border-white/10 bg-white dark:bg-black/40 backdrop-blur-xl shadow-2xl",t),...r,children:e})}function N4({conversations:e,activeId:t,onSelect:r,onNewChat:o,onSearch:n,onArchive:a,onPin:s,onMute:i,onDelete:c,filter:d="all",sortBy:m="recent",hideHeader:u=false,className:f,...g}){let[x,v]=useState(""),h=useMemo(()=>e.filter(b=>(b.user?.name||b.group?.name||"").toLowerCase().includes(x.toLowerCase())),[e,x]),p=b=>{let w=b.target.value;v(w),n?.(w);};return jsxs("div",{className:l("flex flex-col border-r border-gray-200 dark:border-white/10 bg-gray-50/50 dark:bg-white/[0.02]",!f?.includes("w-")&&"w-80",f),...g,children:[!u&&jsxs("div",{className:"p-4 space-y-4",children:[jsxs("div",{className:"flex items-center justify-between",children:[jsx("h2",{className:"text-xl font-bold text-gray-900 dark:text-white",children:"Messages"}),jsxs("div",{className:"flex items-center gap-1",children:[jsx("button",{className:"p-2 rounded-full hover:bg-gray-200 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",title:"Filter",children:jsx(Filter,{className:"h-4 w-4"})}),jsx("button",{onClick:o,className:"p-2 rounded-full hover:bg-gray-200 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",title:"New Chat",children:jsx(Plus,{className:"h-5 w-5"})})]})]}),jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400"}),jsx("input",{type:"text",value:x,onChange:p,placeholder:"Search messages...",className:"w-full h-10 pl-9 pr-4 rounded-2xl bg-white dark:bg-white/[0.03] border border-gray-200 dark:border-white/10 text-sm focus:outline-none focus:ring-2 focus:ring-blue-500/50 transition-all placeholder:text-gray-400 dark:text-white"})]})]}),jsx("div",{className:"flex-1 overflow-y-auto [&::-webkit-scrollbar]:w-1.5 [&::-webkit-scrollbar-thumb]:bg-white/10 [&::-webkit-scrollbar-thumb]:rounded-full hover:[&::-webkit-scrollbar-thumb]:bg-white/20 [&::-webkit-scrollbar-track]:bg-transparent",children:jsx("div",{className:"flex flex-col",children:h.map(b=>{let w=b.user?.name||b.group?.name||"Unknown",k=b.user?.avatar||b.group?.avatar,y=b.user?.status==="online",N=t===b.id;return jsx("div",{className:"p-2",children:jsxs("div",{onClick:()=>r?.(b.id),className:l("w-full h-16 flex items-center gap-3 p-3 rounded-2xl transition-all text-left group cursor-pointer",N?"bg-blue-500/10 dark:bg-white/[0.06] shadow-[0_0_15px_rgba(59,130,246,0.1)] dark:shadow-[0_0_15px_rgba(255,255,255,0.05)]":"hover:bg-gray-100 dark:hover:bg-white/[0.03]"),children:[jsxs("div",{className:"relative flex-shrink-0",children:[jsx(z,{src:k,alt:w,fallback:w[0]}),y&&jsx("div",{className:"absolute -bottom-0.5 -right-0.5 w-3.5 h-3.5 bg-green-500 border-2 border-white dark:border-[#0a0a0a] rounded-full"})]}),jsxs("div",{className:"flex-1 min-w-0",children:[jsxs("div",{className:"flex items-center justify-between mb-0.5",children:[jsx("span",{className:l("font-semibold truncate",N?"text-blue-600 dark:text-white":"text-gray-900 dark:text-white/90"),children:w}),b.lastMessage&&jsx("span",{className:"text-[10px] text-gray-400 dark:text-white/30 whitespace-nowrap",children:new Date(b.lastMessage.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]}),jsxs("div",{className:"flex items-center justify-between gap-2",children:[jsx("p",{className:"text-xs text-gray-500 dark:text-white/40 truncate",children:b.isTyping?jsx("span",{className:"text-blue-500 animate-pulse",children:"typing..."}):b.lastMessage?.content||"No messages yet"}),b.unreadCount>0&&jsx("span",{className:"flex-shrink-0 min-w-[18px] h-[18px] flex items-center justify-center bg-blue-500 text-white text-[10px] font-bold rounded-full px-1",children:b.unreadCount})]})]}),jsx("div",{className:"opacity-0 group-hover:opacity-100 transition-opacity",onClick:C=>C.stopPropagation(),children:jsxs(at,{children:[jsx(nt,{className:"p-1 rounded-lg hover:bg-gray-200 dark:hover:bg-white/10 text-gray-400",children:jsx(MoreVertical,{className:"h-4 w-4"})}),jsxs(st,{align:"end",children:[jsxs(K,{onClick:()=>s?.(b.id),children:[jsx(Pin,{className:"h-4 w-4 mr-2"})," Pin"]}),jsxs(K,{onClick:()=>a?.(b.id),children:[jsx(Archive,{className:"h-4 w-4 mr-2"})," Archive"]}),jsxs(K,{onClick:()=>i?.(b.id),children:[jsx(BellOff,{className:"h-4 w-4 mr-2"})," Mute"]}),jsxs(K,{className:"text-red-500",onClick:()=>c?.(b.id),children:[jsx(Trash2,{className:"h-4 w-4 mr-2"})," Delete"]})]})]})})]})},b.id)})})})]})}function P4({user:e,onBack:t,onInfo:r,onAvatarClick:o,onCall:n,onVideoCall:a,onSearch:s,onMute:i,isTyping:c,isMuted:d,actions:m,className:u,...f}){return jsxs("div",{className:l("flex h-16 items-center justify-between border-b border-gray-200 dark:border-white/10 bg-white/80 dark:bg-black/40 backdrop-blur px-4 sticky top-0 z-10",u),...f,children:[jsxs("div",{className:"flex items-center gap-3",children:[t&&jsx("button",{onClick:t,className:"md:hidden p-2 -ml-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06]",children:jsx(ArrowLeft,{className:"h-5 w-5 text-gray-600 dark:text-white/70"})}),jsxs("div",{className:"relative cursor-pointer",onClick:o||r,children:[jsx(z,{src:e.avatar,alt:e.name,fallback:e.name[0]}),e.status==="online"&&jsx("span",{className:"absolute bottom-0 right-0 h-3 w-3 rounded-full bg-green-500 border-2 border-white dark:border-black"})]}),jsxs("div",{className:"cursor-pointer",onClick:r,children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx("h3",{className:"font-semibold text-gray-900 dark:text-white leading-none",children:e.name}),d&&jsx(BellOff,{className:"h-3 w-3 text-gray-400"})]}),jsx("p",{className:l("text-xs mt-1 transition-colors",c?"text-blue-500 font-medium animate-pulse":"text-gray-500 dark:text-white/50"),children:c?"typing...":e.status==="online"?"Online":`Last seen ${e.lastSeen?.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}`})]})]}),jsxs("div",{className:"flex items-center gap-1",children:[s&&jsx("button",{onClick:s,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Search,{className:"h-5 w-5"})}),n&&jsx("button",{onClick:n,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Phone,{className:"h-5 w-5"})}),a&&jsx("button",{onClick:a,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Video,{className:"h-5 w-5"})}),m,jsx("button",{onClick:r,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(MoreVertical,{className:"h-5 w-5"})})]})]})}function Ws({src:e,duration:t,isMe:r,className:o,...n}){let[a,s]=useState(false),[i,c]=useState(0),[d,m]=useState(false),u=useRef(null),f=()=>{u.current&&(a?u.current.pause():u.current.play(),s(!a));},g=()=>{u.current&&c(u.current.currentTime);},x=()=>{s(false),c(0);},v=p=>{let b=Math.floor(p/60),w=Math.floor(p%60);return `${b}:${w.toString().padStart(2,"0")}`},h=t?i/t*100:0;return jsxs("div",{className:l("flex items-center gap-3 p-2 rounded-2xl min-w-[200px]",r?"bg-white/10":"bg-gray-100 dark:bg-white/[0.03]",o),...n,children:[jsx("audio",{ref:u,src:e,onTimeUpdate:g,onEnded:x}),jsx("button",{onClick:f,className:l("w-10 h-10 rounded-full flex items-center justify-center transition-all",r?"bg-white text-blue-600":"bg-blue-500 text-white"),children:a?jsx(Pause,{className:"h-5 w-5 fill-current"}):jsx(Play,{className:"h-5 w-5 fill-current ml-0.5"})}),jsxs("div",{className:"flex-1 space-y-1",children:[jsx("div",{className:"h-1.5 w-full bg-gray-300 dark:bg-white/10 rounded-full overflow-hidden",children:jsx("div",{className:l("h-full transition-all duration-100",r?"bg-white":"bg-blue-500"),style:{width:`${h}%`}})}),jsxs("div",{className:"flex justify-between text-[10px] font-medium opacity-60",children:[jsx("span",{children:v(i)}),jsx("span",{children:t?v(t):"--:--"})]})]}),jsx("button",{onClick:()=>m(!d),className:"p-1.5 rounded-full hover:bg-black/5 dark:hover:bg-white/5 opacity-60",children:d?jsx(VolumeX,{className:"h-4 w-4"}):jsx(Volume2,{className:"h-4 w-4"})})]})}function _s({status:e,className:t,...r}){return e==="sending"?jsx("div",{className:l("w-3 h-3 border border-current border-t-transparent rounded-full animate-spin opacity-50",t),...r}):e==="failed"?jsx("span",{className:l("text-red-500 text-[10px] font-bold",t),...r,children:"!"}):jsxs("div",{className:l("flex items-center",t),...r,children:[e==="sent"&&jsx(Check,{className:"h-3 w-3 opacity-50"}),e==="delivered"&&jsx(CheckCheck,{className:"h-3 w-3 opacity-50"}),e==="read"&&jsx(CheckCheck,{className:"h-3 w-3 text-blue-500"})]})}function Xs({url:e,title:t,description:r,image:o,siteName:n,className:a,...s}){return jsxs("a",{href:e,target:"_blank",rel:"noopener noreferrer",className:l("block overflow-hidden rounded-xl border border-gray-200 dark:border-white/10 bg-white dark:bg-white/[0.03] hover:bg-gray-50 dark:hover:bg-white/[0.05] transition-all group",a),...s,children:[o&&jsx("div",{className:"aspect-video w-full overflow-hidden border-b border-gray-200 dark:border-white/10",children:jsx("img",{src:o,alt:t,className:"w-full h-full object-cover group-hover:scale-105 transition-transform duration-500"})}),jsxs("div",{className:"p-3 space-y-1",children:[n&&jsx("p",{className:"text-[10px] font-bold uppercase tracking-wider text-blue-500",children:n}),jsx("h4",{className:"text-sm font-semibold text-gray-900 dark:text-white line-clamp-1",children:t||e}),r&&jsx("p",{className:"text-xs text-gray-500 dark:text-white/50 line-clamp-2",children:r}),jsxs("div",{className:"flex items-center gap-1 text-[10px] text-gray-400 pt-1",children:[jsx(ExternalLink,{className:"h-3 w-3"}),jsx("span",{className:"truncate",children:new URL(e).hostname})]})]})]})}function qs({data:e,isOwn:t,onAction:r}){return jsxs("div",{className:"space-y-2 max-w-sm",children:[(()=>{if(!e.header)return null;switch(e.header.type){case "text":return jsx("h4",{className:"font-bold mb-1 text-sm",children:e.header.text});case "image":return jsx("div",{className:"mb-2 rounded-lg overflow-hidden border border-white/10",children:jsx("img",{src:e.header.attachment?.url,alt:"Header",className:"w-full h-auto object-cover"})});default:return null}})(),jsx("p",{className:"text-sm leading-relaxed",children:e.body}),e.footer&&jsx("p",{className:"text-[10px] opacity-50 italic",children:e.footer}),e.type==="button"&&e.buttons&&jsx("div",{className:"flex flex-col gap-1 mt-3",children:e.buttons.map(n=>jsxs("button",{onClick:()=>r?.(n),className:l("flex items-center justify-center gap-2 p-2.5 rounded-xl text-sm font-medium transition-all","bg-white/10 hover:bg-white/20 border border-white/10 active:scale-[0.98]",t?"text-white":"text-blue-500 dark:text-blue-400"),children:[n.type==="url"&&jsx(ExternalLink,{className:"h-3.5 w-3.5"}),n.type==="call"&&jsx(Phone,{className:"h-3.5 w-3.5"}),n.type==="reply"&&jsx(Reply,{className:"h-3.5 w-3.5"}),n.text]},n.id))}),e.type==="list"&&e.sections&&jsx("div",{className:"mt-3 space-y-3",children:e.sections.map((n,a)=>jsxs("div",{className:"space-y-1",children:[n.title&&jsx("p",{className:"text-[10px] uppercase tracking-wider opacity-40 font-bold px-1",children:n.title}),jsx("div",{className:"flex flex-col gap-1",children:n.rows.map(s=>jsxs("button",{onClick:()=>r?.({id:s.id,text:s.title,type:"reply"}),className:"flex flex-col items-start p-3 rounded-xl bg-white/5 hover:bg-white/10 border border-white/5 transition-colors text-left",children:[jsx("span",{className:"text-sm font-medium",children:s.title}),s.description&&jsx("span",{className:"text-xs opacity-50 line-clamp-1",children:s.description})]},s.id))})]},a))})]})}function Gs({cards:e,isOwn:t,onAction:r}){let o=we__default.useRef(null),n=a=>{o.current&&o.current.scrollBy({left:a==="left"?-240:240,behavior:"smooth"});};return jsxs("div",{className:"relative group/carousel max-w-[300px] sm:max-w-[400px]",children:[jsx("div",{ref:o,className:"flex gap-3 overflow-x-auto scrollbar-hide snap-x snap-mandatory pb-2",children:e.map((a,s)=>jsxs("div",{className:"flex-shrink-0 w-[240px] snap-start rounded-2xl bg-white/5 dark:bg-white/[0.03] border border-white/10 overflow-hidden flex flex-col",children:[a.header?.attachment&&jsx("div",{className:"aspect-video w-full overflow-hidden",children:jsx("img",{src:a.header.attachment.url,alt:"Card",className:"w-full h-full object-cover"})}),jsxs("div",{className:"p-3 flex-1 flex flex-col",children:[jsx("p",{className:"text-sm leading-relaxed mb-1",children:a.body}),a.footer&&jsx("p",{className:"text-[10px] opacity-50 italic mb-3",children:a.footer}),jsx("div",{className:"mt-auto flex flex-col gap-1",children:a.buttons.map(i=>jsxs("button",{onClick:()=>r?.(i),className:l("flex items-center justify-center gap-2 p-2 rounded-lg text-xs font-medium transition-all","bg-white/10 hover:bg-white/20 border border-white/10",t?"text-white":"text-blue-500 dark:text-blue-400"),children:[i.type==="url"&&jsx(ExternalLink,{className:"h-3 w-3"}),i.type==="call"&&jsx(Phone,{className:"h-3 w-3"}),i.type==="reply"&&jsx(Reply,{className:"h-3 w-3"}),i.text]},i.id))})]})]},s))}),e.length>1&&jsxs(Fragment,{children:[jsx("button",{onClick:()=>n("left"),className:"absolute left-[-12px] top-1/2 -translate-y-1/2 p-1.5 rounded-full bg-white dark:bg-gray-800 shadow-lg border border-white/10 opacity-0 group-hover/carousel:opacity-100 transition-opacity z-10",children:jsx(ChevronLeft,{className:"h-4 w-4"})}),jsx("button",{onClick:()=>n("right"),className:"absolute right-[-12px] top-1/2 -translate-y-1/2 p-1.5 rounded-full bg-white dark:bg-gray-800 shadow-lg border border-white/10 opacity-0 group-hover/carousel:opacity-100 transition-opacity z-10",children:jsx(ChevronRight,{className:"h-4 w-4"})})]})]})}function Js({message:e,isOwn:t,showAvatar:r,showStatus:o=true,className:n,onReply:a,onReact:s,onDelete:i,onEdit:c,onForward:d,onCopy:m,onPin:u,onSelect:f,onImageClick:g,isSelected:x}){let v=()=>!t||!o?null:jsx(_s,{status:e.status||"sent",className:"ml-1"}),h=()=>{if(e.type==="revoked")return jsxs("p",{className:"text-sm italic opacity-50 flex items-center gap-2",children:[jsx(Trash2,{className:"h-3 w-3"})," This message was deleted"]});switch(e.type){case "audio":return jsx(Ws,{src:e.attachments?.[0]?.url||"",duration:e.attachments?.[0]?.duration,isMe:t});case "location":return jsxs("div",{className:"space-y-2",children:[jsxs("div",{className:"flex items-center gap-2",children:[jsx(MapPin,{className:"h-4 w-4"}),jsx("span",{className:"text-sm font-medium",children:e.location?.address||"Shared Location"})]}),jsxs("div",{className:"aspect-video rounded-xl bg-gray-200 dark:bg-white/10 flex items-center justify-center overflow-hidden relative group/map",children:[jsx(MapPin,{className:"h-8 w-8 opacity-20 group-hover/map:scale-110 transition-transform"}),jsx("div",{className:"absolute inset-0 bg-blue-500/5 group-hover/map:bg-blue-500/10 transition-colors"})]})]});case "contact":return jsxs("div",{className:"flex items-center gap-3 p-2 rounded-xl bg-black/5 dark:bg-white/10 border border-white/5",children:[jsx("div",{className:"w-10 h-10 rounded-full bg-blue-500 flex items-center justify-center text-white shadow-lg shadow-blue-500/20",children:jsx(User,{className:"h-5 w-5"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-sm font-bold truncate",children:e.contact?.name}),jsx("p",{className:"text-xs opacity-60 truncate",children:e.contact?.phone})]})]});case "file":return jsxs("div",{className:"flex items-center gap-3 p-3 rounded-xl bg-black/5 dark:bg-white/10 border border-white/5 hover:bg-black/10 dark:hover:bg-white/20 transition-colors cursor-pointer",children:[jsx("div",{className:"w-10 h-10 rounded-xl bg-blue-500/20 flex items-center justify-center text-blue-500",children:jsx(FileText,{className:"h-6 w-6"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-sm font-medium truncate",children:e.attachments?.[0]?.name||"File"}),jsx("p",{className:"text-[10px] opacity-60 uppercase",children:e.attachments?.[0]?.size||"Unknown size"})]})]});case "sticker":return jsx("div",{className:"relative group/sticker",children:jsx("img",{src:e.attachments?.[0]?.url,alt:"Sticker",className:"w-32 h-32 object-contain"})});case "image":return jsxs("div",{className:"space-y-2",children:[jsx("div",{className:"relative rounded-2xl overflow-hidden border border-white/5 group/image cursor-pointer",onClick:()=>g?.(e.attachments?.[0]?.url||""),children:jsx(qo,{src:e.attachments?.[0]?.url||"",alt:e.content||"Image",className:"max-h-[300px] w-auto object-contain bg-black/20 transition-transform duration-300 group-hover/image:scale-105"})}),e.content&&jsx("p",{className:"text-sm leading-relaxed whitespace-pre-wrap break-words px-1",children:e.content})]});case "video":return jsxs("div",{className:"space-y-2",children:[jsx("div",{className:"relative rounded-2xl overflow-hidden border border-white/5 bg-black/20 aspect-video flex items-center justify-center group/video",children:jsx("video",{src:e.attachments?.[0]?.url,controls:true,className:"max-h-[300px] w-full"})}),e.content&&jsx("p",{className:"text-sm leading-relaxed whitespace-pre-wrap break-words px-1",children:e.content})]});case "interactive":return e.interactive?.type==="carousel"&&e.interactive.cards?jsx(Gs,{cards:e.interactive.cards,isOwn:t}):e.interactive?jsx(qs,{data:e.interactive,isOwn:t}):null;default:let p=/(https?:\/\/[^\s]+)/g,b=e.content.match(p);return jsxs("div",{className:"space-y-2",children:[e.replyTo&&jsxs("div",{className:"mb-2 p-2 rounded-lg bg-black/5 dark:bg-white/5 border-l-4 border-blue-500 text-xs",children:[jsx("p",{className:"font-bold text-blue-500 truncate",children:e.replyTo.senderId===e.senderId?"You":"Other"}),jsx("p",{className:"opacity-60 truncate",children:e.replyTo.content})]}),jsx("p",{className:"text-sm leading-relaxed whitespace-pre-wrap break-words",children:e.content}),b&&b.map(w=>jsx(Xs,{url:w},w))]})}};return jsxs("div",{className:l("flex w-full mb-4 group/bubble",t?"justify-end":"justify-start",n),children:[!t&&r&&jsx("div",{className:"mr-2 mt-auto",children:jsx(z,{src:e.contact?.avatar,alt:e.contact?.name||"User",className:"w-8 h-8",fallback:(e.contact?.name||e.senderId||"?").charAt(0).toUpperCase()})}),jsxs("div",{className:l("relative max-w-[75%] sm:max-w-[60%] transition-all duration-300",x&&"scale-95 opacity-80"),children:[jsx(Hn,{preset:"spring",children:jsxs("div",{className:l("relative p-3 rounded-2xl shadow-sm backdrop-blur-md border",t?"bg-blue-600/90 dark:bg-blue-500/20 text-white border-blue-500/20 rounded-tr-none":"bg-white/80 dark:bg-white/[0.05] text-gray-900 dark:text-white border-white/10 rounded-tl-none","hover:shadow-lg hover:shadow-blue-500/5 transition-shadow"),children:[!t&&e.remoteJid?.endsWith("@g.us")&&e.contact?.name&&jsx("p",{className:"text-[11px] font-bold text-blue-500 dark:text-blue-400 mb-1 truncate",children:e.contact.name}),h(),jsxs("div",{className:"flex items-center justify-end gap-1 mt-1 opacity-60 text-[10px]",children:[jsx("span",{children:new Date(e.timestamp).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})}),v()]}),e.reactions&&Object.keys(e.reactions).length>0&&jsx("div",{className:"absolute -bottom-3 right-2 flex -space-x-1",children:Object.entries(e.reactions).map(([p,b])=>jsx("div",{className:"bg-white dark:bg-gray-800 border border-gray-200 dark:border-white/10 rounded-full px-1.5 py-0.5 text-xs shadow-sm animate-in zoom-in-50",title:b.join(", "),children:p},p))})]})}),jsxs("div",{className:l("absolute top-0 opacity-0 group-hover/bubble:opacity-100 transition-opacity flex items-center gap-1",t?"right-full mr-2":"left-full ml-2"),children:[jsxs(at,{children:[jsx(nt,{className:"p-1.5 rounded-full hover:bg-gray-100 dark:hover:bg-white/10 text-gray-400 transition-colors",children:jsx(Smile,{className:"h-4 w-4"})}),jsx(st,{side:"top",className:"flex gap-1 p-1",children:["\u{1F44D}","\u2764\uFE0F","\u{1F602}","\u{1F62E}","\u{1F622}","\u{1F64F}"].map(p=>jsx("button",{onClick:()=>s?.(p),className:"p-1.5 hover:bg-gray-100 dark:hover:bg-white/10 rounded-lg transition-transform hover:scale-125",children:p},p))})]}),jsxs(at,{children:[jsx(nt,{className:"p-1.5 rounded-full hover:bg-gray-100 dark:hover:bg-white/10 text-gray-400 transition-colors",children:jsx(MoreHorizontal,{className:"h-4 w-4"})}),jsxs(st,{align:t?"end":"start",children:[jsxs(K,{onClick:a,children:[jsx(Reply,{className:"h-4 w-4 mr-2"})," Reply"]}),jsxs(K,{onClick:m,children:[jsx(Copy,{className:"h-4 w-4 mr-2"})," Copy"]}),jsxs(K,{onClick:d,children:[jsx(Forward,{className:"h-4 w-4 mr-2"})," Forward"]}),jsxs(K,{onClick:u,children:[jsx(Pin,{className:"h-4 w-4 mr-2"})," Pin"]}),t&&jsxs(Fragment,{children:[jsxs(K,{onClick:c,children:[jsx(Edit2,{className:"h-4 w-4 mr-2"})," Edit"]}),jsxs(K,{className:"text-red-500",onClick:i,children:[jsx(Trash2,{className:"h-4 w-4 mr-2"})," Delete"]})]})]})]})]})]})]})}function CL({messages:e,currentUserId:t,className:r,onReply:o,onReact:n,onDelete:a,onEdit:s,onForward:i,onCopy:c,onPin:d,onSelect:m,onLoadMore:u,hasMore:f,isLoadingMore:g,selectedMessages:x=[],dateFormat:v="MMMM d, yyyy",groupByDate:h=true,...p}){let[b,w]=useState(true),k=useRef(null),y=useRef(null),N=useCallback((T="auto")=>{y.current?.scrollIntoView({behavior:T});},[]);useEffect(()=>{b&&N("smooth");},[e.length,b,N]);let C=T=>{let L=T.currentTarget,H=Math.abs(L.scrollHeight-L.clientHeight-L.scrollTop)<100;w(H),L.scrollTop===0&&f&&!g&&u&&u();};return e.length===0&&!g?jsx("div",{className:l("flex-1 flex items-center justify-center p-8 text-center text-gray-500 dark:text-white/40",r),...p,children:jsxs("div",{className:"max-w-sm space-y-4",children:[jsx("div",{className:"w-24 h-24 bg-blue-500/10 dark:bg-white/[0.03] rounded-full flex items-center justify-center mx-auto mb-6 animate-pulse",children:jsx(MessageSquare,{className:"h-12 w-12 text-blue-500"})}),jsx("h3",{className:"text-xl font-medium text-gray-900 dark:text-white",children:"No messages yet"}),jsx("p",{children:"Start the conversation by sending a message below."})]})}):jsxs("div",{className:l("flex-1 relative overflow-hidden",r),...p,children:[jsx("div",{ref:k,onScroll:C,className:"h-full overflow-y-auto p-4 [&::-webkit-scrollbar]:w-1.5 [&::-webkit-scrollbar-thumb]:bg-white/10 [&::-webkit-scrollbar-thumb]:rounded-full hover:[&::-webkit-scrollbar-thumb]:bg-white/20 [&::-webkit-scrollbar-track]:bg-transparent",children:jsxs("div",{className:"flex flex-col gap-4",children:[e.map((T,L)=>{let H=T.senderId===t,E=L>0?e[L-1]:null,S=!H&&(!E||E.senderId!==T.senderId);return jsx(Js,{message:T,isOwn:H,showAvatar:S,onReply:()=>o?.(T),onReact:O=>n?.(T,O),onDelete:()=>a?.(T),onEdit:()=>s?.(T),onForward:()=>i?.(T),onCopy:()=>c?.(T),onPin:()=>d?.(T),onSelect:()=>m?.(T),isSelected:x.includes(T.id)},T.id)}),jsx("div",{ref:y})]})}),!b&&jsx("button",{onClick:()=>N("smooth"),className:"absolute bottom-6 right-6 p-3 rounded-full bg-white dark:bg-white/10 backdrop-blur border border-gray-200 dark:border-white/10 shadow-lg text-gray-600 dark:text-white hover:scale-110 transition-all z-10",children:jsx(ArrowDown,{className:"h-5 w-5"})})]})}function ei(){let[e,t]=useState(false),[r,o]=useState(0),[n,a]=useState(null),[s,i]=useState(null),c=useRef(null),d=useRef(null),m=useRef([]),u=useCallback(async()=>{try{let v=await navigator.mediaDevices.getUserMedia({audio:!0}),h=MediaRecorder.isTypeSupported("audio/ogg; codecs=opus")?"audio/ogg; codecs=opus":"audio/webm";c.current=new MediaRecorder(v,{mimeType:h}),m.current=[],c.current.ondataavailable=p=>{p.data.size>0&&m.current.push(p.data);},c.current.onstop=()=>{let p=new Blob(m.current,{type:h}),b=URL.createObjectURL(p);a(p),i(b),v.getTracks().forEach(w=>w.stop());},c.current.start(),t(!0),o(0),d.current=window.setInterval(()=>{o(p=>p+1);},1e3);}catch(v){throw console.error("Failed to start recording",v),v}},[]),f=useCallback(()=>{c.current&&e&&(c.current.stop(),t(false),d.current&&clearInterval(d.current));},[e]),g=useCallback(()=>{c.current&&e&&(c.current.stop(),t(false),d.current&&clearInterval(d.current),a(null),i(null),o(0));},[e]),x=useCallback(()=>{a(null),i(null),o(0);},[]);return {isRecording:e,duration:r,audioBlob:n,audioUrl:s,startRecording:u,stopRecording:f,cancelRecording:g,clearAudio:x}}function ti({onSend:e,onCancel:t,className:r,...o}){let{isRecording:n,duration:a,audioBlob:s,startRecording:i,stopRecording:c,cancelRecording:d}=ei();useEffect(()=>(i(),()=>d()),[]);let m=u=>{let f=Math.floor(u/60),g=u%60;return `${f}:${g.toString().padStart(2,"0")}`};return jsxs("div",{className:l("flex items-center gap-3 p-2 rounded-2xl bg-gray-100 dark:bg-white/[0.03] border border-gray-200 dark:border-white/10 animate-in slide-in-from-bottom-2",r),...o,children:[jsxs("div",{className:"flex items-center gap-2 px-3 py-1.5 rounded-xl bg-red-500/10 text-red-500",children:[jsx("div",{className:"w-2 h-2 rounded-full bg-red-500 animate-pulse"}),jsx("span",{className:"text-sm font-mono font-bold",children:m(a)})]}),jsx("div",{className:"flex-1 h-8 flex items-center gap-0.5 px-2",children:[...Array(20)].map((u,f)=>jsx("div",{className:"w-1 bg-red-500/40 rounded-full transition-all duration-150",style:{height:n?`${20+Math.random()*80}%`:"20%",animationDelay:`${f*.05}s`}},f))}),jsxs("div",{className:"flex items-center gap-1",children:[jsx("button",{onClick:()=>{d(),t();},className:"p-2 rounded-full hover:bg-gray-200 dark:hover:bg-white/10 text-gray-500 transition-colors",children:jsx(Trash2,{className:"h-5 w-5"})}),n?jsx(R,{size:"icon",variant:"ghost",onClick:c,className:"rounded-full bg-red-500 text-white hover:bg-red-600",children:jsx(Square,{className:"h-4 w-4 fill-current"})}):jsx(R,{size:"icon",onClick:()=>s&&e(s,a),className:"rounded-full bg-blue-500 text-white hover:bg-blue-600",children:jsx(Send,{className:"h-4 w-4"})})]})]})}function qL({value:e,onValueChange:t,onSend:r,onChange:o,onAttach:n,onMic:a,onVoiceEnd:s,onEmoji:i,onGif:c,onLocation:d,onContact:m,onPoll:u,onPix:f,onCarousel:g,onButtons:x,onList:v,onCancelReply:h,placeholder:p="Type a message...",users:b=[],replyingTo:w,isRecording:k,maxLength:y,disabled:N,className:C,...T}){let[L,H]=useState(""),E=e!==void 0?e:L,S=P=>{t?t(P):H(P);},[O,V]=useState(false),[M,Y]=useState(null),[de,Z]=useState(0),te=useRef(null),Le=useMemo(()=>M===null?[]:b.filter(P=>P.name.toLowerCase().includes(M.toLowerCase())).slice(0,5),[b,M]),wt=P=>{if(N)return;let I=P.target.value;if(y&&I.length>y)return;S(I),o?.(I);I[P.target.selectionStart-1];let Qe=I.slice(0,P.target.selectionStart).match(/@(\w*)$/);Qe?(Y(Qe[1]||""),Z(0)):Y(null),te.current&&(te.current.style.height="auto",te.current.style.height=`${Math.min(te.current.scrollHeight,120)}px`);},zr=P=>{if(!te.current)return;let I=te.current.selectionStart,A=E.slice(0,I).replace(/@\w*$/,`@${P.name} `),re=E.slice(I);S(A+re),Y(null),te.current.focus();},U=P=>{if(!N){if(M!==null&&Le.length>0){P.key==="ArrowDown"?(P.preventDefault(),Z(I=>(I+1)%Le.length)):P.key==="ArrowUp"?(P.preventDefault(),Z(I=>(I-1+Le.length)%Le.length)):P.key==="Enter"||P.key==="Tab"?(P.preventDefault(),zr(Le[de])):P.key==="Escape"&&Y(null);return}P.key==="Enter"&&!P.shiftKey&&(P.preventDefault(),_());}},_=()=>{N||!E.trim()&&!k||(r?.(E),S(""),te.current&&(te.current.style.height="auto"));};return jsxs("div",{className:l("p-4 bg-white/80 dark:bg-black/40 backdrop-blur border-t border-gray-200 dark:border-white/10 relative",C),...T,children:[M!==null&&Le.length>0&&jsx("div",{className:"absolute bottom-full left-4 mb-2 w-64 bg-white dark:bg-gray-900 border border-gray-200 dark:border-white/10 rounded-2xl shadow-2xl overflow-hidden animate-in slide-in-from-bottom-4",children:Le.map((P,I)=>jsxs("button",{onClick:()=>zr(P),className:l("w-full flex items-center gap-3 p-3 text-left transition-colors",I===de?"bg-blue-500/10 dark:bg-white/10":"hover:bg-gray-50 dark:hover:bg-white/5"),children:[jsx(z,{src:P.avatar,alt:P.name,className:"w-8 h-8"}),jsxs("div",{children:[jsx("p",{className:"text-sm font-bold dark:text-white",children:P.name}),jsxs("p",{className:"text-xs text-gray-500 dark:text-white/40",children:["@",P.name.toLowerCase().replace(/\s/g,"")]})]})]},P.id))}),w&&jsxs("div",{className:"mb-3 flex items-center justify-between p-3 rounded-2xl bg-blue-500/5 border-l-4 border-blue-500 animate-in slide-in-from-bottom-2",children:[jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-xs font-bold text-blue-500",children:"Replying to"}),jsx("p",{className:"text-sm text-gray-600 dark:text-white/60 truncate",children:w.content})]}),jsx("button",{onClick:h,className:"p-1.5 rounded-full hover:bg-gray-200 dark:hover:bg-white/10 text-gray-400",children:jsx(X$1,{className:"h-4 w-4"})})]}),jsxs("div",{className:"flex items-end gap-2",children:[jsxs("div",{className:"flex items-center gap-1 mb-1",children:[jsxs(at,{children:[jsx(nt,{disabled:N,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-500 dark:text-white/50 transition-colors disabled:opacity-50",children:jsx(Paperclip,{className:"h-5 w-5"})}),jsxs(st,{align:"start",side:"top",children:[jsxs(K,{onClick:n,children:[jsx(Image,{className:"h-4 w-4 mr-2"})," Image & Video"]}),jsxs(K,{onClick:n,children:[jsx(Paperclip,{className:"h-4 w-4 mr-2"})," Document"]}),jsxs(K,{onClick:d,children:[jsx(MapPin,{className:"h-4 w-4 mr-2"})," Location"]}),jsxs(K,{onClick:m,children:[jsx(AtSign,{className:"h-4 w-4 mr-2"})," Contact"]}),jsxs(K,{onClick:u,children:[jsx(AtSign,{className:"h-4 w-4 mr-2"})," Poll"]}),jsxs(K,{onClick:f,children:[jsx(AtSign,{className:"h-4 w-4 mr-2"})," PIX"]}),jsxs(K,{onClick:g,children:[jsx(Layout,{className:"h-4 w-4 mr-2"})," Carousel"]}),jsxs(K,{onClick:x,children:[jsx(Layout,{className:"h-4 w-4 mr-2"})," Buttons"]}),jsxs(K,{onClick:v,children:[jsx(List,{className:"h-4 w-4 mr-2"})," List Menu"]}),jsxs(K,{onClick:c,children:[jsx(Gift,{className:"h-4 w-4 mr-2"})," GIF"]})]})]}),jsx("button",{onClick:i,disabled:N,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-500 dark:text-white/50 transition-colors disabled:opacity-50",children:jsx(Smile,{className:"h-5 w-5"})})]}),jsx("div",{className:"flex-1 relative",children:k?jsx(ti,{onSend:(P,I)=>s?.(P,I),onCancel:()=>h?.()}):jsx("textarea",{ref:te,value:E,onChange:wt,onKeyDown:U,placeholder:p,disabled:N,rows:1,className:"w-full p-2.5 max-h-[120px] rounded-2xl bg-gray-100 dark:bg-white/[0.03] border border-transparent focus:border-blue-500/50 focus:bg-white dark:focus:bg-white/[0.06] text-sm resize-none transition-all outline-none dark:text-white placeholder:text-gray-400"})}),jsx("div",{className:"flex items-center gap-1 mb-1",children:E.trim()||k?jsx("button",{onClick:_,disabled:N,className:"p-2.5 rounded-full bg-blue-500 text-white hover:bg-blue-600 shadow-lg shadow-blue-500/20 transition-all active:scale-90",children:jsx(Send,{className:"h-5 w-5"})}):jsx("button",{onClick:a,disabled:N,className:"p-2.5 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-500 dark:text-white/50 transition-colors disabled:opacity-50",children:jsx(Mic,{className:"h-5 w-5"})})})]})]})}function nP({user:e,onClose:t,className:r,...o}){return jsxs("div",{className:l("w-80 border-l border-gray-200 dark:border-white/10 bg-white dark:bg-black/20 flex flex-col",r),...o,children:[jsxs("div",{className:"h-16 flex items-center px-4 border-b border-gray-200 dark:border-white/10",children:[jsx("button",{onClick:t,className:"p-2 -ml-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06]",children:jsx(X$1,{className:"h-5 w-5 text-gray-500"})}),jsx("span",{className:"ml-2 font-semibold text-gray-900 dark:text-white",children:"Contact Info"})]}),jsxs(it,{className:"flex-1",children:[jsxs("div",{className:"p-6 flex flex-col items-center text-center",children:[jsx(z,{src:e.avatar,alt:e.name,fallback:e.name[0],className:"h-24 w-24 mb-4 text-2xl"}),jsx("h2",{className:"text-xl font-bold text-gray-900 dark:text-white",children:e.name}),jsx("p",{className:"text-sm text-gray-500 dark:text-white/50 mt-1",children:e.phone||"+1 (555) 000-0000"}),jsxs("div",{className:"mt-6 w-full",children:[jsx("p",{className:"text-sm text-gray-500 dark:text-white/50 mb-1 text-left",children:"About"}),jsx("p",{className:"text-sm text-gray-900 dark:text-white text-left",children:e.bio||"Hey there! I am using Pixon Chat."})]})]}),jsx(Sr,{}),jsxs("div",{className:"p-4 space-y-4",children:[jsx("h3",{className:"text-xs font-semibold text-gray-500 dark:text-white/40 uppercase tracking-wider",children:"Media & Docs"}),jsx("div",{className:"grid grid-cols-3 gap-2",children:[1,2,3,4,5,6].map(n=>jsxs("div",{className:"aspect-square rounded-2xl bg-gray-100 dark:bg-white/[0.03] overflow-hidden relative group cursor-pointer",children:[jsx("div",{className:"absolute inset-0 flex items-center justify-center text-gray-400",children:jsx(Image,{className:"h-6 w-6"})}),jsx("div",{className:"absolute inset-0 bg-black/50 opacity-0 group-hover:opacity-100 transition-opacity"})]},n))})]}),jsx(Sr,{}),jsx("div",{className:"p-4 space-y-4",children:jsxs("div",{className:"flex items-center justify-between",children:[jsxs("div",{className:"flex items-center gap-3 text-gray-700 dark:text-white/80",children:[jsx(Bell,{className:"h-5 w-5"}),jsx("span",{className:"text-sm font-medium",children:"Mute Notifications"})]}),jsx(Eo,{})]})}),jsx(Sr,{}),jsxs("div",{className:"p-4 space-y-2",children:[jsxs("button",{className:"w-full flex items-center gap-3 p-3 rounded-2xl hover:bg-red-50 dark:hover:bg-red-500/10 text-red-600 dark:text-red-400 transition-colors text-sm font-medium",children:[jsx(Ban,{className:"h-5 w-5"}),"Block ",e.name]}),jsxs("button",{className:"w-full flex items-center gap-3 p-3 rounded-2xl hover:bg-red-50 dark:hover:bg-red-500/10 text-red-600 dark:text-red-400 transition-colors text-sm font-medium",children:[jsx(Trash2,{className:"h-5 w-5"}),"Delete Chat"]})]})]})]})}function cP({users:e=[],variant:t="default",className:r,...o}){let n=e.length===0?"Someone is typing":e.length===1?`${e[0]} is typing`:e.length===2?`${e[0]} and ${e[1]} are typing`:`${e[0]} and ${e.length-1} others are typing`;return t==="bubble"?jsx("div",{className:l("flex items-center gap-1 px-3 py-2 rounded-2xl bg-gray-100 dark:bg-white/[0.03] w-fit",r),...o,children:jsxs("div",{className:"flex gap-1",children:[jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-gray-400 animate-bounce [animation-delay:-0.3s]"}),jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-gray-400 animate-bounce [animation-delay:-0.15s]"}),jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-gray-400 animate-bounce"})]})}):jsxs("div",{className:l("flex items-center gap-2 text-xs text-gray-500 dark:text-white/40 italic",r),...o,children:[jsxs("div",{className:"flex gap-0.5",children:[jsx("span",{className:"w-1 h-1 rounded-full bg-current animate-bounce [animation-delay:-0.3s]"}),jsx("span",{className:"w-1 h-1 rounded-full bg-current animate-bounce [animation-delay:-0.15s]"}),jsx("span",{className:"w-1 h-1 rounded-full bg-current animate-bounce"})]}),n]})}function fP({message:e,onCancel:t,className:r,...o}){return jsxs("div",{className:l("flex items-center gap-3 p-2 rounded-xl bg-blue-500/5 border-l-4 border-blue-500 animate-in slide-in-from-bottom-2",r),...o,children:[jsx("div",{className:"p-1.5 rounded-lg bg-blue-500/10 text-blue-500",children:jsx(Reply,{className:"h-4 w-4"})}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-xs font-bold text-blue-500",children:"Replying to"}),jsx("p",{className:"text-sm text-gray-600 dark:text-white/60 truncate",children:e.content})]}),t&&jsx("button",{onClick:t,className:"p-1 rounded-full hover:bg-gray-200 dark:hover:bg-white/10 text-gray-400 transition-colors",children:jsx(X$1,{className:"h-4 w-4"})})]})}function vP({type:e="info",message:t,action:r,onClose:o,className:n,...a}){let s={info:Info,warning:AlertCircle,error:AlertCircle,success:CheckCircle2},i={info:"bg-blue-500/10 text-blue-600 dark:text-blue-400 border-blue-500/20",warning:"bg-amber-500/10 text-amber-600 dark:text-amber-400 border-amber-500/20",error:"bg-red-500/10 text-red-600 dark:text-red-400 border-red-500/20",success:"bg-green-500/10 text-green-600 dark:text-green-400 border-green-500/20"},c=s[e];return jsxs("div",{className:l("flex items-center gap-3 px-4 py-2 border-b text-sm animate-in slide-in-from-top duration-300",i[e],n),...a,children:[jsx(c,{className:"h-4 w-4 shrink-0"}),jsx("p",{className:"flex-1 font-medium",children:t}),r&&jsx("button",{onClick:r.onClick,className:"text-xs font-bold uppercase tracking-wider hover:underline",children:r.label}),o&&jsx("button",{onClick:o,className:"p-1 rounded-full hover:bg-black/5 dark:hover:bg-white/5 transition-colors",children:jsx(X$1,{className:"h-4 w-4"})})]})}function TP({date:e,className:t,...r}){return jsx("div",{className:l("flex justify-center sticky top-0 z-10 py-4",t),...r,children:jsxs("div",{className:"flex items-center gap-2 px-3 py-1 rounded-full bg-gray-100/80 dark:bg-white/5 backdrop-blur text-[10px] font-bold uppercase tracking-wider text-gray-500 dark:text-white/40 border border-gray-200 dark:border-white/10 shadow-sm",children:[jsx(Calendar,{className:"h-3 w-3"}),e]})})}function LP({status:e="offline",size:t="md",className:r,...o}){let n={online:"bg-green-500",offline:"bg-gray-400",away:"bg-amber-500",busy:"bg-red-500"},a={sm:"h-2 w-2",md:"h-3 w-3",lg:"h-4 w-4"};return jsx("span",{className:l("rounded-full border-2 border-white dark:border-black shrink-0",n[e],a[t],e==="online"&&"animate-pulse",r),...o})}function DP({content:e,className:t,...r}){return jsx("div",{className:l("flex justify-center py-2",t),...r,children:jsx("div",{className:"px-4 py-1 rounded-lg bg-gray-100/50 dark:bg-white/[0.02] text-[11px] font-medium text-gray-500 dark:text-white/30 border border-gray-200/50 dark:border-white/5",children:e})})}function zP({group:e,onBack:t,onInfo:r,isTyping:o,typingUsers:n=[],className:a,...s}){let i=n.length>0?`${n.join(", ")} ${n.length===1?"is":"are"} typing...`:"typing...";return jsxs("div",{className:l("flex h-16 items-center justify-between border-b border-gray-200 dark:border-white/10 bg-white/80 dark:bg-black/40 backdrop-blur px-4 sticky top-0 z-10",a),...s,children:[jsxs("div",{className:"flex items-center gap-3",children:[t&&jsx("button",{onClick:t,className:"md:hidden p-2 -ml-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06]",children:jsx(ArrowLeft,{className:"h-5 w-5 text-gray-600 dark:text-white/70"})}),jsx("div",{className:"relative cursor-pointer",onClick:r,children:jsxs("div",{className:"flex -space-x-3",children:[e.members.slice(0,2).map((c,d)=>jsx(z,{src:c.avatar,alt:c.name,fallback:c.name[0],className:l("border-2 border-white dark:border-black",d===0?"z-10":"z-0")},c.id)),e.members.length>2&&jsxs("div",{className:"w-10 h-10 rounded-full bg-gray-200 dark:bg-white/10 border-2 border-white dark:border-black flex items-center justify-center text-[10px] font-bold text-gray-600 dark:text-white/60 z-0",children:["+",e.members.length-2]})]})}),jsxs("div",{className:"cursor-pointer min-w-0",onClick:r,children:[jsx("h3",{className:"font-semibold text-gray-900 dark:text-white leading-none truncate",children:e.name}),jsx("p",{className:l("text-xs mt-1 truncate transition-colors",o?"text-blue-500 font-medium animate-pulse":"text-gray-500 dark:text-white/50"),children:o?i:`${e.members.length} members`})]})]}),jsxs("div",{className:"flex items-center gap-1",children:[jsx("button",{className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Phone,{className:"h-5 w-5"})}),jsx("button",{className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(Video,{className:"h-5 w-5"})}),jsx("button",{onClick:r,className:"p-2 rounded-full hover:bg-gray-100 dark:hover:bg-white/[0.06] text-gray-600 dark:text-white/60 transition-colors",children:jsx(MoreVertical,{className:"h-5 w-5"})})]})]})}function YP({users:e,selectedIndex:t,onSelect:r,className:o,...n}){return e.length===0?null:jsx(ne,{className:l("w-64 overflow-hidden shadow-xl animate-in fade-in slide-in-from-bottom-2",o),...n,children:jsxs("div",{className:"p-1",children:[jsx("div",{className:"px-3 py-2 text-[10px] font-bold uppercase tracking-wider text-gray-400 border-b border-gray-200 dark:border-white/5 mb-1",children:"Mention someone"}),e.map((a,s)=>jsxs("button",{onClick:()=>r(a),className:l("w-full flex items-center gap-2 p-2 rounded-xl text-left transition-colors",s===t?"bg-blue-500 text-white":"hover:bg-gray-100 dark:hover:bg-white/[0.06]"),children:[jsx(z,{src:a.avatar,alt:a.name,fallback:a.name[0],size:"sm"}),jsxs("div",{className:"flex-1 min-w-0",children:[jsx("p",{className:"text-sm font-medium truncate",children:a.name}),a.status&&jsx("p",{className:l("text-[10px]",s===t?"text-white/70":"text-gray-500"),children:a.status})]})]},a.id))]})})}var q0=[{name:"Smileys",emojis:["\u{1F600}","\u{1F603}","\u{1F604}","\u{1F601}","\u{1F606}","\u{1F605}","\u{1F602}","\u{1F923}","\u{1F60A}","\u{1F607}","\u{1F642}","\u{1F643}","\u{1F609}","\u{1F60C}","\u{1F60D}","\u{1F970}","\u{1F618}","\u{1F617}","\u{1F619}","\u{1F61A}","\u{1F60B}","\u{1F61B}","\u{1F61D}","\u{1F61C}","\u{1F92A}","\u{1F928}","\u{1F9D0}","\u{1F913}","\u{1F60E}","\u{1F929}","\u{1F973}","\u{1F60F}","\u{1F612}","\u{1F61E}","\u{1F614}","\u{1F61F}","\u{1F615}","\u{1F641}","\u2639\uFE0F","\u{1F623}","\u{1F616}","\u{1F62B}","\u{1F629}","\u{1F97A}","\u{1F622}","\u{1F62D}","\u{1F624}","\u{1F620}","\u{1F621}","\u{1F92C}","\u{1F92F}","\u{1F633}","\u{1F975}","\u{1F976}","\u{1F631}","\u{1F628}","\u{1F630}","\u{1F625}","\u{1F613}","\u{1F917}","\u{1F914}","\u{1F92D}","\u{1F92B}","\u{1F925}","\u{1F636}","\u{1F610}","\u{1F611}","\u{1F62C}","\u{1F644}","\u{1F62F}","\u{1F626}","\u{1F627}","\u{1F62E}","\u{1F632}","\u{1F971}","\u{1F634}","\u{1F924}","\u{1F62A}","\u{1F635}","\u{1F910}","\u{1F974}","\u{1F922}","\u{1F92E}","\u{1F927}","\u{1F637}","\u{1F912}","\u{1F915}"]},{name:"Hearts",emojis:["\u2764\uFE0F","\u{1F9E1}","\u{1F49B}","\u{1F49A}","\u{1F499}","\u{1F49C}","\u{1F5A4}","\u{1F90D}","\u{1F90E}","\u{1F494}","\u2763\uFE0F","\u{1F495}","\u{1F49E}","\u{1F493}","\u{1F497}","\u{1F496}","\u{1F498}","\u{1F49D}","\u{1F49F}"]},{name:"Gestures",emojis:["\u{1F44D}","\u{1F44E}","\u{1F44C}","\u{1F90C}","\u{1F90F}","\u270C\uFE0F","\u{1F91E}","\u{1F91F}","\u{1F918}","\u{1F919}","\u{1F448}","\u{1F449}","\u{1F446}","\u{1F595}","\u{1F447}","\u261D\uFE0F","\u270A","\u{1F44A}","\u{1F91B}","\u{1F91C}","\u{1F44F}","\u{1F64C}","\u{1F450}","\u{1F932}","\u{1F91D}","\u{1F64F}","\u270D\uFE0F","\u{1F485}","\u{1F933}","\u{1F4AA}","\u{1F9BE}","\u{1F9B5}","\u{1F9BF}","\u{1F9B6}","\u{1F463}","\u{1F442}","\u{1F9BB}","\u{1F443}","\u{1F9E0}","\u{1FAC0}","\u{1FAC1}","\u{1F9B7}","\u{1F9B4}","\u{1F440}","\u{1F441}\uFE0F","\u{1F445}","\u{1F444}"]},{name:"Activities",emojis:["\u26BD","\u{1F3C0}","\u{1F3C8}","\u26BE","\u{1F94E}","\u{1F3BE}","\u{1F3D0}","\u{1F3C9}","\u{1F94F}","\u{1F3B1}","\u{1FA80}","\u{1F3D3}","\u{1F3F8}","\u{1F3D2}","\u{1F3D1}","\u{1F94D}","\u{1F3CF}","\u{1FA83}","\u{1F945}","\u26F3","\u{1FA81}","\u{1F3F9}","\u{1F3A3}","\u{1F93F}","\u{1F94A}","\u{1F94B}","\u{1F3BD}","\u{1F6F9}","\u{1F6FC}","\u{1F6F7}","\u26F8\uFE0F","\u{1F3BF}","\u26F7\uFE0F","\u{1F3C2}","\u{1FA82}","\u{1F3CB}\uFE0F","\u{1F93C}","\u{1F938}","\u26F9\uFE0F","\u{1F93A}","\u{1F93E}","\u{1F3CC}\uFE0F","\u{1F3C7}","\u{1F9D8}","\u{1F3C4}","\u{1F3CA}","\u{1F93D}","\u{1F6A3}","\u{1F9D7}","\u{1F6B5}","\u{1F6B4}"]},{name:"Nature",emojis:["\u{1F436}","\u{1F431}","\u{1F42D}","\u{1F439}","\u{1F430}","\u{1F98A}","\u{1F43B}","\u{1F43C}","\u{1F43B}\u200D\u2744\uFE0F","\u{1F428}","\u{1F42F}","\u{1F981}","\u{1F42E}","\u{1F437}","\u{1F43D}","\u{1F438}","\u{1F435}","\u{1F648}","\u{1F649}","\u{1F64A}","\u{1F412}","\u{1F414}","\u{1F427}","\u{1F426}","\u{1F424}","\u{1F423}","\u{1F425}","\u{1F986}","\u{1F985}","\u{1F989}","\u{1F987}","\u{1F43A}","\u{1F417}","\u{1F434}","\u{1F984}","\u{1F41D}","\u{1FAB1}","\u{1F41B}","\u{1F98B}","\u{1F40C}","\u{1F41E}","\u{1F41C}","\u{1F99F}","\u{1FAB0}","\u{1FAB2}","\u{1FAB3}","\u{1F997}","\u{1F577}\uFE0F","\u{1F578}\uFE0F","\u{1F982}","\u{1F422}","\u{1F40D}","\u{1F98E}","\u{1F996}","\u{1F995}","\u{1F419}","\u{1F991}","\u{1F990}","\u{1F99E}","\u{1F980}","\u{1F421}","\u{1F420}","\u{1F41F}","\u{1F42C}","\u{1F433}","\u{1F40B}","\u{1F988}","\u{1F40A}","\u{1F405}","\u{1F406}","\u{1F993}","\u{1F98D}","\u{1F9A7}","\u{1F9A3}","\u{1F418}","\u{1F99B}","\u{1F98F}","\u{1F42A}","\u{1F42B}","\u{1F992}","\u{1F998}","\u{1F9AC}","\u{1F403}","\u{1F402}","\u{1F404}","\u{1F40E}","\u{1F416}","\u{1F40F}","\u{1F411}","\u{1F410}","\u{1F98C}","\u{1F415}","\u{1F429}","\u{1F9AE}","\u{1F415}\u200D\u{1F9BA}","\u{1F408}","\u{1F408}\u200D\u2B1B","\u{1F413}","\u{1F983}","\u{1F99A}","\u{1F99C}","\u{1F9A2}","\u{1F9A9}","\u{1F54A}\uFE0F","\u{1F407}","\u{1F99D}","\u{1F9A8}","\u{1F9A1}","\u{1F9AB}","\u{1F9A6}","\u{1F9A5}","\u{1F401}","\u{1F400}","\u{1F43F}\uFE0F","\u{1F994}","\u{1F43E}","\u{1F409}","\u{1F432}","\u{1F335}","\u{1F384}","\u{1F332}","\u{1F333}","\u{1F334}","\u{1FAB5}","\u{1F331}","\u{1F33F}","\u2618\uFE0F","\u{1F340}","\u{1F38D}","\u{1FAB4}","\u{1F38B}","\u{1F343}","\u{1F342}","\u{1F341}","\u{1F344}","\u{1F41A}","\u{1FAA8}","\u{1F33E}","\u{1F490}","\u{1F337}","\u{1F339}","\u{1F940}","\u{1F33A}","\u{1F338}","\u{1F33C}","\u{1F33B}","\u{1F31E}","\u{1F31D}","\u{1F31B}","\u{1F31C}","\u{1F31A}","\u{1F315}","\u{1F316}","\u{1F317}","\u{1F318}","\u{1F311}","\u{1F312}","\u{1F313}","\u{1F314}","\u{1F319}","\u{1F30E}","\u{1F30D}","\u{1F30F}","\u{1FA90}","\u{1F4AB}","\u2B50\uFE0F","\u{1F31F}","\u2728","\u26A1\uFE0F","\u2604\uFE0F","\u{1F4A5}","\u{1F525}","\u{1F32A}\uFE0F","\u{1F308}","\u2600\uFE0F","\u{1F324}\uFE0F","\u26C5\uFE0F","\u{1F325}\uFE0F","\u2601\uFE0F","\u{1F326}\uFE0F","\u{1F327}\uFE0F","\u26C8\uFE0F","\u{1F329}\uFE0F","\u{1F328}\uFE0F","\u2744\uFE0F","\u2603\uFE0F","\u26C4\uFE0F","\u{1F32C}\uFE0F","\u{1F4A8}","\u{1F4A7}","\u{1F4A6}","\u2614\uFE0F","\u2602\uFE0F","\u{1F30A}","\u{1F32B}\uFE0F"]}];function ZP({onSelect:e,className:t,...r}){let[o,n]=useState(""),a=q0.map(s=>({...s,emojis:s.emojis.filter(i=>o===""||i.includes(o))})).filter(s=>s.emojis.length>0);return jsxs(ne,{className:l("w-72 h-96 flex flex-col overflow-hidden shadow-2xl",t),...r,children:[jsx("div",{className:"p-3 border-b border-gray-200 dark:border-white/10",children:jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-3.5 w-3.5 text-gray-400"}),jsx("input",{type:"text",value:o,onChange:s=>n(s.target.value),placeholder:"Search emoji...",className:"w-full h-8 pl-8 pr-3 rounded-lg bg-gray-100 dark:bg-white/5 text-xs focus:outline-none focus:ring-2 focus:ring-blue-500/50 transition-all"})]})}),jsx("div",{className:"flex-1 overflow-y-auto p-2 custom-scrollbar",children:a.map(s=>jsxs("div",{className:"mb-4",children:[jsx("h4",{className:"text-[10px] font-bold uppercase tracking-wider text-gray-400 px-2 mb-2",children:s.name}),jsx("div",{className:"grid grid-cols-8 gap-1",children:s.emojis.map(i=>jsx("button",{onClick:()=>e(i),className:"h-8 w-8 flex items-center justify-center rounded-lg hover:bg-gray-100 dark:hover:bg-white/10 text-lg transition-colors",children:i},i))})]},s.name))})]})}function lE({onSearch:e,results:t,onResultClick:r,onClose:o,className:n,...a}){let[s,i]=useState(""),c=d=>{let m=d.target.value;i(m),e(m);};return jsxs("div",{className:l("flex flex-col h-full bg-white dark:bg-gray-900 border-l border-gray-200 dark:border-white/10 animate-in slide-in-from-right duration-300",n),...a,children:[jsxs("div",{className:"p-4 border-b border-gray-200 dark:border-white/10 flex items-center justify-between",children:[jsx("h3",{className:"font-bold text-gray-900 dark:text-white",children:"Search Messages"}),jsx("button",{onClick:o,className:"p-1 rounded-full hover:bg-gray-100 dark:hover:bg-white/10",children:jsx(X$1,{className:"h-5 w-5 text-gray-500"})})]}),jsx("div",{className:"p-4",children:jsxs("div",{className:"relative",children:[jsx(Search,{className:"absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-gray-400"}),jsx("input",{type:"text",value:s,onChange:c,placeholder:"Search in conversation...",className:"w-full h-10 pl-10 pr-4 rounded-xl bg-gray-100 dark:bg-white/5 border-none text-sm focus:ring-2 focus:ring-blue-500/50 transition-all",autoFocus:true})]})}),jsx("div",{className:"flex-1 overflow-y-auto p-2",children:s&&t.length===0?jsx("div",{className:"p-8 text-center text-gray-500 dark:text-white/30",children:jsxs("p",{className:"text-sm",children:['No messages found for "',s,'"']})}):jsx("div",{className:"space-y-1",children:t.map(d=>jsxs("button",{onClick:()=>r(d),className:"w-full p-3 rounded-xl hover:bg-gray-100 dark:hover:bg-white/5 text-left transition-all group",children:[jsxs("div",{className:"flex justify-between mb-1",children:[jsx("span",{className:"text-[10px] font-bold text-blue-500 uppercase",children:d.timestamp.toLocaleDateString()}),jsx("span",{className:"text-[10px] text-gray-400",children:d.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]}),jsx("p",{className:"text-sm text-gray-700 dark:text-white/70 line-clamp-2 group-hover:text-gray-900 dark:group-hover:text-white",children:d.content})]},d.id))})})]})}var Ba=class{constructor(){this.state={conversations:new Map,messages:new Map,activeChatId:null,presence:new Map};this.listeners=new Set;this.getState=()=>this.state;this.subscribe=t=>(this.listeners.add(t),()=>this.listeners.delete(t));}emitChange(t){this.state=t;for(let r of this.listeners)r();}setConversations(t){this.emitChange({...this.state,conversations:new Map(t.map(r=>[r.id,r]))});}upsertConversation(t){let r=new Map(this.state.conversations),o=r.get(t.id);r.set(t.id,{...o||{unreadCount:0},...t}),this.emitChange({...this.state,conversations:r});}setMessages(t,r){let o=new Map(this.state.messages);o.set(t,r),this.emitChange({...this.state,messages:o});}addMessage(t,r){let o=this.state.messages.get(t)||[];if(o.some(i=>i.id===r.id))return;let n=new Map(this.state.messages);n.set(t,[...o,r]);let a={...this.state,messages:n},s=this.state.conversations.get(t);if(s){let i=new Map(this.state.conversations);i.set(t,{...s,lastMessage:r,unreadCount:this.state.activeChatId===t?0:(s.unreadCount||0)+1}),a.conversations=i;}this.emitChange(a);}updateMessageStatus(t,r,o){let n=this.state.messages.get(t);if(!n)return;let a=n.findIndex(s=>s.id===r);if(a!==-1){let s=[...n],i=s[a];if(i){s[a]={...i,status:o};let c=new Map(this.state.messages);c.set(t,s),this.emitChange({...this.state,messages:c});}}}updateMessage(t,r,o){let n=this.state.messages.get(t);if(!n)return;let a=n.findIndex(s=>s.id===r);if(a!==-1){let s=[...n];s[a]={...s[a],...o};let i=new Map(this.state.messages);i.set(t,s),this.emitChange({...this.state,messages:i});}}addReaction(t,r,o,n){let a=this.state.messages.get(t);if(!a)return;let s=a.findIndex(i=>i.id===r);if(s!==-1){let i=[...a],c={...i[s]},d={...c.reactions||{}},m=[...d[o]||[]];if(!m.includes(n)){m.push(n),d[o]=m,c.reactions=d,i[s]=c;let u=new Map(this.state.messages);u.set(t,i),this.emitChange({...this.state,messages:u});}}}removeReaction(t,r,o,n){let a=this.state.messages.get(t);if(!a)return;let s=a.findIndex(i=>i.id===r);if(s!==-1){let i=[...a],c={...i[s]},d={...c.reactions||{}};if(d[o]){d[o]=d[o].filter(u=>u!==n),d[o].length===0&&delete d[o],c.reactions=d,i[s]=c;let m=new Map(this.state.messages);m.set(t,i),this.emitChange({...this.state,messages:m});}}}deleteMessage(t,r){let o=this.state.messages.get(t);if(!o)return;let n=o.findIndex(a=>a.id===r);if(n!==-1){let a=[...o];a[n]={...a[n],type:"revoked",content:"Esta mensagem foi apagada",attachments:[],reactions:{}};let s=new Map(this.state.messages);s.set(t,a),this.emitChange({...this.state,messages:s});}}setActiveChat(t){let r={...this.state,activeChatId:t};if(t){let o=this.state.conversations.get(t);if(o&&o.unreadCount>0){let n=new Map(this.state.conversations);n.set(t,{...o,unreadCount:0}),r.conversations=n;}}this.emitChange(r);}setUserPresence(t,r){let o=new Map(this.state.presence);o.set(t,r),this.emitChange({...this.state,presence:o});}},je=new Ba;function ko(e){let t=useSyncExternalStore(je.subscribe,je.getState);return useMemo(()=>e(t),[t,e])}var eg=e=>Array.from(e.conversations.values()).sort((t,r)=>{if(t.isPinned&&!r.isPinned)return -1;if(!t.isPinned&&r.isPinned)return 1;let o=t.lastMessage?.timestamp.getTime()||0;return (r.lastMessage?.timestamp.getTime()||0)-o});function uE(){return ko(eg)}function pE(e){let t=useCallback(r=>e?r.messages.get(e)||[]:[],[e]);return ko(t)}function fE(){let e=useCallback(t=>t.activeChatId?t.conversations.get(t.activeChatId):null,[]);return ko(e)}function gE(e){let t=useCallback(r=>r.presence.get(e)||"unavailable",[e]);return ko(t)}function Va({url:e,token:t,rooms:r=[],onConnect:o,onDisconnect:n,onError:a}){let s=useRef(null);useEffect(()=>{let d=io(e,{auth:{token:t},transports:["websocket"],reconnectionAttempts:5,reconnectionDelay:1e3});return s.current=d,d.on("connect",()=>{console.log("Socket connected:",d.id),r.forEach(m=>d.emit("join",m)),o?.();}),d.on("disconnect",m=>{console.log("Socket disconnected:",m),n?.();}),d.on("connect_error",m=>{console.error("Socket connection error:",m),a?.(m);}),()=>{d.disconnect();}},[e,t,r,o,n,a]);let i=useCallback((d,m)=>{s.current?.connected?s.current.emit(d,m):console.warn("Socket not connected. Event buffered or dropped:",d);},[]),c=useCallback((d,m)=>(s.current?.on(d,m),()=>{s.current?.off(d,m);}),[]);return {socket:s.current,emit:i,on:c,isConnected:s.current?.connected||false}}function TE(e,t){let{on:r,emit:o,isConnected:n}=Va({url:e,token:t});return useEffect(()=>{r("chats.set",a=>{je.setConversations(a);}),r("chats.upsert",a=>{a.forEach(s=>je.upsertConversation(s));}),r("chats.update",a=>{a.forEach(s=>{s.id&&je.upsertConversation(s);});}),r("messages.upsert",({chatId:a,messages:s})=>{s.forEach(i=>je.addMessage(a,i));}),r("messages.update",({chatId:a,messageId:s,status:i})=>{je.updateMessageStatus(a,s,i);}),r("presence.update",({userId:a,status:s})=>{je.setUserPresence(a,s);}),r("groups.update",a=>{a.forEach(s=>{je.upsertConversation({id:s.id,group:s});});});},[r]),{isConnected:n,emit:o}}function CE(e,t){let{emit:r}=Va({url:""});return {setPresence:n=>{r("presence.send",{chatId:e,userId:t,status:n});}}}function ME(){return {uploadMedia:async(t,r)=>({url:"...",thumbnail:"...",blurhash:"..."})}}function RE(e){return {search:r=>r?e.filter(o=>o.content.toLowerCase().includes(r.toLowerCase())):e}}function EE({itemCount:e,itemHeight:t,overscan:r=5,initialScrollTop:o=0,startAtBottom:n=false}){let[a,s]=useState(o),[i,c]=useState(0),d=useRef(null),m=useRef(false),u=useCallback(p=>typeof t=="function"?t(p):t,[t]);useLayoutEffect(()=>{if(d.current){let p=new ResizeObserver(b=>{for(let w of b)c(w.contentRect.height);});return p.observe(d.current),o>0&&(d.current.scrollTop=o),()=>p.disconnect()}},[o]);let f=useCallback(p=>{s(p.currentTarget.scrollTop);},[]),{visibleItems:g,totalHeight:x,startIndex:v}=useMemo(()=>{let p=0,b=[];for(let T=0;T<e;T++)b.push(p),p+=u(T);let w=0,y=0,N=e-1;for(;y<=N;){let T=Math.floor((y+N)/2),L=b[T];L!==void 0&&L<=a?(w=T,y=T+1):N=T-1;}w=Math.max(0,w-r);let C=[];for(let T=w;T<e;T++){let L=b[T];if(L===void 0||L>a+i+r*u(T))break;C.push({index:T,offsetTop:L,height:u(T)});}return {visibleItems:C,totalHeight:p,startIndex:w}},[a,i,e,u,r]);useLayoutEffect(()=>{if(n&&!m.current&&x>0&&d.current&&i>0){let p=d.current,b=x-i;b>0&&(p.scrollTop=b,s(b)),m.current=true;}},[x,i,n]);let h=useCallback((p,b="auto")=>{if(d.current){let w=0;for(let k=0;k<p;k++)w+=u(k);d.current.scrollTo({top:w,behavior:b});}},[u]);return {containerRef:d,visibleItems:g,totalHeight:x,startIndex:v,onScroll:f,scrollToIndex:h,scrollToBottom:(p="auto")=>{d.current&&d.current.scrollTo({top:d.current.scrollHeight,behavior:p});}}}function ui(){let[e,t]=useState({scrollX:0,scrollY:0,scrollProgressX:0,scrollProgressY:0}),r=useRef(false),o=useCallback(()=>{r.current||(window.requestAnimationFrame(()=>{let n=window.scrollX,a=window.scrollY,s=document.documentElement.scrollWidth-document.documentElement.clientWidth,i=document.documentElement.scrollHeight-document.documentElement.clientHeight;t({scrollX:n,scrollY:a,scrollProgressX:s>0?n/s:0,scrollProgressY:i>0?a/i:0}),r.current=false;}),r.current=true);},[]);return useEffect(()=>(window.addEventListener("scroll",o,{passive:true}),o(),()=>window.removeEventListener("scroll",o)),[o]),e}function BE({className:e,color:t="bg-blue-500",height:r=2,position:o="top",...n}){let{scrollProgressY:a}=ui();return jsx("div",{className:l("fixed left-0 right-0 z-[100] w-full pointer-events-none",o==="top"?"top-0":"bottom-0",e),style:{height:r},...n,children:jsx("div",{className:l("h-full transition-all duration-75 ease-out",t),style:{width:`${a*100}%`,boxShadow:a>0?`0 0 10px ${t.replace("bg-","var(--")}`:"none"}})})}var mg=we__default.forwardRef(({orientation:e="horizontal",className:t,...r},o)=>jsx("hr",{ref:o,className:l("border-0 bg-gray-200 dark:bg-white/10",{"h-px w-full":e==="horizontal","h-full w-px":e==="vertical"},t),...r}));mg.displayName="Divider";var fg=we__default.forwardRef(({children:e,className:t,...r},o)=>jsx("kbd",{ref:o,className:l("rounded-lg border border-gray-200 dark:border-white/10 bg-gray-100 dark:bg-white/[0.03] px-2 py-1 text-[11px] font-semibold text-gray-500 dark:text-white/65",t),...r,children:e}));fg.displayName="Kbd";var vg={theme:"system",setTheme:()=>null},gi=createContext(vg);function GE({children:e,defaultTheme:t="system",storageKey:r="vite-ui-theme",...o}){let[n,a]=useState(t);useEffect(()=>{let i=localStorage.getItem(r);i&&a(i);},[r]),useEffect(()=>{let i=window.document.documentElement;if(i.classList.remove("light","dark"),n==="system"){let c=window.matchMedia("(prefers-color-scheme: dark)"),d=()=>{i.classList.remove("light","dark"),i.classList.add(c.matches?"dark":"light");};return d(),c.addEventListener("change",d),()=>c.removeEventListener("change",d)}i.classList.add(n);},[n]);let s={theme:n,setTheme:i=>{localStorage.setItem(r,i),a(i);}};return jsx(gi.Provider,{...o,value:s,children:e})}var hi=()=>{let e=useContext(gi);if(e===void 0)throw new Error("useTheme must be used within a ThemeProvider");return e};function rS({className:e}){let{setTheme:t,theme:r}=hi();return jsxs(R,{variant:"ghost",size:"icon",className:l("h-9 w-9",e),onClick:()=>t(r==="light"?"dark":"light"),children:[jsx(Sun,{className:"h-[1.2rem] w-[1.2rem] rotate-0 scale-100 transition-all dark:-rotate-90 dark:scale-0"}),jsx(Moon,{className:"absolute h-[1.2rem] w-[1.2rem] rotate-90 scale-0 transition-all dark:rotate-0 dark:scale-100"}),jsx("span",{className:"sr-only",children:"Toggle theme"})]})}function Mg(e,t=true){let[r,o]=useState({data:null,error:null,isLoading:false}),n=useCallback(async()=>{o({data:null,error:null,isLoading:true});try{let a=await e();return o({data:a,error:null,isLoading:!1}),a}catch(a){throw o({data:null,error:a,isLoading:false}),a}},[e]);return useEffect(()=>{t&&n();},[n,t]),{...r,execute:n}}function sS(e,t){let r=useCallback(()=>fetch(e,t).then(o=>o.json()),[e,t]);return Mg(r)}function cS({initialMessages:e=[],onSendMessage:t,scrollThreshold:r=100}={}){let[o,n]=useState(e),[a,s]=useState(false),[i,c]=useState(false),d=useRef(null),m=useRef(true),u=useCallback((v="smooth")=>{d.current&&d.current.scrollTo({top:d.current.scrollHeight,behavior:v});},[]),f=useCallback(()=>{if(d.current){let{scrollTop:v,scrollHeight:h,clientHeight:p}=d.current;m.current=h-v-p<r;}},[r]);useEffect(()=>{m.current&&u();},[o,u]);let g=useCallback(async(v,h)=>{if(!v.trim())return;let p=crypto.randomUUID(),b={id:p,content:v,senderId:h,timestamp:new Date,status:"sending"};n(w=>[...w,b]);try{t&&await t(v),n(w=>w.map(k=>k.id===p?{...k,status:"sent"}:k));}catch{n(k=>k.map(y=>y.id===p?{...y,status:"error"}:y));}},[t]),x=useCallback(()=>{n([]);},[]);return {messages:o,setMessages:n,sendMessage:g,clearMessages:x,isTyping:a,setIsTyping:s,isLoading:i,setIsLoading:c,scrollRef:d,handleScroll:f,scrollToBottom:u}}function pS(e=[]){let[t,r]=useState(e),o=useCallback(d=>{r(m=>[...m,d]);},[]),n=useCallback((d,m)=>{r(u=>u.map(f=>f.id===d?{...f,status:m}:f));},[]),a=useCallback(d=>{r(m=>m.filter(u=>u.id!==d));},[]),s=useCallback((d,m)=>{r(u=>u.map(f=>f.id===d?{...f,content:m,isEdited:true}:f));},[]),i=useCallback((d,m,u)=>{r(f=>f.map(g=>{if(g.id!==d)return g;let x={...g.reactions||{}},v=x[m]||[];return v.includes(u)?(x[m]=v.filter(h=>h!==u),x[m].length===0&&delete x[m]):x[m]=[...v,u],{...g,reactions:x}}));},[]),c=useCallback(()=>{r([]);},[]);return {messages:t,setMessages:r,addMessage:o,updateMessageStatus:n,deleteMessage:a,editMessage:s,addReaction:i,clearMessages:c}}function hS(e){let[t,r]=useState(""),o=useMemo(()=>{if(!t.trim())return [];let n=t.toLowerCase();return e.filter(a=>a.content.toLowerCase().includes(n))},[e,t]);return {query:t,setQuery:r,results:o}}function vS(e){let t=useRef(null);return useEffect(()=>{let r=o=>{let n=t.current;!n||n.contains(o?.target||null)||e(o);};return document.addEventListener("mousedown",r),document.addEventListener("touchstart",r),()=>{document.removeEventListener("mousedown",r),document.removeEventListener("touchstart",r);}},[e]),t}function kS({timeout:e=2e3}={}){let[t,r]=useState(false),[o,n]=useState(null);return {copy:useCallback(async s=>{if(!navigator?.clipboard){n(new Error("Clipboard API not supported"));return}try{await navigator.clipboard.writeText(s),r(!0),setTimeout(()=>r(!1),e);}catch(i){n(i instanceof Error?i:new Error("Failed to copy"));}},[e]),copied:t,error:o}}function CS(e,t){let[r,o]=useState(e);return useEffect(()=>{let n=setTimeout(()=>{o(e);},t);return ()=>{clearTimeout(n);}},[e,t]),r}function LS(e){let[t,r]=useState(false),[o,n]=useState({x:0,y:0}),a=useRef({x:0,y:0}),s=useRef({x:0,y:0}),i=useRef(Date.now()),c=useRef({x:0,y:0}),d=useCallback((f,g)=>{r(true),a.current={x:f-o.x,y:g-o.y},s.current={x:f,y:g},i.current=Date.now();},[o]),m=useCallback((f,g)=>{if(!t)return;let x=f-a.current.x,v=g-a.current.y,h=Date.now(),p=h-i.current;p>0&&(c.current={x:(f-s.current.x)/p,y:(g-s.current.y)/p}),n({x,y:v}),s.current={x:f,y:g},i.current=h,e?.({isDragging:true,offset:{x,y:v},velocity:c.current});},[t,e]),u=useCallback(()=>{r(false),e?.({isDragging:false,offset:o,velocity:c.current});},[o,e]);return useEffect(()=>{let f=h=>m(h.clientX,h.clientY),g=h=>{h.touches[0]&&m(h.touches[0].clientX,h.touches[0].clientY);},x=()=>u(),v=()=>u();return t&&(window.addEventListener("mousemove",f),window.addEventListener("mouseup",x),window.addEventListener("touchmove",g),window.addEventListener("touchend",v)),()=>{window.removeEventListener("mousemove",f),window.removeEventListener("mouseup",x),window.removeEventListener("touchmove",g),window.removeEventListener("touchend",v);}},[t,m,u]),{isDragging:t,offset:o,dragProps:{onMouseDown:f=>d(f.clientX,f.clientY),onTouchStart:f=>{f.touches[0]&&d(f.touches[0].clientX,f.touches[0].clientY);},style:{cursor:t?"grabbing":"grab",touchAction:"none"}}}}function SS(e){let[t,r]=useState({progress:0,scrollY:0,isIntersecting:false}),o=useRef(false);return useEffect(()=>{let n=e.current;if(!n)return;let a=()=>{o.current||(window.requestAnimationFrame(()=>{let s=n.getBoundingClientRect(),i=window.innerHeight,c=i+s.height,d=i-s.top,m=Math.max(0,Math.min(1,d/c));r({progress:m,scrollY:window.scrollY,isIntersecting:s.top<i&&s.bottom>0}),o.current=false;}),o.current=true);};return window.addEventListener("scroll",a,{passive:true}),window.addEventListener("resize",a),a(),()=>{window.removeEventListener("scroll",a),window.removeEventListener("resize",a);}},[e]),t}function IS(e,t){let r=useRef(null);return useLayoutEffect(()=>{let o=document.querySelector(`[data-flip-id="${e}"]`);if(!o)return;let n=r.current,a=o.getBoundingClientRect();if(n){let s=n.left-a.left,i=n.top-a.top,c=n.width/a.width,d=n.height/a.height;(Math.abs(s)>.5||Math.abs(i)>.5||Math.abs(c-1)>.01||Math.abs(d-1)>.01)&&o.animate([{transformOrigin:"top left",transform:`translate(${s}px, ${i}px) scale(${c}, ${d})`},{transformOrigin:"top left",transform:"none"}],{duration:400,easing:"cubic-bezier(0.2, 0.8, 0.2, 1)"});}r.current=a;},t),{"data-flip-id":e}}function OS({initialValues:e,onSubmit:t}){let[r,o]=useState(e),[n,a]=useState({}),[s,i]=useState(false),c=useCallback(u=>{let{name:f,value:g,type:x}=u.target,v=x==="checkbox"?u.target.checked:g;o(h=>({...h,[f]:v})),n[f]&&a(h=>({...h,[f]:""}));},[n]),d=useCallback(async u=>{u.preventDefault();let f=u.currentTarget;if(!f.checkValidity()){let g={};Array.from(f.elements).forEach(x=>{let v=x;v.name&&!v.validity.valid&&(g[v.name]=v.validationMessage);}),a(g);return}i(true);try{await t(r);}finally{i(false);}},[r,t]),m=useCallback(u=>({name:u,value:r[u],onChange:c,error:n[u]}),[r,n,c]);return {values:r,errors:n,isSubmitting:s,handleChange:c,handleSubmit:d,register:m,setValues:o,setErrors:a}}function $S(e){let[t,r]=useState({past:[],present:e,future:[]}),o=t.past.length>0,n=t.future.length>0,a=useCallback(()=>{o&&r(d=>{let m=d.past[d.past.length-1];return m===void 0?d:{past:d.past.slice(0,d.past.length-1),present:m,future:[d.present,...d.future]}});},[o]),s=useCallback(()=>{n&&r(d=>{let m=d.future[0];if(m===void 0)return d;let u=d.future.slice(1);return {past:[...d.past,d.present],present:m,future:u}});},[n]),i=useCallback(d=>{r(m=>{let u=typeof d=="function"?d(m.present):d;return m.present===u?m:{past:[...m.past,m.present],present:u,future:[]}});},[]),c=useCallback(()=>{r({past:[],present:e,future:[]});},[e]);return {state:t.present,set:i,undo:a,redo:s,clear:c,canUndo:o,canRedo:n,history:t}}function WS(e=3e3){let[t,r]=useState(false),o=useRef();return useEffect(()=>{let n=()=>{r(false),o.current&&clearTimeout(o.current),o.current=setTimeout(()=>{r(true);},e);},a=["mousemove","mousedown","keydown","touchstart","scroll"];return a.forEach(s=>{window.addEventListener(s,n);}),n(),()=>{a.forEach(s=>{window.removeEventListener(s,n);}),o.current&&clearTimeout(o.current);}},[e]),t}function XS({onLoadMore:e,isLoading:t,hasMore:r,threshold:o=100,root:n=null}){let a=useRef(null),s=useRef(null),i=useCallback(c=>{let d=c[0];d&&d.isIntersecting&&r&&!t&&e();},[r,t,e]);return useEffect(()=>{let c=s.current;if(c)return a.current=new IntersectionObserver(i,{root:n,rootMargin:`0px 0px ${o}px 0px`,threshold:.1}),a.current.observe(c),()=>{a.current&&a.current.disconnect();}},[i,n,o]),s}function QS(e,{threshold:t=0,root:r=null,rootMargin:o="0%",freezeOnceVisible:n=false}={}){let[a,s]=useState(),i=a?.isIntersecting&&n,c=([d])=>{s(d);};return useEffect(()=>{let d=e?.current;if(!!!window.IntersectionObserver||i||!d)return;let u={threshold:t,root:r,rootMargin:o},f=new IntersectionObserver(c,u);return f.observe(d),()=>f.disconnect()},[e,t,r,o,i]),a}function eD(e){let[t,r]=useState(e),o=useCallback((i,c,d,m)=>{r(u=>{let f=u.columns[c],g=u.columns[d],x=u.tasks[i];if(!f||!g||!x)return u;let v=Array.from(f.taskIds);v.splice(v.indexOf(i),1);let h={...f,taskIds:v},p=c===d?v:Array.from(g.taskIds);p.splice(m,0,i);let b={...g,taskIds:p};return {...u,columns:{...u.columns,[c]:h,[d]:b},tasks:{...u.tasks,[i]:{...x,columnId:d}}}});},[]),n=useCallback((i,c)=>{r(d=>{let m=Array.from(d.columnOrder);return m.splice(m.indexOf(i),1),m.splice(c,0,i),{...d,columnOrder:m}});},[]),a=useCallback((i,c)=>{r(d=>{let m=d.columns[i];if(!m)return d;let u={...m,taskIds:[...m.taskIds,c.id]};return {...d,tasks:{...d.tasks,[c.id]:c},columns:{...d.columns,[i]:u}}});},[]),s=useCallback(i=>{r(c=>{let d=c.tasks[i];if(!d)return c;let m=c.columns[d.columnId];if(!m)return c;let u={...c.tasks};delete u[i];let f={...m,taskIds:m.taskIds.filter(g=>g!==i)};return {...c,tasks:u,columns:{...c.columns,[d.columnId]:f}}});},[]);return {board:t,setBoard:r,moveTask:o,moveColumn:n,addTask:a,removeTask:s}}function oD(e){let t=useRef(e);t.current=e,useEffect(()=>{let r=o=>{let n=[];(o.ctrlKey||o.metaKey)&&n.push("mod"),o.shiftKey&&n.push("shift"),o.altKey&&n.push("alt");let s=o.key.toLowerCase();["control","meta","shift","alt"].includes(s)||n.push(s);let i=n.join("+"),c=t.current[i]||t.current[s];c&&c(o);};return window.addEventListener("keydown",r),()=>window.removeEventListener("keydown",r)},[]);}function sD(e){let t=useRef(false);useEffect(()=>{t.current||(t.current=true,e());},[]);}function iD(e){useEffect(()=>()=>{e();},[]);}function mD(e,t){let[r,o]=useState(()=>{if(typeof window>"u")return t;try{let a=window.localStorage.getItem(e);return a?JSON.parse(a):t}catch(a){return console.warn(`Error reading localStorage key "${e}":`,a),t}}),n=useCallback(a=>{try{let s=a instanceof Function?a(r):a;o(s),typeof window<"u"&&window.localStorage.setItem(e,JSON.stringify(s));}catch(s){console.warn(`Error setting localStorage key "${e}":`,s);}},[e,r]);return [r,n]}function fD(e){let[t,r]=useState({x:0,y:0,elementX:0,elementY:0,percentageX:0,percentageY:0}),o=useRef(),n=useRef({x:0,y:0});return useEffect(()=>{let a=i=>{n.current={x:i.clientX,y:i.clientY},o.current||(o.current=requestAnimationFrame(s));},s=()=>{let{x:i,y:c}=n.current,d=0,m=0,u=0,f=0;if(e?.current){let g=e.current.getBoundingClientRect();d=i-g.left,m=c-g.top,u=Math.max(0,Math.min(100,d/g.width*100)),f=Math.max(0,Math.min(100,m/g.height*100));}r({x:i,y:c,elementX:d,elementY:m,percentageX:u,percentageY:f}),o.current=void 0;};return window.addEventListener("mousemove",a),()=>{window.removeEventListener("mousemove",a),o.current&&cancelAnimationFrame(o.current);}},[e]),t}function bD(){let[e,t]=useState({alpha:null,beta:null,gamma:null,absolute:false});return useEffect(()=>{let r=o=>{t({alpha:o.alpha,beta:o.beta,gamma:o.gamma,absolute:o.absolute});};return typeof window<"u"&&"DeviceOrientationEvent"in window&&window.addEventListener("deviceorientation",r),()=>{window.removeEventListener("deviceorientation",r);}},[]),e}function wD(e){let t=useRef();return useEffect(()=>{t.current=e;},[e]),t.current}function ND(e){let t=useRef(null),r=useCallback((o,n,a)=>{!o||a||!t.current||(o.dataset.messageId=n,t.current.observe(o));},[]);return useEffect(()=>(t.current=new IntersectionObserver(o=>{o.forEach(n=>{if(n.isIntersecting){let a=n.target.dataset.messageId;a&&(e(a),t.current?.unobserve(n.target));}});},{threshold:.5}),()=>{t.current?.disconnect();}),[e]),{registerMessage:r}}function MD(){let[e,t]=useState(false);return useEffect(()=>{let r=window.matchMedia("(prefers-reduced-motion: reduce)");t(r.matches);let o=n=>{t(n.matches);};return r.addEventListener("change",o),()=>r.removeEventListener("change",o)},[]),e}var gh={sm:640,md:768,lg:1024,xl:1280,"2xl":1536};function hh(e){let[t,r]=useState(false);return useEffect(()=>{let o=window.matchMedia(e);r(o.matches);let n=()=>r(o.matches);return o.addEventListener("change",n),()=>o.removeEventListener("change",n)},[e]),t}function PD(e){return hh(`(min-width: ${gh[e]}px)`)}function ED(e){let[t,r]=useState({width:0,height:0});return useLayoutEffect(()=>{if(!e.current)return;let o=new ResizeObserver(n=>{for(let a of n)r({width:a.contentRect.width,height:a.contentRect.height});});return o.observe(e.current),()=>o.disconnect()},[e]),t}function HD(e=10){let[t,r]=useState(null),o=useRef(0);return useEffect(()=>{let n=()=>{let s=window.scrollY;if(Math.abs(s-o.current)<e)return;let i=s>o.current?"down":"up";i!==t&&(s>0||i==="down")&&r(i),o.current=s>0?s:0;},a=()=>{window.requestAnimationFrame(n);};return window.addEventListener("scroll",a),()=>window.removeEventListener("scroll",a)},[t,e]),t}function BD(e=true){useLayoutEffect(()=>{if(!e)return;let t=window.getComputedStyle(document.body).overflow,r=window.getComputedStyle(document.body).paddingRight,o=window.innerWidth-document.documentElement.clientWidth;return document.body.style.overflow="hidden",o>0&&(document.body.style.paddingRight=`${parseFloat(r)+o}px`),()=>{document.body.style.overflow=t,document.body.style.paddingRight=r;}},[e]);}function yh(e,t,r){let[o,n]=t,[a,s]=r,i=(e-o)/(n-o),c=Math.max(0,Math.min(1,i));return a+c*(s-a)}function VD(e,t,r){return yh(e,t,r)}function $D(){let[e,t]=useState(0),r=useRef(0),o=useRef(Date.now()),n=useRef();return useEffect(()=>{let a=()=>{let i=window.scrollY,c=Date.now(),d=c-o.current;if(d>0){let u=(i-r.current)/d;t(u);}r.current=i,o.current=c,n.current&&cancelAnimationFrame(n.current),n.current=requestAnimationFrame(s);},s=()=>{t(i=>Math.abs(i)<.01?0:i*.9),n.current=requestAnimationFrame(s);};return window.addEventListener("scroll",a,{passive:true}),()=>{window.removeEventListener("scroll",a),n.current&&cancelAnimationFrame(n.current);}},[]),e}function Ch(e,t){let r=e.toLowerCase().replace(/\s/g,""),o=t.toLowerCase(),n=0;for(let a=0;a<o.length&&n<r.length;a++)o[a]===r[n]&&n++;return n===r.length}function WD(e,t,r){return useMemo(()=>t.trim()?e.filter(o=>r.some(n=>{let a=o[n];return a==null?false:Ch(t,String(a))})):e,[e,t,r])}function XD(e,t){let r=useCallback(()=>{if(typeof window>"u")return t;try{let s=window.sessionStorage.getItem(e);return s?JSON.parse(s):t}catch(s){return console.warn(`Error reading sessionStorage key "${e}":`,s),t}},[t,e]),[o,n]=useState(r),a=useCallback(s=>{try{let i=s instanceof Function?s(o):s;n(i),typeof window<"u"&&window.sessionStorage.setItem(e,JSON.stringify(i));}catch(i){console.warn(`Error setting sessionStorage key "${e}":`,i);}},[e,o]);return useEffect(()=>{n(r());},[r]),[o,a]}function jD(e,t={}){let{stiffness:r=.15,damping:o=.8,mass:n=1,precision:a=.01}=t,[s,i]=useState(e),c=useRef(0),d=useRef(e),m=useRef();return useEffect(()=>{let u=()=>{let f=e-d.current,x=f*r/n;if(c.current=(c.current+x)*o,d.current+=c.current,Math.abs(f)<a&&Math.abs(c.current)<a){d.current=e,i(e),m.current=void 0;return}i(d.current),m.current=requestAnimationFrame(u);};return m.current&&cancelAnimationFrame(m.current),m.current=requestAnimationFrame(u),()=>{m.current&&cancelAnimationFrame(m.current);}},[e,r,o,n,a]),s}function JD(e,t=100,r=0){return r+e*t}function ZD(e,t=100){return Array.from({length:e},(r,o)=>o*t)}var Mi="01XYZ#%&@$+-/<>!_";function rH(e,t=800,r=true){let[o,n]=useState(e),a=useRef();return useEffect(()=>{if(!r){n(e);return}let s=Date.now(),i=()=>{let c=Date.now()-s,d=Math.min(c/t,1),m=e.split("").map((u,f)=>u===" "?" ":d>f/e.length?u:Mi[Math.floor(Math.random()*Mi.length)]).join("");n(m),d<1&&(a.current=requestAnimationFrame(i));};return a.current=requestAnimationFrame(i),()=>{a.current&&cancelAnimationFrame(a.current);}},[e,t,r]),o}function nH(e,t){let[r,o]=useState(e),n=useRef(Date.now());return useEffect(()=>{let a=setTimeout(()=>{Date.now()-n.current>=t&&(o(e),n.current=Date.now());},t-(Date.now()-n.current));return ()=>{clearTimeout(a);}},[e,t]),r}function lH(e=0){let[t,r]=useState(e),[o,n]=useState(false),a=useRef(null),s=useCallback(()=>{o||(n(true),a.current=setInterval(()=>{r(m=>m+1);},1e3));},[o]),i=useCallback(()=>{o&&a.current&&(clearInterval(a.current),n(false));},[o]),c=useCallback(()=>{a.current&&clearInterval(a.current),n(false),r(0);},[]);return useEffect(()=>()=>{a.current&&clearInterval(a.current);},[]),{seconds:t,isActive:o,start:s,pause:i,reset:c,formattedTime:(m=>{let u=Math.floor(m/3600),f=Math.floor(m%3600/60),g=m%60;return [u,f,g].map(x=>x<10?"0"+x:x).filter((x,v)=>x!=="00"||v>0).join(":")})(t)}}function uH(){let e=useContext(Ko);if(!e)throw new Error("useToast must be used within a ToastProvider");return e}function gH(e=false){let[t,r]=useState(e),o=useCallback(()=>{r(n=>!n);},[]);return [t,o,r]}function xH(e=3e3){let[t,r]=useState(false),o=useRef(null),n=useCallback(a=>{r(a),o.current&&clearTimeout(o.current),a&&(o.current=window.setTimeout(()=>{r(false);},e));},[e]);return useEffect(()=>()=>{o.current&&clearTimeout(o.current);},[]),{isTyping:t,setTyping:n}}function yH(){return {startTransition:t=>{if(!document.startViewTransition){t();return}document.startViewTransition(()=>{flushSync(()=>{t();});});}}}function NH(e,t={month:"short",day:"numeric",year:"numeric"}){let r=new Date(e);return new Intl.DateTimeFormat("en-US",t).format(r)}function TH(e){return new Intl.NumberFormat("en-US").format(e)}function CH(e,t="USD"){return new Intl.NumberFormat("en-US",{style:"currency",currency:t}).format(e)}function RH(e,t){return e.length<=t?e:e.slice(0,t)+"..."}function LH(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}
|
|
70
70
|
export{af as AIPromptInput,bf as AIResponse,gk as Accordion,xk as AccordionContent,hk as AccordionItem,bk as AccordionTrigger,Yc as Alert,dC as AreaChart,ns as AssigneePicker,Ws as AudioPlayer,z as Avatar,Up as Background,ze as Badge,nC as BarChart,lp as Breadcrumb,fp as BreadcrumbEllipsis,dp as BreadcrumbItem,mp as BreadcrumbLink,cp as BreadcrumbList,up as BreadcrumbPage,pp as BreadcrumbSeparator,R as Button,jr as Calendar,ji as Card,el as CardContent,Zi as CardDescription,tl as CardFooter,Qi as CardHeader,Ji as CardTitle,Gs as CarouselMessage,j5 as ChartContainer,Q5 as ChartGrid,eC as ChartSkeleton,Z5 as ChartTooltip,J5 as ChartXAxis,AC as ChartYAxis,vP as ChatBanner,P4 as ChatHeader,qL as ChatInput,f4 as ChatLayout,nP as ChatProfile,N4 as ChatSidebar,Po as Checkbox,ts as Checklist,Y5 as Collapse,Qv as ColorPicker,Fn as ColumnLimit,Io as Combobox,zx as ComboboxContent,hn as ComboboxEmpty,fn as ComboboxInput,bn as ComboboxItem,gn as ComboboxList,Vx as ComboboxTrigger,Xn as Command,n1 as CommandDialog,s1 as CommandEmpty,jn as CommandGroup,qn as CommandInput,Qn as CommandItem,Gn as CommandList,i1 as CommandShortcut,qM as ConfirmDialog,Ap as Container,Hk as DataTable,sv as DatePicker,TP as DateSeparator,wv as DateTimePicker,tR as Dialog,nR as DialogDescription,oR as DialogFooter,rR as DialogHeader,aR as DialogTitle,mg as Divider,fR as Drawer,xR as DrawerDescription,hR as DrawerFooter,gR as DrawerHeader,bR as DrawerTitle,at as DropdownMenu,st as DropdownMenuContent,K as DropdownMenuItem,Bs as DropdownMenuLabel,xa as DropdownMenuSeparator,nt as DropdownMenuTrigger,is as DueDatePicker,ZP as EmojiPicker,jc as EmptyState,vc as FileDropzone,mc as FormControl,uc as FormDescription,cc as FormItem,dc as FormLabel,pc as FormMessage,zi as GlowButton,$p as Grid,zP as GroupHeader,Je as Heading,gl as HeroText,qo as Image,qs as InteractiveMessage,vu as Kanban,vu as KanbanBoard,_n as KanbanCalendarView,Qo as KanbanCard,Jo as KanbanColumn,Zn as KanbanFilterBar,Kn as KanbanHeader,ro as KanbanListView,TT as KanbanQuickAdd,ms as KanbanSwimlane,Yn as KanbanTableView,ds as KanbanTaskModal,Wn as KanbanTimelineView,fg as Kbd,X as Label,as as LabelPicker,hl as LetterPullup,gC as LineChart,Xs as LinkPreview,Ky as Magnetic,M5 as Marquee,YP as MentionList,Js as MessageBubble,CL as MessageList,lE as MessageSearch,Yi as MetricCard,oo as Modal,S1 as ModalDescription,no as ModalFooter,ao as ModalHeader,es as ModalTitle,Hn as Motion,ky as MotionGroup,lM as Navbar,Dc as NumberInput,Xy as NumberTicker,Mc as OTPInput,LP as OnlineIndicator,Jy as PageLoader,ak as PageTransition,hp as Pagination,bp as PaginationContent,yp as PaginationEllipsis,xp as PaginationItem,va as PaginationLink,wp as PaginationNext,vp as PaginationPrevious,Hy as Parallax,Jl as PasswordInput,kC as PieChart,Ze as Popover,tt as PopoverContent,et as PopoverTrigger,Hi as PrimaryButton,Xc as Progress,RC as RadarChart,ic as RadioGroup,lc as RadioGroupItem,rd as Rating,_s as ReadReceipt,fP as ReplyPreview,en as Reveal,it as ScrollArea,BE as ScrollProgress,Yr as Select,Sr as Separator,dl as ShinyText,GC as Sidebar,QC as SidebarContent,JC as SidebarFooter,eM as SidebarGroup,jC as SidebarHeader,ZC as SidebarItem,Sn as Skeleton,SM as SkipToContent,Yx as Slider,SC as Sparkline,jR as Spotlight,Vp as Stack,Hu as StatusDot,KM as Stepper,BT as SubtaskList,ne as Surface,Eo as Switch,DP as SystemMessage,wr as Table,kr as TableBody,We as TableCell,rt as TableHead,yr as TableHeader,dt as TableRow,$C as Tabs,WC as TabsContent,FC as TabsList,UC as TabsTrigger,_v as TagInput,$T as TaskActivity,os as TaskAttachments,rs as TaskComments,Lu as Terminal,k5 as TerminalLine,ve as Text,il as TextGradient,kt as TextInput,Ry as TextMotion,hr as Textarea,GE as ThemeProvider,rS as ThemeToggle,cs as TimeTracker,Qk as Timeline,Ud as TimelineItem,Pn as Toast,Ko as ToastContext,Fw as ToastProvider,Oc as ToggleGroup,MR as Tooltip,aN as Tree,cP as TypingIndicator,NM as UserMenu,zd as UserPreview,ti as VoiceRecorder,je as chatStore,l as cn,CH as formatCurrency,NH as formatDate,TH as formatNumber,Qt as normalize,LH as slugify,RH as truncate,fE as useActiveChat,Mg as useAsync,TE as useBaileysSync,PD as useBreakpoint,Me as useChart,cS as useChat,ME as useChatMedia,pS as useChatMessages,CE as useChatPresence,hS as useChatSearch,RE as useChatSearchWorker,ko as useChatStore,vS as useClickOutside,kS as useClipboard,ED as useContainerQuery,uE as useConversations,CS as useDebounce,LS as useDrag,SS as useElementScroll,sS as useFetch,IS as useFlip,Kt as useFloating,OS as useForm,$S as useHistory,WS as useIdle,Fe as useInView,XS as useInfiniteScroll,QS as useIntersection,eD as useKanban,fs as useKanbanFilters,DT as useKanbanHistory,hs as useKanbanKeyboard,PT as useKanbanSync,gs as useKanbanUndo,oD as useKeyboardShortcuts,mD as useLocalStorage,hh as useMediaQuery,pE as useMessages,fD as useMousePosition,sD as useOnMount,iD as useOnUnmount,bD as useOrientation,wD as usePrevious,ND as useReadReceipts,MD as useReducedMotion,ui as useScroll,HD as useScrollDirection,BD as useScrollLock,VD as useScrollTransform,$D as useScrollVelocity,WD as useSearch,ZD as useSequence,XD as useSessionStorage,Va as useSocket,jD as useSpring,JD as useStagger,rH as useTextScramble,hi as useTheme,nH as useThrottle,lH as useTimer,uH as useToast,gH as useToggle,xH as useTypingIndicator,gE as useUserPresence,yH as useViewTransition,EE as useVirtualList,ei as useVoiceRecorder};//# sourceMappingURL=index.mjs.map
|
|
71
71
|
//# sourceMappingURL=index.mjs.map
|