@inkeep/open-knowledge 0.59.0-beta.6 → 0.59.0-beta.8

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 (89) hide show
  1. package/README.md +43 -0
  2. package/dist/{acp-harness-probe-CwlSA2YA.mjs → acp-harness-probe-BkOwHAye.mjs} +2 -2
  3. package/dist/cli.mjs +6 -6
  4. package/dist/constants-Ewa9CoZQ.mjs +2 -0
  5. package/dist/index.mjs +1 -1
  6. package/dist/{init-DtEg1CVj.mjs → init-BJIYo6fU.mjs} +3 -3
  7. package/dist/init-CrPoPzAG.mjs +1 -0
  8. package/dist/{launch-json-removal-DMIuk2Xm.mjs → launch-json-removal-BMO8E9B8.mjs} +2 -2
  9. package/dist/{loader-FTxT5qp1.mjs → loader-C-_ZRMjc.mjs} +2 -2
  10. package/dist/loader-nueXQqis.mjs +1 -0
  11. package/dist/preview-DgdlfWZf.mjs +1 -0
  12. package/dist/{preview-DbzR0PS5.mjs → preview-ax42dCDU.mjs} +2 -2
  13. package/dist/public/assets/{ActivityModeContent-16L4CN2t.js → ActivityModeContent-y1bm44g7.js} +1 -1
  14. package/dist/public/assets/{AgentDiffPane-DWuD5gDF.js → AgentDiffPane-HYWdvJTS.js} +1 -1
  15. package/dist/public/assets/{CodeMirrorPropInput-DuZeupvc.js → CodeMirrorPropInput-C7yT51sP.js} +1 -1
  16. package/dist/public/assets/{DocumentContext-EVe8T_4V.js → DocumentContext-CC7xQUYT.js} +1 -1
  17. package/dist/public/assets/{EditorModeToggle-C89Lmfvi.js → EditorModeToggle-CfGM3fyB.js} +1 -1
  18. package/dist/public/assets/{EnableSyncConfirmDialog-DuuoUeCA.js → EnableSyncConfirmDialog-C1ehWgCt.js} +1 -1
  19. package/dist/public/assets/{ExcalidrawDocEditor-DKpnK_Te.js → ExcalidrawDocEditor-DnTMOFu-.js} +1 -1
  20. package/dist/public/assets/FeedbackForm-cgbKv0g0.js +1 -0
  21. package/dist/public/assets/{ImportSkillDialog-BW8hYUMC.js → ImportSkillDialog-SsO9QNio.js} +1 -1
  22. package/dist/public/assets/{LintConfigEditor-DI9ZL8t7.js → LintConfigEditor-YzZf5_f7.js} +1 -1
  23. package/dist/public/assets/{ManagedArtifactProperties-SInV_eE5.js → ManagedArtifactProperties-BZsdSya-.js} +1 -1
  24. package/dist/public/assets/ManagedArtifactProperties-CLbreart.js +1 -0
  25. package/dist/public/assets/{MermaidDocEditor-Taa4xIn5.js → MermaidDocEditor-CCe1yCru.js} +1 -1
  26. package/dist/public/assets/{PropertyDisplayRow-DY3LkrAq.js → PropertyDisplayRow-nFNZYGfX.js} +1 -1
  27. package/dist/public/assets/{SchemaConfigEditor-08j6Goue.js → SchemaConfigEditor-BY_YyKXs.js} +1 -1
  28. package/dist/public/assets/{SessionsHost-D2TiYy-t.js → SessionsHost-BYZNo3Kk.js} +2 -2
  29. package/dist/public/assets/{SettingsDialogBody-DDFx4vDq.js → SettingsDialogBody-0S2-Xz7t.js} +1 -1
  30. package/dist/public/assets/{ShareReceiveMissDialog-9uyWPE2r.js → ShareReceiveMissDialog-mE0aC08h.js} +1 -1
  31. package/dist/public/assets/{SkillInstallMenu-7rF7_Qqj.js → SkillInstallMenu-DDIrDJ-9.js} +1 -1
  32. package/dist/public/assets/{SkillToolbarControls-Ib5ly02n.js → SkillToolbarControls-B_uUyV6c.js} +1 -1
  33. package/dist/public/assets/{SourceEditor-Dmdy2M_V.js → SourceEditor-Cej0UDY2.js} +1 -1
  34. package/dist/public/assets/{TerminalWindowApp-BgdbGRUg.js → TerminalWindowApp-D8FYL3C7.js} +1 -1
  35. package/dist/public/assets/{TextDocEditor-O6cHtSVn.js → TextDocEditor-DUP9DcZp.js} +1 -1
  36. package/dist/public/assets/ThreadView-DHOMABmp.js +14 -0
  37. package/dist/public/assets/{TimelineDiffPane-B3xMtotK.js → TimelineDiffPane-CC7ThLus.js} +1 -1
  38. package/dist/public/assets/{agent-diff-store-_LXkwhjL.js → agent-diff-store-BahD4uPO.js} +1 -1
  39. package/dist/public/assets/{auth-state-cache-CYlHHIOy.js → auth-state-cache-EFBVHlRc.js} +1 -1
  40. package/dist/public/assets/{comment-chips-Cyvt-GuB.js → comment-chips-C46KhOYN.js} +1 -1
  41. package/dist/public/assets/{config-provider-Bab4_nwt.js → config-provider-DjHHdYZc.js} +3 -3
  42. package/dist/public/assets/{follow-file-CXSEufj8.js → follow-file-BdLyohkG.js} +1 -1
  43. package/dist/public/assets/{globals-DMVk7DOF.css → globals-CStTfhCT.css} +1 -1
  44. package/dist/public/assets/i18n-BjDCnAbG.js +1 -0
  45. package/dist/public/assets/{index-CvOmEWwY.js → index-D0w-_Tf-.js} +7 -7
  46. package/dist/public/assets/{messages-Cimiq3nE.js → messages-BC0weC6T.js} +1 -1
  47. package/dist/public/assets/{messages-BjIH4q0G.js → messages-BUMQyEhN.js} +1 -1
  48. package/dist/public/assets/{messages-BAyOSOzR.js → messages-CBpyhJU_.js} +1 -1
  49. package/dist/public/assets/{messages-Cn23SiIt.js → messages-CYbhOonr.js} +1 -1
  50. package/dist/public/assets/{messages-Cpdcajhh.js → messages-ChPATE0e.js} +1 -1
  51. package/dist/public/assets/{messages-pwWS2IL9.js → messages-Ct3uwDGy.js} +1 -1
  52. package/dist/public/assets/{messages-BLbXONgk.js → messages-CxWP5LhY.js} +1 -1
  53. package/dist/public/assets/{messages-DEperCf5.js → messages-DTlHcmsC.js} +1 -1
  54. package/dist/public/assets/{messages-agMQw_WX.js → messages-Df48MyMT.js} +1 -1
  55. package/dist/public/assets/{messages-Vju40UVv.js → messages-DlbmIIg5.js} +1 -1
  56. package/dist/public/assets/{messages-7TQ4p_5e.js → messages-DxtpamFr.js} +1 -1
  57. package/dist/public/assets/{messages-BzRqDtdz.js → messages-yZTegdOf.js} +1 -1
  58. package/dist/public/assets/{pending-receive-nav-store-YRIcYpak.js → pending-receive-nav-store-DuKZpunW.js} +1 -1
  59. package/dist/public/assets/{selection-context-B9p1R6mm.js → selection-context-BmB25q0C.js} +1 -1
  60. package/dist/public/assets/{skill-actions-Dmiv-OaH.js → skill-actions-DqWVaGQp.js} +1 -1
  61. package/dist/public/assets/{src-954nlWtx.js → src-DJgjhXEz.js} +1 -1
  62. package/dist/public/assets/{typing-burst-detector-CtytQZKZ.js → typing-burst-detector-qfYOfD1F.js} +1 -1
  63. package/dist/public/assets/{uninstall-a5o1Qty-.js → uninstall-pGE2iYlh.js} +1 -1
  64. package/dist/public/assets/{use-activity-panel-Ch01VK0x.js → use-activity-panel-CgE_zYms.js} +1 -1
  65. package/dist/public/assets/{use-open-skill-BtJdSHXl.js → use-open-skill-BG9zgQbl.js} +1 -1
  66. package/dist/public/assets/{use-popular-skills-Pfi6527q.js → use-popular-skills-DGBJd9nZ.js} +1 -1
  67. package/dist/public/assets/{use-terminal-enabled-CGezX1Y6.js → use-terminal-enabled-Sd1IQqFp.js} +1 -1
  68. package/dist/public/assets/{use-timeline-entry-diff-D_77fB53.js → use-timeline-entry-diff-CYdMHt_y.js} +1 -1
  69. package/dist/public/index.html +23 -23
  70. package/dist/public/uninstall.html +5 -5
  71. package/dist/{repair-launch-json-B6gMDsrz.mjs → repair-launch-json-UAcKX7r3.mjs} +2 -2
  72. package/dist/{repair-mcp-configs-BdOq8Vf6.mjs → repair-mcp-configs-ZNDMA4KS.mjs} +2 -2
  73. package/dist/{src-BDmrU0nU.mjs → src-CJ5YdSi5.mjs} +2 -2
  74. package/dist/src-ITkdVjfT.mjs +1 -0
  75. package/dist/start-DXwAojKV.mjs +1 -0
  76. package/dist/{start-DtE0-Zi2.mjs → start-fzvwvGfI.mjs} +2 -2
  77. package/package.json +16 -5
  78. package/scripts/verify-package-surface.mjs +57 -0
  79. package/dist/constants-ClvhUhKC.mjs +0 -2
  80. package/dist/init-BBypWa1X.mjs +0 -1
  81. package/dist/loader-5d79Yfz_.mjs +0 -1
  82. package/dist/preview-CMoCG15V.mjs +0 -1
  83. package/dist/public/assets/FeedbackForm-GJ-gi37F.js +0 -1
  84. package/dist/public/assets/ManagedArtifactProperties-HsfjkNmc.js +0 -1
  85. package/dist/public/assets/ThreadView-nJXOmPeX.js +0 -14
  86. package/dist/public/assets/i18n-BzFVw6me.js +0 -1
  87. package/dist/src-61Qo6YtO.mjs +0 -1
  88. package/dist/start-CXB1wcA0.mjs +0 -1
  89. /package/dist/public/assets/{globals--kx1ORbr.js → globals-tNjN0wSq.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{M as e}from"./sleep-B416PNUo.mjs";import{ac as t,cc as n,fc as r,mc as i,oc as a,pc as o}from"./src-BxdlvOrw.mjs";import{In as s,a as ee,di as c}from"./src-DJejT6Wt.mjs";import{S as l,b as u,x as d}from"./resolve-project-root-COu6TC2y.mjs";import{a as f,f as p,i as m,l as h,o as g,r as _,t as v}from"./acp-harness-probe-CwlSA2YA.mjs";import{y}from"./init-DtEg1CVj.mjs";import{n as b}from"./constants-ClvhUhKC.mjs";import{spawn as x}from"node:child_process";import{basename as S,resolve as C}from"node:path";import{existsSync as w}from"node:fs";import{rm as T}from"node:fs/promises";import{setTimeout as E}from"node:timers/promises";function D(e,t){return e.bind?.[0]??e.host??t.HOST??`127.0.0.1`}function O(e){if(e===`ui`||e===`server`)return e;throw new d(`--only must be 'ui' or 'server'`)}function k(e=w){let t=import.meta.dirname??new URL(`.`,import.meta.url).pathname;return[C(t,`public`),C(t,`../../app/dist`),C(t,`../../../app/dist`)].find(t=>e(t))}function A(e){if(e.explicitDir!==void 0)return{dir:e.explicitDir,missingBundle:!1};if(e.only===`server`)return{dir:void 0,missingBundle:!1};let t=e.findBundledDir();return{dir:t,missingBundle:t===void 0}}function j(t){if(t===`off`)return`off`;if(!e.test(t))throw new d(`--idle-shutdown must be 'off' or a duration like 90s, 30m, 2h`);return t}function M(e){return e===`localhost`||e===`::1`||e===`[::1]`||e.startsWith(`127.`)}function N(e){return!e.flagBindSet&&!e.okBindSet&&e.hostEnvSet&&e.fileBindCount>1}function P(e){return!e.openBrowser||e.remoteEnabled||e.ephemeral||e.only===`server`||!e.servesUi?!1:e.legacyOpen?!0:(e.explicitOn||M(e.host))&&e.isTTY}function F(e,t){return t&&(e===`::`||e===`::1`||e===`[::1]`||e===`localhost`||e===`0.0.0.0`)?{host:`127.0.0.1`,coerced:!0}:{host:e,coerced:!1}}function I(e,t){return a(t)?e:{externalUrl:e.externalUrl,idleShutdown:e.idleShutdown}}function L(e,t){if(e===void 0||e===!1)return null;let n=typeof e==`string`?e:t;if(n===void 0||n===``)return{ok:!1,errorMessage:"--remote requires a public tunnel URL — pass it (`ok start --remote https://<your-tunnel-host>`) or set remote.url in .ok/config.yml."};let r;try{r=new URL(n)}catch{return{ok:!1,errorMessage:`remote.url is not a valid URL: ${n}`}}if(r.protocol!==`https:`)return{ok:!1,errorMessage:`remote.url must be https — it is the public tunnel URL remote clients connect to (got: ${n})`};let i=n.replace(/\/+$/,``);return{ok:!0,url:i,serverOverlay:{externalUrl:i,allowExternal:!0,idleShutdown:`off`}}}function R(e,t){let n;try{n=new URL(t)}catch{throw new d(`${e} is not a valid URL: ${t}`)}if(n.protocol!==`http:`&&n.protocol!==`https:`)throw new d(`${e} must be an http(s) origin (got: ${t})`);return t}function z(e){return R(`--external-url`,e)}function te(e){return e.externalUrl??e.publicUrl}function B(e){return R(`--public-url`,e)}function V(e){let t=S(e).replace(/[^\x20-\x7E]/g,``).trim().slice(0,64);return`open-knowledge-server ${t.length>0?t:`unknown`}`}var H=class extends Error{cwd;constructor(e){super("This directory isn't set up yet. Run `ok init` first, then `ok start` again."),this.name=`OkDirMissingError`,this.cwd=e}};function U(e,t,n=!1){return e??(n?void 0:t)}function W(e,t,n=e=>T(e,{recursive:!0,force:!0})){return async()=>{try{await e()}finally{try{await n(t)}catch(e){process.stderr.write(`[start] ephemeral temp dir reap failed for ${t}: ${e instanceof Error?e.message:String(e)}\n`)}}}}function G(e,t={}){let n=t.exit??(e=>process.exit(e)),r=t.getActiveHandles??(()=>{let e=process._getActiveHandles;return e?e.call(process):null});return async()=>{let i=!1;try{await e()}catch(e){i=!0,t.log?.error({err:e},`idle-shutdown: destroy failed — exiting anyway`)}finally{let e=null;try{let t=r();if(t!==null){e={};for(let n of t){let t=n?.constructor?.name??`unknown`;e[t]=(e[t]??0)+1}}}catch{e=null}t.log?.info({event:`idle-shutdown-exit`,exitCode:+!!i,openHandles:e??{},handlesAvailable:e!==null},`idle-shutdown: teardown finished — exiting process`),n(+!!i)}}}async function K(e){let{config:t,cwd:n,host:r}=e,i=e.skipAutoInit??!1,a=e.idleThresholdMs===void 0?18e5:e.idleThresholdMs,{existsSync:o,mkdirSync:l}=await import(`node:fs`),{basename:u,dirname:d}=await import(`node:path`),{bootServer:f,getLogger:m,resolveContentDir:g,resolveLockDir:_,waitForServerLockDrain:b}=await import(`./src-CUP74RDx.mjs`),x=e.log??m(`start`),S=e.singleFile!==void 0,C=e.projectDir??n,w=S?ee(e.singleFile).canonicalFilePath:void 0,T=w?d(w):void 0,E=w?u(w):void 0;if(!S){if(!i&&!s(n))throw new H(n);let t=process.env.OK_RECLAIM_DISABLE??null,r=e=>{let t=typeof e.event==`string`?e.event:``;(t.endsWith(`-failed`)||t.endsWith(`-error`)||t.endsWith(`-missing`))&&x.warn({event:e},`[start] reclaim sweep reported a problem`)};try{(e.repairMcpConfigsFn??(await import(`./repair-mcp-configs-BdOq8Vf6.mjs`)).repairMcpConfigs)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){x.warn({err:e},`[start] mcp-config repair sweep failed; continuing`)}try{(e.repairLaunchJsonFn??(await import(`./repair-launch-json-B6gMDsrz.mjs`)).repairLaunchJson)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){x.warn({err:e},`[start] launch.json repair sweep failed; continuing`)}try{await(e.repairSkillsFn??(await import(`./repair-skills-D39s_ZLC.mjs`)).repairSkills)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){x.warn({err:e},`[start] skill repair sweep failed; continuing`)}}let D=T??g(t,n);!S&&!o(D)&&(l(D,{recursive:!0}),x.info({contentDir:D},`Created content directory`));let O=p(),k=c();{let e=_(S?C:n),t=Date.now(),r=await b(e);r!==`no-drain`&&x.info({event:`start-waited-for-draining-predecessor`,outcome:r,waitedMs:Date.now()-t,drainLockDir:e},r===`released`?`[start] predecessor server finished draining — proceeding`:`[start] predecessor server still draining after wait — proceeding to collide`)}let A=await f({config:t,contentDir:D,projectDir:S?C:n,contentRoot:S?void 0:t.content.dir,port:e.port,host:r,quiet:!1,detectGh:h,tokenStore:O,embeddingsKeyStore:k,mcpTomlEditor:y(),...S?{ephemeral:!0,singleDocRelPath:E,gitEnabled:!1,gitPreflight:()=>({ok:!0,version:`0.0.0`,resolvedPath:`git`,source:`PATH`})}:{},localOpCliArgs:[process.execPath,process.argv[1]],probeHarnessManagedMcpEntry:(e,t)=>v(e,t),idleShutdownMs:a,...e.serverRuntime===void 0?{}:{serverRuntime:e.serverRuntime},...e.bind===void 0?{}:{bind:e.bind},skipAutoInit:!0,idleShutdownHandler:t=>{let n=t;return G(S?W(n,C):n,{log:x,exit:e.idleExit})},log:x,...e.serveContentAssets===void 0?{}:{serveContentAssets:e.serveContentAssets},...e.reactShellDistDir?{reactShellDistDir:e.reactShellDistDir}:{}});return{httpServer:A.httpServer,destroy:A.destroy,lockDir:A.lockDir,contentDir:D,port:A.port,ready:A.ready,degraded:A.degraded}}function q(e){if(e===`browser`||e===`app`)return e;throw new d(`--mode must be 'browser' or 'app'`)}function J(e){return e.OK_CONSOLE_LEVEL!==void 0||e.LOG_LEVEL!==void 0?null:`warn`}function Y(e){let t=[`Stopping OpenKnowledge…`,`Saving pending changes and releasing the server lock — this can take a few seconds.`];return e===`SIGINT`&&t.push(`Press Ctrl+C again to force quit.`),t}async function X(e,a){let s=J(process.env);s!==null&&(process.env.OK_CONSOLE_LEVEL=s);let{renderBanner:ee}=await import(`./banner-Ev4hKBM4.mjs`),{accent:c,dim:l,error:u,warning:d}=await import(`./colors-MGDi6UGf.mjs`),f=process.cwd(),p=a.remote!==void 0&&a.remote!==!1;process.title=V(f),p&&console.warn(d("--remote is deprecated — use `OK_IDLE_SHUTDOWN=off OK_ALLOW_EXTERNAL=1 ok start --external-url <url>` instead (add --bind to serve a non-loopback address; keep OK_IDLE_SHUTDOWN=off — the idle timer only counts WS clients and would tear the server down under a live remote MCP client). The flag now just expands to those server.* keys and will be removed in a later release.")),a.publicUrl!==void 0&&console.warn(d(`--public-url is deprecated — use --external-url <url> (same value and semantics; the key was renamed to server.externalUrl). The old spelling will be removed in a later release.`)),n(e).externalUrlFromDeprecatedKey&&console.warn(d(`[config] server.publicUrl is deprecated — use server.externalUrl instead (same value and semantics). If this config is committed and shared, keep both keys until every collaborator has upgraded — older versions read only server.publicUrl; see https://openknowledge.ai/docs/reference/configuration. The old key will be removed in a later release.`));let m=L(a.remote,e.remote?.url);m!==null&&!m.ok&&(console.error(u(m.errorMessage)),process.exit(78));let h=m?.ok?m:null,g=h!==null;h!==null&&console.warn(d([``,`⚠ REMOTE ACCESS ENABLED — no server-side authentication.`,` Anyone who can reach ${h.url} has FULL control of this`,` knowledge base, including sync, publishing, credentials, and local operations.`,` Restrict who can reach it at the tunnel: ngrok OAuth, Cloudflare Access,`,` Tailscale ACLs, or equivalent edge auth.`,``].join(`
1
+ import{M as e}from"./sleep-B416PNUo.mjs";import{ac as t,cc as n,fc as r,mc as i,oc as a,pc as o}from"./src-BxdlvOrw.mjs";import{In as s,a as ee,di as c}from"./src-DJejT6Wt.mjs";import{S as l,b as u,x as d}from"./resolve-project-root-COu6TC2y.mjs";import{a as f,f as p,i as m,l as h,o as g,r as _,t as v}from"./acp-harness-probe-BkOwHAye.mjs";import{y}from"./init-BJIYo6fU.mjs";import{n as b}from"./constants-Ewa9CoZQ.mjs";import{spawn as x}from"node:child_process";import{basename as S,resolve as C}from"node:path";import{existsSync as w}from"node:fs";import{rm as T}from"node:fs/promises";import{setTimeout as E}from"node:timers/promises";function D(e,t){return e.bind?.[0]??e.host??t.HOST??`127.0.0.1`}function O(e){if(e===`ui`||e===`server`)return e;throw new d(`--only must be 'ui' or 'server'`)}function k(e=w){let t=import.meta.dirname??new URL(`.`,import.meta.url).pathname;return[C(t,`public`),C(t,`../../app/dist`),C(t,`../../../app/dist`)].find(t=>e(t))}function A(e){if(e.explicitDir!==void 0)return{dir:e.explicitDir,missingBundle:!1};if(e.only===`server`)return{dir:void 0,missingBundle:!1};let t=e.findBundledDir();return{dir:t,missingBundle:t===void 0}}function j(t){if(t===`off`)return`off`;if(!e.test(t))throw new d(`--idle-shutdown must be 'off' or a duration like 90s, 30m, 2h`);return t}function M(e){return e===`localhost`||e===`::1`||e===`[::1]`||e.startsWith(`127.`)}function N(e){return!e.flagBindSet&&!e.okBindSet&&e.hostEnvSet&&e.fileBindCount>1}function P(e){return!e.openBrowser||e.remoteEnabled||e.ephemeral||e.only===`server`||!e.servesUi?!1:e.legacyOpen?!0:(e.explicitOn||M(e.host))&&e.isTTY}function F(e,t){return t&&(e===`::`||e===`::1`||e===`[::1]`||e===`localhost`||e===`0.0.0.0`)?{host:`127.0.0.1`,coerced:!0}:{host:e,coerced:!1}}function I(e,t){return a(t)?e:{externalUrl:e.externalUrl,idleShutdown:e.idleShutdown}}function L(e,t){if(e===void 0||e===!1)return null;let n=typeof e==`string`?e:t;if(n===void 0||n===``)return{ok:!1,errorMessage:"--remote requires a public tunnel URL — pass it (`ok start --remote https://<your-tunnel-host>`) or set remote.url in .ok/config.yml."};let r;try{r=new URL(n)}catch{return{ok:!1,errorMessage:`remote.url is not a valid URL: ${n}`}}if(r.protocol!==`https:`)return{ok:!1,errorMessage:`remote.url must be https — it is the public tunnel URL remote clients connect to (got: ${n})`};let i=n.replace(/\/+$/,``);return{ok:!0,url:i,serverOverlay:{externalUrl:i,allowExternal:!0,idleShutdown:`off`}}}function R(e,t){let n;try{n=new URL(t)}catch{throw new d(`${e} is not a valid URL: ${t}`)}if(n.protocol!==`http:`&&n.protocol!==`https:`)throw new d(`${e} must be an http(s) origin (got: ${t})`);return t}function z(e){return R(`--external-url`,e)}function te(e){return e.externalUrl??e.publicUrl}function B(e){return R(`--public-url`,e)}function V(e){let t=S(e).replace(/[^\x20-\x7E]/g,``).trim().slice(0,64);return`open-knowledge-server ${t.length>0?t:`unknown`}`}var H=class extends Error{cwd;constructor(e){super("This directory isn't set up yet. Run `ok init` first, then `ok start` again."),this.name=`OkDirMissingError`,this.cwd=e}};function U(e,t,n=!1){return e??(n?void 0:t)}function W(e,t,n=e=>T(e,{recursive:!0,force:!0})){return async()=>{try{await e()}finally{try{await n(t)}catch(e){process.stderr.write(`[start] ephemeral temp dir reap failed for ${t}: ${e instanceof Error?e.message:String(e)}\n`)}}}}function G(e,t={}){let n=t.exit??(e=>process.exit(e)),r=t.getActiveHandles??(()=>{let e=process._getActiveHandles;return e?e.call(process):null});return async()=>{let i=!1;try{await e()}catch(e){i=!0,t.log?.error({err:e},`idle-shutdown: destroy failed — exiting anyway`)}finally{let e=null;try{let t=r();if(t!==null){e={};for(let n of t){let t=n?.constructor?.name??`unknown`;e[t]=(e[t]??0)+1}}}catch{e=null}t.log?.info({event:`idle-shutdown-exit`,exitCode:+!!i,openHandles:e??{},handlesAvailable:e!==null},`idle-shutdown: teardown finished — exiting process`),n(+!!i)}}}async function K(e){let{config:t,cwd:n,host:r}=e,i=e.skipAutoInit??!1,a=e.idleThresholdMs===void 0?18e5:e.idleThresholdMs,{existsSync:o,mkdirSync:l}=await import(`node:fs`),{basename:u,dirname:d}=await import(`node:path`),{bootServer:f,getLogger:m,resolveContentDir:g,resolveLockDir:_,waitForServerLockDrain:b}=await import(`./src-CUP74RDx.mjs`),x=e.log??m(`start`),S=e.singleFile!==void 0,C=e.projectDir??n,w=S?ee(e.singleFile).canonicalFilePath:void 0,T=w?d(w):void 0,E=w?u(w):void 0;if(!S){if(!i&&!s(n))throw new H(n);let t=process.env.OK_RECLAIM_DISABLE??null,r=e=>{let t=typeof e.event==`string`?e.event:``;(t.endsWith(`-failed`)||t.endsWith(`-error`)||t.endsWith(`-missing`))&&x.warn({event:e},`[start] reclaim sweep reported a problem`)};try{(e.repairMcpConfigsFn??(await import(`./repair-mcp-configs-ZNDMA4KS.mjs`)).repairMcpConfigs)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){x.warn({err:e},`[start] mcp-config repair sweep failed; continuing`)}try{(e.repairLaunchJsonFn??(await import(`./repair-launch-json-UAcKX7r3.mjs`)).repairLaunchJson)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){x.warn({err:e},`[start] launch.json repair sweep failed; continuing`)}try{await(e.repairSkillsFn??(await import(`./repair-skills-D39s_ZLC.mjs`)).repairSkills)({projectDir:n,reclaimDisableEnv:t,logger:r})}catch(e){x.warn({err:e},`[start] skill repair sweep failed; continuing`)}}let D=T??g(t,n);!S&&!o(D)&&(l(D,{recursive:!0}),x.info({contentDir:D},`Created content directory`));let O=p(),k=c();{let e=_(S?C:n),t=Date.now(),r=await b(e);r!==`no-drain`&&x.info({event:`start-waited-for-draining-predecessor`,outcome:r,waitedMs:Date.now()-t,drainLockDir:e},r===`released`?`[start] predecessor server finished draining — proceeding`:`[start] predecessor server still draining after wait — proceeding to collide`)}let A=await f({config:t,contentDir:D,projectDir:S?C:n,contentRoot:S?void 0:t.content.dir,port:e.port,host:r,quiet:!1,detectGh:h,tokenStore:O,embeddingsKeyStore:k,mcpTomlEditor:y(),...S?{ephemeral:!0,singleDocRelPath:E,gitEnabled:!1,gitPreflight:()=>({ok:!0,version:`0.0.0`,resolvedPath:`git`,source:`PATH`})}:{},localOpCliArgs:[process.execPath,process.argv[1]],probeHarnessManagedMcpEntry:(e,t)=>v(e,t),idleShutdownMs:a,...e.serverRuntime===void 0?{}:{serverRuntime:e.serverRuntime},...e.bind===void 0?{}:{bind:e.bind},skipAutoInit:!0,idleShutdownHandler:t=>{let n=t;return G(S?W(n,C):n,{log:x,exit:e.idleExit})},log:x,...e.serveContentAssets===void 0?{}:{serveContentAssets:e.serveContentAssets},...e.reactShellDistDir?{reactShellDistDir:e.reactShellDistDir}:{}});return{httpServer:A.httpServer,destroy:A.destroy,lockDir:A.lockDir,contentDir:D,port:A.port,ready:A.ready,degraded:A.degraded}}function q(e){if(e===`browser`||e===`app`)return e;throw new d(`--mode must be 'browser' or 'app'`)}function J(e){return e.OK_CONSOLE_LEVEL!==void 0||e.LOG_LEVEL!==void 0?null:`warn`}function Y(e){let t=[`Stopping OpenKnowledge…`,`Saving pending changes and releasing the server lock — this can take a few seconds.`];return e===`SIGINT`&&t.push(`Press Ctrl+C again to force quit.`),t}async function X(e,a){let s=J(process.env);s!==null&&(process.env.OK_CONSOLE_LEVEL=s);let{renderBanner:ee}=await import(`./banner-Ev4hKBM4.mjs`),{accent:c,dim:l,error:u,warning:d}=await import(`./colors-MGDi6UGf.mjs`),f=process.cwd(),p=a.remote!==void 0&&a.remote!==!1;process.title=V(f),p&&console.warn(d("--remote is deprecated — use `OK_IDLE_SHUTDOWN=off OK_ALLOW_EXTERNAL=1 ok start --external-url <url>` instead (add --bind to serve a non-loopback address; keep OK_IDLE_SHUTDOWN=off — the idle timer only counts WS clients and would tear the server down under a live remote MCP client). The flag now just expands to those server.* keys and will be removed in a later release.")),a.publicUrl!==void 0&&console.warn(d(`--public-url is deprecated — use --external-url <url> (same value and semantics; the key was renamed to server.externalUrl). The old spelling will be removed in a later release.`)),n(e).externalUrlFromDeprecatedKey&&console.warn(d(`[config] server.publicUrl is deprecated — use server.externalUrl instead (same value and semantics). If this config is committed and shared, keep both keys until every collaborator has upgraded — older versions read only server.publicUrl; see https://openknowledge.ai/docs/reference/configuration. The old key will be removed in a later release.`));let m=L(a.remote,e.remote?.url);m!==null&&!m.ok&&(console.error(u(m.errorMessage)),process.exit(78));let h=m?.ok?m:null,g=h!==null;h!==null&&console.warn(d([``,`⚠ REMOTE ACCESS ENABLED — no server-side authentication.`,` Anyone who can reach ${h.url} has FULL control of this`,` knowledge base, including sync, publishing, credentials, and local operations.`,` Restrict who can reach it at the tunnel: ngrok OAuth, Cloudflare Access,`,` Tailscale ACLs, or equivalent edge auth.`,``].join(`
2
2
  `)));let _;try{_=i(process.env)}catch(e){throw e instanceof r&&(console.error(u(e.message)),process.exit(78)),e}for(let e of _.diagnostics)console.warn(d(`[config] ${e.message}`));let v=o(e,_.layer),y=_.overrides.some(e=>e.envVar===`OK_BIND`),x=a.bind!==void 0&&a.bind.length>0?a.bind:a.host===void 0?void 0:[a.host],S=process.env.HOST,C=S!==void 0&&S.trim()!==``?S:void 0,w=n(v),T=x??(y||C===void 0?[...w.bind]:[C]);N({flagBindSet:x!==void 0,okBindSet:y,hostEnvSet:C!==void 0,fileBindCount:w.bind.length})&&console.warn(d(`[config] HOST=${C} overrides server.bind — dropping the file-configured addresses (${w.bind.join(`, `)}). Use OK_BIND with a space-separated list to keep multiple binds.`));let D=T[0]??`127.0.0.1`,O=F(D,g);O.coerced&&console.warn(`remote access is enabled and ${D} is not an IPv4 loopback bind — tunnels proxy to 127.0.0.1, so binding ${D} would leave the tunnel dialing a dead port. Using 127.0.0.1.`);let j=O.host,M=g?[j]:T,R=h===null?{}:I(h.serverOverlay,M);h!==null&&!(`allowExternal`in R)&&console.warn(d(`--remote does not consent to exposing a non-loopback bind (${M.join(`, `)}) — the tunnel is the only ingress the alias vouches for. Consent explicitly with OK_ALLOW_EXTERNAL=1 (or server.allowExternal in .ok/local/config.yml), or drop the non-loopback bind.`));let z=te(a),B=n(o(v,{server:{bind:M,...R,...z===void 0?{}:{externalUrl:z}}}));if(!g&&B.allowExternal&&(!B.loopbackOnly||B.externalUrl)){let e=B.externalUrl??B.bind.join(`, `);console.warn(d([``,`⚠ EXTERNAL ACCESS ENABLED (server.allowExternal) — no server-side authentication.`,` This server is reachable beyond this machine (${e}). Anyone who can`,` reach it has FULL control of this knowledge base — sync, publishing, GitHub`,` credentials, and local operations (clone, sign-in, repo spawn).`,` Restrict who can reach it at the edge: a Tailscale ACL, a reverse proxy with`,` auth (Cloudflare Access, oauth2-proxy), or a firewall.`,``].join(`
3
3
  `)))}let W=a.port===void 0?void 0:Number(a.port),G=_.overrides.find(e=>e.envVar===`PORT`)?.value,q=n(e).port,X=e.server?.port;g&&W===void 0&&G!==void 0&&console.warn(`remote access is enabled — ignoring env PORT=${process.env.PORT}; the tunnel's port mapping targets the stable remote port (${q??24550}). Pass --port to override deliberately.`);let ae=U(W,G,g)??(g?q??24550:X),oe=A({explicitDir:a.reactShellDistDir,only:a.only,findBundledDir:k}),Q=oe.dir;oe.missingBundle&&console.warn(g?`remote access: bundled web UI not found — serving /mcp and /api only over the tunnel.`:`bundled web UI not found — serving /api and /mcp only. Reinstall @inkeep/open-knowledge, or build packages/app in a source checkout.`);let $;try{$=await K({config:e,cwd:f,host:j,port:ae,bind:M,...a.serveContentAssets===void 0?{}:{serveContentAssets:a.serveContentAssets},...Q?{reactShellDistDir:Q}:{},idleThresholdMs:t((g?void 0:a.idleShutdown)??B.idleShutdown),serverRuntime:B,...a.singleFile?{singleFile:a.singleFile}:{},...a.projectDir?{projectDir:a.projectDir}:{}})}catch(e){e instanceof H&&(console.error(u(e.message)),process.exit(1));let t=await import(`./src-CUP74RDx.mjs`);if((e instanceof t.GitNotAvailableError||e instanceof t.GitTooOldError)&&process.exit(78),e instanceof t.ExposureConsentError&&(console.error(u(e.message)),process.exit(78)),(e instanceof t.SingleFileNotFoundError||e instanceof t.SingleFileNotAFileError||e instanceof t.SingleFileNotMarkdownError)&&(console.error(u(e.message)),process.exit(1)),re(e,t)){let e=t.resolveLockDir(f),n=null;try{n=await Z({readServerLock:()=>t.readServerLock(e),readUiLock:()=>t.readUiLock(e),now:Date.now,sleep:e=>E(e),timeoutMs:3e3,pollIntervalMs:50})}catch(e){process.stderr.write(`[start] spawn-or-reuse: lock poll failed (${e instanceof Error?e.message:String(e)}) — falling back to the collision message\n`)}if(n!==null){let[e,...t]=ne(n);console.log(c(e));for(let e of t)console.log(l(e));process.exit(0)}}let n=ie(e,f,t);n!==null&&(console.error(u(n)),process.exit(1)),console.error(`${u(`Failed to start:`)} ${e instanceof Error?e.stack??e.message:String(e)}`),process.exit(1)}let se=!1,ce=async e=>{if(se)return;se=!0;let[t,...n]=Y(e);console.log(c(`\n${t}`));for(let e of n)console.log(l(` ${e}`));try{await $.destroy()}catch(e){console.error(`${u(`destroy() failed:`)} ${e instanceof Error?e.stack??e.message:String(e)}`),process.exitCode=1}process.exit(process.exitCode??0)};process.once(`SIGINT`,()=>{ce(`SIGINT`)}),process.once(`SIGTERM`,()=>{ce(`SIGTERM`)});let le=`http://${j.includes(`:`)&&!j.startsWith(`[`)?`[${j}]`:j}:${$.port}`,ue=j===`0.0.0.0`||j===`::`?`http://0.0.0.0:${$.port}`:void 0,de=le;console.log(ee({name:`open-knowledge`,version:b,localUrl:de,networkUrl:ue,nextSteps:[`Open the Editor URL in your browser to start editing.`]}));let fe={"shadow-repo":`Version history and branch-switch safety unavailable`,"file-watcher":`External file changes will not sync to the editor`,"head-watcher":`Git branch switches may cause document inconsistency`};$.ready.then(async()=>{if($.degraded.length>0){console.log();for(let e of $.degraded){let t=fe[e]??`${e} (check server logs for details)`;console.warn(` ${d(`⚠`)} ${d(e)}: ${l(t)}`)}console.log()}if(P({openBrowser:a.openBrowser!==!1&&B.openBrowser,explicitOn:a.openBrowser!==!1&&v.server?.openBrowser===!0,legacyOpen:a.open===!0,host:j,isTTY:process.stdout.isTTY===!0,remoteEnabled:g,ephemeral:a.singleFile!==void 0,only:a.only,servesUi:Q!==void 0})){let{openBrowser:e}=await import(`./open-browser-S9VrM_aN.mjs`);e(de)}}).catch(e=>{console.error(` ${u(`Server initialization failed:`)} ${e instanceof Error?e.message:String(e)}`)})}async function Z(e){let t=e.now()+e.timeoutMs,n=e.readServerLock();for(;n!==null&&n.draining!==!0&&n.port<=0&&e.now()<t;)await e.sleep(e.pollIntervalMs),n=e.readServerLock();if(n===null||n.draining===!0||n.port<=0)return null;if(n.capabilities?.includes(`ui`)===!0&&n.url!==void 0)return{url:n.url,kind:n.kind,pid:n.pid,servesUi:!0};let r=e.readUiLock();return r!==null&&r.port>0?{url:r.url??`http://localhost:${r.port}`,kind:n.kind,pid:n.pid,servesUi:!1}:{url:n.url??`http://127.0.0.1:${n.port}`,kind:n.kind,pid:n.pid,servesUi:!1}}function ne(e){return[`${e.kind===`mcp-spawned`?`An MCP-spawned OpenKnowledge server is already running on this project`:`OpenKnowledge is already running on this project`} (pid ${e.pid}).`,` ${e.url}`,"Leaving it running — run `ok stop` first if you want a fresh server."]}function re(e,t){let n=t.ServerLockCollisionError;return n!==void 0&&e instanceof n}function ie(e,t,n){let r=n.ServerLockCollisionError;if(r===void 0||!(e instanceof r))return null;try{let e=n.readServerLock(n.resolveLockDir(t));return e&&e.kind===`mcp-spawned`?"An MCP-spawned server holds this lock; it should release on idle-shutdown (~30 min). Or run `ok stop`.":"OpenKnowledge server is already running on this project — check `ok status` or `ok stop`."}catch{return null}}function ae(e){return new u(`start`).description(`Start the OpenKnowledge server (UI + API + MCP + collab on one port)`).option(`-p, --port <port>`,`Server port`,void 0).option(`--bind <address>`,`Bind address (repeatable; default 127.0.0.1 — loopback only)`,(e,t)=>[...t??[],e]).addOption(new l(`-H, --host <host>`,`Deprecated alias of --bind`).hideHelp()).option(`--no-open-browser`,`Do not open the browser after start (interactive loopback starts open it by default)`).addOption(new l(`--open`,`Deprecated: force-open the browser after start`).hideHelp()).option(`--only <module>`,`Serve one module: 'server' (API + MCP only, no shell or browser) or 'ui' (shell + proxy only; requires --server-url)`,O).option(`--server-url <url>`,`Project-server URL the --only ui process proxies to (e.g. http://127.0.0.1:24550)`).option(`--idle-shutdown <duration>`,`Shut the server down after this long with no connected clients ('off', or a duration like 90s, 30m, 2h; default 30m)`,j).option(`--mode <mode>`,`Force dispatch mode: 'browser' or 'app'`,q).option(`--serve-content-assets`,`Serve content assets from this server (now the default; kept for compatibility)`).option(`--react-shell-dist-dir <path>`,`Serve React shell from <path>`).option(`--single-file <path>`,`No-project ephemeral single-file mode: scope the server to one markdown file (git + MCP off)`).option(`--project-dir <dir>`,`Throwaway project root for --single-file (where ephemeral .ok/ state lives)`).option(`--external-url <url>`,`Canonical external origin clients dial (sets server.externalUrl for this run) — its host joins the Host/Origin allowlists (CORS + external-Host admission). External exposure additionally requires consent (OK_ALLOW_EXTERNAL=1 or server.allowExternal).`,z).option(`--public-url <url>`,`Deprecated alias of --external-url (the former name of that flag) — same value and semantics.`,B).option(`--remote [url]`,`Deprecated alias: expands to --external-url <url> + OK_ALLOW_EXTERNAL consent on a loopback bind. Serves through a tunnel with NO server-side auth (anyone who can reach the URL has full control — restrict access at the tunnel with edge auth). Bare --remote uses remote.url from .ok/config.yml; --remote <url> supplies it for this run.`).action(async t=>{let n=e();if(t.serverUrl!==void 0&&t.only!==`ui`&&(process.stderr.write(`error: option '--server-url' requires '--only ui'
4
4
  `),process.exit(2)),t.externalUrl!==void 0&&t.publicUrl!==void 0&&(process.stderr.write(`error: option '--public-url' cannot be combined with '--external-url' (--public-url is a deprecated alias of --external-url)
@@ -9,4 +9,4 @@ import{M as e}from"./sleep-B416PNUo.mjs";import{ac as t,cc as n,fc as r,mc as i,
9
9
  `),process.exit(2)),t.remote!==void 0&&t.remote!==!1&&(process.stderr.write(`error: option '--only ui' cannot be combined with '--remote'
10
10
  `),process.exit(2));let{runUiCommand:e}=await import(`./ui-Ci1Xxx_K.mjs`);await e(n,{...t.port===void 0?{}:{port:String(t.port)},...t.bind?.[0]===void 0?t.host===void 0?{}:{host:t.host}:{host:t.bind[0]},upstreamUrl:t.serverUrl});return}if(t.mode===`app`){t.open&&(process.stderr.write(`error: option '--mode=app' cannot be combined with '--open' (--open opens a browser tab against the local server, which app mode does not boot)
11
11
  `),process.exit(2));let e=[];if(t.port!==void 0&&e.push(`--port`),t.bind!==void 0&&e.push(`--bind`),t.host!==void 0&&e.push(`--host`),t.only!==void 0&&e.push(`--only`),t.serverUrl!==void 0&&e.push(`--server-url`),t.idleShutdown!==void 0&&e.push(`--idle-shutdown`),t.openBrowser===!1&&e.push(`--no-open-browser`),t.externalUrl!==void 0&&e.push(`--external-url`),t.publicUrl!==void 0&&e.push(`--public-url`),t.remote!==void 0&&t.remote!==!1&&e.push(`--remote`),e.length>0){let t=process.env.OK_LOG_LEVEL??`info`;(t===`debug`||t===`trace`)&&console.error(`--mode=app: ignoring ${e.join(`, `)}`)}let n=m(_());if(n.available){f({spawn:x},n);return}console.error(g(n.reason)),process.exit(1)}await X(n,t)})}export{P as C,W as D,ie as E,G as O,I as S,ae as T,D as _,L as a,A as b,M as c,j as d,O as f,te as g,U as h,V as i,re as l,k as m,K as n,ne as o,B as p,F as r,Y as s,H as t,z as u,Z as v,N as w,X as x,J as y};
12
- //# sourceMappingURL=start-DtE0-Zi2.mjs.map
12
+ //# sourceMappingURL=start-fzvwvGfI.mjs.map
package/package.json CHANGED
@@ -1,6 +1,16 @@
1
1
  {
2
2
  "name": "@inkeep/open-knowledge",
3
- "version": "0.59.0-beta.6",
3
+ "version": "0.59.0-beta.8",
4
+ "description": "Local-first, agent-friendly Markdown knowledge base with a cross-platform CLI and web editor",
5
+ "keywords": [
6
+ "knowledge-base",
7
+ "markdown",
8
+ "local-first",
9
+ "mcp",
10
+ "ai",
11
+ "cli"
12
+ ],
13
+ "homepage": "https://openknowledge.ai",
4
14
  "license": "GPL-3.0-or-later",
5
15
  "private": false,
6
16
  "type": "module",
@@ -62,10 +72,10 @@
62
72
  "ajv-formats": "^3.0.1",
63
73
  "tsdown": "^0.21.7",
64
74
  "typescript": "^5.9.3",
65
- "@inkeep/open-knowledge-app": "0.59.0-beta.6",
66
- "@inkeep/open-knowledge-core": "0.59.0-beta.6",
75
+ "@inkeep/open-knowledge-app": "0.59.0-beta.8",
76
+ "@inkeep/open-knowledge-core": "0.59.0-beta.8",
67
77
  "@inkeep/open-knowledge-native-config": "0.0.0",
68
- "@inkeep/open-knowledge-server": "0.59.0-beta.6"
78
+ "@inkeep/open-knowledge-server": "0.59.0-beta.8"
69
79
  },
70
80
  "scripts": {
71
81
  "build:cli": "rm -rf dist && tsdown",
@@ -79,6 +89,7 @@
79
89
  "build": "pnpm run build:cli && pnpm run build:assets",
80
90
  "test": "pnpm run build:schema && vitest run",
81
91
  "test:e2e:cli": "vitest run --config vitest.e2e.config.ts",
82
- "typecheck": "tsc --noEmit"
92
+ "typecheck": "tsc --noEmit",
93
+ "verify:package": "node scripts/verify-package-surface.mjs"
83
94
  }
84
95
  }
@@ -0,0 +1,57 @@
1
+ import { execFileSync } from 'node:child_process';
2
+ import { readFileSync } from 'node:fs';
3
+ import { dirname, join, resolve } from 'node:path';
4
+ import { fileURLToPath } from 'node:url';
5
+
6
+ const PACKAGE_ROOT = resolve(dirname(fileURLToPath(import.meta.url)), '..');
7
+
8
+ export const REQUIRED_PACK_FILES = ['README.md', 'dist/LICENSE', 'dist/THIRD_PARTY_NOTICES.md'];
9
+
10
+ export const REQUIRED_KEYWORDS = ['knowledge-base', 'markdown', 'local-first', 'mcp', 'ai', 'cli'];
11
+
12
+ export function validatePackageSurface(packageJson, packEntries) {
13
+ const errors = [];
14
+ const pack = Array.isArray(packEntries) ? packEntries[0] : undefined;
15
+ const packedFiles = new Set(pack?.files?.map((file) => file.path) ?? []);
16
+
17
+ if (!pack) errors.push('npm pack returned no package entry');
18
+ for (const file of REQUIRED_PACK_FILES) {
19
+ if (!packedFiles.has(file)) errors.push(`packed artifact is missing ${file}`);
20
+ }
21
+
22
+ if (typeof packageJson.description !== 'string' || packageJson.description.trim().length < 40) {
23
+ errors.push('package description must be at least 40 characters');
24
+ }
25
+ if (packageJson.homepage !== 'https://openknowledge.ai') {
26
+ errors.push('package homepage must be https://openknowledge.ai');
27
+ }
28
+
29
+ const keywords = new Set(Array.isArray(packageJson.keywords) ? packageJson.keywords : []);
30
+ for (const keyword of REQUIRED_KEYWORDS) {
31
+ if (!keywords.has(keyword)) errors.push(`package keywords are missing ${keyword}`);
32
+ }
33
+
34
+ return errors;
35
+ }
36
+
37
+ export function verifyPackageSurface(packageRoot = PACKAGE_ROOT) {
38
+ const packageJson = JSON.parse(readFileSync(join(packageRoot, 'package.json'), 'utf8'));
39
+ const packEntries = JSON.parse(
40
+ execFileSync('npm', ['pack', '--json', '--dry-run', '--ignore-scripts'], {
41
+ cwd: packageRoot,
42
+ encoding: 'utf8',
43
+ maxBuffer: 10 * 1024 * 1024,
44
+ }),
45
+ );
46
+ const errors = validatePackageSurface(packageJson, packEntries);
47
+
48
+ if (errors.length > 0) {
49
+ throw new Error(`Package surface verification failed:\n- ${errors.join('\n- ')}`);
50
+ }
51
+
52
+ console.log(`Package surface verified (${packEntries[0].files.length} packed files).`);
53
+ }
54
+
55
+ if (process.argv[1] && fileURLToPath(import.meta.url) === resolve(process.argv[1])) {
56
+ verifyPackageSurface();
57
+ }
@@ -1,2 +0,0 @@
1
- import"./src-BxdlvOrw.mjs";var e=`0.59.0-beta.6`;const t=`config.yml`,n=e;export{n,t};
2
- //# sourceMappingURL=constants-ClvhUhKC.mjs.map
@@ -1 +0,0 @@
1
- import{g as e}from"./init-DtEg1CVj.mjs";export{e as runInit};
@@ -1 +0,0 @@
1
- import{n as e}from"./loader-FTxT5qp1.mjs";export{e as loadConfig};
@@ -1 +0,0 @@
1
- import{n as e,t}from"./preview-DbzR0PS5.mjs";export{t as formatPreviewBlock,e as previewContent};
@@ -1 +0,0 @@
1
- import{t as e}from"./index-CvOmEWwY.js";export{e as FeedbackForm};
@@ -1 +0,0 @@
1
- import{t as e}from"./ManagedArtifactProperties-SInV_eE5.js";export{e as ManagedArtifactProperties};
@@ -1,14 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./code-highlighter-impl-u_GiXGcZ.js","./lib-C0Wr4O8I.js","./html-void-elements-C35FEqss.js","./chunk-CYidjpOJ.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./chunk-CYidjpOJ.js";import{t}from"./preload-helper-Chd9yIcd.js";import{t as n}from"./jsx-runtime-BUgB2tll.js";import{Fn as r,In as i,Mn as a,On as o,Pn as s,Tr as c,Un as l,a as u,sr as d}from"./DocumentContext-EVe8T_4V.js";import{t as f}from"./react-f2sANaYj.js";import{n as p,r as m}from"./dist-Nvb76hAm.js";import{t as h}from"./compiler-runtime-BfE3aGVn.js";import{c as g,d as _}from"./local-menu-action-bus-CIYp0C2E.js";import{t as v}from"./utils-CPqDy6Hr.js";import{t as y}from"./mascot-outline-CtS592mc.js";import{t as b}from"./button-CA0dewJJ.js";import{i as x,n as S,t as C}from"./tooltip-DHXgxWLL.js";import{c as w,i as T,t as E}from"./dialog-HdfR4WGm.js";import{st as D}from"./CodeMirrorPropInput-DuZeupvc.js";import{a as O,c as k,d as A,f as j,l as M,m as N,n as P,o as F,p as ee,r as I,t as te}from"./dropdown-menu-CLgDYkh1.js";import{t as L}from"./progress-C76GMNqV.js";import{n as ne}from"./separator-BM37WC0d.js";import{t as R}from"./switch-CXMMdHyn.js";import{Jr as re,ft as ie}from"./dist-DGemBD_J.js";import{n as ae}from"./dist-D81TFAXh.js";import{t as z}from"./dist-XgwTV-oh2.js";import{i as oe,t as B}from"./history-DnsnwPsA.js";import{t as se}from"./use-workspace-8Sxb8Z6Q.js";import{t as V}from"./createLucideIcon-Bhw2PmPp.js";import{l as H,o as U}from"./Mermaid-CHnWO5AG.js";import{t as ce}from"./RegisteredAgentIcon-CP1iDML-.js";import{t as le}from"./check-CGfmW4da.js";import{t as W}from"./chevron-down-DabHDQTe.js";import{t as G}from"./chevron-right-Diamp-K_.js";import{o as ue,r as de,s as K}from"./prop-types-CizsurD0.js";import{t as fe}from"./download-Dn5ulvxm.js";import{t as pe}from"./list-plus-CT84Vd_h.js";import{t as me}from"./spinner-BxJv3FRl.js";import{c as he,n as ge,o as q,s as _e,t as ve}from"./comment-chips-Cyvt-GuB.js";import{a as ye,b as be,c as J,d as xe,f as Se,i as Ce,l as we,n as Te,o as Ee,p as De,r as Oe,s as ke,t as Ae,u as je,v as Me,y as Ne}from"./follow-file-CXSEufj8.js";import{t as Pe}from"./square-pen-NShYDQ74.js";import{t as Fe}from"./terminal-DbJygh5J.js";import{t as Ie}from"./trash-2-Co21mefL.js";import{t as Le}from"./wrench-Pum_Z20m.js";import{t as Re}from"./x-DddVxTPq.js";import{f as ze,s as Be}from"./doc-paths-BkpejoFL.js";import{t as Ve}from"./badge-BG5JKjNK.js";import{t as He}from"./external-link-B4qPZwve.js";import{t as Ue}from"./skeleton-D4wPMdlV.js";import{t as We}from"./textarea-dRxJ8TN6.js";import{n as Ge}from"./agent-presence-BymGPyOl.js";import{i as Ke,n as qe}from"./chunk-BO2N2NFS-CHdHgk-M.js";import{n as Je}from"./libesm-CKzT_-OB.js";import{a as Ye,d as Xe,f as Ze,n as Qe,p as $e,r as et,s as tt,u as nt}from"./thread-client-fD965i1D.js";import{n as rt}from"./thread-draft-staging-BEPXwAou.js";var it=V(`folder-input`,[[`path`,{d:`M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1`,key:`fm4g5t`}],[`path`,{d:`M2 13h10`,key:`pgb2dq`}],[`path`,{d:`m9 16 3-3-3-3`,key:`6m91ic`}]]),at=V(`mouse-pointer-2`,[[`path`,{d:`M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z`,key:`edeuup`}]]),ot=V(`shuffle`,[[`path`,{d:`m18 14 4 4-4 4`,key:`10pe0f`}],[`path`,{d:`m18 2 4 4-4 4`,key:`pucp1d`}],[`path`,{d:`M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22`,key:`1ailkh`}],[`path`,{d:`M2 6h1.972a4 4 0 0 1 3.6 2.2`,key:`km57vx`}],[`path`,{d:`M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45`,key:`os18l9`}]]),st=V(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),Y=h(),ct=new RegExp([`bypass`,`acceptedits`,`fullaccess`,`autoedit`,`yolo`,`danger`,`fullauto`,`autoaccept`,`autoapprove`,`autorun`,`skippermission`,`noconfirm`,`noprompt`,`unrestricted`,`allowall`].join(`|`)),lt=new Set([`auto`]);function ut(e){return e.toLowerCase().replace(/[^a-z]/g,``)}function dt(e){let t=ut(e.id),n=ut(e.name??``);return lt.has(t)||lt.has(n)?!0:ct.test(t)||ct.test(n)}var ft={"claude-acp":`asks`,"codex-acp":`self-managed`,cursor:`self-managed`,"pi-acp":`autonomous`};function pt(e,t,n){let r=n??(t==null?null:t.availableModes.find(e=>e.id===t.currentModeId)??null),i=ft[e];return i===void 0?t!=null&&t.availableModes.length>0?`self-managed`:`unknown`:i===`asks`&&r!==null&&dt(r)?`self-managed`:i}var X=e(f(),1),Z=n();function mt({defaultTagName:e,props:t,render:n,state:r={},stateAttributesMapping:i}){let a=ht(gt(r,i),t);if(!n)return X.createElement(e,a);if(typeof n==`function`)return n(a,r);if(!X.isValidElement(n))return null;let o=n.props,s={...ht(a,o),ref:yt(a.ref,o.ref)};return X.cloneElement(n,s)}function ht(...e){let t={};for(let n of e){if(!n)continue;let e=n;for(let n of Object.keys(e)){let r=e[n];if(r===void 0)continue;let i=t[n];n===`className`?t[n]=[i,r].filter(Boolean).join(` `):n===`style`?t[n]={...i,...r}:n===`ref`?t[n]=yt(i,r):vt(n)&&typeof i==`function`&&typeof r==`function`?t[n]=_t(r,i):t[n]=r}}return t}function gt(e,t){let n={};for(let r of Object.keys(e)){let i=e[r],a=t?.[r]?.(i);if(a){Object.assign(n,a);continue}if(r===`slot`){n[`data-slot`]=i;continue}let o=`data-${String(r).replace(/[A-Z]/g,e=>`-${e.toLowerCase()}`)}`;typeof i==`boolean`?n[o]=i?``:void 0:i!=null&&(n[o]=String(i))}return n}function _t(e,t){return function(n){e(n),n.defaultPrevented||t(n)}}function vt(e){return/^on[A-Z]/.test(e)}function yt(...e){let t=e.filter(Boolean);if(t.length!==0)return e=>{for(let n of t)typeof n==`function`?n(e):n&&(n.current=e)}}var bt=8,xt=64,St=0,Ct=.5,wt=180,Tt=new Set([`ArrowDown`,`ArrowUp`,`End`,`Home`,`PageDown`,`PageUp`,` `]),Et={start:!1,end:!1},Dt={currentAnchorId:null,visibleMessageIds:[]};function Ot({content:e,scrollEdgeThreshold:t,spacer:n,viewport:r}){if(!r||!e)return Et;let i=Bt({content:e,spacer:n,viewport:r});return{start:r.scrollTop>t,end:i-r.scrollTop-r.clientHeight>t}}function kt({content:e,scrollMargin:t,scrollPreviousItemPeek:n,spacer:r,viewport:i,visibleMessageIds:a}){if(!e||!i)return Dt;let o=i.getBoundingClientRect(),s=o.top+t+n,c=typeof IntersectionObserver>`u`,l=[],u=null;for(let t of At(e,r)){let e=t.dataset.messageId;if(!e)continue;let n=t.dataset.scrollAnchor===`true`,r=n||c?t.getBoundingClientRect():null;(c&&r?r.bottom>s&&r.top<o.bottom:a.has(e))&&l.push(e),n&&r&&r.top<=s+Ct&&(u=e)}return l.length===0&&u===null?Dt:{currentAnchorId:u,visibleMessageIds:l}}function At(e,t){return Array.from(e.children).filter(e=>e instanceof HTMLElement&&e!==t)}function jt(e,t){for(let n=t;n<e.length;n++){let t=e[n];if(t?.dataset.scrollAnchor===`true`)return t}return null}function Mt(e,t){for(let n of e)if(n.dataset.scrollAnchor===`true`&&!t.has(n))return n;return null}function Nt(e,t){let n=0;for(let r=t;r<e.length;r++)if(e[r]?.dataset.scrollAnchor===`true`&&(n+=1,n>1))return!0;return!1}function Pt(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n?.dataset.scrollAnchor===`true`)return n}return null}function Ft({content:e,spacer:t,viewport:n}){let r=n.getBoundingClientRect();for(let n of At(e,t)){if(!n.dataset.messageId)continue;let e=n.getBoundingClientRect();if(e.bottom>r.top&&e.top<r.bottom)return n}return null}function It({align:e,element:t,scrollMargin:n,spacer:r,viewport:i}){let a=Lt(t,i),o=t.getBoundingClientRect().height,s=Ut(r);if(e===`center`){let e=Math.max(0,i.clientHeight-s.start-s.end);return a-s.start-(e-o)/2-n}if(e===`end`)return a-i.clientHeight+o+s.end+n;if(e===`nearest`){let e=a+o,t=i.scrollTop+s.start,r=i.scrollTop+i.clientHeight-s.end;return a>=t&&e<=r?i.scrollTop:a<t?a-s.start-n:e-i.clientHeight+s.end+n}return a-s.start-n}function Lt(e,t){let n=e.getBoundingClientRect(),r=t.getBoundingClientRect();return n.top-r.top+t.scrollTop}function Rt(e,t){return e.getBoundingClientRect().top-t.getBoundingClientRect().top}function zt({content:e,scrollTop:t,spacer:n,viewport:r}){let i=Bt({content:e,spacer:n,viewport:r});return t+r.clientHeight-i}function Bt({content:e,spacer:t,viewport:n}){let r=At(e,t),i=Ht(e),a=n.getBoundingClientRect(),o=n.scrollTop,s=i.start+i.end;for(let e of r){let t=e.getBoundingClientRect();s=Math.max(s,t.bottom-a.top+o+i.end)}return s}function Vt(e){return Math.max(0,e.scrollHeight-e.clientHeight)}function Ht(e){let t=window.getComputedStyle(e);return{end:Gt(t.paddingBlockEnd||t.paddingBottom),start:Gt(t.paddingBlockStart||t.paddingTop)}}function Ut(e){let t=e?.parentElement;return t?Ht(t):{end:0,start:0}}function Wt(e){if(!e)return 0;let t=window.getComputedStyle(e);return Gt(t.rowGap===`normal`?t.gap:t.rowGap)}function Gt(e){if(!e)return 0;let t=Number.parseFloat(e);return Number.isFinite(t)?t:0}function Kt({refs:e,commitScrollState:t,scheduleStateCommit:n,scheduleVisibilitySync:r}){let{streamingTurnRef:i,autoScrollRef:a,autoscrollingRef:o,autoscrollingTimeoutRef:s,contentRef:c,defaultScrollPositionAppliedRef:l,itemCountRef:u,messageElementsRef:d,modeRef:f,pendingScrollToMessageRef:p,prependRestoreRef:m,scrollMarginRef:h,scrollPreviousItemPeekRef:g,spacerGapRef:_,spacerHeightRef:v,spacerRef:y,viewportRef:b}=e,x=X.useCallback(e=>{s.current!==null&&(window.clearTimeout(s.current),s.current=null),o.current!==e&&(o.current=e,t()),e&&(s.current=window.setTimeout(()=>{s.current=null,o.current=!1,t()},wt))},[t]),S=X.useCallback(e=>{let t=y.current;if(!t)return;let n=Math.max(0,Math.ceil(e));v.current!==n&&(v.current=n,t.hidden=n===0,t.style.height=`${n}px`,t.style.marginTop=n>0?`${-_.current}px`:``)},[]),C=X.useCallback((e,{behavior:r=`auto`,autoscrolling:i=!1}={})=>{let a=b.current;if(!a)return;let o=Math.max(0,e);if(Math.abs(a.scrollTop-o)<=Ct){a.scrollTop=o,t();return}i&&x(!0),a.scrollTo({top:o,behavior:r}),n()},[t,n,x]),w=X.useCallback(({behavior:e=`auto`}={})=>b.current?(S(0),i.current=null,f.current=`free-scrolling`,C(0,{behavior:e}),r(),!0):!1,[r,C,S]),T=X.useCallback(({behavior:e=`auto`}={})=>{let t=b.current;return t?(S(0),i.current=null,f.current=a.current?`following-bottom`:`free-scrolling`,C(Vt(t),{autoscrolling:!0,behavior:e}),r(),!0):!1},[r,C,S]),E=X.useCallback((e,{align:t=`start`,behavior:n=`auto`,scrollMargin:a=h.current}={},{keepPreviousPeek:o=!1}={})=>{let s=c.current,l=b.current;if(!s||!l||!s.contains(e))return!1;let u=It({align:t,element:e,scrollMargin:o?a+g.current:a,spacer:y.current,viewport:l});return S(zt({content:s,scrollTop:u,spacer:y.current,viewport:l})),m.current={element:e,viewportTop:Rt(e,l)},f.current=o?`anchored-to-message`:`settling-jump`,i.current=o?e:null,C(u,{behavior:n}),r(),!0},[r,C,S]),D=X.useCallback(()=>{let e=i.current;return!e||!e.isConnected||f.current!==`anchored-to-message`?!1:E(e,{align:`start`},{keepPreviousPeek:!0})},[E]),O=X.useCallback((e,t)=>{let n=d.current.get(e);return n?(l.current=!0,E(n,t)?(p.current=null,!0):(p.current={messageId:e,options:t},!0)):u.current===0?(p.current={messageId:e,options:t},l.current=!0,!0):!1},[E]);return{flushPendingScrollToMessage:X.useCallback(()=>{let e=p.current;if(!e)return!1;let t=d.current.get(e.messageId);return!t||!E(t,e.options)?!1:(p.current=null,l.current=!0,!0)},[E]),reanchorToAnchoredMessage:D,scrollToElement:E,scrollToEnd:T,scrollToMessage:O,scrollToStart:w}}function qt(e,t){let n=e,r=new Set;return{getSnapshot:()=>n,hasListeners:()=>r.size>0,setSnapshot:e=>{t(n,e)||(n=e,r.forEach(e=>e()))},subscribe:(e,t,n)=>{let i=r.size===0;return r.add(e),i&&t?.(),()=>{r.delete(e),r.size===0&&n?.()}}}}function Jt(e,t){return qt(e,t)}function Yt(){return qt(Dt,Zt)}function Xt(e,t){return e.start===t.start&&e.end===t.end}function Zt(e,t){return e.currentAnchorId!==t.currentAnchorId||e.visibleMessageIds.length!==t.visibleMessageIds.length?!1:e.visibleMessageIds.every((e,n)=>e===t.visibleMessageIds[n])}function Qt({autoScroll:e,scrollEdgeThreshold:t,scrollMargin:n,scrollPreviousItemPeek:r}){let i=X.useRef(e),a=X.useRef(!1),o=X.useRef(null),s=X.useRef(!1),c=X.useRef(t),l=X.useRef(0),u=X.useRef(null),d=X.useRef(0),f=X.useRef(e?`following-bottom`:`free-scrolling`),p=X.useRef(new Map),m=X.useRef(null),h=X.useRef(null),g=X.useRef(null),_=X.useRef(r),v=X.useRef(!0),y=X.useRef(null),b=X.useRef(n),x=X.useRef(null),S=X.useRef(0),C=X.useRef(0),w=X.useRef(null),T=X.useRef(null),E=X.useRef(null),D=X.useRef(null),O=X.useRef(null),k=X.useRef(null),A=X.useRef(null),j=X.useRef(null),M=X.useRef(new Set),N=X.useRef(new WeakSet);return E.current===null&&(E.current=Jt(Et,Xt)),j.current===null&&(j.current=Yt()),i.current=e,c.current=t,b.current=n,_.current=r,{autoScrollRef:i,autoscrollingRef:a,autoscrollingTimeoutRef:D,streamingTurnRef:g,contentRef:o,defaultScrollPositionAppliedRef:s,firstItemRef:u,itemCountRef:l,lastScrollTopRef:d,messageElementsRef:p,modeRef:f,pendingScrollFrameRef:x,pendingScrollToMessageRef:m,prependRestoreRef:h,preserveScrollOnPrependRef:v,rootRef:y,scrollEdgeThresholdRef:c,scrollMarginRef:b,scrollPreviousItemPeekRef:_,spacerGapRef:S,spacerHeightRef:C,spacerRef:w,stateFrameRef:T,stateStore:E.current,viewportRef:O,visibilityFrameRef:k,visibilityObserverRef:A,visibilityStore:j.current,visibleMessageIdsRef:M,handledScrollAnchorsRef:N}}function $t(e,t){return X.useCallback(n=>{e.current=n,n&&t()},[e,t])}function en({autoScroll:e=!1,defaultScrollPosition:t=`end`,scrollEdgeThreshold:n=bt,scrollPreviousItemPeek:r=xt,scrollMargin:i=St}){let a=Qt({autoScroll:e,scrollEdgeThreshold:n,scrollMargin:i,scrollPreviousItemPeek:r}),{streamingTurnRef:o,autoScrollRef:s,autoscrollingRef:c,autoscrollingTimeoutRef:l,contentRef:u,defaultScrollPositionAppliedRef:d,firstItemRef:f,itemCountRef:p,lastScrollTopRef:m,messageElementsRef:h,modeRef:g,pendingScrollFrameRef:_,pendingScrollToMessageRef:v,prependRestoreRef:y,preserveScrollOnPrependRef:b,rootRef:x,scrollEdgeThresholdRef:S,scrollMarginRef:C,scrollPreviousItemPeekRef:w,spacerGapRef:T,spacerHeightRef:E,spacerRef:D,stateFrameRef:O,stateStore:k,viewportRef:A,visibilityFrameRef:j,visibilityObserverRef:M,visibilityStore:N,visibleMessageIdsRef:P,handledScrollAnchorsRef:F}=a,ee=X.useRef(t);ee.current!==t&&(ee.current=t,d.current=!1);let I=X.useCallback(e=>{let t=x.current,n=A.current,r=[e.start&&`start`,e.end&&`end`].filter(Boolean).join(` `),i=c.current;for(let e of[t,n])e&&(r?e.setAttribute(`data-scrollable`,r):e.removeAttribute(`data-scrollable`),e.toggleAttribute(`data-autoscrolling`,i))},[]),te=X.useCallback(e=>{let t=A.current?.scrollTop??0,n=t<m.current-Ct;m.current=t,s.current&&!e.end&&g.current!==`settling-jump`&&g.current!==`anchored-to-message`?g.current=`following-bottom`:g.current===`following-bottom`&&e.end&&n&&!c.current&&(g.current=`free-scrolling`)},[]),L=X.useCallback(()=>{let e=Ot({content:u.current,scrollEdgeThreshold:S.current,spacer:D.current,viewport:A.current});te(e);let t=g.current===`following-bottom`?{...e,end:!1}:e;I(t),k.setSnapshot(t)},[te,k,I]),ne=X.useCallback(()=>{O.current===null&&(O.current=window.requestAnimationFrame(()=>{O.current=null,L()}))},[L]),R=X.useCallback(()=>{N.hasListeners()&&j.current===null&&(j.current=window.requestAnimationFrame(()=>{j.current=null,N.hasListeners()&&N.setSnapshot(kt({content:u.current,scrollMargin:C.current,scrollPreviousItemPeek:w.current,spacer:D.current,viewport:A.current,visibleMessageIds:P.current}))}))},[N]),{flushPendingScrollToMessage:re,reanchorToAnchoredMessage:ie,scrollToElement:ae,scrollToEnd:z,scrollToMessage:oe,scrollToStart:B}=Kt({refs:a,commitScrollState:L,scheduleStateCommit:ne,scheduleVisibilitySync:R}),se=X.useCallback(()=>{let e=y.current,t=A.current;if(!e||!t||!e.element.isConnected)return!1;let n=Rt(e.element,t)-e.viewportTop;return Math.abs(n)<=Ct?!1:(t.scrollTop+=n,e.viewportTop=Rt(e.element,t),ne(),R(),!0)},[ne,R]),V=X.useCallback(()=>{let e=u.current,t=A.current;if(!e||!t){y.current=null;return}let n=Ft({content:e,spacer:D.current,viewport:t});y.current=n?{element:n,viewportTop:Rt(n,t)}:null},[]),H=X.useCallback(()=>{_.current===null&&(_.current=window.requestAnimationFrame(()=>{_.current=null,re()&&V()}))},[V,re]),U=X.useCallback(()=>{if(!t||d.current||p.current===0)return!1;let e=!1;if(t===`last-anchor`){let t=u.current,n=A.current,r=t&&n?Pt(At(t,D.current)):null;if(!t||!n||!r)e=z({behavior:`auto`});else{let i=Lt(r,n);e=Bt({content:t,spacer:D.current,viewport:n})-i<=n.clientHeight?z({behavior:`auto`}):ae(r,{align:`start`},{keepPreviousPeek:!0})}}else e=t===`end`?z({behavior:`auto`}):B({behavior:`auto`});return e?(d.current=!0,!0):!1},[t,ae,z,B]),ce=X.useCallback(()=>{let e=u.current;if(!e)return;let t=At(e,D.current),n=p.current,r=f.current;p.current=t.length,f.current=t[0]??null,(()=>{if(re())return;if(n===0){if(U()||t.length>0&&s.current&&z({behavior:`auto`}))return;L(),R();return}let e=r?t.indexOf(r):-1;if(b.current&&e>0){se();return}if(t.length>n){let e=jt(t,n);if(e){if(s.current&&g.current===`following-bottom`&&Nt(t,n)){z({behavior:`auto`});return}ae(e,{align:`start`},{keepPreviousPeek:!0}),F.current.add(e);return}}if(t.length===n){let e=Mt(t,F.current);if(e){ae(e,{align:`start`},{keepPreviousPeek:!0}),F.current.add(e);return}}g.current===`following-bottom`&&s.current?z({behavior:`auto`}):(L(),R())})(),V()},[U,V,L,re,se,R,ae,z]),le=X.useCallback(()=>{if(g.current===`following-bottom`&&s.current){z({behavior:`auto`});return}let e=E.current;if(ie()){s.current&&e>0&&E.current===0&&z({behavior:`auto`});return}ne(),R()},[ie,ne,R,z]),W=X.useCallback(()=>{let e=A.current;if(!(!e||!N.hasListeners())){if(typeof IntersectionObserver>`u`){R();return}M.current||=new IntersectionObserver(e=>{for(let t of e){let e=t.target.dataset.messageId;e&&(t.isIntersecting?P.current.add(e):P.current.delete(e))}R()},{root:e,rootMargin:`${-(C.current+w.current)}px 0px 0px 0px`,threshold:[0,.01,.5,1]}),h.current.forEach(e=>{M.current?.observe(e)}),R()}},[R,N]),G=X.useCallback(()=>{j.current!==null&&(window.cancelAnimationFrame(j.current),j.current=null),M.current?.disconnect(),M.current=null,P.current.clear(),N.setSnapshot(Dt)},[N]),ue=X.useCallback((e,t,n)=>{if(t){h.current.set(e,t),M.current?.observe(t),R(),v.current?.messageId===e&&H();return}n&&h.current.get(e)===n&&(h.current.delete(e),P.current.delete(e),M.current?.unobserve(n),R())},[H,R]),de=X.useCallback(()=>{(g.current===`following-bottom`||g.current===`anchored-to-message`||g.current===`settling-jump`)&&(o.current=null,g.current=`free-scrolling`)},[]),K=X.useCallback(()=>I(k.getSnapshot()),[k,I]),fe=$t(x,K),pe=$t(A,K),me=X.useCallback(e=>{u.current=e},[]),he=X.useCallback(e=>{D.current=e,T.current=Wt(e?.parentElement??null)},[]),ge=X.useCallback(()=>{L(),R(),V()},[V,L,R]),q=X.useMemo(()=>({handleContentChange:ce,handleResize:le,observeVisibility:W,preserveScrollOnPrependRef:b,scrollToEnd:z,scrollToMessage:oe,scrollToStart:B,setContentElement:me,setRootElement:fe,setSpacerElement:he,setViewportElement:pe,stateStore:k,syncAfterScroll:ge,unobserveVisibility:G,userScrollIntent:de,viewportRef:A,visibilityStore:N}),[ce,le,W,z,oe,B,me,fe,he,pe,k,ge,G,de,N]);return X.useLayoutEffect(()=>{U()},[U]),X.useEffect(()=>()=>{O.current!==null&&(window.cancelAnimationFrame(O.current),O.current=null),j.current!==null&&(window.cancelAnimationFrame(j.current),j.current=null),l.current!==null&&(window.clearTimeout(l.current),l.current=null),_.current!==null&&(window.cancelAnimationFrame(_.current),_.current=null),M.current?.disconnect(),M.current=null},[]),X.useLayoutEffect(()=>{if(e&&g.current===`following-bottom`&&p.current>0){z({behavior:`auto`});return}L()},[e,L,z]),{context:q,registerMessage:ue}}function tn(e){let t=X.useRef(e);return t.current=e,t}var nn=X.createContext(null),rn=X.createContext(null);function an(){let e=X.useContext(nn);if(!e)throw Error(`useMessageScroller must be used within a MessageScroller.`);return e}function on(){let e=X.useContext(rn);if(!e)throw Error(`MessageScrollerItem must be used within a MessageScroller.`);return e}function sn(){let{scrollToEnd:e,scrollToMessage:t,scrollToStart:n}=an();return X.useMemo(()=>({scrollToEnd:e,scrollToMessage:t,scrollToStart:n}),[e,t,n])}function cn({autoScroll:e=!1,children:t,defaultScrollPosition:n=`end`,scrollEdgeThreshold:r,scrollPreviousItemPeek:i,scrollMargin:a}){let{context:o,registerMessage:s}=en({autoScroll:e,defaultScrollPosition:n,scrollEdgeThreshold:r,scrollPreviousItemPeek:i,scrollMargin:a});return(0,Z.jsx)(nn.Provider,{value:o,children:(0,Z.jsx)(rn.Provider,{value:s,children:t})})}function ln({children:e,...t}){let{setRootElement:n}=an();return(0,Z.jsx)(`div`,{ref:n,...t,children:e})}function un({"aria-label":e,children:t,onKeyDown:n,onScroll:r,onTouchMove:i,onWheel:a,preserveScrollOnPrepend:o=!0,ref:s,role:c,tabIndex:l,...u}){let{handleResize:d,preserveScrollOnPrependRef:f,setViewportElement:p,syncAfterScroll:m,userScrollIntent:h,viewportRef:g}=an();f.current=o;let _=X.useCallback(e=>{p(e),yt(s)?.(e)},[s,p]);function v(e){m(),r?.(e)}function y(e){h(),a?.(e)}function b(e){h(),i?.(e)}function x(e){Tt.has(e.key)&&h(),n?.(e)}return X.useEffect(()=>{let e=g.current;if(!e||typeof ResizeObserver>`u`)return;let t=0,n=new ResizeObserver(()=>{window.cancelAnimationFrame(t),t=window.requestAnimationFrame(d)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.disconnect()}},[d,g]),(0,Z.jsx)(`div`,{ref:_,role:c??`region`,"aria-label":e??`Messages`,tabIndex:l??0,onKeyDown:x,onScroll:v,onTouchMove:b,onWheel:y,...u,children:t})}function dn({"aria-relevant":e,children:t,ref:n,role:r,spacerClassName:i,...a}){let{handleContentChange:o,handleResize:s,setContentElement:c,setSpacerElement:l}=an(),u=X.useRef(null),d=X.useCallback(e=>{u.current=e,c(e),yt(n)?.(e)},[n,c]);return X.useLayoutEffect(()=>{let e=u.current;if(!e||(o(),typeof MutationObserver>`u`))return;let t=new MutationObserver(()=>{o()});return t.observe(e,{childList:!0}),()=>t.disconnect()},[o]),X.useEffect(()=>{let e=u.current;if(!e||typeof ResizeObserver>`u`)return;let t=0,n=new ResizeObserver(()=>{window.cancelAnimationFrame(t),t=window.requestAnimationFrame(s)});return n.observe(e),()=>{window.cancelAnimationFrame(t),n.disconnect()}},[s]),(0,Z.jsxs)(`div`,{ref:d,role:r??`log`,"aria-relevant":e??`additions`,...a,children:[t,(0,Z.jsx)(`div`,{ref:l,"aria-hidden":`true`,"data-message-scroller-spacer":``,hidden:!0,className:i})]})}function fn({messageId:e,ref:t,scrollAnchor:n=!1,...r}){let i=on(),a=X.useRef(null);return(0,Z.jsx)(`div`,{ref:X.useCallback(n=>{let r=a.current;a.current=n,e&&i(e,n,r),yt(t)?.(n)},[e,t,i]),"data-message-id":e,"data-scroll-anchor":n?`true`:`false`,...r})}function pn({behavior:e=`smooth`,children:t,direction:n=`end`,onClick:r,render:i,tabIndex:a,type:o=`button`,...s}){let{scrollToEnd:c,scrollToStart:l,stateStore:u}=an(),d=tn(r),f=X.useCallback(e=>u.subscribe(e),[u]),p=X.useCallback(()=>{let e=u.getSnapshot();return n===`start`?e.start:e.end},[n,u]),m=X.useSyncExternalStore(f,p,p),h=X.useCallback(t=>{m&&(d.current?.(t),t.defaultPrevented||(t.currentTarget.blur(),n===`start`?l({behavior:e}):c({behavior:e})))},[e,n,m,d,c,l]);return mt({defaultTagName:`button`,props:ht({type:o,inert:!m,tabIndex:m?a:-1,children:t??(0,Z.jsxs)(`span`,{children:[`Scroll to `,n]}),onClick:h},s),render:i,state:{active:m,direction:n},stateAttributesMapping:{active:e=>({"data-active":e?`true`:`false`})}})}var mn={Provider:cn,Root:ln,Viewport:un,Content:dn,Item:fn,Button:pn};function hn(e){let t=(0,Y.c)(2),n;return t[0]===e?n=t[1]:(n=(0,Z.jsx)(mn.Provider,{...e}),t[0]=e,t[1]=n),n}function gn(e){let t=(0,Y.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=v(`group/message-scroller relative flex size-full min-h-0 flex-col overflow-hidden`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,Z.jsx)(mn.Root,{"data-slot":`message-scroller`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function _n(e){let t=(0,Y.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=v(`size-full min-h-0 min-w-0 scrollbar-thin overflow-y-auto overscroll-contain contain-content data-autoscrolling:scrollbar-thumb-transparent data-autoscrolling:scrollbar-track-transparent`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,Z.jsx)(mn.Viewport,{"data-slot":`message-scroller-viewport`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function vn(e){let t=(0,Y.c)(8),n,r;t[0]===e?(n=t[1],r=t[2]):({className:n,...r}=e,t[0]=e,t[1]=n,t[2]=r);let i;t[3]===n?i=t[4]:(i=v(`flex h-max min-h-full flex-col gap-6`,n),t[3]=n,t[4]=i);let a;return t[5]!==r||t[6]!==i?(a=(0,Z.jsx)(mn.Content,{"data-slot":`message-scroller-content`,className:i,...r}),t[5]=r,t[6]=i,t[7]=a):a=t[7],a}function yn(e){let t=(0,Y.c)(10),n,r,i;t[0]===e?(n=t[1],r=t[2],i=t[3]):({className:n,scrollAnchor:i,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i);let a=i===void 0?!1:i,o;t[4]===n?o=t[5]:(o=v(`min-w-0 shrink-0 [contain-intrinsic-size:auto_10rem] [content-visibility:auto]`,n),t[4]=n,t[5]=o);let s;return t[6]!==r||t[7]!==a||t[8]!==o?(s=(0,Z.jsx)(mn.Item,{"data-slot":`message-scroller-item`,scrollAnchor:a,className:o,...r}),t[6]=r,t[7]=a,t[8]=o,t[9]=s):s=t[9],s}function bn(e){let t=(0,Y.c)(25),n,r,i,a,o,s,c;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6],c=t[7]):({direction:o,className:r,children:n,render:a,variant:s,size:c,...i}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a,t[5]=o,t[6]=s,t[7]=c);let l=o===void 0?`end`:o,u=s===void 0?`secondary`:s,d=c===void 0?`icon-sm`:c,f;t[8]===r?f=t[9]:(f=v(`absolute inset-s-1/2 -translate-x-1/2 border-border bg-background text-foreground transition-[translate,scale,opacity] duration-200 hover:bg-muted hover:text-foreground data-[active=false]:pointer-events-none data-[active=false]:scale-95 data-[active=false]:opacity-0 data-[active=false]:duration-400 data-[active=false]:ease-[cubic-bezier(0.7,0,0.84,0)] data-[active=true]:translate-y-0 data-[active=true]:scale-100 data-[active=true]:opacity-100 data-[active=true]:ease-[cubic-bezier(0.23,1,0.32,1)] data-[direction=end]:bottom-4 data-[direction=end]:data-[active=false]:translate-y-full data-[direction=start]:top-4 data-[direction=start]:data-[active=false]:-translate-y-full rtl:translate-x-1/2 data-[direction=start]:[&_svg]:rotate-180`,r),t[8]=r,t[9]=f);let m;t[10]!==a||t[11]!==d||t[12]!==u?(m=a??(0,Z.jsx)(b,{variant:u,size:d}),t[10]=a,t[11]=d,t[12]=u,t[13]=m):m=t[13];let h;t[14]!==n||t[15]!==l?(h=n??(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(H,{"aria-hidden":`true`}),(0,Z.jsx)(`span`,{className:`sr-only`,children:l===`end`?(0,Z.jsx)(p,{id:`EQXPXf`}):(0,Z.jsx)(p,{id:`b1FDss`})})]}),t[14]=n,t[15]=l,t[16]=h):h=t[16];let g;return t[17]!==l||t[18]!==i||t[19]!==d||t[20]!==f||t[21]!==m||t[22]!==h||t[23]!==u?(g=(0,Z.jsx)(mn.Button,{"data-slot":`message-scroller-button`,"data-direction":l,"data-variant":u,"data-size":d,direction:l,className:f,render:m,...i,children:h}),t[17]=l,t[18]=i,t[19]=d,t[20]=f,t[21]=m,t[22]=h,t[23]=u,t[24]=g):g=t[24],g}var xn=new Map,Sn=0;function Cn(){return typeof performance<`u`&&typeof performance.now==`function`?performance.now():Date.now()}function wn(){let e=Cn();for(let[t,n]of xn)t((e-n)/1e3);if(xn.size===0){Sn=0;return}Sn=requestAnimationFrame(wn)}function Tn(e){return xn.set(e,Cn()),Sn===0&&typeof requestAnimationFrame==`function`&&(Sn=requestAnimationFrame(wn)),()=>{xn.delete(e),xn.size===0&&Sn!==0&&(cancelAnimationFrame(Sn),Sn=0)}}var Q=40,En=15,Dn=15,$=12.4,On={blobby:0,triangle:1,square:2,sparkle:3,pentagon:4,hexagon:5,dot:6,star5:7,clover:8,star6:9,scallop:10,comma:11,diamond:12,cloud:13},kn=`M15.34 2.91C15.96 2.77 16.69 2.65 17.33 2.63C17.97 2.62 18.72 2.71 19.36 2.84C20.00 2.97 20.79 3.10 21.33 3.44C21.88 3.79 22.38 4.46 22.75 5.01C23.12 5.56 23.42 6.30 23.66 6.89C23.90 7.49 24.06 8.18 24.26 8.73C24.45 9.28 24.66 9.84 24.89 10.34C25.12 10.84 25.39 11.36 25.68 11.85C25.97 12.34 26.46 12.87 26.71 13.41C26.96 13.94 27.12 14.61 27.26 15.21C27.39 15.80 27.54 16.52 27.55 17.14C27.56 17.76 27.43 18.47 27.30 19.09C27.16 19.71 26.99 20.43 26.72 21.01C26.46 21.58 26.05 22.20 25.64 22.69C25.22 23.17 24.65 23.63 24.15 24.02C23.66 24.41 23.09 24.82 22.55 25.14C22.02 25.45 21.39 25.74 20.84 25.99C20.28 26.25 19.65 26.52 19.08 26.70C18.50 26.89 17.83 27.05 17.23 27.15C16.63 27.26 15.95 27.34 15.34 27.37C14.73 27.39 14.03 27.40 13.42 27.33C12.81 27.26 12.12 27.10 11.54 26.92C10.95 26.73 10.30 26.47 9.75 26.18C9.20 25.90 8.62 25.51 8.11 25.15C7.61 24.80 7.06 24.37 6.60 23.94C6.15 23.52 5.68 23.00 5.28 22.52C4.89 22.03 4.47 21.45 4.13 20.92C3.79 20.38 3.41 19.75 3.16 19.16C2.91 18.57 2.68 17.86 2.56 17.23C2.45 16.60 2.42 15.85 2.45 15.21C2.48 14.56 2.60 13.83 2.76 13.22C2.93 12.60 3.18 11.91 3.47 11.35C3.77 10.80 4.24 10.23 4.63 9.75C5.01 9.27 5.45 8.74 5.89 8.34C6.34 7.95 6.93 7.61 7.40 7.27C7.88 6.94 8.38 6.57 8.83 6.25C9.29 5.93 9.79 5.56 10.27 5.25C10.75 4.95 11.29 4.61 11.81 4.33C12.32 4.05 12.92 3.74 13.49 3.52C14.05 3.29 14.73 3.05 15.34 2.91Z`,An=2.26,jn=`M76.4805 11.041C99.1124 7.04848 118.186 8.33731 134.31 14.4102C150.369 20.4588 164.177 31.5065 175.929 48.1846L176.446 48.9199C187.179 64.5695 195.653 90.2797 191.323 112.539C186.344 138.13 169.219 160.474 150.105 178.107C131.113 195.629 111.037 207.691 101.728 212.842C98.3779 214.693 93.3915 217.316 88.0508 217.316C85.74 217.316 83.6583 216.814 81.7607 215.855L81.3838 215.658C75.1451 212.251 73.9381 205.91 73.376 198.68L73.2705 197.222C72.953 192.5 72.5095 188.039 71.1416 184.247C69.5395 179.806 66.852 176.673 63.1406 174.227L63.1377 174.225C41.2846 159.832 21.8495 144.226 13.3828 121.439L13.3818 121.438L13.0146 120.427C5.46004 99.1404 7.95139 74.5467 20.4404 52.7568L20.4414 52.7549C33.2945 30.3176 54.4303 14.925 76.4785 11.041H76.4805Z`;function Mn(e){let t=t=>{let n=e[(t-1+Q)%Q],r=e[(t+1)%Q];return[(r[0]-n[0])*.16,(r[1]-n[1])*.16]},n=`M${e[0][0].toFixed(2)} ${e[0][1].toFixed(2)}`;for(let r=0;r<Q;r++){let i=e[r],a=e[(r+1)%Q],o=t(r),s=t((r+1)%Q);n+=`C${(i[0]+o[0]).toFixed(2)} ${(i[1]+o[1]).toFixed(2)} ${(a[0]-s[0]).toFixed(2)} ${(a[1]-s[1]).toFixed(2)} ${a[0].toFixed(2)} ${a[1].toFixed(2)}`}return`${n}Z`}function Nn(e,t){let n=e.map(e=>e[0]),r=e.map(e=>e[1]),i=Math.min(...n),a=Math.max(...n),o=Math.min(...r),s=Math.max(...r),c=t*2/Math.max(a-i,s-o);return e.map(e=>[En+(e[0]-(i+a)/2)*c,Dn+(e[1]-(o+s)/2)*c])}function Pn(e,t,n){let r=e;for(let e=0;e<t;e++){let e=r;r=e.map((t,r)=>{let i=e[(r-1+Q)%Q],a=e[(r+1)%Q];return[t[0]*(1-n)+(i[0]+a[0])/2*n,t[1]*(1-n)+(i[1]+a[1])/2*n]})}return r}function Fn(){if(typeof document>`u`)return null;let e=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);e.setAttribute(`width`,`0`),e.setAttribute(`height`,`0`),e.style.position=`absolute`,e.style.visibility=`hidden`;let t=document.createElementNS(`http://www.w3.org/2000/svg`,`path`);if(e.appendChild(t),document.body.appendChild(e),typeof t.getTotalLength!=`function`||typeof t.getPointAtLength!=`function`)return e.remove(),null;try{t.setAttribute(`d`,`M0 0L1 0`),t.getPointAtLength(0)}catch{return e.remove(),null}return t}function In(e){function t(t,n){e.setAttribute(`d`,t);let r=e.getTotalLength(),i=[];for(let t=0;t<n;t++){let a=e.getPointAtLength(r*t/n);i.push([a.x,a.y])}return i}function n(e){let t=0,n=0;for(let r of e)t+=r[0],n+=r[1];t/=e.length,n/=e.length;let r=Array(Q).fill(0),i=Array(Q).fill(1/0);for(let a of e){let e=Math.atan2(a[1]-n,a[0]-t),o=Math.hypot(a[0]-t,a[1]-n),s=Math.round((e+Math.PI/2)/(2*Math.PI)*Q);s=(s%Q+Q)%Q,o>r[s]&&(r[s]=o),o<i[s]&&(i[s]=o)}return{cx:t,cy:n,hi:r,lo:i}}function r(e,t,n){return e.map((e,r)=>{let i=-Math.PI/2+r*2*Math.PI/Q;return[t+Math.cos(i)*e,n+Math.sin(i)*e]})}function i(e,i){let{cx:a,cy:o,hi:s,lo:c}=n(t(e,1080)),l=s.map((e,t)=>(e+c[t])/2),u=s.reduce((e,t,n)=>e+(t-c[n]),0)/Q,d=r(l,a,o),f=d.map(e=>e[0]),p=d.map(e=>e[1]),m=i*2/Math.max(Math.max(...f)-Math.min(...f),Math.max(...p)-Math.min(...p));return{path:Mn(Nn(d,i)),strokeWidth:u*m}}function a(e,i){let{cx:a,cy:o,hi:s}=n(t(e,1400));return Mn(Nn(r(s.map((e,t)=>s[t]*.86+(s[(t-1+Q)%Q]+s[(t+1)%Q])*.07),a,o),i))}function o(e,n){return Mn(Nn(t(e,Q),n))}function s(e,n,r){return Mn(Pn(t(e,Q),n,r))}function c(e,n,r){return Mn(t(e,Q).map(e=>[En+(e[0]-En)*n,Dn+(e[1]-Dn)*r]))}function l(e,n,r=1){return Mn(t(e,Q).map((e,t)=>{let i=t*2*Math.PI/Q,a=1+r*(.035*Math.sin(i*3+n)+.025*Math.sin(i*5+n*2)+.018*Math.sin(i*2-n));return[En+(e[0]-En)*a,Dn+(e[1]-Dn)*a]}))}function u(e,t,n,r=0){let i=[];for(let n=0;n<e;n++){let a=-Math.PI/2+n*2*Math.PI/e+r;i.push([En+Math.cos(a)*t,Dn+Math.sin(a)*t])}let a=(e,t)=>{let n=t[0]-e[0],r=t[1]-e[1],i=Math.hypot(n,r);return[n/i,r/i]},o=``;for(let t=0;t<e;t++){let r=i[t],s=a(r,i[(t-1+e)%e]),c=a(r,i[(t+1)%e]),l=[r[0]+s[0]*n,r[1]+s[1]*n],u=[r[0]+c[0]*n,r[1]+c[1]*n];o+=`${t?`L`:`M`}${l[0].toFixed(2)} ${l[1].toFixed(2)}A${n} ${n} 0 0 1 ${u[0].toFixed(2)} ${u[1].toFixed(2)}`}return`${o}Z`}function d(e,n,r,i){let a=``;for(let t=0;t<e*2;t++){let i=-Math.PI/2+t*Math.PI/e,o=t%2?r:n;a+=`${t?`L`:`M`}${(En+Math.cos(i)*o).toFixed(2)} ${(Dn+Math.sin(i)*o).toFixed(2)}`}return Mn(Nn(Pn(t(`${a}Z`,Q),i,.3),n))}function f(e,n,r){let i=t=>{let n=-Math.PI/2+t*Math.PI/2;return[En+Math.cos(n)*e,Dn+Math.sin(n)*e]},a=`M${i(0)[0].toFixed(2)} ${i(0)[1].toFixed(2)}`;for(let e=0;e<4;e++){let t=-Math.PI/2+(e+.5)*Math.PI/2,r=[En+Math.cos(t)*n,Dn+Math.sin(t)*n],o=i((e+1)%4);a+=`Q${r[0].toFixed(2)} ${r[1].toFixed(2)} ${o[0].toFixed(2)} ${o[1].toFixed(2)}`}return Mn(Nn(Pn(t(`${a}Z`,Q),r,.34),e))}function p(e,t,n,r){let i=[];for(let a=0;a<Q;a++){let o=-Math.PI/2+a*2*Math.PI/Q,s=(1+Math.cos(e*(o+Math.PI/2)))/2,c=n+(t-n)*s**r;i.push([En+Math.cos(o)*c,Dn+Math.sin(o)*c])}return Mn(i)}function m(e){let t=[];for(let n=0;n<Q;n++){let r=-Math.PI/2+n*2*Math.PI/Q;t.push([En+Math.cos(r)*e,Dn+Math.sin(r)*e])}return Mn(t)}return{silhouette:i,hull:a,fit:o,soften:s,squeeze:c,wobble:l,poly:u,star:d,sparkle:f,lobed:p,dot:m,circle:(e,t,n)=>`M${e-n} ${t}a${n} ${n} 0 1 0 ${n*2} 0a${n} ${n} 0 1 0 ${-n*2} 0`}}function Ln(){let e=Fn();if(e===null)return null;try{let t=In(e),n=t.silhouette(y,12.55);return{paths:[n.path,t.wobble(t.poly(3,$*1.16,$*.5,.1),1.1),t.wobble(t.poly(4,$*1.02,$*.44),2.3),t.wobble(t.sparkle($*1.24,$*.1,3),3.7),t.wobble(t.poly(5,$*1,$*.38),4.9),t.wobble(t.poly(6,$*.98,$*.34),6.2),t.wobble(t.dot($*.34),2.8),t.wobble(t.star(5,$*1.14,$*.68,6),7.4),t.wobble(t.soften(t.lobed(4,$*1.16,$*.46,.5),3,.3),8.1),t.wobble(t.star(6,$*1.2,$*.42,4),9.3),t.wobble(t.lobed(8,$*1.06,$*.74,.6),10.5),t.wobble(t.soften(t.fit(jn,$*1.12),3,.22),11.7,.3),t.wobble(t.squeeze(t.poly(4,$*1.3,$*.2),.84,1),12.9),t.wobble(t.hull(t.circle(10.2,16,4.3)+t.circle(15,12,5.5)+t.circle(20,15.4,4.4)+t.circle(15,17.4,5.2),12.4),13.6)],strokeWidth:n.strokeWidth}}finally{e.ownerSVGElement?.remove()}}var Rn;function zn(){return Rn===void 0&&(Rn=Ln()),Rn}var Bn=/-?\d+(?:\.\d+)?/g;function Vn(e){return{fragments:e[0].split(Bn),numbers:e.map(e=>(e.match(Bn)??[]).map(Number))}}function Hn(e,t){let n=``;for(let r=0;r<t.length;r++)n+=e[r]+t[r].toFixed(2);return n+e[t.length]}function Un(e){return e<.5?2*e*e:1-2*(1-e)**2}var Wn=.58;function Gn(e,t,n,r){let i=t-1,a=n/i,o=e%n,s=Math.max(0,Math.min(i-1,Math.floor(o/a))),c=o%a/a;return{from:s,to:s+1,t:Un(r?Math.min(1,c/Wn):c)}}var Kn=On,qn=[Kn.blobby,Kn.triangle,Kn.square,Kn.sparkle,Kn.comma,Kn.pentagon,Kn.hexagon,Kn.blobby],Jn={[Kn.comma]:-2.9},Yn={leftCx:10.9,rightCx:18.1,cy:16,rx:1.25,ry:1.9},Xn=20,Zn=8.4;function Qn(e){let t=(0,Y.c)(22),{status:n,className:r,testId:i}=e,{_:a}=m(),o=(0,X.useRef)(null),s=(0,X.useRef)(null),c=je(),l,u;t[0]===c?(l=t[1],u=t[2]):(l=()=>{let e=o.current;if(e===null)return;if(c){e.setAttribute(`d`,kn),e.setAttribute(`stroke-width`,String(An)),s.current?.removeAttribute(`transform`);return}let t=zn();if(t===null)return;e.setAttribute(`stroke-width`,t.strokeWidth.toFixed(2));let n=Vn(t.paths),r=NaN,i=``;return Tn(t=>{let{from:a,to:o,t:c}=Gn(t,qn.length,Zn,!0),l=n.numbers[qn[a]],u=n.numbers[qn[o]],d=l.map((e,t)=>e+(u[t]-e)*c),f=Hn(n.fragments,d);f!==i&&(i=f,e.setAttribute(`d`,f));let p=s.current;if(p===null)return;let m=Jn[qn[a]]??0,h=m+((Jn[qn[o]]??0)-m)*c;h!==r&&(r=h,p.setAttribute(`transform`,`translate(0 ${h.toFixed(2)})`))})},u=[c],t[0]=c,t[1]=l,t[2]=u),(0,X.useEffect)(l,u);let[d,f]=(0,X.useState)(``),p,h;t[3]===a?(p=t[4],h=t[5]):(p=()=>{f(a({id:`DCSSZt`}))},h=[a],t[3]=a,t[4]=p,t[5]=h),(0,X.useEffect)(p,h);let g;t[6]===r?g=t[7]:(g=v(`ok-working-enter flex items-center gap-2`,r),t[6]=r,t[7]=g);let _;t[8]===d?_=t[9]:(_=(0,Z.jsx)(`span`,{"aria-live":`polite`,className:`sr-only`,role:`status`,children:d}),t[8]=d,t[9]=_);let y;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,Z.jsx)(`path`,{ref:o,d:kn,fill:`none`,stroke:`currentColor`,strokeWidth:An,strokeLinejoin:`round`,strokeLinecap:`round`}),t[10]=y):y=t[10];let b;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(b=(0,Z.jsx)(`span`,{className:`grid shrink-0 place-items-center text-muted-foreground/80`,children:(0,Z.jsx)(`svg`,{width:Xn,height:Xn,viewBox:`0 0 30 30`,xmlns:`http://www.w3.org/2000/svg`,"aria-hidden":`true`,className:`ok-working-pop ok-working-squint block shrink-0 overflow-visible`,children:(0,Z.jsxs)(`g`,{className:`ok-working-group`,children:[y,(0,Z.jsxs)(`g`,{ref:s,children:[(0,Z.jsx)(`ellipse`,{className:`ok-working-eye`,cx:Yn.leftCx,cy:Yn.cy,rx:Yn.rx,ry:Yn.ry,fill:`currentColor`}),(0,Z.jsx)(`ellipse`,{className:`ok-working-eye`,cx:Yn.rightCx,cy:Yn.cy,rx:Yn.rx,ry:Yn.ry,fill:`currentColor`})]})]})})}),t[11]=b):b=t[11];let x;t[12]===n?x=t[13]:(x=(0,Z.jsx)(`span`,{className:`shimmer`,children:n}),t[12]=n,t[13]=x);let S;t[14]!==n||t[15]!==x?(S=(0,Z.jsx)(`span`,{className:`ok-working-status text-sm`,children:x},n),t[14]=n,t[15]=x,t[16]=S):S=t[16];let C;return t[17]!==S||t[18]!==g||t[19]!==_||t[20]!==i?(C=(0,Z.jsxs)(`div`,{className:g,"data-testid":i,children:[_,b,S]}),t[17]=S,t[18]=g,t[19]=_,t[20]=i,t[21]=C):C=t[21],C}function $n(e){let t=[];for(let n of e.options)`value`in n?t.push(n):t.push(...n.options);return t}function er(e){let t=$n(e),n=t.find(t=>t.value===e.currentValue);if(n===void 0||n.value!==`default`||!n.description)return null;let r=t.find(e=>e.value!==n.value&&e.description===n.description);return r===void 0?null:z._({id:`GK5Ft_`,values:{0:r.name}})}function tr(e,t,n){return e===`claude-acp`&&t===`effort`&&n===`default`?z._({id:`3SWNP8`}):e===`codex-acp`&&t===`collaboration_mode`&&n===`default`?z._({id:`R6ABfU`}):null}var nr=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`]),rr=700*1024;function ir(e){if(e.kind===`unsupported-type`)return e.mimeType.startsWith(`image/`)?`Only PNG, JPEG, GIF, and WebP images are supported (got ${e.mimeType}).`:`Unsupported file type: ${e.mimeType||`unknown`}.`;if(e.kind===`outside-workspace`)return`${e.name} is outside the workspace. Move it into your project first.`;if(e.kind===`unknown-path`)return`${e.name} has no resolvable path — the agent can only read files inside the workspace.`;let t=(e.limitBytes/(1024*1024)).toFixed(1);return`File is too large (${(e.sizeBytes/(1024*1024)).toFixed(1)} MB) — max ${t} MB per attachment.`}async function ar(e){let t=await new Promise((t,n)=>{let r=new FileReader;r.onerror=()=>n(r.error??Error(`FileReader failed`)),r.onload=()=>{let e=r.result;if(typeof e!=`string`){n(Error(`FileReader returned non-string result`));return}t(e)},r.readAsDataURL(e)}),n=t.indexOf(`,`);return{data:n>=0?t.slice(n+1):t,mimeType:e.type||`application/octet-stream`,name:e.name||`image`,sizeBytes:e.size}}async function or(e){let t=e.type||``;if(!nr.has(t))return{ok:!1,error:{kind:`unsupported-type`,mimeType:t}};if(e.size>716800)return{ok:!1,error:{kind:`too-large`,sizeBytes:e.size,limitBytes:rr}};let n=await ar(e);return{ok:!0,part:{kind:`image`,data:n.data,mimeType:n.mimeType,name:n.name,sizeBytes:n.sizeBytes}}}function sr(e){return lr(e,e=>e.type.startsWith(`image/`))}function cr(e){return lr(e,e=>e.size>0)}function lr(e,t){if(e===null)return[];let n=new Set,r=[],i=e=>{if(e===null||!t(e))return;let i=`${e.name}|${e.size}|${e.lastModified??0}`;n.has(i)||(n.add(i),r.push(e))},a=e.items;if(a)for(let e=0;e<a.length;e+=1){let t=a[e];t&&t.kind===`file`&&i(t.getAsFile())}let o=e.files;if(o)for(let e=0;e<o.length;e+=1)i(o[e]??null);return r}function ur(e,t,n){let r=n===`\\`?e.toLowerCase():e,i=n===`\\`?t.toLowerCase():t,a=i.endsWith(n)?i:`${i}${n}`;if(r===i)return``;if(!r.startsWith(a))return null;let o=e.slice(a.length);return n===`\\`?o.replaceAll(`\\`,`/`):o}async function dr(e,t={}){if((e.type||``).startsWith(`image/`))return or(e);let n=t.absPathOf,r=t.workspaceContentDir,i=t.pathSeparator??`/`,a=e.name||`attachment`;if(n===void 0||r===void 0||r===``)return{ok:!1,error:{kind:`unknown-path`,name:a}};let o=n(e);if(o===null||o===``)return{ok:!1,error:{kind:`unknown-path`,name:a}};let s=ur(o,r,i);return s===null?{ok:!1,error:{kind:`outside-workspace`,name:a}}:{ok:!0,part:{kind:`file`,path:s,name:a}}}var fr=3,pr=fr*2+2;function mr(e){let t=e.split(`
3
- `);return t[t.length-1]===``&&t.pop(),t}function hr(e,t){if(e===null)return mr(t).map(e=>({type:`add`,text:e}));let n=[],r=Je(e,t);for(let[e,t]of r.entries()){let i=mr(t.value);if(t.added){for(let e of i)n.push({type:`add`,text:e});continue}if(t.removed){for(let e of i)n.push({type:`del`,text:e});continue}if(i.length<=pr){for(let e of i)n.push({type:`ctx`,text:e});continue}let a=e>0?i.slice(0,fr):[],o=e<r.length-1?i.slice(-fr):[];for(let e of a)n.push({type:`ctx`,text:e});n.push({type:`gap`,count:i.length-a.length-o.length});for(let e of o)n.push({type:`ctx`,text:e})}return n}var gr=/^\[[^\]]{1,32}\]\s*/,_r=/\bhttps?:\/\/\S+/,vr=/\b[A-Z0-9]{3,8}(?:-[A-Z0-9]{3,8})+\b/;function yr(e){try{let t=new URL(e);return`${t.host}${t.pathname===`/`?``:t.pathname}`}catch{return e}}function br(e){let t,n,r=[];for(let i of e){let e=i.replace(gr,``).trim();if(e===``)continue;let a=e.match(_r);if(n===void 0&&a!==null){n=a[0].replace(/[).,]+$/,``);let e=new URLSearchParams(n.split(`?`)[1]??``).get(`user_code`);e!==null&&e!==``&&(t=e)}if(t===void 0){let n=e.match(vr);n!==null&&(t=n[0])}let o=t!==void 0&&e.includes(t),s=n!==void 0&&e.includes(n);!o&&!s&&r.push(e)}return{...t===void 0?{}:{code:t},...n===void 0?{}:{url:n},lines:r}}var xr=/\x1b\[[0-9;?]*[ -/]*[@-~]|\x1b\][^\x07\x1b]*(?:\x07|\x1b\\)|\x1b[@-Z\\-_]/g;function Sr(e){return e.replace(xr,``)}function Cr(e){return Sr(e).split(`
4
- `).map(e=>{let t=e.replace(/\r+$/,``),n=t.lastIndexOf(`\r`);return n===-1?t:t.slice(n+1)}).join(`
5
- `)}var wr=new Set(ie),Tr=/^(?:open[-_ ]?knowledge|ok)$/,Er=/^(?:mcp[^a-z0-9]+)?(?:open[-_ ]?knowledge|ok)[^a-z0-9]+([a-z_]+)$/;function Dr(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:{}}function Or(e){return Er.exec(e.trim().toLowerCase())?.[1]??null}function kr(e,t){let n=J(Dr(t),`server`);if(n!==null&&!Tr.test(n.toLowerCase()))return null;let r=we(t),i=[Or(e),r?.tool??null].find(e=>e!==null&&wr.has(e));return i===void 0?null:{tool:i,args:r?.args??{}}}function Ar(e){return typeof e==`string`?e.trim()===``?[]:[e.trim()]:Array.isArray(e)?e.flatMap(Ar):typeof e==`object`&&e?Ar(e.path):[]}var jr=[`document`,`documents`,`folder`,`file`,`template`,`asset`,`path`,`from`,`name`];function Mr(e){for(let t of jr){let n=Ar(e[t]);if(n.length>0)return n}return[]}function Nr(e){return e.replace(/\.mdx?$/i,``)}var Pr=120;function Fr(e){if(typeof e!=`string`)return null;let t=e.replace(/\s+/g,` `).trim();return t===``?null:t.length>Pr?`${t.slice(0,Pr-1)}…`:t}function Ir(e,t){let n=Mr(t),r=n[0],i=n.length>1?z._({id:`C7waqI`,values:{0:n.length}}):r===void 0?null:Nr(r);switch(e){case`write`:return{glyph:`edit`,text:i===null?z._({id:`tLX6LY`}):z._({id:`MvWBwz`,values:{subject:i}})};case`edit`:return{glyph:`edit`,text:i===null?z._({id:`Fx9aOF`}):z._({id:`7aNk5D`,values:{subject:i}})};case`delete`:return{glyph:`delete`,text:i===null?z._({id:`DcFr-y`}):z._({id:`Gb_h4G`,values:{subject:i}})};case`move`:{let e=Ar(t.to)[0];if(i===null||e===void 0)return{glyph:`move`,text:z._({id:`RGptDW`})};let n=Nr(e);return{glyph:`move`,text:z._({id:`pbyEp3`,values:{subject:i,destination:n}})}}case`search`:{let e=Fr(t.query);return{glyph:`search`,text:e===null?z._({id:`EvXKHE`}):z._({id:`yWfjqS`,values:{query:e}})}}case`exec`:{let e=Fr(t.command);return{glyph:`execute`,text:e===null?z._({id:`FS4Udk`}):z._({id:`a5gwRt`,values:{command:e}})}}case`lint`:case`audit`:return{glyph:`check`,text:i===null?z._({id:`7S7FNA`}):z._({id:`TEJiKw`,values:{subject:i}})};case`links`:return{glyph:`link`,text:i===null?z._({id:`vallqD`}):z._({id:`KDrbNG`,values:{subject:i}})};case`history`:return{glyph:`history`,text:i===null?z._({id:`Ug2xzC`}):z._({id:`90-wKT`,values:{subject:i}})};case`config`:{let e=Fr(t.key);return{glyph:`settings`,text:e===null?z._({id:`ZwpggY`}):z._({id:`-oHckY`,values:{key:e}})}}case`skills`:return{glyph:`read`,text:z._({id:`4mp6Tv`})};case`install`:return{glyph:`install`,text:i===null?z._({id:`4ErgAf`}):z._({id:`WbWtif`,values:{subject:i}})};case`import`:{let e=Fr(t.skill)??Fr(t.source);return{glyph:`install`,text:e===null?z._({id:`DhT_PK`}):z._({id:`hCattk`,values:{source:e}})}}case`palette`:return{glyph:`read`,text:z._({id:`7czmD1`})};case`preview_url`:return{glyph:`fetch`,text:z._({id:`UL-9ej`})};case`share_link`:return{glyph:`share`,text:i===null?z._({id:`ABq-cq`}):z._({id:`ibE3-O`,values:{subject:i}})};case`checkpoint`:return{glyph:`history`,text:z._({id:`5b3WD-`})};case`conflicts`:return{glyph:`check`,text:z._({id:`i94lQe`})};case`resolve_conflict`:return{glyph:`edit`,text:i===null?z._({id:`_YWqV2`}):z._({id:`AeLo3p`,values:{subject:i}})};case`restore_version`:return{glyph:`restore`,text:i===null?z._({id:`caiyaU`}):z._({id:`hS0wC4`,values:{subject:i}})};default:return{glyph:`other`,text:z._({id:`vhGTWU`,values:{tool:e}})}}}var Lr={read:`read`,edit:`edit`,delete:`delete`,move:`move`,search:`search`,execute:`execute`,think:`think`,fetch:`fetch`,switch_mode:`switch_mode`};function Rr(e){let t=kr(e.title,e.rawInput);return t===null?{text:e.title,glyph:Lr[e.toolKind]??`other`}:Ir(t.tool,t.args)}var zr=new Map([{id:`shellscript`,aliases:[`bash`,`sh`,`shell`,`zsh`]},{id:`tsx`,aliases:[`typescript`,`ts`,`jsx`]},{id:`javascript`,aliases:[`js`]},{id:`json`,aliases:[`jsonc`]},{id:`python`,aliases:[`py`]},{id:`rust`,aliases:[`rs`]},{id:`go`,aliases:[]},{id:`css`,aliases:[]},{id:`html`,aliases:[]},{id:`markdown`,aliases:[`md`]},{id:`yaml`,aliases:[`yml`]},{id:`toml`,aliases:[]},{id:`sql`,aliases:[]},{id:`diff`,aliases:[]},{id:`dockerfile`,aliases:[`docker`]}].flatMap(e=>[[e.id,e.id],...e.aliases.map(t=>[t,e.id])])),Br=[`github-light`,`github-dark`],Vr=400,Hr=new Map,Ur=new Map;function Wr(e,t){return`${t}:${e.length}:${e.slice(0,100)}:${e.length>100?e.slice(-100):``}`}var Gr={name:`shiki`,type:`code-highlighter`,getSupportedLanguages:()=>Array.from(zr.keys()),supportsLanguage:e=>zr.has(e),getThemes:()=>Br,highlight(e,n){let r=zr.get(e.language)??`text`,i=Wr(e.code,r),a=Hr.get(i);if(a!==void 0)return a;if(n!==void 0){let e=Ur.get(i)??new Set;e.add(n),Ur.set(i,e)}return t(async()=>{let{tokenize:e}=await import(`./code-highlighter-impl-u_GiXGcZ.js`);return{tokenize:e}},__vite__mapDeps([0,1,2,3]),import.meta.url).then(async({tokenize:t})=>{let n=await t(e.code,r);if(Hr.size>=Vr){let e=Math.floor(Hr.size/2);for(let t of Hr.keys()){if(e===0)break;Hr.delete(t),--e}}Hr.set(i,n);let a=Ur.get(i);if(a!==void 0){Ur.delete(i);for(let e of a)e(n)}}).catch(e=>{Ur.delete(i),console.warn(`[code-highlighter] highlight failed, leaving plain text`,e)}),null}};function Kr(){return e=>{qr(e)}}function qr(e){let t=e.children;if(t===void 0)return;let n=[];for(let e of t){if(e.type===`text`&&e.value!==void 0&&e.value.includes(`
6
- `)){let t=e.value.split(/\r?\n/);for(let[e,r]of t.entries())e>0&&n.push({type:`break`}),r!==``&&n.push({type:`text`,value:r});continue}qr(e),n.push(e)}e.children=n}function Jr(e){let t=(0,Y.c)(13),{text:n}=e,r,i;t[0]===n?(r=t[1],i=t[2]):(r=[n],i=()=>(0,Z.jsx)(`span`,{className:`whitespace-pre-wrap`,children:n}),t[0]=n,t[1]=r,t[2]=i);let a;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(a=[...Object.values(qe),Kr],t[3]=a):a=t[3];let o,s,c;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(o={code:{copy:!0,download:!1},table:!1,mermaid:!1},s={code:Gr},c={enabled:!1},t[4]=o,t[5]=s,t[6]=c):(o=t[4],s=t[5],c=t[6]);let l;t[7]===n?l=t[8]:(l=(0,Z.jsx)(Ke,{className:`[&>*:first-child]:mt-0 [&>*:last-child]:mb-0 [&_pre_code>span]:block [&_ol]:list-outside [&_ul]:list-outside [&_ol]:ps-6 [&_ul]:ps-6 [&_code]:text-1sm [&_pre]:text-1sm [&_[data-streamdown=code-block-body]]:p-3 [&_[data-streamdown=code-block-body]]:max-h-80 [&_[data-streamdown=code-block-body]]:overflow-auto`,remarkPlugins:a,lineNumbers:!1,controls:o,plugins:s,linkSafety:c,children:n}),t[7]=n,t[8]=l);let u;return t[9]!==r||t[10]!==i||t[11]!==l?(u=(0,Z.jsx)(_,{resetKeys:r,fallbackRender:i,onError:Yr,children:l}),t[9]=r,t[10]=i,t[11]=l,t[12]=u):u=t[12],u}function Yr(e){console.warn(`[AgentMarkdown] markdown render failed, falling back to plain text`,e)}function Xr(e,t){if(!Ge(e))return null;let n=null;for(let r of e.getStates().values()){let e=r.agentPresence;if(e)for(let r of Object.values(e)){if(!r.currentDoc||re(r.currentDoc)||t-r.ts>=5e3||n!==null&&r.ts<=n.ts)continue;let e=Ee(r.currentDoc);e!==null&&(n={doc:e,ts:r.ts})}}return n}function Zr(e,t){let n=e[e.length-1];return n!==void 0&&n.doc===t.doc&&n.ts===t.ts?e:[...e,t]}function Qr(e,t){switch(e.kind){case`message`:return`msg:${t}:${e.messageId}`;case`tool_call`:return`tool:${e.toolCallId}`;case`permission`:return`perm:${e.requestId}`;case`runtime_consent`:return`consent:${e.requestId}`;case`notice`:return`notice:${t}`}}function $r(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(n.kind===`tool_call`&&(n.status===`in_progress`||n.status===`pending`))return n.toolKind}return null}function ei(){return[z._({id:`-VqsyR`}),z._({id:`UD_onR`}),z._({id:`D7hnvB`}),z._({id:`uF82hk`}),z._({id:`G0I7bo`}),z._({id:`eXPP7Z`}),z._({id:`juD53g`}),z._({id:`sqUrlK`}),z._({id:`3zDeFb`}),z._({id:`JAQ09e`}),z._({id:`JyW5aS`}),z._({id:`gmAH_b`})]}var ti={min:3500,max:7e3};function ni(e,t,n){return t<=1?0:(e+1+Math.floor(n*(t-1)))%t}function ri(e){return ti.min+e*(ti.max-ti.min)}function ii(e){let t=(0,Y.c)(3),[n,r]=(0,X.useState)(oi),i,a;return t[0]===e?(i=t[1],a=t[2]):(i=()=>{if(!e)return;r(Math.floor(Math.random()*ei().length));let t,n=()=>{t=setTimeout(()=>{r(ai),n()},ri(Math.random()))};return n(),()=>clearTimeout(t)},a=[e],t[0]=e,t[1]=i,t[2]=a),(0,X.useEffect)(i,a),n}function ai(e){return ni(e,ei().length,Math.random())}function oi(){return Math.floor(Math.random()*ei().length)}function si(e){switch(e){case`read`:return z._({id:`YGt-0e`});case`search`:return z._({id:`jC8Bv4`});case`fetch`:return z._({id:`bnOTEz`});case`edit`:return z._({id:`GwpcXB`});case`delete`:return z._({id:`CD8lBW`});case`execute`:return z._({id:`wc54KE`});case`think`:return z._({id:`BGoW3h`});default:return null}}function ci(e,t){let n=si(e);if(n!==null)return n;let r=ei();return r[(t%r.length+r.length)%r.length]}var li=1e4,ui=1400,di={read:D,edit:Pe,delete:Ie,move:it,search:i,execute:Fe,think:a,fetch:ue,switch_mode:ot,check:K,link:l,history:B,share:be,install:fe,settings:r,restore:ne,other:Le};function fi(e){return e instanceof Error?e.message:String(e)}function pi(e){return e.replace(/\s+Agent$/i,``)}var mi=(0,X.createContext)(null),hi=new Set([`connect`,`session-setup`,`auth-required`]);function gi(e){return hi.has(e.reason)}var _i=/^\s*(?:npm\s+(?:error|ERR!)\s+\S|error:\s*\S|Error:\s*\S|fatal:\s*\S|panic:\s*\S)/;function vi(e){let t=e.split(`
7
- `);for(let e=0;e<t.length;e+=1){let n=t[e]?.trim()??``;if(n!==``&&_i.test(n))return n}return null}var yi=/^\s*(?:npm\s+(?:error|ERR!)|error:|Error:|fatal:|panic:)/,bi=/^\s*(?:npm\s+warn|warning:|warn:)/;function xi(e){let t=e.split(`
8
- `);return t.map((e,n)=>{let r=`${n}:${e.slice(0,32)}`;return(0,Z.jsxs)(`span`,{className:yi.test(e)?`text-red-600 dark:text-red-400`:bi.test(e)?`text-amber-700 dark:text-amber-400`:``,children:[e,n<t.length-1?`
9
- `:``]},r)})}function Si(e){let t=(0,Y.c)(189),{info:n,active:r}=e,i=r===void 0?!0:r,{_:a}=m(),o=Ye(n.threadId),s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=et(),t[0]=s):s=t[0];let l=s,f=se(),p=(0,X.useRef)(null),h;t[1]===Symbol.for(`react.memo_cache_sentinel`)?(h=[],t[1]=h):h=t[1];let[g,_]=(0,X.useState)(h),[v,y]=(0,X.useState)(null),x;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(x=e=>y(e),t[2]=x):x=t[2];let S=x,C;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(C=[],t[3]=C):C=t[3];let[w,T]=(0,X.useState)(C),[E,D]=(0,X.useState)(!1),O=n.promptCapabilities?.image===!0,k;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(k=()=>p.current?.getContent().instruction.trim()??``,t[4]=k):k=t[4];let A=k,j;t[5]===g?j=t[6]:(j=()=>[...p.current?.getContent().attachments??[],...g],t[5]=g,t[6]=j);let M=j,N;t[7]!==a||t[8]!==O||t[9]!==n.agent.name||t[10]!==f?.contentDir||t[11]!==f?.pathSeparator?(N=async e=>{let t=typeof window<`u`&&window.okDesktop?window.okDesktop.getPathForFile:void 0,r=f?.contentDir,i=f?.pathSeparator,o=[],s=0;for(let t of e)(t.type||``).startsWith(`image/`)&&!O?s+=1:o.push(t);if(s>0){let e=pi(n.agent.name);ae.error(a({id:`QIzioS`,values:{agentName:e}}))}if(o.length===0)return;let c=o.map(Ai);T(e=>[...e,...c]);for(let e=0;e<o.length;e+=1){let n=o[e],s=c[e]?.id;if(!(n===void 0||s===void 0))try{let e=await dr(n,{absPathOf:t,workspaceContentDir:r,pathSeparator:i});T(e=>e.filter(e=>e.id!==s)),e.ok?_(t=>[...t,e.part]):ae.error(ir(e.error))}catch(e){let t=e;T(e=>e.filter(e=>e.id!==s));let r=n.name||`attachment`;console.error(`[ingestFiles] failed to read attachment`,r,t),ae.error(a({id:`euGaS0`,values:{fileName:r}}))}}},t[7]=a,t[8]=O,t[9]=n.agent.name,t[10]=f?.contentDir,t[11]=f?.pathSeparator,t[12]=N):N=t[12];let P=N,F;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(F=e=>{_(t=>t.filter((t,n)=>n!==e))},t[13]=F):F=t[13];let ee=F,[I,te]=(0,X.useState)(Ce),L=(0,X.useRef)(null),ne=(0,X.useRef)(null),R=(0,X.useRef)(Ae),re=(0,X.useRef)(!1),ie,z;t[14]===n.threadId?(ie=t[15],z=t[16]):(ie=()=>rt(n.threadId,e=>{p.current?.appendText(e)}),z=[n.threadId],t[14]=n.threadId,t[15]=ie,t[16]=z),(0,X.useEffect)(ie,z);let B=tt(n.threadId),V=n.status,H=n.archived===!0,U=B?.turnActive===!0&&!H,ce=ii(U),[le,W]=(0,X.useState)(!1),[G,ue]=(0,X.useState)(null),K=H?!le:V===`ready`&&!U,fe=V===`authenticating`,pe=V===`auth_required`||fe,q=!H&&(V===`error`||pe),[ve,be]=(0,X.useState)(!1),J=!H&&U,xe=ye(de()),Se=B===null?null:Oe(B.items,f,xe),{systemProvider:we}=u(),Ee;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(Ee=[],t[17]=Ee):Ee=t[17];let[De,je]=(0,X.useState)(Ee),Me;t[18]!==we?.awareness||t[19]!==U?(Me=()=>{if(!U){je([]);return}let e=we?.awareness,t=()=>{let t=Xr(e,Date.now());t!==null&&je(e=>Zr(e,t))};t();let n=typeof e==`object`&&e&&typeof e.on==`function`&&typeof e.off==`function`?e:null;return n?.on(`change`,t),()=>n?.off(`change`,t)},t[18]=we?.awareness,t[19]=U,t[20]=Me):Me=t[20];let Ne;t[21]!==we||t[22]!==U?(Ne=[U,we],t[21]=we,t[22]=U,t[23]=Ne):Ne=t[23],(0,X.useEffect)(Me,Ne);let Pe=Se??(De.length>0?De[De.length-1]?.doc??null:null),Fe=o?.lastSeq??null,[Ie,Le]=(0,X.useState)(!1),[Re,Ve]=(0,X.useState)(!1),He,Ue;t[24]===U?(He=t[25],Ue=t[26]):(He=()=>{U||(Le(!1),Ve(!1))},Ue=[U],t[24]=U,t[25]=He,t[26]=Ue),(0,X.useEffect)(He,Ue);let We,Ge;t[27]!==Ie||t[28]!==U?(We=()=>{if(!Ie||!U)return;let e=setTimeout(()=>Ve(!0),li);return()=>clearTimeout(e)},Ge=[Ie,U],t[27]=Ie,t[28]=U,t[29]=We,t[30]=Ge):(We=t[29],Ge=t[30]),(0,X.useEffect)(We,Ge);let Ke;t[31]!==n.queue||t[32]!==n.steer||t[33]!==n.threadId?(Ke=()=>{let e=[...n.steer===void 0?[]:[n.steer.content],...(n.queue??[]).map(ki)];e.length>0&&p.current?.appendText(e.join(`
10
-
11
- `)),l.cancel(n.threadId),Le(!0)},t[31]=n.queue,t[32]=n.steer,t[33]=n.threadId,t[34]=Ke):Ke=t[34];let qe=Ke,Je;t[35]!==M||t[36]!==n.threadId?(Je=()=>{let e=A(),t=M();e===``&&t.length===0||(l.steer(n.threadId,e,t.length>0?t:void 0),p.current?.clear(),_([]),T([]),L.current?.scrollToEnd())},t[35]=M,t[36]=n.threadId,t[37]=Je):Je=t[37];let Xe=Je,Ze,$e;t[38]===Fe?(Ze=t[39],$e=t[40]):(Ze=()=>{Fe!==null&&ne.current===null&&(ne.current=Fe)},$e=[Fe],t[38]=Fe,t[39]=Ze,t[40]=$e),(0,X.useEffect)(Ze,$e);let nt,it;t[41]===q?(nt=t[42],it=t[43]):(nt=()=>{q||be(!1)},it=[q],t[41]=q,t[42]=nt,t[43]=it),(0,X.useEffect)(nt,it);let at,ot;t[44]===U?(at=t[45],ot=t[46]):(at=()=>{U&&!re.current&&(R.current={...R.current,yielded:!1,reArmed:!0}),re.current=U},ot=[U],t[44]=U,t[45]=at,t[46]=ot),(0,X.useEffect)(at,ot);let st,ct;t[47]!==i||t[48]!==I||t[49]!==Pe||t[50]!==Fe||t[51]!==U?(st=()=>{if(!i||!I||Pe===null||!U||ne.current===null||Fe===null||Fe<=ne.current)return;let e=Te(Pe,Be(window.location.hash),R.current);R.current=e.state,e.navigateTo!==null&&window.location.assign(ze(e.navigateTo))},ct=[i,I,Pe,U,Fe],t[47]=i,t[48]=I,t[49]=Pe,t[50]=Fe,t[51]=U,t[52]=st,t[53]=ct):(st=t[52],ct=t[53]),(0,X.useEffect)(st,ct);let lt;t[54]===I?lt=t[55]:(lt=()=>{let e=!I;te(e),ke(e),e&&(R.current=Ae)},t[54]=I,t[55]=lt);let ut=lt,[dt,ft]=(0,X.useState)(null),pt=_e(),mt=he(),[ht,gt]=(0,X.useState)(!0),_t=pt>0&&ht,vt,yt;t[56]===Symbol.for(`react.memo_cache_sentinel`)?(vt=()=>c(()=>gt(!0)),yt=[],t[56]=vt,t[57]=yt):(vt=t[56],yt=t[57]),(0,X.useEffect)(vt,yt);let bt;t[58]!==H||t[59]!==n.threadId?(bt=(e,t,r)=>{let i=t===void 0?e:t,a=r===void 0?[]:r,o=a.length>0?a:void 0;return H?(W(!0),ue(null),ft(null),L.current?.scrollToEnd(),l.resumeThread(n.threadId,e,o).then(Oi).catch(e=>(ue(e instanceof Qe?e:new Qe(`internal`,e instanceof Error?e.message:String(e))),ft(i),!1)).finally(()=>W(!1))):(l.prompt(n.threadId,e,o),L.current?.scrollToEnd(),Promise.resolve(!0))},t[58]=H,t[59]=n.threadId,t[60]=bt):bt=t[60];let xt=bt,St,Ct;t[61]!==a||t[62]!==K||t[63]!==J||t[64]!==M||t[65]!==_t||t[66]!==xt?(St=()=>{let e=A(),t=M();if(K||J){if(_t){Ct(e).catch(Di);return}e===``&&t.length===0||(xt(e,e,t),p.current?.clear(),_([]),T([]))}},Ct=async(e,t)=>{let n=J;(await d({threadIds:t,resolve:!n,compose:t=>xt(ge(t.map(Ei),e),null)})).length!==0&&(n&&ae.info(a({id:`Eiowpn`})),p.current?.clear(),gt(!0))},t[61]=a,t[62]=K,t[63]=J,t[64]=M,t[65]=_t,t[66]=xt,t[67]=St,t[68]=Ct):(St=t[67],Ct=t[68]);let wt;t[69]!==K||t[70]!==J||t[71]!==Ct?(wt=e=>{(K||J)&&Ct(A(),e).catch(Ti)},t[69]=K,t[70]=J,t[71]=Ct,t[72]=wt):wt=t[72];let Tt=(0,X.useEffectEvent)(wt),Et;t[73]!==n.threadId||t[74]!==Tt?(Et=()=>oe((e,t)=>{e===n.threadId&&Tt(t)}),t[73]=n.threadId,t[74]=Tt,t[75]=Et):Et=t[75];let Dt;t[76]===n.threadId?Dt=t[77]:(Dt=[n.threadId],t[76]=n.threadId,t[77]=Dt),(0,X.useEffect)(Et,Dt);let Ot;t[78]!==a||t[79]!==n.agent.name||t[80]!==n.threadId?(Ot=()=>{be(!0),l.retryThread(n.threadId).catch(e=>{ae.error(a({id:`UJEFJY`,values:{0:n.agent.name,1:fi(e)}}))}).finally(()=>be(!1))},t[78]=a,t[79]=n.agent.name,t[80]=n.threadId,t[81]=Ot):Ot=t[81];let kt=Ot,At;t[82]===n.threadId?At=t[83]:(At=async e=>{await l.authenticateThread(n.threadId,e)},t[82]=n.threadId,t[83]=At);let jt=At,Mt;t[84]!==dt||t[85]!==n.agent.id||t[86]!==n.agent.source?(Mt=()=>{let e=A(),t=dt??(e===``?void 0:e);ue(null),ft(null),l.createThread({agent:{source:n.agent.source,id:n.agent.id},prompt:t}).catch(e=>{ue(e instanceof Qe?e:new Qe(`internal`,e instanceof Error?e.message:String(e))),ft(t??null)})},t[84]=dt,t[85]=n.agent.id,t[86]=n.agent.source,t[87]=Mt):Mt=t[87];let Nt=Mt,Pt,Ft,It,Lt,Rt,zt,Bt,Vt,Ht,Ut,Wt,Gt;if(t[88]!==a||t[89]!==H||t[90]!==jt||t[91]!==pe||t[92]!==q||t[93]!==I||t[94]!==v||t[95]!==n||t[96]!==P||t[97]!==B||t[98]!==ve||t[99]!==kt||t[100]!==fe||t[101]!==V||t[102]!==ce||t[103]!==ut||t[104]!==U){let e=B===null?[]:B.items.filter(wi),r=-1;if(q)for(let t=e.length-1;t>=0;--t){let n=e[t];if(n?.kind===`notice`&&n.failure!==null&&gi(n.failure)){r=t;break}}let i=e,o=null;if(pe&&!H)for(let e=i.length-1;e>=0;--e){let t=i[e];if(t?.kind===`notice`&&t.failure?.reason===`auth-required`){o=t.failure;break}}Pt=mi.Provider,Wt=S;let s;t[117]===Symbol.for(`react.memo_cache_sentinel`)?(s=e=>!e&&y(null),t[117]=s):s=t[117],t[118]===v?Gt=t[119]:(Gt=(0,Z.jsx)(va,{preview:v,onOpenChange:s}),t[118]=v,t[119]=Gt),Ft=`relative flex min-h-0 flex-1 flex-col text-gray-800 dark:text-gray-200`,It=``,t[120]===Symbol.for(`react.memo_cache_sentinel`)?(Lt=e=>{e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),D(!0))},t[120]=Lt):Lt=t[120],Rt=Ci,t[121]===Symbol.for(`react.memo_cache_sentinel`)?(zt=e=>{e.currentTarget===e.target&&D(!1)},t[121]=zt):zt=t[121],t[122]===P?Bt=t[123]:(Bt=e=>{let t=cr(e.dataTransfer);t.length!==0&&(e.preventDefault(),D(!1),P(t))},t[122]=P,t[123]=Bt),t[124]!==I||t[125]!==n||t[126]!==ut?(Vt=(0,Z.jsx)(Mi,{info:n,followFile:I,onToggleFollow:ut}),t[124]=I,t[125]=n,t[126]=ut,t[127]=Vt):Vt=t[127],t[128]===B?Ht=t[129]:(Ht=B!==null&&B.plan.length>0?(0,Z.jsx)($i,{plan:B.plan}):null,t[128]=B,t[129]=Ht),Ut=o!==null||B===null||e.length===0?(0,Z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-3 py-2 subtle-scrollbar scroll-fade-mask`,"data-testid":`agent-thread-transcript`,children:o===null?(0,Z.jsx)(Qi,{status:V,archived:H,agent:n.agent}):(0,Z.jsx)(`div`,{className:`flex min-h-full items-center justify-center`,children:(0,Z.jsx)(ua,{failure:o,agent:n.agent,agentName:pi(n.agent.name),signingIn:fe,signInOutput:n.signInOutput,showRetry:q,retryPending:ve,onRetry:kt,onAuthenticate:jt})})}):(0,Z.jsxs)(hn,{autoScroll:!0,defaultScrollPosition:`last-anchor`,children:[(0,Z.jsx)(ra,{apiRef:L}),(0,Z.jsxs)(gn,{className:`min-h-0 flex-1`,children:[(0,Z.jsx)(_n,{"aria-label":a({id:`vPEyDz`}),className:`px-3 py-2 subtle-scrollbar scroll-fade-mask`,"data-testid":`agent-thread-transcript`,children:(0,Z.jsxs)(vn,{className:`gap-2 [&>[data-tool-call]+[data-tool-call]]:-mt-1`,children:[e.map((t,i)=>{let a=Qr(t,i);return(0,Z.jsx)(yn,{messageId:a,className:`flex flex-col`,scrollAnchor:t.kind===`message`&&t.role===`user`,"data-tool-call":t.kind===`tool_call`?``:void 0,children:(0,Z.jsx)(ia,{item:t,threadId:n.threadId,agent:n.agent,actionable:!H&&V!==`exited`&&V!==`error`,streaming:U&&i===e.length-1,terminals:B.terminals,permissionsByToolCall:B.permissionsByToolCall,showRetry:i===r,retryPending:ve,onRetry:kt})},a)}),U?V===`awaiting_permission`?(0,Z.jsx)(`div`,{className:`flex items-center gap-2 px-1 py-1 text-muted-foreground text-sm shimmer`,"data-testid":`agent-thread-awaiting-permission`,children:(0,Z.jsx)(`span`,{children:a({id:`_gO_m8`})})}):(0,Z.jsx)(Qn,{status:ci($r(B.items),ce),className:`px-1 py-1`,testId:`agent-thread-working`}):V===`installing`||V===`spawning`?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-1 py-1 text-muted-foreground text-sm`,"data-testid":`agent-thread-starting`,children:[(0,Z.jsx)(me,{className:`size-3.5`,"aria-hidden":`true`}),(0,Z.jsx)(`span`,{className:`shimmer`,children:a({id:`l3zD7w`})})]}):null]})}),(0,Z.jsx)(bn,{direction:`end`})]})]}),t[88]=a,t[89]=H,t[90]=jt,t[91]=pe,t[92]=q,t[93]=I,t[94]=v,t[95]=n,t[96]=P,t[97]=B,t[98]=ve,t[99]=kt,t[100]=fe,t[101]=V,t[102]=ce,t[103]=ut,t[104]=U,t[105]=Pt,t[106]=Ft,t[107]=It,t[108]=Lt,t[109]=Rt,t[110]=zt,t[111]=Bt,t[112]=Vt,t[113]=Ht,t[114]=Ut,t[115]=Wt,t[116]=Gt}else Pt=t[105],Ft=t[106],It=t[107],Lt=t[108],Rt=t[109],zt=t[110],Bt=t[111],Vt=t[112],Ht=t[113],Ut=t[114],Wt=t[115],Gt=t[116];let Kt;t[130]!==a||t[131]!==H||t[132]!==n.steer?(Kt=n.steer!==void 0&&!H?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 border-t bg-muted/40 px-3 py-1.5 text-muted-foreground text-xs`,"data-testid":`agent-thread-steer-pending`,children:[(0,Z.jsx)(me,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),(0,Z.jsx)(`span`,{className:`shrink-0`,children:a({id:`PVSwOe`})}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-foreground/80`,children:n.steer.content})]}):null,t[130]=a,t[131]=H,t[132]=n.steer,t[133]=Kt):Kt=t[133];let qt;t[134]!==a||t[135]!==Re||t[136]!==n.threadId||t[137]!==U?(qt=Re&&U?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 border-amber-500/30 border-t bg-amber-500/5 px-3 py-1.5 text-amber-700 text-xs dark:text-amber-400`,"data-testid":`agent-thread-cancel-stalled`,children:[(0,Z.jsx)(`span`,{className:`flex-1`,children:a({id:`SkTkKV`})}),(0,Z.jsx)(b,{type:`button`,size:`sm`,variant:`destructive`,className:`h-6 text-xs`,onClick:()=>l.closeThread(n.threadId),"data-testid":`agent-thread-force-stop`,children:a({id:`16eIWu`})})]}):null,t[134]=a,t[135]=Re,t[136]=n.threadId,t[137]=U,t[138]=qt):qt=t[138];let Jt;t[139]!==a||t[140]!==H||t[141]!==n.agent||t[142]!==G||t[143]!==Nt?(Jt=H&&G!==null?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 border-amber-500/30 border-t bg-amber-500/5 px-3 py-1.5 text-amber-700 text-xs dark:text-amber-400`,"data-testid":`agent-thread-resume-failed`,children:[(0,Z.jsx)(`span`,{className:`flex-1`,children:G.code===`resume-unsupported`?a({id:`ms4r8V`,values:{0:n.agent.name}}):a({id:`2RnFoM`,values:{0:G.message}})}),(0,Z.jsx)(b,{type:`button`,size:`sm`,variant:`outline`,className:`h-6 shrink-0 text-xs`,onClick:Nt,"data-testid":`agent-thread-resume-fallback-new`,children:a({id:`hHR0tt`,values:{0:n.agent.name}})})]}):null,t[139]=a,t[140]=H,t[141]=n.agent,t[142]=G,t[143]=Nt,t[144]=Jt):Jt=t[144];let Yt=B?.tokenUsage??null,Xt,Zt;t[145]===Symbol.for(`react.memo_cache_sentinel`)?(Xt=()=>gt(!0),Zt=()=>gt(!1),t[145]=Xt,t[146]=Zt):(Xt=t[145],Zt=t[146]);let Qt;t[147]!==H||t[148]!==K||t[149]!==J||t[150]!==Ie||t[151]!==_t||t[152]!==O||t[153]!==n||t[154]!==P||t[155]!==g||t[156]!==w||t[157]!==qe||t[158]!==Xe||t[159]!==le||t[160]!==pt||t[161]!==mt||t[162]!==V||t[163]!==St||t[164]!==Yt||t[165]!==U?(Qt=(0,Z.jsx)(Za,{info:n,composerRef:p,onSubmit:St,canPrompt:K,canQueue:J,turnActive:U,cancelPending:Ie,onCancel:qe,onSteer:Xe,status:V,archived:H,resumePending:le,usage:Yt,selectedCommentCount:pt,selectedCommentDocs:mt,hasQueuedComments:_t,onAttachComments:Xt,onDismissComments:Zt,pendingAttachments:g,pendingUploads:w,imagesAccepted:O,onIngestImageFiles:P,onIngestAllFiles:P,onRemovePendingAttachment:ee}),t[147]=H,t[148]=K,t[149]=J,t[150]=Ie,t[151]=_t,t[152]=O,t[153]=n,t[154]=P,t[155]=g,t[156]=w,t[157]=qe,t[158]=Xe,t[159]=le,t[160]=pt,t[161]=mt,t[162]=V,t[163]=St,t[164]=Yt,t[165]=U,t[166]=Qt):Qt=t[166];let $t;t[167]===E?$t=t[168]:($t=E?(0,Z.jsx)(ro,{onDismiss:()=>D(!1)}):null,t[167]=E,t[168]=$t);let en;t[169]!==Ft||t[170]!==It||t[171]!==Lt||t[172]!==Rt||t[173]!==zt||t[174]!==Bt||t[175]!==Vt||t[176]!==Ht||t[177]!==Ut||t[178]!==Kt||t[179]!==qt||t[180]!==Jt||t[181]!==Qt||t[182]!==$t?(en=(0,Z.jsxs)(`div`,{className:Ft,"data-agent-thread-root":It,onDragEnter:Lt,onDragOver:Rt,onDragLeave:zt,onDrop:Bt,children:[Vt,Ht,Ut,Kt,qt,Jt,Qt,$t]}),t[169]=Ft,t[170]=It,t[171]=Lt,t[172]=Rt,t[173]=zt,t[174]=Bt,t[175]=Vt,t[176]=Ht,t[177]=Ut,t[178]=Kt,t[179]=qt,t[180]=Jt,t[181]=Qt,t[182]=$t,t[183]=en):en=t[183];let tn;return t[184]!==Pt||t[185]!==Wt||t[186]!==Gt||t[187]!==en?(tn=(0,Z.jsxs)(Pt,{value:Wt,children:[Gt,en]}),t[184]=Pt,t[185]=Wt,t[186]=Gt,t[187]=en,t[188]=tn):tn=t[188],tn}function Ci(e){e.dataTransfer?.types.includes(`Files`)&&(e.preventDefault(),e.dataTransfer.dropEffect=`copy`)}function wi(e){return e.kind!==`notice`||e.superseded!==!0}function Ti(e){console.warn(`[acp] panel comment send rejected unexpectedly`,e)}function Ei(e){return q(e.payload)}function Di(e){console.warn(`[acp] queued-comment send rejected unexpectedly`,e)}function Oi(){return!0}function ki(e){return e.content}function Ai(e){return{id:`${e.name}:${e.size}:${e.lastModified??0}:${Math.random().toString(36).slice(2,8)}`,name:e.name||`attachment`,mimeType:e.type||``}}function ji(e){let t=(0,Y.c)(6),{info:n}=e,{_:r}=m();if(pt(n.agent.id,n.modes)!==`autonomous`)return null;let i;t[0]!==r||t[1]!==n.agent.name?(i=r({id:`Soy_80`,values:{0:n.agent.name}}),t[0]=r,t[1]=n.agent.name,t[2]=i):i=t[2];let a=i,o;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(o=(0,Z.jsx)(`span`,{className:`inline-flex shrink-0 text-amber-500 dark:text-amber-400`,"data-testid":`agent-thread-posture`,children:(0,Z.jsx)(s,{className:`size-3.5`,"aria-hidden":`true`})}),t[3]=o):o=t[3];let c;return t[4]===a?c=t[5]:(c=(0,Z.jsxs)(C,{children:[(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(`span`,{tabIndex:0,role:`img`,"aria-label":a,className:`inline-flex rounded-sm outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,children:o})}),(0,Z.jsx)(S,{side:`bottom`,className:`max-w-64`,children:a})]}),t[4]=a,t[5]=c),c}function Mi(e){let t=(0,Y.c)(33),{info:n,followFile:r,onToggleFollow:i}=e,{_:a}=m(),o;t[0]===n.title?o=t[1]:(o=(0,Z.jsx)(`span`,{className:`min-w-0 truncate font-medium text-1sm`,children:n.title}),t[0]=n.title,t[1]=o);let s;t[2]!==a||t[3]!==n.agent.name||t[4]!==n.agent.version?(s=n.agent.version!==void 0&&n.agent.version!==``?(0,Z.jsx)(`span`,{className:`shrink-0 text-[10px] text-muted-foreground tabular-nums`,title:a({id:`MLVPcm`,values:{0:n.agent.name,1:n.agent.version}}),"data-testid":`agent-thread-agent-version`,children:n.agent.version}):null,t[2]=a,t[3]=n.agent.name,t[4]=n.agent.version,t[5]=s):s=t[5];let c;t[6]===n?c=t[7]:(c=(0,Z.jsx)(ji,{info:n}),t[6]=n,t[7]=c);let l=r?`bg-primary/10 text-primary hover:bg-primary/15 hover:text-primary`:`text-muted-foreground`,u;t[8]===l?u=t[9]:(u=v(`rounded-md`,l),t[8]=l,t[9]=u);let d;t[10]===a?d=t[11]:(d=a({id:`w6sT-y`}),t[10]=a,t[11]=d);let f;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(f=(0,Z.jsx)(at,{className:`size-3.5`,"aria-hidden":`true`}),t[12]=f):f=t[12];let p;t[13]!==r||t[14]!==i||t[15]!==u||t[16]!==d?(p=(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(b,{type:`button`,variant:`ghost`,size:`icon-xs`,className:u,"aria-pressed":r,"aria-label":d,onClick:i,"data-testid":`agent-thread-follow-toggle`,children:f})}),t[13]=r,t[14]=i,t[15]=u,t[16]=d,t[17]=p):p=t[17];let h;t[18]!==a||t[19]!==r?(h=a(r?{id:`1a6ICf`}:{id:`w6sT-y`}),t[18]=a,t[19]=r,t[20]=h):h=t[20];let g;t[21]===h?g=t[22]:(g=(0,Z.jsx)(S,{side:`bottom`,children:h}),t[21]=h,t[22]=g);let _;t[23]!==g||t[24]!==p?(_=(0,Z.jsxs)(C,{children:[p,g]}),t[23]=g,t[24]=p,t[25]=_):_=t[25];let y;t[26]!==_||t[27]!==c?(y=(0,Z.jsxs)(`div`,{className:`ml-auto flex shrink-0 items-center gap-1.5`,children:[c,_]}),t[26]=_,t[27]=c,t[28]=y):y=t[28];let w;return t[29]!==o||t[30]!==y||t[31]!==s?(w=(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-3 pb-1.5 pt-0`,children:[o,s,y]}),t[29]=o,t[30]=y,t[31]=s,t[32]=w):w=t[32],w}function Ni(e){for(let t of e.options){if(`value`in t){if(t.value===e.currentValue)return t;continue}let n=t.options.find(t=>t.value===e.currentValue);if(n!==void 0)return n}}function Pi(e){let t=e.replace(/[_-]+/g,` `).replace(/([a-z])([A-Z])/g,`$1 $2`).trim();return t.charAt(0).toUpperCase()+t.slice(1)}function Fi(e){return Ni(e)?.name??Pi(e.currentValue)}function Ii(e,t){let n=Ni(t);return n===void 0?Pi(t.currentValue):tr(e,t.id,n.value)??er(t)??n.name}function Li(e){return e.options.some(e=>`value`in e?!0:e.options.length>0)}function Ri(e){let t=[];for(let n of e.options)if(`value`in n)t.push({id:n.value,name:n.name});else for(let e of n.options)t.push({id:e.value,name:e.name});return t}function zi(e){let t=(e.configOptions??[]).find(e=>e.type===`select`&&e.category===`mode`&&Li(e));if(t!==void 0)return{configId:t.id,currentId:t.currentValue,currentName:Fi(t),values:Ri(t)};let n=e.modes;return n!=null&&n.availableModes.length>1?{configId:null,currentId:n.currentModeId,currentName:n.availableModes.find(e=>e.id===n.currentModeId)?.name??Pi(n.currentModeId),values:n.availableModes.map(e=>({id:e.id,name:e.name}))}:null}function Bi(e){let t=(0,Y.c)(59),{info:n}=e,{_:r}=m(),i=(0,X.useId)(),a,o,s,c,l,u,d,f,p;if(t[0]!==r||t[1]!==n||t[2]!==i){p=Symbol.for(`react.early_return_sentinel`);bb0:{let e=et(),m=Xe(n.agent),h=(t,r)=>{e.setConfigOption(n.threadId,t.id,r),Ze(m,t.id,r)},g;t[12]===n.configOptions?g=t[13]:(g=n.configOptions??[],t[12]=n.configOptions,t[13]=g);let _=g.filter(Wi),v=zi(n),y=v!==null&&v.configId===null;if(_.length===0&&!y){let e=n.status===`ready`||n.status===`running`||n.status===`awaiting_permission`||n.status===`exited`,a;t[14]!==r||t[15]!==n.agent.name||t[16]!==e?(a=r(e?{id:`VVRrPk`,values:{0:n.agent.name}}:{id:`PMxZyQ`,values:{0:n.agent.name}}),t[14]=r,t[15]=n.agent.name,t[16]=e,t[17]=a):a=t[17];let o=a,s;t[18]===r?s=t[19]:(s=r({id:`Wfy3rU`}),t[18]=r,t[19]=s);let c;t[20]===r?c=t[21]:(c=r({id:`Tz0i8g`}),t[20]=r,t[21]=c);let l;t[22]===c?l=t[23]:(l=(0,Z.jsx)(`span`,{className:`truncate text-muted-foreground/50`,children:c}),t[22]=c,t[23]=l);let u;t[24]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Z.jsx)(W,{className:`size-3.5 text-muted-foreground/50`,"data-icon":`inline-end`,"aria-hidden":`true`}),t[24]=u):u=t[24];let d;t[25]!==i||t[26]!==s||t[27]!==l?(d=(0,Z.jsxs)(b,{type:`button`,variant:`ghost`,className:`h-6 max-w-48 gap-1 rounded-md pl-1.5 pr-1! text-xs`,"aria-label":s,"aria-disabled":!0,"aria-describedby":i,"data-testid":`agent-thread-settings`,children:[l,u]}),t[25]=i,t[26]=s,t[27]=l,t[28]=d):d=t[28];let f;t[29]!==o||t[30]!==i?(f=(0,Z.jsx)(`span`,{id:i,className:`sr-only`,children:o}),t[29]=o,t[30]=i,t[31]=f):f=t[31];let m;t[32]!==d||t[33]!==f?(m=(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsxs)(`span`,{className:`inline-flex cursor-not-allowed`,children:[d,f]})}),t[32]=d,t[33]=f,t[34]=m):m=t[34];let h;t[35]===o?h=t[36]:(h=(0,Z.jsx)(S,{side:`bottom`,children:o}),t[35]=o,t[36]=h);let g;t[37]!==m||t[38]!==h?(g=(0,Z.jsxs)(C,{children:[m,h]}),t[37]=m,t[38]=h,t[39]=g):g=t[39],p=g;break bb0}let w=y?v.currentName:void 0,T=v!==null&&dt({id:v.currentId,name:v.currentName}),E=_.find(Ui)??_.find(Hi),D=E===void 0?w??r({id:`Tz0i8g`}):Ii(n.agent.id,E),O=r(T&&v!==null?{id:`MuxcRB`,values:{0:v.currentName,1:n.agent.name}}:{id:`Wfy3rU`});o=te;let k;t[40]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,Z.jsx)(W,{className:`size-3.5`,"data-icon":`inline-end`,"aria-hidden":`true`}),t[40]=k):k=t[40];let A=(0,Z.jsx)(N,{asChild:!0,children:(0,Z.jsxs)(b,{type:`button`,variant:`ghost`,className:`h-6 max-w-48 gap-1 rounded-md pl-1.5 pr-1! text-xs`,"aria-label":O,"data-testid":`agent-thread-settings`,children:[T?(0,Z.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-amber-500 ring-[3px] ring-amber-500/15 dark:bg-amber-400 dark:ring-amber-400/15`,"data-testid":`agent-thread-mode-accent`,"aria-hidden":`true`}):null,(0,Z.jsx)(`span`,{className:`truncate`,children:D}),k]})}),j;t[41]===A?j=t[42]:(j=(0,Z.jsx)(x,{asChild:!0,children:A}),t[41]=A,t[42]=j);let M;t[43]===O?M=t[44]:(M=(0,Z.jsx)(S,{side:`bottom`,children:O}),t[43]=O,t[44]=M),t[45]!==j||t[46]!==M?(f=(0,Z.jsxs)(C,{children:[j,M]}),t[45]=j,t[46]=M,t[47]=f):f=t[47],a=I,s=`end`,c=`w-60`,l=`agent-thread-settings-popover`,u=_.map(e=>e.type===`select`?(0,Z.jsx)(Gi,{agentId:n.agent.id,option:e,onSelect:t=>h(e,t)},e.id):(0,Z.jsx)(Yi,{option:e,onCheckedChange:t=>h(e,t)},e.id)),d=y?(0,Z.jsx)(Gi,{agentId:n.agent.id,option:{id:`legacy-mode`,name:r({id:`EbMUlU`}),category:`mode`,type:`select`,currentValue:v.currentId,options:v.values.map(Vi)},onSelect:t=>{e.setMode(n.threadId,t),$e(m,t)}}):null}t[0]=r,t[1]=n,t[2]=i,t[3]=a,t[4]=o,t[5]=s,t[6]=c,t[7]=l,t[8]=u,t[9]=d,t[10]=f,t[11]=p}else a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11];if(p!==Symbol.for(`react.early_return_sentinel`))return p;let h;t[48]!==a||t[49]!==s||t[50]!==c||t[51]!==l||t[52]!==u||t[53]!==d?(h=(0,Z.jsxs)(a,{align:s,className:c,"data-testid":l,children:[u,d]}),t[48]=a,t[49]=s,t[50]=c,t[51]=l,t[52]=u,t[53]=d,t[54]=h):h=t[54];let g;return t[55]!==o||t[56]!==f||t[57]!==h?(g=(0,Z.jsxs)(o,{children:[f,h]}),t[55]=o,t[56]=f,t[57]=h,t[58]=g):g=t[58],g}function Vi(e){return{value:e.id,name:e.name}}function Hi(e){return e.type===`select`}function Ui(e){return e.type===`select`&&e.category===`model`}function Wi(e){return e.type===`boolean`||Li(e)}function Gi(e){let t=(0,Y.c)(51),{agentId:n,option:r,onSelect:i}=e,a;t[0]!==n||t[1]!==r.id?(a=e=>e.description?e:{...e,description:tr(n,r.id,e.value)??void 0},t[0]=n,t[1]=r.id,t[2]=a):a=t[2];let o=a,s=r.options,c,l,u,d,f,p,m,h,g,_;if(t[3]!==n||t[4]!==s||t[5]!==i||t[6]!==r||t[7]!==o){let e=s.filter(qi),a=s.filter(Ki);u=A;let v=`agent-thread-config-${r.id}`,y;t[18]===r.name?y=t[19]:(y=(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:r.name}),t[18]=r.name,t[19]=y);let b;t[20]!==n||t[21]!==r?(b=Ii(n,r),t[20]=n,t[21]=r,t[22]=b):b=t[22];let x;t[23]===b?x=t[24]:(x=(0,Z.jsx)(`span`,{className:`max-w-[11rem] truncate text-1sm text-muted-foreground`,children:b}),t[23]=b,t[24]=x),t[25]!==y||t[26]!==x||t[27]!==v?(_=(0,Z.jsxs)(ee,{className:`gap-2`,"data-testid":v,children:[y,x]}),t[25]=y,t[26]=x,t[27]=v,t[28]=_):_=t[28],l=j,h=`max-h-[min(22rem,var(--radix-dropdown-menu-content-available-height))] max-w-72 overscroll-contain`,t[29]===r.name?g=t[30]:(g=(0,Z.jsx)(F,{children:r.name}),t[29]=r.name,t[30]=g),c=k,d=r.currentValue,f=i;let S;t[31]===o?S=t[32]:(S=e=>(0,Z.jsx)(Ji,{entry:o(e)},e.value),t[31]=o,t[32]=S),p=e.map(S);let C;t[33]!==r.name||t[34]!==o?(C=e=>(0,Z.jsxs)(X.Fragment,{children:[e.name===r.name?null:(0,Z.jsx)(F,{className:`font-normal text-muted-foreground`,children:e.name}),e.options.map(e=>(0,Z.jsx)(Ji,{entry:o(e)},e.value))]},e.group),t[33]=r.name,t[34]=o,t[35]=C):C=t[35],m=a.map(C),t[3]=n,t[4]=s,t[5]=i,t[6]=r,t[7]=o,t[8]=c,t[9]=l,t[10]=u,t[11]=d,t[12]=f,t[13]=p,t[14]=m,t[15]=h,t[16]=g,t[17]=_}else c=t[8],l=t[9],u=t[10],d=t[11],f=t[12],p=t[13],m=t[14],h=t[15],g=t[16],_=t[17];let v;t[36]!==c||t[37]!==d||t[38]!==f||t[39]!==p||t[40]!==m?(v=(0,Z.jsxs)(c,{value:d,onValueChange:f,children:[p,m]}),t[36]=c,t[37]=d,t[38]=f,t[39]=p,t[40]=m,t[41]=v):v=t[41];let y;t[42]!==l||t[43]!==h||t[44]!==g||t[45]!==v?(y=(0,Z.jsxs)(l,{className:h,children:[g,v]}),t[42]=l,t[43]=h,t[44]=g,t[45]=v,t[46]=y):y=t[46];let b;return t[47]!==u||t[48]!==y||t[49]!==_?(b=(0,Z.jsxs)(u,{children:[_,y]}),t[47]=u,t[48]=y,t[49]=_,t[50]=b):b=t[50],b}function Ki(e){return`group`in e}function qi(e){return`value`in e}function Ji(e){let t=(0,Y.c)(11),{entry:n}=e,r=`agent-thread-config-option-${n.value}`,i;t[0]===n.name?i=t[1]:(i=(0,Z.jsx)(`span`,{className:`truncate`,children:n.name}),t[0]=n.name,t[1]=i);let a;t[2]===n.description?a=t[3]:(a=n.description?(0,Z.jsx)(`span`,{className:`line-clamp-2 text-1sm text-muted-foreground`,children:n.description}):null,t[2]=n.description,t[3]=a);let o;t[4]!==i||t[5]!==a?(o=(0,Z.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[i,a]}),t[4]=i,t[5]=a,t[6]=o):o=t[6];let s;return t[7]!==n.value||t[8]!==r||t[9]!==o?(s=(0,Z.jsx)(M,{value:n.value,className:`items-start`,"data-testid":r,children:o}),t[7]=n.value,t[8]=r,t[9]=o,t[10]=s):s=t[10],s}function Yi(e){let t=(0,Y.c)(15),{option:n,onCheckedChange:r}=e,i=`agent-thread-config-${n.id}`,a;t[0]===n.name?a=t[1]:(a=(0,Z.jsx)(`span`,{children:n.name}),t[0]=n.name,t[1]=a);let o;t[2]===n.description?o=t[3]:(o=n.description?(0,Z.jsx)(`span`,{className:`text-1sm text-muted-foreground`,children:n.description}):null,t[2]=n.description,t[3]=o);let s;t[4]!==a||t[5]!==o?(s=(0,Z.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[a,o]}),t[4]=a,t[5]=o,t[6]=s):s=t[6];let c;t[7]===n.currentValue?c=t[8]:(c=(0,Z.jsx)(R,{checked:n.currentValue,size:`sm`,"aria-hidden":`true`,tabIndex:-1,className:`pointer-events-none mt-0.5`}),t[7]=n.currentValue,t[8]=c);let l;return t[9]!==r||t[10]!==n.currentValue||t[11]!==i||t[12]!==s||t[13]!==c?(l=(0,Z.jsxs)(P,{checked:n.currentValue,onCheckedChange:r,onSelect:Xi,className:`items-start justify-between gap-4 pr-2 [&_[data-slot=dropdown-menu-checkbox-item-indicator]]:hidden`,"data-testid":i,children:[s,c]}),t[9]=r,t[10]=n.currentValue,t[11]=i,t[12]=s,t[13]=c,t[14]=l):l=t[14],l}function Xi(e){return e.preventDefault()}function Zi(){let e=(0,Y.c)(11),{_:t}=m(),[n,r]=(0,X.useState)(``),i,a;e[0]===t?(i=e[1],a=e[2]):(i=()=>{r(t({id:`PWqtgd`}))},a=[t],e[0]=t,e[1]=i,e[2]=a),(0,X.useEffect)(i,a);let o;e[3]===n?o=e[4]:(o=(0,Z.jsx)(`div`,{"aria-live":`polite`,className:`sr-only`,role:`status`,children:n}),e[3]=n,e[4]=o);let s;e[5]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsx)(`div`,{className:`flex justify-end`,children:(0,Z.jsx)(Ue,{className:`h-12 w-3/5 rounded-2xl rounded-br-xs`})}),e[5]=s):s=e[5];let c;e[6]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Z.jsx)(Ue,{className:`h-3.5 w-11/12`}),(0,Z.jsx)(Ue,{className:`h-3.5 w-4/5`}),(0,Z.jsx)(Ue,{className:`h-3.5 w-2/3`})]}),e[6]=c):c=e[6];let l;e[7]===Symbol.for(`react.memo_cache_sentinel`)?(l=(0,Z.jsx)(`div`,{className:`flex justify-end`,children:(0,Z.jsx)(Ue,{className:`h-8 w-2/5 rounded-2xl rounded-br-xs`})}),e[7]=l):l=e[7];let u;e[8]===Symbol.for(`react.memo_cache_sentinel`)?(u=(0,Z.jsxs)(`div`,{"aria-hidden":`true`,className:`flex flex-col gap-6`,children:[s,c,l,(0,Z.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,Z.jsx)(Ue,{className:`h-3.5 w-5/6`}),(0,Z.jsx)(Ue,{className:`h-3.5 w-3/4`})]})]}),e[8]=u):u=e[8];let d;return e[9]===o?d=e[10]:(d=(0,Z.jsxs)(`div`,{className:`flex flex-col gap-6 pt-2`,children:[o,u]}),e[9]=o,e[10]=d),d}function Qi(e){let t=(0,Y.c)(23),{status:n,archived:r,agent:i}=e,{_:a}=m(),o,s;if(t[0]!==a||t[1]!==i.iconUrl||t[2]!==i.id||t[3]!==i.name||t[4]!==r||t[5]!==n){s=Symbol.for(`react.early_return_sentinel`);bb0:{let e=pi(i.name);if(r){let e;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(Zi,{}),t[8]=e):e=t[8],s=e;break bb0}if(n===`ready`){let n;t[9]!==i.iconUrl||t[10]!==i.id?(n=(0,Z.jsx)(ce,{agentId:i.id,iconUrl:i.iconUrl,className:`size-12 opacity-25 grayscale`}),t[9]=i.iconUrl,t[10]=i.id,t[11]=n):n=t[11],s=(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3 px-6 text-center`,children:[n,(0,Z.jsx)(`p`,{className:`text-muted-foreground text-sm`,children:a({id:`g4e0hS`,values:{agentName:e}})})]});break bb0}if(n===`auth_required`){let n;t[12]!==i.iconUrl||t[13]!==i.id?(n=(0,Z.jsx)(ce,{agentId:i.id,iconUrl:i.iconUrl,className:`size-12 opacity-25 grayscale`}),t[12]=i.iconUrl,t[13]=i.id,t[14]=n):n=t[14],s=(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3 px-6 text-center`,children:[n,(0,Z.jsx)(`p`,{className:`text-muted-foreground text-sm`,children:a({id:`np2zZM`,values:{agentName:e}})})]});break bb0}o=a(n===`installing`?{id:`Y_ZQ6l`,values:{agentName:e}}:n===`spawning`?{id:`8t9CRE`,values:{agentName:e}}:n===`authenticating`?{id:`gY7wnY`,values:{agentName:e}}:{id:`MysZUL`,values:{agentName:e}})}t[0]=a,t[1]=i.iconUrl,t[2]=i.id,t[3]=i.name,t[4]=r,t[5]=n,t[6]=o,t[7]=s}else o=t[6],s=t[7];if(s!==Symbol.for(`react.early_return_sentinel`))return s;let c=o,l;t[15]!==i.iconUrl||t[16]!==i.id?(l=(0,Z.jsx)(ce,{agentId:i.id,iconUrl:i.iconUrl,className:`size-12 animate-pulse opacity-25 grayscale motion-reduce:animate-none`}),t[15]=i.iconUrl,t[16]=i.id,t[17]=l):l=t[17];let u;t[18]===c?u=t[19]:(u=(0,Z.jsx)(`p`,{className:`shimmer text-sm`,children:c}),t[18]=c,t[19]=u);let d;return t[20]!==l||t[21]!==u?(d=(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3 px-6 text-center`,children:[l,u]}),t[20]=l,t[21]=u,t[22]=d):d=t[22],d}function $i(e){let t=(0,Y.c)(35),{plan:n}=e,{_:r}=m(),[i,a]=(0,X.useState)(!0),o,s,c,l,u,d,f,p,h,g;if(t[0]!==r||t[1]!==i||t[2]!==n){let e=n.filter(na).length;g=`border-border/60 border-b bg-muted/30 px-3 py-1.5`,o=b,c=`button`,l=`ghost`,u=`sm`,d=`h-auto w-full justify-start gap-1.5 p-0 font-medium text-muted-foreground text-xs hover:bg-transparent`,t[13]===Symbol.for(`react.memo_cache_sentinel`)?(f=()=>a(ta),t[13]=f):f=t[13],p=i,t[14]===i?h=t[15]:(h=i?(0,Z.jsx)(W,{className:`size-3.5`,"aria-hidden":`true`}):(0,Z.jsx)(G,{className:`size-3.5`,"aria-hidden":`true`}),t[14]=i,t[15]=h),s=r({id:`QM3SBZ`,values:{0:n.length,done:e}}),t[0]=r,t[1]=i,t[2]=n,t[3]=o,t[4]=s,t[5]=c,t[6]=l,t[7]=u,t[8]=d,t[9]=f,t[10]=p,t[11]=h,t[12]=g}else o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=t[8],f=t[9],p=t[10],h=t[11],g=t[12];let _;t[16]===s?_=t[17]:(_=(0,Z.jsx)(`span`,{children:s}),t[16]=s,t[17]=_);let v;t[18]!==o||t[19]!==_||t[20]!==c||t[21]!==l||t[22]!==u||t[23]!==d||t[24]!==f||t[25]!==p||t[26]!==h?(v=(0,Z.jsxs)(o,{type:c,variant:l,size:u,className:d,onClick:f,"aria-expanded":p,children:[h,_]}),t[18]=o,t[19]=_,t[20]=c,t[21]=l,t[22]=u,t[23]=d,t[24]=f,t[25]=p,t[26]=h,t[27]=v):v=t[27];let y;t[28]!==i||t[29]!==n?(y=i?(0,Z.jsx)(`ul`,{className:`mt-1 flex flex-col gap-0.5`,children:n.map(ea)}):null,t[28]=i,t[29]=n,t[30]=y):y=t[30];let x;return t[31]!==v||t[32]!==y||t[33]!==g?(x=(0,Z.jsxs)(`div`,{className:g,children:[v,y]}),t[31]=v,t[32]=y,t[33]=g,t[34]=x):x=t[34],x}function ea(e,t){return(0,Z.jsxs)(`li`,{className:v(`flex items-start gap-1.5 text-xs`,e.status===`completed`&&`text-muted-foreground line-through`),children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,children:e.status===`completed`?`☑`:`☐`}),(0,Z.jsx)(`span`,{children:e.content})]},t)}function ta(e){return!e}function na(e){return e.status===`completed`}function ra(e){let t=(0,Y.c)(4),{apiRef:n}=e,r=sn(),i,a;return t[0]!==r||t[1]!==n?(i=()=>(n.current=r,()=>{n.current=null}),a=[r,n],t[0]=r,t[1]=n,t[2]=i,t[3]=a):(i=t[2],a=t[3]),(0,X.useEffect)(i,a),null}function ia(e){let t=(0,Y.c)(22),{item:n,threadId:r,agent:i,actionable:a,streaming:o,terminals:s,permissionsByToolCall:c,showRetry:l,retryPending:u,onRetry:d}=e;switch(n.kind){case`message`:{let e;return t[0]!==n||t[1]!==o?(e=(0,Z.jsx)(_a,{item:n,streaming:o}),t[0]=n,t[1]=o,t[2]=e):e=t[2],e}case`tool_call`:{let e=c[n.toolCallId],r;return t[3]!==n||t[4]!==e||t[5]!==s?(r=(0,Z.jsx)(Ta,{call:n,terminals:s,permission:e}),t[3]=n,t[4]=e,t[5]=s,t[6]=r):r=t[6],r}case`permission`:{let e;return t[7]!==a||t[8]!==n||t[9]!==r?(e=n.mergedIntoToolCall&&n.resolved!==null?null:(0,Z.jsx)(Va,{item:n,threadId:r,actionable:a}),t[7]=a,t[8]=n,t[9]=r,t[10]=e):e=t[10],e}case`runtime_consent`:{let e;return t[11]!==n||t[12]!==r?(e=(0,Z.jsx)(qa,{item:n,threadId:r}),t[11]=n,t[12]=r,t[13]=e):e=t[13],e}case`notice`:{let e;t[14]===i.name?e=t[15]:(e=pi(i.name),t[14]=i.name,t[15]=e);let r;return t[16]!==n||t[17]!==d||t[18]!==u||t[19]!==l||t[20]!==e?(r=(0,Z.jsx)(ha,{item:n,agentName:e,showRetry:l,retryPending:u,onRetry:d}),t[16]=n,t[17]=d,t[18]=u,t[19]=l,t[20]=e,t[21]=r):r=t[21],r}}}function aa(e){let t=(0,Y.c)(21),{item:n,streaming:r}=e,{_:i}=m(),[a,o]=(0,X.useState)(!1),s;t[0]===n.text?s=t[1]:(s=n.text.split(`
12
- `).filter(sa),t[0]=n.text,t[1]=s);let c=s,l=(r?c[c.length-1]:c[0])??``,u;t[2]===Symbol.for(`react.memo_cache_sentinel`)?(u=()=>o(oa),t[2]=u):u=t[2];let d;t[3]===a?d=t[4]:(d=a?(0,Z.jsx)(W,{className:`size-3`,"aria-hidden":`true`}):(0,Z.jsx)(G,{className:`size-3`,"aria-hidden":`true`}),t[3]=a,t[4]=d);let f;t[5]===i?f=t[6]:(f=i({id:`AUV-TY`}),t[5]=i,t[6]=f);let p;t[7]!==a||t[8]!==l?(p=a?null:(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-left font-normal text-xs normal-case italic tracking-normal`,children:l}),t[7]=a,t[8]=l,t[9]=p):p=t[9];let h;t[10]!==a||t[11]!==d||t[12]!==f||t[13]!==p?(h=(0,Z.jsxs)(b,{type:`button`,variant:`ghost`,size:`sm`,className:`h-auto w-full justify-start gap-1 px-0 py-0.5 text-[10px] text-muted-foreground uppercase tracking-wide hover:bg-transparent`,onClick:u,"aria-expanded":a,"data-testid":`agent-thread-thought-toggle`,children:[d,f,p]}),t[10]=a,t[11]=d,t[12]=f,t[13]=p,t[14]=h):h=t[14];let g;t[15]!==n.text||t[16]!==a?(g=a?(0,Z.jsx)(`div`,{className:`px-1 text-muted-foreground text-xs italic **:font-normal! **:text-xs!`,children:(0,Z.jsx)(Jr,{text:n.text})}):null,t[15]=n.text,t[16]=a,t[17]=g):g=t[17];let _;return t[18]!==h||t[19]!==g?(_=(0,Z.jsxs)(`div`,{"data-testid":`agent-thread-thought`,children:[h,g]}),t[18]=h,t[19]=g,t[20]=_):_=t[20],_}function oa(e){return!e}function sa(e){return e.trim().length>0}function ca(e){let t=(0,Y.c)(14),{output:n}=e,{_:r}=m(),[i,a]=(0,X.useState)(!1),o,s;t[0]===i?(o=t[1],s=t[2]):(o=()=>{if(!i)return;let e=setTimeout(()=>a(!1),ui);return()=>clearTimeout(e)},s=[i],t[0]=i,t[1]=o,t[2]=s),(0,X.useEffect)(o,s);let c,l;if(t[3]!==r||t[4]!==i||t[5]!==n){l=Symbol.for(`react.early_return_sentinel`);bb0:{let e=n===void 0||n.length===0?null:br(n),o=e===null||e.code===void 0&&e.url===void 0&&e.lines.length===0,s;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(s=e=>{navigator.clipboard?.writeText(e).then(()=>a(!0)).catch(la)},t[8]=s):s=t[8];let u=s,d;t[9]!==r||t[10]!==i?(d=i?r({id:`dyfMJN`}):``,t[9]=r,t[10]=i,t[11]=d):d=t[11];let f;t[12]===d?f=t[13]:(f=(0,Z.jsx)(`div`,{className:`sr-only`,role:`status`,"aria-live":`polite`,children:d}),t[12]=d,t[13]=f);let p=f;if(o){l=p;break bb0}let{code:m,url:h,lines:g}=e;c=(0,Z.jsxs)(`div`,{className:`mt-1 flex flex-col items-center gap-1.5`,"data-testid":`agent-thread-sign-in-output`,children:[p,m===void 0?null:(0,Z.jsxs)(b,{type:`button`,variant:`outline`,className:`h-auto w-full select-text py-1.5 font-mono text-base tracking-[0.2em]`,onClick:()=>u(m),"aria-label":r({id:`XgsZ2F`,values:{code:m}}),"data-testid":`agent-thread-sign-in-code`,children:[i?(0,Z.jsx)(le,{className:`size-3.5`,"aria-hidden":`true`}):null,m]}),h===void 0?null:(0,Z.jsx)(`a`,{href:h,target:`_blank`,rel:`noreferrer`,className:`text-muted-foreground text-xs underline underline-offset-2 hover:text-foreground`,onClick:e=>He(e,h),onAuxClick:e=>He(e,h),"data-testid":`agent-thread-sign-in-url`,children:yr(h)}),g.length>0?(0,Z.jsx)(`p`,{className:`select-text text-muted-foreground text-xs`,children:g.join(` `)}):null]})}t[3]=r,t[4]=i,t[5]=n,t[6]=c,t[7]=l}else c=t[6],l=t[7];return l===Symbol.for(`react.early_return_sentinel`)?c:l}function la(){}function ua(e){let t=(0,Y.c)(62),{failure:n,agent:r,agentName:i,signingIn:a,signInOutput:o,showRetry:s,retryPending:c,onRetry:l,onAuthenticate:u}=e,{_:d}=m(),[f,p]=(0,X.useState)(!1),[h,g]=(0,X.useState)(null),_;t[0]===n.authMethods?_=t[1]:(_=n.authMethods??[],t[0]=n.authMethods,t[1]=_);let y=_,x,S,C,w,T,E,D,O,k;if(t[2]!==d||t[3]!==r.iconUrl||t[4]!==r.id||t[5]!==i||t[6]!==y||t[7]!==h||t[8]!==n.agentMessage||t[9]!==n.machineDetail||t[10]!==u||t[11]!==s||t[12]!==o||t[13]!==a){let e=y.filter(ma),c=y.filter(pa),l=n.agentMessage??``;S=n.machineDetail??``,x=s&&S===``&&!a;let f;t[23]!==d||t[24]!==u?(f=e=>{g(e),u(e).catch(e=>{ae.error(d({id:`s0QzlI`,values:{0:fi(e)}}))}).finally(()=>g(null))},t[23]=d,t[24]=u,t[25]=f):f=t[25];let p=f;C=`mx-auto flex w-full max-w-72 flex-col items-center gap-4 px-2 py-6 text-center`,w=`agent-thread-notice`,t[26]!==r.iconUrl||t[27]!==r.id?(T=(0,Z.jsx)(ce,{agentId:r.id,iconUrl:r.iconUrl,className:`size-12 opacity-25 grayscale`}),t[26]=r.iconUrl,t[27]=r.id,t[28]=T):T=t[28];let m;t[29]!==d||t[30]!==i||t[31]!==a?(m=a?d({id:`Yz8urJ`,values:{agentName:i}}):``,t[29]=d,t[30]=i,t[31]=a,t[32]=m):m=t[32],t[33]===m?E=t[34]:(E=(0,Z.jsx)(`div`,{className:`sr-only`,role:`status`,"aria-live":`polite`,children:m}),t[33]=m,t[34]=E),t[35]!==d||t[36]!==l||t[37]!==i||t[38]!==o||t[39]!==a?(D=(0,Z.jsx)(`div`,{className:`flex flex-col gap-1`,children:a?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`p`,{className:`shimmer font-medium text-sm`,children:d({id:`gY7wnY`,values:{agentName:i}})}),(0,Z.jsx)(ca,{output:o})]}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`p`,{className:`font-medium text-foreground text-sm`,children:d({id:`np2zZM`,values:{agentName:i}})}),l===``?null:(0,Z.jsx)(`p`,{className:`text-muted-foreground text-1sm`,children:l})]})}),t[35]=d,t[36]=l,t[37]=i,t[38]=o,t[39]=a,t[40]=D):D=t[40],O=!a&&e.length>0?(0,Z.jsx)(`div`,{className:`flex w-full flex-col gap-1.5`,children:e.map((t,n)=>(0,Z.jsxs)(b,{type:`button`,size:`sm`,variant:n===0?`default`:`outline-mono`,className:`w-full`,disabled:h!==null,onClick:()=>p(t.id),"data-testid":`agent-thread-auth-method`,"data-auth-method-id":t.id,children:[h===t.id?(0,Z.jsx)(me,{className:`size-3.5`,"aria-hidden":`true`}):null,e.length===1?d({id:`e_ToF5`,values:{0:t.name}}):t.name]},t.id))}):null,k=!a&&c.length>0?(0,Z.jsx)(`ul`,{className:`flex flex-col gap-1 text-muted-foreground text-xs`,children:c.map(fa)}):null,t[2]=d,t[3]=r.iconUrl,t[4]=r.id,t[5]=i,t[6]=y,t[7]=h,t[8]=n.agentMessage,t[9]=n.machineDetail,t[10]=u,t[11]=s,t[12]=o,t[13]=a,t[14]=x,t[15]=S,t[16]=C,t[17]=w,t[18]=T,t[19]=E,t[20]=D,t[21]=O,t[22]=k}else x=t[14],S=t[15],C=t[16],w=t[17],T=t[18],E=t[19],D=t[20],O=t[21],k=t[22];let A;t[41]!==d||t[42]!==x||t[43]!==S||t[44]!==l||t[45]!==c||t[46]!==f||t[47]!==s?(A=s||S!==``?(0,Z.jsxs)(`div`,{className:v(`flex items-center`,x?`gap-1.5`:`gap-3`),children:[x?(0,Z.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:d({id:`WMsoIm`})}):null,s?(0,Z.jsx)(b,{type:`button`,variant:`link-muted`,size:`xs`,className:`h-auto p-0`,disabled:c,onClick:l,"data-testid":`agent-thread-retry`,children:c?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(me,{className:`size-3`,"aria-hidden":`true`}),d({id:`kNGLX6`})]}):d({id:`6gRgw8`})}):null,S===``?null:(0,Z.jsx)(b,{type:`button`,variant:`link-muted`,size:`xs`,className:`h-auto p-0`,onClick:()=>p(da),"aria-expanded":f,"data-testid":`agent-thread-notice-details-toggle`,children:d(f?{id:`VMlRqi`}:{id:`BowKyI`})})]}):null,t[41]=d,t[42]=x,t[43]=S,t[44]=l,t[45]=c,t[46]=f,t[47]=s,t[48]=A):A=t[48];let j;t[49]!==S||t[50]!==f?(j=f&&S!==``?(0,Z.jsx)(`pre`,{className:`w-full overflow-x-auto whitespace-pre-wrap rounded-md bg-muted/50 p-2 text-left font-mono text-[10px] text-muted-foreground`,"data-testid":`agent-thread-notice-details`,children:S}):null,t[49]=S,t[50]=f,t[51]=j):j=t[51];let M;return t[52]!==j||t[53]!==C||t[54]!==w||t[55]!==T||t[56]!==E||t[57]!==D||t[58]!==O||t[59]!==k||t[60]!==A?(M=(0,Z.jsxs)(`div`,{className:C,"data-testid":w,children:[T,E,D,O,k,A,j]}),t[52]=j,t[53]=C,t[54]=w,t[55]=T,t[56]=E,t[57]=D,t[58]=O,t[59]=k,t[60]=A,t[61]=M):M=t[61],M}function da(e){return!e}function fa(e){return(0,Z.jsx)(`li`,{"data-testid":`agent-thread-auth-manual`,children:e.description!==void 0&&e.description!==``?`${e.name} — ${e.description}`:e.name},e.id)}function pa(e){return e.kind===`terminal`||e.kind===`env_var`}function ma(e){return e.kind!==`terminal`&&e.kind!==`env_var`}function ha(e){let t=(0,Y.c)(25),{item:n,agentName:r,showRetry:i,retryPending:a,onRetry:o}=e,{_:s}=m(),[c,l]=(0,X.useState)(!1),u=n.failure,d;t[0]!==s||t[1]!==r?(d=e=>{switch(e){case`auth-required`:return s({id:`np2zZM`,values:{agentName:r}});case`connect`:return s({id:`fCSBwN`,values:{agentName:r}});case`session-setup`:return s({id:`l9s3IX`,values:{agentName:r}});case`prompt`:return s({id:`str6n9`,values:{agentName:r}});default:return String(e)}},t[0]=s,t[1]=r,t[2]=d):d=t[2];let f=d,p;t[3]!==u||t[4]!==f?(p=u===null?null:f(u.reason),t[3]=u,t[4]=f,t[5]=p):p=t[5];let h=p,g;t[6]===u?g=t[7]:(g=u?.machineDetail!==void 0&&u.machineDetail!==``?vi(u.machineDetail):null,t[6]=u,t[7]=g);let _=g,y=n.tone===`error`?`border-red-500/30 bg-red-500/5 text-red-600 dark:text-red-400`:`border-amber-500/30 bg-amber-500/5 text-amber-700 dark:text-amber-400`,x;t[8]===y?x=t[9]:(x=v(`rounded-md border px-2 py-1.5 text-xs`,y),t[8]=y,t[9]=x);let S;t[10]!==s||t[11]!==u||t[12]!==h||t[13]!==n.attempts||t[14]!==n.text||t[15]!==o||t[16]!==a||t[17]!==_||t[18]!==c||t[19]!==i?(S=u===null?n.text:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`p`,{children:[h,n.attempts>1?(0,Z.jsx)(`span`,{className:`ml-1.5 opacity-70`,"data-testid":`agent-thread-notice-attempts`,children:s({id:`L_mqhg`,values:{0:n.attempts}})}):null]}),u.agentMessage!==void 0&&u.agentMessage!==``?(0,Z.jsx)(`p`,{className:`mt-1 opacity-80`,children:u.agentMessage}):null,_===null?null:(0,Z.jsx)(`p`,{className:`mt-1 overflow-x-auto whitespace-pre-wrap break-all font-mono text-[11px]`,"data-testid":`agent-thread-notice-root-cause`,children:_}),u.machineDetail!==void 0&&u.machineDetail!==``?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(b,{type:`button`,variant:`ghost`,size:`sm`,className:`mt-1 h-auto p-0 text-[11px] underline hover:bg-transparent`,onClick:()=>l(ga),"aria-expanded":c,"data-testid":`agent-thread-notice-details-toggle`,children:s(c?{id:`VMlRqi`}:{id:`BowKyI`})}),c?(0,Z.jsx)(`pre`,{className:`mt-1 overflow-x-auto whitespace-pre-wrap font-mono text-[10px] opacity-70`,"data-testid":`agent-thread-notice-details`,children:xi(u.machineDetail)}):null]}):null,i?(0,Z.jsx)(`div`,{className:`mt-1.5`,children:(0,Z.jsx)(b,{type:`button`,variant:`outline`,size:`sm`,className:`h-6 text-xs`,disabled:a,onClick:o,"data-testid":`agent-thread-retry`,children:a?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(me,{className:`size-3`,"aria-hidden":`true`}),s({id:`kNGLX6`})]}):s({id:`6gRgw8`})})}):null]}),t[10]=s,t[11]=u,t[12]=h,t[13]=n.attempts,t[14]=n.text,t[15]=o,t[16]=a,t[17]=_,t[18]=c,t[19]=i,t[20]=S):S=t[20];let C;return t[21]!==n.attempts||t[22]!==x||t[23]!==S?(C=(0,Z.jsx)(`div`,{className:x,"data-testid":`agent-thread-notice`,"data-notice-attempts":n.attempts,children:S}),t[21]=n.attempts,t[22]=x,t[23]=S,t[24]=C):C=t[24],C}function ga(e){return!e}function _a(e){let t=(0,Y.c)(14),{item:n,streaming:r}=e;if(n.role===`thought`){let e=r===!0,i;return t[0]!==n||t[1]!==e?(i=(0,Z.jsx)(aa,{item:n,streaming:e}),t[0]=n,t[1]=e,t[2]=i):i=t[2],i}let i=n.role===`user`,a=i?n.attachments:void 0,o=i?`my-3 ml-auto max-w-[85%] rounded-2xl rounded-br-xs bg-muted px-3 py-1.5`:`w-full`,s;t[3]===o?s=t[4]:(s=v(`wrap-break-word text-sm text-foreground`,o),t[3]=o,t[4]=s);let c=i?`agent-thread-user-message`:`agent-thread-agent-message`,l;t[5]===n.text?l=t[6]:(l=(0,Z.jsx)(Jr,{text:n.text}),t[5]=n.text,t[6]=l);let u;t[7]===a?u=t[8]:(u=a!==void 0&&a.length>0?(0,Z.jsx)(Sa,{attachments:a}):null,t[7]=a,t[8]=u);let d;return t[9]!==s||t[10]!==c||t[11]!==l||t[12]!==u?(d=(0,Z.jsxs)(`div`,{className:s,"data-testid":c,children:[l,u]}),t[9]=s,t[10]=c,t[11]=l,t[12]=u,t[13]=d):d=t[13],d}function va(e){let t=(0,Y.c)(14),{preview:n,onOpenChange:r}=e,{_:i}=m(),a=n!==null,o;t[0]!==i||t[1]!==n?.name?(o=n?.name??i({id:`ij-Elv`}),t[0]=i,t[1]=n?.name,t[2]=o):o=t[2];let s;t[3]===o?s=t[4]:(s=(0,Z.jsx)(w,{className:`sr-only`,children:o}),t[3]=o,t[4]=s);let c;t[5]===n?c=t[6]:(c=n===null?null:(0,Z.jsx)(`img`,{src:n.src,alt:n.name,className:`max-h-[min(85dvh,850px)] max-w-full rounded object-contain`,draggable:!1}),t[5]=n,t[6]=c);let l;t[7]!==s||t[8]!==c?(l=(0,Z.jsxs)(T,{className:`flex max-h-[min(90dvh,900px)] items-center justify-center bg-background p-2 sm:max-w-[min(90vw,1000px)]`,"data-testid":`agent-thread-image-preview`,children:[s,c]}),t[7]=s,t[8]=c,t[9]=l):l=t[9];let u;return t[10]!==r||t[11]!==a||t[12]!==l?(u=(0,Z.jsx)(E,{open:a,onOpenChange:r,children:l}),t[10]=r,t[11]=a,t[12]=l,t[13]=u):u=t[13],u}var ya=new WeakMap,ba=0;function xa(e){let t=ya.get(e);if(t!==void 0)return t;ba+=1;let n=`att-${ba}`;return ya.set(e,n),n}function Sa(e){let t=(0,Y.c)(7),{attachments:n}=e,r=(0,X.use)(mi),i;if(t[0]!==n||t[1]!==r){let e;t[3]===r?e=t[4]:(e=e=>{let t=xa(e);if(e.kind===`image`){let n=`data:${e.mimeType};base64,${e.data}`;return(0,Z.jsx)(b,{type:`button`,variant:`ghost`,onClick:()=>r?.({src:n,name:e.name}),disabled:r===null,className:`inline-flex size-10 items-center justify-center overflow-hidden rounded-md border border-input bg-background p-0 hover:bg-background focus-visible:ring-2`,title:e.name,"aria-label":e.name,"data-attachment-kind":`image`,children:(0,Z.jsx)(`img`,{src:n,alt:e.name,className:`h-full w-full object-cover`,draggable:!1})},t)}return e.kind===`blob`?(0,Z.jsx)(`span`,{className:`composer-mention-chip`,title:e.name,"data-attachment-kind":`blob`,children:(0,Z.jsx)(`span`,{className:`composer-mention-label`,children:e.name})},t):(0,Z.jsx)(`span`,{className:`composer-mention-chip`,title:e.path,"data-attachment-kind":e.kind,children:(0,Z.jsxs)(`span`,{className:`composer-mention-label`,children:[`@`,e.name||e.path]})},t)},t[3]=r,t[4]=e),i=n.map(e),t[0]=n,t[1]=r,t[2]=i}else i=t[2];let a;return t[5]===i?a=t[6]:(a=(0,Z.jsx)(`div`,{className:`mt-1.5 flex flex-wrap justify-end gap-1.5`,"data-testid":`agent-thread-user-message-attachments`,children:i}),t[5]=i,t[6]=a),a}function Ca(e){if(e==null||typeof e==`object`&&!Array.isArray(e)&&Object.keys(e).length===0)return null;let t;try{t=JSON.stringify(e,null,1)}catch{return null}return t===void 0?null:t.length>2e3?`${t.slice(0,2e3)}…`:t}function wa(e){let t=e.trim();if(!t.startsWith("```"))return e;let n=t.split(`
13
- `);return n.length<2||n[n.length-1]?.trim()!=="```"?e:n.slice(1,-1).join(`
14
- `)}function Ta(e){let t=(0,Y.c)(48),{call:n,terminals:r,permission:i}=e,[a,o]=(0,X.useState)(n.status===`failed`),s=(0,X.useRef)(!1),c=(0,X.useRef)(n.status),[l,u]=(0,X.useState)(!1),[d,f]=(0,X.useState)(!1),p,m;t[0]===n.status?(p=t[1],m=t[2]):(p=()=>{let e=c.current;if(c.current=n.status,e!==n.status&&(n.status===`failed`&&!s.current&&o(!0),e!==`completed`&&n.status===`completed`)){u(!0),f(!0);let e=setTimeout(()=>f(!1),ui);return()=>clearTimeout(e)}},m=[n.status],t[0]=n.status,t[1]=p,t[2]=m),(0,X.useEffect)(p,m);let h;t[3]===Symbol.for(`react.memo_cache_sentinel`)?(h=()=>{s.current=!0,o(ja)},t[3]=h):h=t[3];let g=h,_;t[4]===n?_=t[5]:(_=Rr(n),t[4]=n,t[5]=_);let y=_,x=di[y.glyph],S;if(t[6]!==x||t[7]!==n.content||t[8]!==n.diffs||t[9]!==n.locations||t[10]!==n.rawInput||t[11]!==n.status||t[12]!==n.terminalIds||t[13]!==d||t[14]!==l||t[15]!==y.text||t[16]!==a||t[17]!==i||t[18]!==r){let e;t[20]===r?e=t[21]:(e=e=>r[e],t[20]=r,t[21]=e);let o=n.terminalIds.map(e).filter(Aa),s;t[22]===n.rawInput?s=t[23]:(s=Ca(n.rawInput),t[22]=n.rawInput,t[23]=s);let c=s,u=n.diffs.length>0||n.content.length>0||n.locations.length>0||o.length>0||c!==null,f=a&&u,p;t[24]===x?p=t[25]:(p=(0,Z.jsx)(x,{className:`size-3.5 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),t[24]=x,t[25]=p);let m;t[26]===y.text?m=t[27]:(m=(0,Z.jsx)(`span`,{className:`min-w-0 truncate`,children:y.text}),t[26]=y.text,t[27]=m);let h;t[28]!==n.status||t[29]!==i?(h=(0,Z.jsx)(Fa,{permission:i,status:n.status}),t[28]=n.status,t[29]=i,t[30]=h):h=t[30];let _;t[31]!==n.status||t[32]!==d||t[33]!==l?(_=(0,Z.jsx)(Ia,{status:n.status,completedLive:l,checkVisible:d}),t[31]=n.status,t[32]=d,t[33]=l,t[34]=_):_=t[34];let C;t[35]!==h||t[36]!==_?(C=(0,Z.jsxs)(`span`,{className:`ml-auto flex shrink-0 items-center gap-1.5`,children:[h,_]}),t[35]=h,t[36]=_,t[37]=C):C=t[37];let w;t[38]!==C||t[39]!==p||t[40]!==m?(w=(0,Z.jsxs)(Z.Fragment,{children:[p,m,C]}),t[38]=C,t[39]=p,t[40]=m,t[41]=w):w=t[41];let T=w,E=f&&`rounded-md border border-border/60`,D;t[42]===E?D=t[43]:(D=v(`text-xs`,E),t[42]=E,t[43]=D);let O;t[44]!==u||t[45]!==a||t[46]!==T?(O=u?(0,Z.jsx)(b,{type:`button`,variant:`ghost`,size:`sm`,className:`h-auto w-full justify-start gap-1.5 rounded-md px-2 py-1.5 font-normal`,onClick:g,"aria-expanded":a,children:T}):(0,Z.jsx)(`div`,{className:`flex w-full items-center gap-1.5 px-2 py-1.5`,children:T}),t[44]=u,t[45]=a,t[46]=T,t[47]=O):O=t[47],S=(0,Z.jsxs)(`div`,{className:D,"data-tool-call":``,"data-testid":`agent-thread-tool-call`,children:[O,f?(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1.5 border-border/60 border-t px-2 py-1.5`,children:[n.diffs.map(ka),o.map(Oa),n.content.map(Da),c===null?null:(0,Z.jsx)(za,{text:c}),n.locations.length>0?(0,Z.jsx)(`div`,{className:`flex flex-wrap gap-1 text-muted-foreground`,children:n.locations.map(Ea)}):null]}):null]}),t[6]=x,t[7]=n.content,t[8]=n.diffs,t[9]=n.locations,t[10]=n.rawInput,t[11]=n.status,t[12]=n.terminalIds,t[13]=d,t[14]=l,t[15]=y.text,t[16]=a,t[17]=i,t[18]=r,t[19]=S}else S=t[19];return S}function Ea(e,t){return(0,Z.jsxs)(`span`,{className:`rounded bg-muted/50 px-1 py-0.5 font-mono text-[11px]`,children:[e.path,e.line===void 0?``:`:${e.line}`]},t)}function Da(e,t){return(0,Z.jsx)(`pre`,{className:`overflow-x-auto whitespace-pre-wrap break-words rounded bg-muted/50 px-2 py-1 font-mono text-[11px]`,children:wa(e)},t)}function Oa(e){return(0,Z.jsx)(Ra,{terminal:e},e.terminalId)}function ka(e,t){return(0,Z.jsx)(La,{diff:e},t)}function Aa(e){return e!==void 0}function ja(e){return!e}var Ma=new Set([`accept`,`allow`,`approve`,`decline`,`deny`,`no`,`ok`,`reject`,`yes`]);function Na(e){if(e===null)return null;let t=e.trim().toLocaleLowerCase();return t===``||Ma.has(t)?null:e}function Pa(){let{_:e}=m();return t=>{if(t===null)return null;if(t.kind===`dismissed`)return e({id:`nmwqWS`});let n=Na(t.optionName);return t.kind===`approved`?t.auto?e({id:`xzAmL_`}):e(n===null?{id:`7kb4LU`}:{id:`rbrHTd`,values:{optionName:n}}):t.auto?e({id:`pUKV4K`}):e(n===null?{id:`JsY1p5`}:{id:`_LczaQ`,values:{optionName:n}})}}function Fa(e){let t=(0,Y.c)(11),{permission:n,status:r}=e,i=Pa();if(n===void 0||!n.mergedIntoToolCall)return null;let a,o,s,c;if(t[0]!==i||t[1]!==n||t[2]!==r){c=Symbol.for(`react.early_return_sentinel`);bb0:{let e=nt(n);if(e===null||e.kind===`approved`){c=null;break bb0}if(r===`failed`){c=null;break bb0}a=`shrink-0 text-muted-foreground`,o=`agent-thread-tool-permission`,s=i(e)}t[0]=i,t[1]=n,t[2]=r,t[3]=a,t[4]=o,t[5]=s,t[6]=c}else a=t[3],o=t[4],s=t[5],c=t[6];if(c!==Symbol.for(`react.early_return_sentinel`))return c;let l;return t[7]!==a||t[8]!==o||t[9]!==s?(l=(0,Z.jsx)(`span`,{className:a,"data-testid":o,children:s}),t[7]=a,t[8]=o,t[9]=s,t[10]=l):l=t[10],l}function Ia(e){let t=(0,Y.c)(13),{status:n,completedLive:r,checkVisible:i}=e,{_:a}=m(),o;t[0]!==a||t[1]!==n?(o=a(n===`completed`?{id:`Q7xfEj`}:n===`failed`?{id:`7l15X4`}:n===`in_progress`?{id:`KUjOb9`}:{id:`S48xcO`}),t[0]=a,t[1]=n,t[2]=o):o=t[2];let s=o,c;t[3]===s?c=t[4]:(c=(0,Z.jsx)(`span`,{className:`sr-only`,children:s}),t[3]=s,t[4]=c);let l;t[5]!==i||t[6]!==r||t[7]!==s||t[8]!==n?(l=n===`failed`?(0,Z.jsx)(Ve,{variant:`destructive`,className:`rounded-sm px-1.5 py-0 text-[10px]`,"data-testid":`agent-thread-tool-failed`,children:s}):n===`in_progress`||n===`pending`?(0,Z.jsx)(me,{className:`size-3.5 text-muted-foreground`,"aria-hidden":`true`,"data-testid":`agent-thread-tool-spinner`}):r?(0,Z.jsx)(le,{className:v(`size-3.5 text-muted-foreground/70 transition-opacity duration-500 motion-reduce:transition-none`,i?`opacity-100`:`opacity-0`),"aria-hidden":`true`,"data-testid":`agent-thread-tool-check`}):null,t[5]=i,t[6]=r,t[7]=s,t[8]=n,t[9]=l):l=t[9];let u;return t[10]!==c||t[11]!==l?(u=(0,Z.jsxs)(`span`,{className:`flex shrink-0 items-center`,children:[c,l]}),t[10]=c,t[11]=l,t[12]=u):u=t[12],u}function La(e){let t=(0,Y.c)(19),{diff:n}=e,{_:r}=m(),i,a,o,s;if(t[0]!==r||t[1]!==n.newText||t[2]!==n.oldText||t[3]!==n.path){let e=hr(n.oldText,n.newText);o=`overflow-hidden rounded border border-border/60`,t[8]===n.path?s=t[9]:(s=(0,Z.jsx)(`div`,{className:`bg-muted/50 px-2 py-0.5 font-mono text-[11px] text-muted-foreground`,children:n.path}),t[8]=n.path,t[9]=s),i=`overflow-x-auto font-mono text-[11px] leading-snug`;let c;t[10]===r?c=t[11]:(c=(e,t)=>e.type===`gap`?(0,Z.jsx)(`div`,{className:`select-none px-2 text-muted-foreground/70`,children:r({id:`OJOA7Z`,values:{0:e.count}})},t):(0,Z.jsxs)(`div`,{className:v(`px-2`,e.type===`add`&&`bg-green-500/10 text-green-700 dark:text-green-400`,e.type===`del`&&`bg-red-500/10 text-red-700 dark:text-red-400`,e.type===`ctx`&&`text-muted-foreground`),children:[(0,Z.jsx)(`span`,{"aria-hidden":`true`,children:e.type===`add`?`+ `:e.type===`del`?`- `:` `}),e.text]},t),t[10]=r,t[11]=c),a=e.map(c),t[0]=r,t[1]=n.newText,t[2]=n.oldText,t[3]=n.path,t[4]=i,t[5]=a,t[6]=o,t[7]=s}else i=t[4],a=t[5],o=t[6],s=t[7];let c;t[12]!==i||t[13]!==a?(c=(0,Z.jsx)(`pre`,{className:i,children:a}),t[12]=i,t[13]=a,t[14]=c):c=t[14];let l;return t[15]!==o||t[16]!==s||t[17]!==c?(l=(0,Z.jsxs)(`div`,{className:o,children:[s,c]}),t[15]=o,t[16]=s,t[17]=c,t[18]=l):l=t[18],l}function Ra(e){let t=(0,Y.c)(19),{terminal:n}=e,{_:r}=m(),i;t[0]!==n.args||t[1]!==n.command?(i=[n.command,...n.args],t[0]=n.args,t[1]=n.command,t[2]=i):i=t[2];let a=i.join(` `),o;if(t[3]!==r||t[4]!==a||t[5]!==n.exit||t[6]!==n.output||t[7]!==n.truncated){let e=Cr(n.output),i=n.exit,s=i!==null&&(i.signal!==null||i.exitCode!==0),c;t[9]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Z.jsx)(Fe,{className:`size-3 shrink-0 text-muted-foreground`,"aria-hidden":`true`}),t[9]=c):c=t[9];let l;t[10]===a?l=t[11]:(l=(0,Z.jsx)(`span`,{className:`truncate font-mono text-[11px] text-muted-foreground`,title:a,children:a}),t[10]=a,t[11]=l);let u;t[12]!==r||t[13]!==i||t[14]!==s?(u=(0,Z.jsx)(`span`,{className:`ml-auto shrink-0`,children:i===null?(0,Z.jsxs)(`span`,{className:`flex items-center gap-1 text-[10px] text-muted-foreground shimmer`,children:[(0,Z.jsx)(me,{className:`size-3`,"aria-hidden":`true`}),r({id:`KUjOb9`})]}):(0,Z.jsx)(Ve,{variant:s?`destructive`:`secondary`,className:`px-1.5 py-0 font-mono text-[10px] rounded-sm`,"data-testid":`agent-thread-terminal-exit`,children:i.signal===null?r({id:`APNlbk`,values:{0:i.exitCode??0}}):i.signal})}),t[12]=r,t[13]=i,t[14]=s,t[15]=u):u=t[15];let d;t[16]!==l||t[17]!==u?(d=(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 bg-muted/50 px-2 py-0.5`,children:[c,l,u]}),t[16]=l,t[17]=u,t[18]=d):d=t[18],o=(0,Z.jsxs)(`div`,{className:`overflow-hidden rounded border border-border/60`,"data-testid":`agent-thread-terminal`,children:[d,e.trim()!==``||n.truncated?(0,Z.jsxs)(`pre`,{className:`max-h-64 overflow-auto whitespace-pre-wrap break-words px-2 py-1 font-mono text-[11px] leading-snug`,children:[n.truncated?`${r({id:`_Pmhxt`})}\n`:null,e]}):null]}),t[3]=r,t[4]=a,t[5]=n.exit,t[6]=n.output,t[7]=n.truncated,t[8]=o}else o=t[8];return o}function za(e){let t=(0,Y.c)(15),{text:n}=e,{_:r}=m(),[i,a]=(0,X.useState)(!1),o;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(o=()=>a(Ba),t[0]=o):o=t[0];let s;t[1]===i?s=t[2]:(s=i?(0,Z.jsx)(W,{className:`size-3`,"aria-hidden":`true`}):(0,Z.jsx)(G,{className:`size-3`,"aria-hidden":`true`}),t[1]=i,t[2]=s);let c;t[3]===r?c=t[4]:(c=r({id:`XU5AOg`}),t[3]=r,t[4]=c);let l;t[5]!==i||t[6]!==s||t[7]!==c?(l=(0,Z.jsxs)(b,{type:`button`,variant:`ghost`,size:`sm`,className:`h-auto w-full justify-start gap-1 px-0 py-0.5 text-[10px] text-muted-foreground uppercase tracking-wide hover:bg-transparent`,onClick:o,"aria-expanded":i,children:[s,c]}),t[5]=i,t[6]=s,t[7]=c,t[8]=l):l=t[8];let u;t[9]!==i||t[10]!==n?(u=i?(0,Z.jsx)(`pre`,{className:`overflow-x-auto whitespace-pre-wrap break-words rounded bg-muted/30 px-2 py-1 font-mono text-[11px] text-muted-foreground`,children:n}):null,t[9]=i,t[10]=n,t[11]=u):u=t[11];let d;return t[12]!==l||t[13]!==u?(d=(0,Z.jsxs)(`div`,{"data-testid":`agent-thread-tool-raw-input`,children:[l,u]}),t[12]=l,t[13]=u,t[14]=d):d=t[14],d}function Ba(e){return!e}function Va(e){let t=(0,Y.c)(32),{item:n,threadId:r,actionable:i}=e,{_:a}=m(),o=Pa(),s;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(s=et(),t[0]=s):s=t[0];let c=s,l=nt(n),u=l===null,d=(0,X.useRef)(null),f=(0,X.useRef)(null),p;t[1]!==n.requestId||t[2]!==r?(p=e=>{c.respondPermission(r,n.requestId,{kind:`selected`,optionId:e})},t[1]=n.requestId,t[2]=r,t[3]=p):p=t[3];let h=p,g,_,y;if(t[4]!==n.options){let e=n.options.filter(Ga),r=n.options.filter(Wa);g=e.find(Ua)??e[0],_=e.filter(e=>e!==g);let i=r.find(Ha)??r[0];y=i===void 0?[]:[i,...r.filter(e=>e!==i)],t[4]=n.options,t[5]=g,t[6]=_,t[7]=y}else g=t[5],_=t[6],y=t[7];let x=y,S=g===void 0?f:void 0,C,w;t[8]!==i||t[9]!==u?(C=()=>{if(!u||!i)return;let e=d.current?.closest(`[data-agent-thread-root]`);e==null||!e.contains(document.activeElement)||f.current?.focus()},w=[u,i],t[8]=i,t[9]=u,t[10]=C,t[11]=w):(C=t[10],w=t[11]),(0,X.useEffect)(C,w);let T=o(l),E=u&&i?`border-border bg-muted/30`:`border-border/60 bg-muted/20`,D;t[12]===E?D=t[13]:(D=v(`rounded-md border px-2.5 py-2 text-sm`,E),t[12]=E,t[13]=D);let O;t[14]===n.title?O=t[15]:(O=(0,Z.jsx)(`div`,{className:`mb-1.5 font-medium`,children:n.title}),t[14]=n.title,t[15]=O);let k;t[16]!==a||t[17]!==i||t[18]!==x||t[19]!==S||t[20]!==n.requestId||t[21]!==u||t[22]!==g||t[23]!==T||t[24]!==_||t[25]!==h||t[26]!==r?(k=u?i?(0,Z.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-2`,children:[x.length>0?(0,Z.jsx)(Ka,{options:x,onSelect:h,buttonRef:S,testId:`agent-thread-permission-deny`,moreLabel:a({id:`xlQpTE`}),menuAlign:`start`}):(0,Z.jsx)(b,{ref:S,type:`button`,size:`sm`,variant:`outline`,className:`text-xs`,onClick:()=>c.respondPermission(r,n.requestId,{kind:`cancelled`}),"data-testid":`agent-thread-permission-deny`,children:a({id:`cFCKYZ`})}),(0,Z.jsxs)(`div`,{className:`ml-auto flex items-center gap-1.5`,children:[_.length>0?(0,Z.jsx)(Ka,{options:_,onSelect:h,testId:`agent-thread-permission-allow-more`,moreLabel:a({id:`9dVehq`}),menuAlign:`end`}):null,g===void 0?null:(0,Z.jsx)(b,{ref:f,type:`button`,size:`sm`,className:`text-xs normal-case font-sans`,title:g.name,onClick:()=>h(g.optionId),"data-testid":`agent-thread-permission-allow`,"data-permission-kind":g.kind,children:(0,Z.jsx)(`span`,{className:`max-w-52 truncate`,children:g.name})})]})]}):(0,Z.jsx)(`div`,{className:`text-muted-foreground text-xs`,children:a({id:`Tz4dq-`})}):(0,Z.jsx)(`div`,{className:`text-muted-foreground text-xs`,"data-testid":`agent-thread-permission-outcome`,children:T}),t[16]=a,t[17]=i,t[18]=x,t[19]=S,t[20]=n.requestId,t[21]=u,t[22]=g,t[23]=T,t[24]=_,t[25]=h,t[26]=r,t[27]=k):k=t[27];let A;return t[28]!==D||t[29]!==O||t[30]!==k?(A=(0,Z.jsxs)(`div`,{ref:d,className:D,"data-testid":`agent-thread-permission`,children:[O,k]}),t[28]=D,t[29]=O,t[30]=k,t[31]=A):A=t[31],A}function Ha(e){return e.kind===`reject_once`}function Ua(e){return e.kind===`allow_once`}function Wa(e){return e.kind.startsWith(`reject`)}function Ga(e){return e.kind.startsWith(`allow`)}function Ka(e){let t=(0,Y.c)(31),{options:n,onSelect:r,buttonRef:i,testId:a,moreLabel:o,menuAlign:s}=e,c=n[0];if(c===void 0)return null;let l;t[0]!==r||t[1]!==c.optionId?(l=()=>r(c.optionId),t[0]=r,t[1]=c.optionId,t[2]=l):l=t[2];let u;t[3]===c.name?u=t[4]:(u=(0,Z.jsx)(`span`,{className:`max-w-52 truncate`,children:c.name}),t[3]=c.name,t[4]=u);let d;t[5]!==i||t[6]!==c.kind||t[7]!==c.name||t[8]!==l||t[9]!==u||t[10]!==a?(d=(0,Z.jsx)(b,{ref:i,type:`button`,size:`sm`,variant:`outline`,className:`text-xs`,title:c.name,onClick:l,"data-testid":a,"data-permission-kind":c.kind,children:u}),t[5]=i,t[6]=c.kind,t[7]=c.name,t[8]=l,t[9]=u,t[10]=a,t[11]=d):d=t[11];let f=d;if(n.length===1)return f;let p;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(p=(0,Z.jsx)(Ne,{}),t[12]=p):p=t[12];let m=`${a}-more`,h;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(h=(0,Z.jsx)(W,{className:`size-3.5`,"aria-hidden":`true`}),t[13]=h):h=t[13];let g;t[14]!==o||t[15]!==m?(g=(0,Z.jsx)(N,{asChild:!0,children:(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`outline`,"aria-label":o,"data-testid":m,children:h})}),t[14]=o,t[15]=m,t[16]=g):g=t[16];let _;if(t[17]!==r||t[18]!==n){let e;t[20]===r?e=t[21]:(e=e=>(0,Z.jsx)(O,{onSelect:()=>r(e.optionId),"data-permission-kind":e.kind,children:e.name},e.optionId),t[20]=r,t[21]=e),_=n.map(e),t[17]=r,t[18]=n,t[19]=_}else _=t[19];let v;t[22]!==s||t[23]!==_?(v=(0,Z.jsx)(I,{align:s,className:`max-w-72`,children:_}),t[22]=s,t[23]=_,t[24]=v):v=t[24];let y;t[25]!==g||t[26]!==v?(y=(0,Z.jsxs)(te,{children:[g,v]}),t[25]=g,t[26]=v,t[27]=y):y=t[27];let x;return t[28]!==f||t[29]!==y?(x=(0,Z.jsxs)(Me,{children:[f,p,y]}),t[28]=f,t[29]=y,t[30]=x):x=t[30],x}function qa(e){let t=(0,Y.c)(80),{item:n,threadId:r}=e,{_:i}=m(),a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=et(),t[0]=a):a=t[0];let o=a,s=(0,X.useId)();if(n.resolved===`declined`||n.resolved===`timeout`){let e;t[1]!==i||t[2]!==n.displayName||t[3]!==n.resolved?(e=n.resolved===`declined`?i({id:`sgmRY8`,values:{0:n.displayName}}):i({id:`Y_GpJd`,values:{0:n.displayName}}),t[1]=i,t[2]=n.displayName,t[3]=n.resolved,t[4]=e):e=t[4];let r;return t[5]===e?r=t[6]:(r=(0,Z.jsx)(`div`,{className:`rounded-md border border-border/60 bg-muted/20 px-2.5 py-2 text-muted-foreground text-xs`,"data-testid":`agent-thread-runtime-consent`,children:e}),t[5]=e,t[6]=r),r}if(n.resolved===`granted`){if(n.install===`done`){let e;t[7]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,Z.jsx)(le,{className:`size-3.5 shrink-0 text-green-600 dark:text-green-400`,"aria-hidden":`true`}),t[7]=e):e=t[7];let r;t[8]!==i||t[9]!==n.displayName||t[10]!==n.version?(r=i({id:`lKQnp-`,values:{0:n.displayName,1:n.version}}),t[8]=i,t[9]=n.displayName,t[10]=n.version,t[11]=r):r=t[11];let a;return t[12]===r?a=t[13]:(a=(0,Z.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-md border border-border/60 bg-muted/20 px-2.5 py-2 text-muted-foreground text-xs`,"data-testid":`agent-thread-runtime-consent`,children:[e,(0,Z.jsx)(`span`,{children:r})]}),t[12]=r,t[13]=a),a}if(n.install===`failed`){let e;t[14]!==i||t[15]!==n.displayName?(e=i({id:`jeJexw`,values:{0:n.displayName}}),t[14]=i,t[15]=n.displayName,t[16]=e):e=t[16];let r;return t[17]===e?r=t[18]:(r=(0,Z.jsx)(`div`,{className:`rounded-md border border-border/60 bg-muted/20 px-2.5 py-2 text-muted-foreground text-xs`,"data-testid":`agent-thread-runtime-consent`,children:e}),t[17]=e,t[18]=r),r}let e;t[19]===n.progress?e=t[20]:(e=Ja(n.progress),t[19]=n.progress,t[20]=e);let r=e,a;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(a=(0,Z.jsx)(me,{className:`size-3.5 shrink-0`,"aria-hidden":`true`}),t[21]=a):a=t[21];let o;t[22]!==i||t[23]!==n.displayName||t[24]!==n.version?(o=i({id:`DMeaxi`,values:{0:n.displayName,1:n.version}}),t[22]=i,t[23]=n.displayName,t[24]=n.version,t[25]=o):o=t[25];let c;t[26]!==s||t[27]!==o?(c=(0,Z.jsxs)(`div`,{className:`mb-1.5 flex items-center gap-1.5 text-muted-foreground`,children:[a,(0,Z.jsx)(`span`,{id:s,children:o})]}),t[26]=s,t[27]=o,t[28]=c):c=t[28];let l;t[29]!==s||t[30]!==r?(l=(0,Z.jsx)(L,{value:r,indeterminateFillPercent:40,"aria-labelledby":s,className:`h-1.5`}),t[29]=s,t[30]=r,t[31]=l):l=t[31];let u;t[32]===r?u=t[33]:(u=r===null?null:(0,Z.jsx)(`div`,{"aria-hidden":`true`,className:`mt-1 text-[11px] text-muted-foreground`,children:`${r}%`}),t[32]=r,t[33]=u);let d;return t[34]!==c||t[35]!==l||t[36]!==u?(d=(0,Z.jsxs)(`div`,{className:`rounded-md border border-border/60 bg-muted/30 px-2.5 py-2 text-xs`,"data-testid":`agent-thread-runtime-consent`,children:[c,l,u]}),t[34]=c,t[35]=l,t[36]=u,t[37]=d):d=t[37],d}let c;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(c=(0,Z.jsx)(fe,{className:`size-4 shrink-0`,"aria-hidden":`true`}),t[38]=c):c=t[38];let l;t[39]!==i||t[40]!==n.agentName||t[41]!==n.displayName||t[42]!==n.reason?(l=n.reason===`damaged`?i({id:`hadECI`,values:{0:n.displayName}}):i({id:`u5Utjn`,values:{0:n.agentName,1:n.displayName}}),t[39]=i,t[40]=n.agentName,t[41]=n.displayName,t[42]=n.reason,t[43]=l):l=t[43];let u;t[44]===l?u=t[45]:(u=(0,Z.jsxs)(`div`,{className:`mb-1 flex items-center gap-1.5 font-medium`,children:[c,(0,Z.jsx)(`span`,{children:l})]}),t[44]=l,t[45]=u);let d;t[46]!==i||t[47]!==n.approxSizeMB||t[48]!==n.displayName||t[49]!==n.provides||t[50]!==n.reason||t[51]!==n.sourceHost||t[52]!==n.version?(d=n.reason===`damaged`?i({id:`k0jsmJ`,values:{0:n.displayName,1:n.displayName,2:n.version,3:n.approxSizeMB,4:n.sourceHost}}):n.reason===`broken`?i({id:`OJ4VDl`,values:{0:n.provides,1:n.displayName,2:n.displayName,3:n.version,4:n.approxSizeMB,5:n.sourceHost}}):i({id:`l7Qq48`,values:{0:n.provides,1:n.displayName,2:n.version,3:n.approxSizeMB,4:n.sourceHost}}),t[46]=i,t[47]=n.approxSizeMB,t[48]=n.displayName,t[49]=n.provides,t[50]=n.reason,t[51]=n.sourceHost,t[52]=n.version,t[53]=d):d=t[53];let f;t[54]===d?f=t[55]:(f=(0,Z.jsx)(`p`,{className:`mb-2 text-muted-foreground text-xs`,children:d}),t[54]=d,t[55]=f);let p;t[56]!==n.requestId||t[57]!==r?(p=()=>o.respondRuntimeConsent(r,n.requestId,{kind:`granted`}),t[56]=n.requestId,t[57]=r,t[58]=p):p=t[58];let h;t[59]!==i||t[60]!==n.displayName?(h=i({id:`BjitBo`,values:{0:n.displayName}}),t[59]=i,t[60]=n.displayName,t[61]=h):h=t[61];let g;t[62]!==p||t[63]!==h?(g=(0,Z.jsx)(b,{type:`button`,size:`sm`,className:`h-7 text-xs`,onClick:p,"data-testid":`agent-thread-runtime-consent-allow`,children:h}),t[62]=p,t[63]=h,t[64]=g):g=t[64];let _;t[65]!==n.requestId||t[66]!==r?(_=()=>o.respondRuntimeConsent(r,n.requestId,{kind:`declined`}),t[65]=n.requestId,t[66]=r,t[67]=_):_=t[67];let v;t[68]===i?v=t[69]:(v=i({id:`PBxg_E`}),t[68]=i,t[69]=v);let y;t[70]!==_||t[71]!==v?(y=(0,Z.jsx)(b,{type:`button`,size:`sm`,variant:`outline`,className:`h-7 text-xs`,onClick:_,"data-testid":`agent-thread-runtime-consent-decline`,children:v}),t[70]=_,t[71]=v,t[72]=y):y=t[72];let x;t[73]!==y||t[74]!==g?(x=(0,Z.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[g,y]}),t[73]=y,t[74]=g,t[75]=x):x=t[75];let S;return t[76]!==x||t[77]!==u||t[78]!==f?(S=(0,Z.jsxs)(`div`,{className:`rounded-md border border-blue-500/40 bg-blue-500/5 px-2.5 py-2 text-sm`,"data-testid":`agent-thread-runtime-consent`,children:[u,f,x]}),t[76]=x,t[77]=u,t[78]=f,t[79]=S):S=t[79],S}function Ja(e){return e===null||e.totalBytes===null||e.totalBytes<=0?null:Math.min(100,Math.round(e.receivedBytes/e.totalBytes*100))}function Ya(e){let t=Math.round(e/1e3);if(t>=1e3){let t=e/1e6;return`${t%1==0?t.toFixed(0):t.toFixed(1)}M`}return e>=1e3?`${t}k`:String(e)}function Xa(e){let t=(0,Y.c)(47),{used:n,size:r,percent:i}=e,{_:a}=m(),o=2*Math.PI*6,s=i>=90?`text-red-500`:i>=75?`text-amber-500`:`text-muted-foreground/60`,c=100-i,l,u,d,f,p,h,g,_,y;if(t[0]!==a||t[1]!==c||t[2]!==i||t[3]!==r||t[4]!==s||t[5]!==n){let e=Ya(n),m=Ya(r);u=C;let b=a({id:`ElatXA`,values:{percent:i,usedLabel:e,sizeLabel:m}}),w;t[15]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,Z.jsx)(`circle`,{cx:`8`,cy:`8`,r:6,fill:`none`,strokeWidth:`2`,className:`stroke-current text-muted-foreground/10`}),t[15]=w):w=t[15];let T=o*(1-i/100),E;t[16]===s?E=t[17]:(E=v(`stroke-current transition-[stroke-dashoffset]`,s),t[16]=s,t[17]=E);let D;t[18]!==T||t[19]!==E?(D=(0,Z.jsxs)(`svg`,{viewBox:`0 0 16 16`,className:`size-4 -rotate-90`,"aria-hidden":`true`,children:[w,(0,Z.jsx)(`circle`,{cx:`8`,cy:`8`,r:6,fill:`none`,strokeWidth:`2`,strokeLinecap:`round`,strokeDasharray:o,strokeDashoffset:T,className:E})]}),t[18]=T,t[19]=E,t[20]=D):D=t[20],y=(0,Z.jsx)(x,{"aria-label":b,className:`flex size-5 items-center justify-center rounded-full outline-none focus-visible:ring-2 focus-visible:ring-ring/50`,"data-testid":`agent-thread-usage`,children:D}),l=S,_=`top`,p=`flex flex-col items-center gap-0.5 text-center`;let O;t[21]===a?O=t[22]:(O=a({id:`MJuO1q`}),t[21]=a,t[22]=O),t[23]===O?h=t[24]:(h=(0,Z.jsx)(`span`,{className:`text-background/60`,children:O}),t[23]=O,t[24]=h);let k;t[25]!==a||t[26]!==c||t[27]!==i?(k=a({id:`syi2ye`,values:{percent:i,left:c}}),t[25]=a,t[26]=c,t[27]=i,t[28]=k):k=t[28],t[29]===k?g=t[30]:(g=(0,Z.jsx)(`span`,{children:k}),t[29]=k,t[30]=g),d=`tabular-nums`,f=a({id:`EPwuTC`,values:{usedLabel:e,sizeLabel:m}}),t[0]=a,t[1]=c,t[2]=i,t[3]=r,t[4]=s,t[5]=n,t[6]=l,t[7]=u,t[8]=d,t[9]=f,t[10]=p,t[11]=h,t[12]=g,t[13]=_,t[14]=y}else l=t[6],u=t[7],d=t[8],f=t[9],p=t[10],h=t[11],g=t[12],_=t[13],y=t[14];let b;t[31]!==d||t[32]!==f?(b=(0,Z.jsx)(`span`,{className:d,children:f}),t[31]=d,t[32]=f,t[33]=b):b=t[33];let w;t[34]!==p||t[35]!==h||t[36]!==g||t[37]!==b?(w=(0,Z.jsxs)(`div`,{className:p,children:[h,g,b]}),t[34]=p,t[35]=h,t[36]=g,t[37]=b,t[38]=w):w=t[38];let T;t[39]!==l||t[40]!==_||t[41]!==w?(T=(0,Z.jsx)(l,{side:_,children:w}),t[39]=l,t[40]=_,t[41]=w,t[42]=T):T=t[42];let E;return t[43]!==u||t[44]!==T||t[45]!==y?(E=(0,Z.jsxs)(u,{children:[y,T]}),t[43]=u,t[44]=T,t[45]=y,t[46]=E):E=t[46],E}function Za(e){let t=(0,Y.c)(84),{info:n,composerRef:r,onSubmit:i,canPrompt:a,canQueue:s,turnActive:c,cancelPending:l,onCancel:u,onSteer:d,status:f,archived:p,resumePending:h,usage:g,selectedCommentCount:_,selectedCommentDocs:y,hasQueuedComments:w,onAttachComments:T,onDismissComments:E,pendingAttachments:D,pendingUploads:O,imagesAccepted:k,onIngestImageFiles:A,onIngestAllFiles:j,onRemovePendingAttachment:M}=e,{_:N}=m(),P=pi(n.agent.name),[F,ee]=(0,X.useState)(!0),I=p?h:f===`exited`,te;t[0]===g?te=t[1]:(te=g!==null&&g.used!==void 0&&g.size!==void 0&&g.size>0?Math.min(100,Math.round(g.used/g.size*100)):null,t[0]=g,t[1]=te);let L=te,ne;t[2]===n.queue?ne=t[3]:(ne=n.queue??[],t[2]=n.queue,t[3]=ne);let R=ne,re=!F||w||D.length>0,ie=!(a||s)||!re,z;t[4]!==N||t[5]!==s?(z=N(s?{id:`RQWuCs`}:{id:`JlFcis`}),t[4]=N,t[5]=s,t[6]=z):z=t[6];let oe;t[7]===s?oe=t[8]:(oe=s?(0,Z.jsx)(pe,{className:`size-4`,"aria-hidden":`true`}):(0,Z.jsx)(U,{className:`size-4`,"aria-hidden":`true`}),t[7]=s,t[8]=oe);let B;t[9]!==i||t[10]!==ie||t[11]!==z||t[12]!==oe?(B=(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,className:`rounded-lg`,disabled:ie,onClick:i,"aria-label":z,"data-testid":`agent-thread-send`,children:oe}),t[9]=i,t[10]=ie,t[11]=z,t[12]=oe,t[13]=B):B=t[13];let se=B,V;t[14]!==p||t[15]!==n.threadId||t[16]!==R?(V=R.length>0&&!p?(0,Z.jsx)(Qa,{threadId:n.threadId,queue:R}):null,t[14]=p,t[15]=n.threadId,t[16]=R,t[17]=V):V=t[17];let H;t[18]===n?H=t[19]:(H=(0,Z.jsx)(io,{info:n}),t[18]=n,t[19]=H);let ce;t[20]===r?ce=t[21]:(ce=e=>Se(e,r),t[20]=r,t[21]=ce);let le=e=>{let t=sr(e.clipboardData);if(t.length!==0){if(e.preventDefault(),!k){ae.error(N({id:`QIzioS`,values:{agentName:P}}));return}A(t)}},W;t[22]!==w||t[23]!==T||t[24]!==E||t[25]!==_||t[26]!==y?(W=_>0?(0,Z.jsx)(xe,{className:`px-3 pt-2 pb-1`,children:(0,Z.jsx)(ve,{count:_,docs:y,attached:w,onAttach:T,onDismiss:E})}):null,t[22]=w,t[23]=T,t[24]=E,t[25]=_,t[26]=y,t[27]=W):W=t[27];let G;t[28]!==M||t[29]!==D||t[30]!==O?(G=D.length>0||O.length>0?(0,Z.jsx)(to,{images:D,uploads:O,onRemove:M}):null,t[28]=M,t[29]=D,t[30]=O,t[31]=G):G=t[31];let ue=De,de=N({id:`mToVM9`,values:{agentName:P}}),K;t[32]!==l||t[33]!==u||t[34]!==c?(K=()=>{c&&!l&&u()},t[32]=l,t[33]=u,t[34]=c,t[35]=K):K=t[35];let fe=N(p?h?{id:`lhRpUP`}:{id:`e9sHSO`}:f===`auth_required`?{id:`r2eKE3`,values:{agentName:P}}:f===`authenticating`?{id:`Yz8urJ`,values:{agentName:P}}:{id:`mToVM9`,values:{agentName:P}}),he=n.availableCommands??null,ge=I&&`opacity-50`,q;t[36]===ge?q=t[37]:(q=v(`max-h-40 overflow-y-auto px-2.5 pt-1 text-base md:text-sm`,ge),t[36]=ge,t[37]=q);let _e;t[38]!==ue||t[39]!==I||t[40]!==r||t[41]!==i||t[42]!==ee||t[43]!==de||t[44]!==K||t[45]!==fe||t[46]!==he||t[47]!==q?(_e=(0,Z.jsx)(ue,{ref:r,ariaLabel:de,onEmptyChange:ee,onSubmit:i,onEscape:K,placeholder:fe,disabled:I,slashCommands:he,className:q,testId:`agent-thread-composer`}),t[38]=ue,t[39]=I,t[40]=r,t[41]=i,t[42]=ee,t[43]=de,t[44]=K,t[45]=fe,t[46]=he,t[47]=q,t[48]=_e):_e=t[48];let ye;t[49]===n?ye=t[50]:(ye=(0,Z.jsx)(Bi,{info:n}),t[49]=n,t[50]=ye);let be;t[51]===j?be=t[52]:(be=(0,Z.jsx)(oo,{onFiles:j}),t[51]=j,t[52]=be);let J;t[53]!==g||t[54]!==L?(J=L!==null&&g?.used!==void 0&&g?.size!==void 0?(0,Z.jsx)(Xa,{used:g.used,size:g.size,percent:L}):null,t[53]=g,t[54]=L,t[55]=J):J=t[55];let Ce;t[56]!==N||t[57]!==s||t[58]!==l||t[59]!==re||t[60]!==F||t[61]!==u||t[62]!==d||t[63]!==se||t[64]!==c?(Ce=c&&(l||!re)?(0,Z.jsxs)(C,{children:[(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,className:`rounded-lg`,disabled:l,onClick:u,"aria-label":N(l?{id:`161NCV`}:{id:`ygCKqB`}),"data-testid":`agent-thread-cancel`,children:l?(0,Z.jsx)(me,{className:`size-3.5`,"aria-hidden":`true`}):(0,Z.jsx)(st,{className:`size-3 fill-current`,"aria-hidden":`true`})})}),(0,Z.jsx)(S,{side:`top`,children:N({id:`RLYckQ`})})]}):s?(0,Z.jsxs)(Z.Fragment,{children:[F?null:(0,Z.jsxs)(C,{children:[(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`outline`,className:`rounded-lg`,onClick:d,"aria-label":N({id:`7lFX_h`}),"data-testid":`agent-thread-steer`,children:(0,Z.jsx)(o,{className:`size-4`,"aria-hidden":`true`})})}),(0,Z.jsx)(S,{side:`top`,children:N({id:`dSORvE`})})]}),(0,Z.jsxs)(C,{children:[(0,Z.jsx)(x,{asChild:!0,children:se}),(0,Z.jsx)(S,{side:`top`,children:N({id:`5HJpFY`})})]})]}):se,t[56]=N,t[57]=s,t[58]=l,t[59]=re,t[60]=F,t[61]=u,t[62]=d,t[63]=se,t[64]=c,t[65]=Ce):Ce=t[65];let we;t[66]!==J||t[67]!==Ce?(we=(0,Z.jsxs)(`div`,{className:`ml-auto flex items-center gap-1.5`,children:[J,Ce]}),t[66]=J,t[67]=Ce,t[68]=we):we=t[68];let Te;t[69]!==ye||t[70]!==be||t[71]!==we?(Te=(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 px-1.5 pt-1 pb-1.5`,children:[ye,be,we]}),t[69]=ye,t[70]=be,t[71]=we,t[72]=Te):Te=t[72];let Ee;t[73]!==ce||t[74]!==le||t[75]!==W||t[76]!==G||t[77]!==_e||t[78]!==Te?(Ee=(0,Z.jsxs)(`div`,{onMouseDown:ce,onPaste:le,className:`relative cursor-text rounded-lg border border-input bg-transparent transition-colors focus-within:border-ring focus-within:ring-3 focus-within:ring-ring/50 dark:bg-input/30`,children:[W,G,_e,Te]}),t[73]=ce,t[74]=le,t[75]=W,t[76]=G,t[77]=_e,t[78]=Te,t[79]=Ee):Ee=t[79];let Oe;return t[80]!==Ee||t[81]!==V||t[82]!==H?(Oe=(0,Z.jsxs)(`div`,{className:`p-2`,children:[V,H,Ee]}),t[80]=Ee,t[81]=V,t[82]=H,t[83]=Oe):Oe=t[83],Oe}function Qa(e){let t=(0,Y.c)(12),{threadId:n,queue:r}=e,{_:i}=m(),a;t[0]===i?a=t[1]:(a=i({id:`GNkUvW`}),t[0]=i,t[1]=a);let o;t[2]===a?o=t[3]:(o=(0,Z.jsx)(`span`,{className:`px-1 font-medium text-[10px] text-muted-foreground/70 uppercase tracking-wide`,children:a}),t[2]=a,t[3]=o);let s;if(t[4]!==r||t[5]!==n){let e;t[7]===n?e=t[8]:(e=e=>(0,Z.jsx)($a,{threadId:n,message:e},e.id),t[7]=n,t[8]=e),s=r.map(e),t[4]=r,t[5]=n,t[6]=s}else s=t[6];let c;return t[9]!==o||t[10]!==s?(c=(0,Z.jsxs)(`div`,{className:`mb-1.5 flex flex-col gap-1`,"data-testid":`agent-thread-queue`,children:[o,s]}),t[9]=o,t[10]=s,t[11]=c):c=t[11],c}function $a(e){let t=(0,Y.c)(82),{threadId:n,message:r}=e,{_:i}=m(),a;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(a=et(),t[0]=a):a=t[0];let o=a,[s,c]=(0,X.useState)(!1),[l,u]=(0,X.useState)(``),d=r.held===!0,f;t[1]!==r.id||t[2]!==n?(f=()=>o.holdQueued(n,r.id,!1),t[1]=r.id,t[2]=n,t[3]=f):f=t[3];let p=f,h;t[4]!==r.content||t[5]!==r.id||t[6]!==n?(h=()=>{o.holdQueued(n,r.id,!0),u(r.content),c(!0)},t[4]=r.content,t[5]=r.id,t[6]=n,t[7]=h):h=t[7];let g=h,_;t[8]===p?_=t[9]:(_=()=>{c(!1),p()},t[8]=p,t[9]=_);let y=_,x;t[10]!==i||t[11]!==y||t[12]!==r.content||t[13]!==r.id||t[14]!==p||t[15]!==n||t[16]!==l?(x=()=>{let e=l.trim();if(e===``){y();return}if(c(!1),e===r.content){p();return}o.editQueued(n,r.id,e).catch(()=>{ae.error(i({id:`EFfGAv`}))})},t[10]=i,t[11]=y,t[12]=r.content,t[13]=r.id,t[14]=p,t[15]=n,t[16]=l,t[17]=x):x=t[17];let S=x;if(s){let e;t[18]===Symbol.for(`react.memo_cache_sentinel`)?(e=e=>u(e.target.value),t[18]=e):e=t[18];let n;t[19]!==y||t[20]!==S?(n=e=>{e.key===`Enter`&&!e.shiftKey?(e.preventDefault(),S()):e.key===`Escape`&&(e.preventDefault(),y())},t[19]=y,t[20]=S,t[21]=n):n=t[21];let r;t[22]===i?r=t[23]:(r=i({id:`5soCUZ`}),t[22]=i,t[23]=r);let a;t[24]!==n||t[25]!==r||t[26]!==l?(a=(0,Z.jsx)(We,{value:l,onChange:e,onKeyDown:n,autoFocus:!0,rows:1,"aria-label":r,className:`min-h-8 resize-none border-0 bg-transparent px-1.5 py-1 shadow-none focus-visible:border-0 focus-visible:ring-0 dark:bg-transparent`,"data-testid":`agent-thread-queued-input`}),t[24]=n,t[25]=r,t[26]=l,t[27]=a):a=t[27];let o;t[28]===i?o=t[29]:(o=i({id:`nBHvPL`}),t[28]=i,t[29]=o);let s;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsx)(Re,{className:`size-3.5`,"aria-hidden":`true`}),t[30]=s):s=t[30];let c;t[31]!==y||t[32]!==o?(c=(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`size-6`,onClick:y,"aria-label":o,"data-testid":`agent-thread-queued-cancel-edit`,children:s}),t[31]=y,t[32]=o,t[33]=c):c=t[33];let d;t[34]===l?d=t[35]:(d=l.trim(),t[34]=l,t[35]=d);let f=d===``,p;t[36]===i?p=t[37]:(p=i({id:`CB7c0Z`}),t[36]=i,t[37]=p);let m;t[38]===Symbol.for(`react.memo_cache_sentinel`)?(m=(0,Z.jsx)(le,{className:`size-3.5`,"aria-hidden":`true`}),t[38]=m):m=t[38];let h;t[39]!==S||t[40]!==f||t[41]!==p?(h=(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`size-6`,disabled:f,onClick:S,"aria-label":p,"data-testid":`agent-thread-queued-save`,children:m}),t[39]=S,t[40]=f,t[41]=p,t[42]=h):h=t[42];let g;t[43]!==c||t[44]!==h?(g=(0,Z.jsxs)(`div`,{className:`flex items-center justify-end gap-1`,children:[c,h]}),t[43]=c,t[44]=h,t[45]=g):g=t[45];let _;return t[46]!==g||t[47]!==a?(_=(0,Z.jsxs)(`div`,{className:`rounded-md border border-input bg-muted/30 p-1`,"data-testid":`agent-thread-queued-editing`,children:[a,g]}),t[46]=g,t[47]=a,t[48]=_):_=t[48],_}let C=d?`border-input/40 border-dashed bg-muted/20`:`border-input/60 bg-muted/30`,w;t[49]===C?w=t[50]:(w=v(`flex items-center gap-1 rounded-md border py-0.5 pl-2 pr-1`,C),t[49]=C,t[50]=w);let T=d?`true`:void 0,E=d?`text-muted-foreground/60`:`text-muted-foreground`,D;t[51]===E?D=t[52]:(D=v(`min-w-0 flex-1 truncate text-sm`,E),t[51]=E,t[52]=D);let O;t[53]!==r.content||t[54]!==D?(O=(0,Z.jsx)(`span`,{className:D,children:r.content}),t[53]=r.content,t[54]=D,t[55]=O):O=t[55];let k;t[56]!==i||t[57]!==d||t[58]!==p?(k=d?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`span`,{className:`shrink-0 font-medium text-[10px] text-muted-foreground/70 uppercase tracking-wide`,children:i({id:`UPi_yZ`})}),(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`size-6 shrink-0 text-muted-foreground`,onClick:p,"aria-label":i({id:`oPU_4D`}),"data-testid":`agent-thread-queued-release`,children:(0,Z.jsx)(le,{className:`size-3.5`,"aria-hidden":`true`})})]}):null,t[56]=i,t[57]=d,t[58]=p,t[59]=k):k=t[59];let A;t[60]===i?A=t[61]:(A=i({id:`5soCUZ`}),t[60]=i,t[61]=A);let j;t[62]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,Z.jsx)(Pe,{className:`size-3.5`,"aria-hidden":`true`}),t[62]=j):j=t[62];let M;t[63]!==g||t[64]!==A?(M=(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`size-6 shrink-0 text-muted-foreground`,onClick:g,"aria-label":A,"data-testid":`agent-thread-queued-edit`,children:j}),t[63]=g,t[64]=A,t[65]=M):M=t[65];let N;t[66]!==r.id||t[67]!==n?(N=()=>o.removeQueued(n,r.id),t[66]=r.id,t[67]=n,t[68]=N):N=t[68];let P;t[69]===i?P=t[70]:(P=i({id:`-WeuHF`}),t[69]=i,t[70]=P);let F;t[71]===Symbol.for(`react.memo_cache_sentinel`)?(F=(0,Z.jsx)(Re,{className:`size-3.5`,"aria-hidden":`true`}),t[71]=F):F=t[71];let ee;t[72]!==N||t[73]!==P?(ee=(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`size-6 shrink-0 text-muted-foreground`,onClick:N,"aria-label":P,"data-testid":`agent-thread-queued-remove`,children:F}),t[72]=N,t[73]=P,t[74]=ee):ee=t[74];let I;return t[75]!==O||t[76]!==k||t[77]!==M||t[78]!==ee||t[79]!==w||t[80]!==T?(I=(0,Z.jsxs)(`div`,{className:w,"data-testid":`agent-thread-queued`,"data-held":T,children:[O,k,M,ee]}),t[75]=O,t[76]=k,t[77]=M,t[78]=ee,t[79]=w,t[80]=T,t[81]=I):I=t[81],I}function eo(e,t){let n=e.lastIndexOf(`.`);if(n>0&&n<e.length-1)return e.slice(n+1).toLowerCase();let r=t.lastIndexOf(`/`);return r>0&&r<t.length-1?t.slice(r+1).toLowerCase():`file`}function to(e){let t=(0,Y.c)(14),{images:n,uploads:r,onRemove:i}=e,{_:a}=m(),o=(0,X.use)(mi),s;if(t[0]!==a||t[1]!==n||t[2]!==i||t[3]!==o){let e;t[5]!==a||t[6]!==i||t[7]!==o?(e=(e,t)=>{let n=e.kind===`image`||e.kind===`blob`?`${e.name}:${e.data.slice(0,24)}`:`${e.name}:${e.path}`,r=e.kind===`image`?`data:${e.mimeType};base64,${e.data}`:null,s=e.kind===`file`||e.kind===`folder`?eo(e.name,``):eo(e.name,e.mimeType);return(0,Z.jsxs)(`div`,{className:`group relative inline-flex size-14`,title:e.name,children:[r===null?(0,Z.jsx)(`div`,{className:`inline-flex size-full items-center justify-center overflow-hidden rounded-md border border-input bg-muted`,children:(0,Z.jsx)(`span`,{className:`text-muted-foreground text-xs uppercase`,children:s})}):(0,Z.jsx)(b,{type:`button`,variant:`ghost`,onClick:()=>o?.({src:r,name:e.name}),disabled:o===null,className:`size-full items-center justify-center overflow-hidden rounded-md border border-input bg-muted p-0 hover:bg-muted`,"aria-label":e.name,"data-testid":`agent-thread-pending-image-preview`,children:(0,Z.jsx)(`img`,{src:r,alt:e.name,className:`h-full w-full object-cover`,draggable:!1})}),(0,Z.jsx)(b,{type:`button`,size:`icon`,variant:`secondary`,onClick:e=>{e.stopPropagation(),i(t)},"aria-label":a({id:`w61W3L`,values:{0:e.name}}),className:`absolute top-0.5 right-0.5 size-5 rounded-full border border-border bg-background/80 p-0 shadow-sm opacity-0 backdrop-blur-sm transition-opacity group-hover:opacity-100 focus-visible:opacity-100`,"data-testid":`agent-thread-pending-image-remove`,children:(0,Z.jsx)(Re,{className:`size-3`,"aria-hidden":`true`})})]},n)},t[5]=a,t[6]=i,t[7]=o,t[8]=e):e=t[8],s=n.map(e),t[0]=a,t[1]=n,t[2]=i,t[3]=o,t[4]=s}else s=t[4];let c;t[9]===r?c=t[10]:(c=r.map(no),t[9]=r,t[10]=c);let l;return t[11]!==s||t[12]!==c?(l=(0,Z.jsxs)(`div`,{className:`flex flex-wrap gap-2 px-3 pt-2 pb-1`,"data-testid":`agent-thread-pending-images`,children:[s,c]}),t[11]=s,t[12]=c,t[13]=l):l=t[13],l}function no(e){return(0,Z.jsx)(`div`,{className:`relative inline-flex size-14 items-center justify-center overflow-hidden rounded-md border border-input bg-muted`,title:e.name,"data-testid":`agent-thread-pending-upload`,children:(0,Z.jsx)(me,{className:`size-4 text-muted-foreground`,"aria-hidden":`true`})},e.id)}function ro(e){let t=(0,Y.c)(15),{onDismiss:n}=e,{_:r}=m(),i;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(i=(0,Z.jsx)(g,{className:`size-8`,"aria-hidden":`true`}),t[0]=i):i=t[0];let a;t[1]===r?a=t[2]:(a=r({id:`moUeZ_`}),t[1]=r,t[2]=a);let o;t[3]===a?o=t[4]:(o=(0,Z.jsx)(`span`,{className:`font-medium text-base`,children:a}),t[3]=a,t[4]=o);let s;t[5]===r?s=t[6]:(s=r({id:`3uSzeS`}),t[5]=r,t[6]=s);let c;t[7]===s?c=t[8]:(c=(0,Z.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:s}),t[7]=s,t[8]=c);let l;t[9]!==o||t[10]!==c?(l=(0,Z.jsxs)(`div`,{className:`flex flex-col items-center gap-3 rounded-xl border-2 border-primary/70 border-dashed bg-background/90 px-8 py-6 text-center text-primary shadow-lg`,children:[i,(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[o,c]})]}),t[9]=o,t[10]=c,t[11]=l):l=t[11];let u;return t[12]!==n||t[13]!==l?(u=(0,Z.jsx)(`div`,{className:`pointer-events-auto absolute inset-0 z-20 flex items-center justify-center bg-background/85 backdrop-blur-sm`,onClick:n,"data-testid":`agent-thread-drop-overlay`,children:l}),t[12]=n,t[13]=l,t[14]=u):u=t[14],u}function io(e){let t=(0,Y.c)(9),{info:n}=e,{_:r}=m(),i=se(),a=n.promptCapabilities,o;t[0]!==r||t[1]!==i?(o=i===null?r({id:`95bl6Q`}):(()=>{let e=i.pathSeparator===`\\`?`\\`:`/`;return r({id:`Izh19j`,values:{tail:i.contentDir.split(e).filter(ao).slice(-2).join(e)}})})(),t[0]=r,t[1]=i,t[2]=o):o=t[2];let s=o,c;t[3]!==r||t[4]!==a?(c=a!=null&&a.embeddedContext!==!0?r({id:`LZe2vX`}):``,t[3]=r,t[4]=a,t[5]=c):c=t[5];let l=c,u;return t[6]!==l||t[7]!==s?(u=(0,Z.jsxs)(`div`,{className:`px-2 pb-1 text-[11px] text-muted-foreground`,"data-testid":`agent-thread-workspace-reach`,children:[s,l]}),t[6]=l,t[7]=s,t[8]=u):u=t[8],u}function ao(e){return e!==``}function oo(e){let t=(0,Y.c)(15),{onFiles:n}=e,{_:r}=m(),i;t[0]===n?i=t[1]:(i=()=>{let e=document.createElement(`input`);e.type=`file`,e.multiple=!0,e.addEventListener(`change`,()=>{let t=Array.from(e.files??[]);t.length>0&&n(t)}),e.click()},t[0]=n,t[1]=i);let a=i,o;t[2]===r?o=t[3]:(o=r({id:`tCyvAw`}),t[2]=r,t[3]=o);let s;t[4]===Symbol.for(`react.memo_cache_sentinel`)?(s=(0,Z.jsx)(g,{className:`size-4`,"aria-hidden":`true`}),t[4]=s):s=t[4];let c;t[5]!==a||t[6]!==o?(c=(0,Z.jsx)(x,{asChild:!0,children:(0,Z.jsx)(b,{type:`button`,size:`icon-sm`,variant:`ghost`,className:`rounded-lg`,onClick:a,"aria-label":o,"data-testid":`agent-thread-attach-files`,children:s})}),t[5]=a,t[6]=o,t[7]=c):c=t[7];let l;t[8]===r?l=t[9]:(l=r({id:`tCyvAw`}),t[8]=r,t[9]=l);let u;t[10]===l?u=t[11]:(u=(0,Z.jsx)(S,{side:`top`,children:l}),t[10]=l,t[11]=u);let d;return t[12]!==c||t[13]!==u?(d=(0,Z.jsxs)(C,{children:[c,u]}),t[12]=c,t[13]=u,t[14]=d):d=t[14],d}export{Si as ThreadView};
@@ -1 +0,0 @@
1
- import"./dist-DGemBD_J.js";import{t as e}from"./dist-XgwTV-oh2.js";import{t}from"./messages-7TQ4p_5e.js";e.load(`en`,t.messages),e.activate(`en`);
@@ -1 +0,0 @@
1
- import"./src-BxdlvOrw.mjs";import"./resolve-project-root-COu6TC2y.mjs";import"./src-BDmrU0nU.mjs";import"./acp-harness-probe-CwlSA2YA.mjs";import"./init-DtEg1CVj.mjs";import{n as e}from"./loader-FTxT5qp1.mjs";import"./skill-teardown-W9f5SFoc.mjs";import"./preview-DbzR0PS5.mjs";import"./mcp-migrate-event-B1gJf6bG.mjs";export{e as loadConfig};
@@ -1 +0,0 @@
1
- import{T as e,_ as t,m as n,n as r}from"./start-DtE0-Zi2.mjs";export{r as bootStartServer,n as resolveBundledReactShellDir,t as resolveHost,e as startCommand};