@dahawa/hawa-code 2.4.48 → 2.4.50

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.
Files changed (4) hide show
  1. package/cli.js +553 -689
  2. package/hands.js +476 -612
  3. package/package.json +1 -1
  4. package/webServer/app.js +2 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dahawa/hawa-code",
3
- "version": "2.4.48",
3
+ "version": "2.4.50",
4
4
  "bin": {
5
5
  "hcode": "hawa.js"
6
6
  },
package/webServer/app.js CHANGED
@@ -68,7 +68,7 @@ ${e}</tr>
68
68
  `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${hn(e,!0)}</code>`}br(e){return"<br>"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let l=this.parser.parseInline(n),a=Tv(e);if(a===null)return l;e=a;let s='<a href="'+e+'"';return t&&(s+=' title="'+hn(t)+'"'),s+=">"+l+"</a>",s}image({href:e,title:t,text:n,tokens:l}){l&&(n=this.parser.parseInline(l,this.parser.textRenderer));let a=Tv(e);if(a===null)return hn(n);e=a;let s=`<img src="${e}" alt="${n}"`;return t&&(s+=` title="${hn(t)}"`),s+=">",s}text(e){return"tokens"in e&&e.tokens?this.parser.parseInline(e.tokens):"escaped"in e&&e.escaped?e.text:hn(e.text)}},ad=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return""+e}image({text:e}){return""+e}br(){return""}},It=class Pf{constructor(t){de(this,"options");de(this,"renderer");de(this,"textRenderer");this.options=t||Pl,this.options.renderer=this.options.renderer||new uu,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new ad}static parse(t,n){return new Pf(n).parse(t)}static parseInline(t,n){return new Pf(n).parseInline(t)}parse(t,n=!0){let l="";for(let a=0;a<t.length;a++){let s=t[a];if(this.options.extensions?.renderers?.[s.type]){let o=s,u=this.options.extensions.renderers[o.type].call({parser:this},o);if(u!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(o.type)){l+=u||"";continue}}let i=s;switch(i.type){case"space":{l+=this.renderer.space(i);continue}case"hr":{l+=this.renderer.hr(i);continue}case"heading":{l+=this.renderer.heading(i);continue}case"code":{l+=this.renderer.code(i);continue}case"table":{l+=this.renderer.table(i);continue}case"blockquote":{l+=this.renderer.blockquote(i);continue}case"list":{l+=this.renderer.list(i);continue}case"html":{l+=this.renderer.html(i);continue}case"def":{l+=this.renderer.def(i);continue}case"paragraph":{l+=this.renderer.paragraph(i);continue}case"text":{let o=i,u=this.renderer.text(o);for(;a+1<t.length&&t[a+1].type==="text";)o=t[++a],u+=`
69
69
  `+this.renderer.text(o);n?l+=this.renderer.paragraph({type:"paragraph",raw:u,text:u,tokens:[{type:"text",raw:u,text:u,escaped:!0}]}):l+=u;continue}default:{let o='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return l}parseInline(t,n=this.renderer){let l="";for(let a=0;a<t.length;a++){let s=t[a];if(this.options.extensions?.renderers?.[s.type]){let o=this.options.extensions.renderers[s.type].call({parser:this},s);if(o!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){l+=o||"";continue}}let i=s;switch(i.type){case"escape":{l+=n.text(i);break}case"html":{l+=n.html(i);break}case"link":{l+=n.link(i);break}case"image":{l+=n.image(i);break}case"strong":{l+=n.strong(i);break}case"em":{l+=n.em(i);break}case"codespan":{l+=n.codespan(i);break}case"br":{l+=n.br(i);break}case"del":{l+=n.del(i);break}case"text":{l+=n.text(i);break}default:{let o='Token with "'+i.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return l}},su,oi=(su=class{constructor(e){de(this,"options");de(this,"block");this.options=e||Pl}preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?Rt.lex:Rt.lexInline}provideParser(){return this.block?It.parse:It.parseInline}},de(su,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),de(su,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),su),nT=class{constructor(...e){de(this,"defaults",Wf());de(this,"options",this.setOptions);de(this,"parse",this.parseMarkdown(!0));de(this,"parseInline",this.parseMarkdown(!1));de(this,"Parser",It);de(this,"Renderer",uu);de(this,"TextRenderer",ad);de(this,"Lexer",Rt);de(this,"Tokenizer",ou);de(this,"Hooks",oi);this.use(...e)}walkTokens(e,t){let n=[];for(let l of e)switch(n=n.concat(t.call(this,l)),l.type){case"table":{let a=l;for(let s of a.header)n=n.concat(this.walkTokens(s.tokens,t));for(let s of a.rows)for(let i of s)n=n.concat(this.walkTokens(i.tokens,t));break}case"list":{let a=l;n=n.concat(this.walkTokens(a.items,t));break}default:{let a=l;this.defaults.extensions?.childTokens?.[a.type]?this.defaults.extensions.childTokens[a.type].forEach(s=>{let i=a[s].flat(1/0);n=n.concat(this.walkTokens(i,t))}):a.tokens&&(n=n.concat(this.walkTokens(a.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{let l={...n};if(l.async=this.defaults.async||l.async||!1,n.extensions&&(n.extensions.forEach(a=>{if(!a.name)throw new Error("extension name required");if("renderer"in a){let s=t.renderers[a.name];s?t.renderers[a.name]=function(...i){let o=a.renderer.apply(this,i);return o===!1&&(o=s.apply(this,i)),o}:t.renderers[a.name]=a.renderer}if("tokenizer"in a){if(!a.level||a.level!=="block"&&a.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=t[a.level];s?s.unshift(a.tokenizer):t[a.level]=[a.tokenizer],a.start&&(a.level==="block"?t.startBlock?t.startBlock.push(a.start):t.startBlock=[a.start]:a.level==="inline"&&(t.startInline?t.startInline.push(a.start):t.startInline=[a.start]))}"childTokens"in a&&a.childTokens&&(t.childTokens[a.name]=a.childTokens)}),l.extensions=t),n.renderer){let a=this.defaults.renderer||new uu(this.defaults);for(let s in n.renderer){if(!(s in a))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let i=s,o=n.renderer[i],u=a[i];a[i]=(...f)=>{let r=o.apply(a,f);return r===!1&&(r=u.apply(a,f)),r||""}}l.renderer=a}if(n.tokenizer){let a=this.defaults.tokenizer||new ou(this.defaults);for(let s in n.tokenizer){if(!(s in a))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let i=s,o=n.tokenizer[i],u=a[i];a[i]=(...f)=>{let r=o.apply(a,f);return r===!1&&(r=u.apply(a,f)),r}}l.tokenizer=a}if(n.hooks){let a=this.defaults.hooks||new oi;for(let s in n.hooks){if(!(s in a))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let i=s,o=n.hooks[i],u=a[i];oi.passThroughHooks.has(s)?a[i]=f=>{if(this.defaults.async&&oi.passThroughHooksRespectAsync.has(s))return(async()=>{let p=await o.call(a,f);return u.call(a,p)})();let r=o.call(a,f);return u.call(a,r)}:a[i]=(...f)=>{if(this.defaults.async)return(async()=>{let p=await o.apply(a,f);return p===!1&&(p=await u.apply(a,f)),p})();let r=o.apply(a,f);return r===!1&&(r=u.apply(a,f)),r}}l.hooks=a}if(n.walkTokens){let a=this.defaults.walkTokens,s=n.walkTokens;l.walkTokens=function(i){let o=[];return o.push(s.call(this,i)),a&&(o=o.concat(a.call(this,i))),o}}this.defaults={...this.defaults,...l}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return Rt.lex(e,t??this.defaults)}parser(e,t){return It.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let l={...n},a={...this.defaults,...l},s=this.onError(!!a.silent,!!a.async);if(this.defaults.async===!0&&l.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof t>"u"||t===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof t!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(t)+", string expected"));if(a.hooks&&(a.hooks.options=a,a.hooks.block=e),a.async)return(async()=>{let i=a.hooks?await a.hooks.preprocess(t):t,o=await(a.hooks?await a.hooks.provideLexer():e?Rt.lex:Rt.lexInline)(i,a),u=a.hooks?await a.hooks.processAllTokens(o):o;a.walkTokens&&await Promise.all(this.walkTokens(u,a.walkTokens));let f=await(a.hooks?await a.hooks.provideParser():e?It.parse:It.parseInline)(u,a);return a.hooks?await a.hooks.postprocess(f):f})().catch(s);try{a.hooks&&(t=a.hooks.preprocess(t));let i=(a.hooks?a.hooks.provideLexer():e?Rt.lex:Rt.lexInline)(t,a);a.hooks&&(i=a.hooks.processAllTokens(i)),a.walkTokens&&this.walkTokens(i,a.walkTokens);let o=(a.hooks?a.hooks.provideParser():e?It.parse:It.parseInline)(i,a);return a.hooks&&(o=a.hooks.postprocess(o)),o}catch(i){return s(i)}}}onError(e,t){return n=>{if(n.message+=`
70
70
  Please report this to https://github.com/markedjs/marked.`,e){let l="<p>An error occurred:</p><pre>"+hn(n.message+"",!0)+"</pre>";return t?Promise.resolve(l):l}if(t)return Promise.reject(n);throw n}}},Jl=new nT;function le(e,t){return Jl.parse(e,t)}le.options=le.setOptions=function(e){return Jl.setOptions(e),le.defaults=Jl.defaults,_v(le.defaults),le};le.getDefaults=Wf;le.defaults=Pl;le.use=function(...e){return Jl.use(...e),le.defaults=Jl.defaults,_v(le.defaults),le};le.walkTokens=function(e,t){return Jl.walkTokens(e,t)};le.parseInline=Jl.parseInline;le.Parser=It;le.parser=It.parse;le.Renderer=uu;le.TextRenderer=ad;le.Lexer=Rt;le.lexer=Rt.lex;le.Tokenizer=ou;le.Hooks=oi;le.parse=le;var ZE=le.options,XE=le.setOptions,VE=le.use,KE=le.walkTokens,$E=le.parseInline;var JE=It.parse,PE=Rt.lex;var B=E(x(),1);var ci=E(x(),1);function Bv({input:e}){return ci.default.createElement("div",{className:"tool-use-detail"},ci.default.createElement("span",{className:"tool-badge"},"Read"),ci.default.createElement("span",{className:"file-path"},e.file_path),(e.offset||e.limit)&&ci.default.createElement("span",{className:"tool-meta"},e.offset?`from line ${e.offset}`:"",e.limit?` (${e.limit} lines)`:""))}var fi=E(x(),1);function Hv({input:e}){let t=e.old_string===""?"Create":e.new_string===""?"Delete":"Update";return fi.default.createElement("div",{className:"tool-use-detail"},fi.default.createElement("span",{className:"tool-badge"},t),fi.default.createElement("span",{className:"file-path"},e.file_path),e.replace_all&&fi.default.createElement("span",{className:"tool-meta"},"(replace all)"))}var di=E(x(),1);function qv({input:e}){let t=e.content?e.content.split(`
71
- `).length:0;return di.default.createElement("div",{className:"tool-use-detail"},di.default.createElement("span",{className:"tool-badge"},"Write"),di.default.createElement("span",{className:"file-path"},e.file_path),di.default.createElement("span",{className:"tool-meta"},"(",t," lines)"))}var Ra=E(x(),1);function jv({input:e}){return Ra.default.createElement("div",{className:"tool-use-detail"},Ra.default.createElement("span",{className:"tool-badge"},"Bash"),e.run_in_background&&Ra.default.createElement("span",{className:"tool-meta"},"(background)"),Ra.default.createElement("pre",{className:"command-block"},Ra.default.createElement("code",null,e.command)))}var bl=E(x(),1);function Gv({input:e}){return bl.default.createElement("div",{className:"tool-use-detail"},bl.default.createElement("span",{className:"tool-badge"},"Grep"),bl.default.createElement("code",{className:"pattern-text"},"/",e.pattern,"/"),e.path&&bl.default.createElement("span",{className:"tool-meta"},"in ",e.path),e.glob&&bl.default.createElement("span",{className:"tool-meta"},"(",e.glob,")"),e.type&&bl.default.createElement("span",{className:"tool-meta"},"type: ",e.type),e.output_mode&&bl.default.createElement("span",{className:"tool-meta"},"[",e.output_mode,"]"))}var pi=E(x(),1);function Yv({input:e}){return pi.default.createElement("div",{className:"tool-use-detail"},pi.default.createElement("span",{className:"tool-badge"},"Glob"),pi.default.createElement("code",{className:"pattern-text"},e.pattern),e.path&&pi.default.createElement("span",{className:"tool-meta"},"in ",e.path))}var fu=E(x(),1);function Qv({input:e}){return fu.default.createElement("div",{className:"tool-use-detail"},fu.default.createElement("span",{className:"tool-badge"},"LS"),fu.default.createElement("span",{className:"file-path"},e.path||"."))}var vn=E(x(),1),du=120;function Zv({input:e}){let[t,n]=(0,vn.useState)(!1),{description:l,prompt:a,subagent_type:s,model_name:i,resume:o,run_in_background:u,name:f,team_name:r,mode:p,isolation:c}=e,d=typeof a=="string"&&a.length>0,v=d&&a.length>du?a.substring(0,du)+"...":a,y=d&&(t||a.length<=du),S=d&&a.length>du,g=[];return s&&g.push(`type: ${s}`),i&&g.push(`model: ${i}`),o&&g.push(`resume: ${o}`),u&&g.push("background"),r&&f&&g.push(`team: ${r}/${f}`),p&&g.push(`mode: ${p}`),c&&g.push(`isolation: ${c}`),vn.default.createElement("div",{className:"tool-use-detail"},vn.default.createElement("span",{className:"tool-badge"},"Agent"),l&&vn.default.createElement("span",{className:"tool-description"},l),g.length>0&&vn.default.createElement("span",{className:"tool-meta"},"(",g.join(", "),")"),y&&vn.default.createElement("div",{className:"tool-input agent-prompt-detail"},vn.default.createElement("code",null,t?a:v)),S&&vn.default.createElement("span",{className:"tool-meta detail-toggle",onClick:()=>n(!t),style:{cursor:"pointer"}},t?"collapse details":"details"))}var Wl=E(x(),1);function Xv({input:e}){return Wl.default.createElement("div",{className:"tool-use-detail"},Wl.default.createElement("span",{className:"tool-badge"},"LSP"),Wl.default.createElement("span",{className:"tool-meta"},e.operation),e.filePath&&Wl.default.createElement("span",{className:"file-path"},e.filePath),e.line!==void 0&&Wl.default.createElement("span",{className:"tool-meta"},":",e.line+1,e.character!==void 0?`:${e.character+1}`:""),e.query&&Wl.default.createElement("code",{className:"pattern-text"},e.query))}var sd=E(x(),1);function Vv({}){return sd.default.createElement("div",{className:"tool-use-detail"},sd.default.createElement("span",{className:"tool-badge"},"Cwd"))}var pu=E(x(),1);function Kv({input:e,displayName:t}){let l=Object.entries(e||{}).map(([a,s])=>`${a}: ${JSON.stringify(s)}`).join(", ");return pu.default.createElement("div",{className:"tool-use-detail tool-use-mcp"},pu.default.createElement("span",{className:"tool-badge"},t),l&&pu.default.createElement("span",{className:"tool-meta mcp-input-summary"},"(",l,")"))}var mu=E(x(),1);function $v({input:e}){let t=e.task_id.startsWith("a"),n=e.block!==!1?`Reading ${t?"Task":"shell"} output (blocking until complete${e.timeout?` timeout ${e.timeout}`:""})`:`Reading ${t?"Task":"shell"} output (non-blocking)`;return mu.default.createElement("div",{className:"tool-use-detail"},mu.default.createElement("span",{className:"tool-badge"},t?"TaskOutput":"ShellOutput"),mu.default.createElement("span",{className:"tool-meta"},n," (ID: ",e.task_id,")"))}var Ia=E(x(),1);function Jv({input:e}){return Ia.default.createElement("div",{className:"tool-use-detail"},Ia.default.createElement("span",{className:"tool-badge"},"PowerShell"),e.run_in_background&&Ia.default.createElement("span",{className:"tool-meta"},"(background)"),Ia.default.createElement("pre",{className:"command-block"},Ia.default.createElement("code",null,e.command)))}var gu=E(x(),1);function Pv({input:e}){let t=e.toolNames||[];return gu.default.createElement("div",{className:"tool-use-detail"},gu.default.createElement("span",{className:"tool-badge"},"ToolLoader"),gu.default.createElement("span",{className:"tool-meta"},"Loading tool",t.length>1?"s":"",": ",t.join(", ")))}var hu=E(x(),1);function Wv({input:e}){let t=e.toolNames||[];return hu.default.createElement("div",{className:"tool-use-detail"},hu.default.createElement("span",{className:"tool-badge"},"ToolUnLoader"),hu.default.createElement("span",{className:"tool-meta"},"Unloading tool",t.length>1?"s":"",": ",t.join(", ")))}var Fa=E(x(),1);function Rv({input:e}){return Fa.default.createElement("div",{className:"tool-use-detail"},Fa.default.createElement("span",{className:"tool-badge"},"NotebookEdit"),Fa.default.createElement("span",{className:"tool-meta"},e.notebook_path," (cell ",e.cell_number,", ",e.edit_mode||"replace",")"),Fa.default.createElement("pre",{className:"command-block"},Fa.default.createElement("code",null,e.new_source.slice(0,200),e.new_source.length>200?"...":"")))}var vu=E(x(),1);function Iv({input:e}){return vu.default.createElement("div",{className:"tool-use-detail"},vu.default.createElement("span",{className:"tool-badge"},"WebSearch"),vu.default.createElement("span",{className:"tool-meta"},e.query))}var mi=E(x(),1);function Fv({input:e}){return mi.default.createElement("div",{className:"tool-use-detail"},mi.default.createElement("span",{className:"tool-badge"},"WebFetch"),mi.default.createElement("span",{className:"tool-meta"},e.url),mi.default.createElement("div",{className:"tool-input"},e.prompt))}var yu=E(x(),1);function ey({input:e}){return yu.default.createElement("div",{className:"tool-use-detail"},yu.default.createElement("span",{className:"tool-badge"},"TaskStop"),yu.default.createElement("span",{className:"tool-meta"},"Stop task: ",e.task_id))}var bu=E(x(),1);function ty({input:e}){let t=e.todos?.find(n=>n.status==="in_progress");return bu.default.createElement("div",{className:"tool-use-detail"},bu.default.createElement("span",{className:"tool-badge"},"TodoWrite"),bu.default.createElement("span",{className:"tool-meta"},t?`${t.activeForm}\u2026`:"update todo"))}var Su=E(x(),1);function ny({input:e}){return Su.default.createElement("div",{className:"tool-use-detail"},Su.default.createElement("span",{className:"tool-badge"},"Think"),Su.default.createElement("div",{className:"tool-input"},e.thought))}var Nu=E(x(),1);function ly({input:e}){let t=e.questions?.length||0,n=e.questions?.reduce((l,a)=>l+(a.options?.length||0),0)||0;return Nu.default.createElement("div",{className:"tool-use-detail"},Nu.default.createElement("span",{className:"tool-badge"},"AskUserQuestion"),Nu.default.createElement("span",{className:"tool-meta"},"Asking ",t," question",t>1?"s":""," with ",n," total options"))}var J=E(x(),1);function ay({questions:e,onSubmit:t,onCancel:n}){let[l,a]=(0,J.useState)(0),[s,i]=(0,J.useState)({}),[o,u]=(0,J.useState)({}),[f,r]=(0,J.useState)({}),[p,c]=(0,J.useState)({}),[d,v]=(0,J.useState)(!1),y=e[l],S=l===e.length-1,g=(0,J.useCallback)(z=>(s[z]?.length??0)>0||(o[z]?.length??0)>0,[s,o]),m=(0,J.useCallback)(z=>{let q=y.options[z];i(C=>{let N=C[l]||[];if(y.multiSelect){let Y=N.includes(q.label)?N.filter(F=>F!==q.label):[...N,q.label];return{...C,[l]:Y}}else return{...C,[l]:[q.label]}}),r(C=>({...C,[l]:!1}))},[l,y]),h=(0,J.useCallback)(()=>{i(z=>{let q=z[l]||[];if(y.multiSelect){let N=q.includes("Custom answer")?q:[...q,"Custom answer"];return{...z,[l]:N}}else return{...z,[l]:["Custom answer"]}}),r(z=>({...z,[l]:!0})),c(z=>({...z,[l]:z[l]||o[l]||""}))},[l,y,o]),b=(0,J.useCallback)(()=>{let z=p[l]?.trim()||"";z&&(u(q=>({...q,[l]:z})),r(q=>({...q,[l]:!1})))},[l,p]),A=(0,J.useCallback)(()=>{r(z=>({...z,[l]:!1})),i(z=>{let C=(z[l]||[]).filter(N=>N!=="Custom answer");return{...z,[l]:C}}),c(z=>({...z,[l]:""})),u(z=>{let q={...z};return delete q[l],q})},[l]),D=(0,J.useCallback)(()=>{let z={};e.forEach((q,C)=>{let N=o[C],U=s[C]||[];N?z[q.question]=N:U.length>0?z[q.question]=U.filter(Y=>Y!=="Custom answer").join(", "):z[q.question]="No answer provided"}),v(!0),t(z)},[e,s,o,t]),k=(0,J.useCallback)(()=>{v(!0),n()},[n]),w=(0,J.useCallback)(()=>{l<e.length-1&&a(z=>z+1)},[l,e.length]),_=(0,J.useCallback)(()=>{l>0&&a(z=>z-1)},[l]),M=s[l]?.includes("Custom answer")||!1,j=M&&f[l],X=o[l]!==void 0;return J.default.createElement("div",{className:"ask-user-question-form"},J.default.createElement("div",{className:"ask-user-question-header"},e.map((z,q)=>J.default.createElement("span",{key:q,className:`ask-user-question-step ${g(q)?"answered":""} ${q===l?"active":""}`},z.header))),J.default.createElement("div",{className:"ask-user-question-title"},y.question),y.multiSelect&&J.default.createElement("div",{className:"ask-user-question-hint"},"You can select multiple options"),J.default.createElement("div",{className:"ask-user-question-options"},y.options.map((z,q)=>{let C=(s[l]||[]).includes(z.label),N=y.multiSelect?"checkbox":"radio";return J.default.createElement("label",{key:q,className:`ask-user-question-option ${C?"selected":""}`},J.default.createElement("input",{type:N,name:`question-${l}`,checked:C,onChange:()=>m(q),disabled:d}),J.default.createElement("span",{className:"ask-user-question-option-label"},z.label),J.default.createElement("span",{className:"ask-user-question-option-description"},z.description))}),J.default.createElement("label",{className:`ask-user-question-option ${M?"selected":""}`},J.default.createElement("input",{type:y.multiSelect?"checkbox":"radio",name:`question-${l}`,checked:M,onChange:h,disabled:d}),J.default.createElement("span",{className:"ask-user-question-option-label"},"Type something"),X&&!j&&J.default.createElement("span",{className:"ask-user-question-option-description"},"Custom: ",o[l])),j&&J.default.createElement("div",{className:"ask-user-question-custom-inline"},J.default.createElement("input",{type:"text",className:"ask-user-question-custom-input",value:p[l]||"",onChange:z=>c(q=>({...q,[l]:z.target.value})),placeholder:"Type your answer...",disabled:d,autoFocus:!0}),J.default.createElement("div",{className:"ask-user-question-custom-inline-actions"},J.default.createElement("button",{onClick:b,disabled:d||!p[l]?.trim()},"OK"),J.default.createElement("button",{onClick:A,disabled:d},"Cancel")))),J.default.createElement("div",{className:"ask-user-question-actions"},J.default.createElement("button",{onClick:_,disabled:l===0||d},"Previous"),S?J.default.createElement("button",{onClick:D,disabled:d},"Submit"):J.default.createElement("button",{onClick:w,disabled:d},"Next"),J.default.createElement("button",{onClick:k,disabled:d},"Cancel")))}var Tu=E(x(),1);function sy(e){return Tu.default.createElement("div",{className:"tool-use-detail"},Tu.default.createElement("span",{className:"tool-badge"},"EnterPlanMode"),Tu.default.createElement("span",{className:"tool-meta"},"Entering plan mode"))}var Yn=E(x(),1);function iy({onApprove:e}){let[t,n]=(0,Yn.useState)(!1);return Yn.default.createElement("div",{className:"plan-mode-inline-form"},Yn.default.createElement("div",{className:"plan-mode-inline-title"},"Enter plan mode?"),Yn.default.createElement("div",{className:"plan-mode-inline-description"},"Plan mode will ask you to approve a plan before making changes."),Yn.default.createElement("div",{className:"plan-mode-inline-actions"},Yn.default.createElement("button",{onClick:()=>{n(!0),e(!0)},disabled:t},"Yes, enter plan mode"),Yn.default.createElement("button",{onClick:()=>{n(!0),e(!1)},disabled:t},"No, stay in current mode")))}var Eu=E(x(),1);function oy({input:e}){return Eu.default.createElement("div",{className:"tool-use-detail"},Eu.default.createElement("span",{className:"tool-badge"},"ExitPlanMode"),Eu.default.createElement("span",{className:"tool-meta"},"Presenting plan to user for approval"))}var Ze=E(x(),1);function uy({plan:e,planFilePath:t,onApprove:n,onReject:l}){let[a,s]=(0,Ze.useState)(!1);return e?Ze.default.createElement("div",{className:"plan-mode-inline-form"},Ze.default.createElement("div",{className:"plan-mode-inline-title"},"Approve plan to exit plan mode"),Ze.default.createElement("div",{className:"plan-mode-inline-plan"},Ze.default.createElement("pre",null,e)),t&&Ze.default.createElement("div",{className:"plan-mode-inline-path"},"Plan file: ",t),Ze.default.createElement("div",{className:"plan-mode-inline-actions"},Ze.default.createElement("button",{onClick:()=>{s(!0),n(!1)},disabled:a},"Auto-accept edits"),Ze.default.createElement("button",{onClick:()=>{s(!0),n(!0)},disabled:a},"Manual approval"),Ze.default.createElement("button",{onClick:()=>{s(!0),l()},disabled:a},"Reject"))):Ze.default.createElement("div",{className:"plan-mode-inline-form"},Ze.default.createElement("div",{className:"plan-mode-inline-title"},"No plan found"),Ze.default.createElement("div",{className:"plan-mode-inline-description"},"There is no plan to approve. Do you want to exit plan mode?"),Ze.default.createElement("div",{className:"plan-mode-inline-actions"},Ze.default.createElement("button",{onClick:()=>{s(!0),n(!1)},disabled:a},"Yes, exit plan mode"),Ze.default.createElement("button",{onClick:()=>{s(!0),l()},disabled:a},"No, keep planning")))}var xu=E(x(),1);function ry({input:e}){return xu.default.createElement("div",{className:"tool-use-detail"},xu.default.createElement("span",{className:"tool-badge"},"EnterWorktree"),xu.default.createElement("span",{className:"tool-meta"},e.name?`Creating worktree: ${e.name}`:"Creating worktree"))}var _u=E(x(),1);function cy({input:e}){return _u.default.createElement("div",{className:"tool-use-detail"},_u.default.createElement("span",{className:"tool-badge"},"ExitWorktree"),_u.default.createElement("span",{className:"tool-meta"},e.action==="remove"?"Exiting and removing worktree":"Exiting worktree"))}var ku=E(x(),1);function fy({input:e}){return ku.default.createElement("div",{className:"tool-use-detail"},ku.default.createElement("span",{className:"tool-badge"},"SlashCommand"),ku.default.createElement("span",{className:"tool-meta"},"Executing ",e.command))}var Au=E(x(),1);function dy({input:e}){return Au.default.createElement("div",{className:"tool-use-detail"},Au.default.createElement("span",{className:"tool-badge"},"Skill"),Au.default.createElement("span",{className:"tool-meta"},e.skill))}var Mu=E(x(),1);function py({input:e}){let t=e.prompt?.length>60?e.prompt.slice(0,60)+"...":e.prompt;return Mu.default.createElement("div",{className:"tool-use-detail"},Mu.default.createElement("span",{className:"tool-badge"},"CronCreate"),Mu.default.createElement("span",{className:"tool-meta"},e.cron,": ",t))}var Cu=E(x(),1);function my({input:e}){return Cu.default.createElement("div",{className:"tool-use-detail"},Cu.default.createElement("span",{className:"tool-badge"},"CronDelete"),Cu.default.createElement("span",{className:"tool-meta"},e.id))}var Ou=E(x(),1);function gy(e){return Ou.default.createElement("div",{className:"tool-use-detail"},Ou.default.createElement("span",{className:"tool-badge"},"CronList"),Ou.default.createElement("span",{className:"tool-meta"},"List scheduled cron jobs"))}var wu=E(x(),1);function hy({input:e}){return wu.default.createElement("div",{className:"tool-use-detail"},wu.default.createElement("span",{className:"tool-badge"},"TeamCreate"),wu.default.createElement("span",{className:"tool-meta"},"Creating team: ",e.team_name))}var zu=E(x(),1);function vy(e){return zu.default.createElement("div",{className:"tool-use-detail"},zu.default.createElement("span",{className:"tool-badge"},"TeamDelete"),zu.default.createElement("span",{className:"tool-meta"},"Deleting current team"))}var Uu=E(x(),1);function yy({input:e}){let t="";switch(e.type){case"message":t=`Sending message to ${e.recipient}: ${e.summary||e.content?.slice(0,50)||""}`;break;case"broadcast":t=`Broadcasting to all teammates: ${e.summary||e.content?.slice(0,50)||""}`;break;case"shutdown_request":t=`Requesting shutdown for ${e.recipient}`;break;case"shutdown_response":t=`Responding to shutdown request: ${e.approve?"approved":"rejected"}`;break;case"plan_approval_response":t=`Responding to plan approval: ${e.approve?"approved":"rejected"}`;break;default:t=`Sending message (${e.type})`}return Uu.default.createElement("div",{className:"tool-use-detail"},Uu.default.createElement("span",{className:"tool-badge"},"SendMessage"),Uu.default.createElement("span",{className:"tool-meta"},t))}var Du=E(x(),1);function lT(e){let t=!1,n=!1;for(let l of Object.values(e))for(let a of l)a==="__tool_result__"?t=!0:n=!0;return{hasToolResult:t,hasInputFields:n}}function by({input:e}){let t=e.action==="archive"?"Archiving":"Unarchiving",n=e.archiveToolUseInputFields??{},l=Object.keys(n).length,{hasToolResult:a,hasInputFields:s}=lT(n),i="tool result(s)";return a&&s?i="tool result(s) and input field(s)":s&&(i="input field(s)"),Du.default.createElement("div",{className:"tool-use-detail"},Du.default.createElement("span",{className:"tool-badge"},"MessageArchiving"),Du.default.createElement("span",{className:"tool-meta"},t," ",i," for ",l," tool use(s)"))}var Ft=E(x(),1),Lu=120;function Sy({input:e}){let[t,n]=(0,Ft.useState)(!1),{action:l,key:a,summary:s,content:i}=e,o=l==="write"?"write":l==="read"?"read":l==="list"?"list":"delete",u=typeof i=="string"&&i.length>0,f=u&&i.length>Lu?i.substring(0,Lu)+"...":i,r=u&&(t||i.length<=Lu),p=u&&i.length>Lu;return Ft.default.createElement("div",{className:"tool-use-detail"},Ft.default.createElement("span",{className:"tool-badge"},"Memo"),Ft.default.createElement("span",{className:"tool-badge memo-action-badge"},o),a&&Ft.default.createElement("span",{className:"file-path"},a),s&&Ft.default.createElement("span",{className:"tool-meta"},s),r&&Ft.default.createElement("div",{className:"tool-input memo-content-detail"},Ft.default.createElement("code",null,t?i:f)),p&&Ft.default.createElement("span",{className:"tool-meta detail-toggle",onClick:()=>n(!t),style:{cursor:"pointer"}},t?"collapse details":"details"))}var Rl=E(x(),1);function Ny({input:e}){let t=e?.proxyToolAction??"call",n=e?.toolName??"",l=t==="load",a=t==="call"&&e?.input&&Object.keys(e.input).length>0,[s,i]=(0,Rl.useState)(!1);return Rl.default.createElement("div",{className:"tool-use-detail"},Rl.default.createElement("span",{className:"tool-badge"},l?"LoadTool":"ProxyTool"),Rl.default.createElement("span",{className:"tool-meta"},l?n:`${t} ${n}`),a&&Rl.default.createElement("div",{className:"tool-input",onClick:()=>i(!s),style:{cursor:"pointer"}},s?JSON.stringify(e.input,null,2):JSON.stringify(e.input)))}var yn=E(x(),1),pd=E(Yy(),1),Jy=E($y(),1);pd.default.registerLanguage("javascript",Jy.default);function Py({input:e}){let t=e?.code??"",n=t.split(`
71
+ `).length:0;return di.default.createElement("div",{className:"tool-use-detail"},di.default.createElement("span",{className:"tool-badge"},"Write"),di.default.createElement("span",{className:"file-path"},e.file_path),di.default.createElement("span",{className:"tool-meta"},"(",t," lines)"))}var Ra=E(x(),1);function jv({input:e}){return Ra.default.createElement("div",{className:"tool-use-detail"},Ra.default.createElement("span",{className:"tool-badge"},"Bash"),e.run_in_background&&Ra.default.createElement("span",{className:"tool-meta"},"(background)"),Ra.default.createElement("pre",{className:"command-block"},Ra.default.createElement("code",null,e.command)))}var bl=E(x(),1);function Gv({input:e}){return bl.default.createElement("div",{className:"tool-use-detail"},bl.default.createElement("span",{className:"tool-badge"},"Grep"),bl.default.createElement("code",{className:"pattern-text"},"/",e.pattern,"/"),e.path&&bl.default.createElement("span",{className:"tool-meta"},"in ",e.path),e.glob&&bl.default.createElement("span",{className:"tool-meta"},"(",e.glob,")"),e.type&&bl.default.createElement("span",{className:"tool-meta"},"type: ",e.type),e.output_mode&&bl.default.createElement("span",{className:"tool-meta"},"[",e.output_mode,"]"))}var pi=E(x(),1);function Yv({input:e}){return pi.default.createElement("div",{className:"tool-use-detail"},pi.default.createElement("span",{className:"tool-badge"},"Glob"),pi.default.createElement("code",{className:"pattern-text"},e.pattern),e.path&&pi.default.createElement("span",{className:"tool-meta"},"in ",e.path))}var fu=E(x(),1);function Qv({input:e}){return fu.default.createElement("div",{className:"tool-use-detail"},fu.default.createElement("span",{className:"tool-badge"},"LS"),fu.default.createElement("span",{className:"file-path"},e.path||"."))}var vn=E(x(),1),du=120;function Zv({input:e}){let[t,n]=(0,vn.useState)(!1),{description:l,prompt:a,subagent_type:s,model_name:i,resume:o,run_in_background:u,name:f,team_name:r,mode:p,isolation:c}=e,d=typeof a=="string"&&a.length>0,v=d&&a.length>du?a.substring(0,du)+"...":a,y=d&&(t||a.length<=du),S=d&&a.length>du,g=[];return s&&g.push(`type: ${s}`),i&&g.push(`model: ${i}`),o&&g.push(`resume: ${o}`),u&&g.push("background"),r&&f&&g.push(`team: ${r}/${f}`),p&&g.push(`mode: ${p}`),c&&g.push(`isolation: ${c}`),vn.default.createElement("div",{className:"tool-use-detail"},vn.default.createElement("span",{className:"tool-badge"},"Agent"),l&&vn.default.createElement("span",{className:"tool-description"},l),g.length>0&&vn.default.createElement("span",{className:"tool-meta"},"(",g.join(", "),")"),y&&vn.default.createElement("div",{className:"tool-input agent-prompt-detail"},vn.default.createElement("code",null,t?a:v)),S&&vn.default.createElement("span",{className:"tool-meta detail-toggle",onClick:()=>n(!t),style:{cursor:"pointer"}},t?"collapse details":"details"))}var Wl=E(x(),1);function Xv({input:e}){return Wl.default.createElement("div",{className:"tool-use-detail"},Wl.default.createElement("span",{className:"tool-badge"},"LSP"),Wl.default.createElement("span",{className:"tool-meta"},e.operation),e.filePath&&Wl.default.createElement("span",{className:"file-path"},e.filePath),e.line!==void 0&&Wl.default.createElement("span",{className:"tool-meta"},":",e.line+1,e.character!==void 0?`:${e.character+1}`:""),e.query&&Wl.default.createElement("code",{className:"pattern-text"},e.query))}var sd=E(x(),1);function Vv({}){return sd.default.createElement("div",{className:"tool-use-detail"},sd.default.createElement("span",{className:"tool-badge"},"Cwd"))}var pu=E(x(),1);function Kv({input:e,displayName:t}){let l=Object.entries(e||{}).map(([a,s])=>`${a}: ${JSON.stringify(s)}`).join(", ");return pu.default.createElement("div",{className:"tool-use-detail tool-use-mcp"},pu.default.createElement("span",{className:"tool-badge"},t),l&&pu.default.createElement("span",{className:"tool-meta mcp-input-summary"},"(",l,")"))}var mu=E(x(),1);function $v({input:e}){let t=e.task_id.startsWith("a"),n=e.block!==!1?`Reading ${t?"Task":"shell"} output (blocking until complete${e.timeout?` timeout ${e.timeout}`:""})`:`Reading ${t?"Task":"shell"} output (non-blocking)`;return mu.default.createElement("div",{className:"tool-use-detail"},mu.default.createElement("span",{className:"tool-badge"},t?"TaskOutput":"ShellOutput"),mu.default.createElement("span",{className:"tool-meta"},n," (ID: ",e.task_id,")"))}var Ia=E(x(),1);function Jv({input:e}){return Ia.default.createElement("div",{className:"tool-use-detail"},Ia.default.createElement("span",{className:"tool-badge"},"PowerShell"),e.run_in_background&&Ia.default.createElement("span",{className:"tool-meta"},"(background)"),Ia.default.createElement("pre",{className:"command-block"},Ia.default.createElement("code",null,e.command)))}var gu=E(x(),1);function Pv({input:e}){let t=e.toolNames||[];return gu.default.createElement("div",{className:"tool-use-detail"},gu.default.createElement("span",{className:"tool-badge"},"ToolLoader"),gu.default.createElement("span",{className:"tool-meta"},"Loading tool",t.length>1?"s":"",": ",t.join(", ")))}var hu=E(x(),1);function Wv({input:e}){let t=e.toolNames||[];return hu.default.createElement("div",{className:"tool-use-detail"},hu.default.createElement("span",{className:"tool-badge"},"ToolUnLoader"),hu.default.createElement("span",{className:"tool-meta"},"Unloading tool",t.length>1?"s":"",": ",t.join(", ")))}var Fa=E(x(),1);function Rv({input:e}){return Fa.default.createElement("div",{className:"tool-use-detail"},Fa.default.createElement("span",{className:"tool-badge"},"NotebookEdit"),Fa.default.createElement("span",{className:"tool-meta"},e.notebook_path," (cell ",e.cell_number,", ",e.edit_mode||"replace",")"),Fa.default.createElement("pre",{className:"command-block"},Fa.default.createElement("code",null,e.new_source.slice(0,200),e.new_source.length>200?"...":"")))}var vu=E(x(),1);function Iv({input:e}){return vu.default.createElement("div",{className:"tool-use-detail"},vu.default.createElement("span",{className:"tool-badge"},"WebSearch"),vu.default.createElement("span",{className:"tool-meta"},e.query))}var mi=E(x(),1);function Fv({input:e}){return mi.default.createElement("div",{className:"tool-use-detail"},mi.default.createElement("span",{className:"tool-badge"},"WebFetch"),mi.default.createElement("span",{className:"tool-meta"},e.url),mi.default.createElement("div",{className:"tool-input"},e.prompt))}var yu=E(x(),1);function ey({input:e}){return yu.default.createElement("div",{className:"tool-use-detail"},yu.default.createElement("span",{className:"tool-badge"},"TaskStop"),yu.default.createElement("span",{className:"tool-meta"},"Stop task: ",e.task_id))}var bu=E(x(),1);function ty({input:e}){let t=e.todos?.find(n=>n.status==="in_progress");return bu.default.createElement("div",{className:"tool-use-detail"},bu.default.createElement("span",{className:"tool-badge"},"TodoWrite"),bu.default.createElement("span",{className:"tool-meta"},t?`${t.activeForm}\u2026`:"update todo"))}var Su=E(x(),1);function ny({input:e}){return Su.default.createElement("div",{className:"tool-use-detail"},Su.default.createElement("span",{className:"tool-badge"},"Think"),Su.default.createElement("div",{className:"tool-input"},e.thought))}var Nu=E(x(),1);function ly({input:e}){let t=e.questions?.length||0,n=e.questions?.reduce((l,a)=>l+(a.options?.length||0),0)||0;return Nu.default.createElement("div",{className:"tool-use-detail"},Nu.default.createElement("span",{className:"tool-badge"},"AskUserQuestion"),Nu.default.createElement("span",{className:"tool-meta"},"Asking ",t," question",t>1?"s":""," with ",n," total options"))}var J=E(x(),1);function ay({questions:e,onSubmit:t,onCancel:n}){let[l,a]=(0,J.useState)(0),[s,i]=(0,J.useState)({}),[o,u]=(0,J.useState)({}),[f,r]=(0,J.useState)({}),[p,c]=(0,J.useState)({}),[d,v]=(0,J.useState)(!1),y=e[l],S=l===e.length-1,g=(0,J.useCallback)(z=>(s[z]?.length??0)>0||(o[z]?.length??0)>0,[s,o]),m=(0,J.useCallback)(z=>{let q=y.options[z];i(C=>{let N=C[l]||[];if(y.multiSelect){let Y=N.includes(q.label)?N.filter(F=>F!==q.label):[...N,q.label];return{...C,[l]:Y}}else return{...C,[l]:[q.label]}}),r(C=>({...C,[l]:!1}))},[l,y]),h=(0,J.useCallback)(()=>{i(z=>{let q=z[l]||[];if(y.multiSelect){let N=q.includes("Custom answer")?q:[...q,"Custom answer"];return{...z,[l]:N}}else return{...z,[l]:["Custom answer"]}}),r(z=>({...z,[l]:!0})),c(z=>({...z,[l]:z[l]||o[l]||""}))},[l,y,o]),b=(0,J.useCallback)(()=>{let z=p[l]?.trim()||"";z&&(u(q=>({...q,[l]:z})),r(q=>({...q,[l]:!1})))},[l,p]),A=(0,J.useCallback)(()=>{r(z=>({...z,[l]:!1})),i(z=>{let C=(z[l]||[]).filter(N=>N!=="Custom answer");return{...z,[l]:C}}),c(z=>({...z,[l]:""})),u(z=>{let q={...z};return delete q[l],q})},[l]),D=(0,J.useCallback)(()=>{let z={};e.forEach((q,C)=>{let N=o[C],U=s[C]||[];N?z[q.question]=N:U.length>0?z[q.question]=U.filter(Y=>Y!=="Custom answer").join(", "):z[q.question]="No answer provided"}),v(!0),t(z)},[e,s,o,t]),k=(0,J.useCallback)(()=>{v(!0),n()},[n]),w=(0,J.useCallback)(()=>{l<e.length-1&&a(z=>z+1)},[l,e.length]),_=(0,J.useCallback)(()=>{l>0&&a(z=>z-1)},[l]),M=s[l]?.includes("Custom answer")||!1,j=M&&f[l],X=o[l]!==void 0;return J.default.createElement("div",{className:"ask-user-question-form"},J.default.createElement("div",{className:"ask-user-question-header"},e.map((z,q)=>J.default.createElement("span",{key:q,className:`ask-user-question-step ${g(q)?"answered":""} ${q===l?"active":""}`},z.header))),J.default.createElement("div",{className:"ask-user-question-title"},y.question),y.multiSelect&&J.default.createElement("div",{className:"ask-user-question-hint"},"You can select multiple options"),J.default.createElement("div",{className:"ask-user-question-options"},y.options.map((z,q)=>{let C=(s[l]||[]).includes(z.label),N=y.multiSelect?"checkbox":"radio";return J.default.createElement("label",{key:q,className:`ask-user-question-option ${C?"selected":""}`},J.default.createElement("input",{type:N,name:`question-${l}`,checked:C,onChange:()=>m(q),disabled:d}),J.default.createElement("span",{className:"ask-user-question-option-label"},z.label),J.default.createElement("span",{className:"ask-user-question-option-description"},z.description))}),J.default.createElement("label",{className:`ask-user-question-option ${M?"selected":""}`},J.default.createElement("input",{type:y.multiSelect?"checkbox":"radio",name:`question-${l}`,checked:M,onChange:h,disabled:d}),J.default.createElement("span",{className:"ask-user-question-option-label"},"Type something"),X&&!j&&J.default.createElement("span",{className:"ask-user-question-option-description"},"Custom: ",o[l])),j&&J.default.createElement("div",{className:"ask-user-question-custom-inline"},J.default.createElement("input",{type:"text",className:"ask-user-question-custom-input",value:p[l]||"",onChange:z=>c(q=>({...q,[l]:z.target.value})),placeholder:"Type your answer...",disabled:d,autoFocus:!0}),J.default.createElement("div",{className:"ask-user-question-custom-inline-actions"},J.default.createElement("button",{onClick:b,disabled:d||!p[l]?.trim()},"OK"),J.default.createElement("button",{onClick:A,disabled:d},"Cancel")))),J.default.createElement("div",{className:"ask-user-question-actions"},J.default.createElement("button",{onClick:_,disabled:l===0||d},"Previous"),S?J.default.createElement("button",{onClick:D,disabled:d},"Submit"):J.default.createElement("button",{onClick:w,disabled:d},"Next"),J.default.createElement("button",{onClick:k,disabled:d},"Cancel")))}var Tu=E(x(),1);function sy(e){return Tu.default.createElement("div",{className:"tool-use-detail"},Tu.default.createElement("span",{className:"tool-badge"},"EnterPlanMode"),Tu.default.createElement("span",{className:"tool-meta"},"Entering plan mode"))}var Yn=E(x(),1);function iy({onApprove:e}){let[t,n]=(0,Yn.useState)(!1);return Yn.default.createElement("div",{className:"plan-mode-inline-form"},Yn.default.createElement("div",{className:"plan-mode-inline-title"},"Enter plan mode?"),Yn.default.createElement("div",{className:"plan-mode-inline-description"},"Plan mode will ask you to approve a plan before making changes."),Yn.default.createElement("div",{className:"plan-mode-inline-actions"},Yn.default.createElement("button",{onClick:()=>{n(!0),e(!0)},disabled:t},"Yes, enter plan mode"),Yn.default.createElement("button",{onClick:()=>{n(!0),e(!1)},disabled:t},"No, stay in current mode")))}var Eu=E(x(),1);function oy({input:e}){return Eu.default.createElement("div",{className:"tool-use-detail"},Eu.default.createElement("span",{className:"tool-badge"},"ExitPlanMode"),Eu.default.createElement("span",{className:"tool-meta"},"Presenting plan to user for approval"))}var Ze=E(x(),1);function uy({plan:e,planFilePath:t,onApprove:n,onReject:l}){let[a,s]=(0,Ze.useState)(!1);return e?Ze.default.createElement("div",{className:"plan-mode-inline-form"},Ze.default.createElement("div",{className:"plan-mode-inline-title"},"Approve plan to exit plan mode"),Ze.default.createElement("div",{className:"plan-mode-inline-plan"},Ze.default.createElement("pre",null,e)),t&&Ze.default.createElement("div",{className:"plan-mode-inline-path"},"Plan file: ",t),Ze.default.createElement("div",{className:"plan-mode-inline-actions"},Ze.default.createElement("button",{onClick:()=>{s(!0),n(!1)},disabled:a},"Auto-accept edits"),Ze.default.createElement("button",{onClick:()=>{s(!0),n(!0)},disabled:a},"Manual approval"),Ze.default.createElement("button",{onClick:()=>{s(!0),l()},disabled:a},"Reject"))):Ze.default.createElement("div",{className:"plan-mode-inline-form"},Ze.default.createElement("div",{className:"plan-mode-inline-title"},"No plan found"),Ze.default.createElement("div",{className:"plan-mode-inline-description"},"There is no plan to approve. Do you want to exit plan mode?"),Ze.default.createElement("div",{className:"plan-mode-inline-actions"},Ze.default.createElement("button",{onClick:()=>{s(!0),n(!1)},disabled:a},"Yes, exit plan mode"),Ze.default.createElement("button",{onClick:()=>{s(!0),l()},disabled:a},"No, keep planning")))}var xu=E(x(),1);function ry({input:e}){return xu.default.createElement("div",{className:"tool-use-detail"},xu.default.createElement("span",{className:"tool-badge"},"EnterWorktree"),xu.default.createElement("span",{className:"tool-meta"},e.name?`Creating worktree: ${e.name}`:"Creating worktree"))}var _u=E(x(),1);function cy({input:e}){return _u.default.createElement("div",{className:"tool-use-detail"},_u.default.createElement("span",{className:"tool-badge"},"ExitWorktree"),_u.default.createElement("span",{className:"tool-meta"},e.action==="remove"?"Exiting and removing worktree":"Exiting worktree"))}var ku=E(x(),1);function fy({input:e}){return ku.default.createElement("div",{className:"tool-use-detail"},ku.default.createElement("span",{className:"tool-badge"},"SlashCommand"),ku.default.createElement("span",{className:"tool-meta"},"Executing ",e.command))}var Au=E(x(),1);function dy({input:e}){return Au.default.createElement("div",{className:"tool-use-detail"},Au.default.createElement("span",{className:"tool-badge"},"Skill"),Au.default.createElement("span",{className:"tool-meta"},e.skill))}var Mu=E(x(),1);function py({input:e}){let t=e.prompt?.length>60?e.prompt.slice(0,60)+"...":e.prompt;return Mu.default.createElement("div",{className:"tool-use-detail"},Mu.default.createElement("span",{className:"tool-badge"},"CronCreate"),Mu.default.createElement("span",{className:"tool-meta"},e.cron,": ",t))}var Cu=E(x(),1);function my({input:e}){return Cu.default.createElement("div",{className:"tool-use-detail"},Cu.default.createElement("span",{className:"tool-badge"},"CronDelete"),Cu.default.createElement("span",{className:"tool-meta"},e.id))}var Ou=E(x(),1);function gy(e){return Ou.default.createElement("div",{className:"tool-use-detail"},Ou.default.createElement("span",{className:"tool-badge"},"CronList"),Ou.default.createElement("span",{className:"tool-meta"},"List scheduled cron jobs"))}var wu=E(x(),1);function hy({input:e}){return wu.default.createElement("div",{className:"tool-use-detail"},wu.default.createElement("span",{className:"tool-badge"},"TeamCreate"),wu.default.createElement("span",{className:"tool-meta"},"Creating team: ",e.team_name))}var zu=E(x(),1);function vy(e){return zu.default.createElement("div",{className:"tool-use-detail"},zu.default.createElement("span",{className:"tool-badge"},"TeamDelete"),zu.default.createElement("span",{className:"tool-meta"},"Deleting current team"))}var Uu=E(x(),1);function yy({input:e}){let t="";switch(e.type){case"message":t=`Sending message to ${e.recipient}: ${e.summary||e.content?.slice(0,50)||""}`;break;case"broadcast":t=`Broadcasting to all teammates: ${e.summary||e.content?.slice(0,50)||""}`;break;case"shutdown_request":t=`Requesting shutdown for ${e.recipient}`;break;case"shutdown_response":t=`Responding to shutdown request: ${e.approve?"approved":"rejected"}`;break;case"plan_approval_response":t=`Responding to plan approval: ${e.approve?"approved":"rejected"}`;break;default:t=`Sending message (${e.type})`}return Uu.default.createElement("div",{className:"tool-use-detail"},Uu.default.createElement("span",{className:"tool-badge"},"SendMessage"),Uu.default.createElement("span",{className:"tool-meta"},t))}var Du=E(x(),1);function lT(e){let t=!1,n=!1;for(let l of Object.values(e))for(let a of l)a==="__tool_result__"?t=!0:n=!0;return{hasToolResult:t,hasInputFields:n}}function by({input:e}){let t=e.action==="archive"?"Archiving":"Unarchiving",n=e.archiveToolUseInputFields??{},l=Object.keys(n).length,{hasToolResult:a,hasInputFields:s}=lT(n),i="tool result(s)";return a&&s?i="tool result(s) and input field(s)":s&&(i="input field(s)"),Du.default.createElement("div",{className:"tool-use-detail"},Du.default.createElement("span",{className:"tool-badge"},"MessageArchiving"),Du.default.createElement("span",{className:"tool-meta"},t," ",i," for ",l," tool use(s)"))}var Ft=E(x(),1),Lu=120;function Sy({input:e}){let[t,n]=(0,Ft.useState)(!1),{action:l,key:a,summary:s,content:i}=e,o=l==="write"?"write":l==="read"?"read":l==="list"?"list":"delete",u=typeof i=="string"&&i.length>0,f=u&&i.length>Lu?i.substring(0,Lu)+"...":i,r=u&&(t||i.length<=Lu),p=u&&i.length>Lu;return Ft.default.createElement("div",{className:"tool-use-detail"},Ft.default.createElement("span",{className:"tool-badge"},"Memo"),Ft.default.createElement("span",{className:"tool-badge memo-action-badge"},o),a&&Ft.default.createElement("span",{className:"file-path"},a),s&&Ft.default.createElement("span",{className:"tool-meta"},s),r&&Ft.default.createElement("div",{className:"tool-input memo-content-detail"},Ft.default.createElement("code",null,t?i:f)),p&&Ft.default.createElement("span",{className:"tool-meta detail-toggle",onClick:()=>n(!t),style:{cursor:"pointer"}},t?"collapse details":"details"))}var Rl=E(x(),1);function Ny({input:e}){let t=e?.proxyToolAction??"call",n=e?.toolName??"",l=t==="load",a=t==="call"&&e?.arguments&&Object.keys(e.arguments).length>0,[s,i]=(0,Rl.useState)(!1);return Rl.default.createElement("div",{className:"tool-use-detail"},Rl.default.createElement("span",{className:"tool-badge"},l?"LoadTool":"ProxyTool"),Rl.default.createElement("span",{className:"tool-meta"},l?n:`${t} ${n}`),a&&Rl.default.createElement("div",{className:"tool-input",onClick:()=>i(!s),style:{cursor:"pointer"}},s?JSON.stringify(e.arguments,null,2):JSON.stringify(e.arguments)))}var yn=E(x(),1),pd=E(Yy(),1),Jy=E($y(),1);pd.default.registerLanguage("javascript",Jy.default);function Py({input:e}){let t=e?.code??"",n=t.split(`
72
72
  `),l=n.length>1,[a,s]=(0,yn.useState)(!1),i=a||!l?t:n[0],o=(0,yn.useMemo)(()=>{try{return pd.default.highlight(i,{language:"javascript"}).value}catch{return null}},[i]);return yn.default.createElement("div",{className:"tool-use-detail"},yn.default.createElement("span",{className:"tool-badge"},"Code"),yn.default.createElement("pre",{className:"command-block",onClick:()=>l&&s(!a),style:{cursor:l?"pointer":"default"}},o!==null?yn.default.createElement("code",{className:"hljs language-javascript",dangerouslySetInnerHTML:{__html:l&&!a?`${o} \u2026`:o}}):yn.default.createElement("code",null,l&&!a?`${n[0]} \u2026`:t)))}function Wy({message:e,pendingUserResponses:t,sendUserResponse:n}){let{toolName:l,toolInputRaw:a,toolInput:s,toolUseId:i,isRemote:o,isInProgress:u,isProxyCall:f}=e.metadata||{},[r,p]=(0,B.useState)(!1),c=o?`\u2601 ${l}`:l,d=f?B.default.createElement("span",{className:"tool-proxy-prefix",title:"via ProxyTool"},"<>"):null,v=u?B.default.createElement("span",{className:"tool-status-loading",title:"executing"}):null,y=()=>{switch(l){case"AskUserQuestion":{let g=i?t.get(i):void 0;if(g){let m=g.data;return B.default.createElement(ay,{questions:m?.questions||[],onSubmit:h=>n(i,{answers:h}),onCancel:()=>n(i,{cancelled:!0})})}return B.default.createElement(ly,{input:S})}case"Read":return B.default.createElement(Bv,{input:S});case"Edit":return B.default.createElement(Hv,{input:S});case"Write":return B.default.createElement(qv,{input:S});case"Bash":return B.default.createElement(jv,{input:S});case"Grep":return B.default.createElement(Gv,{input:S});case"Glob":return B.default.createElement(Yv,{input:S});case"LS":return B.default.createElement(Qv,{input:S});case"Agent":return B.default.createElement(Zv,{input:S});case"LSP":return B.default.createElement(Xv,{input:S});case"Cwd":return B.default.createElement(Vv,{input:S});case"TaskOutput":return B.default.createElement($v,{input:S});case"PowerShell":return B.default.createElement(Jv,{input:S});case"ToolLoader":return B.default.createElement(Pv,{input:S});case"ToolUnLoader":return B.default.createElement(Wv,{input:S});case"NotebookEdit":return B.default.createElement(Rv,{input:S});case"WebSearch":return B.default.createElement(Iv,{input:S});case"WebFetch":return B.default.createElement(Fv,{input:S});case"TaskStop":return B.default.createElement(ey,{input:S});case"TodoWrite":return B.default.createElement(ty,{input:S});case"Think":return B.default.createElement(ny,{input:S});case"EnterPlanMode":return(i?t.get(i):void 0)?B.default.createElement(iy,{onApprove:m=>n(i,{approved:m})}):B.default.createElement(sy,{input:S});case"ExitPlanMode":{let g=i?t.get(i):void 0;if(g){let m=g.data;return B.default.createElement(uy,{plan:m?.plan||null,planFilePath:m?.planFilePath,onApprove:h=>n(i,{approved:!0,manualApproval:h,cancelled:!1}),onReject:()=>n(i,{approved:!1,manualApproval:!1,cancelled:!0})})}return B.default.createElement(oy,{input:S})}case"EnterWorktreeTool":return B.default.createElement(ry,{input:S});case"ExitWorktreeTool":return B.default.createElement(cy,{input:S});case"SlashCommand":return B.default.createElement(fy,{input:S});case"Skill":return B.default.createElement(dy,{input:S});case"CronCreate":return B.default.createElement(py,{input:S});case"CronDelete":return B.default.createElement(my,{input:S});case"CronList":return B.default.createElement(gy,{input:S});case"TeamCreate":return B.default.createElement(hy,{input:S});case"TeamDelete":return B.default.createElement(vy,{input:S});case"SendMessage":return B.default.createElement(yy,{input:S});case"MessageArchiving":return B.default.createElement(by,{input:S});case"Memo":return B.default.createElement(Sy,{input:S});case"ProxyTool":return B.default.createElement(Ny,{input:S});case"codemode":return B.default.createElement(Py,{input:S});default:return B.default.createElement("div",{className:"tool-use-detail"},B.default.createElement("span",{className:"tool-badge"},l),s&&B.default.createElement("div",{className:"tool-input",onClick:()=>p(!r),style:{cursor:"pointer"}},r?s:s.length>100?s.substring(0,100)+"...":s))}};if(!a)return B.default.createElement("div",{className:"message-item message-tool-use"},B.default.createElement("div",null,v,B.default.createElement("span",{className:"tool-name"},c||e.content)),s&&B.default.createElement("div",{className:"tool-input",onClick:()=>p(!r),style:{cursor:"pointer"}},r?s:s.length>100?s.substring(0,100)+"...":s));let S=a;if(l&&l.startsWith("mcp_")){let g=B.default.createElement(Kv,{input:S,displayName:e.metadata?.toolDisplayName||l});return B.default.createElement("div",{className:`message-item message-tool-use${o?" remote":""}`},v,f?B.default.createElement("span",{className:"tool-proxy-row"},d,g):g)}return B.default.createElement("div",{className:`message-item message-tool-use${o?" remote":""}`},v,f?B.default.createElement("span",{className:"tool-proxy-row"},d,y()):y())}var Z=E(x(),1);var ht=E(x(),1);function Ry({data:e}){let[t,n]=(0,ht.useState)(!1);if(e.type==="image")return ht.default.createElement("div",{className:"tool-result-detail tool-result-read"},ht.default.createElement("div",{className:"result-header"},"Read image"));if(e.type==="notebook"){let o=e.file?.cells?.length||0;return ht.default.createElement("div",{className:"tool-result-detail tool-result-read"},ht.default.createElement("div",{className:"result-header"},"Read ",o," cells"))}let l=e.file;if(!l)return null;let a=l.content.split(`
73
73
  `),s=t?a:a.slice(0,20),i=a.length>20;return ht.default.createElement("div",{className:"tool-result-detail tool-result-read"},ht.default.createElement("div",{className:"result-header"},ht.default.createElement("span",{className:"file-path"},l.filePath),ht.default.createElement("span",{className:"tool-meta"},l.numLines," lines (from ",l.startLine,", total ",l.totalLines,")")),ht.default.createElement("pre",{className:"code-block"},ht.default.createElement("code",null,s.join(`
74
74
  `))),i&&!t&&ht.default.createElement("div",{className:"expand-toggle",onClick:()=>n(!0)},"... ",a.length-20," more lines (click to expand)"))}var tn=E(x(),1);var en=E(x(),1);function IT(e,t){let n=t,l=[],a=[...e];for(;a.length>0;){let{code:s,type:i}=a.shift(),o={code:s,type:i,lineNo:n};switch(i){case"context":n++,l.push(o);break;case"add":n++,l.push(o);break;case"remove":{l.push(o);let u=0;for(;a[0]?.type==="remove";){n++;let f=a.shift();l.push({code:f.code,type:f.type,lineNo:n}),u++}n-=u;break}}}return l}function Yu({structuredPatch:e,filePath:t}){let n=(0,en.useMemo)(()=>{let s=[];for(let i=0;i<e.length;i++){let o=e[i];i>0&&s.push({type:"separator"});let u=o.lines.map(r=>r.startsWith("+")?{type:"add",code:" "+r.slice(1)}:r.startsWith("-")?{type:"remove",code:" "+r.slice(1)}:{type:"context",code:r}),f=IT(u,o.oldStart);s.push(...f)}return s},[e]);if(n.length===0)return en.default.createElement("div",{className:"diff-empty"},"No changes");let l=Math.max(...n.filter(s=>s.type!=="separator").map(s=>s.lineNo)),a=Math.max(l.toString().length,1);return en.default.createElement("div",{className:"diff-view"},n.map((s,i)=>{if(s.type==="separator")return en.default.createElement("div",{key:i,className:"diff-line diff-separator"},en.default.createElement("span",{className:"diff-line-no",style:{width:`${a+1}ch`}}),en.default.createElement("span",{className:"diff-code"},"..."));let o=s;return en.default.createElement("div",{key:i,className:`diff-line diff-${o.type}`},en.default.createElement("span",{className:"diff-line-no",style:{width:`${a+1}ch`}},o.lineNo.toString().padStart(a)),en.default.createElement("span",{className:"diff-code"},o.code))}))}function FT(e){let t=e.split(/[/\\]/);return t[t.length-1]||e}function Iy({data:e}){let{numAdditions:t,numRemovals:n}=(0,tn.useMemo)(()=>{if(!e.structuredPatch||e.structuredPatch.length===0)return{numAdditions:0,numRemovals:0};let i=0,o=0;for(let u of e.structuredPatch)for(let f of u.lines||[])f.startsWith("+")?i++:f.startsWith("-")&&o++;return{numAdditions:i,numRemovals:o}},[e.structuredPatch]),l=FT(e.filePath),a=[];t>0&&a.push(`${t} ${t>1?"additions":"addition"}`),n>0&&a.push(`${n} ${n>1?"removals":"removal"}`);let s=a.length>0?` with ${a.join(" and ")}`:"";return tn.default.createElement("div",{className:"tool-result-detail tool-result-edit"},tn.default.createElement("div",{className:"result-header"},tn.default.createElement("span",{className:"result-summary"},"Updated ",tn.default.createElement("span",{className:"file-path"},l),s)),e.structuredPatch&&e.structuredPatch.length>0?tn.default.createElement(Yu,{structuredPatch:e.structuredPatch,filePath:e.filePath}):tn.default.createElement("div",{className:"diff-preview-inline"},tn.default.createElement("div",{className:"diff-line diff-remove"},"- ",e.oldString),tn.default.createElement("div",{className:"diff-line diff-add"},"+ ",e.newString)))}var tt=E(x(),1);function Fy({data:e}){let[t,n]=(0,tt.useState)(!1);if(e.type==="create"){let l=e.content.split(`
@@ -91,7 +91,7 @@ Please report this to https://github.com/markedjs/marked.`,e){let l="<p>An error
91
91
  `):[],i=t?s:s.slice(0,30),o=s.length>30;return we.default.createElement("div",{className:"tool-result-detail tool-result-powershell"},we.default.createElement("div",{className:"result-header"},e.interrupted?we.default.createElement("span",{className:"result-status status-warn"},"Interrupted"):we.default.createElement("span",{className:"result-status status-success"},"exit 0"),e.stdoutLines>0&&we.default.createElement("span",{className:"tool-meta"},e.stdoutLines," lines")),l&&we.default.createElement(we.default.Fragment,null,we.default.createElement("pre",{className:"code-block stdout-block"},we.default.createElement("code",null,i.join(`
92
92
  `))),o&&!t&&we.default.createElement("div",{className:"expand-toggle",onClick:()=>n(!0)},"... ",s.length-30," more lines (click to expand)")),a&&we.default.createElement("pre",{className:"code-block stderr-block"},we.default.createElement("code",null,e.stderr)),e.interrupted&&we.default.createElement("div",{className:"result-note"},"Command was aborted before completion"))}var Qu=E(x(),1);function cb({data:e}){let t=e.toolNames||[];return Qu.default.createElement("div",{className:"tool-result-detail tool-result-toolloader"},Qu.default.createElement("div",{className:"result-header"},Qu.default.createElement("span",{className:"result-status status-success"},e.message||`Tools loaded: ${t.join(", ")}`)))}var Zu=E(x(),1);function fb({data:e}){let n=e.message?.startsWith("<error>")?"status-error":"status-success";return Zu.default.createElement("div",{className:"tool-result-detail tool-result-toolunloader"},Zu.default.createElement("div",{className:"result-header"},Zu.default.createElement("span",{className:`result-status ${n}`},e.message||"Tools unloaded")))}var Zn=E(x(),1);function db({data:e}){return e.error?Zn.default.createElement("div",{className:"tool-result-detail tool-result-notebookedit"},Zn.default.createElement("div",{className:"result-header"},Zn.default.createElement("span",{className:"result-status status-error"},e.error))):Zn.default.createElement("div",{className:"tool-result-detail tool-result-notebookedit"},Zn.default.createElement("div",{className:"result-header"},Zn.default.createElement("span",{className:"result-status status-success"},e.edit_mode==="delete"?`Deleted cell ${e.cell_number}`:`${e.edit_mode==="insert"?"Inserted":"Updated"} cell ${e.cell_number}`)),Zn.default.createElement("pre",{className:"code-block"},Zn.default.createElement("code",null,e.new_source)))}var Nl=E(x(),1);function pb({data:e}){return Nl.default.createElement("div",{className:"tool-result-detail tool-result-websearch"},Nl.default.createElement("div",{className:"result-header"},Nl.default.createElement("span",{className:"result-status status-success"},"Found ",e.results.length," ",e.results.length===1?"result":"results")),e.summaryText&&Nl.default.createElement("div",{className:"result-summary markdown-body"},e.summaryText),e.results.length>0&&Nl.default.createElement("ul",{className:"result-list"},e.results.map((t,n)=>Nl.default.createElement("li",{key:n},Nl.default.createElement("a",{href:t.link,target:"_blank",rel:"noreferrer"},t.title)))))}var Xn=E(x(),1);function mb({data:e}){let[t,n]=(0,Xn.useState)(!1),l=e.aiAnalysis||"No content could be analyzed",a=l.length>400,s=t||!a?l:l.slice(0,400)+"...";return Xn.default.createElement("div",{className:"tool-result-detail tool-result-webfetch"},Xn.default.createElement("div",{className:"result-header"},Xn.default.createElement("span",{className:"result-status status-success"},"Content ",e.fromCache?"from cache":"fetched"," and analyzed"),Xn.default.createElement("span",{className:"tool-meta"},e.url)),Xn.default.createElement("div",{className:"result-content markdown-body",style:{whiteSpace:"pre-wrap"}},s),a&&!t&&Xn.default.createElement("div",{className:"expand-toggle",onClick:()=>n(!0)},"click to expand"))}var vi=E(x(),1);function gb({data:e}){return vi.default.createElement("div",{className:"tool-result-detail tool-result-taskstop"},vi.default.createElement("div",{className:"result-header"},vi.default.createElement("span",{className:`result-status ${e.stopped?"status-success":"status-error"}`},e.message),vi.default.createElement("span",{className:"tool-meta"},e.task_id," (",e.task_type,")")))}var Tl=E(x(),1);function tE(e){return e==="completed"?"\u2612":"\u2610"}function hb({data:e}){let t=e.todos||[];return t.length===0?Tl.default.createElement("div",{className:"tool-result-detail tool-result-todowrite"},Tl.default.createElement("div",{className:"result-header"},Tl.default.createElement("span",{className:"result-status status-info"},"No todos currently"))):Tl.default.createElement("div",{className:"tool-result-detail tool-result-todowrite"},t.map((n,l)=>{let a=n.status==="completed",s=n.status==="in_progress";return Tl.default.createElement("div",{key:l,className:"todo-item"},Tl.default.createElement("span",{className:`todo-checkbox ${a?"completed":""}`},tE(n.status)),Tl.default.createElement("span",{className:`todo-content ${a?"completed":""} ${s?"in-progress":""}`},n.content))}))}var yi=E(x(),1);function vb({data:e}){return yi.default.createElement("div",{className:"tool-result-detail tool-result-think"},yi.default.createElement("div",{className:"result-header"},yi.default.createElement("span",{className:"result-status status-success"},"Thought logged")),yi.default.createElement("div",{className:"result-content"},e.thought))}var lt=E(x(),1);function yb({data:e}){if(e.error)return lt.default.createElement("div",{className:"tool-result-detail tool-result-askuserquestion"},lt.default.createElement("div",{className:"result-header"},lt.default.createElement("span",{className:"result-status status-error"},e.error)));if(e.cancelled)return lt.default.createElement("div",{className:"tool-result-detail tool-result-askuserquestion"},lt.default.createElement("div",{className:"result-header"},lt.default.createElement("span",{className:"result-status status-warn"},"Question asking was cancelled")));let t=Object.entries(e.answers||{});return t.length===0?lt.default.createElement("div",{className:"tool-result-detail tool-result-askuserquestion"},lt.default.createElement("div",{className:"result-header"},lt.default.createElement("span",{className:"result-status status-info"},"No answers provided by user"))):lt.default.createElement("div",{className:"tool-result-detail tool-result-askuserquestion"},lt.default.createElement("div",{className:"result-header"},lt.default.createElement("span",{className:"result-status status-success"},"User answered questions")),lt.default.createElement("ul",{className:"result-list"},t.map(([n,l],a)=>lt.default.createElement("li",{key:a},lt.default.createElement("strong",null,n)," \u2192 ",l))))}var ea=E(x(),1);function bb({data:e}){return e.error?ea.default.createElement("div",{className:"tool-result-detail tool-result-enterplanmode"},ea.default.createElement("div",{className:"result-header"},ea.default.createElement("span",{className:"result-status status-error"},e.error))):ea.default.createElement("div",{className:"tool-result-detail tool-result-enterplanmode"},ea.default.createElement("div",{className:"result-header"},ea.default.createElement("span",{className:`result-status ${e.approved?"status-success":"status-warn"}`},e.approved?"Entered plan mode":"User declined to enter plan mode")))}var Kt=E(x(),1);function Sb({data:e}){return e.error?Kt.default.createElement("div",{className:"tool-result-detail tool-result-exitplanmode"},Kt.default.createElement("div",{className:"result-header"},Kt.default.createElement("span",{className:"result-status status-error"},e.error))):e.cancelled||!e.approved?Kt.default.createElement("div",{className:"tool-result-detail tool-result-exitplanmode"},Kt.default.createElement("div",{className:"result-header"},Kt.default.createElement("span",{className:"result-status status-warn"},"Keep planning"))):Kt.default.createElement("div",{className:"tool-result-detail tool-result-exitplanmode"},Kt.default.createElement("div",{className:"result-header"},Kt.default.createElement("span",{className:"result-status status-success"},"User approved ",e.manualApproval?"manual approval":"auto-accept"," plan")),e.plan&&Kt.default.createElement("div",{className:"result-content markdown-body"},e.plan),e.planFilePath&&Kt.default.createElement("div",{className:"tool-meta"},"Plan saved to: ",e.planFilePath))}var bi=E(x(),1);function Nb({data:e}){let t=e.message?.startsWith("Failed")||!e.worktreePath;return bi.default.createElement("div",{className:"tool-result-detail tool-result-enterworktree"},bi.default.createElement("div",{className:"result-header"},bi.default.createElement("span",{className:`result-status ${t?"status-error":"status-success"}`},t?"Failed":"Created worktree")),bi.default.createElement("div",{className:"result-content"},e.message))}var ns=E(x(),1);function Tb({data:e}){let t=e.message?.startsWith("Error")||e.message?.startsWith("Cancelled");return ns.default.createElement("div",{className:"tool-result-detail tool-result-exitworktree"},ns.default.createElement("div",{className:"result-header"},ns.default.createElement("span",{className:`result-status ${t?"status-error":"status-success"}`},t?"Failed":"Exited worktree"),ns.default.createElement("span",{className:"tool-meta"},e.action)),ns.default.createElement("div",{className:"result-content"},e.message))}var Si=E(x(),1);function Eb({data:e}){let t=e.message?.startsWith("<error>");return Si.default.createElement("div",{className:"tool-result-detail tool-result-slashcommand"},Si.default.createElement("div",{className:"result-header"},Si.default.createElement("span",{className:`result-status ${t?"status-error":"status-info"}`},'The "',e.commandWithArgs?.split(" ")[0],'" slash command is running')),t&&Si.default.createElement("div",{className:"result-content"},e.message))}var ta=E(x(),1);function xb({data:e}){let t=e.message?.startsWith("<error>");return ta.default.createElement("div",{className:"tool-result-detail tool-result-skill"},ta.default.createElement("div",{className:"result-header"},ta.default.createElement("span",{className:`result-status ${t?"status-error":"status-success"}`},t?"Skill error":e.fork?"Skill completed":"Successfully loaded skill"),ta.default.createElement("span",{className:"tool-meta"},e.skillName)),!t&&e.baseDirectory&&ta.default.createElement("div",{className:"tool-meta"},"Base directory: ",e.baseDirectory),t&&ta.default.createElement("div",{className:"result-content"},e.message))}var Xu=E(x(),1);function _b({data:e}){let t=e.message?.startsWith("Error");return Xu.default.createElement("div",{className:"tool-result-detail tool-result-croncreate"},Xu.default.createElement("div",{className:"result-header"},Xu.default.createElement("span",{className:`result-status ${t?"status-error":"status-success"}`},t?e.message:`Scheduled ${e.jobId} ${e.description}`)))}var Vu=E(x(),1);function kb({data:e}){return Vu.default.createElement("div",{className:"tool-result-detail tool-result-crondelete"},Vu.default.createElement("div",{className:"result-header"},Vu.default.createElement("span",{className:`result-status ${e.success?"status-success":"status-warn"}`},e.message)))}var ln=E(x(),1);function Ab({data:e}){return!e.jobs||e.jobs.length===0?ln.default.createElement("div",{className:"tool-result-detail tool-result-cronlist"},ln.default.createElement("div",{className:"result-header"},ln.default.createElement("span",{className:"result-status status-info"},"No cron jobs scheduled"))):ln.default.createElement("div",{className:"tool-result-detail tool-result-cronlist"},ln.default.createElement("div",{className:"result-header"},ln.default.createElement("span",{className:"result-status status-success"},"Scheduled cron jobs")),ln.default.createElement("ul",{className:"result-list"},e.jobs.map(t=>{let n=t.prompt.length>50?t.prompt.slice(0,50)+"...":t.prompt;return ln.default.createElement("li",{key:t.id},ln.default.createElement("code",null,t.id),": ",n," ",ln.default.createElement("span",{className:"tool-meta"},"(",t.recurring?"recurring":"one-shot"," \xB7 ",t.description,")"))})))}var El=E(x(),1);function Mb({data:e}){return El.default.createElement("div",{className:"tool-result-detail tool-result-teamcreate"},El.default.createElement("div",{className:"result-header"},El.default.createElement("span",{className:"result-status status-success"},"Created team: ",e.name)),El.default.createElement("div",{className:"result-content"},e.description&&El.default.createElement("div",null,"Description: ",e.description),El.default.createElement("div",null,"Lead: ",e.leadAgentId),El.default.createElement("div",null,"Members: ",e.members?.length||0)))}var Ni=E(x(),1);function Cb({data:e}){return Ni.default.createElement("div",{className:"tool-result-detail tool-result-teamdelete"},Ni.default.createElement("div",{className:"result-header"},Ni.default.createElement("span",{className:`result-status ${e.success?"status-success":"status-error"}`},e.success?`Deleted team: ${e.teamName}`:`Failed to delete team: ${e.teamName}`)),!e.success&&Ni.default.createElement("div",{className:"result-content"},e.message))}var Ti=E(x(),1);function Ob({data:e}){return Ti.default.createElement("div",{className:"tool-result-detail tool-result-sendmessage"},Ti.default.createElement("div",{className:"result-header"},Ti.default.createElement("span",{className:`result-status ${e.success?"status-success":"status-error"}`},e.success?e.message:"Failed to send message")),!e.success&&Ti.default.createElement("div",{className:"result-content"},e.message))}var xl=E(x(),1);function nE(e){let t=!1,n=!1;for(let l of Object.values(e))for(let a of l)a==="__tool_result__"?t=!0:n=!0;return{hasToolResult:t,hasInputFields:n}}function lE(e){return e==="__tool_result__"?"tool result":`input field "${e}"`}function wb({data:e}){let t=e.action==="archive"?"Archived":"Unarchived",n=e.action==="archive"?e.archivedToolUseInputFields??{}:e.unarchivedToolUseInputFields??{},l=Object.keys(n).length,{hasToolResult:a,hasInputFields:s}=nE(n),i="tool result(s)";return a&&s?i="tool result(s) and input field(s)":s&&(i="input field(s)"),xl.default.createElement("div",{className:"tool-result-detail tool-result-messagearchiving"},xl.default.createElement("div",{className:"result-header"},xl.default.createElement("span",{className:"result-status status-success"},t," ",i," for ",l," tool use(s)")),Object.entries(n).map(([o,u])=>xl.default.createElement("div",{key:o,className:"result-fields"},xl.default.createElement("span",{className:"result-tool-use-id"},o,":"),u.map((f,r)=>xl.default.createElement("span",{key:`${f}-${r}`,className:"result-field"},r>0?", ":"",lE(f))))),e.action==="archive"&&e.summary&&xl.default.createElement("div",{className:"result-summary"},e.summary))}var te=E(x(),1);function zb({data:e}){return te.default.createElement("div",{className:"tool-result-detail tool-result-memo"},(()=>{switch(e.action){case"write":{let{result:n}=e;return te.default.createElement(te.default.Fragment,null,te.default.createElement("div",{className:"result-header"},te.default.createElement("span",{className:`result-status ${n.success?"status-success":"status-error"}`},"\u23BF Memo ",n.success?"saved":"failed",": ",n.key),n.success&&n.savedChars!==void 0&&te.default.createElement("span",{className:"result-meta"},"(",n.savedChars," chars)")),!n.success&&n.error&&te.default.createElement("div",{className:"memo-error"},n.error))}case"read":{let{note:n}=e;return n?te.default.createElement(te.default.Fragment,null,te.default.createElement("div",{className:"result-header"},te.default.createElement("span",{className:"result-status status-success"},"\u23BF Memo read: ",n.key),te.default.createElement("span",{className:"result-meta"},n.summary)),te.default.createElement("div",{className:"memo-content"},n.content)):te.default.createElement("div",{className:"result-header"},te.default.createElement("span",{className:"result-status status-warn"},"\u23BF Memo not found"))}case"list":{let{notes:n}=e;return te.default.createElement(te.default.Fragment,null,te.default.createElement("div",{className:"result-header"},te.default.createElement("span",{className:"result-status status-info"},"\u23BF Memo list (",n.length," memos)")),n.length>0&&te.default.createElement("table",{className:"memo-table"},te.default.createElement("thead",null,te.default.createElement("tr",null,te.default.createElement("th",null,"#"),te.default.createElement("th",null,"Key"),te.default.createElement("th",null,"Summary"),te.default.createElement("th",null,"Updated"))),te.default.createElement("tbody",null,n.map((l,a)=>te.default.createElement("tr",{key:l.key},te.default.createElement("td",null,a+1),te.default.createElement("td",{className:"memo-key"},l.key),te.default.createElement("td",null,l.summary),te.default.createElement("td",{className:"memo-date"},l.updatedAt))))))}case"delete":{let{success:n,key:l}=e;return te.default.createElement("div",{className:"result-header"},te.default.createElement("span",{className:`result-status ${n?"status-success":"status-warn"}`},"\u23BF Memo ",n?"deleted":"not found",": ",l))}default:return null}})())}var Ku=E(x(),1);function Ub({data:e}){let t=e?.action==="load"&&e?.name?`${e.name} tool is loaded`:e?.message??"";return Ku.default.createElement("div",{className:"tool-result-detail tool-result-proxy"},Ku.default.createElement("div",{className:"result-header"},Ku.default.createElement("span",{className:"result-status status-success"},t)))}var wt=E(x(),1);function Db({data:e}){let[t,n]=(0,wt.useState)(!1);if(e?.error)return wt.default.createElement("div",{className:"tool-result-detail tool-result-codemode"},wt.default.createElement("div",{className:"result-header"},wt.default.createElement("span",{className:"result-status status-error"},"Error: ",e.error)));let a=((typeof e?.result=="string"?e.result:JSON.stringify(e?.result,null,2))??"").split(`
93
93
  `),s=a.length>30,i=t?a:a.slice(0,30);return wt.default.createElement("div",{className:"tool-result-detail tool-result-codemode"},wt.default.createElement("div",{className:"result-header"},wt.default.createElement("span",{className:"result-status status-success"},"Result"),a.length>1&&wt.default.createElement("span",{className:"tool-meta"},a.length," lines")),wt.default.createElement("pre",{className:"code-block"},wt.default.createElement("code",null,i.join(`
94
- `))),s&&!t&&wt.default.createElement("div",{className:"expand-toggle",onClick:()=>n(!0)},"... ",a.length-30," more lines (click to expand)"))}function Lb({message:e}){let{toolName:t,toolData:n,isError:l,isRemote:a}=e.metadata||{},[s,i]=(0,Z.useState)(!1),o=e.content,u=o.length>200,f=s||!u?o:o.substring(0,200)+"... (click to expand)",r=(0,Z.useMemo)(()=>{try{return le.parse(f)}catch{return f}},[f]);if(l||!n)return Z.default.createElement("div",{className:`message-item message-tool-result ${l?"error":""}`},Z.default.createElement("div",{className:"result-content markdown-body custom-scrollbar",onClick:()=>u&&i(!s),style:{cursor:u?"pointer":"default"},dangerouslySetInnerHTML:{__html:r}}));let p=n;return p?.type==="mcp"?Z.default.createElement("div",{className:`message-item message-tool-result${a?" remote":""}`},Z.default.createElement(ob,{data:p})):Z.default.createElement("div",{className:`message-item message-tool-result${a?" remote":""}`},(()=>{switch(t){case"Read":return Z.default.createElement(Ry,{data:p});case"Edit":return Z.default.createElement(Iy,{data:p});case"Write":return Z.default.createElement(Fy,{data:p});case"Bash":return Z.default.createElement(eb,{data:p});case"Grep":return Z.default.createElement(tb,{data:p});case"Glob":return Z.default.createElement(nb,{data:p});case"LS":return Z.default.createElement(lb,{data:p});case"Agent":return Z.default.createElement(ab,{data:p});case"LSP":return Z.default.createElement(sb,{data:p});case"Cwd":return Z.default.createElement(ib,{data:p});case"TaskOutput":return Z.default.createElement(ub,{data:p});case"PowerShell":return Z.default.createElement(rb,{data:p});case"ToolLoader":return Z.default.createElement(cb,{data:p});case"ToolUnLoader":return Z.default.createElement(fb,{data:p});case"NotebookEdit":return Z.default.createElement(db,{data:p});case"WebSearch":return Z.default.createElement(pb,{data:p});case"WebFetch":return Z.default.createElement(mb,{data:p});case"TaskStop":return Z.default.createElement(gb,{data:p});case"TodoWrite":return Z.default.createElement(hb,{data:p});case"Think":return Z.default.createElement(vb,{data:p});case"AskUserQuestion":return Z.default.createElement(yb,{data:p});case"EnterPlanMode":return Z.default.createElement(bb,{data:p});case"ExitPlanMode":return Z.default.createElement(Sb,{data:p});case"EnterWorktreeTool":return Z.default.createElement(Nb,{data:p});case"ExitWorktreeTool":return Z.default.createElement(Tb,{data:p});case"SlashCommand":return Z.default.createElement(Eb,{data:p});case"Skill":return Z.default.createElement(xb,{data:p});case"CronCreate":return Z.default.createElement(_b,{data:p});case"CronDelete":return Z.default.createElement(kb,{data:p});case"CronList":return Z.default.createElement(Ab,{data:p});case"TeamCreate":return Z.default.createElement(Mb,{data:p});case"TeamDelete":return Z.default.createElement(Cb,{data:p});case"SendMessage":return Z.default.createElement(Ob,{data:p});case"MessageArchiving":return Z.default.createElement(wb,{data:p});case"Memo":return Z.default.createElement(zb,{data:p});case"ProxyTool":return Z.default.createElement(Ub,{data:p});case"codemode":return Z.default.createElement(Db,{data:p});default:return Z.default.createElement("pre",{className:"tool-result-text"},e.content)}})())}le.setOptions({breaks:!0,gfm:!0});function Bb({message:e,pendingUserResponses:t,sendUserResponse:n}){switch(e.messageType){case"user_text":return Me.default.createElement(aE,{content:e.content});case"assistant_text":return Me.default.createElement(sE,{content:e.content,metadata:e.metadata});case"assistant_thinking":return Me.default.createElement(iE,{content:e.content});case"tool_use":return Me.default.createElement(Wy,{message:e,pendingUserResponses:t,sendUserResponse:n});case"tool_result":return Me.default.createElement(Lb,{message:e});case"progress":return Me.default.createElement(oE,{content:e.content});case"error":return Me.default.createElement(uE,{content:e.content});default:return null}}function $u(e){return(0,Me.useMemo)(()=>{try{return le.parse(e)}catch{return e}},[e])}function aE({content:e}){let t=$u(e);return Me.default.createElement("div",{className:"message-item message-user"},Me.default.createElement("div",{className:"message-content markdown-body",dangerouslySetInnerHTML:{__html:t}}))}function sE({content:e,metadata:t}){let n=$u(e);return Me.default.createElement("div",{className:"message-item message-assistant"},Me.default.createElement("div",{className:"message-content markdown-body",dangerouslySetInnerHTML:{__html:n}}))}function iE({content:e}){let[t,n]=(0,Me.useState)(!1),l=$u(e);return Me.default.createElement("div",{className:"message-item message-thinking"},Me.default.createElement("details",{open:t,onToggle:a=>n(a.target.open)},Me.default.createElement("summary",null,"Thinking..."),t&&Me.default.createElement("div",{className:"message-content markdown-body",style:{marginTop:4},dangerouslySetInnerHTML:{__html:l}})))}function oE({content:e}){let t=$u(e);return Me.default.createElement("div",{className:"message-item message-progress"},Me.default.createElement("div",{className:"markdown-body",dangerouslySetInnerHTML:{__html:t}}))}function uE({content:e}){return Me.default.createElement("div",{className:"message-item message-error"},e)}var rE=new Set(["TaskCreate","TaskGet","TaskList","TaskUpdate","TodoWrite","TeamCreate"]),cE=new Set(["ToolLoader","ToolUnLoader","MessageArchiving"]);function fE(e,t){return!!(rE.has(e)||t!=="DAHAWA_DEBUG"&&cE.has(e))}var Hb="*-* ",qb="<system-notification>";function Qb(e,t={}){let{userType:n}=t,l=[],a=0,s=new Map;for(let i of e)if(i.type==="user"&&i.message?.content){let o=i.message.content;if(Array.isArray(o))for(let u of o)u.type==="tool_result"&&u.tool_use_id&&s.set(u.tool_use_id,u)}for(let i of e)if(!(!i||!i.type))switch(i.type){case"user":dE(i,s,l,()=>`msg_${a++}`);break;case"assistant":pE(i,s,e,l,()=>`msg_${a++}`,n);break;case"progress":mE(i,l,()=>`msg_${a++}`);break}return l}function dE(e,t,n,l){let a=e.message?.content;if(a){if(typeof a=="string"){if(!a.trim())return;let s=a.trim();if(s.startsWith(Hb)||s.startsWith(qb)||/<system-reminder>.*?<\/system-reminder>/s.test(s))return;let i=jb(s);n.push({id:l(),messageType:"user_text",content:i??s});return}if(Array.isArray(a)){for(let s of a)if(s.type==="text"){if(!s.text||s.text.trim()==="")continue;let i=s.text.trim();if(i.startsWith(Hb)||i.startsWith(qb)||/<system-reminder>.*?<\/system-reminder>/s.test(i))continue;let o=jb(s.text);n.push({id:l(),messageType:"user_text",content:o??s.text})}}}}function jb(e){let t=Gb(e,"command-message");if(!t)return null;let n=Gb(e,"command-args");return`> /${t}${n?" "+n:""}`}function Gb(e,t){if(!e.trim()||!t.trim())return null;let n=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(`<${n}(?:\\s+[^>]*)?>([\\s\\S]*?)<\\/${n}>`,"i").exec(e)?.[1]??null}function pE(e,t,n,l,a,s){let i=e.message?.content;if(!(!i||!Array.isArray(i)))for(let o of i)switch(o.type){case"text":if(o.text&&o.text.trim()){if(o.text.trim()==="No response requested.")break;l.push({id:a(),messageType:"assistant_text",content:o.text,metadata:{costUSD:e.costUSD,durationMs:e.durationMs}})}break;case"thinking":o.thinking&&o.thinking.trim()&&l.push({id:a(),messageType:"assistant_thinking",content:o.thinking,metadata:{isCollapsed:!0}});break;case"tool_use":{let u=o.id,f=o.name||"unknown_tool",r=f,p=o.input,c=!1;if(f==="ProxyTool"){let m=o.input;m&&(m.proxyToolAction??"call")==="call"&&m.toolName&&(r=m.toolName,p=m.input??{},c=!0)}if(fE(r,s))break;let{name:d,isRemote:v,displayName:y}=gE(r),S=y??d,g=u?t.has(u):!1;if(l.push({id:a(),messageType:"tool_use",content:d,metadata:{toolName:d,toolDisplayName:S,toolInput:bE(p),toolUseId:u,toolInputRaw:p,isRemote:v,isInProgress:!g,isProxyCall:c}}),u&&t.has(u)){let m=t.get(u),h=yE(m),b=vE(n,u),D=r.startsWith("mcp_")&&!r.startsWith("mcp_hands_")?hE(m,S):b;l.push({id:a(),messageType:"tool_result",content:h,metadata:{toolName:d,toolDisplayName:S,toolUseId:u,isError:m.is_error||!1,toolData:D,isRemote:v,isProxyCall:c}})}break}}}function mE(e,t,n){let l=e.content?.message?.content;if(!(!l||!Array.isArray(l)))for(let a of l)a.type==="text"&&a.text&&a.text.trim()&&t.push({id:n(),messageType:"progress",content:a.text})}var Yb={mcp_hands_Read:"Read",mcp_hands_Edit:"Edit",mcp_hands_Write:"Write",mcp_hands_Bash:"Bash",mcp_hands_Grep:"Grep",mcp_hands_Glob:"Glob",mcp_hands_LSP:"LSP",mcp_hands_NotebookEdit:"NotebookEdit",mcp_hands_TaskOutput:"TaskOutput",mcp_hands_TaskStop:"TaskStop",mcp_hands_PowerShell:"PowerShell"};function gE(e){if(Yb[e]){let t=Yb[e];return{name:t,isRemote:!0,displayName:`\u2601 ${t}`}}if(e.startsWith("mcp_hands_")){let t=e.slice(10);return{name:t,isRemote:!0,displayName:`\u2601 ${t}`}}if(e.startsWith("mcp_")){let t=e.slice(4),n=t.indexOf("_");if(n!==-1){let l=t.slice(0,n),a=t.slice(n+1);return{name:e,isRemote:!1,displayName:`${l}:${a}`}}}return{name:e,isRemote:!1}}function hE(e,t){return e?{type:"mcp",displayName:t,content:e.content??"",isError:e.is_error||!1}:{type:"mcp",displayName:t,content:"",isError:!1}}function vE(e,t){for(let n of e){if(!n.toolUseResult?.data)continue;let l=n.message?.content;if(!Array.isArray(l))continue;if(l.some(s=>s.type==="tool_result"&&s.tool_use_id===t))return n.toolUseResult.data}}function yE(e){if(!e)return"";let t=e.content;return t?typeof t=="string"?t:Array.isArray(t)?t.filter(n=>n.type==="text").map(n=>n.text||"").join(`
94
+ `))),s&&!t&&wt.default.createElement("div",{className:"expand-toggle",onClick:()=>n(!0)},"... ",a.length-30," more lines (click to expand)"))}function Lb({message:e}){let{toolName:t,toolData:n,isError:l,isRemote:a}=e.metadata||{},[s,i]=(0,Z.useState)(!1),o=e.content,u=o.length>200,f=s||!u?o:o.substring(0,200)+"... (click to expand)",r=(0,Z.useMemo)(()=>{try{return le.parse(f)}catch{return f}},[f]);if(l||!n)return Z.default.createElement("div",{className:`message-item message-tool-result ${l?"error":""}`},Z.default.createElement("div",{className:"result-content markdown-body custom-scrollbar",onClick:()=>u&&i(!s),style:{cursor:u?"pointer":"default"},dangerouslySetInnerHTML:{__html:r}}));let p=n;return p?.type==="mcp"?Z.default.createElement("div",{className:`message-item message-tool-result${a?" remote":""}`},Z.default.createElement(ob,{data:p})):Z.default.createElement("div",{className:`message-item message-tool-result${a?" remote":""}`},(()=>{switch(t){case"Read":return Z.default.createElement(Ry,{data:p});case"Edit":return Z.default.createElement(Iy,{data:p});case"Write":return Z.default.createElement(Fy,{data:p});case"Bash":return Z.default.createElement(eb,{data:p});case"Grep":return Z.default.createElement(tb,{data:p});case"Glob":return Z.default.createElement(nb,{data:p});case"LS":return Z.default.createElement(lb,{data:p});case"Agent":return Z.default.createElement(ab,{data:p});case"LSP":return Z.default.createElement(sb,{data:p});case"Cwd":return Z.default.createElement(ib,{data:p});case"TaskOutput":return Z.default.createElement(ub,{data:p});case"PowerShell":return Z.default.createElement(rb,{data:p});case"ToolLoader":return Z.default.createElement(cb,{data:p});case"ToolUnLoader":return Z.default.createElement(fb,{data:p});case"NotebookEdit":return Z.default.createElement(db,{data:p});case"WebSearch":return Z.default.createElement(pb,{data:p});case"WebFetch":return Z.default.createElement(mb,{data:p});case"TaskStop":return Z.default.createElement(gb,{data:p});case"TodoWrite":return Z.default.createElement(hb,{data:p});case"Think":return Z.default.createElement(vb,{data:p});case"AskUserQuestion":return Z.default.createElement(yb,{data:p});case"EnterPlanMode":return Z.default.createElement(bb,{data:p});case"ExitPlanMode":return Z.default.createElement(Sb,{data:p});case"EnterWorktreeTool":return Z.default.createElement(Nb,{data:p});case"ExitWorktreeTool":return Z.default.createElement(Tb,{data:p});case"SlashCommand":return Z.default.createElement(Eb,{data:p});case"Skill":return Z.default.createElement(xb,{data:p});case"CronCreate":return Z.default.createElement(_b,{data:p});case"CronDelete":return Z.default.createElement(kb,{data:p});case"CronList":return Z.default.createElement(Ab,{data:p});case"TeamCreate":return Z.default.createElement(Mb,{data:p});case"TeamDelete":return Z.default.createElement(Cb,{data:p});case"SendMessage":return Z.default.createElement(Ob,{data:p});case"MessageArchiving":return Z.default.createElement(wb,{data:p});case"Memo":return Z.default.createElement(zb,{data:p});case"ProxyTool":return Z.default.createElement(Ub,{data:p});case"codemode":return Z.default.createElement(Db,{data:p});default:return Z.default.createElement("pre",{className:"tool-result-text"},e.content)}})())}le.setOptions({breaks:!0,gfm:!0});function Bb({message:e,pendingUserResponses:t,sendUserResponse:n}){switch(e.messageType){case"user_text":return Me.default.createElement(aE,{content:e.content});case"assistant_text":return Me.default.createElement(sE,{content:e.content,metadata:e.metadata});case"assistant_thinking":return Me.default.createElement(iE,{content:e.content});case"tool_use":return Me.default.createElement(Wy,{message:e,pendingUserResponses:t,sendUserResponse:n});case"tool_result":return Me.default.createElement(Lb,{message:e});case"progress":return Me.default.createElement(oE,{content:e.content});case"error":return Me.default.createElement(uE,{content:e.content});default:return null}}function $u(e){return(0,Me.useMemo)(()=>{try{return le.parse(e)}catch{return e}},[e])}function aE({content:e}){let t=$u(e);return Me.default.createElement("div",{className:"message-item message-user"},Me.default.createElement("div",{className:"message-content markdown-body",dangerouslySetInnerHTML:{__html:t}}))}function sE({content:e,metadata:t}){let n=$u(e);return Me.default.createElement("div",{className:"message-item message-assistant"},Me.default.createElement("div",{className:"message-content markdown-body",dangerouslySetInnerHTML:{__html:n}}))}function iE({content:e}){let[t,n]=(0,Me.useState)(!1),l=$u(e);return Me.default.createElement("div",{className:"message-item message-thinking"},Me.default.createElement("details",{open:t,onToggle:a=>n(a.target.open)},Me.default.createElement("summary",null,"Thinking..."),t&&Me.default.createElement("div",{className:"message-content markdown-body",style:{marginTop:4},dangerouslySetInnerHTML:{__html:l}})))}function oE({content:e}){let t=$u(e);return Me.default.createElement("div",{className:"message-item message-progress"},Me.default.createElement("div",{className:"markdown-body",dangerouslySetInnerHTML:{__html:t}}))}function uE({content:e}){return Me.default.createElement("div",{className:"message-item message-error"},e)}var rE=new Set(["TaskCreate","TaskGet","TaskList","TaskUpdate","TodoWrite","TeamCreate"]),cE=new Set(["ToolLoader","ToolUnLoader","MessageArchiving"]);function fE(e,t){return!!(rE.has(e)||t!=="DAHAWA_DEBUG"&&cE.has(e))}var Hb="*-* ",qb="<system-notification>";function Qb(e,t={}){let{userType:n}=t,l=[],a=0,s=new Map;for(let i of e)if(i.type==="user"&&i.message?.content){let o=i.message.content;if(Array.isArray(o))for(let u of o)u.type==="tool_result"&&u.tool_use_id&&s.set(u.tool_use_id,u)}for(let i of e)if(!(!i||!i.type))switch(i.type){case"user":dE(i,s,l,()=>`msg_${a++}`);break;case"assistant":pE(i,s,e,l,()=>`msg_${a++}`,n);break;case"progress":mE(i,l,()=>`msg_${a++}`);break}return l}function dE(e,t,n,l){let a=e.message?.content;if(a){if(typeof a=="string"){if(!a.trim())return;let s=a.trim();if(s.startsWith(Hb)||s.startsWith(qb)||/<system-reminder>.*?<\/system-reminder>/s.test(s))return;let i=jb(s);n.push({id:l(),messageType:"user_text",content:i??s});return}if(Array.isArray(a)){for(let s of a)if(s.type==="text"){if(!s.text||s.text.trim()==="")continue;let i=s.text.trim();if(i.startsWith(Hb)||i.startsWith(qb)||/<system-reminder>.*?<\/system-reminder>/s.test(i))continue;let o=jb(s.text);n.push({id:l(),messageType:"user_text",content:o??s.text})}}}}function jb(e){let t=Gb(e,"command-message");if(!t)return null;let n=Gb(e,"command-args");return`> /${t}${n?" "+n:""}`}function Gb(e,t){if(!e.trim()||!t.trim())return null;let n=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return new RegExp(`<${n}(?:\\s+[^>]*)?>([\\s\\S]*?)<\\/${n}>`,"i").exec(e)?.[1]??null}function pE(e,t,n,l,a,s){let i=e.message?.content;if(!(!i||!Array.isArray(i)))for(let o of i)switch(o.type){case"text":if(o.text&&o.text.trim()){if(o.text.trim()==="No response requested.")break;l.push({id:a(),messageType:"assistant_text",content:o.text,metadata:{costUSD:e.costUSD,durationMs:e.durationMs}})}break;case"thinking":o.thinking&&o.thinking.trim()&&l.push({id:a(),messageType:"assistant_thinking",content:o.thinking,metadata:{isCollapsed:!0}});break;case"tool_use":{let u=o.id,f=o.name||"unknown_tool",r=f,p=o.input,c=!1;if(f==="ProxyTool"){let m=o.input;m&&(m.proxyToolAction??"call")==="call"&&m.toolName&&(r=m.toolName,p=m.arguments??{},c=!0)}if(fE(r,s))break;let{name:d,isRemote:v,displayName:y}=gE(r),S=y??d,g=u?t.has(u):!1;if(l.push({id:a(),messageType:"tool_use",content:d,metadata:{toolName:d,toolDisplayName:S,toolInput:bE(p),toolUseId:u,toolInputRaw:p,isRemote:v,isInProgress:!g,isProxyCall:c}}),u&&t.has(u)){let m=t.get(u),h=yE(m),b=vE(n,u),D=r.startsWith("mcp_")&&!r.startsWith("mcp_hands_")?hE(m,S):b;l.push({id:a(),messageType:"tool_result",content:h,metadata:{toolName:d,toolDisplayName:S,toolUseId:u,isError:m.is_error||!1,toolData:D,isRemote:v,isProxyCall:c}})}break}}}function mE(e,t,n){let l=e.content?.message?.content;if(!(!l||!Array.isArray(l)))for(let a of l)a.type==="text"&&a.text&&a.text.trim()&&t.push({id:n(),messageType:"progress",content:a.text})}var Yb={mcp_hands_Read:"Read",mcp_hands_Edit:"Edit",mcp_hands_Write:"Write",mcp_hands_Bash:"Bash",mcp_hands_Grep:"Grep",mcp_hands_Glob:"Glob",mcp_hands_LSP:"LSP",mcp_hands_NotebookEdit:"NotebookEdit",mcp_hands_TaskOutput:"TaskOutput",mcp_hands_TaskStop:"TaskStop",mcp_hands_PowerShell:"PowerShell"};function gE(e){if(Yb[e]){let t=Yb[e];return{name:t,isRemote:!0,displayName:`\u2601 ${t}`}}if(e.startsWith("mcp_hands_")){let t=e.slice(10);return{name:t,isRemote:!0,displayName:`\u2601 ${t}`}}if(e.startsWith("mcp_")){let t=e.slice(4),n=t.indexOf("_");if(n!==-1){let l=t.slice(0,n),a=t.slice(n+1);return{name:e,isRemote:!1,displayName:`${l}:${a}`}}}return{name:e,isRemote:!1}}function hE(e,t){return e?{type:"mcp",displayName:t,content:e.content??"",isError:e.is_error||!1}:{type:"mcp",displayName:t,content:"",isError:!1}}function vE(e,t){for(let n of e){if(!n.toolUseResult?.data)continue;let l=n.message?.content;if(!Array.isArray(l))continue;if(l.some(s=>s.type==="tool_result"&&s.tool_use_id===t))return n.toolUseResult.data}}function yE(e){if(!e)return"";let t=e.content;return t?typeof t=="string"?t:Array.isArray(t)?t.filter(n=>n.type==="text").map(n=>n.text||"").join(`
95
95
  `):JSON.stringify(t):e.is_error?"[Error]":"[Empty result]"}function bE(e){if(!e)return"";let t=typeof e=="string"?e:JSON.stringify(e,null,2);return t.length>800?t.substring(0,800)+"...":t}function Zb({rawMessages:e,autoScroll:t,userType:n,pendingUserResponses:l,sendUserResponse:a}){let s=(0,$t.useRef)(null),i=(0,$t.useRef)(!1),o=(0,$t.useMemo)(()=>Qb(e,{userType:n}),[e,n]);(0,$t.useEffect)(()=>{t&&s.current&&!i.current&&(s.current.scrollTop=s.current.scrollHeight)},[o,t]);let u=()=>{if(!s.current)return;let{scrollTop:f,scrollHeight:r,clientHeight:p}=s.current,c=r-f-p<50;i.current=!c};return o.length===0?$t.default.createElement("div",{className:"message-list"},$t.default.createElement("div",{className:"empty-state"},"Waiting for messages...")):$t.default.createElement("div",{className:"message-list",ref:s,onScroll:u},o.map(f=>$t.default.createElement(Bb,{key:f.id,message:f,pendingUserResponses:l,sendUserResponse:a})))}var Re=E(x(),1);function Xb({activeAgent:e,isLoading:t=!1,promptStatus:n,onSubmit:l,onInterrupt:a}){let[s,i]=(0,Re.useState)(""),o=(0,Re.useRef)(null),u=e==="main",f=u&&s.trim()!=="",r=u&&t,p=(0,Re.useCallback)(()=>{let y=o.current;if(!y)return;y.style.height="auto";let S=parseFloat(getComputedStyle(y).minHeight)||0;y.style.height=`${Math.min(Math.max(y.scrollHeight,S),200)}px`},[]);(0,Re.useEffect)(()=>{p()},[s,p]);let c=y=>{y.key==="Enter"&&!y.shiftKey&&!y.nativeEvent.isComposing&&(y.preventDefault(),f&&(l(s),i("")))},d=()=>{f&&(l(s),i(""))},v=s.startsWith("!")?"bash":s.startsWith("/")?"command":"text";return Re.default.createElement("div",{className:"prompt-input-bar"},Re.default.createElement("div",{className:"prompt-input-inner"},Re.default.createElement("span",{className:`prompt-input-mode ${v}`},v==="bash"?"!":v==="command"?"/":null),Re.default.createElement("textarea",{ref:o,className:"prompt-input-field",value:s,onChange:y=>i(y.target.value),onKeyDown:c,placeholder:u?t?"Agent is busy; your prompt will be queued...":"Type a prompt and press Enter...":"Switch to Main agent to type a prompt",disabled:!u,rows:3}),r?Re.default.createElement("button",{className:"prompt-input-interrupt",onClick:a,type:"button",title:"Interrupt"},Re.default.createElement("span",{className:"interrupt-icon"})):Re.default.createElement("button",{className:"prompt-input-send",onClick:d,disabled:!f,type:"button",title:"Send"},Re.default.createElement("span",{className:"send-icon"}))))}var se=E(x(),1);var zt=E(x(),1);function Vb(){let[e,t]=(0,zt.useState)(null),[n,l]=(0,zt.useState)(null),[a,s]=(0,zt.useState)(null),[i,o]=(0,zt.useState)(!0),[u,f]=(0,zt.useState)(null),r=(0,zt.useCallback)(async()=>{try{let[v,y,S]=await Promise.all([fetch("/api/settings"),fetch("/api/settings/sources"),fetch("/api/model-config")]);if(!v.ok)throw new Error(`Failed to load settings: ${v.status}`);if(!y.ok)throw new Error(`Failed to load settings sources: ${y.status}`);if(!S.ok)throw new Error(`Failed to load model config: ${S.status}`);let g=await v.json(),m=await y.json(),h=await S.json();t(g),l({user:m.user||{},project:m.project||{}}),s(h),f(null)}catch(v){f(v instanceof Error?v.message:"Failed to load settings")}finally{o(!1)}},[]);(0,zt.useEffect)(()=>{r();let v=()=>{r()};return window.addEventListener("settings:changed",v),()=>{window.removeEventListener("settings:changed",v)}},[r]);let p=(0,zt.useCallback)(async(v,y,S)=>{let g=await fetch(`/api/settings/${v}/${y}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:S})});if(!g.ok){let m=await g.json().catch(()=>({error:"Update failed"}));throw new Error(m.error||"Update failed")}await r()},[r]),c=(0,zt.useCallback)(async(v,y)=>{let S=await fetch(`/api/settings/${v}/${y}`,{method:"DELETE"});if(!S.ok){let g=await S.json().catch(()=>({error:"Reset failed"}));throw new Error(g.error||"Reset failed")}await r()},[r]),d=(0,zt.useCallback)(async v=>{let y=await fetch("/api/model-config",{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(v)});if(!y.ok){let S=await y.json().catch(()=>({error:"Update model config failed",details:[]})),g=[S.error,...S.details||[]].filter(Boolean).join(`
96
96
  `);throw new Error(g||"Update model config failed")}await r()},[r]);return{settings:e,sources:n,modelConfig:a,loading:i,error:u,updateSetting:p,resetSetting:c,updateModelConfig:d,refresh:r}}var he=E(x(),1);var Ju=E(x(),1);function Pu({label:e,value:t,onChange:n}){return Ju.default.createElement("div",{className:"setting-row"},Ju.default.createElement("span",{className:"setting-label"},e),Ju.default.createElement("button",{className:`setting-toggle ${t?"on":"off"}`,onClick:()=>n(!t)},t?"On":"Off"))}var Ei=E(x(),1);function vd({label:e,value:t,options:n,onChange:l}){return Ei.default.createElement("div",{className:"setting-row"},Ei.default.createElement("span",{className:"setting-label"},e),Ei.default.createElement("select",{className:"setting-select",value:t,onChange:a=>l(a.target.value)},n.map(a=>Ei.default.createElement("option",{key:a,value:a},a))))}var Wu=E(x(),1);function Ru({label:e,value:t,onChange:n,placeholder:l}){return Wu.default.createElement("div",{className:"setting-row"},Wu.default.createElement("span",{className:"setting-label"},e),Wu.default.createElement("input",{className:"setting-input",type:"text",value:t,placeholder:l,onChange:a=>n(a.target.value)}))}var Iu=E(x(),1);function Fu({label:e,value:t,onChange:n,min:l,max:a}){return Iu.default.createElement("div",{className:"setting-row"},Iu.default.createElement("span",{className:"setting-label"},e),Iu.default.createElement("input",{className:"setting-input",type:"number",value:t,min:l,max:a,onChange:s=>n(parseInt(s.target.value,10)||0)}))}var na=E(x(),1);function la({label:e,value:t,fields:n,onChange:l}){let a=t||{},s=(i,o)=>{l({...a,[i]:o})};return na.default.createElement("div",{className:"setting-object"},na.default.createElement("h4",{className:"setting-object-title"},e),na.default.createElement("div",{className:"setting-object-fields"},n.map(i=>{let o=a[i.key];switch(i.type){case"boolean":return na.default.createElement(Pu,{key:i.key,label:i.label,value:!!o,onChange:u=>s(i.key,u)});case"number":return na.default.createElement(Fu,{key:i.key,label:i.label,value:typeof o=="number"?o:0,min:i.min,max:i.max,onChange:u=>s(i.key,u)});case"string":return na.default.createElement(Ru,{key:i.key,label:i.label,value:typeof o=="string"?o:"",placeholder:i.placeholder,onChange:u=>s(i.key,u)});default:return null}})))}var bn=E(x(),1);function Kb(e){return JSON.stringify(e??{},null,2)}function er({label:e,value:t,onChange:n,rows:l=8,className:a}){let[s,i]=(0,bn.useState)(()=>Kb(t)),[o,u]=(0,bn.useState)(null);(0,bn.useEffect)(()=>{i(Kb(t)),u(null)},[t]);let f=()=>{try{let r=JSON.parse(s);u(null),n(r)}catch(r){u(r instanceof Error?r.message:"Invalid JSON")}};return bn.default.createElement("div",{className:`setting-json-editor ${a||""}`},bn.default.createElement("label",{className:"setting-json-label"},e),bn.default.createElement("textarea",{className:"setting-json-textarea",value:s,onChange:r=>i(r.target.value),onBlur:f,rows:l,spellCheck:!1}),o&&bn.default.createElement("div",{className:"setting-json-error"},o))}var vt=E(x(),1);function $b(e){return Object.entries(e??{}).map(([t,n])=>({key:t,value:String(n??"")}))}function Jb(e){let t={};for(let n of e){let l=n.key.trim();l&&(t[l]=n.value)}return t}function SE(e,t){let n=Object.keys(e),l=Object.keys(t);return n.length!==l.length?!1:n.every(a=>e[a]===t[a])}function Pb({label:e,value:t,onChange:n}){let[l,a]=(0,vt.useState)(()=>$b(t));(0,vt.useEffect)(()=>{a($b(t))},[t]);let s=Jb(l),i=p=>{let c=Jb(p);SE(s,c)||n(c),a(p)},o=(p,c)=>{let d=l.map((v,y)=>y===p?{...v,key:c}:v);i(d)},u=(p,c)=>{let d=l.map((v,y)=>y===p?{...v,value:c}:v);i(d)},f=()=>{a([...l,{key:"",value:""}])},r=p=>{let c=l.filter((d,v)=>v!==p);i(c)};return vt.default.createElement("div",{className:"setting-key-value"},vt.default.createElement("h4",{className:"setting-key-value-title"},e),vt.default.createElement("div",{className:"setting-key-value-list"},l.map((p,c)=>vt.default.createElement("div",{key:c,className:"setting-key-value-row"},vt.default.createElement("input",{className:"setting-input setting-key-value-key",type:"text",value:p.key,placeholder:"KEY",onChange:d=>o(c,d.target.value)}),vt.default.createElement("span",{className:"setting-key-value-separator"},"="),vt.default.createElement("input",{className:"setting-input setting-key-value-value",type:"text",value:p.value,placeholder:"value",onChange:d=>u(c,d.target.value)}),vt.default.createElement("button",{className:"setting-key-value-remove",onClick:()=>r(c),title:"Remove"},"\xD7")))),vt.default.createElement("button",{className:"setting-key-value-add",onClick:f},"+ Add"))}var G=E(x(),1);function _l(e){return JSON.parse(JSON.stringify(e))}function Wb(e){return!e||typeof e!="object"||Array.isArray(e)?{sources:{},routing:{}}:{sources:typeof e.sources=="object"&&!Array.isArray(e.sources)?e.sources:{},routing:typeof e.routing=="object"&&!Array.isArray(e.routing)?e.routing:{}}}function Rb(e){return Array.isArray(e)?e.join(", "):""}function NE(e){return e.split(",").map(t=>t.trim()).filter(Boolean)}var TE=["anthropic","openai","openai-responses","gemini"];function ls({label:e,children:t}){return G.default.createElement("div",{className:"model-config-field"},G.default.createElement("label",{className:"model-config-field-label"},e),G.default.createElement("div",{className:"model-config-field-input"},t))}function yd({label:e,value:t,onChange:n,placeholder:l}){return G.default.createElement(ls,{label:e},G.default.createElement("input",{className:"model-config-input",type:"text",value:t,placeholder:l,onChange:a=>n(a.target.value)}))}function EE({models:e,onChange:t}){let[n,l]=(0,G.useState)(Rb(e));return(0,G.useEffect)(()=>{l(Rb(e))},[e]),G.default.createElement(ls,{label:"Models (comma separated)"},G.default.createElement("input",{className:"model-config-input",type:"text",value:n,placeholder:"model-a, model-b",onChange:a=>l(a.target.value),onBlur:a=>t(NE(a.target.value))}))}function xE({label:e,value:t,onChange:n,min:l}){return G.default.createElement(ls,{label:e},G.default.createElement("input",{className:"model-config-input",type:"number",value:t,min:l,onChange:a=>n(parseInt(a.target.value,10)||0)}))}function Ib({value:e,onChange:t}){let[n,l]=(0,G.useState)("form"),a=Wb(e),s=(c,d,v)=>{let y=_l(a);y.sources[c]||(y.sources[c]={base_url:"",auth_token:"",api_type:"anthropic",models:[]}),y.sources[c][d]=v,t(y)},i=()=>{let c=_l(a),d=1;for(;c.sources[`source${d}`];)d++;c.sources[`source${d}`]={base_url:"",auth_token:"",api_type:"anthropic",models:[]},t(c)},o=c=>{let d=_l(a);delete d.sources[c];for(let v of Object.keys(d.routing)){let y=v;d.routing[y]=(d.routing[y]||[]).filter(S=>S.source!==c)}t(d)},u=(c,d,v,y)=>{let S=_l(a);S.routing[c]||(S.routing[c]=[]);let g=S.routing[c];g[d]||(g[d]={source:"",model:""}),g[d][v]=y,t(S)},f=c=>{let d=_l(a);d.routing[c]||(d.routing[c]=[]),d.routing[c].push({source:"",model:"",weight:100}),t(d)},r=(c,d)=>{let v=_l(a);v.routing[c]&&v.routing[c].splice(d,1),t(v)};return G.default.createElement("div",{className:"model-config-setting"},G.default.createElement("div",{className:"model-config-tabs"},G.default.createElement("button",{className:`model-config-tab ${n==="form"?"active":""}`,onClick:()=>l("form")},"Form"),G.default.createElement("button",{className:`model-config-tab ${n==="json"?"active":""}`,onClick:()=>l("json")},"JSON")),n==="form"?G.default.createElement("div",{className:"model-config-form"},G.default.createElement("div",{className:"model-config-section"},G.default.createElement("h4",{className:"model-config-section-title"},"Sources"),Object.keys(a.sources).length===0&&G.default.createElement("div",{className:"model-config-empty"},"No sources configured"),Object.entries(a.sources).map(([c,d])=>G.default.createElement("div",{key:c,className:"model-config-card"},G.default.createElement("div",{className:"model-config-card-header"},G.default.createElement(yd,{label:"Source Name",value:c,onChange:v=>{if(v===c||!v.trim())return;let y=_l(a);y.sources[v]=y.sources[c],delete y.sources[c];for(let S of Object.keys(y.routing)){let g=S;y.routing[g]=(y.routing[g]||[]).map(m=>m.source===c?{...m,source:v}:m)}t(y)}}),G.default.createElement("button",{className:"model-config-remove-button",onClick:()=>o(c)},"Remove")),G.default.createElement(yd,{label:"Base URL",value:d.base_url||"",onChange:v=>s(c,"base_url",v),placeholder:"https://api.example.com"}),G.default.createElement(yd,{label:"Auth Token",value:d.auth_token||"",onChange:v=>s(c,"auth_token",v),placeholder:"sk-..."}),G.default.createElement(ls,{label:"API Type"},G.default.createElement("select",{className:"model-config-select",value:d.api_type||"anthropic",onChange:v=>s(c,"api_type",v.target.value)},TE.map(v=>G.default.createElement("option",{key:v,value:v},v)))),G.default.createElement(EE,{models:d.models,onChange:v=>s(c,"models",v)}))),G.default.createElement("button",{className:"model-config-add-button",onClick:i},"Add Source")),G.default.createElement("div",{className:"model-config-section"},G.default.createElement("h4",{className:"model-config-section-title"},"Routing"),["MODEL","SMALL_FAST_MODEL"].map(c=>G.default.createElement("div",{key:c,className:"model-config-routing-group"},G.default.createElement("h5",{className:"model-config-routing-type"},c),(a.routing[c]||[]).length===0&&G.default.createElement("div",{className:"model-config-empty"},"No routing items"),(a.routing[c]||[]).map((d,v)=>G.default.createElement("div",{key:v,className:"model-config-card"},G.default.createElement("div",{className:"model-config-card-row"},G.default.createElement(ls,{label:"Source"},G.default.createElement("select",{className:"model-config-select",value:d.source||"",onChange:y=>{let S=y.target.value,g=_l(a);g.routing[c]||(g.routing[c]=[]);let m=g.routing[c];if(!m[v])m[v]={source:S,model:""};else{m[v].source=S;let h=g.sources[S]?.models||[];h.length>0&&!h.includes(m[v].model)?m[v].model=h[0]:h.length===0&&(m[v].model="")}t(g)}},G.default.createElement("option",{value:""},"Select source"),Object.keys(a.sources).map(y=>G.default.createElement("option",{key:y,value:y},y)))),G.default.createElement(ls,{label:"Model"},G.default.createElement("select",{className:"model-config-select",value:d.model||"",onChange:y=>u(c,v,"model",y.target.value),disabled:!d.source||!a.sources[d.source]?.models?.length},G.default.createElement("option",{value:""},d.source?a.sources[d.source]?.models?.length?"Select model":"No models available":"Select source first"),(a.sources[d.source]?.models||[]).map(y=>G.default.createElement("option",{key:y,value:y},y)))),G.default.createElement(xE,{label:"Weight",value:typeof d.weight=="number"?d.weight:100,min:0,onChange:y=>u(c,v,"weight",y)}),G.default.createElement("button",{className:"model-config-remove-button",onClick:()=>r(c,v)},"Remove")))),G.default.createElement("button",{className:"model-config-add-button",onClick:()=>f(c)},"Add ",c," Route"))))):G.default.createElement("div",{className:"model-config-json-wrapper"},G.default.createElement(er,{label:"Model Config (config.json)",value:a,onChange:c=>t(Wb(c)),className:"model-config-json-editor"})))}var H=E(x(),1);var Xe=E(x(),1);async function aa(e,t){let n=await fetch(e,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),l=await n.json().catch(()=>({error:"Request failed"}));if(!n.ok)throw new Error(l.error||`Request failed: ${n.status}`);return l}async function _E(e){let t=await fetch(e,{method:"DELETE"}),n=await t.json().catch(()=>({error:"Request failed"}));if(!t.ok)throw new Error(n.error||`Request failed: ${t.status}`);return n}function Fb(){let[e,t]=(0,Xe.useState)([]),[n,l]=(0,Xe.useState)([]),[a,s]=(0,Xe.useState)([]),[i,o]=(0,Xe.useState)(!0),[u,f]=(0,Xe.useState)(null),r=(0,Xe.useCallback)(async()=>{try{o(!0);let[h,b,A]=await Promise.all([fetch("/api/marketplaces"),fetch("/api/plugins"),fetch("/api/plugins/available")]);if(!h.ok)throw new Error(`Failed to load marketplaces: ${h.status}`);if(!b.ok)throw new Error(`Failed to load plugins: ${b.status}`);if(!A.ok)throw new Error(`Failed to load available plugins: ${A.status}`);let D=await h.json(),k=await b.json(),w=await A.json();t(D.marketplaces||[]),l(k.plugins||[]),s(w.available||[]),f(null)}catch(h){f(h instanceof Error?h.message:"Failed to load plugins")}finally{o(!1)}},[]);(0,Xe.useEffect)(()=>{r()},[r]);let p=(0,Xe.useCallback)(async h=>{let b=await aa("/api/marketplaces",{source:h});return await r(),b.name},[r]),c=(0,Xe.useCallback)(async h=>{await _E(`/api/marketplaces/${encodeURIComponent(h)}`),await r()},[r]),d=(0,Xe.useCallback)(async h=>{let b=await aa(`/api/marketplaces/${encodeURIComponent(h)}/update`,{});return await r(),{updated:b.updated||[],errors:b.errors||[]}},[r]),v=(0,Xe.useCallback)(async h=>{let b=await aa("/api/plugins/install",{spec:h});return await r(),b.id},[r]),y=(0,Xe.useCallback)(async h=>{await aa("/api/plugins/uninstall",{spec:h}),await r()},[r]),S=(0,Xe.useCallback)(async h=>{let b=await aa("/api/plugins/update",{spec:h});return await r(),{updated:b.updated||[],errors:b.errors||[]}},[r]),g=(0,Xe.useCallback)(async h=>{await aa("/api/plugins/enable",{spec:h}),await r()},[r]),m=(0,Xe.useCallback)(async h=>{await aa("/api/plugins/disable",{spec:h}),await r()},[r]);return{marketplaces:e,plugins:n,available:a,loading:i,error:u,refresh:r,addMarketplace:p,removeMarketplace:c,updateMarketplace:d,installPlugin:v,uninstallPlugin:y,updatePlugin:S,enablePlugin:g,disablePlugin:m}}function e0({value:e,onChange:t}){let{marketplaces:n,plugins:l,available:a,loading:s,error:i,addMarketplace:o,removeMarketplace:u,updateMarketplace:f,installPlugin:r,uninstallPlugin:p,updatePlugin:c,enablePlugin:d,disablePlugin:v}=Fb(),[y,S]=(0,H.useState)(""),[g,m]=(0,H.useState)(""),[h,b]=(0,H.useState)(null),[A,D]=(0,H.useState)(null),k=C=>{b(C),D(null)},w=C=>{D(C),b(null)},_=async()=>{if(y.trim())try{let C=await o(y.trim());S(""),w(C?`Added marketplace "${C}"`:"Marketplace added")}catch(C){k(C instanceof Error?C.message:"Failed to add marketplace")}},M=async C=>{try{await u(C),w(`Removed marketplace "${C}"`)}catch(N){k(N instanceof Error?N.message:"Failed to remove marketplace")}},j=async C=>{try{let N=await f(C);N.errors.length>0?k(N.errors.join(`
97
97
  `)):w(`Updated marketplace "${C}"`)}catch(N){k(N instanceof Error?N.message:"Failed to update marketplace")}},X=async C=>{let N=C??g;if(N.trim())try{let U=await r(N.trim());C||m(""),w(U?`Installed plugin "${U}"`:"Plugin installed")}catch(U){k(U instanceof Error?U.message:"Failed to install plugin")}},z=async C=>{try{await p(C),w(`Uninstalled plugin "${C}"`)}catch(N){k(N instanceof Error?N.message:"Failed to uninstall plugin")}},q=async C=>{try{let N=await c(C);N.errors.length>0?k(N.errors.join(`