@townco/gui-template 0.1.30 → 0.1.32

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.
@@ -1 +1 @@
1
- import{n as h,a as p,s as e,o,r as a,u as t,b as l,l as n,c as s,d as m}from"./vendor-Ccy0WTO1.js";const Qe=1,x=h(),C=p(),w=e(),q=o({_meta:a(t()).optional(),content:e(),path:e(),sessionId:e()}),f=o({_meta:a(t()).optional(),limit:p().optional().nullable(),line:p().optional().nullable(),path:e(),sessionId:e()}),M=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),k=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),v=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),O=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),F=a(t()),U=l([n("assistant"),n("user")]),z=o({_meta:a(t()).optional(),mimeType:e().optional().nullable(),text:e(),uri:e()}),N=o({_meta:a(t()).optional(),blob:e(),mimeType:e().optional().nullable(),uri:e()}),b=l([n("read"),n("edit"),n("delete"),n("move"),n("search"),n("execute"),n("think"),n("fetch"),n("switch_mode"),n("other")]),_=l([n("pending"),n("in_progress"),n("completed"),n("failed")]),S=o({code:p(),data:a(t()).optional(),message:e()}),E=o({_meta:a(t()).optional()}),P=o({_meta:t().optional()}),V=o({_meta:a(t()).optional(),stopReason:l([n("end_turn"),n("max_tokens"),n("max_turn_requests"),n("refusal"),n("cancelled")])}),j=o({_meta:a(t()).optional()}),L=a(t()),B=e(),H=a(t()),K=o({hint:e()}),A=h(),D=p(),G=e(),J=o({_meta:a(t()).optional(),methodId:e()}),Q=o({_meta:a(t()).optional(),modeId:e(),sessionId:e()}),W=o({_meta:a(t()).optional(),modelId:e(),sessionId:e()}),X=a(t()),d=o({_meta:a(t()).optional(),name:e(),value:e()}),i=o({_meta:a(t()).optional(),audience:s(U).optional().nullable(),lastModified:e().optional().nullable(),priority:p().optional().nullable()}),c=l([z,N]),Y=o({_meta:a(t()).optional()}),Z=o({_meta:a(t()).optional(),content:e()}),$=o({_meta:a(t()).optional(),outcome:l([o({outcome:n("cancelled")}),o({optionId:e(),outcome:n("selected")})])}),ee=o({_meta:a(t()).optional(),terminalId:e()}),oe=o({_meta:a(t()).optional()}),te=o({_meta:a(t()).optional(),exitCode:p().optional().nullable(),signal:e().optional().nullable()}),ae=o({_meta:a(t()).optional()}),ne=a(t()),le=o({_meta:a(t()).optional(),sessionId:e()}),ie=a(t()),se=o({_meta:a(t()).optional(),kind:l([n("allow_once"),n("allow_always"),n("reject_once"),n("reject_always")]),name:e(),optionId:e()}),u=l([o({content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),type:n("content")}),o({_meta:a(t()).optional(),newText:e(),oldText:e().optional().nullable(),path:e(),type:n("diff")}),o({terminalId:e(),type:n("terminal")})]),r=o({_meta:a(t()).optional(),line:p().optional().nullable(),path:e()}),y=o({_meta:a(t()).optional(),name:e(),value:e()}),R=o({name:e(),title:e().optional().nullable(),version:e()}),pe=o({_meta:a(t()).optional(),description:e().optional().nullable(),id:e(),name:e()}),me=o({_meta:a(t()).optional(),http:m().optional(),sse:m().optional()}),ce=o({_meta:a(t()).optional(),audio:m().optional(),embeddedContext:m().optional(),image:m().optional()}),ue=o({_meta:a(t()).optional(),description:e().optional().nullable(),modelId:e(),name:e()}),re=o({_meta:a(t()).optional(),description:e().optional().nullable(),id:B,name:e()}),T=o({_meta:a(t()).optional(),availableModels:s(ue),currentModelId:e()}),I=o({_meta:a(t()).optional(),availableModes:s(re),currentModeId:e()}),de=o({_meta:a(t()).optional(),content:e(),priority:l([n("high"),n("medium"),n("low")]),status:l([n("pending"),n("in_progress"),n("completed")])}),he=K,be=o({_meta:a(t()).optional(),readTextFile:m().optional(),writeTextFile:m().optional()}),_e=o({args:s(e()),command:e(),env:s(y),name:e()}),g=l([o({headers:s(d),name:e(),type:n("http"),url:e()}),o({headers:s(d),name:e(),type:n("sse"),url:e()}),_e]),Se=l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),ye=o({_meta:a(t()).optional(),exitCode:p().optional().nullable(),signal:e().optional().nullable()}),Re=l([le,ie]),Te=o({_meta:a(t()).optional(),options:s(se),sessionId:e(),toolCall:o({_meta:a(t()).optional(),content:s(u).optional().nullable(),kind:b.optional().nullable(),locations:s(r).optional().nullable(),rawInput:a(t()).optional(),rawOutput:a(t()).optional(),status:_.optional().nullable(),title:e().optional().nullable(),toolCallId:e()})}),Ie=o({_meta:a(t()).optional(),args:s(e()).optional(),command:e(),cwd:e().optional().nullable(),env:s(y).optional(),outputByteLimit:p().optional().nullable(),sessionId:e()}),ge=o({_meta:a(t()).optional(),models:T.optional().nullable(),modes:I.optional().nullable(),sessionId:e()}),xe=o({_meta:a(t()).optional(),models:T.optional().nullable(),modes:I.optional().nullable()}),Ce=o({method:e(),params:Re.optional().nullable()}),we=o({_meta:a(t()).optional(),cwd:e(),mcpServers:s(g)}),qe=o({_meta:a(t()).optional(),cwd:e(),mcpServers:s(g),sessionId:e()}),fe=o({_meta:a(t()).optional(),prompt:s(Se),sessionId:e()}),Me=o({_meta:a(t()).optional(),exitStatus:ye.optional().nullable(),output:e(),truncated:m()}),ke=l([q,f,Te,Ie,M,k,v,O,F]),ve=o({_meta:a(t()).optional(),loadSession:m().optional(),mcpCapabilities:me.optional(),promptCapabilities:ce.optional()}),Oe=o({_meta:a(t()).optional(),description:e(),input:he.optional().nullable(),name:e()}),Fe=o({_meta:a(t()).optional(),fs:be.optional(),terminal:m().optional()}),Ue=o({id:l([x,C,w]),method:e(),params:ke.optional().nullable()}),ze=o({_meta:a(t()).optional(),agentCapabilities:ve.optional(),agentInfo:R.optional().nullable(),authMethods:s(pe).optional(),protocolVersion:p()}),Ne=o({_meta:a(t()).optional(),sessionId:e(),update:l([o({_meta:a(t()).optional(),content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),sessionUpdate:n("user_message_chunk")}),o({_meta:a(t()).optional(),content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),sessionUpdate:n("agent_message_chunk")}),o({_meta:a(t()).optional(),content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),sessionUpdate:n("agent_thought_chunk")}),o({_meta:a(t()).optional(),content:s(u).optional(),kind:l([n("read"),n("edit"),n("delete"),n("move"),n("search"),n("execute"),n("think"),n("fetch"),n("switch_mode"),n("other")]).optional(),locations:s(r).optional(),rawInput:a(t()).optional(),rawOutput:a(t()).optional(),sessionUpdate:n("tool_call"),status:l([n("pending"),n("in_progress"),n("completed"),n("failed")]).optional(),title:e(),toolCallId:e()}),o({_meta:a(t()).optional(),content:s(u).optional().nullable(),kind:b.optional().nullable(),locations:s(r).optional().nullable(),rawInput:a(t()).optional(),rawOutput:a(t()).optional(),sessionUpdate:n("tool_call_update"),status:_.optional().nullable(),title:e().optional().nullable(),toolCallId:e()}),o({_meta:a(t()).optional(),entries:s(de),sessionUpdate:n("plan")}),o({_meta:a(t()).optional(),availableCommands:s(Oe),sessionUpdate:n("available_commands_update")}),o({_meta:a(t()).optional(),currentModeId:e(),sessionUpdate:n("current_mode_update")})])}),Ee=o({_meta:a(t()).optional(),clientCapabilities:Fe.optional(),clientInfo:R.optional().nullable(),protocolVersion:p()}),Pe=l([Y,Z,$,ee,Me,oe,te,ae,ne]),Ve=l([Ne,H]),je=l([Ee,J,we,qe,Q,fe,W,X]),Le=o({method:e(),params:Ve.optional().nullable()}),Be=l([ze,E,ge,xe,P,V,j,L]),He=o({id:l([A,D,G]),method:e(),params:je.optional().nullable()}),Ke=l([o({result:Pe}),o({error:S})]),Ae=l([He,Ke,Ce]),De=l([o({result:Be}),o({error:S})]),Ge=l([Ue,De,Le]);l([Ge,Ae]);export{Qe as P,Ge as a};
1
+ import{n as h,a as p,s as e,o,r as a,u as t,b as l,l as n,c as s,d as m}from"./vendor-CDPxlbZ6.js";const Qe=1,x=h(),C=p(),w=e(),q=o({_meta:a(t()).optional(),content:e(),path:e(),sessionId:e()}),f=o({_meta:a(t()).optional(),limit:p().optional().nullable(),line:p().optional().nullable(),path:e(),sessionId:e()}),M=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),k=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),v=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),O=o({_meta:a(t()).optional(),sessionId:e(),terminalId:e()}),F=a(t()),U=l([n("assistant"),n("user")]),z=o({_meta:a(t()).optional(),mimeType:e().optional().nullable(),text:e(),uri:e()}),N=o({_meta:a(t()).optional(),blob:e(),mimeType:e().optional().nullable(),uri:e()}),b=l([n("read"),n("edit"),n("delete"),n("move"),n("search"),n("execute"),n("think"),n("fetch"),n("switch_mode"),n("other")]),_=l([n("pending"),n("in_progress"),n("completed"),n("failed")]),S=o({code:p(),data:a(t()).optional(),message:e()}),E=o({_meta:a(t()).optional()}),P=o({_meta:t().optional()}),V=o({_meta:a(t()).optional(),stopReason:l([n("end_turn"),n("max_tokens"),n("max_turn_requests"),n("refusal"),n("cancelled")])}),j=o({_meta:a(t()).optional()}),L=a(t()),B=e(),H=a(t()),K=o({hint:e()}),A=h(),D=p(),G=e(),J=o({_meta:a(t()).optional(),methodId:e()}),Q=o({_meta:a(t()).optional(),modeId:e(),sessionId:e()}),W=o({_meta:a(t()).optional(),modelId:e(),sessionId:e()}),X=a(t()),d=o({_meta:a(t()).optional(),name:e(),value:e()}),i=o({_meta:a(t()).optional(),audience:s(U).optional().nullable(),lastModified:e().optional().nullable(),priority:p().optional().nullable()}),c=l([z,N]),Y=o({_meta:a(t()).optional()}),Z=o({_meta:a(t()).optional(),content:e()}),$=o({_meta:a(t()).optional(),outcome:l([o({outcome:n("cancelled")}),o({optionId:e(),outcome:n("selected")})])}),ee=o({_meta:a(t()).optional(),terminalId:e()}),oe=o({_meta:a(t()).optional()}),te=o({_meta:a(t()).optional(),exitCode:p().optional().nullable(),signal:e().optional().nullable()}),ae=o({_meta:a(t()).optional()}),ne=a(t()),le=o({_meta:a(t()).optional(),sessionId:e()}),ie=a(t()),se=o({_meta:a(t()).optional(),kind:l([n("allow_once"),n("allow_always"),n("reject_once"),n("reject_always")]),name:e(),optionId:e()}),u=l([o({content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),type:n("content")}),o({_meta:a(t()).optional(),newText:e(),oldText:e().optional().nullable(),path:e(),type:n("diff")}),o({terminalId:e(),type:n("terminal")})]),r=o({_meta:a(t()).optional(),line:p().optional().nullable(),path:e()}),y=o({_meta:a(t()).optional(),name:e(),value:e()}),R=o({name:e(),title:e().optional().nullable(),version:e()}),pe=o({_meta:a(t()).optional(),description:e().optional().nullable(),id:e(),name:e()}),me=o({_meta:a(t()).optional(),http:m().optional(),sse:m().optional()}),ce=o({_meta:a(t()).optional(),audio:m().optional(),embeddedContext:m().optional(),image:m().optional()}),ue=o({_meta:a(t()).optional(),description:e().optional().nullable(),modelId:e(),name:e()}),re=o({_meta:a(t()).optional(),description:e().optional().nullable(),id:B,name:e()}),T=o({_meta:a(t()).optional(),availableModels:s(ue),currentModelId:e()}),I=o({_meta:a(t()).optional(),availableModes:s(re),currentModeId:e()}),de=o({_meta:a(t()).optional(),content:e(),priority:l([n("high"),n("medium"),n("low")]),status:l([n("pending"),n("in_progress"),n("completed")])}),he=K,be=o({_meta:a(t()).optional(),readTextFile:m().optional(),writeTextFile:m().optional()}),_e=o({args:s(e()),command:e(),env:s(y),name:e()}),g=l([o({headers:s(d),name:e(),type:n("http"),url:e()}),o({headers:s(d),name:e(),type:n("sse"),url:e()}),_e]),Se=l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),ye=o({_meta:a(t()).optional(),exitCode:p().optional().nullable(),signal:e().optional().nullable()}),Re=l([le,ie]),Te=o({_meta:a(t()).optional(),options:s(se),sessionId:e(),toolCall:o({_meta:a(t()).optional(),content:s(u).optional().nullable(),kind:b.optional().nullable(),locations:s(r).optional().nullable(),rawInput:a(t()).optional(),rawOutput:a(t()).optional(),status:_.optional().nullable(),title:e().optional().nullable(),toolCallId:e()})}),Ie=o({_meta:a(t()).optional(),args:s(e()).optional(),command:e(),cwd:e().optional().nullable(),env:s(y).optional(),outputByteLimit:p().optional().nullable(),sessionId:e()}),ge=o({_meta:a(t()).optional(),models:T.optional().nullable(),modes:I.optional().nullable(),sessionId:e()}),xe=o({_meta:a(t()).optional(),models:T.optional().nullable(),modes:I.optional().nullable()}),Ce=o({method:e(),params:Re.optional().nullable()}),we=o({_meta:a(t()).optional(),cwd:e(),mcpServers:s(g)}),qe=o({_meta:a(t()).optional(),cwd:e(),mcpServers:s(g),sessionId:e()}),fe=o({_meta:a(t()).optional(),prompt:s(Se),sessionId:e()}),Me=o({_meta:a(t()).optional(),exitStatus:ye.optional().nullable(),output:e(),truncated:m()}),ke=l([q,f,Te,Ie,M,k,v,O,F]),ve=o({_meta:a(t()).optional(),loadSession:m().optional(),mcpCapabilities:me.optional(),promptCapabilities:ce.optional()}),Oe=o({_meta:a(t()).optional(),description:e(),input:he.optional().nullable(),name:e()}),Fe=o({_meta:a(t()).optional(),fs:be.optional(),terminal:m().optional()}),Ue=o({id:l([x,C,w]),method:e(),params:ke.optional().nullable()}),ze=o({_meta:a(t()).optional(),agentCapabilities:ve.optional(),agentInfo:R.optional().nullable(),authMethods:s(pe).optional(),protocolVersion:p()}),Ne=o({_meta:a(t()).optional(),sessionId:e(),update:l([o({_meta:a(t()).optional(),content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),sessionUpdate:n("user_message_chunk")}),o({_meta:a(t()).optional(),content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),sessionUpdate:n("agent_message_chunk")}),o({_meta:a(t()).optional(),content:l([o({_meta:a(t()).optional(),annotations:i.optional().nullable(),text:e(),type:n("text")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("image"),uri:e().optional().nullable()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),data:e(),mimeType:e(),type:n("audio")}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),description:e().optional().nullable(),mimeType:e().optional().nullable(),name:e(),size:p().optional().nullable(),title:e().optional().nullable(),type:n("resource_link"),uri:e()}),o({_meta:a(t()).optional(),annotations:i.optional().nullable(),resource:c,type:n("resource")})]),sessionUpdate:n("agent_thought_chunk")}),o({_meta:a(t()).optional(),content:s(u).optional(),kind:l([n("read"),n("edit"),n("delete"),n("move"),n("search"),n("execute"),n("think"),n("fetch"),n("switch_mode"),n("other")]).optional(),locations:s(r).optional(),rawInput:a(t()).optional(),rawOutput:a(t()).optional(),sessionUpdate:n("tool_call"),status:l([n("pending"),n("in_progress"),n("completed"),n("failed")]).optional(),title:e(),toolCallId:e()}),o({_meta:a(t()).optional(),content:s(u).optional().nullable(),kind:b.optional().nullable(),locations:s(r).optional().nullable(),rawInput:a(t()).optional(),rawOutput:a(t()).optional(),sessionUpdate:n("tool_call_update"),status:_.optional().nullable(),title:e().optional().nullable(),toolCallId:e()}),o({_meta:a(t()).optional(),entries:s(de),sessionUpdate:n("plan")}),o({_meta:a(t()).optional(),availableCommands:s(Oe),sessionUpdate:n("available_commands_update")}),o({_meta:a(t()).optional(),currentModeId:e(),sessionUpdate:n("current_mode_update")})])}),Ee=o({_meta:a(t()).optional(),clientCapabilities:Fe.optional(),clientInfo:R.optional().nullable(),protocolVersion:p()}),Pe=l([Y,Z,$,ee,Me,oe,te,ae,ne]),Ve=l([Ne,H]),je=l([Ee,J,we,qe,Q,fe,W,X]),Le=o({method:e(),params:Ve.optional().nullable()}),Be=l([ze,E,ge,xe,P,V,j,L]),He=o({id:l([A,D,G]),method:e(),params:je.optional().nullable()}),Ke=l([o({result:Pe}),o({error:S})]),Ae=l([He,Ke,Ce]),De=l([o({result:Be}),o({error:S})]),Ge=l([Ue,De,Le]);l([Ge,Ae]);export{Qe as P,Ge as a};
@@ -0,0 +1 @@
1
+ import{r as n}from"./react-BxIc-aOD.js";const _=t=>t.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase(),m=t=>t.replace(/^([A-Z])|[\s-_]+(\w)/g,(o,a,c)=>c?c.toUpperCase():a.toLowerCase()),i=t=>{const o=m(t);return o.charAt(0).toUpperCase()+o.slice(1)},h=(...t)=>t.filter((o,a,c)=>!!o&&o.trim()!==""&&c.indexOf(o)===a).join(" ").trim(),w=t=>{for(const o in t)if(o.startsWith("aria-")||o==="role"||o==="title")return!0};var g={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"};const v=n.forwardRef(({color:t="currentColor",size:o=24,strokeWidth:a=2,absoluteStrokeWidth:c,className:r="",children:s,iconNode:l,...d},p)=>n.createElement("svg",{ref:p,...g,width:o,height:o,stroke:t,strokeWidth:c?Number(a)*24/Number(o):a,className:h("lucide",r),...!s&&!w(d)&&{"aria-hidden":"true"},...d},[...l.map(([y,k])=>n.createElement(y,k)),...Array.isArray(s)?s:[s]]));const e=(t,o)=>{const a=n.forwardRef(({className:c,...r},s)=>n.createElement(v,{ref:s,iconNode:o,className:h(`lucide-${_(i(t))}`,`lucide-${t}`,c),...r}));return a.displayName=i(t),a};const x=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],T=e("arrow-down",x);const f=[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]],X=e("arrow-up",f);const u=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],G=e("check",u);const $=[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]],J=e("chevron-down",$);const M=[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]],Q=e("chevron-right",M);const N=[["path",{d:"m18 15-6-6-6 6",key:"153udz"}]],Y=e("chevron-up",N);const C=[["path",{d:"m7 15 5 5 5-5",key:"1hf1tw"}],["path",{d:"m7 9 5-5 5 5",key:"sgt6xg"}]],e1=e("chevrons-up-down",C);const b=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],o1=e("circle-check",b);const A=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}]],t1=e("circle",A);const j=[["path",{d:"m16 18 6-6-6-6",key:"eg8j8"}],["path",{d:"m8 6-6 6 6 6",key:"ppft3o"}]],a1=e("code",j);const z=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],c1=e("database",z);const q=[["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}],["circle",{cx:"12",cy:"5",r:"1",key:"gxeob9"}],["circle",{cx:"12",cy:"19",r:"1",key:"lyex9k"}]],s1=e("ellipsis-vertical",q);const L=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 12.5 8 15l2 2.5",key:"1tg20x"}],["path",{d:"m14 12.5 2 2.5-2 2.5",key:"yinavb"}]],n1=e("file-code",L);const V=[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]],r1=e("file-text",V);const H=[["path",{d:"m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2",key:"usdka0"}]],d1=e("folder-open",H);const E=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],i1=e("folder",E);const S=[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]],h1=e("link-2",S);const D=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],l1=e("loader-circle",D);const F=[["path",{d:"M12 19v3",key:"npa21l"}],["path",{d:"M19 10v2a7 7 0 0 1-14 0v-2",key:"1vc78b"}],["rect",{x:"9",y:"2",width:"6",height:"13",rx:"3",key:"s6n7sd"}]],p1=e("mic",F);const P=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M15 3v18",key:"14nvp0"}]],y1=e("panel-right",P);const U=[["path",{d:"m16 6-8.414 8.586a2 2 0 0 0 2.829 2.829l8.414-8.586a4 4 0 1 0-5.657-5.657l-8.379 8.551a6 6 0 1 0 8.485 8.485l8.379-8.551",key:"1miecu"}]],k1=e("paperclip",U);const R=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],_1=e("settings",R);const W=[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]],m1=e("sparkles",W);const B=[["path",{d:"M21 10.656V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h12.344",key:"2acyp4"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]],w1=e("square-check-big",B);const Z=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["line",{x1:"9",x2:"15",y1:"15",y2:"9",key:"1dfufj"}]],g1=e("square-slash",Z);const I=[["path",{d:"M14.7 6.3a1 1 0 0 0 0 1.4l1.6 1.6a1 1 0 0 0 1.4 0l3.106-3.105c.32-.322.863-.22.983.218a6 6 0 0 1-8.259 7.057l-7.91 7.91a1 1 0 0 1-2.999-3l7.91-7.91a6 6 0 0 1 7.057-8.259c.438.12.54.662.219.984z",key:"1ngwbx"}]],v1=e("wrench",I);const O=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],x1=e("x",O);export{T as A,Q as C,c1 as D,s1 as E,d1 as F,h1 as L,p1 as M,k1 as P,g1 as S,v1 as W,x1 as X,G as a,t1 as b,i1 as c,n1 as d,J as e,w1 as f,r1 as g,m1 as h,_1 as i,a1 as j,X as k,y1 as l,Y as m,l1 as n,e1 as o,o1 as p};
@@ -0,0 +1,6 @@
1
+ import{r as l,j as t,P as as,e as is,f as ls,M as cs,h as ds,b as us}from"./react-BxIc-aOD.js";import{P as ve,a as ps}from"./acp-sdk-CrD5QpoU.js";import{L as H,M as T,N as R,O as v,P as Re,Q as D,R as M,S as _,T as L,U as fs,W as X,X as re,Y as ms,Z as hs,$ as gs,a0 as xs,a1 as W,a2 as bs,a3 as Ne}from"./vendor-CDPxlbZ6.js";import{S as J,a as Me,b as Ue,P as ys,C as Ae,I as De,c as ze,d as Pe,R as _e,L as Le,e as Fe,f as ws,T as vs,g as Oe,h as He,i as $e,j as Ns,O as Be,k as js,l as Ve,m as Ss,n as We,D as qe,o as Qe,p as Ke,q as Cs,r as Ge,s as Xe,t as ks,u as Je,V as Ts,v as Ye,w as Ze,x as Is,y as Es,z as et}from"./radix-Dd4nMefT.js";import{C as tt,S as Rs,P as Ms,M as Us,A as As,a as st,b as nt,F as Ds,c as zs,d as Ps,E as _s,e as Y,f as ot,g as rt,D as at,L as it,h as je,i as Ls,j as Fs,k as Os,l as Hs,m as lt,X as $s,W as Bs,n as ct,o as Vs,p as Ws}from"./icons-Bzkdnur-.js";import{r as qs}from"./markdown-PIOGdvNw.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))o(a);new MutationObserver(a=>{for(const i of a)if(i.type==="childList")for(const c of i.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&o(c)}).observe(document,{childList:!0,subtree:!0});function n(a){const i={};return a.integrity&&(i.integrity=a.integrity),a.referrerPolicy&&(i.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?i.credentials="include":a.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function o(a){if(a.ep)return;a.ep=!0;const i=n(a);fetch(a.href,i)}})();const fe=typeof process<"u"&&process.versions?.node;let Qs,Ks=0;const Gs=new Set;function Xs(s){for(const e of Gs)e(s)}const Se={trace:0,debug:1,info:2,warn:3,error:4,fatal:5};class Js{service;minLevel;logFilePath;logsDir;writeQueue=[];isWriting=!1;constructor(e,n="debug"){this.service=e,this.minLevel=n,typeof process<"u"&&(this.minLevel="info")}setupFileLogging(){}async writeToFile(e){if(!(!this.logFilePath||!fe)&&(this.writeQueue.push(e),!this.isWriting)){for(this.isWriting=!0;this.writeQueue.length>0;){const o=`${this.writeQueue.splice(0,this.writeQueue.length).join(`
2
+ `)}
3
+ `;try{await require("node:fs").promises.appendFile(this.logFilePath,o,"utf-8")}catch{}}this.isWriting=!1}}shouldLog(e){return Se[e]>=Se[this.minLevel]}log(e,n,o){if(!this.shouldLog(e))return;const a={id:`log_${++Ks}`,timestamp:new Date().toISOString(),level:e,service:this.service,message:n,...o&&{metadata:o}};if(Xs(a),fe&&this.logFilePath,fe&&this.logFilePath){const i={timestamp:a.timestamp,level:a.level,service:a.service,message:a.message,...a.metadata&&{metadata:a.metadata}};this.writeToFile(JSON.stringify(i)).catch(()=>{})}}trace(e,n){this.log("trace",e,n)}debug(e,n){this.log("debug",e,n)}info(e,n){this.log("info",e,n)}warn(e,n){this.log("warn",e,n)}error(e,n){this.log("error",e,n)}fatal(e,n){this.log("fatal",e,n)}}function $(s,e="debug"){return new Js(s,e)}const S=$("http-transport");class Ys{connected=!1;sessionUpdateCallbacks=new Set;errorCallbacks=new Set;messageQueue=[];currentSessionId=null;chunkResolvers=[];streamComplete=!1;sseAbortController=null;reconnectAttempts=0;maxReconnectAttempts=5;reconnectDelay=1e3;reconnecting=!1;abortController=null;options;isReceivingMessages=!1;constructor(e){this.options={...e,baseUrl:e.baseUrl.replace(/\/$/,"")}}async connect(){if(!this.connected)try{this.abortController=new AbortController;const e={protocolVersion:ve,clientCapabilities:{fs:{readTextFile:!0,writeTextFile:!0}}},n=await this.sendRpcRequest("initialize",e);S.info("ACP connection initialized",{initResponse:n});const o={cwd:"/",mcpServers:[]},a=await this.sendRpcRequest("session/new",o);this.currentSessionId=a.sessionId,S.info("Session created",{sessionId:this.currentSessionId}),await this.connectSSE(),this.connected=!0,this.reconnectAttempts=0}catch(e){this.connected=!1;const n=e instanceof Error?e:new Error(String(e));throw this.notifyError(n),n}}async loadSession(e){this.connected&&(S.warn("Transport already connected, disconnecting first",{sessionId:e}),await this.disconnect());try{this.abortController=new AbortController;const n={protocolVersion:ve,clientCapabilities:{fs:{readTextFile:!0,writeTextFile:!0}}};S.info("Loading session - initializing connection",{sessionId:e});const o=await this.sendRpcRequest("initialize",n);if(!o.agentCapabilities?.loadSession)throw S.error("Agent does not support loading sessions",{capabilities:o.agentCapabilities}),new Error("Agent does not support loading sessions");S.info("ACP connection initialized, loading session",{sessionId:e,capabilities:o.agentCapabilities}),this.currentSessionId=e,await this.connectSSE();const a={sessionId:e,cwd:"/",mcpServers:[]};S.info("Sending session/load request",{loadRequest:a});const i=await this.sendRpcRequest("session/load",a);S.info("Session loaded successfully",{sessionId:this.currentSessionId,loadResponse:i}),this.connected=!0,this.reconnectAttempts=0}catch(n){this.connected=!1;const o=n instanceof Error?n:new Error(String(n));throw S.error("Failed to load session",{sessionId:e,error:o.message,stack:o.stack}),this.notifyError(o),o}}async disconnect(){if(this.connected)try{this.abortController&&(this.abortController.abort(),this.abortController=null),this.sseAbortController&&(this.sseAbortController.abort(),this.sseAbortController=null),this.connected=!1,this.currentSessionId=null,this.messageQueue=[],this.chunkResolvers=[],this.streamComplete=!1,this.reconnecting=!1,this.reconnectAttempts=0}catch(e){const n=e instanceof Error?e:new Error(String(e));throw this.notifyError(n),n}}async send(e){if(!this.connected||!this.currentSessionId)throw new Error("Transport not connected");try{this.streamComplete=!1,this.messageQueue=[];const n=e.content.filter(c=>c.type==="text").map(c=>c.text).join(`
4
+ `),o={sessionId:this.currentSessionId,prompt:[{type:"text",text:n}]},a=await this.sendRpcRequest("session/prompt",o);S.debug("Prompt sent",{promptResponse:a}),this.streamComplete=!0;const i=this.chunkResolvers.shift();i?i({id:this.currentSessionId||"unknown",role:"assistant",contentDelta:{type:"text",text:""},isComplete:!0}):this.messageQueue.push({id:this.currentSessionId||"unknown",role:"assistant",contentDelta:{type:"text",text:""},isComplete:!0})}catch(n){this.streamComplete=!0;const o=n instanceof Error?n:new Error(String(n));throw this.notifyError(o),o}}async*receive(){this.isReceivingMessages=!0;try{for(;!this.streamComplete;)if(this.messageQueue.length>0){const e=this.messageQueue.shift();if(e&&(yield e,e.isComplete))return}else{const e=await new Promise(n=>{this.chunkResolvers.push(n)});if(e.isComplete){yield e;return}else yield e}for(;this.messageQueue.length>0;){const e=this.messageQueue.shift();e&&(yield e)}yield{id:this.currentSessionId||"unknown",role:"assistant",contentDelta:{type:"text",text:""},isComplete:!0}}finally{this.isReceivingMessages=!1}}isConnected(){return this.connected}onSessionUpdate(e){return this.sessionUpdateCallbacks.add(e),()=>{this.sessionUpdateCallbacks.delete(e)}}onError(e){return this.errorCallbacks.add(e),()=>{this.errorCallbacks.delete(e)}}async sendRpcRequest(e,n){const a={jsonrpc:"2.0",id:this.generateRequestId(),method:e,params:n};S.debug("Sending RPC request",{method:e,params:n,request:a});const i={"Content-Type":"application/json",...this.options.headers},c=this.options.timeout??600*1e3,p=new AbortController,u=setTimeout(()=>p.abort(),c);try{const r=await fetch(`${this.options.baseUrl}/rpc`,{method:"POST",headers:i,body:JSON.stringify(a),signal:p.signal});if(clearTimeout(u),!r.ok){const f=await r.text();throw new Error(`HTTP ${r.status}: ${f}`)}const d=await r.json();if(d.error)throw new Error(`ACP error: ${d.error.message||JSON.stringify(d.error)}`);return d.result||d}catch(r){throw clearTimeout(u),r instanceof Error&&r.name==="AbortError"?new Error(`Request timeout after ${c}ms`):r}}async connectSSE(){if(!this.currentSessionId)throw new Error("Cannot connect SSE without a session ID");const e=`${this.options.baseUrl}/events`,n={"X-Session-ID":this.currentSessionId,...this.options.headers};this.sseAbortController=new AbortController;try{const o=await fetch(e,{method:"GET",headers:n,signal:this.sseAbortController.signal});if(!o.ok)throw new Error(`SSE connection failed: HTTP ${o.status}`);if(!o.body)throw new Error("Response body is null");S.debug("SSE connection opened"),this.reconnectAttempts=0,this.reconnectDelay=1e3;const a=o.body.getReader(),i=new TextDecoder;let c="";(async()=>{try{for(;;){const{done:p,value:u}=await a.read();if(p){S.debug("SSE stream closed by server"),this.connected&&await this.handleSSEDisconnect();break}c+=i.decode(u,{stream:!0});const r=c.split(`
5
+ `);c=r.pop()||"";let d={event:"message",data:""};for(const f of r)f.startsWith("event:")?d.event=f.substring(6).trim():f.startsWith("data:")?d.data=f.substring(5).trim():f===""&&(d.event==="message"&&d.data&&this.handleSSEMessage(d.data),d={event:"message",data:""})}}catch(p){if(p instanceof Error&&p.name==="AbortError"){S.debug("SSE stream aborted");return}S.error("Error reading SSE stream",{error:p}),this.connected&&!this.reconnecting&&await this.handleSSEDisconnect()}})()}catch(o){throw S.error("SSE connection error",{error:o}),o}}async handleSSEDisconnect(){if(this.reconnecting||!this.connected)return;if(this.reconnecting=!0,this.sseAbortController&&(this.sseAbortController.abort(),this.sseAbortController=null),this.reconnectAttempts>=this.maxReconnectAttempts){const n=new Error(`SSE reconnection failed after ${this.maxReconnectAttempts} attempts`);this.notifyError(n),this.connected=!1,this.reconnecting=!1;return}this.reconnectAttempts++;const e=Math.min(this.reconnectDelay*2**(this.reconnectAttempts-1),32e3);S.debug("SSE reconnecting",{delay:e,attempt:this.reconnectAttempts,maxAttempts:this.maxReconnectAttempts}),await new Promise(n=>setTimeout(n,e));try{await this.connectSSE(),S.info("SSE reconnected successfully"),this.reconnecting=!1}catch(n){S.error("SSE reconnection failed",{error:n}),this.reconnecting=!1}}handleSSEMessage(e){try{const n=JSON.parse(e);S.debug("Received SSE message",{message:n});const o=ps.safeParse(n);if(!o.success){S.error("Invalid ACP message from SSE",{issues:o.error.issues});return}const a=o.data;S.debug("Parsed ACP message",{method:"method"in a?a.method:"(no method)"}),"method"in a&&a.method==="session/update"&&(S.debug("Received session/update notification"),"params"in a&&a.params&&(S.debug("Calling handleSessionNotification",{params:a.params}),this.handleSessionNotification(a.params)))}catch(n){S.error("Error parsing SSE message",{error:n}),this.notifyError(n instanceof Error?n:new Error(String(n)))}}handleSessionNotification(e){S.debug("handleSessionNotification called",{params:e});const o=e.update,a=this.currentSessionId||e.sessionId;if(S.debug("Update session type",{sessionUpdate:o?.sessionUpdate}),o?.sessionUpdate==="tool_call"){S.debug("Tool call notification",{tokenUsage:o.tokenUsage});const i=o._meta&&typeof o._meta=="object"&&"messageId"in o._meta?String(o._meta.messageId):void 0,c={id:o.toolCallId??"",title:o.title??"",kind:o.kind||"other",status:o.status||"pending",locations:o.locations,rawInput:o.rawInput,tokenUsage:o.tokenUsage,content:o.content?.map(u=>{if(typeof u!="object"||u===null)return{type:"text",text:""};const r=u;if(r.type==="content"&&typeof r.content=="object"&&r.content!==null){const d=r.content;if(d.type==="text")return{type:"content",content:{type:"text",text:typeof d.text=="string"?d.text:""}}}return r.type==="text"?{type:"text",text:typeof r.text=="string"?r.text:""}:r.type==="diff"?{type:"diff",path:typeof r.path=="string"?r.path:"",oldText:typeof r.oldText=="string"?r.oldText:"",newText:typeof r.newText=="string"?r.newText:"",line:typeof r.line=="number"?r.line:null}:r.type==="terminal"?{type:"terminal",terminalId:typeof r.terminalId=="string"?r.terminalId:""}:{type:"text",text:""}}),startedAt:Date.now()},p={type:"tool_call",sessionId:a,status:"active",toolCall:c,messageId:i};this.notifySessionUpdate(p)}else if(o?.sessionUpdate==="tool_call_update"){const i=o._meta&&typeof o._meta=="object"&&"messageId"in o._meta?String(o._meta.messageId):void 0,c={id:o.toolCallId??"",status:o.status,locations:o.locations,rawOutput:o.rawOutput,tokenUsage:o.tokenUsage,content:o.content?.map(u=>{if(typeof u!="object"||u===null)return{type:"text",text:""};const r=u;if(r.type==="content"&&typeof r.content=="object"&&r.content!==null){const d=r.content;if(d.type==="text")return{type:"content",content:{type:"text",text:typeof d.text=="string"?d.text:""}}}return r.type==="text"?{type:"text",text:typeof r.text=="string"?r.text:""}:r.type==="diff"?{type:"diff",path:typeof r.path=="string"?r.path:"",oldText:typeof r.oldText=="string"?r.oldText:"",newText:typeof r.newText=="string"?r.newText:"",line:typeof r.line=="number"?r.line:null}:r.type==="terminal"?{type:"terminal",terminalId:typeof r.terminalId=="string"?r.terminalId:""}:{type:"text",text:""}}),error:o.error,completedAt:o.status==="completed"||o.status==="failed"?Date.now():void 0},p={type:"tool_call_update",sessionId:a,status:"active",toolCallUpdate:c,messageId:i};S.debug("Notifying tool_call_update session update",{sessionUpdate:p}),this.notifySessionUpdate(p)}else if(o&&"sessionUpdate"in o&&o.sessionUpdate==="tool_output"){const i=o,c=i._meta&&typeof i._meta=="object"&&"messageId"in i._meta?String(i._meta.messageId):void 0,p={id:i.toolCallId??"",rawOutput:i.rawOutput,content:i.content?.map(r=>{if(typeof r!="object"||r===null)return{type:"text",text:""};const d=r;if(d.type==="content"&&typeof d.content=="object"&&d.content!==null){const f=d.content;if(f.type==="text")return{type:"content",content:{type:"text",text:typeof f.text=="string"?f.text:""}}}return d.type==="text"?{type:"text",text:typeof d.text=="string"?d.text:""}:d.type==="diff"?{type:"diff",path:typeof d.path=="string"?d.path:"",oldText:typeof d.oldText=="string"?d.oldText:"",newText:typeof d.newText=="string"?d.newText:"",line:typeof d.line=="number"?d.line:null}:d.type==="terminal"?{type:"terminal",terminalId:typeof d.terminalId=="string"?d.terminalId:""}:{type:"text",text:""}})},u={type:"tool_call_update",sessionId:a,status:"active",toolCallUpdate:p,messageId:c};S.debug("Notifying tool_output as tool_call_update",{sessionUpdate:u}),this.notifySessionUpdate(u)}else if(o?.sessionUpdate==="agent_message_chunk"){const i={type:"generic",sessionId:a,status:"active"},c=o._meta&&typeof o._meta=="object"&&"tokenUsage"in o._meta?o._meta.tokenUsage:void 0;S.debug("Agent message chunk",{tokenUsage:c});const p=o.content;if(p&&typeof p=="object"){const u=p;let r=null;if(u.type==="text"&&typeof u.text=="string"&&(r={id:e.sessionId,role:"assistant",contentDelta:{type:"text",text:u.text},tokenUsage:c,isComplete:!1}),r){const d=this.chunkResolvers.shift();d?d(r):this.messageQueue.push(r)}if(r&&typeof u.text=="string"&&!this.isReceivingMessages){const d={type:"generic",sessionId:a,status:"active",message:{id:`msg_${Date.now()}_assistant`,role:"assistant",content:[{type:"text",text:u.text}],timestamp:new Date().toISOString()}};this.notifySessionUpdate(d)}}this.notifySessionUpdate(i)}else if(o?.sessionUpdate==="user_message_chunk"){S.debug("Received user_message_chunk",{update:o});const i=o.content;if(i&&typeof i=="object"){const c=i;if(c.type==="text"&&typeof c.text=="string"){const p={type:"generic",sessionId:a,status:"active",message:{id:`msg_${Date.now()}_user`,role:"user",content:[{type:"text",text:c.text}],timestamp:new Date().toISOString()}};S.debug("Notifying session update for user message"),this.notifySessionUpdate(p)}}}else{const i={type:"generic",sessionId:a,status:"active"};this.notifySessionUpdate(i)}}generateRequestId(){return`req-${Date.now()}-${Math.random().toString(36).substring(2,9)}`}notifySessionUpdate(e){for(const n of this.sessionUpdateCallbacks)try{n(e)}catch(o){S.error("Error in session update callback",{error:o})}}notifyError(e){for(const n of this.errorCallbacks)try{n(e)}catch(o){S.error("Error in error callback",{error:o})}}}class Zs{constructor(){throw new Error("StdioTransport is not available in the browser. Use HttpTransport or WebSocketTransport instead.")}async connect(){throw new Error("StdioTransport not available in browser")}async disconnect(){}async send(){throw new Error("StdioTransport not available in browser")}async*receive(){throw new Error("StdioTransport not available in browser")}isConnected(){return!1}onSessionUpdate(){return()=>{}}onError(){return()=>{}}}class en{ws=null;connected=!1;sessionUpdateCallbacks=new Set;errorCallbacks=new Set;constructor(e){}async connect(){throw new Error("WebSocketTransport not yet implemented. Waiting for HTTP ACP server.")}async disconnect(){this.ws&&(this.ws.close(),this.ws=null),this.connected=!1}async send(e){throw!this.connected||!this.ws?new Error("Transport not connected"):new Error("WebSocketTransport not yet implemented. Waiting for HTTP ACP server.")}async*receive(){throw new Error("WebSocketTransport not yet implemented. Waiting for HTTP ACP server.")}isConnected(){return this.connected}onSessionUpdate(e){return this.sessionUpdateCallbacks.add(e),()=>{this.sessionUpdateCallbacks.delete(e)}}onError(e){return this.errorCallbacks.add(e),()=>{this.errorCallbacks.delete(e)}}}const me=$("acp-client","debug");class tn{config;transport;sessions=new Map;currentSessionId=null;sessionUpdateHandlers=new Set;errorHandlers=new Set;constructor(e){this.config=e,this.transport=this.createTransport(),this.setupTransportListeners(),e.autoConnect&&this.connect().catch(n=>{me.error("Failed to auto-connect",{error:n instanceof Error?n.message:String(n)})})}async connect(){await this.transport.connect()}async disconnect(){await this.transport.disconnect(),this.currentSessionId=null}isConnected(){return this.transport.isConnected()}async startSession(e){const n="currentSessionId"in this.transport?this.transport.currentSessionId:void 0;if(n){const c=new Date().toISOString(),p={id:n,status:"connected",config:e?{...e,agentPath:e.agentPath||""}:{agentPath:""},messages:[],metadata:{startedAt:c}};return this.sessions.set(n,p),this.currentSessionId=n,n}const o=this.generateSessionId(),a=new Date().toISOString(),i={id:o,status:"connecting",config:e?{...e,agentPath:e.agentPath||""}:{agentPath:""},messages:[],metadata:{startedAt:a}};return this.sessions.set(o,i),this.currentSessionId=o,this.updateSessionStatus(o,"connected"),o}async loadSession(e,n){if(!this.transport.loadSession)throw new Error("Transport does not support loading sessions");const o=new Date().toISOString(),a={id:e,status:"connecting",config:n?{...n,agentPath:n.agentPath||""}:{agentPath:""},messages:[],metadata:{startedAt:o}};return this.sessions.set(e,a),this.currentSessionId=e,await this.transport.loadSession(e),this.updateSessionStatus(e,"connected"),e}async sendMessage(e,n){const o=n||this.currentSessionId;if(!o)throw new Error("No active session. Start a session first.");if(!this.transport.isConnected())throw new Error("Transport not connected");const a=this.sessions.get(o);if(!a)throw new Error(`Session ${o} not found`);const i={id:this.generateMessageId(),role:"user",content:[{type:"text",text:e}],timestamp:new Date().toISOString()};a.messages.push(i),this.updateSessionStatus(o,"active"),await this.transport.send(i)}async*receiveMessages(){if(!this.transport.isConnected())throw new Error("Transport not connected");yield*this.transport.receive()}getSession(e){return this.sessions.get(e)}getCurrentSession(){return this.currentSessionId?this.sessions.get(this.currentSessionId):void 0}getAllSessions(){return Array.from(this.sessions.values())}onSessionUpdate(e){return this.sessionUpdateHandlers.add(e),()=>{this.sessionUpdateHandlers.delete(e)}}onError(e){return this.errorHandlers.add(e),()=>{this.errorHandlers.delete(e)}}createTransport(){switch(this.config.type){case"stdio":return new Zs(this.config.options);case"http":return new Ys(this.config.options);case"websocket":return new en(this.config.options);default:throw new Error(`Unknown transport type: ${this.config.type}`)}}setupTransportListeners(){this.transport.onSessionUpdate(e=>{this.handleSessionUpdate(e)}),this.transport.onError(e=>{this.handleError(e)})}handleSessionUpdate(e){if(e.sessionId){const n=this.sessions.get(e.sessionId);n&&(e.status&&(n.status=e.status),e.message&&n.messages.push(e.message),e.error&&(n.error=e.error))}for(const n of this.sessionUpdateHandlers)try{n(e)}catch(o){me.error("Error in session update handler",{error:o instanceof Error?o.message:String(o)})}}handleError(e){for(const n of this.errorHandlers)try{n(e)}catch(o){me.error("Error in error handler",{error:o instanceof Error?o.message:String(o)})}}updateSessionStatus(e,n){const o=this.sessions.get(e);o&&(o.status=n,this.handleSessionUpdate({sessionId:e,status:n}))}generateSessionId(){return`session_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}generateMessageId(){return`msg_${Date.now()}_${Math.random().toString(36).substr(2,9)}`}}const q=$("acp-client-hook");function sn(s){const[e,n]=l.useState(null),[o,a]=l.useState(null),[i,c]=l.useState(null);return l.useEffect(()=>{const u=new URLSearchParams(window.location.search).get("session");u&&(q.info("Session ID found in URL",{sessionId:u}),c(u));try{q.info("Initializing ACP client",{serverUrl:s.serverUrl});const r=new tn({type:"http",options:{baseUrl:s.serverUrl}});return n(r),q.info("ACP client initialized successfully"),()=>{q.debug("Disconnecting ACP client"),r.disconnect().catch(d=>{q.error("Failed to disconnect ACP client",{error:d instanceof Error?d.message:String(d)})})}}catch(r){const d=r instanceof Error?r.message:"Failed to initialize ACP client";a(d),q.error("Failed to initialize ACP client",{error:r instanceof Error?r.message:String(r),stack:r instanceof Error?r.stack:void 0});return}},[s.serverUrl]),{client:e,error:o,sessionId:i}}const dt=H(["pending","in_progress","completed","failed"]),nn=H(["read","edit","delete","move","search","execute","think","fetch","switch_mode","other"]),ut=T({path:v(),line:R().nullable().optional()}),ge=T({inputTokens:R().optional(),outputTokens:R().optional(),totalTokens:R().optional()}),pt=Re("type",[T({type:D("content"),content:T({type:D("text"),text:v()})}),T({type:D("text"),text:v()}),T({type:D("diff"),path:v(),oldText:v(),newText:v(),line:R().nullable().optional()}),T({type:D("terminal"),terminalId:v()})]),ft=T({id:v(),title:v(),kind:nn,status:dt,contentPosition:R().optional(),locations:M(ut).optional(),rawInput:_(v(),L()).optional(),rawOutput:_(v(),L()).optional(),content:M(pt).optional(),error:v().optional(),startedAt:R().optional(),completedAt:R().optional(),tokenUsage:ge.optional()}),on=T({id:v(),status:dt.optional(),locations:M(ut).optional(),rawOutput:_(v(),L()).optional(),content:M(pt).optional(),error:v().optional(),completedAt:R().optional(),tokenUsage:ge.optional()});function Ce(s,e){return{...s,status:e.status??s.status,locations:e.locations??s.locations,rawOutput:e.rawOutput??s.rawOutput,content:e.content?[...s.content??[],...e.content]:s.content,error:e.error??s.error,completedAt:e.completedAt??s.completedAt,tokenUsage:e.tokenUsage??s.tokenUsage}}const Q=$("chat-store","debug"),k=fs(s=>({connectionStatus:"disconnected",sessionId:null,error:null,messages:[],isStreaming:!1,streamingStartTime:null,toolCalls:{},totalBilled:{inputTokens:0,outputTokens:0,totalTokens:0},currentContext:{inputTokens:0,outputTokens:0,totalTokens:0},currentModel:"claude-sonnet-4-5-20250929",tokenDisplayMode:"context",logs:[],activeTab:"chat",input:{value:"",isSubmitting:!1,attachedFiles:[]},setConnectionStatus:e=>s({connectionStatus:e}),setSessionId:e=>s({sessionId:e}),setError:e=>s({error:e}),addMessage:e=>s(n=>({messages:[...n.messages,e]})),updateMessage:(e,n)=>s(o=>{const a=o.messages.find(r=>r.id===e);let i=o.totalBilled,c=o.currentContext,p=n;if(n.tokenUsage){const r=a?.tokenUsage;Q.debug("updateMessage: incoming tokenUsage",{incoming:n.tokenUsage,existing:r});const d={inputTokens:Math.max(n.tokenUsage.inputTokens??0,r?.inputTokens??0),outputTokens:Math.max(n.tokenUsage.outputTokens??0,r?.outputTokens??0),totalTokens:Math.max(n.tokenUsage.inputTokens??0,r?.inputTokens??0)+Math.max(n.tokenUsage.outputTokens??0,r?.outputTokens??0)};Q.debug("updateMessage: merged tokenUsage",{merged:d}),p={...n,tokenUsage:d};const f=d.inputTokens-(r?.inputTokens??0),x=d.outputTokens-(r?.outputTokens??0),w=d.totalTokens-(r?.totalTokens??0);i={inputTokens:o.totalBilled.inputTokens+f,outputTokens:o.totalBilled.outputTokens+x,totalTokens:o.totalBilled.totalTokens+w},c={inputTokens:d.inputTokens,outputTokens:o.currentContext.outputTokens+x,totalTokens:d.totalTokens}}const u=o.messages.map(r=>r.id===e?{...r,...p}:r);if(n.tokenUsage&&p.tokenUsage){const r=a?.tokenUsage,d=p.tokenUsage,f=(d.inputTokens??0)-(r?.inputTokens??0),x=(d.outputTokens??0)-(r?.outputTokens??0),w=(d.totalTokens??0)-(r?.totalTokens??0),h=u.filter(g=>g.tokenUsage).map(g=>({id:g.id,role:g.role,tokens:g.tokenUsage})),b=u.reduce((g,N)=>({inputTokens:g.inputTokens+(N.tokenUsage?.inputTokens??0),outputTokens:g.outputTokens+(N.tokenUsage?.outputTokens??0),totalTokens:g.totalTokens+(N.tokenUsage?.totalTokens??0)}),{inputTokens:0,outputTokens:0,totalTokens:0}),y=b.inputTokens===i.inputTokens&&b.outputTokens===i.outputTokens&&b.totalTokens===i.totalTokens;Q.debug("updateMessage: tokenUsage update",{messageId:e,updates:n.tokenUsage,existing:r,messageMax:d,delta:{inputDelta:f,outputDelta:x,totalDelta:w},totalBilled:i,currentContext:c,actualSum:b,billedCorrect:y?"✅":"❌",messageCount:u.length,messagesWithTokens:h.length,breakdown:h})}return{messages:u,totalBilled:i,currentContext:c}}),clearMessages:()=>s({messages:[]}),setIsStreaming:e=>s({isStreaming:e}),setStreamingStartTime:e=>s({streamingStartTime:e}),addToolCall:(e,n)=>s(o=>({toolCalls:{...o.toolCalls,[e]:[...o.toolCalls[e]||[],n]}})),addToolCallToCurrentMessage:e=>s(n=>{const o=n.messages.findLastIndex(u=>u.role==="assistant");if(o===-1){Q.debug("No assistant message found, creating one for tool call at position 0");const u={id:`msg_${Date.now()}_assistant`,role:"assistant",content:"",timestamp:new Date().toISOString(),isStreaming:!1,toolCalls:[{...e,contentPosition:0}]};return{messages:[...n.messages,u]}}const a=[...n.messages],i=a[o];if(!i)return n;const c=i.content.length,p={...e,contentPosition:c};return a[o]={...i,toolCalls:[...i.toolCalls||[],p]},{messages:a}}),updateToolCallInCurrentMessage:e=>s(n=>{const o=n.messages.findLastIndex(d=>d.role==="assistant");if(o===-1)return Q.warn("No assistant message found to update tool call in"),n;const a=[...n.messages],i=a[o];if(!i)return n;const c=i.toolCalls||[],p=c.findIndex(d=>d.id===e.id);if(p===-1)return Q.warn(`Tool call ${e.id} not found in message`),n;const u=c[p];if(!u)return n;const r=[...c];return r[p]=Ce(u,e),a[o]={...i,toolCalls:r},{messages:a}}),updateToolCall:(e,n)=>s(o=>{const a=o.toolCalls[e]||[],i=a.findIndex(u=>u.id===n.id);if(i===-1)return o;const c=a[i];if(!c)return o;const p=[...a];return p[i]=Ce(c,n),{toolCalls:{...o.toolCalls,[e]:p}}}),setInputValue:e=>s(n=>({input:{...n.input,value:e}})),setInputSubmitting:e=>s(n=>({input:{...n.input,isSubmitting:e}})),addFileAttachment:e=>s(n=>({input:{...n.input,attachedFiles:[...n.input.attachedFiles,e]}})),removeFileAttachment:e=>s(n=>({input:{...n.input,attachedFiles:n.input.attachedFiles.filter((o,a)=>a!==e)}})),clearInput:()=>s(e=>({input:{value:"",isSubmitting:!1,attachedFiles:[]}})),addTokenUsage:e=>s(n=>({totalBilled:{inputTokens:n.totalBilled.inputTokens+(e.inputTokens??0),outputTokens:n.totalBilled.outputTokens+(e.outputTokens??0),totalTokens:n.totalBilled.totalTokens+(e.totalTokens??0)},currentContext:{inputTokens:e.inputTokens??n.currentContext.inputTokens,outputTokens:n.currentContext.outputTokens+(e.outputTokens??0),totalTokens:(e.inputTokens??n.currentContext.inputTokens)+(n.currentContext.outputTokens+(e.outputTokens??0))}})),setCurrentModel:e=>s({currentModel:e}),resetTokens:()=>s({totalBilled:{inputTokens:0,outputTokens:0,totalTokens:0},currentContext:{inputTokens:0,outputTokens:0,totalTokens:0}}),cycleTokenDisplayMode:()=>s(e=>{const n=["context","input","output"],a=(n.indexOf(e.tokenDisplayMode)+1)%n.length,i=n[a];return i?{tokenDisplayMode:i}:e}),addLog:e=>s(n=>({logs:[...n.logs,e]})),clearLogs:()=>s({logs:[]}),setActiveTab:e=>s({activeTab:e})})),he=$("use-chat-messages","debug");function mt(s){const e=k(d=>d.messages),n=k(d=>d.isStreaming),o=k(d=>d.sessionId),a=k(d=>d.setIsStreaming),i=k(d=>d.setStreamingStartTime),c=k(d=>d.addMessage),p=k(d=>d.updateMessage),u=k(d=>d.setError),r=l.useCallback(async d=>{if(!s){he.error("No client available"),u("No client available");return}if(!o){he.error("No active session"),u("No active session");return}try{const f=Date.now();a(!0),i(f);const x={id:`msg_${Date.now()}_user`,role:"user",content:d,timestamp:new Date().toISOString(),isStreaming:!1};c(x);const w=`msg_${Date.now()}_assistant`,h={id:w,role:"assistant",content:"",timestamp:new Date().toISOString(),isStreaming:!0,streamingStartTime:f};c(h);const b=s.receiveMessages();s.sendMessage(d,o).catch(g=>{const N=g instanceof Error?g.message:String(g);u(N),a(!1),i(null)});let y="";for await(const g of b)if(g.tokenUsage&&he.debug("chunk.tokenUsage",{tokenUsage:g.tokenUsage}),g.isComplete){p(w,{content:y,isStreaming:!1,streamingStartTime:void 0,...g.tokenUsage?{tokenUsage:g.tokenUsage}:{}}),a(!1),i(null);break}else g.contentDelta.type==="text"&&(y+=g.contentDelta.text,p(w,{content:y,...g.tokenUsage?{tokenUsage:g.tokenUsage}:{}}),await new Promise(N=>setTimeout(N,16)))}catch(f){const x=f instanceof Error?f.message:String(f);u(x),a(!1),i(null)}},[s,o,c,p,a,i,u]);return{messages:e,isStreaming:n,sendMessage:r}}const rn=$("use-chat-input","debug");function an(s){const e=k(f=>f.input),n=k(f=>f.setInputValue),o=k(f=>f.setInputSubmitting),a=k(f=>f.addFileAttachment),i=k(f=>f.removeFileAttachment),{sendMessage:c}=mt(s),p=l.useCallback(f=>{n(f)},[n]),u=l.useCallback(async()=>{if(!e.value.trim()||e.isSubmitting)return;const f=e.value;n(""),o(!0);try{await c(f)}catch(x){rn.error("Failed to send message",{error:x instanceof Error?x.message:String(x)})}finally{o(!1)}},[e,n,o,c]),r=l.useCallback(f=>{a(f)},[a]),d=l.useCallback(f=>{i(f)},[i]);return{value:e.value,isSubmitting:e.isSubmitting,attachedFiles:e.attachedFiles,onChange:p,onSubmit:u,onAttachFile:r,onRemoveFile:d}}const B=$("use-chat-session","debug");function ln(s,e){const n=k(h=>h.connectionStatus),o=k(h=>h.sessionId),a=k(h=>h.setConnectionStatus),i=k(h=>h.setSessionId),c=k(h=>h.setError),p=k(h=>h.clearMessages),u=k(h=>h.resetTokens),r=k(h=>h.addMessage);l.useEffect(()=>s?s.onSessionUpdate(b=>{if(b.message&&(B.debug("Session update with message",{message:b.message}),b.message.role!=="tool")){const y=b.message.content.map(j=>j.type==="text"?j.text:"").join(""),g=k.getState().messages,N=g[g.length-1];if(b.message.role==="assistant"&&N?.role==="assistant"&&N.content===""&&y)B.debug("Appending text to existing assistant message"),k.getState().updateMessage(N.id,{content:N.content+y});else{const j={id:b.message.id,role:b.message.role,content:y,timestamp:b.message.timestamp,isStreaming:!1};r(j)}}}):void 0,[s,r]);const d=l.useCallback(async()=>{if(!s){c("No client available");return}try{a("connecting"),c(null),await s.connect(),a("connected")}catch(h){B.error("Failed to connect",{error:h instanceof Error?h.message:String(h)});const b=h instanceof Error?h.message:String(h);c(b),a("error")}},[s,a,c]),f=l.useCallback(async h=>{if(!s){c("No client available");return}try{a("connecting"),c(null);const b=await s.loadSession(h);i(b),a("connected"),u(),B.info("Session loaded successfully",{sessionId:b})}catch(b){B.warn("Failed to load session, creating new one instead",{sessionId:h,error:b instanceof Error?b.message:String(b)});try{await d();const y=await s.startSession();if(i(y),p(),u(),typeof window<"u"){const g=new URL(window.location.href);g.searchParams.set("session",y),window.history.replaceState({},"",g.toString())}B.info("Created new session after failed load",{sessionId:y})}catch(y){const g=y instanceof Error?y.message:String(y);c(`Failed to load or create session: ${g}`),a("error")}}},[s,a,i,c,p,u,d]),x=l.useCallback(async()=>{if(!s){c("No client available");return}try{const h=await s.startSession();if(i(h),p(),u(),typeof window<"u"){const b=new URL(window.location.href);b.searchParams.set("session",h),window.history.pushState({},"",b.toString())}}catch(h){const b=h instanceof Error?h.message:String(h);c(b)}},[s,i,c,p,u]),w=l.useCallback(async()=>{if(s)try{await s.disconnect(),a("disconnected"),i(null)}catch(h){const b=h instanceof Error?h.message:String(h);c(b)}},[s,a,i,c]);return l.useEffect(()=>{!s||n!=="disconnected"||(e?(B.info("Loading initial session from URL",{sessionId:e}),f(e)):d())},[s,n,e,d,f]),l.useEffect(()=>{n==="connected"&&!o&&!e&&x()},[n,o,e,x]),{connectionStatus:n,sessionId:o,connect:d,loadSession:f,startSession:x,disconnect:w}}function cn(s){const e=k(c=>c.toolCalls),n=k(c=>c.addToolCall),o=k(c=>c.updateToolCall),a=k(c=>c.addToolCallToCurrentMessage),i=k(c=>c.updateToolCallInCurrentMessage);return l.useEffect(()=>{if(!s)return;const c=s.onSessionUpdate(p=>{p.type==="tool_call"?(n(p.sessionId,p.toolCall),a(p.toolCall)):p.type==="tool_call_update"&&(o(p.sessionId,p.toolCallUpdate),i(p.toolCallUpdate))});return()=>{c()}},[s,n,o,a,i]),{toolCalls:e,getToolCallsForSession:c=>{const p=e[c];return p&&p.length>0?p:Object.values(e).flat()}}}const dn=T({id:v(),role:H(["user","assistant","system"]),content:v(),timestamp:re(),isStreaming:X().default(!1),streamingStartTime:R().optional(),metadata:_(v(),L()).optional(),toolCalls:M(ft).optional(),tokenUsage:ge.optional()}),un=T({value:v(),isSubmitting:X(),attachedFiles:M(T({name:v(),path:v(),size:R(),mimeType:v()}))});T({sessionId:v().nullable(),isConnected:X(),isStreaming:X(),messages:M(dn),input:un,error:v().nullable()});H(["disconnected","connecting","connected","error"]);const pn=T({name:v(),description:v().optional(),parameters:_(v(),L()).optional()}),fn=T({name:v(),description:v(),parameters:_(v(),L()),required:M(v()).optional()}),mn=T({name:v(),version:v().optional(),description:v().optional(),author:v().optional(),capabilities:M(pn).optional(),tools:M(fn).optional(),supportedFormats:M(v()).optional()}),hn=H(["initializing","ready","busy","error","terminated"]);T({status:hn,info:mn.optional(),pid:R().optional(),error:v().optional(),uptime:R().optional()});const ht=H(["user","assistant","system","tool"]),gn=H(["text","image","file","tool_call","tool_result"]),Z=T({type:gn}),xn=Z.extend({type:D("text"),text:v()}),bn=Z.extend({type:D("image"),url:v().url().optional(),data:v().optional(),mimeType:v().optional()}),yn=Z.extend({type:D("file"),name:v(),path:v().optional(),url:v().url().optional(),mimeType:v(),size:R().optional()}),wn=Z.extend({type:D("tool_call"),id:v(),name:v(),arguments:_(v(),L())}),vn=Z.extend({type:D("tool_result"),callId:v(),result:L(),error:v().optional()}),gt=Re("type",[xn,bn,yn,wn,vn]),xt=T({id:v(),role:ht,content:M(gt),timestamp:re(),metadata:_(v(),L()).optional()});T({id:v(),role:ht,contentDelta:gt,isComplete:X(),tokenUsage:T({inputTokens:R().optional(),outputTokens:R().optional(),totalTokens:R().optional()}).optional()});const bt=H(["idle","connecting","connected","active","streaming","error","disconnected"]),Nn=T({agentPath:v(),agentArgs:M(v()).optional(),environment:_(v(),v()).optional(),workingDirectory:v().optional(),timeout:R().optional()}),jn=T({agentName:v().optional(),agentVersion:v().optional(),capabilities:M(v()).optional(),startedAt:re(),lastActivityAt:re().optional()});T({id:v(),status:bt,config:Nn,metadata:jn.optional(),messages:M(xt),error:v().optional()});const ae=T({sessionId:v(),status:bt.optional(),message:xt.optional(),error:v().optional()}),Sn=ae.extend({type:D("tool_call"),toolCall:ft,messageId:v().optional()}),Cn=ae.extend({type:D("tool_call_update"),toolCallUpdate:on,messageId:v().optional()}),kn=ae.extend({type:D("tool_output"),toolOutput:T({id:v(),content:M(ms()).optional(),rawOutput:_(v(),L()).optional()}),messageId:v().optional()}),Tn=ae.extend({type:D("generic").optional()});hs([Sn,Cn,kn,Tn]);const In=[{id:"folder-1",name:"Item 1",type:"folder",children:[{id:"file-1-1",name:"Item 2",type:"file",extension:"tsx"},{id:"file-1-2",name:"Item 3",type:"file",extension:"ts"},{id:"file-1-3",name:"Item 4",type:"file",extension:"json"},{id:"file-1-4",name:"Item 5",type:"file",extension:"md"}]},{id:"folder-2",name:"Description 1",type:"folder",children:[{id:"file-2-1",name:"Description 2",type:"file",extension:"tsx"},{id:"file-2-2",name:"Description 3",type:"file",extension:"ts"},{id:"file-2-3",name:"Description 4",type:"file",extension:"json"},{id:"file-2-4",name:"Description 5",type:"file",extension:"md"}]},{id:"folder-3",name:"financial-docs",type:"folder",children:[]}];class En{data;constructor(e=In){this.data=e}async getRootItems(){return Promise.resolve(this.data)}async getItemChildren(e){const n=a=>{for(const i of a){if(i.id===e)return i;if(i.children){const c=n(i.children);if(c)return c}}},o=n(this.data);return Promise.resolve(o?.children||[])}async getItemDetails(e){const n=a=>{for(const i of a){if(i.id===e)return i;if(i.children){const c=n(i.children);if(c)return c}}},o=n(this.data);if(!o)throw new Error(`Item with id ${e} not found`);return Promise.resolve(o)}}function m(...s){return gs(xs(s))}const Rn=W("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-paragraph-sm font-medium ring-offset-background transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 cursor-pointer",{variants:{variant:{default:"bg-primary text-primary-foreground hover:bg-primary-hover",destructive:"bg-destructive text-destructive-foreground hover:bg-destructive-hover",outline:"border border-input bg-background hover:bg-accent-hover hover:text-accent-foreground",secondary:"bg-secondary text-secondary-foreground hover:bg-secondary-hover",ghost:"hover:bg-accent-hover hover:text-accent-foreground",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),ee=l.forwardRef(({className:s,variant:e,size:n,asChild:o=!1,...a},i)=>{const c=o?J:"button";return t.jsx(c,{className:m(Rn({variant:e,size:n,className:s})),ref:i,...a})});ee.displayName="Button";const Mn=l.forwardRef(({className:s,...e},n)=>t.jsx("div",{ref:n,className:m("rounded-lg border bg-card text-card-foreground shadow-sm",s),...e}));Mn.displayName="Card";const Un=l.forwardRef(({className:s,...e},n)=>t.jsx("div",{ref:n,className:m("flex flex-col space-y-1.5 p-6",s),...e}));Un.displayName="CardHeader";const An=l.forwardRef(({className:s,...e},n)=>t.jsx("div",{ref:n,className:m("text-2xl font-semibold leading-none tracking-tight",s),...e}));An.displayName="CardTitle";const Dn=l.forwardRef(({className:s,...e},n)=>t.jsx("div",{ref:n,className:m("text-sm text-muted-foreground",s),...e}));Dn.displayName="CardDescription";const zn=l.forwardRef(({className:s,...e},n)=>t.jsx("div",{ref:n,className:m("p-6 pt-0",s),...e}));zn.displayName="CardContent";const Pn=l.forwardRef(({className:s,...e},n)=>t.jsx("div",{ref:n,className:m("flex items-center p-6 pt-0",s),...e}));Pn.displayName="CardFooter";const yt=l.forwardRef(({title:s,description:e,guideUrl:n,guideText:o="Guide",suggestedPrompts:a=[],onPromptClick:i,onGuideClick:c,className:p,...u},r)=>{const d=w=>{i?.(w)},f=()=>{n&&window.open(n,"_blank","noopener,noreferrer"),c?.()},x=[];for(let w=0;w<a.length;w+=2)x.push(a.slice(w,w+2));return t.jsxs("div",{ref:r,className:m("flex flex-col items-start gap-6",p),...u,children:[t.jsx("h3",{className:"text-heading-4 text-text-primary",children:s}),t.jsx("p",{className:"text-subheading text-text-secondary max-w-prose",children:e}),(n||c)&&t.jsxs("button",{type:"button",onClick:f,className:"flex items-center gap-2 px-3 py-1.5 rounded-lg hover:bg-accent transition-colors",children:[t.jsx("span",{className:"text-paragraph-sm font-medium leading-normal text-text-primary",children:o}),t.jsx(tt,{className:"size-4 text-text-primary"})]}),a.length>0&&t.jsxs("div",{className:"flex flex-col gap-3 w-full max-w-prompt-container",children:[t.jsx("p",{className:"text-label text-text-tertiary",children:"Suggested Prompts"}),t.jsx("div",{className:"flex flex-col gap-2.5",children:x.map(w=>t.jsx("div",{className:"flex gap-2.5 items-center",children:w.map(h=>t.jsx("button",{type:"button",onClick:()=>d(h),className:"flex-1 flex items-start gap-2 p-3 bg-secondary hover:bg-secondary/80 rounded-2xl transition-colors min-w-0",children:t.jsx("span",{className:"text-paragraph font-normal leading-normal text-text-tertiary truncate",children:h})},h))},w.join("-")))})]})]})});yt.displayName="ChatEmptyState";const wt=l.createContext(void 0),xe=()=>{const s=l.useContext(wt);if(!s)throw new Error("ChatHeader components must be used within ChatHeader.Root");return s},vt=l.forwardRef(({defaultExpanded:s=!1,expanded:e,onExpandedChange:n,className:o,children:a,...i},c)=>{const[p,u]=l.useState(s),r=e??p,d=l.useCallback(h=>{u(h),n?.(h)},[n]),f=l.Children.toArray(a),x=f.find(h=>l.isValidElement(h)&&typeof h.type=="function"&&h.type.displayName==="ChatHeader.ExpandablePanel"),w=f.filter(h=>h!==x);return t.jsxs(wt.Provider,{value:{isExpanded:r,setIsExpanded:d},children:[t.jsx("div",{ref:c,className:m("flex items-center justify-between px-6 py-4",o),...i,children:w}),x]})});vt.displayName="ChatHeader.Root";const _n=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("h1",{ref:o,className:m("m-0 text-subheading font-semibold",s),...n,children:e}));_n.displayName="ChatHeader.Title";const Ln=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("flex items-center gap-3",s),...n,children:e}));Ln.displayName="ChatHeader.Actions";const Fn=s=>{switch(s){case"connected":return"bg-green-500";case"connecting":return"bg-yellow-500";case"error":return"bg-red-500";default:return"bg-gray-500"}},On=s=>{switch(s){case"connected":return"Connected";case"connecting":return"Connecting...";case"error":return"Connection Error";default:return"No Server"}},Hn=l.forwardRef(({status:s,statusText:e,className:n,...o},a)=>{const i=e??On(s),c=Fn(s);return t.jsxs("div",{ref:a,className:m("flex items-center gap-2",n),...o,children:[t.jsx("div",{className:m("h-2 w-2 rounded-full",c)}),t.jsx("span",{className:"text-paragraph-sm text-muted-foreground",children:i})]})});Hn.displayName="ChatHeader.StatusIndicator";const $n=l.forwardRef(({icon:s,className:e,children:n,onClick:o,...a},i)=>{const{isExpanded:c,setIsExpanded:p}=xe(),u=r=>{p(!c),o?.(r)};return t.jsxs("button",{ref:i,type:"button",onClick:u,className:m("rounded p-1 transition-colors hover:bg-background lg:hidden",e),"aria-label":c?"Collapse header":"Expand header",...a,children:[s&&t.jsx("div",{className:m("transition-transform duration-200",c&&"rotate-180"),children:s}),n]})});$n.displayName="ChatHeader.Toggle";const Nt=l.forwardRef(({className:s,children:e,...n},o)=>{const{isExpanded:a}=xe();return a?t.jsx("div",{ref:o,className:m("absolute top-full left-0 right-0 z-50 border-b border-border bg-card px-6 py-4 shadow-lg lg:hidden",s),...n,children:e}):null});Nt.displayName="ChatHeader.ExpandablePanel";const jt=l.forwardRef(({commands:s=[],showCommandMenu:e,commandMenuQuery:n,selectedMenuIndex:o,setSelectedMenuIndex:a,setMenuItemCount:i,triggerCounter:c,onChange:p,className:u,...r},d)=>{const f=l.useCallback((w,h)=>{const b=w.toLowerCase(),y=h.toLowerCase();if(!h)return 1;if(b.includes(y))return 1-y.length/b.length;let g=0;for(let N=0;N<b.length&&g<y.length;N++)b[N]===y[g]&&g++;return g===y.length?.5-g/b.length:0},[]),x=l.useMemo(()=>s.map(w=>({...w,score:Math.max(f(w.label,n),w.description?f(w.description,n):0)})).filter(w=>w.score>0).sort((w,h)=>h.score-w.score),[s,n,f]);return l.useEffect(()=>{i(x.length)},[x.length,i]),l.useEffect(()=>{a(0)},[a]),l.useEffect(()=>{c>0&&x[o]&&(x[o].onSelect(),p(""))},[c,x,o,p]),!e||x.length===0?null:t.jsxs("div",{ref:d,className:m("absolute bottom-full left-0 z-50 mb-2 w-full max-w-md","rounded-md border border-border bg-card p-2 shadow-lg",u),...r,children:[t.jsx("div",{className:"text-caption font-semibold text-muted-foreground px-2 py-1",children:"Commands"}),t.jsx("div",{className:"max-h-64 overflow-y-auto",children:x.map((w,h)=>t.jsxs("button",{type:"button",onClick:()=>w.onSelect(),className:m("w-full rounded-sm px-2 py-2 text-left text-paragraph-sm transition-colors","flex items-start gap-2","hover:bg-muted",h===o&&"bg-muted"),children:[w.icon&&t.jsx("span",{className:"shrink-0 mt-0.5",children:w.icon}),t.jsxs("div",{className:"flex-1 min-w-0",children:[t.jsx("div",{className:"font-medium",children:w.label}),w.description&&t.jsx("div",{className:"text-caption text-muted-foreground truncate",children:w.description})]})]},w.id))})]})});jt.displayName="ChatInputCommandMenu";const St=l.createContext(void 0),ie=()=>{const s=l.useContext(St);if(!s)throw new Error("ChatInput components must be used within ChatInput.Root");return s},Ct=l.forwardRef(({client:s,value:e,onChange:n,onSubmit:o,disabled:a=!1,isSubmitting:i,submitOnEnter:c=!0,className:p,children:u,...r},d)=>{const f=l.useRef(null),x=an(s??null),w=k(U=>U.isStreaming),h=x?x.value:e||"",b=x?x.onChange:n||(()=>{}),y=x?x.onSubmit:o||(async()=>{}),g=x?x.isSubmitting||w:i||!1,[N,j]=l.useState(!1),[E,I]=l.useState(""),[A,C]=l.useState(0),[z,F]=l.useState(0),[ue,pe]=l.useState(0),ts=l.useCallback(()=>{pe(U=>U+1)},[]),ss=async U=>{U.preventDefault(),h.trim()&&!g&&!a&&(await y(),setTimeout(()=>{f.current?.focus()},0))},ns=U=>{const O=U.target;!(O.tagName==="BUTTON"||O.tagName==="INPUT"||O.tagName==="TEXTAREA"||O.closest("button"))&&f.current&&f.current.focus()},os=U=>{const O=U.target;!(O.tagName==="BUTTON"||O.tagName==="INPUT"||O.tagName==="TEXTAREA"||O.closest("button"))&&U.key===" "&&(U.preventDefault(),f.current&&f.current.focus())};return l.useEffect(()=>{const U=document.querySelector('textarea[name="chat-input"]');U&&f.current!==U&&(f.current=U)},[]),l.useEffect(()=>{!h&&f.current&&(f.current.style.height="auto",f.current.style.overflowY="hidden")},[h]),t.jsx(St.Provider,{value:{value:h,onChange:b,onSubmit:y,disabled:a,isSubmitting:g,submitOnEnter:c,showCommandMenu:N,setShowCommandMenu:j,commandMenuQuery:E,setCommandMenuQuery:I,selectedMenuIndex:A,setSelectedMenuIndex:C,menuItemCount:z,setMenuItemCount:F,triggerMenuSelect:ts,triggerCounter:ue},children:t.jsx("form",{ref:d,onSubmit:ss,onClick:ns,onKeyDown:os,className:m("relative w-full divide-y rounded-xl border bg-background shadow-md",p),...r,children:u})})});Ct.displayName="ChatInput.Root";const kt=l.forwardRef(({asChild:s=!1,className:e,onKeyDown:n,children:o,...a},i)=>{const{value:c,onChange:p,onSubmit:u,disabled:r,isSubmitting:d,submitOnEnter:f,showCommandMenu:x,setShowCommandMenu:w,setCommandMenuQuery:h,setSelectedMenuIndex:b,menuItemCount:y,triggerMenuSelect:g}=ie(),N=l.useRef(null),A={ref:l.useCallback(C=>{N.current=C,typeof i=="function"?i(C):i&&(i.current=C)},[i]),name:"chat-input",value:c,onChange:C=>{const z=C.target.value;if(p(z),z.startsWith("/")&&!z.includes(`
6
+ `)){w(!0);const pe=z.slice(1);h(pe)}else w(!1),h("");const F=N.current;if(!F)return;F.style.height="auto";const ue=Math.min(F.scrollHeight,164);F.style.height=`${ue}px`,F.scrollHeight>164?F.style.overflowY="auto":F.style.overflowY="hidden"},onKeyDown:C=>{if(x&&y>0){if(C.key==="ArrowDown"){C.preventDefault(),b(z=>(z+1)%y);return}else if(C.key==="ArrowUp"){C.preventDefault(),b(z=>(z-1+y)%y);return}else if(C.key==="Enter"&&!C.shiftKey){C.preventDefault(),g();return}else if(C.key==="Escape"){C.preventDefault(),w(!1),h("");return}}f&&C.key==="Enter"&&!C.shiftKey&&(c.trim()&&!d&&!r?(C.preventDefault(),u()):(d||r)&&C.preventDefault()),n?.(C)},disabled:r,...a};return s&&l.isValidElement(o)?l.cloneElement(o,A):t.jsx("textarea",{...A,className:m("w-full resize-none rounded-none border-none p-4 shadow-none","outline-none ring-0 field-sizing-content max-h-[6lh]","bg-transparent dark:bg-transparent focus-visible:ring-0","text-paragraph-sm placeholder:text-muted-foreground","disabled:cursor-not-allowed disabled:opacity-50",e)})});kt.displayName="ChatInput.Field";const Tt=l.forwardRef(({asChild:s=!1,className:e,disabled:n,children:o,...a},i)=>{const{value:c,disabled:p,isSubmitting:u}=ie(),r=n||p||u||!c.trim(),d=s?J:ee;return t.jsx(d,{ref:i,type:"submit",disabled:r,variant:s?void 0:"default",size:"icon",className:m(!s&&"gap-1.5 rounded-full",e),...a,children:o})});Tt.displayName="ChatInput.Submit";const It=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("flex items-center justify-between p-2",s),...n,children:e}));It.displayName="ChatInput.Toolbar";const Et=l.forwardRef(({asChild:s=!1,className:e,children:n,onClick:o,...a},i)=>{const{value:c,onChange:p,setShowCommandMenu:u,setCommandMenuQuery:r}=ie(),d=x=>{c.startsWith("/")||(p("/"),u(!0),r("")),o?.(x)},f=s?J:ee;return t.jsx(f,{ref:i,type:"button",variant:"ghost",size:"icon",className:m("rounded-full",e),onClick:d,...a,children:n||t.jsx(Rs,{className:"size-4"})})});Et.displayName="ChatInput.Actions";const Rt=l.forwardRef(({asChild:s=!1,className:e,children:n,...o},a)=>{const i=s?J:ee;return t.jsx(i,{ref:a,type:"button",variant:"ghost",size:"icon",className:m("rounded-full",e),...o,children:n||t.jsx(Ms,{className:"size-4"})})});Rt.displayName="ChatInput.Attachment";const Mt=l.forwardRef(({asChild:s=!1,className:e,children:n,...o},a)=>{const i=s?J:ee;return t.jsx(i,{ref:a,type:"button",variant:"ghost",size:"icon",className:m("rounded-full",e),...o,children:n||t.jsx(Us,{className:"size-4"})})});Mt.displayName="ChatInput.VoiceInput";const Ut=l.forwardRef(({commands:s=[],className:e,onChange:n,...o},a)=>{const{showCommandMenu:i,commandMenuQuery:c,selectedMenuIndex:p,setSelectedMenuIndex:u,setMenuItemCount:r,triggerCounter:d,onChange:f}=ie();return t.jsx(jt,{ref:a,commands:s,showCommandMenu:i,commandMenuQuery:c,selectedMenuIndex:p,setSelectedMenuIndex:u,setMenuItemCount:r,triggerCounter:d,onChange:f,className:e,...o})});Ut.displayName="ChatInput.CommandMenu";const Bn=({className:s,...e})=>t.jsx(as,{className:m("flex h-full w-full data-[panel-group-direction=vertical]:flex-col",s),...e}),At=({className:s,...e})=>t.jsx(is,{className:m(s),...e}),Vn=({withHandle:s,className:e,...n})=>t.jsx(ls,{className:m("relative flex w-px items-center justify-center bg-border after:absolute after:inset-y-0 after:left-1/2 after:w-1 after:-translate-x-1/2 focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring focus-visible:ring-offset-1 data-[panel-group-direction=vertical]:h-px data-[panel-group-direction=vertical]:w-full data-[panel-group-direction=vertical]:after:left-0 data-[panel-group-direction=vertical]:after:h-1 data-[panel-group-direction=vertical]:after:w-full data-[panel-group-direction=vertical]:after:-translate-y-1/2 data-[panel-group-direction=vertical]:after:translate-x-0 [&[data-panel-group-direction=vertical]>div]:rotate-90",e),...n,children:s&&t.jsx("div",{className:"z-10 flex h-4 w-3 items-center justify-center rounded-sm border bg-border",children:t.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",className:"h-2.5 w-2.5",children:[t.jsx("title",{children:"Resize Handle"}),t.jsx("circle",{cx:"9",cy:"12",r:"1"}),t.jsx("circle",{cx:"9",cy:"5",r:"1"}),t.jsx("circle",{cx:"9",cy:"19",r:"1"}),t.jsx("circle",{cx:"15",cy:"12",r:"1"}),t.jsx("circle",{cx:"15",cy:"5",r:"1"}),t.jsx("circle",{cx:"15",cy:"19",r:"1"})]})})}),Wn=({...s})=>t.jsx(bs,{position:"top-center",className:"toaster group",style:{"--top-offset":"16px","--width:":"calc(100% - 2 * var(--top-offset))",position:"absolute",zIndex:5,top:"var(--top-offset)",left:"50%",transform:"translateX(-50%)",width:"calc(100% - 2 * var(--top-offset))",maxWidth:"480px"},offset:0,toastOptions:{classNames:{toast:"group toast group-[.toaster]:bg-background group-[.toaster]:text-foreground group-[.toaster]:border-border group-[.toaster]:shadow-lg",description:"group-[.toast]:text-muted-foreground",actionButton:"group-[.toast]:bg-primary group-[.toast]:text-primary-foreground",cancelButton:"group-[.toast]:bg-muted group-[.toast]:text-muted-foreground"}},...s}),Dt=l.createContext(void 0),be=()=>{const s=l.useContext(Dt);if(!s)throw new Error("ChatLayout components must be used within ChatLayout.Root");return s},zt=l.forwardRef(({defaultSidebarOpen:s=!1,defaultPanelSize:e="hidden",defaultActiveTab:n="todo",className:o,children:a,...i},c)=>{const[p,u]=l.useState(s),[r,d]=l.useState(e),[f,x]=l.useState(n);return t.jsx(Dt.Provider,{value:{sidebarOpen:p,setSidebarOpen:u,panelSize:r,setPanelSize:d,activeTab:f,setActiveTab:x},children:t.jsx("div",{ref:c,className:m("flex h-screen flex-row bg-background text-foreground",o),...i,children:t.jsx(Bn,{direction:"horizontal",className:"flex-1",children:a})})})});zt.displayName="ChatLayout.Root";const qn=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("relative z-10 border-b border-border bg-card shrink-0",s),...n,children:e}));qn.displayName="ChatLayout.Header";const Pt=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx(At,{defaultSize:75,minSize:50,children:t.jsx("div",{ref:o,className:m("flex flex-1 flex-col overflow-hidden h-full",s),...n,children:e})}));Pt.displayName="ChatLayout.Main";const _t=l.forwardRef(({showToaster:s=!0,className:e,children:n,...o},a)=>t.jsxs("div",{ref:a,className:m("relative flex flex-1 flex-col overflow-hidden",e),...o,children:[n,s&&t.jsx(Wn,{})]}));_t.displayName="ChatLayout.Body";const Lt=l.forwardRef(({className:s,children:e,onScrollChange:n,showScrollToBottom:o=!0,...a},i)=>{const[c,p]=l.useState(!1),u=l.useRef(null);l.useImperativeHandle(i,()=>u.current);const r=l.useCallback(()=>{const x=u.current;if(!x)return;const{scrollTop:w,scrollHeight:h,clientHeight:b}=x,g=h-w-b<100;p(!g&&o),n?.(g)},[n,o]),d=l.useCallback(()=>{r()},[r]),f=l.useCallback(()=>{const x=u.current;x&&x.scrollTo({top:x.scrollHeight,behavior:"smooth"})},[]);return l.useEffect(()=>{r()},[r]),t.jsxs("div",{className:"relative flex-1 overflow-hidden",children:[t.jsx("div",{ref:u,className:m("h-full overflow-y-auto flex flex-col",s),onScroll:d,...a,children:t.jsx("div",{className:"mx-auto max-w-chat flex-1 w-full flex flex-col",children:e})}),c&&t.jsx("button",{type:"button",onClick:f,className:m("absolute bottom-4 left-1/2 -translate-x-1/2 z-10","flex items-center justify-center p-2 rounded-full","bg-card border border-border shadow-lg","text-foreground","hover:bg-accent hover:text-accent-foreground","transition-all duration-200 ease-in-out","animate-in fade-in slide-in-from-bottom-2"),"aria-label":"Scroll to bottom",children:t.jsx(As,{className:"size-4"})})]})});Lt.displayName="ChatLayout.Messages";const Ft=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("bg-linear-to-t from-background to-transparent px-4 pb-4",s),...n,children:t.jsx("div",{className:"mx-auto max-w-chat",children:e})}));Ft.displayName="ChatLayout.Footer";const Qn=l.forwardRef(({className:s,children:e,...n},o)=>{const{sidebarOpen:a}=be();return a?t.jsx("div",{ref:o,className:m("border-r border-border bg-card w-64 overflow-y-auto",s),...n,children:e}):null});Qn.displayName="ChatLayout.Sidebar";const Ot=l.forwardRef(({breakpoint:s="lg",className:e,children:n,...o},a)=>{const{panelSize:i}=be();return i==="hidden"?null:t.jsxs(t.Fragment,{children:[t.jsx(Vn,{withHandle:!0}),t.jsx(At,{defaultSize:25,minSize:15,maxSize:50,children:t.jsx("div",{ref:a,className:m("hidden h-full border-l border-border bg-card overflow-y-auto transition-all duration-300",s==="md"&&"md:block",s==="lg"&&"lg:block",s==="xl"&&"xl:block",s==="2xl"&&"2xl:block",e),...o,children:n})})]})});Ot.displayName="ChatLayout.Aside";const Kn=ws,Gn=vs,Xn=l.forwardRef(({className:s,inset:e,children:n,...o},a)=>t.jsxs(Me,{ref:a,className:m("flex cursor-default select-none items-center rounded-sm px-2 py-1.5 text-paragraph-sm outline-none","focus:bg-muted data-[state=open]:bg-muted",e&&"pl-8",s),...o,children:[n,t.jsx(tt,{className:"ml-auto h-4 w-4"})]}));Xn.displayName=Me.displayName;const Jn=l.forwardRef(({className:s,...e},n)=>t.jsx(Ue,{ref:n,className:m("z-50 min-w-[8rem] overflow-hidden rounded-md border border-border bg-card p-1 shadow-lg","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2","data-[side=left]:slide-in-from-right-2","data-[side=right]:slide-in-from-left-2","data-[side=top]:slide-in-from-bottom-2",s),...e}));Jn.displayName=Ue.displayName;const Ht=l.forwardRef(({className:s,sideOffset:e=4,...n},o)=>t.jsx(ys,{children:t.jsx(Ae,{ref:o,sideOffset:e,className:m("z-50 min-w-[8rem] overflow-hidden rounded-lg border border-border bg-popover p-0.5 shadow-md","data-[state=open]:animate-in data-[state=closed]:animate-out","data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0","data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95","data-[side=bottom]:slide-in-from-top-2","data-[side=left]:slide-in-from-right-2","data-[side=right]:slide-in-from-left-2","data-[side=top]:slide-in-from-bottom-2",s),...n})}));Ht.displayName=Ae.displayName;const se=l.forwardRef(({className:s,inset:e,...n},o)=>t.jsx(De,{ref:o,className:m("relative flex cursor-pointer select-none items-center rounded-sm px-2 py-1.5 text-paragraph-sm outline-none transition-colors","focus:bg-muted focus:text-foreground","data-[disabled]:pointer-events-none data-[disabled]:opacity-50",e&&"pl-8",s),...n}));se.displayName=De.displayName;const Yn=l.forwardRef(({className:s,children:e,...n},o)=>t.jsxs(ze,{ref:o,className:m("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-paragraph-sm outline-none transition-colors","focus:bg-muted focus:text-foreground","data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),...n,children:[t.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:t.jsx(Pe,{children:t.jsx(st,{className:"h-4 w-4"})})}),e]}));Yn.displayName=ze.displayName;const Zn=l.forwardRef(({className:s,children:e,...n},o)=>t.jsxs(_e,{ref:o,className:m("relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-paragraph-sm outline-none transition-colors","focus:bg-muted focus:text-foreground","data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),...n,children:[t.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:t.jsx(Pe,{children:t.jsx(nt,{className:"h-2 w-2 fill-current"})})}),e]}));Zn.displayName=_e.displayName;const eo=l.forwardRef(({className:s,inset:e,...n},o)=>t.jsx(Le,{ref:o,className:m("px-2 py-1.5 text-paragraph-sm font-semibold",e&&"pl-8",s),...n}));eo.displayName=Le.displayName;const $t=l.forwardRef(({className:s,...e},n)=>t.jsx(Fe,{ref:n,className:m("-mx-1 my-1 h-px bg-border",s),...e}));$t.displayName=Fe.displayName;function Bt({item:s,level:e=0,onSelect:n,selectedId:o,isDropTarget:a=!1,onDownload:i,onRename:c,onDelete:p}){const[u,r]=l.useState(!0),[d,f]=l.useState(!1),x=o===s.id,w=()=>{s.type==="folder"&&r(!u)},h=()=>{n?.(s),s.type==="folder"&&w()},b=g=>{g.key==="Enter"||g.key===" "?(g.preventDefault(),h()):g.key==="ArrowRight"&&s.type==="folder"&&!u?(g.preventDefault(),r(!0)):g.key==="ArrowLeft"&&s.type==="folder"&&u&&(g.preventDefault(),r(!1))},y=()=>e===0?"p-2":e===1?"pl-8 pr-2 py-2":"pl-16 pr-2 py-2";return t.jsxs("div",{className:"flex flex-col w-full",children:[t.jsxs("div",{role:"button",tabIndex:0,"aria-expanded":s.type==="folder"?u:void 0,className:m("group flex items-center gap-2 rounded-md cursor-pointer transition-colors text-paragraph-sm",y(),"hover:bg-accent-hover","focus-visible:outline-none focus-visible:ring-[3px] focus-visible:ring-border-dark",x&&"bg-accent",a&&["bg-accent","border border-dashed border-border-dark"]),onClick:h,onKeyDown:b,onFocus:()=>f(!0),onBlur:()=>f(!1),children:[t.jsx("div",{className:"shrink-0 size-4 flex items-center justify-center text-foreground",children:s.type==="folder"?u?t.jsx(Ds,{className:"size-4"}):t.jsx(zs,{className:"size-4"}):t.jsx(Ps,{className:"size-4"})}),t.jsx("p",{className:"flex-1 text-foreground whitespace-nowrap overflow-hidden text-ellipsis",children:s.name}),t.jsxs(Kn,{children:[t.jsx(Gn,{asChild:!0,children:t.jsx("button",{className:m("shrink-0 size-4 transition-opacity text-muted-foreground hover:text-foreground","opacity-0 group-hover:opacity-100",d&&"opacity-0"),onClick:g=>{g.stopPropagation()},"aria-label":"More options",type:"button",tabIndex:-1,children:t.jsx(_s,{className:"size-4"})})}),t.jsxs(Ht,{align:"end",side:"bottom",sideOffset:5,alignOffset:0,collisionPadding:8,className:"w-40 z-[100]",onClick:g=>g.stopPropagation(),children:[i&&t.jsx(se,{onClick:g=>{g.stopPropagation(),i(s)},children:"Download"}),c&&t.jsx(se,{onClick:g=>{g.stopPropagation(),c(s)},children:"Rename"}),(i||c)&&p&&t.jsx($t,{}),p&&t.jsx(se,{className:"text-destructive focus:text-destructive focus:bg-muted",onClick:g=>{g.stopPropagation(),p(s)},children:t.jsx("span",{className:"text-paragraph-sm",children:"Delete"})})]})]}),s.type==="folder"&&t.jsx("div",{className:"shrink-0 size-4 flex items-center justify-center text-muted-foreground",children:t.jsx(Y,{className:m("size-4 transition-transform",!u&&"-rotate-90")})})]}),s.type==="folder"&&u&&s.children&&t.jsx("div",{className:"flex flex-col",children:s.children.map(g=>t.jsx(Bt,{item:g,level:e+1,...n&&{onSelect:n},...o&&{selectedId:o},...i&&{onDownload:i},...c&&{onRename:c},...p&&{onDelete:p}},g.id))})]})}const to=new En;function so({className:s,provider:e=to,onItemSelect:n,onDownload:o,onRename:a,onDelete:i}){const[c,p]=l.useState([]),[u,r]=l.useState(),[d,f]=l.useState(!0),[x,w]=l.useState();l.useEffect(()=>{(async()=>{try{f(!0);const y=await e.getRootItems();p(y),w(void 0)}catch(y){w(y instanceof Error?y.message:"Failed to load items")}finally{f(!1)}})()},[e]);const h=b=>{r(b.id),n?.(b)};return d?t.jsx("div",{className:m("p-4",s),children:t.jsx("p",{className:"text-sm text-muted-foreground",children:"Loading..."})}):x?t.jsx("div",{className:m("p-4",s),children:t.jsxs("p",{className:"text-sm text-destructive",children:["Error: ",x]})}):t.jsx("div",{className:m("flex flex-col px-4 py-3",s),children:c.length===0?t.jsx("p",{className:"text-sm text-muted-foreground",children:"No items found"}):c.map(b=>t.jsx(Bt,{item:b,onSelect:h,...u&&{selectedId:u},...o&&{onDownload:o},...a&&{onRename:a},...i&&{onDelete:i}},b.id))})}const Vt=l.forwardRef(({source:s,isSelected:e,className:n,...o},a)=>t.jsxs("button",{ref:a,type:"button",className:m("flex w-full text-left gap-2 items-start p-3 rounded-lg transition-colors cursor-pointer border border-transparent","hover:bg-accent-hover hover:border-border/50",e&&"bg-accent-hover border-border/50",n),onClick:()=>window.open(s.url,"_blank"),...o,children:[t.jsx("div",{className:"flex gap-2 items-center py-[2px] shrink-0",children:t.jsx("div",{className:"relative rounded-[3px] shrink-0 size-4 overflow-hidden bg-muted",children:s.favicon?t.jsx("img",{alt:s.sourceName,className:"size-full object-cover",src:s.favicon}):t.jsx("div",{className:"size-full bg-muted"})})}),t.jsxs("div",{className:"flex flex-1 flex-col gap-1 min-w-0",children:[t.jsxs("div",{className:"text-caption leading-normal text-foreground",children:[t.jsx("span",{className:"font-medium",children:s.sourceName}),t.jsxs("span",{className:"text-muted-foreground",children:[" · ",s.title]})]}),t.jsx("p",{className:"text-caption leading-relaxed text-muted-foreground line-clamp-3",children:s.snippet})]})]}));Vt.displayName="SourceListItem";const le=l.forwardRef(({todos:s,className:e,...n},o)=>t.jsx("div",{ref:o,className:m("space-y-2",e),...n,children:s.length===0?t.jsx("div",{className:"flex items-center justify-center h-full min-h-[200px]",children:t.jsx("p",{className:"text-paragraph-sm text-muted-foreground",children:"No todos yet"})}):s.map(a=>t.jsx("div",{className:"text-paragraph-sm",children:a.text},a.id))}));le.displayName="TodoTabContent";const ce=l.forwardRef(({files:s=[],provider:e,onFileSelect:n,className:o,...a},i)=>{const c=l.useCallback(r=>{console.log("Download:",r.name)},[]),p=l.useCallback(r=>{console.log("Rename:",r.name)},[]),u=l.useCallback(r=>{console.log("Delete:",r.name)},[]);return t.jsx("div",{ref:i,className:m("h-full",o),...a,children:t.jsx(so,{...e&&{provider:e},onItemSelect:r=>{r.type==="file"&&n&&n(r.path||r.name)},onDownload:c,onRename:p,onDelete:u,className:"h-full"})})});ce.displayName="FilesTabContent";const de=l.forwardRef(({sources:s=[],className:e,...n},o)=>t.jsx("div",{ref:o,className:m("space-y-2",e),...n,children:s.length===0?t.jsx("div",{className:"flex items-center justify-center h-full min-h-[200px]",children:t.jsx("p",{className:"text-paragraph-sm text-muted-foreground",children:"No sources available"})}):s.map(a=>t.jsx(Vt,{source:a},a.id))}));de.displayName="SourcesTabContent";const no=l.forwardRef(({data:s,className:e,...n},o)=>t.jsxs("div",{ref:o,className:m("space-y-4",e),...n,children:[t.jsx("h3",{className:"font-semibold text-subheading",children:"Database"}),t.jsxs("div",{className:"text-paragraph-sm text-muted-foreground",children:[t.jsx("p",{children:"Database viewer - panel automatically expanded to large size"}),t.jsxs("div",{className:"mt-4 p-4 border border-border rounded",children:[t.jsx("p",{children:"Your large data table would go here"}),s&&typeof s=="object"?t.jsx("pre",{className:"mt-2 text-caption overflow-auto",children:JSON.stringify(s,null,2)}):null]})]})]}));no.displayName="DatabaseTabContent";const ye=Ns,K=l.forwardRef(({className:s,...e},n)=>t.jsx(Oe,{ref:n,className:m("inline-flex h-10 items-center rounded-md bg-muted p-1 text-muted-foreground gap-1",s),...e}));K.displayName=Oe.displayName;const G=l.forwardRef(({className:s,...e},n)=>t.jsx(He,{ref:n,className:m("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-paragraph-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",s),...e}));G.displayName=He.displayName;const P=l.forwardRef(({className:s,...e},n)=>t.jsx($e,{ref:n,className:m("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",s),...e}));P.displayName=$e.displayName;const Wt=l.forwardRef(({todo:s,className:e,...n},o)=>t.jsx("div",{ref:o,className:m("flex items-center gap-3 px-3 py-2 rounded-lg",e),...n,children:t.jsx("span",{className:m("flex-1 text-[var(--font-size)] font-[var(--font-family)]",s.status==="completed"&&"line-through opacity-60",s.status==="in_progress"&&"shimmer-animation"),children:s.text})}));Wt.displayName="TodoListItem";const qt=l.forwardRef(({client:s,todos:e,className:n,...o},a)=>{const i=e||[];return t.jsx("div",{ref:a,className:m("space-y-2 max-h-64 overflow-y-auto",n),...o,children:i.length===0?t.jsx("p",{className:"text-paragraph-sm text-foreground opacity-60 italic",children:"No tasks yet."}):i.map(c=>t.jsx(Wt,{todo:c},c.id))})});qt.displayName="TodoList";const oo=l.forwardRef(({client:s,todos:e,variant:n="animated",showIcons:o=!1,visibleTabs:a=["todo","files","database"],className:i,...c},p)=>{const u=e||[],[r,d]=l.useState(a[0]||"todo"),f=l.useRef(null),x=l.useRef(null);l.useEffect(()=>{const y=setTimeout(()=>{const g=f.current;if(r&&g){const N=x.current;if(N){const j=g.getBoundingClientRect(),E=N.getBoundingClientRect(),I=E.left-j.left,A=E.width,C=I/j.width*100,z=100-(I+A)/j.width*100;g.style.clipPath=`inset(0 ${z.toFixed(2)}% 0 ${C.toFixed(2)}% round 999px)`}}},0);return()=>clearTimeout(y)},[r]);const h=[{id:"todo",label:n==="pills"?"To-do":"To-Do List",icon:ot},{id:"files",label:"Files",icon:rt},{id:"database",label:"Database",icon:at},{id:"sources",label:"Sources",icon:it}].filter(b=>a.includes(b.id));return t.jsx("div",{ref:p,className:m("select-none",i),...c,children:t.jsxs(ye,{value:r,onValueChange:d,className:"w-full",children:[n==="pills"?t.jsx(K,{className:m("w-full justify-start bg-transparent p-0 h-auto","gap-1"),children:h.map(b=>{const y=b.icon;return t.jsxs(G,{value:b.id,className:m("gap-2 px-3 py-1.5 rounded-lg text-paragraph-sm font-medium","data-[state=active]:bg-zinc-100 data-[state=active]:text-foreground","data-[state=inactive]:text-muted-foreground"),children:[o&&y&&t.jsx(y,{className:"size-4"}),b.label]},b.id)})}):t.jsxs("div",{className:"relative mb-4 border-border",children:[t.jsx(K,{className:"bg-transparent p-0 h-auto rounded-none w-full border-none",children:h.map(b=>t.jsx(G,{value:b.id,className:"px-3 py-1 text-paragraph-sm font-medium rounded-none text-foreground opacity-60 data-[state=active]:opacity-100 data-[state=active]:bg-transparent data-[state=active]:shadow-none",children:b.label},b.id))}),t.jsx("div",{ref:f,className:"absolute top-0 left-0 w-full overflow-hidden z-10 pointer-events-none",style:{clipPath:"inset(0 100% 0 0% round 999px)",transition:"clip-path 0.25s ease-out"},children:t.jsx(K,{className:"bg-secondary p-0 h-auto rounded-none w-full border-none",children:h.map(b=>t.jsx(G,{value:b.id,ref:r===b.id?x:null,className:"px-3 py-1 text-paragraph-sm font-medium rounded-none text-primary bg-transparent data-[state=active]:shadow-none shadow-none",tabIndex:-1,children:b.label},b.id))})})]}),t.jsx(P,{value:"todo",className:n==="pills"?"mt-0":"",children:n==="pills"?t.jsx(le,{todos:u}):t.jsx(qt,{todos:u})}),t.jsx(P,{value:"files",className:n==="pills"?"mt-0":"",children:t.jsx(ce,{})}),t.jsx(P,{value:"database",className:n==="pills"?"mt-0":"",children:t.jsx("div",{className:"text-paragraph-sm text-foreground opacity-60 italic",children:"Database tab coming soon..."})}),t.jsx(P,{value:"sources",className:n==="pills"?"mt-0":"",children:t.jsx(de,{})})]})})});oo.displayName="ChatSecondaryPanel";const ro=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("flex h-full flex-col",s),...n,children:e}));ro.displayName="ChatSidebar.Root";const ao=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("border-b border-border px-4 py-3",s),...n,children:e}));ao.displayName="ChatSidebar.Header";const io=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("flex-1 overflow-y-auto p-4",s),...n,children:e}));io.displayName="ChatSidebar.Content";const lo=l.forwardRef(({className:s,children:e,...n},o)=>t.jsx("div",{ref:o,className:m("border-t border-border px-4 py-3",s),...n,children:e}));lo.displayName="ChatSidebar.Footer";const co=l.forwardRef(({children:s,className:e,...n},o)=>{const[a,i]=l.useState(s),[c,p]=l.useState(!1),u=l.useRef(s),r=l.useRef(!0);return l.useEffect(()=>{if(r.current){r.current=!1,u.current=s;return}if(u.current===s)return;p(!0);const d=setTimeout(()=>{i(s),u.current=s,requestAnimationFrame(()=>{p(!1)})},150);return()=>{clearTimeout(d)}},[s]),t.jsx("span",{ref:o,className:m("text-sm text-foreground opacity-60 transition-opacity duration-300",c?"opacity-0":"opacity-60",e),...n,children:a})});co.displayName="ChatStatus";const V=$("gui");function uo({agentName:s,showHeader:e}){const{isExpanded:n,setIsExpanded:o}=xe();return t.jsxs("div",{className:"flex lg:hidden items-center gap-2 flex-1",children:[e&&t.jsx("div",{className:"flex items-center gap-2 flex-1",children:t.jsx("h1",{className:"text-heading-4 text-foreground",children:s})}),!e&&t.jsx("div",{className:"flex-1"}),t.jsx("button",{type:"button",className:"flex items-center justify-center shrink-0 cursor-pointer","aria-label":"Toggle menu",onClick:()=>o(!n),children:t.jsx(lt,{className:m("size-4 text-muted-foreground transition-transform duration-200",n?"":"rotate-180")})})]})}function po({agentName:s,todos:e,sources:n,showHeader:o}){const{panelSize:a,setPanelSize:i}=be();return t.jsxs(vt,{className:m("border-b border-border bg-card relative lg:p-0","[border-bottom-width:0.5px]"),children:[t.jsxs("div",{className:"hidden lg:flex items-center gap-2 w-full h-16 py-5 pl-6 pr-4",children:[o&&t.jsx("div",{className:"flex items-center gap-2 flex-1",children:t.jsx("h1",{className:"text-heading-4 text-foreground",children:s})}),!o&&t.jsx("div",{className:"flex-1"}),t.jsx("button",{type:"button",className:"flex items-center justify-center shrink-0 cursor-pointer","aria-label":"Toggle sidebar",onClick:()=>{i(a==="hidden"?"small":"hidden")},children:t.jsx(Hs,{className:"size-4 text-muted-foreground"})})]}),t.jsx(uo,{agentName:s,showHeader:o}),t.jsx(Nt,{className:m("pt-6 pb-8 px-6","border-b border-border bg-card","shadow-[0_4px_16px_0_rgba(0,0,0,0.04)]","[border-bottom-width:0.5px]"),children:t.jsxs(ye,{defaultValue:"todo",className:"w-full",children:[t.jsx(we,{showIcons:!0,visibleTabs:["todo","files","sources"],variant:"default"}),t.jsx(P,{value:"todo",className:"mt-4",children:t.jsx(le,{todos:e})}),t.jsx(P,{value:"files",className:"mt-4",children:t.jsx(ce,{})}),t.jsx(P,{value:"sources",className:"mt-4",children:t.jsx(de,{sources:n})})]})})]})}function fo({client:s,initialSessionId:e,error:n}){const{connectionStatus:o,connect:a,sessionId:i}=ln(s,e),{messages:c,sendMessage:p}=mt(s);cn(s);const u=k(y=>y.error),[r,d]=l.useState("Agent"),[f,x]=l.useState(typeof window<"u"?window.innerWidth>=1024:!0);if(l.useEffect(()=>{V.debug("Connection status changed",{status:o}),o==="error"&&u&&V.error("Connection error occurred",{error:u})},[o,u]),l.useEffect(()=>{if(s&&i){const y=s.getCurrentSession();y?.metadata?.agentName&&d(y.metadata.agentName)}},[s,i]),l.useEffect(()=>{const y=window.matchMedia("(min-width: 1024px)"),g=N=>{x(N.matches)};return x(y.matches),y.addEventListener("change",g),()=>{y.removeEventListener("change",g)}},[]),n)return t.jsx("div",{className:"flex items-center justify-center h-screen bg-background",children:t.jsxs("div",{className:"text-center p-8 max-w-md",children:[t.jsx("h1",{className:"text-2xl font-bold text-destructive mb-4",children:"Initialization Error"}),t.jsx("p",{className:"text-foreground mb-4",children:n}),t.jsx("p",{className:"text-sm text-muted-foreground",children:"Failed to initialize the ACP client. Check the console for details."})]})});const w=[],h=[{id:"1",title:"Boeing Scores Early Wins at Dubai Airshow",sourceName:"Reuters",url:"https://www.reuters.com/markets/companies/BA.N",snippet:"DUBAI, Nov 17 (Reuters) - Boeing (BA.N), opens new tab took centre stage at day one of the Dubai Airshow on Monday, booking a $38 billion order from host carrier Emirates and clinching more deals with African carriers, while China displayed its C919 in the Middle East for the first time.",favicon:"https://www.google.com/s2/favicons?domain=reuters.com&sz=32"},{id:"2",title:"Boeing's Sustainable Aviation Goals Take Flight",sourceName:"Forbes",url:"https://www.forbes.com",snippet:"SEATTLE, Nov 18 (Reuters) - Boeing is making headway towards its sustainability targets, unveiling plans for a new eco-friendly aircraft design aimed at reducing emissions by 50% by 2030.",favicon:"https://www.google.com/s2/favicons?domain=forbes.com&sz=32"},{id:"3",title:"Boeing Faces Increased Competition in Global Aviation Market",sourceName:"Reuters",url:"https://www.reuters.com",snippet:"CHICAGO, Nov 19 (Reuters) - As the global aviation industry rebounds post-pandemic, Boeing is grappling with intensified competition from rival manufacturers, particularly in the Asian market.",favicon:"https://www.google.com/s2/favicons?domain=reuters.com&sz=32"},{id:"4",title:"Boeing's Starliner Successfully Completes Orbital Test Flight",sourceName:"The Verge",url:"https://www.theverge.com",snippet:"NASA, Nov 20 (Reuters) - Boeing's CST-100 Starliner spacecraft achieves a significant milestone, successfully completing its orbital test flight, paving the way for future crewed missions to the International Space Station.",favicon:"https://www.google.com/s2/favicons?domain=theverge.com&sz=32"}],b=[{id:"model-sonnet",label:"Use Sonnet 4.5",description:"Switch to Claude Sonnet 4.5 model",icon:t.jsx(je,{className:"h-4 w-4"}),category:"model",onSelect:()=>{V.info("User selected Sonnet 4.5 model")}},{id:"model-opus",label:"Use Opus",description:"Switch to Claude Opus model",icon:t.jsx(je,{className:"h-4 w-4"}),category:"model",onSelect:()=>{V.info("User selected Opus model")}},{id:"settings",label:"Open Settings",description:"Configure chat preferences",icon:t.jsx(Ls,{className:"h-4 w-4"}),category:"action",onSelect:()=>{V.info("User opened settings")}},{id:"code-mode",label:"Code Mode",description:"Enable code-focused responses",icon:t.jsx(Fs,{className:"h-4 w-4"}),category:"mode",onSelect:()=>{V.info("User enabled code mode")}}];return t.jsxs(zt,{defaultPanelSize:"hidden",defaultActiveTab:"todo",children:[t.jsxs(Pt,{children:[t.jsx(po,{agentName:r,todos:w,sources:h,showHeader:c.length>0}),o==="error"&&u&&t.jsx("div",{className:"border-b border-destructive/20 bg-destructive/10 px-6 py-4",children:t.jsxs("div",{className:"flex items-start justify-between gap-4",children:[t.jsxs("div",{className:"flex-1",children:[t.jsx("h3",{className:"mb-1 text-paragraph-sm font-semibold text-destructive",children:"Connection Error"}),t.jsx("p",{className:"whitespace-pre-line text-paragraph-sm text-foreground",children:u})]}),t.jsx("button",{type:"button",onClick:a,className:"rounded-lg bg-destructive px-4 py-2 text-paragraph-sm font-medium text-destructive-foreground transition-colors hover:bg-destructive-hover",children:"Retry"})]})}),t.jsxs(_t,{children:[t.jsx(Lt,{children:c.length===0?t.jsx("div",{className:"flex flex-1 items-center px-4",children:t.jsx(yt,{title:r,description:"This agent can help you with your tasks. Start a conversation by typing a message below.",suggestedPrompts:["Search the web for the latest news on top tech company earnings, produce a summary for each company, and then a macro trend analysis of the tech industry. Use your todo list","Explain how this works","Create a new feature","Review my changes"],onPromptClick:y=>{p(y),V.info("Prompt clicked",{prompt:y})}})}):t.jsx("div",{className:"flex flex-col px-4",children:c.map((y,g)=>{const N=g===0,j=N?null:c[g-1];let E="mt-2";return N?E="mt-2":y.role==="user"?E=(j?.role==="user","mt-4"):y.role==="assistant"&&(E=j?.role==="assistant"?"mt-2":"mt-6"),t.jsx(Kt,{message:y,className:E,isLastMessage:g===c.length-1,children:t.jsx(Xt,{message:y,thinkingDisplayStyle:"collapsible"})},y.id)})})}),t.jsx(Ft,{children:t.jsxs(Ct,{client:s,children:[t.jsx(Ut,{commands:b}),t.jsx(kt,{placeholder:"Type a message or / for commands...",autoFocus:!0}),t.jsxs(It,{children:[t.jsxs("div",{className:"flex items-center gap-1",children:[t.jsx(Et,{}),t.jsx(Rt,{})]}),t.jsxs("div",{className:"flex items-center gap-1",children:[t.jsx(Mt,{}),t.jsx(Tt,{children:t.jsx(Os,{className:"size-4"})})]})]})]})})]})]}),f&&t.jsx(Ot,{breakpoint:"lg",children:t.jsxs(ye,{defaultValue:"todo",className:"flex flex-col h-full",children:[t.jsx("div",{className:m("border-b border-border bg-card","px-6 py-2 h-16","flex items-center","[border-bottom-width:0.5px]"),children:t.jsx(we,{showIcons:!0,visibleTabs:["todo","files","sources"],variant:"compact"})}),t.jsx(P,{value:"todo",className:"flex-1 p-4 mt-0",children:t.jsx(le,{todos:w})}),t.jsx(P,{value:"files",className:"flex-1 p-4 mt-0",children:t.jsx(ce,{})}),t.jsx(P,{value:"sources",className:"flex-1 p-4 mt-0",children:t.jsx(de,{sources:h})})]})})]})}const mo=l.forwardRef(({autoScroll:s=!0,isStreaming:e=!1,scrollBehavior:n="smooth",scrollThreshold:o=100,showScrollButton:a=!0,scrollButton:i,className:c,children:p,...u},r)=>{const d=l.useRef(null),[f,x]=l.useState(!0),[w,h]=l.useState(!1),b=l.useRef(0);l.useImperativeHandle(r,()=>{if(!d.current)throw new Error("Container ref not initialized");return d.current});const y=l.useCallback(()=>{const N=d.current;if(!N)return;const{scrollTop:j,scrollHeight:E,clientHeight:I}=N,C=E-j-I<o;x(C),h(!C&&a),b.current=j},[o,a]),g=l.useCallback((N=n)=>{const j=d.current;j&&j.scrollTo({top:j.scrollHeight,behavior:N})},[n]);return l.useEffect(()=>{!s||!d.current||(e&&f?g("auto"):!e&&f&&g())},[s,e,f,g]),l.useEffect(()=>{const N=d.current;if(!N)return;const j=()=>{y()};return N.addEventListener("scroll",j,{passive:!0}),y(),()=>{N.removeEventListener("scroll",j)}},[y]),l.useEffect(()=>{const N=d.current;if(!N)return;const j=new ResizeObserver(()=>{f&&s&&g("auto")});return j.observe(N),()=>{j.disconnect()}},[f,s,g]),t.jsxs("div",{className:"relative flex-1",children:[t.jsx("div",{ref:d,className:m("h-full overflow-y-auto overflow-x-hidden","scrollbar-thin scrollbar-thumb-[border] scrollbar-track-transparent",c),...u,children:t.jsx("div",{className:"flex flex-col gap-4 px-4 py-4",children:p})}),w&&t.jsx("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 z-10",children:i||t.jsxs("button",{type:"button",onClick:()=>g(),className:"px-4 py-2 rounded-full bg-card border border-border shadow-lg hover:shadow-xl hover:bg-card/90 transition-all text-sm font-medium text-foreground flex items-center gap-2","aria-label":"Scroll to bottom",children:[t.jsx("svg",{className:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-label":"Down arrow",children:t.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 14l-7 7m0 0l-7-7m7 7V3"})}),"Scroll to bottom"]})})]})});mo.displayName="Conversation";const ho=js,Qt=l.forwardRef(({className:s,...e},n)=>t.jsx(Be,{ref:n,className:m("fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",s),...e}));Qt.displayName=Be.displayName;const go=l.forwardRef(({className:s,children:e,...n},o)=>t.jsxs(ho,{children:[t.jsx(Qt,{}),t.jsxs(Ve,{ref:o,className:m("fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg",s),...n,children:[e,t.jsxs(Ss,{className:"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground",children:[t.jsx($s,{className:"h-4 w-4"}),t.jsx("span",{className:"sr-only",children:"Close"})]})]})]}));go.displayName=Ve.displayName;const xo=l.forwardRef(({className:s,...e},n)=>t.jsx(We,{ref:n,className:m("text-subheading font-semibold leading-none tracking-tight",s),...e}));xo.displayName=We.displayName;const bo=l.forwardRef(({className:s,...e},n)=>t.jsx(qe,{ref:n,className:m("text-paragraph-sm text-muted-foreground",s),...e}));bo.displayName=qe.displayName;const yo=W("flex h-10 w-full rounded-md border bg-input-background px-3 py-2 text-paragraph-sm ring-offset-background file:border-0 file:bg-transparent file:text-paragraph-sm file:font-medium file:text-foreground placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50",{variants:{variant:{default:"border-input focus-visible:ring-ring",error:"border-destructive focus-visible:ring-destructive",success:"border-green-500 focus-visible:ring-green-500"}},defaultVariants:{variant:"default"}}),wo=l.forwardRef(({className:s,type:e,variant:n,...o},a)=>t.jsx("input",{type:e,className:m(yo({variant:n,className:s})),ref:a,...o}));wo.displayName="Input";const vo=l.forwardRef(({className:s,...e},n)=>t.jsx(Qe,{ref:n,className:m("text-label font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",s),...e}));vo.displayName=Qe.displayName;const No=W("flex animate-fadeIn",{variants:{role:{user:"max-w-[80%] self-end ml-auto mr-2",assistant:"self-start mr-auto",system:"self-start mr-auto max-w-full"},layout:{default:"",full:"max-w-full",compact:"max-w-[90%]"}},defaultVariants:{role:"assistant",layout:"default"}}),Kt=l.forwardRef(({message:s,role:e,layout:n,className:o,children:a,messageId:i,autoScroll:c,isLastMessage:p=!1,...u},r)=>{const d=s?s.role:e||"assistant",f=s?s.id:i,x=l.useRef(null),[w,h]=l.useState(void 0);return l.useImperativeHandle(r,()=>x.current),l.useEffect(()=>{if(!p||d!=="assistant"){h(void 0);return}const b=()=>{const g=x.current;if(!g)return;let N=g.parentElement;for(;N&&!N.classList.contains("overflow-y-auto");)N=N.parentElement;if(!N)return;const j=g.previousElementSibling;if(!j||j.getAttribute("aria-label")!=="user message"){h(void 0);return}const E=N.clientHeight,I=j.offsetHeight,C=Math.max(0,E-I-32);h(C)};b();const y=new ResizeObserver(b);if(x.current){y.observe(x.current);let g=x.current.parentElement;for(;g&&!g.classList.contains("overflow-y-auto");)g=g.parentElement;g&&y.observe(g)}return()=>y.disconnect()},[p,d]),l.useEffect(()=>{if((c!==void 0?c:d==="user")&&x.current){const y=setTimeout(()=>{x.current?.scrollIntoView({behavior:"smooth",block:"start",inline:"nearest"})},50);return()=>clearTimeout(y)}},[d,c]),t.jsx("article",{ref:x,"aria-label":`${d} message`,"data-message-id":f,className:m(No({role:d,layout:n}),o),style:{minHeight:w!==void 0?`${w}px`:void 0},...u,children:a})});Kt.displayName="Message";const ne=128e3,ke={"claude-sonnet-4-5-20250929":2e5,"claude-sonnet-4-20250514":2e5,"claude-3-5-sonnet-20241022":2e5,"claude-3-5-sonnet-20240620":2e5,"claude-3-opus-20240229":2e5,"claude-3-sonnet-20240229":2e5,"claude-3-haiku-20240307":2e5,"gpt-4-turbo":128e3,"gpt-4-turbo-preview":128e3,"gpt-4-0125-preview":128e3,"gpt-4-1106-preview":128e3,"gpt-4":8192,"gpt-4-32k":32768,"gpt-3.5-turbo":16385,"gpt-3.5-turbo-16k":16385,default:ne};function jo(s){if(!s)return ne;if(s in ke)return ke[s]??ne;const e=s.toLowerCase();return e.includes("claude")?2e5:e.includes("gpt-4-turbo")?128e3:e.includes("gpt-4-32k")?32768:e.includes("gpt-4")?8192:e.includes("gpt-3.5")?16385:ne}function So(s,e){const n=jo(e);return s/n*100}function Co(s,e,n=1){return`${So(s,e).toFixed(n)}%`}const Te=W("mb-3 rounded-lg bg-card border border-border transition-all",{variants:{variant:{default:"opacity-70",subtle:"opacity-50",prominent:"opacity-90 shadow-sm"}},defaultVariants:{variant:"default"}}),ko=W("w-4 h-4 text-foreground opacity-60 transition-transform duration-200",{variants:{expanded:{true:"rotate-180",false:""}},defaultVariants:{expanded:!1}}),Gt=l.forwardRef(({content:s,isStreaming:e=!1,mode:n="collapsible",defaultExpanded:o=!1,autoExpand:a=!1,autoCollapse:i=!0,autoCollapseDelay:c=2e3,label:p="Thinking",variant:u,className:r},d)=>{const[f,x]=l.useState(n==="inline"?!0:o),[w,h]=l.useState(!1);return l.useEffect(()=>{if(i&&!e&&s&&n==="collapsible"){const b=setTimeout(()=>{h(!0),x(!1)},c);return()=>clearTimeout(b)}},[e,s,i,c,n]),l.useEffect(()=>{a&&e&&n==="collapsible"&&!w&&x(!0)},[a,e,n,w]),!s&&!e?null:n==="inline"?t.jsxs("div",{ref:d,className:m(Te({variant:u}),"p-3",r),children:[t.jsxs("div",{className:"flex items-start gap-2 mb-2",children:[t.jsx("span",{className:"text-caption font-medium text-foreground opacity-60 uppercase tracking-wide",children:p}),e&&t.jsx("span",{className:"inline-block w-2 h-2 bg-primary rounded-full animate-pulse"})]}),t.jsxs("div",{className:"text-paragraph-sm italic text-foreground opacity-80 leading-relaxed whitespace-pre-wrap",children:[s,e&&s&&t.jsx("span",{className:"inline-block animate-typing text-primary",children:"..."})]})]}):t.jsxs("div",{ref:d,className:m("mb-3",r),children:[t.jsxs("button",{type:"button",onClick:()=>{x(!f),h(!1)},className:"w-full flex items-center justify-between p-2.5 rounded-lg bg-card border border-border hover:bg-card/80 hover:shadow-sm transition-all text-left","aria-expanded":f,"aria-label":`${f?"Collapse":"Expand"} reasoning`,children:[t.jsxs("div",{className:"flex items-center gap-2 flex-1 min-w-0",children:[t.jsx("span",{className:"text-caption font-medium text-foreground opacity-60 uppercase tracking-wide shrink-0",children:p}),e&&t.jsx("span",{className:"inline-block w-2 h-2 bg-primary rounded-full animate-pulse shrink-0"}),!f&&s&&t.jsxs("span",{className:"text-caption text-foreground opacity-50 truncate",children:[s.substring(0,60),s.length>60&&"..."]})]}),t.jsx(Y,{className:ko({expanded:f}),"aria-hidden":"true"})]}),f&&t.jsx("div",{className:m(Te({variant:u}),"mt-2 p-3 animate-fadeIn"),children:t.jsxs("div",{className:"text-paragraph-sm italic text-foreground opacity-80 leading-relaxed whitespace-pre-wrap",children:[s,e&&s&&t.jsx("span",{className:"inline-block animate-typing text-primary",children:"..."})]})})]})});Gt.displayName="Reasoning";const oe=l.forwardRef(({content:s,isStreaming:e=!1,showEmpty:n=!0,emptyMessage:o="",className:a,...i},c)=>{if(!s&&e&&n)return t.jsx("div",{ref:c,className:m("opacity-70 italic text-paragraph-sm",a),...i,children:o});if(!s)return null;const p={table:({node:u,...r})=>t.jsx("div",{className:"overflow-x-auto my-4",children:t.jsx("table",{className:"min-w-full border-collapse border border-border rounded-md",...r})}),thead:({node:u,...r})=>t.jsx("thead",{className:"bg-card border-b border-border",...r}),tbody:({node:u,...r})=>t.jsx("tbody",{...r}),tr:({node:u,...r})=>t.jsx("tr",{className:"border-b border-border hover:bg-card transition-colors",...r}),th:({node:u,...r})=>t.jsx("th",{className:"px-4 py-2 text-left font-semibold text-foreground border-r border-border last:border-r-0",...r}),td:({node:u,...r})=>t.jsx("td",{className:"px-4 py-2 text-foreground border-r border-border last:border-r-0",...r}),input:({node:u,checked:r,...d})=>d.type==="checkbox"?t.jsx("input",{type:"checkbox",checked:r||!1,disabled:!0,readOnly:!0,className:"mr-2 w-4 h-4 accent-[primary] cursor-not-allowed",...d}):t.jsx("input",{...d}),code:({node:u,...r})=>r.className?.includes("language-")?t.jsx("code",{className:"block p-4 bg-card border border-border rounded-md overflow-x-auto text-code text-foreground shadow-sm",...r}):t.jsx("code",{className:"px-1.5 py-0.5 bg-card border border-border rounded text-code text-foreground",...r}),pre:({node:u,...r})=>t.jsx("pre",{className:"my-4 rounded-lg",...r}),h1:({node:u,...r})=>t.jsx("h1",{className:"text-heading-3 mt-6 mb-4 text-foreground border-b border-border pb-2",...r}),h2:({node:u,...r})=>t.jsx("h2",{className:"text-subheading mt-5 mb-3 text-foreground border-b border-border/50 pb-1.5",...r}),h3:({node:u,...r})=>t.jsx("h3",{className:"text-subheading mt-4 mb-2 text-foreground",...r}),h4:({node:u,...r})=>t.jsx("h4",{className:"text-paragraph-sm font-semibold mt-3 mb-2 text-foreground",...r}),ul:({node:u,...r})=>{const d=u?.children?.some(f=>typeof f=="object"&&f!==null&&"type"in f&&f.type==="element"&&"tagName"in f&&f.tagName==="li"&&"children"in f&&Array.isArray(f.children)&&f.children.some(x=>typeof x=="object"&&x!==null&&"type"in x&&x.type==="element"&&"tagName"in x&&x.tagName==="input"&&"properties"in x&&typeof x.properties=="object"&&x.properties!==null&&"type"in x.properties&&x.properties.type==="checkbox"));return t.jsx("ul",{className:m("my-2 space-y-1 text-foreground",d?"list-none space-y-2":"list-disc list-outside pl-4"),...r})},ol:({node:u,...r})=>t.jsx("ol",{className:"list-decimal list-outside pl-4 my-2 space-y-1 text-foreground",...r}),li:({node:u,...r})=>{const d=u?.children?.some(f=>typeof f=="object"&&f!==null&&"type"in f&&f.type==="element"&&"tagName"in f&&f.tagName==="input"&&"properties"in f&&typeof f.properties=="object"&&f.properties!==null&&"type"in f.properties&&f.properties.type==="checkbox");return t.jsx("li",{className:m(d?"flex items-start gap-2":""),...r})},a:({node:u,...r})=>t.jsx("a",{className:"text-primary hover:underline decoration-2 underline-offset-2 transition-all",target:"_blank",rel:"noopener noreferrer",...r}),p:({node:u,...r})=>t.jsx("p",{className:"mb-2 text-foreground leading-relaxed",...r}),blockquote:({node:u,...r})=>t.jsx("blockquote",{className:"border-l-4 border-[primary] pl-4 italic my-4 text-foreground bg-card py-2 rounded-r-md shadow-sm",...r}),hr:({node:u,...r})=>t.jsx("hr",{className:"my-6 border-t border-border opacity-50",...r})};return t.jsxs("div",{ref:c,className:m("markdown-content prose prose-sm max-w-none dark:prose-invert",a),...i,children:[t.jsx(cs,{remarkPlugins:[qs],components:p,children:s}),e&&s&&t.jsx("span",{className:"inline-block ml-1 animate-typing text-primary",children:"..."})]})});oe.displayName="Response";function Ie({toolCall:s}){const[e,n]=l.useState(!1);return t.jsxs("div",{className:"flex flex-col my-2",children:[t.jsx("button",{type:"button",className:"flex items-center gap-2 cursor-pointer bg-transparent border-none p-0 text-left group w-fit",onClick:()=>n(!e),"aria-expanded":e,children:t.jsxs("div",{className:"flex items-center gap-1.5 text-[11px] font-medium text-zinc-500",children:[t.jsx("div",{className:"text-zinc-500",children:t.jsx(Bs,{className:"h-3 w-3"})}),t.jsx("span",{className:"text-paragraph-sm text-zinc-500",children:s.title}),t.jsx(Y,{className:`h-3 w-3 text-zinc-400 transition-transform duration-200 ${e?"rotate-180":""}`})]})}),e&&t.jsxs("div",{className:"mt-2 text-sm border border-zinc-200 rounded-lg bg-zinc-50 overflow-hidden w-full",children:[s.locations&&s.locations.length>0&&t.jsxs("div",{className:"p-3 border-b border-zinc-200",children:[t.jsx("div",{className:"text-[10px] font-bold text-zinc-400 uppercase tracking-wider mb-1.5 font-sans",children:"Files"}),t.jsx("ul",{className:"space-y-1",children:s.locations.map(o=>t.jsxs("li",{className:"font-mono text-[11px] text-zinc-700 bg-zinc-200/50 px-1.5 py-0.5 rounded w-fit",children:[o.path,o.line!==null&&o.line!==void 0&&`:${o.line}`]},`${o.path}:${o.line??""}`))})]}),s.rawInput&&Object.keys(s.rawInput).length>0&&t.jsxs("div",{className:"p-3 border-b border-zinc-200",children:[t.jsx("div",{className:"text-[10px] font-bold text-zinc-400 uppercase tracking-wider mb-1.5 font-sans",children:"Input"}),t.jsx("div",{className:"text-[11px] font-mono text-zinc-700",children:t.jsx(Ne,{value:s.rawInput,collapsed:!1,displayDataTypes:!1,displayObjectSize:!1,enableClipboard:!0,style:{fontSize:"11px",backgroundColor:"transparent",fontFamily:"inherit"}})})]}),s.content&&s.content.length>0||s.error?t.jsxs("div",{className:"p-3 border-b border-zinc-200 last:border-0",children:[t.jsx("div",{className:"text-[10px] font-bold text-zinc-400 uppercase tracking-wider mb-1.5 font-sans",children:"Output"}),t.jsxs("div",{className:"space-y-2 text-[11px] text-zinc-700",children:[s.content?.map((o,a)=>{const i=()=>o.type==="diff"&&"path"in o?`diff-${o.path}-${a}`:o.type==="terminal"&&"terminalId"in o?`terminal-${o.terminalId}`:o.type==="text"&&"text"in o?`text-${o.text.substring(0,20)}-${a}`:o.type==="content"&&"content"in o?`content-${o.content.text?.substring(0,20)}-${a}`:`block-${a}`,c=(p,u)=>{try{const r=JSON.parse(p);if(typeof r=="object"&&r!==null)return t.jsx("div",{className:"text-[11px]",children:t.jsx(Ne,{value:r,collapsed:!1,displayDataTypes:!1,displayObjectSize:!1,enableClipboard:!0,style:{fontSize:"11px",backgroundColor:"transparent",fontFamily:"inherit"}})},u)}catch{}return t.jsx("pre",{className:"whitespace-pre-wrap font-mono text-[11px] text-zinc-700 overflow-x-auto",children:p},u)};if(o.type==="content"&&"content"in o){const p=o.content;if(p.type==="text"&&p.text)return c(p.text,i())}return o.type==="text"&&"text"in o?c(o.text,i()):o.type==="diff"&&"path"in o&&"oldText"in o&&"newText"in o?t.jsxs("div",{className:"border border-zinc-200 rounded bg-white",children:[t.jsxs("div",{className:"bg-zinc-50 px-2 py-1 text-[10px] font-mono text-zinc-500 border-b border-zinc-200",children:[o.path,"line"in o&&o.line!==null&&o.line!==void 0&&`:${o.line}`]}),t.jsxs("div",{className:"p-2 font-mono text-[11px]",children:[t.jsxs("div",{className:"text-red-600",children:["- ",o.oldText]}),t.jsxs("div",{className:"text-green-600",children:["+ ",o.newText]})]})]},i()):o.type==="terminal"&&"terminalId"in o?t.jsxs("div",{className:"bg-zinc-900 text-zinc-100 p-2 rounded text-[11px] font-mono",children:["Terminal: ",o.terminalId]},i()):null}),s.error&&t.jsxs("div",{className:"text-red-600 font-mono text-[11px] mt-2",children:["Error: ",s.error]})]})]}):null,(s.tokenUsage||s.startedAt)&&t.jsxs("div",{className:"p-2 bg-zinc-100/50 border-t border-zinc-200 flex flex-wrap gap-4 text-[10px] text-zinc-500 font-sans",children:[s.tokenUsage&&t.jsxs("div",{className:"flex gap-3",children:[s.tokenUsage.inputTokens!==void 0&&t.jsxs("div",{children:[t.jsx("span",{className:"uppercase tracking-wide font-semibold mr-1",children:"Input:"}),s.tokenUsage.inputTokens.toLocaleString()]}),s.tokenUsage.outputTokens!==void 0&&t.jsxs("div",{children:[t.jsx("span",{className:"uppercase tracking-wide font-semibold mr-1",children:"Output:"}),s.tokenUsage.outputTokens.toLocaleString()]}),s.tokenUsage.totalTokens!==void 0&&t.jsxs("div",{children:[t.jsx("span",{className:"uppercase tracking-wide font-semibold mr-1",children:"Total:"}),s.tokenUsage.totalTokens.toLocaleString()]})]}),s.startedAt&&t.jsxs("div",{className:"flex gap-3 ml-auto",children:[t.jsxs("span",{children:["Started: ",new Date(s.startedAt).toLocaleTimeString()]}),s.completedAt&&t.jsxs("span",{children:["Completed:"," ",new Date(s.completedAt).toLocaleTimeString()," (",Math.round((s.completedAt-s.startedAt)/1e3),"s)"]})]})]})]})]})}const te=["Thinking","Pensando","Pensant","Denkend","Pensando","考えている","생각 중","思考中","Размышляя","Düşünüyor","Myślący","Tänkande","Pensando","Ajatellen","Σκεπτόμενος","חושב","सोच रहा है","Berpikir"],Ee=["...","·..",".·.","..·",".·.","·.."];function To({startTime:s}){const[e,n]=l.useState(0),[o,a]=l.useState(()=>te[Math.floor(Math.random()*te.length)]),[i,c]=l.useState(0);l.useEffect(()=>{const r=setInterval(()=>{const f=Date.now()-s;n(f)},100);return()=>clearInterval(r)},[s]),l.useEffect(()=>{const r=setInterval(()=>{const d=Math.floor(Math.random()*te.length);a(te[d])},1500);return()=>clearInterval(r)},[]),l.useEffect(()=>{const r=setInterval(()=>{c(d=>(d+1)%Ee.length)},100);return()=>clearInterval(r)},[]);const p=(e/1e3).toFixed(1),u=Ee[i];return t.jsxs("span",{className:"text-muted-foreground text-paragraph-sm",children:[o,u," ",p,"s"]})}const Io=W("w-full rounded-2xl text-[var(--font-size)] font-[var(--font-family)] leading-relaxed break-words transition-colors",{variants:{role:{user:"bg-secondary text-foreground px-4 py-4 text-paragraph",assistant:"text-foreground text-paragraph-sm",system:"bg-card border border-border text-foreground opacity-80 text-caption px-4 py-3"},variant:{default:"",outline:"border border-border",ghost:"bg-transparent"}},defaultVariants:{role:"assistant",variant:"default"}}),Xt=l.forwardRef(({role:s,variant:e,isStreaming:n,message:o,thinkingDisplayStyle:a="collapsible",className:i,children:c,...p},u)=>{const r=k(b=>b.streamingStartTime),d=k(b=>b.currentModel),f=o&&!c,x=f?o.role:s||"assistant",w=f?o.isStreaming:n;let h=c;if(f){const b=o.metadata?.thinking,y=!!b,g=o.isStreaming&&!o.content&&o.role==="assistant";h=t.jsxs(t.Fragment,{children:[o.role==="assistant"&&y&&t.jsx(Gt,{content:b,isStreaming:o.isStreaming,mode:a,autoCollapse:!0}),g&&r&&t.jsxs("div",{className:"flex items-center gap-2 opacity-50",children:[t.jsx(ct,{className:"size-4 animate-spin text-muted-foreground"}),t.jsx(To,{startTime:r})]}),o.role==="assistant"?(()=>{const N=(o.toolCalls||[]).slice().sort((I,A)=>(I.contentPosition??1/0)-(A.contentPosition??1/0));if(N.length===0||!N.some(I=>I.contentPosition!==void 0))return t.jsxs(t.Fragment,{children:[N.length>0&&t.jsx("div",{className:"flex flex-col gap-2 mb-1",children:N.map(I=>t.jsx(Ie,{toolCall:I},I.id))}),t.jsx(oe,{content:o.content,isStreaming:o.isStreaming,showEmpty:!1})]});const j=[];let E=0;if(N.forEach(I=>{const A=I.contentPosition??o.content.length;if(A>E){const C=o.content.slice(E,A);C&&j.push(t.jsx(oe,{content:C,isStreaming:!1,showEmpty:!1},`text-before-${I.id}`))}j.push(t.jsx("div",{children:t.jsx(Ie,{toolCall:I})},`tool-${I.id}`)),E=A}),E<o.content.length){const I=o.content.slice(E);I&&j.push(t.jsx(oe,{content:I,isStreaming:o.isStreaming,showEmpty:!1},"text-end"))}return t.jsx(t.Fragment,{children:j})})():t.jsx("div",{className:"whitespace-pre-wrap",children:o.content}),o.role==="assistant"&&o.tokenUsage&&t.jsx("div",{className:"mt-3 pt-2 border-t border-border/30 text-caption text-muted-foreground/60",children:t.jsxs("span",{children:["Context:"," ",Co(o.tokenUsage.totalTokens??0,d??void 0)," ","(",(o.tokenUsage.totalTokens??0).toLocaleString()," ","tokens)"]})})]})}return t.jsx("div",{ref:u,className:m(Io({role:x,variant:e}),w&&"animate-pulse-subtle",i),...p,children:h})});Xt.displayName="MessageContent";const we=l.forwardRef(({showIcons:s=!0,visibleTabs:e=["todo","files"],variant:n="default",className:o,...a},i)=>{const p=[{id:"todo",label:"To-do",icon:ot},{id:"files",label:"Files",icon:rt},{id:"database",label:"Database",icon:at},{id:"sources",label:"Sources",icon:it}].filter(r=>e.includes(r.id)),u=n==="compact"?"gap-[4px]":"gap-3";return t.jsx(K,{ref:i,className:m("w-full justify-start bg-transparent p-0 h-auto",u,o),...a,children:p.map(r=>{const d=r.icon;return t.jsxs(G,{value:r.id,className:m("gap-2 px-3 py-1.5 rounded-lg text-paragraph-sm font-medium","data-[state=active]:bg-zinc-100 data-[state=active]:text-foreground","data-[state=inactive]:text-muted-foreground"),children:[s&&d&&t.jsx(d,{className:"size-4"}),r.label]},r.id)})})});we.displayName="PanelTabsHeader";const Eo=l.forwardRef(({className:s,children:e,...n},o)=>t.jsxs(Ke,{ref:o,className:m("flex h-10 w-full items-center justify-between rounded-md border border-input bg-background px-3 py-2 text-paragraph-sm ring-offset-background placeholder:text-muted-foreground focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 [&>span]:line-clamp-1",s),...n,children:[e,t.jsx(Cs,{asChild:!0,children:t.jsx(Vs,{className:"h-4 w-4 opacity-50"})})]}));Eo.displayName=Ke.displayName;const Jt=l.forwardRef(({className:s,...e},n)=>t.jsx(Ge,{ref:n,className:m("flex cursor-default items-center justify-center py-1",s),...e,children:t.jsx(lt,{className:"h-4 w-4"})}));Jt.displayName=Ge.displayName;const Yt=l.forwardRef(({className:s,...e},n)=>t.jsx(Xe,{ref:n,className:m("flex cursor-default items-center justify-center py-1",s),...e,children:t.jsx(Y,{className:"h-4 w-4"})}));Yt.displayName=Xe.displayName;const Ro=l.forwardRef(({className:s,children:e,position:n="popper",...o},a)=>t.jsx(ks,{children:t.jsxs(Je,{ref:a,className:m("relative z-50 max-h-96 min-w-[8rem] overflow-hidden rounded-md border bg-popover text-popover-foreground shadow-md data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",s),position:n,...o,children:[t.jsx(Jt,{}),t.jsx(Ts,{className:m("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)]"),children:e}),t.jsx(Yt,{})]})}));Ro.displayName=Je.displayName;const Mo=l.forwardRef(({className:s,...e},n)=>t.jsx(Ye,{ref:n,className:m("py-1.5 pl-8 pr-2 text-paragraph-sm font-semibold",s),...e}));Mo.displayName=Ye.displayName;const Uo=l.forwardRef(({className:s,children:e,...n},o)=>t.jsxs(Ze,{ref:o,className:m("relative flex w-full cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-paragraph-sm outline-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",s),...n,children:[t.jsx("span",{className:"absolute left-2 flex h-3.5 w-3.5 items-center justify-center",children:t.jsx(Is,{children:t.jsx(st,{className:"h-4 w-4"})})}),t.jsx(Es,{children:e})]}));Uo.displayName=Ze.displayName;const Ao=l.forwardRef(({className:s,...e},n)=>t.jsx(et,{ref:n,className:m("-mx-1 my-1 h-px bg-muted",s),...e}));Ao.displayName=et.displayName;const Zt=l.forwardRef(({task:s,collapsible:e=!0,defaultExpanded:n=!1,onTaskClick:o,className:a,...i},c)=>{const[p,u]=l.useState(n),r=!!(s.details||s.files&&s.files.length>0),d={pending:nt,in_progress:ct,completed:Ws}[s.status],f=()=>{switch(s.status){case"completed":return"text-green-500";case"in_progress":return"text-primary";default:return"text-foreground opacity-40"}},x=()=>{r&&e&&u(!p),o?.(s)};return t.jsxs("div",{ref:c,className:m("rounded-lg border border-border bg-card transition-all","hover:shadow-sm hover:border-border/80",a),...i,children:[t.jsxs("button",{type:"button",onClick:x,className:m("w-full flex items-center gap-3 px-3 py-2.5 text-left",r&&e&&"cursor-pointer"),disabled:!r&&!e,children:[t.jsx(d,{className:m("w-4 h-4 shrink-0",f(),s.status==="in_progress"&&"animate-spin")}),t.jsx("span",{className:m("flex-1 text-paragraph-sm font-[var(--font-family)]",s.status==="completed"&&"line-through opacity-60",s.status==="in_progress"&&"font-medium"),children:s.text}),r&&e&&t.jsx(Y,{className:m("w-4 h-4 text-foreground opacity-50 transition-transform duration-200 shrink-0",p&&"rotate-180"),"aria-hidden":"true"})]}),r&&p&&t.jsxs("div",{className:"px-3 pb-3 pt-1 border-t border-border/50 animate-fadeIn",children:[s.details&&t.jsx("p",{className:"text-paragraph-sm text-foreground opacity-80 leading-relaxed mb-2",children:s.details}),s.files&&s.files.length>0&&t.jsxs("div",{className:"space-y-1",children:[t.jsx("span",{className:"text-caption font-medium text-foreground opacity-60 uppercase tracking-wide",children:"Files:"}),t.jsx("div",{className:"space-y-1",children:s.files.map(w=>t.jsx("div",{className:"text-caption font-mono text-foreground opacity-70 bg-background px-2 py-1 rounded border border-border/50",children:w},w))})]})]})]})});Zt.displayName="Task";const Do=l.forwardRef(({tasks:s,collapsible:e=!0,onTaskClick:n,emptyMessage:o="No tasks yet.",className:a,...i},c)=>t.jsx("div",{ref:c,className:m("space-y-2 max-h-96 overflow-y-auto",a),...i,children:s.length===0?t.jsx("p",{className:"text-paragraph-sm text-foreground opacity-60 italic py-4 text-center",children:o}):s.map(p=>t.jsx(Zt,{task:p,collapsible:e,...n?{onTaskClick:n}:{}},p.id))}));Do.displayName="TaskList";const zo=W("flex min-h-[80px] w-full rounded-md border bg-background px-3 py-2 text-paragraph-sm ring-offset-background placeholder:text-muted-foreground focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 resize-none",{variants:{variant:{default:"border-input focus-visible:ring-ring",error:"border-destructive focus-visible:ring-destructive",success:"border-green-500 focus-visible:ring-green-500"}},defaultVariants:{variant:"default"}}),Po=l.forwardRef(({className:s,autoResize:e=!1,maxHeight:n=200,variant:o,...a},i)=>{const c=l.useRef(null),p=l.useCallback(r=>{c.current=r,typeof i=="function"?i(r):i&&(i.current=r)},[i]),u=l.useCallback(()=>{const r=c.current;if(!r||!e)return;r.style.height="auto";const d=Math.min(r.scrollHeight,n);r.style.height=`${d}px`,r.scrollHeight>n?r.style.overflowY="auto":r.style.overflowY="hidden"},[e,n]);return l.useEffect(()=>{u()},[u]),t.jsx("textarea",{className:m(zo({variant:o}),e&&"overflow-y-hidden",s),ref:p,...a})});Po.displayName="Textarea";function _o(){return"http://localhost:3100"}const Lo={agentServerUrl:_o()};function Fo(){const{client:s,error:e,sessionId:n}=sn({serverUrl:Lo.agentServerUrl});return t.jsx(fo,{client:s,initialSessionId:n,error:e})}const es=document.getElementById("root");if(!es)throw new Error("Root element not found");ds.createRoot(es).render(t.jsx(us.StrictMode,{children:t.jsx(Fo,{})}));
@@ -0,0 +1 @@
1
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-space-x-reverse:0}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-red-500:oklch(63.7% .237 25.331);--color-red-600:oklch(57.7% .245 27.325);--color-red-800:oklch(44.4% .177 26.899);--color-red-900:oklch(39.6% .141 25.723);--color-yellow-500:oklch(79.5% .184 86.047);--color-green-500:oklch(72.3% .219 149.579);--color-green-600:oklch(62.7% .194 149.214);--color-gray-500:oklch(55.1% .027 264.364);--color-zinc-50:oklch(98.5% 0 0);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-500:oklch(55.2% .016 285.938);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-900:oklch(21% .006 285.885);--color-neutral-50:oklch(98.5% 0 0);--color-neutral-100:oklch(97% 0 0);--color-neutral-200:oklch(92.2% 0 0);--color-neutral-300:oklch(87% 0 0);--color-neutral-400:oklch(70.8% 0 0);--color-neutral-500:oklch(55.6% 0 0);--color-neutral-600:oklch(43.9% 0 0);--color-neutral-700:oklch(37.1% 0 0);--color-neutral-800:oklch(26.9% 0 0);--color-neutral-900:oklch(20.5% 0 0);--color-neutral-950:oklch(14.5% 0 0);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-md:28rem;--container-lg:32rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25/.875);--text-2xl:1.5rem;--text-2xl--line-height:calc(2/1.5);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-normal:1.5;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--radius:.5rem;--max-width-prose:477px;--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-primary-hover:var(--primary-hover);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-secondary-hover:var(--secondary-hover);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-accent-hover:var(--accent-hover);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-destructive-hover:var(--destructive-hover);--color-border:var(--border);--color-border-dark:var(--border-dark);--color-input:var(--input);--color-input-background:var(--input-background);--color-ring:var(--ring);--color-text-primary:var(--text-primary);--color-text-secondary:var(--text-secondary);--color-text-tertiary:var(--text-tertiary);--max-width-chat:720px;--max-width-prompt-container:393px;--letter-spacing-tight:-.48px;--letter-spacing-heading:-.4px;--letter-spacing-uppercase:1.12px;--font-size-heading-1:3rem;--line-height-heading-1:1;--font-size-heading-2:1.875rem;--line-height-heading-2:1;--font-size-heading-3:1.5rem;--line-height-heading-3:1.2;--font-size-heading-4:1.25rem;--line-height-heading-4:1.2;--font-size-heading-5:1rem;--line-height-heading-5:1.2;--font-size-subheading:1.25rem;--line-height-subheading:1.5;--font-size-label:.875rem;--line-height-label:1.5;--font-size-paragraph:1rem;--line-height-paragraph:1.5;--font-size-paragraph-sm:.875rem;--line-height-paragraph-sm:1.5;--font-size-paragraph-mini:.75rem;--line-height-paragraph-mini:1.5;--font-size-caption:.75rem;--line-height-caption:1.5;--font-size-code:.875rem;--line-height-code:1.5;--letter-spacing-wide:.07em}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border)}body{background-color:var(--background);color:var(--foreground)}button{cursor:pointer}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:calc(var(--spacing)*0)}.top-0{top:calc(var(--spacing)*0)}.top-4{top:calc(var(--spacing)*4)}.top-\[50\%\]{top:50%}.top-full{top:100%}.right-0{right:calc(var(--spacing)*0)}.right-4{right:calc(var(--spacing)*4)}.bottom-4{bottom:calc(var(--spacing)*4)}.bottom-full{bottom:100%}.left-0{left:calc(var(--spacing)*0)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing)*2)}.left-\[50\%\]{left:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:calc(var(--spacing)*0)}.-mx-1{margin-inline:calc(var(--spacing)*-1)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing)*1)}.my-2{margin-block:calc(var(--spacing)*2)}.my-4{margin-block:calc(var(--spacing)*4)}.my-6{margin-block:calc(var(--spacing)*6)}.mt-0{margin-top:calc(var(--spacing)*0)}.mt-0\.5{margin-top:calc(var(--spacing)*.5)}.mt-2{margin-top:calc(var(--spacing)*2)}.mt-3{margin-top:calc(var(--spacing)*3)}.mt-4{margin-top:calc(var(--spacing)*4)}.mt-5{margin-top:calc(var(--spacing)*5)}.mt-6{margin-top:calc(var(--spacing)*6)}.mr-1{margin-right:calc(var(--spacing)*1)}.mr-2{margin-right:calc(var(--spacing)*2)}.mr-auto{margin-right:auto}.mb-1{margin-bottom:calc(var(--spacing)*1)}.mb-1\.5{margin-bottom:calc(var(--spacing)*1.5)}.mb-2{margin-bottom:calc(var(--spacing)*2)}.mb-3{margin-bottom:calc(var(--spacing)*3)}.mb-4{margin-bottom:calc(var(--spacing)*4)}.ml-1{margin-left:calc(var(--spacing)*1)}.ml-2{margin-left:calc(var(--spacing)*2)}.ml-auto{margin-left:auto}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.field-sizing-content{field-sizing:content}.size-4{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.size-full{width:100%;height:100%}.h-2{height:calc(var(--spacing)*2)}.h-2\.5{height:calc(var(--spacing)*2.5)}.h-3{height:calc(var(--spacing)*3)}.h-3\.5{height:calc(var(--spacing)*3.5)}.h-4{height:calc(var(--spacing)*4)}.h-9{height:calc(var(--spacing)*9)}.h-10{height:calc(var(--spacing)*10)}.h-11{height:calc(var(--spacing)*11)}.h-16{height:calc(var(--spacing)*16)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-64{max-height:calc(var(--spacing)*64)}.max-h-96{max-height:calc(var(--spacing)*96)}.max-h-\[6lh\]{max-height:6lh}.min-h-\[80px\]{min-height:80px}.min-h-\[200px\]{min-height:200px}.w-2{width:calc(var(--spacing)*2)}.w-2\.5{width:calc(var(--spacing)*2.5)}.w-3{width:calc(var(--spacing)*3)}.w-3\.5{width:calc(var(--spacing)*3.5)}.w-4{width:calc(var(--spacing)*4)}.w-10{width:calc(var(--spacing)*10)}.w-40{width:calc(var(--spacing)*40)}.w-64{width:calc(var(--spacing)*64)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-\[80\%\]{max-width:80%}.max-w-\[90\%\]{max-width:90%}.max-w-\[200px\]{max-width:200px}.max-w-chat{max-width:var(--max-width-chat)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-prompt-container{max-width:var(--max-width-prompt-container)}.max-w-prose{max-width:var(--max-width-prose)}.min-w-0{min-width:calc(var(--spacing)*0)}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.min-w-full{min-width:100%}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-x-\[-50\%\]{--tw-translate-x:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.translate-y-\[-50\%\]{--tw-translate-y:-50%;translate:var(--tw-translate-x)var(--tw-translate-y)}.-rotate-90{rotate:-90deg}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-none{resize:none}.list-inside{list-style-position:inside}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.list-none{list-style-type:none}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-1{gap:calc(var(--spacing)*1)}.gap-1\.5{gap:calc(var(--spacing)*1.5)}.gap-2{gap:calc(var(--spacing)*2)}.gap-2\.5{gap:calc(var(--spacing)*2.5)}.gap-3{gap:calc(var(--spacing)*3)}.gap-4{gap:calc(var(--spacing)*4)}.gap-6{gap:calc(var(--spacing)*6)}.gap-\[4px\]{gap:4px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*1.5)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*1.5)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*2)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing)*4)*var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing)*4)*calc(1 - var(--tw-space-y-reverse)))}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overflow-y-hidden{overflow-y:hidden}.rounded{border-radius:var(--radius)}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[3px\]{border-radius:3px}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.rounded-r-md{border-top-right-radius:var(--radius-md);border-bottom-right-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[border-bottom-width\:0\.5px\]{border-bottom-width:.5px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[primary\]{border-color:primary}.border-border{border-color:var(--color-border)}.border-border-dark{border-color:var(--color-border-dark)}.border-border\/30{border-color:var(--color-border)}@supports (color:color-mix(in lab,red,red)){.border-border\/30{border-color:color-mix(in oklab,var(--color-border)30%,transparent)}}.border-border\/50{border-color:var(--color-border)}@supports (color:color-mix(in lab,red,red)){.border-border\/50{border-color:color-mix(in oklab,var(--color-border)50%,transparent)}}.border-destructive,.border-destructive\/20{border-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.border-destructive\/20{border-color:color-mix(in oklab,var(--color-destructive)20%,transparent)}}.border-green-500{border-color:var(--color-green-500)}.border-input{border-color:var(--color-input)}.border-transparent{border-color:#0000}.border-zinc-200{border-color:var(--color-zinc-200)}.bg-accent{background-color:var(--color-accent)}.bg-accent-hover{background-color:var(--color-accent-hover)}.bg-background{background-color:var(--color-background)}.bg-black\/80{background-color:#000c}@supports (color:color-mix(in lab,red,red)){.bg-black\/80{background-color:color-mix(in oklab,var(--color-black)80%,transparent)}}.bg-border{background-color:var(--color-border)}.bg-card{background-color:var(--color-card)}.bg-destructive,.bg-destructive\/10{background-color:var(--color-destructive)}@supports (color:color-mix(in lab,red,red)){.bg-destructive\/10{background-color:color-mix(in oklab,var(--color-destructive)10%,transparent)}}.bg-gray-500{background-color:var(--color-gray-500)}.bg-green-500{background-color:var(--color-green-500)}.bg-input-background{background-color:var(--color-input-background)}.bg-muted{background-color:var(--color-muted)}.bg-popover{background-color:var(--color-popover)}.bg-primary{background-color:var(--color-primary)}.bg-red-500{background-color:var(--color-red-500)}.bg-secondary{background-color:var(--color-secondary)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-yellow-500{background-color:var(--color-yellow-500)}.bg-zinc-50{background-color:var(--color-zinc-50)}.bg-zinc-100\/50{background-color:#f4f4f580}@supports (color:color-mix(in lab,red,red)){.bg-zinc-100\/50{background-color:color-mix(in oklab,var(--color-zinc-100)50%,transparent)}}.bg-zinc-200\/50{background-color:#e4e4e780}@supports (color:color-mix(in lab,red,red)){.bg-zinc-200\/50{background-color:color-mix(in oklab,var(--color-zinc-200)50%,transparent)}}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-linear-to-t{--tw-gradient-position:to top}@supports (background-image:linear-gradient(in lab,red,red)){.bg-linear-to-t{--tw-gradient-position:to top in oklab}}.bg-linear-to-t{background-image:linear-gradient(var(--tw-gradient-stops))}.from-background{--tw-gradient-from:var(--color-background);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position),var(--tw-gradient-from)var(--tw-gradient-from-position),var(--tw-gradient-to)var(--tw-gradient-to-position))}.fill-current{fill:currentColor}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing)*0)}.p-0\.5{padding:calc(var(--spacing)*.5)}.p-1{padding:calc(var(--spacing)*1)}.p-2{padding:calc(var(--spacing)*2)}.p-2\.5{padding:calc(var(--spacing)*2.5)}.p-3{padding:calc(var(--spacing)*3)}.p-4{padding:calc(var(--spacing)*4)}.p-6{padding:calc(var(--spacing)*6)}.p-8{padding:calc(var(--spacing)*8)}.px-1\.5{padding-inline:calc(var(--spacing)*1.5)}.px-2{padding-inline:calc(var(--spacing)*2)}.px-3{padding-inline:calc(var(--spacing)*3)}.px-4{padding-inline:calc(var(--spacing)*4)}.px-6{padding-inline:calc(var(--spacing)*6)}.px-8{padding-inline:calc(var(--spacing)*8)}.py-0\.5{padding-block:calc(var(--spacing)*.5)}.py-1{padding-block:calc(var(--spacing)*1)}.py-1\.5{padding-block:calc(var(--spacing)*1.5)}.py-2{padding-block:calc(var(--spacing)*2)}.py-2\.5{padding-block:calc(var(--spacing)*2.5)}.py-3{padding-block:calc(var(--spacing)*3)}.py-4{padding-block:calc(var(--spacing)*4)}.py-5{padding-block:calc(var(--spacing)*5)}.py-\[2px\]{padding-block:2px}.pt-0{padding-top:calc(var(--spacing)*0)}.pt-1{padding-top:calc(var(--spacing)*1)}.pt-2{padding-top:calc(var(--spacing)*2)}.pt-6{padding-top:calc(var(--spacing)*6)}.pr-2{padding-right:calc(var(--spacing)*2)}.pr-4{padding-right:calc(var(--spacing)*4)}.pb-1\.5{padding-bottom:calc(var(--spacing)*1.5)}.pb-2{padding-bottom:calc(var(--spacing)*2)}.pb-3{padding-bottom:calc(var(--spacing)*3)}.pb-4{padding-bottom:calc(var(--spacing)*4)}.pb-8{padding-bottom:calc(var(--spacing)*8)}.pl-1{padding-left:calc(var(--spacing)*1)}.pl-4{padding-left:calc(var(--spacing)*4)}.pl-6{padding-left:calc(var(--spacing)*6)}.pl-8{padding-left:calc(var(--spacing)*8)}.pl-16{padding-left:calc(var(--spacing)*16)}.text-center{text-align:center}.text-end{text-align:end}.text-left{text-align:left}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-\[var\(--font-family\)\]{--tw-font-weight:var(--font-family);font-weight:var(--font-family)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-words{overflow-wrap:break-word}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[var\(--font-size\)\]{color:var(--font-size)}.text-card-foreground{color:var(--color-card-foreground)}.text-destructive{color:var(--color-destructive)}.text-destructive-foreground{color:var(--color-destructive-foreground)}.text-foreground{color:var(--color-foreground)}.text-green-500{color:var(--color-green-500)}.text-green-600{color:var(--color-green-600)}.text-muted-foreground,.text-muted-foreground\/60{color:var(--color-muted-foreground)}@supports (color:color-mix(in lab,red,red)){.text-muted-foreground\/60{color:color-mix(in oklab,var(--color-muted-foreground)60%,transparent)}}.text-popover-foreground{color:var(--color-popover-foreground)}.text-primary{color:var(--color-primary)}.text-primary-foreground{color:var(--color-primary-foreground)}.text-red-600{color:var(--color-red-600)}.text-secondary-foreground{color:var(--color-secondary-foreground)}.text-text-primary{color:var(--color-text-primary)}.text-text-secondary{color:var(--color-text-secondary)}.text-text-tertiary{color:var(--color-text-tertiary)}.text-zinc-100{color:var(--color-zinc-100)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-500{color:var(--color-zinc-500)}.text-zinc-700{color:var(--color-zinc-700)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.line-through{text-decoration-line:line-through}.decoration-2{text-decoration-thickness:2px}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.accent-\[primary\]{accent-color:primary}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-\[0_4px_16px_0_rgba\(0\,0\,0\,0\.04\)\]{--tw-shadow:0 4px 16px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 8px 24px -16px var(--tw-shadow-color,#0000000a),0 4px 16px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 8px 24px -16px var(--tw-shadow-color,#0000000a),0 4px 16px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-offset-background{--tw-ring-offset-color:var(--color-background)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.group-\[\.toast\]\:bg-muted:is(:where(.group).toast *){background-color:var(--color-muted)}.group-\[\.toast\]\:bg-primary:is(:where(.group).toast *){background-color:var(--color-primary)}.group-\[\.toast\]\:text-muted-foreground:is(:where(.group).toast *){color:var(--color-muted-foreground)}.group-\[\.toast\]\:text-primary-foreground:is(:where(.group).toast *){color:var(--color-primary-foreground)}.group-\[\.toaster\]\:border-border:is(:where(.group).toaster *){border-color:var(--color-border)}.group-\[\.toaster\]\:bg-background:is(:where(.group).toaster *){background-color:var(--color-background)}.group-\[\.toaster\]\:text-foreground:is(:where(.group).toaster *){color:var(--color-foreground)}.group-\[\.toaster\]\:shadow-lg:is(:where(.group).toaster *){--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a),0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-70:is(:where(.peer):disabled~*){opacity:.7}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--color-foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--color-muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-y-0:after{content:var(--tw-content);inset-block:calc(var(--spacing)*0)}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:calc(var(--spacing)*1)}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}.last\:border-r-0:last-child{border-right-style:var(--tw-border-style);border-right-width:0}@media(hover:hover){.hover\:border-border\/50:hover{border-color:var(--color-border)}@supports (color:color-mix(in lab,red,red)){.hover\:border-border\/50:hover{border-color:color-mix(in oklab,var(--color-border)50%,transparent)}}.hover\:border-border\/80:hover{border-color:var(--color-border)}@supports (color:color-mix(in lab,red,red)){.hover\:border-border\/80:hover{border-color:color-mix(in oklab,var(--color-border)80%,transparent)}}.hover\:bg-accent:hover{background-color:var(--color-accent)}.hover\:bg-accent-hover:hover{background-color:var(--color-accent-hover)}.hover\:bg-background:hover{background-color:var(--color-background)}.hover\:bg-card:hover,.hover\:bg-card\/80:hover{background-color:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-card\/80:hover{background-color:color-mix(in oklab,var(--color-card)80%,transparent)}}.hover\:bg-card\/90:hover{background-color:var(--color-card)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-card\/90:hover{background-color:color-mix(in oklab,var(--color-card)90%,transparent)}}.hover\:bg-destructive-hover:hover{background-color:var(--color-destructive-hover)}.hover\:bg-muted:hover{background-color:var(--color-muted)}.hover\:bg-primary-hover:hover{background-color:var(--color-primary-hover)}.hover\:bg-secondary-hover:hover{background-color:var(--color-secondary-hover)}.hover\:bg-secondary\/80:hover{background-color:var(--color-secondary)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-secondary\/80:hover{background-color:color-mix(in oklab,var(--color-secondary)80%,transparent)}}.hover\:text-accent-foreground:hover{color:var(--color-accent-foreground)}.hover\:text-foreground:hover{color:var(--color-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-sm:hover{--tw-shadow:0 8px 24px -16px var(--tw-shadow-color,#0000000a),0 4px 16px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-xl:hover{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a),0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:bg-accent:focus{background-color:var(--color-accent)}.focus\:bg-muted:focus{background-color:var(--color-muted)}.focus\:text-accent-foreground:focus{color:var(--color-accent-foreground)}.focus\:text-destructive:focus{color:var(--color-destructive)}.focus\:text-foreground:focus{color:var(--color-foreground)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-ring:focus{--tw-ring-color:var(--color-ring)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-0:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(0px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-border-dark:focus-visible{--tw-ring-color:var(--color-border-dark)}.focus-visible\:ring-destructive:focus-visible{--tw-ring-color:var(--color-destructive)}.focus-visible\:ring-green-500:focus-visible{--tw-ring-color:var(--color-green-500)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:var(--color-ring)}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width:1px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:calc(var(--spacing)*0)}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:calc(var(--spacing)*1)}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x:calc(var(--spacing)*0);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50% ;translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:calc(var(--spacing)*1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:calc(var(--spacing)*-1);translate:var(--tw-translate-x)var(--tw-translate-y)}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--color-background)}.data-\[state\=active\]\:bg-transparent[data-state=active]{background-color:#0000}.data-\[state\=active\]\:bg-zinc-100[data-state=active]{background-color:var(--color-zinc-100)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--color-foreground)}.data-\[state\=active\]\:opacity-100[data-state=active]{opacity:1}.data-\[state\=active\]\:shadow-none[data-state=active]{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 8px 24px -16px var(--tw-shadow-color,#0000000a),0 4px 16px 0 var(--tw-shadow-color,#0000000a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.data-\[state\=inactive\]\:text-muted-foreground[data-state=inactive]{color:var(--color-muted-foreground)}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:var(--color-accent)}.data-\[state\=open\]\:bg-muted[data-state=open]{background-color:var(--color-muted)}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:var(--color-muted-foreground)}@media(min-width:40rem){.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}:where(.sm\:space-x-2>:not(:last-child)){--tw-space-x-reverse:0;margin-inline-start:calc(calc(var(--spacing)*2)*var(--tw-space-x-reverse));margin-inline-end:calc(calc(var(--spacing)*2)*calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius-lg)}.sm\:text-left{text-align:left}}@media(min-width:48rem){.md\:block{display:block}}@media(min-width:64rem){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:p-0{padding:calc(var(--spacing)*0)}}@media(min-width:80rem){.xl\:block{display:block}}@media(min-width:96rem){.\32xl\:block{display:block}}@media(prefers-color-scheme:dark){.dark\:bg-transparent{background-color:#0000}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing)*4);height:calc(var(--spacing)*4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&\>span\]\:line-clamp-1>span{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{rotate:90deg}.text-heading-1{font-size:var(--font-size-heading-1);line-height:var(--line-height-heading-1);letter-spacing:var(--letter-spacing-tight);font-weight:600}.text-heading-2{font-size:var(--font-size-heading-2);line-height:var(--line-height-heading-2);letter-spacing:var(--letter-spacing-tight);font-weight:600}.text-heading-3{font-size:var(--font-size-heading-3);line-height:var(--line-height-heading-3);letter-spacing:var(--letter-spacing-tight);font-weight:600}.text-heading-4{font-size:var(--font-size-heading-4);line-height:var(--line-height-heading-4);letter-spacing:var(--letter-spacing-heading);font-weight:600}.text-heading-5{font-size:var(--font-size-heading-5);line-height:var(--line-height-heading-5);letter-spacing:var(--letter-spacing-heading);font-weight:600}.text-subheading{font-size:var(--font-size-subheading);line-height:var(--line-height-subheading);font-weight:400}.text-label{font-size:var(--font-size-label);line-height:var(--line-height-label);letter-spacing:var(--letter-spacing-uppercase);text-transform:uppercase;font-weight:500}.text-paragraph{font-size:var(--font-size-paragraph);line-height:var(--line-height-paragraph);font-weight:400}.text-paragraph-medium{font-size:var(--font-size-paragraph);line-height:var(--line-height-paragraph);font-weight:500}.text-paragraph-sm{font-size:var(--font-size-paragraph-sm);line-height:var(--line-height-paragraph-sm);font-weight:400}.text-paragraph-sm-medium{font-size:var(--font-size-paragraph-sm);line-height:var(--line-height-paragraph-sm);letter-spacing:var(--letter-spacing-wide);font-weight:500}.text-paragraph-mini{font-size:var(--font-size-paragraph-mini);line-height:var(--line-height-paragraph-mini);font-weight:400}.text-paragraph-mini-medium{font-size:var(--font-size-paragraph-mini);line-height:var(--line-height-paragraph-mini);font-weight:500}.text-caption{font-size:var(--font-size-caption);line-height:var(--line-height-caption);font-weight:400}.text-code{font-size:var(--font-size-code);line-height:var(--line-height-code);font-family:monospace}}:root{--background:var(--color-white);--foreground:var(--color-neutral-950);--card:var(--color-white);--card-foreground:var(--color-neutral-950);--popover:var(--color-white);--popover-foreground:var(--color-neutral-950);--primary:var(--color-neutral-900);--primary-foreground:var(--color-neutral-50);--primary-hover:var(--color-neutral-700);--secondary:var(--color-neutral-100);--secondary-foreground:var(--color-neutral-900);--secondary-hover:var(--color-neutral-50);--muted:var(--color-neutral-50);--muted-foreground:var(--color-neutral-500);--accent:var(--color-neutral-100);--accent-foreground:var(--color-neutral-900);--accent-hover:var(--color-neutral-50);--destructive:var(--color-red-500);--destructive-foreground:var(--color-neutral-50);--destructive-hover:var(--color-red-600);--border:var(--color-neutral-200);--border-dark:var(--color-neutral-300);--border-focus:var(--color-neutral-400);--border-error:var(--color-red-500);--input:var(--color-neutral-200);--input-background:var(--color-white);--ring:var(--color-neutral-900);--text-primary:var(--color-neutral-900);--text-secondary:var(--color-neutral-600);--text-tertiary:var(--color-neutral-500)}.dark{--background:var(--color-neutral-950);--foreground:var(--color-neutral-50);--card:var(--color-neutral-950);--card-foreground:var(--color-neutral-50);--popover:var(--color-neutral-950);--popover-foreground:var(--color-neutral-50);--primary:var(--color-neutral-50);--primary-foreground:var(--color-neutral-900);--primary-hover:var(--color-neutral-200);--secondary:var(--color-neutral-800);--secondary-foreground:var(--color-neutral-50);--secondary-hover:var(--color-neutral-700);--muted:var(--color-neutral-800);--muted-foreground:var(--color-neutral-400);--accent:var(--color-neutral-800);--accent-foreground:var(--color-neutral-50);--accent-hover:var(--color-neutral-700);--destructive:var(--color-red-900);--destructive-foreground:var(--color-neutral-50);--destructive-hover:var(--color-red-800);--border:var(--color-neutral-800);--border-dark:var(--color-neutral-700);--border-focus:var(--color-neutral-600);--border-error:var(--color-red-500);--input:var(--color-neutral-800);--input-background:var(--color-neutral-950);--ring:var(--color-neutral-300);--text-primary:var(--color-neutral-50);--text-secondary:var(--color-neutral-400);--text-tertiary:var(--color-neutral-500)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes exit{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.9)}}@keyframes slideDownAndFade{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeftAndFade{0%{opacity:0;transform:translate(2px)}to{opacity:1;transform:translate(0)}}@keyframes slideUpAndFade{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@keyframes slideRightAndFade{0%{opacity:0;transform:translate(-2px)}to{opacity:1;transform:translate(0)}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@keyframes pulse{50%{opacity:.5}}
@@ -1 +1 @@
1
- import{g as i,e,f as k}from"./vendor-Ccy0WTO1.js";const c={};function d(s){const t=this,n=s||c,o=t.data(),r=o.micromarkExtensions||(o.micromarkExtensions=[]),a=o.fromMarkdownExtensions||(o.fromMarkdownExtensions=[]),m=o.toMarkdownExtensions||(o.toMarkdownExtensions=[]);r.push(i(n)),a.push(e()),m.push(k(n))}export{d as r};
1
+ import{g as i,e,f as k}from"./vendor-CDPxlbZ6.js";const c={};function d(s){const t=this,n=s||c,o=t.data(),r=o.micromarkExtensions||(o.micromarkExtensions=[]),a=o.fromMarkdownExtensions||(o.fromMarkdownExtensions=[]),m=o.toMarkdownExtensions||(o.toMarkdownExtensions=[]);r.push(i(n)),a.push(e()),m.push(k(n))}export{d as r};