conductor-oss 0.35.0 → 0.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -5
- package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +3 -3
- package/web/.next/standalone/packages/web/.next/build-manifest.json +3 -3
- package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +16 -14
- package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/page.js +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/15.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/1547.js +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/2089.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/3540.js +2 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/3803.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/3998.js +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/{9039.js → 4345.js} +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/5538.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/5827.js +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/7023.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/7467.js +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/8851.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/next-font-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/next-font-manifest.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/{3838.43d4c06d3215ad8a.js → 3838.fa83b58e4005fc8b.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/4443.57db70380cc86187.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/4535.f3b367624173d083.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/4590.1af116855eacf0a6.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/4997-e3e9080c83bf41f1.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/6267-881308cd835d7000.js +5 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/6529-a5011115abc93722.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/7175.14c79b4f1c868118.js +3 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/{7865.07472b61729561eb.js → 7865.a99fea0e127969e4.js} +1 -1
- package/web/.next/{static/chunks/8510-e81891003d3ad82d.js → standalone/packages/web/.next/static/chunks/8510-f77a35d91845de08.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/{6267.13f3222151b29c47.js → 8648.dad57806cb9b381a.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/9450-294d54fd5e76a9fe.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/9703-e437e3bfbf296214.js +2 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/9739.54221051c12a448b.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-4c5d7b4eee4c92aa.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/app/{layout-206453a2b80d9508.js → layout-e91bd3dceaca3a2c.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/page-9ab36db7326f4364.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/page-a11bba53afca0210.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/ca465714-4d31bfa1a1fb3e89.js +3 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/webpack-05b7a023cd8e53f7.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/css/6ef2fa08dd043252.css +1 -0
- package/web/.next/static/chunks/{3838.43d4c06d3215ad8a.js → 3838.fa83b58e4005fc8b.js} +1 -1
- package/web/.next/static/chunks/4443.57db70380cc86187.js +1 -0
- package/web/.next/static/chunks/4535.f3b367624173d083.js +1 -0
- package/web/.next/static/chunks/4590.1af116855eacf0a6.js +1 -0
- package/web/.next/static/chunks/4997-e3e9080c83bf41f1.js +1 -0
- package/web/.next/static/chunks/6267-881308cd835d7000.js +5 -0
- package/web/.next/static/chunks/6529-a5011115abc93722.js +1 -0
- package/web/.next/static/chunks/7175.14c79b4f1c868118.js +3 -0
- package/web/.next/static/chunks/{7865.07472b61729561eb.js → 7865.a99fea0e127969e4.js} +1 -1
- package/web/.next/{standalone/packages/web/.next/static/chunks/8510-e81891003d3ad82d.js → static/chunks/8510-f77a35d91845de08.js} +1 -1
- package/web/.next/static/chunks/{6267.13f3222151b29c47.js → 8648.dad57806cb9b381a.js} +1 -1
- package/web/.next/static/chunks/9450-294d54fd5e76a9fe.js +1 -0
- package/web/.next/static/chunks/9703-e437e3bfbf296214.js +2 -0
- package/web/.next/static/chunks/9739.54221051c12a448b.js +1 -0
- package/web/.next/static/chunks/app/bridge/connect/page-4c5d7b4eee4c92aa.js +1 -0
- package/web/.next/static/chunks/app/{layout-206453a2b80d9508.js → layout-e91bd3dceaca3a2c.js} +1 -1
- package/web/.next/static/chunks/app/page-9ab36db7326f4364.js +1 -0
- package/web/.next/static/chunks/app/sessions/[id]/page-a11bba53afca0210.js +1 -0
- package/web/.next/static/chunks/ca465714-4d31bfa1a1fb3e89.js +3 -0
- package/web/.next/static/chunks/webpack-05b7a023cd8e53f7.js +1 -0
- package/web/.next/static/css/6ef2fa08dd043252.css +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/1603.js +0 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/3979.js +0 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/5694.js +0 -2
- package/web/.next/standalone/packages/web/.next/server/chunks/7672.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/3285.c2ac95fcff2bc28f.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/3816-2bc42b289190ba69.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/4443.ebc7fae0d2c5e91d.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/4535.bd6377f18f4a51d5.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/4997-f297bb4a54382c67.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/5971-ec1429f46e2b9f42.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/7175.0fe5febb816790b3.js +0 -3
- package/web/.next/standalone/packages/web/.next/static/chunks/7720-f8fad1acac794e8d.js +0 -2
- package/web/.next/standalone/packages/web/.next/static/chunks/9450-35c367faf559f770.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/9739.2a985335dfd530d7.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/bridge/connect/page-f6799fa1b17350be.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/page-564cedc0aaab4614.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/page-97c444aff130c9a2.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/webpack-cce1e4a5cfe2a9d0.js +0 -1
- package/web/.next/static/chunks/3285.c2ac95fcff2bc28f.js +0 -1
- package/web/.next/static/chunks/3816-2bc42b289190ba69.js +0 -1
- package/web/.next/static/chunks/4443.ebc7fae0d2c5e91d.js +0 -1
- package/web/.next/static/chunks/4535.bd6377f18f4a51d5.js +0 -1
- package/web/.next/static/chunks/4997-f297bb4a54382c67.js +0 -1
- package/web/.next/static/chunks/5971-ec1429f46e2b9f42.js +0 -1
- package/web/.next/static/chunks/7175.0fe5febb816790b3.js +0 -3
- package/web/.next/static/chunks/7720-f8fad1acac794e8d.js +0 -2
- package/web/.next/static/chunks/9450-35c367faf559f770.js +0 -1
- package/web/.next/static/chunks/9739.2a985335dfd530d7.js +0 -1
- package/web/.next/static/chunks/app/bridge/connect/page-f6799fa1b17350be.js +0 -1
- package/web/.next/static/chunks/app/page-564cedc0aaab4614.js +0 -1
- package/web/.next/static/chunks/app/sessions/[id]/page-97c444aff130c9a2.js +0 -1
- package/web/.next/static/chunks/webpack-cce1e4a5cfe2a9d0.js +0 -1
- /package/web/.next/standalone/packages/web/.next/static/{otFNkUpZUAcPnUttHAVyi → PQz_YcrtYD37nK7N3nyMO}/_buildManifest.js +0 -0
- /package/web/.next/standalone/packages/web/.next/static/{otFNkUpZUAcPnUttHAVyi → PQz_YcrtYD37nK7N3nyMO}/_ssgManifest.js +0 -0
- /package/web/.next/static/{otFNkUpZUAcPnUttHAVyi → PQz_YcrtYD37nK7N3nyMO}/_buildManifest.js +0 -0
- /package/web/.next/static/{otFNkUpZUAcPnUttHAVyi → PQz_YcrtYD37nK7N3nyMO}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974,9847],{12529:(e,t,n)=>{Promise.resolve().then(n.bind(n,80075))},33866:(e,t,n)=>{"use strict";n.d(t,{BO:()=>l,h7:()=>i,pN:()=>r});var a=n(5739);let r=[{name:"codex",label:"Codex",description:"OpenAI Codex CLI",homepage:"https://github.com/openai/codex",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/openai.svg",installHint:"npm install -g @openai/codex",installUrl:"https://github.com/openai/codex",setupUrl:"https://chatgpt.com/codex"},{name:"gemini",label:"Gemini",description:"Google Gemini CLI",homepage:"https://ai.google.dev/gemini-api/docs",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/googlegemini.svg",installHint:"npm install -g @google/gemini-cli",installUrl:"https://ai.google.dev/gemini-api/docs",setupUrl:"https://aistudio.google.com/"},{name:"qwen-code",label:"Qwen Code",description:"Qwen Code CLI",homepage:"https://qwenlm.github.io/announcements/",iconUrl:null,installHint:"npm install -g @qwen-code/qwen-code@latest",installUrl:"https://qwenlm.github.io/announcements/",setupUrl:"https://chat.qwen.ai/"},{name:"droid",label:"Droid",description:"Factory Droid CLI",homepage:"https://github.com/Factory-AI/factory",iconUrl:"https://raw.githubusercontent.com/Factory-AI/factory/main/docs/images/droid_logo_cli.png",installHint:"npm install -g @factory/cli",installUrl:"https://github.com/Factory-AI/factory"},{name:"claude-code",label:"Claude Code",description:"Claude Code CLI",homepage:"https://www.anthropic.com/claude",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/claude.svg",installHint:"npm install -g @anthropic-ai/claude-code",installUrl:"https://www.anthropic.com/claude-code",setupUrl:"https://claude.ai/"},{name:"amp",label:"Amp",description:"Amp Code CLI",homepage:"https://www.ampcode.com",iconUrl:"https://ampcode.com/amp-mark-color.svg",installHint:"npm install -g @sourcegraph/amp",installUrl:"https://www.ampcode.com"},{name:"opencode",label:"OpenCode",description:"OpenCode CLI",homepage:"https://opencode.ai",iconUrl:null,installHint:"npm install -g opencode-ai",installUrl:"https://opencode.ai"},{name:"github-copilot",label:"GitHub Copilot",description:"GitHub Copilot CLI",homepage:"https://docs.github.com/copilot/how-tos/copilot-cli",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/githubcopilot.svg",installHint:"npm install -g @github/copilot",installUrl:"https://docs.github.com/copilot/how-tos/copilot-cli",setupUrl:"https://github.com/settings/copilot"},{name:"cursor-cli",label:"Cursor Agent",description:"Cursor Agent CLI",homepage:"https://www.cursor.com",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/cursor.svg",installHint:"npm install -g cursor-agent"},{name:"ccr",label:"CCR",description:"Claude Code Router",homepage:"https://www.npmjs.com/package/@musistudio/claude-code-router",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/claude.svg",installHint:"npm install -g @musistudio/claude-code-router",installUrl:"https://www.npmjs.com/package/@musistudio/claude-code-router"}],l=r.map(e=>e.name),s=new Map(r.map(e=>[(0,a.q)(e.name),e]));function i(e){return s.get((0,a.q)(e))??null}},51164:(e,t,n)=>{"use strict";n.d(t,{v:()=>c});var a=n(76196);let r=["pro","max","api"],l=["chatgpt","api"],s=["default"],i=["oauth","api"],o=["oauth","api"];function d(e,t,n){return"string"==typeof e&&t.includes(e)?e:n}function c(e){let t=!e||"object"!=typeof e||Array.isArray(e)?{}:{...e},n=(0,a.Zp)();return{amp:d(t.amp,s,n.amp),claudeCode:d(t.claudeCode,r,n.claudeCode),codex:d(t.codex,l,n.codex),cursorCli:d(t.cursorCli,s,n.cursorCli),droid:d(t.droid,s,n.droid),gemini:d(t.gemini,i,n.gemini),githubCopilot:d(t.githubCopilot,s,n.githubCopilot),opencode:d(t.opencode,s,n.opencode),qwenCode:d(t.qwenCode,o,n.qwenCode),ccr:d(t.ccr,s,n.ccr)}}},80075:(e,t,n)=>{"use strict";n.d(t,{default:()=>eb});var a=n(54568),r=n(42925),l=n(79748),s=n(7620),i=n(40448);n(76196);var o=n(52353),d=n(20487),c=n(50549),p=n(57917),u=n(21048),x=n(55341),m=n(30824),h=n(34737),g=n(20670),f=n(58299),v=n(84736),b=n(7086),w=n(54299),j=n(34041),k=n(34309),y=n(63253),N=n(20732),C=n(36645),A=n(45894),S=n(5739),I=n(33866),E=n(35821),M=n(95106),L=n(53649),$=n(86011),U=n(31404),P=n(10926);let O=new Map,B=new Map;function q(e){let t=B.get(e);return t||(t={agents:[],loading:!0,lastFetchedAt:0,inFlight:null,retryTimeout:null},B.set(e,t)),t}function F(e){let t=O.get(e);return t||(t=new Set,O.set(e,t)),t}function T(e){for(let t of F(e))t()}function _(e){let t=q(e);return t.agents.length>0&&Date.now()-t.lastFetchedAt<3e4}function R(e,t){let n=q(e);null===n.retryTimeout&&(n.retryTimeout=window.setTimeout(()=>{q(e).retryTimeout=null,D(e,t,!0)},1e4))}async function D(e,t,n=!1){let a=q(e);if(!n&&_(e)){a.loading&&(a.loading=!1,T(e));return}return a.inFlight||(a.loading=!0,T(e),a.inFlight=(async()=>{try{var n;let r=await fetch((0,U.S)("/api/agents",t),{cache:"no-store"});if(!r.ok)throw Error(`Failed to fetch agents: ${r.status}`);let l=(n=await r.json(),Array.isArray(n)?n:n&&"object"==typeof n&&"agents"in n&&Array.isArray(n.agents)?n.agents:[]);l.length>0?(a.agents=l,a.lastFetchedAt=Date.now(),null!==a.retryTimeout&&(window.clearTimeout(a.retryTimeout),a.retryTimeout=null)):R(e,t)}catch{R(e,t)}finally{a.loading=!1,a.inFlight=null,T(e)}})()),a.inFlight}var W=n(46012),H=n(862),z=n(84169),G=n(39702),V=n(86181),Z=n(90124);function J(e){return e&&"object"==typeof e?e:null}async function X({files:e,projectId:t,taskRef:n,bridgeId:a,preferAbsolute:r=!0}){if(!e.length)return[];let l=t.trim();if(!l)throw Error("Project id is required to upload attachments");let s=new FormData;s.append("projectId",l);let i=n?.trim();for(let t of(i&&s.append("taskRef",i),e))s.append("files",t);let o=await fetch((0,U.S)("/api/attachments",a),{method:"POST",body:s}),d=await o.json().catch(()=>null);if(!o.ok){let t=1===e.length?e[0]?.name??"attachment":`${e.length} attachments`;throw Error(d?.error??`Failed to upload ${t}`)}let c=(Array.isArray(d?.files)?d.files:d?[d]:[]).map(e=>(function(e,t){let n=J(e);if(!n)return null;let a=J(n.attachment);for(let e of t?[n.absolutePath,n.path,n.filePath,a?.absolutePath,a?.path,a?.filePath]:[n.path,n.absolutePath,n.filePath,a?.path,a?.absolutePath,a?.filePath])if("string"==typeof e&&e.trim().length>0)return e.trim();return null})(e,r)).filter(e=>!!e);if(0===c.length)throw Error("Attachment upload succeeded but did not return a usable file path");return c}var K=n(15115);function Q(e){return e.map(e=>(0,P.C0)(e)).filter(e=>null!==e)}var Y=n(67506),ee=n(76050),et=n(51164),en=n(88272);let ea="claude-code",er="conductor-board-dispatcher-panel-width";function el(e){let t=e?.trim();return t&&t.length>0?t:null}function es(e,t){return Math.min(Math.min(720,Math.max(320,Math.floor(.55*(Number.isFinite(t)&&t>0?t:720)))),Math.max(320,Math.round(e)))}let ei=(0,r.default)(()=>Promise.all([n.e(4997),n.e(9505)]).then(n.bind(n,4997)).then(e=>e.SessionDetail),{loadableGenerated:{webpack:()=>[4997]},loading:()=>(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading session..."})}),eo=(0,r.default)(()=>Promise.all([n.e(9450),n.e(9167)]).then(n.bind(n,29450)).then(e=>e.WorkspaceSidebarPanel),{loadableGenerated:{webpack:()=>[29450]},loading:()=>(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading workspace panel..."})}),ed=(0,r.default)(()=>n.e(7865).then(n.bind(n,47865)).then(e=>e.WorkspaceOverview),{loadableGenerated:{webpack:()=>[47865]},loading:()=>(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading workspace..."})}),ec=(0,r.default)(()=>n.e(9739).then(n.bind(n,79739)).then(e=>e.WorkspaceKanban),{loadableGenerated:{webpack:()=>[79739]},loading:()=>(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading board..."})}),ep=(0,r.default)(()=>Promise.all([n.e(9526),n.e(1924),n.e(7175),n.e(9123)]).then(n.bind(n,56086)).then(e=>e.ProjectDispatcherPanel),{loadableGenerated:{webpack:()=>[56086]},loading:()=>(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading dispatcher..."})}),eu=(0,r.default)(()=>Promise.all([n.e(3470),n.e(524),n.e(474)]).then(n.bind(n,90474)).then(e=>e.NewWorkspaceDialog),{loadableGenerated:{webpack:()=>[90474]},loading:()=>null}),ex=(0,r.default)(()=>Promise.all([n.e(3470),n.e(524),n.e(474)]).then(n.bind(n,90474)).then(e=>e.SettingsDialog),{loadableGenerated:{webpack:()=>[90474]},loading:()=>null});function em(e){let t=(0,I.h7)(e);return t?.label?t.label:e.split(/[-_\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}function eh(e){return e.issueId?.trim()||e.taskRef?.trim()||e.id}function eg(e){let[t]=e.split(" - ");return(t??e).trim()}function ef(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function ev(e,t){let n=ef(e),a=ef(n.notifications),r=a.soundFile,l="string"==typeof n.codingAgent&&n.codingAgent.trim().length>0?n.codingAgent.trim():t,s="string"==typeof n.ide&&n.ide.trim().length>0?n.ide.trim():"vscode",i="string"==typeof n.markdownEditor&&n.markdownEditor.trim().length>0?n.markdownEditor.trim():"obsidian",o="string"==typeof n.markdownEditorPath?n.markdownEditorPath.trim():"";return{onboardingAcknowledged:!0===n.onboardingAcknowledged,codingAgent:l,ide:s,markdownEditor:i,markdownEditorPath:o,modelAccess:(0,et.v)(n.modelAccess),notifications:{soundEnabled:!1!==a.soundEnabled,soundFile:null===r?null:"string"==typeof r&&r.trim().length>0?r.trim():"abstract-sound-4"}}}function eb({requiresPairedDeviceScope:e=!1}){let t=(0,l.useRouter)(),n=(0,l.usePathname)(),r=(0,l.useSearchParams)(),i=(0,s.useMemo)(()=>el(r.get("project")),[r]),o=(0,s.useMemo)(()=>el(r.get("session")),[r]),d=(0,s.useMemo)(()=>"board"===r.get("view")?"board":"direct",[r]),c=(0,s.useMemo)(()=>el(r.get("bridge")),[r]),[p,u]=(0,s.useState)(c??""),h=(0,P.C0)(p),g=(0,s.useMemo)(()=>(0,P.DW)(o)?.bridgeId??null,[o]),v=c??g,b=h??g,[w,j]=(0,s.useState)([]),[k,y]=(0,s.useState)("loading"),N=(0,Y.y)(),C=(0,s.useMemo)(()=>w.filter(e=>e.connected),[w]),A=(0,s.useMemo)(()=>C.map(e=>e.bridgeId),[C]),O=(0,s.useMemo)(()=>(function({requiresPairedDeviceScope:e,effectiveBridgeId:t,connectedBridgeIds:n,bridgeInventoryStatus:a}){if(!e)return!1;let r=(0,P.C0)(t);return!!r&&("loading"===a||"ready"===a&&!Q(n).includes(r))})({requiresPairedDeviceScope:e,effectiveBridgeId:b,connectedBridgeIds:A,bridgeInventoryStatus:k}),[k,A,b,e]);(0,s.useMemo)(()=>(function({requiresPairedDeviceScope:e,effectiveBridgeId:t,connectedBridgeIds:n,bridgeInventoryStatus:a}){if(!e)return!0;let r=(0,P.C0)(t);return!!r&&"ready"===a&&Q(n).includes(r)})({requiresPairedDeviceScope:e,effectiveBridgeId:b,connectedBridgeIds:A,bridgeInventoryStatus:k}),[k,A,b,e]);let B=(0,s.useMemo)(()=>!e||!!b,[b,e]),{projects:T,loading:R,error:Z,refresh:J}=(0,L.U)(b,{enabled:B}),{agents:X}=function(e,t){let n=t?.enabled??!0,a=(0,P.C0)(e)??"local",[r,l]=(0,s.useState)({agents:[],loading:n});return(0,s.useEffect)(()=>{if(!n)return void l({agents:[],loading:!1});let t=()=>{let e;return l({agents:(e=q(a)).agents,loading:e.loading})};F(a).add(t),t(),D(a,e);let r=()=>{_(a)||D(a,e,!0)},s=()=>{"visible"!==document.visibilityState||_(a)||D(a,e,!0)};return window.addEventListener("focus",r),document.addEventListener("visibilitychange",s),()=>{F(a).delete(t),window.removeEventListener("focus",r),document.removeEventListener("visibilitychange",s)}},[e,n,a]),n?r:{agents:[],loading:!1}}(b,{enabled:B}),{mobileSidebarOpen:eh,desktopSidebarOpen:eg,toggleSidebar:ef,closeSidebarOnMobile:ej,syncSidebarForViewport:ek}=(0,W.T)({initialDesktopOpen:!1}),ey=eh||eg,eN=!o||ey,{sessions:eC,loading:eA,error:eS,refresh:eI}=(0,M.t)(i,{enabled:eN&&B,bridgeId:b}),[eE,eM]=(0,s.useState)(""),[eL,e$]=(0,s.useState)(""),[eU,eP]=(0,s.useState)((0,en.Z3)()),[eO,eB]=(0,s.useState)(!1),[eq,eF]=(0,s.useState)(null),[eT,e_]=(0,s.useState)(!1),[eR,eD]=(0,s.useState)(!1),[eW,eH]=(0,s.useState)(null),[ez,eG]=(0,s.useState)(null),[eV,eZ]=(0,s.useState)(!0),[eJ,eX]=(0,s.useState)(!1),[eK,eQ]=(0,s.useState)(null),[eY,e0]=(0,s.useState)(!1),[e1,e4]=(0,s.useState)(!1),[e2,e3]=(0,s.useState)(()=>o?[o]:[]),[e5,e9]=(0,s.useState)(!1),[e6,e7]=(0,s.useState)(!1),[e8,te]=(0,s.useState)(()=>o?"chat":"board"),[tt,tn]=(0,s.useState)(!1),[ta,tr]=(0,s.useState)(405),[tl,ts]=(0,s.useState)(!1),ti=(0,s.useRef)(null),to=(0,s.useRef)(i);(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,t=()=>{e9((0,V.k$)())};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(min-width: 1280px)"):null,t=()=>{e7(e?.matches??window.innerWidth>=1280)};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),(0,s.useEffect)(()=>{if("board"!==d||null===i){to.current=i,te("board");return}let e=to.current!==i;(to.current=i,o)?te("chat"):e&&te("board")},[i,o,d]),(0,s.useEffect)(()=>{try{let e=window.localStorage.getItem(er),t=e?Number.parseInt(e,10):NaN;Number.isFinite(t)&&tr(es(t,window.innerWidth))}catch{}let e=()=>{tr(e=>es(e,window.innerWidth))};return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}},[]),(0,s.useEffect)(()=>{if(!tl)return;let e=e=>{let t=window.innerWidth;tr(es(t-e.clientX,t))},t=()=>{ts(!1)};return window.addEventListener("mousemove",e),window.addEventListener("mouseup",t),document.body.style.userSelect="none",document.body.style.cursor="col-resize",()=>{window.removeEventListener("mousemove",e),window.removeEventListener("mouseup",t),document.body.style.userSelect="",document.body.style.cursor="";try{window.localStorage.setItem(er,String(ta))}catch{}}},[tl,ta]),(0,s.useEffect)(()=>{if(!N){j([]),y("ready"),e&&t.replace("/bridge/connect");return}let n=!1,a=O?4e3:15e3;async function r(){try{let e=await fetch("/api/bridge/devices",{cache:"no-store"});if(!e.ok)throw Error(`Failed to fetch bridges: ${e.status}`);let t=await e.json().catch(()=>null);n||(j((0,K.oH)(t?.devices).map(e=>({bridgeId:e.device_id,hostname:e.last_status?.hostname??e.hostname,os:`${e.last_status?.os??`${e.os}/${e.arch}`}${(0,K.wj)(e.last_status?.version)}`,capabilities:[],connected:e.connected,status:e.connected?"connected":"offline",connectedAt:"",lastSeenAt:""}))),y("ready"))}catch{n||(j([]),y("error"))}}r();let l=window.setInterval(()=>{r()},a);return()=>{n=!0,window.clearInterval(l)}},[N,O,e,t]),(0,s.useEffect)(()=>{let t=function({requiresPairedDeviceScope:e,requestedBridgeId:t,selectedBridgeId:n,connectedBridgeIds:a}){let r=(0,P.C0)(t),l=(0,P.C0)(n),s=Q(a);return e?r||(0===s.length?"":l&&s.includes(l)?l:s[0]??""):l&&s.includes(l)?l:""}({requiresPairedDeviceScope:e,requestedBridgeId:v,selectedBridgeId:p,connectedBridgeIds:A});t!==p&&u(t)},[A,v,e,p]),(0,s.useEffect)(()=>{!e||b||"ready"!==k||C.length>0||t.replace("/bridge/connect")},[k,C.length,b,e,t]),(0,s.useEffect)(()=>{u(c??"")},[c]);let td=(0,s.useMemo)(()=>new Map(eC.map(e=>[e.id,e])),[eC]),{session:tc,loading:tp,error:tu}=(0,E.w)(o,null,{enabled:!!o&&B,bridgeId:b}),tx=eq??Z??eS??tu??eK,tm=(0,s.useMemo)(()=>{let e=new Map;for(let t of eC){let n=e.get(t.projectId);n?n.push(t):e.set(t.projectId,[t])}return e},[eC]),th=(0,s.useCallback)((e,a="push")=>{let l=new URLSearchParams(r.toString()),s=(e,t)=>{let n="string"==typeof t?t.trim():"";n.length>0?l.set(e,n):l.delete(e)};"projectId"in e&&s("project",e.projectId),"sessionId"in e&&s("session",e.sessionId),"workspaceView"in e&&("board"===e.workspaceView?l.set("view","board"):l.delete("view")),"tab"in e&&(e.tab&&"dispatcher"!==e.tab?l.set("tab",e.tab):l.delete("tab")),"bridgeId"in e&&s("bridge",e.bridgeId),l.has("project")||l.delete("view"),l.has("session")||l.delete("tab");let i=l.toString(),o=i.length>0?`${n}?${i}`:n;"replace"===a?t.replace(o,{scroll:!1}):t.push(o,{scroll:!1})},[n,t,r]);(0,s.useEffect)(()=>{let e=(0,P.C0)(p);(c??null)!==e&&th({bridgeId:e},"replace")},[c,th,p]),(0,s.useEffect)(()=>{if(!R&&!Z){if(0===T.length){null!==i&&th({projectId:null,workspaceView:null},"replace");return}null===i||T.some(e=>e.id===i)||th({projectId:o?null:T[0]?.id??null,workspaceView:o?null:d},"replace")}},[Z,R,th,T,i,o,d]),(0,s.useEffect)(()=>{if(o){if(eN){if(eA||eS)return;eC.some(e=>e.id===o)||th({sessionId:null,tab:null},"replace");return}!tp&&(tc||th({sessionId:null,tab:null},"replace"))}},[eC,th,eN,o,tp,tc,eS,eA]),(0,s.useEffect)(()=>{o?e3(e=>[o,...e.filter(e=>e!==o)].slice(0,1)):e3([])},[o]),(0,s.useEffect)(()=>{o&&ti.current&&ti.current!==o&&(ti.current=null)},[o]),(0,s.useEffect)(()=>{o&&eN&&!eA&&!eS&&e3(e=>e.filter(e=>e===o||td.has(e)))},[eN,o,td,eS,eA]);let tg=(0,s.useMemo)(()=>tc,[tc]),tf=(0,s.useMemo)(()=>T.find(e=>e.id===i)??null,[T,i]),tv=(0,s.useMemo)(()=>i?tm.get(i)??[]:[],[i,tm]),tb=(0,s.useMemo)(()=>tg??(o?td.get(o)??null:null),[tg,o,td]),tw=(0,s.useMemo)(()=>{let e=r.get("tab");return"overview"!==e&&"preview"!==e&&"diff"!==e&&"dispatcher"!==e&&"terminal"===(0,ee.tK)(tb)},[tb,r]),tj=!!o&&tw&&e5,tk=(0,s.useMemo)(()=>tg?[tg.projectId,tg.branch].filter(Boolean).join(" \xb7 "):tf?[tf.id,tf.defaultBranch||"main"].filter(Boolean).join(" \xb7 "):"All Projects",[tf,tg]),ty=(0,s.useMemo)(()=>b?w.find(e=>e.bridgeId===b)??null:null,[w,b]),tN=ty?`Device \xb7 ${ty.hostname}`:O?"Device \xb7 Reconnecting":e?"Scope \xb7 Paired device required":"Scope \xb7 Local backend",tC=ty?`Showing projects and sessions from ${ty.hostname}.`:O?"Waiting for the selected laptop to reconnect before loading dashboard data.":e?"Hosted dashboard access must target a connected laptop.":"Showing projects and sessions from the local backend because no paired laptop is selected.",tA=ty?"border-[rgba(24,197,143,0.35)] bg-[rgba(24,197,143,0.12)] text-[var(--vk-green)]":O?"border-[color:color-mix(in_srgb,var(--vk-accent)_30%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-accent)_12%,transparent)] text-[var(--vk-accent)]":e?"border-[rgba(255,143,122,0.24)] bg-[rgba(255,143,122,0.08)] text-[var(--vk-red)]":"border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-muted)]",tS=(0,s.useMemo)(()=>{let e=Array.isArray(X)?X:[],t=new Set;for(let e of I.pN)t.add(e.name);for(let n of e)n.name&&t.add(n.name);for(let e of T)e.agent&&t.add(e.agent);return ez?.codingAgent&&t.add(ez.codingAgent),eL&&t.add(eL),0===t.size&&t.add(ez?.codingAgent||ea),[...t]},[X,ez?.codingAgent,T,eL]),tI=(0,s.useMemo)(()=>{let e={};for(let t of I.pN)e[(0,S.q)(t.name)]={name:t.name,ready:!1,installed:!1,configured:!1,homepage:t.homepage,description:t.description,installHint:t.installHint??null,installUrl:t.installUrl??t.homepage??null,setupUrl:t.setupUrl??t.homepage??null};for(let t of Array.isArray(X)?X:[]){if(!t.name)continue;let n=(0,S.q)(t.name),a=(0,I.h7)(t.name);e[(0,S.q)(t.name)]={name:a?.name??t.name,ready:!0===t.ready,installed:!1!==t.installed,configured:!0===t.configured,homepage:"string"==typeof t.homepage?t.homepage:a?.homepage??e[n]?.homepage??null,description:"string"==typeof t.description?t.description:a?.description??e[n]?.description??null,installHint:"string"==typeof t.installHint?t.installHint:a?.installHint??e[n]?.installHint??null,installUrl:"string"==typeof t.installUrl?t.installUrl:a?.installUrl??e[n]?.installUrl??null,setupUrl:"string"==typeof t.setupUrl?t.setupUrl:a?.setupUrl??e[n]?.setupUrl??null}}return e},[X]),tE=(0,s.useMemo)(()=>{let e={};for(let t of Array.isArray(X)?X:[])t.name&&t.runtimeModelCatalog&&(e[(0,S.q)(t.name)]=t.runtimeModelCatalog);return e},[X]),tM=(0,s.useCallback)(e=>{let t=tI[(0,S.q)(e)],n=(0,I.h7)(e),a=t?.installed?t?.setupUrl??n?.setupUrl??t?.homepage??n?.homepage:t?.installUrl??n?.installUrl??t?.setupUrl??n?.setupUrl??t?.homepage??n?.homepage;a&&window.open(a,"_blank","noopener,noreferrer")},[tI]);async function tL(t,n){eX(!0),eQ(null);try{if(e&&!b)throw Error("Pair or reconnect a laptop before saving preferences.");let a=await fetch((0,U.S)("/api/preferences",b),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await a.json().catch(()=>null);if(!a.ok)throw Error(r?.error??r?.reason??`Failed to save preferences: ${a.status}`);let l=ev(r?.preferences,t.codingAgent||ea);return eG(l),e$(l.codingAgent),n?.closeDialog!==!1&&e0(!1),!0}catch(e){return eQ(e instanceof Error?e.message:"Failed to save preferences"),!1}finally{eX(!1)}}(0,s.useEffect)(()=>{let e=!1;return async function(){if(!B){e||(eG(null),eQ(null),eZ(!1));return}eZ(!0);try{let t=await fetch((0,U.S)("/api/preferences",b)),n=await t.json().catch(()=>null);if(!t.ok)throw Error(n?.error??n?.reason??`Failed to load preferences: ${t.status}`);if(e)return;let a=ev(n?.preferences,ea);eG(a),eQ(null)}catch(t){if(e)return;eG(ev(null,ea)),eQ(t instanceof Error?t.message:"Failed to load preferences")}finally{e||eZ(!1)}}(),()=>{e=!0}},[b,B]),(0,s.useEffect)(()=>{ez&&(eL||e$(ez.codingAgent))},[ez,eL]),(0,s.useEffect)(()=>{if(!eV){if(!ez||e&&!b)return void e0(!1);ez.onboardingAcknowledged||e0(!0)}},[b,ez,eV,e]),(0,s.useEffect)(()=>{if(0!==tS.length&&(!eL||!tS.includes(eL))){let e=ez?.codingAgent||ea;e$(tS.includes(e)?e:tS[0]??ea)}},[tS,ez?.codingAgent,eL]),(0,s.useEffect)(()=>{let e=eL||tf?.agent||ez?.codingAgent||ea,t=tf&&(0,S.q)(tf.agent)===(0,S.q)(e)?tf.agentModel:null,n=tf&&(0,S.q)(tf.agent)===(0,S.q)(e)?tf.agentReasoningEffort:null;eP((0,en.c0)(e,ez?.modelAccess??(0,et.v)(null),tE,t,n))},[ez?.modelAccess,ez?.codingAgent,tE,eL,tf]);let t$=(0,s.useCallback)(()=>{e&&!b?eF("Pair or reconnect a laptop before adding a workspace."):(eH(null),eF(null),e_(!0),ek())},[b,e,ek]);(0,s.useEffect)(()=>{e1&&!eY&&(e4(!1),t$())},[e1,eY]);let tU=(0,s.useCallback)(async t=>{let n=eE.trim(),a=(0,en.xb)(eU),r=(0,en.aB)(eU),l=t?.bridgeId??b??null;if(e&&!l)return eF("Pair or reconnect a laptop before launching an agent session."),!1;let s=t?.projectId??i??T[0]?.id;if(!s)return eF("No project is configured in conductor.yaml"),!1;let o=eL||ea,d=tI[(0,S.q)(o)]??null;if(d&&!d.ready)return eF(d.installed?`${em(o)} is not ready yet. Finish setup or authentication and try again.`:`${em(o)} is not installed on this machine yet. Open setup and try again.`),tM(o),!1;eB(!0),eF(null);try{let e=await fetch((0,U.S)("/api/sessions",l),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:s,prompt:n,...t?.issueId?.trim()?{issueId:t.issueId.trim()}:{},agent:o,...t?.branch?{branch:t.branch}:{},...t?.baseBranch?{baseBranch:t.baseBranch}:{},..."boolean"==typeof t?.useWorktree?{useWorktree:t.useWorktree}:{},...t?.permissionMode?{permissionMode:t.permissionMode}:{},...a?{model:a}:{},...r?{reasoningEffort:r}:{},...t?.attachments&&t.attachments.length>0?{attachments:t.attachments}:{}})}),i=await e.json().catch(()=>null);if(!e.ok)throw Error(i?.error??`Failed to create workspace: ${e.status}`);if(!i?.session?.id)throw Error("Session created but response is missing session id");return eM(""),ek(),ti.current=i.session.id,await eI(),th({projectId:s,sessionId:i.session.id,tab:null,bridgeId:l},"push"),!0}catch(e){return eF(e instanceof Error?e.message:"Failed to create workspace"),!1}finally{eB(!1)}},[tI,eU,th,tM,T,eE,eI,eL,b,i,e,ek]),tP=(0,s.useCallback)(async e=>{let t=await fetch(`/api/sessions/${encodeURIComponent(e)}/archive`,{method:"POST"}),n=await t.json().catch(()=>null);if(404===t.status&&(t=await fetch(`/api/sessions/${encodeURIComponent(e)}/actions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),n=await t.json().catch(()=>null)),!t.ok)throw Error(n?.error??`Failed to archive session: ${t.status}`);o===e&&th({projectId:null,sessionId:null,workspaceView:null,tab:null},"replace"),await eI()},[th,eI,o]),tO=(0,s.useCallback)(async t=>{if(e&&!b)return void eH("Pair or reconnect a laptop before adding a workspace.");eD(!0),eH(null);try{let e=await fetch((0,U.S)("/api/workspaces",b),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),n=await e.json().catch(()=>null);if(!e.ok)throw Error(n?.error??`Failed to add workspace: ${e.status}`);let a=n?.project?.id;if(!a)throw Error("Workspace created but response is missing project id");await J(),eM(""),ek(),e_(!1),th({projectId:a,sessionId:null,workspaceView:"direct",tab:null,bridgeId:b??null},"push")}catch(e){eH(e instanceof Error?e.message:"Failed to add workspace")}finally{eD(!1)}},[b,th,J,e,ek]),tB=!eV&&!!ez&&(!e||!!b)&&!ez.onboardingAcknowledged,tq=ez??ev(null,eL||ea),tF=eL||tq.codingAgent||ea,tT=i??tc?.projectId??null;(0,$.Q)({enabled:!eV,projectId:tT,preferences:tq.notifications,bridgeId:b});let t_=(0,s.useCallback)(e=>{th({projectId:e,sessionId:null,workspaceView:e?d:null,tab:null},"push"),e$(ez?.codingAgent||ea),te("board"),ej()},[ej,th,ez?.codingAgent,d]),tR=(0,s.useCallback)((e,t)=>{var n,a;let r,l=td.get(e)??null;th((n=i??null,a=t?.tab,r={projectId:l?.projectId??n??null,sessionId:e,tab:a??(0,ee.tK)(l)},"board"===d?{...r,workspaceView:"direct"}:r),"push"),ej()},[ej,th,i,td,d]),tD=(0,s.useCallback)(()=>{e&&!b?t.push("/bridge/connect"):e0(!0)},[b,e,t]),tW=(0,s.useCallback)(()=>{eR||e_(!1)},[eR]),tH=(0,s.useCallback)(()=>{eJ||tB||(e0(!1),eQ(null))},[tB,eJ]),tz=(0,s.useCallback)(()=>{tn(e=>!e)},[]),tG=(0,s.useCallback)(async e=>{let t=encodeURIComponent(e),n=await fetch((0,U.S)(`/api/repositories/${t}`,b),{method:"DELETE"});(404===n.status||405===n.status)&&(n=await fetch((0,U.S)(`/api/repositories?id=${t}`,b),{method:"DELETE"}));let a=await n.json().catch(()=>null);if(!n.ok)throw Error(a?.error??`Failed to unlink project (${n.status})`);await J()},[b,J]),tV=(0,s.useMemo)(()=>ey?(0,a.jsx)(eo,{projects:T,selectedProjectId:i,onSelectProject:t_,onUnlinkProject:tG,sessions:eC,selectedSessionId:o,onSelectSession:tR,onArchiveSession:tP,onCreateWorkspace:t$}):null,[eC,tP,t_,tR,tG,t$,T,i,o,ey]),tZ=(0,s.useMemo)(()=>{let t=tf?(0,a.jsxs)("div",{className:"inline-flex w-fit rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,a.jsx)("button",{type:"button",onClick:()=>th({projectId:tf.id,workspaceView:"direct"},"replace"),className:`min-h-[31px] rounded-[2px] px-3 text-[13px] ${"direct"===d?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Direct launch"}),(0,a.jsx)("button",{type:"button",onClick:()=>th({projectId:tf.id,workspaceView:"board"},"replace"),className:`min-h-[31px] rounded-[2px] px-3 text-[13px] ${"board"===d?"bg-[var(--vk-bg-hover)] text-[var(--vk-text-normal)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board view"})]}):null;return"board"===d?(0,a.jsx)(ec,{projectId:i,bridgeId:b,defaultAgent:tF,agentOptions:tS,projectSessions:tv,projectLabel:tf?.id??i,headerAccessory:t,onOpenSession:tR}):(0,a.jsx)(ew,{prompt:eE,setPrompt:eM,selectedAgent:tF,setSelectedAgent:e$,agentStates:tI,modelSelection:eU,setModelSelection:eP,modelAccess:tq.modelAccess,runtimeModelCatalogs:tE,agentOptions:tS,projects:T,bridges:w,selectedBridgeId:p,setSelectedBridgeId:u,requiresPairedDeviceScope:e,selectedProjectId:i,onSelectProject:t_,projectLabel:i??"All projects",hasProject:T.length>0,creating:eO,error:tx,onOpenAddWorkspace:t$,onOpenAgentSetup:tM,onCreate:tU})},[tS,tI,w,eO,tU,eU,tM,t$,T,tv,tf,o,tR,eE,tF,tq.modelAccess,e,tE,p,i,eM,tx,d,th]),tJ=(0,s.useMemo)(()=>{if(!tf)return tZ;if("board"===d){let e={"--dispatcher-panel-width":`${ta}px`},t=!e6,n=!t||"board"===e8,r=!t||"chat"===e8,l=e6&&tt&&null===o,s=o?"Chat":"Dispatcher",i=null!==o||!tt;return(0,a.jsxs)("div",{style:e,className:"relative flex h-full min-h-0 flex-1 flex-col overflow-hidden",children:[t?(0,a.jsx)("div",{className:"border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 py-2 xl:hidden",children:(0,a.jsxs)("div",{className:"inline-flex w-full rounded-[6px] border border-[var(--vk-border)] p-1",children:[(0,a.jsxs)("button",{type:"button",onClick:()=>te("board"),"aria-pressed":"board"===e8,className:`inline-flex min-h-[34px] flex-1 items-center justify-center gap-1.5 rounded-[4px] px-3 text-[12px] font-medium transition-colors ${"board"===e8?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,a.jsx)(x.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,a.jsx)("span",{children:"Board"})]}),(0,a.jsxs)("button",{type:"button",onClick:()=>te("chat"),"aria-pressed":"chat"===e8,className:`inline-flex min-h-[34px] flex-1 items-center justify-center gap-1.5 rounded-[4px] px-3 text-[12px] font-medium transition-colors ${"chat"===e8?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:[(0,a.jsx)(m.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,a.jsx)("span",{children:s})]})]})}):null,(0,a.jsxs)("div",{className:"relative flex min-h-0 flex-1 flex-col overflow-hidden xl:flex-row",children:[(0,a.jsx)("div",{className:`${n?"block":"hidden"} min-h-0 min-w-0 flex-1 overflow-hidden xl:block`,children:tZ}),i?(0,a.jsx)("div",{className:"absolute bottom-0 right-[var(--dispatcher-panel-width)] top-0 z-20 hidden w-2 translate-x-1/2 cursor-col-resize xl:block",onMouseDown:e=>{e.preventDefault(),ts(!0)},"aria-hidden":"true",children:(0,a.jsx)("div",{className:"mx-auto h-full w-px bg-transparent transition-colors hover:bg-[var(--vk-border)]"})}):null,(0,a.jsx)("div",{className:`${r?"flex":"hidden xl:flex"} ${l?"flex-1 min-h-0 xl:h-auto xl:max-h-none xl:w-[56px] xl:flex-none xl:min-h-0":"flex-1 min-h-[min(360px,50dvh)] xl:w-[var(--dispatcher-panel-width)] xl:flex-none xl:min-h-0"} flex-col overflow-hidden border-t border-[var(--vk-border)] bg-[var(--vk-bg-panel)] xl:border-l xl:border-t-0`,children:o?tb?(0,a.jsx)(ei,{sessionId:o,initialSession:tb,bridgeId:b,active:!0,suppressPreviewAutoOpen:ti.current===o,immersiveMobileMode:tj},o):(0,a.jsx)("div",{className:"flex h-full items-center justify-center bg-[var(--vk-bg-panel)] text-[13px] text-[var(--vk-text-muted)]",children:"Loading session workspace..."}):(0,a.jsx)(ep,{projectId:tf.id,bridgeId:b,defaultAgent:tF,modelAccess:tq.modelAccess,runtimeModelCatalogs:tE,collapsed:l,onToggleCollapsed:tz})})]})]})}return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-hidden",children:[(0,a.jsx)("div",{className:"border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)]/70 px-3 py-3 sm:px-4",children:(0,a.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsx)("p",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Project Workspace"}),(0,a.jsxs)("p",{className:"mt-1 truncate text-[14px] text-[var(--vk-text-strong)]",children:[tf.id," \xb7 ",tf.defaultBranch||"main"]})]}),(0,a.jsxs)("div",{className:"inline-flex w-fit rounded-[6px] border border-[var(--vk-border)] p-1",children:[(0,a.jsx)("button",{type:"button",onClick:()=>th({projectId:tf.id,workspaceView:"direct"},"replace"),className:`min-h-[32px] rounded-[4px] px-3 text-[13px] ${"direct"===d?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Direct launch"}),(0,a.jsx)("button",{type:"button",onClick:()=>th({projectId:tf.id,workspaceView:"board"},"replace"),className:"min-h-[32px] rounded-[4px] px-3 text-[13px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:"Board view"})]})]})}),(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:tZ})]})},[e8,tt,ta,tb,b,tz,th,tF,tf,tv,o,e6,tZ,d]),tX=(0,s.useMemo)(()=>O?(0,a.jsx)("div",{className:"flex h-full min-h-0 flex-1 items-center justify-center bg-[var(--vk-bg-main)] px-4",children:(0,a.jsxs)("div",{className:"w-full max-w-md rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-5 py-5 text-center shadow-[0_18px_50px_rgba(0,0,0,0.18)]",children:[(0,a.jsx)("div",{className:"mx-auto flex h-11 w-11 items-center justify-center rounded-full border border-[color:color-mix(in_srgb,var(--vk-accent)_30%,transparent)] bg-[color:color-mix(in_srgb,var(--vk-accent)_12%,transparent)] text-[var(--vk-accent)]",children:(0,a.jsx)(f.A,{className:"h-5 w-5 animate-spin"})}),(0,a.jsx)("h2",{className:"mt-4 text-[18px] font-medium text-[var(--vk-text-strong)]",children:"Reconnecting paired laptop"}),(0,a.jsx)("p",{className:"mt-2 text-[14px] leading-6 text-[var(--vk-text-muted)]",children:"Waiting for the selected laptop to report online before loading its projects and sessions."})]})}):o&&("board"!==d||null===i)?(0,a.jsx)("div",{className:"relative min-h-0 h-full min-w-0 flex-1 overflow-hidden",children:e2.map(e=>{let t=e===o,n=t?tg:td.get(e)??null;return(0,a.jsx)("div",{"aria-hidden":!t,className:t?"relative h-full min-w-0":"pointer-events-none absolute inset-0 overflow-hidden invisible",children:(0,a.jsx)(ei,{sessionId:e,initialSession:n,bridgeId:b,active:t,suppressPreviewAutoOpen:t&&ti.current===e,immersiveMobileMode:t&&tj,onOpenSidebar:ef})},e)})}):null!==i?(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:tJ}):(0,a.jsx)("div",{className:"flex h-full min-h-0 w-full flex-1 overflow-hidden",children:(0,a.jsx)(ed,{projects:T,sessions:eC,onCreateWorkspace:t$,onSelectSession:tR})}),[eC,e2,tJ,tg,o,tR,t$,T,i,td,O,ef,d]);return(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)(H.G,{mobileSidebarOpen:eh,desktopSidebarOpen:eg,onToggleSidebar:ef,hideMobileSidebarToggle:tj,sidebar:tV,children:[tj?null:(0,a.jsx)(z.V,{title:tk,onOpenPreferences:tD,rightContent:(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)("span",{className:`inline-flex items-center rounded-full border px-2 py-0.5 text-[11px] font-medium ${tA}`,title:tC,children:tN}),(0,a.jsx)(G.J,{})]})}),(0,a.jsx)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${tj?"bg-[#060404]":""}`,children:tX})]}),eT?(0,a.jsx)(eu,{open:eT,onClose:tW,onCreate:tO,creating:eR,error:eW,defaultAgent:tF,agentOptions:tS,modelAccess:tq.modelAccess,runtimeModelCatalogs:tE,bridgeId:b}):null,eY||tB?(0,a.jsx)(ex,{open:eY,mode:tB?"onboarding":"settings",creating:eJ,error:eK,current:tq,projectCount:T.length,agentOptions:tS,agentStates:tI,runtimeModelCatalogs:tE,onRepositoriesChanged:J,onOnboardingComplete:({needsProject:e})=>{e&&e4(!0)},onOpenAgentSetup:tM,onClose:tH,onSave:tL,bridgeId:b}):null]})}c.A,p.A,u.A,x.A,m.A,h.A,g.A,g.A,p.A,[{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"cursor",label:"Cursor"},{id:"windsurf",label:"Windsurf"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"antigravity",label:"Antigravity"},{id:"custom",label:"Custom"}].filter(e=>"custom"!==e.id),c.A,o.mWn,d.$$9,o.i4$,c.A;let ew=(0,s.memo)(function({prompt:e,setPrompt:t,selectedAgent:n,setSelectedAgent:r,agentStates:l,modelSelection:o,setModelSelection:d,modelAccess:c,runtimeModelCatalogs:p,agentOptions:u,projects:x,bridges:m,selectedBridgeId:E,setSelectedBridgeId:M,requiresPairedDeviceScope:L,selectedProjectId:$,onSelectProject:P,projectLabel:O,hasProject:B,creating:q,error:F,onOpenAddWorkspace:T,onOpenAgentSetup:_,onCreate:R}){let D=(0,s.useMemo)(()=>{let e=new Map(I.BO.map((e,t)=>[e,t]));return[...u].sort((t,n)=>{let a=e.get((0,S.q)(t))??Number.MAX_SAFE_INTEGER,r=e.get((0,S.q)(n))??Number.MAX_SAFE_INTEGER;return a!==r?a-r:em(t).localeCompare(em(n))})},[u]),W=em(n),H=l[(0,S.q)(n)]??null,z=(0,s.useMemo)(()=>[...x].sort((e,t)=>e.id.localeCompare(t.id)),[x]),G=$??z[0]?.id??null,V=(0,s.useMemo)(()=>z.find(e=>e.id===G)??null,[G,z]),J=(0,s.useMemo)(()=>m.filter(e=>e.connected),[m]),K=(0,s.useMemo)(()=>!E||J.some(e=>e.bridgeId===E),[J,E]),[Q,Y]=(0,s.useState)([]),[ee,et]=(0,s.useState)(!1),[ea,er]=(0,s.useState)(""),[el,es]=(0,s.useState)(""),[ei,eo]=(0,s.useState)([]),[ed,ec]=(0,s.useState)(!1),[ep,eu]=(0,s.useState)(!1),[ex,ef]=(0,s.useState)(!1),[ev,eb]=(0,s.useState)(!1),[ew,ej]=(0,s.useState)("default"),[ek,ey]=(0,s.useState)([]),[eN,eC]=(0,s.useState)(!1),[eA,eS]=(0,s.useState)(null);(0,s.useEffect)(()=>{if(!V){Y([]),er(""),et(!1);return}Y([]),er(V.defaultBranch.trim()||"main"),et(!1)},[V]),(0,s.useEffect)(()=>{if(!G){eo([]),es(""),ec(!1);return}eo([]),es(""),ec(!1)},[G]);let eI=(0,s.useCallback)(async()=>{if(!V)return;let e=V.defaultBranch.trim()||"main";if(!V.path?.trim()){Y([e]),er(t=>t.trim().length>0?t:e);return}et(!0);try{let t=new URLSearchParams({path:V.path}),n=await fetch((0,U.S)(`/api/workspaces/branches?${t.toString()}`,E)),a=await n.json().catch(()=>null),r=Array.isArray(a?.branches)?a.branches.filter(e=>"string"==typeof e&&e.trim().length>0):[],l="string"==typeof a?.defaultBranch&&a.defaultBranch.trim().length>0?a.defaultBranch.trim():e,s=r.length>0?r:[l];Y(s),er(e=>e.trim().length>0&&s.includes(e)?e:l)}catch{Y([e]),er(e)}finally{et(!1)}},[E,V]),eE=(0,s.useCallback)(async()=>{if(G){ec(!0);try{let e=await fetch((0,U.S)(`/api/boards?projectId=${encodeURIComponent(G)}`,E)),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to load tasks: ${e.status}`);let n=(Array.isArray(t?.columns)?t.columns:[]).flatMap(e=>Array.isArray(e.tasks)?e.tasks:[]),a=new Set,r=n.filter(e=>{let t=eh(e);return!(!t||a.has(t))&&(a.add(t),!0)});eo(r),es(e=>r.some(t=>eh(t)===e)?e:"")}catch{eo([]),es("")}finally{ec(!1)}}},[G,E]);(0,s.useEffect)(()=>{!ex||ee||Q.length>0||eI()},[ee,ex,Q.length,eI]),(0,s.useEffect)(()=>{!ep||ed||ei.length>0||eE()},[ei.length,eE,ed,ep]);let eM=(0,s.useMemo)(()=>(0,en.Ik)(n,c,p),[c,p,n]),eL=(0,s.useMemo)(()=>ei.find(e=>eh(e)===el)??null,[ei,el]),e$=(0,en.xb)(o)??"",eU=(0,s.useMemo)(()=>{let e=new Set,t=[],a=e$.trim();for(let n of eM)e.has(n.id)||(e.add(n.id),t.push(n));return a&&!e.has(a)&&(e.add(a),t.unshift({id:a,label:function(e,t){let n=t.trim(),a=(0,S.q)(e);if(!n)return n;if("claude-code"===a){let e=n.toLowerCase();if("opus"===e)return"Claude Opus";if("sonnet"===e)return"Claude Sonnet";if("haiku"===e)return"Claude Haiku";let t=e.match(/^claude-(sonnet|opus|haiku)-(\d+)-(\d+)(?:-\d{8})?$/);if(t){let e=t[1];return`Claude ${e[0]?.toUpperCase()+e.slice(1)} ${t[2]}.${t[3]}`}}return n.split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":/^\d+(?:\.\d+)?$/.test(e)?e:e[0]?.toUpperCase()+e.slice(1)).join("-")}(n,a),description:"Current selected model.",access:[]})),t},[eM,n,e$]),eP=(0,s.useMemo)(()=>!H||H.ready||e$?e$?eU.find(e=>e.id===e$)?.label??e$:"Default":"Setup required",[eU,H,e$]),eO=(0,s.useMemo)(()=>(0,en.iL)(n,c,p,e$),[c,p,n,e$]),eB=(0,en.aB)(o)??"",eq=(0,s.useMemo)(()=>{let e=eO.find(e=>e.id===eB);return e?e.label:eB||(eO[0]?.label??"Default")},[eO,eB]),eF="z-50 min-w-[240px] max-w-[calc(100vw-32px)] rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.35)] sm:max-w-none",eT=`${eF} max-h-[min(360px,50vh)] overflow-y-auto`,e_="flex min-h-[44px] cursor-default items-center gap-2 rounded-[3px] px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] focus:bg-[var(--vk-bg-hover)] sm:min-h-[36px]",eR=[{id:"default",label:"Default",icon:g.A},{id:"auto",label:"Auto",icon:v.A},{id:"ask",label:"Ask",icon:b.A},{id:"plan",label:"Plan",icon:w.A}],eD=eR.find(e=>e.id===ew)??eR[0],eW="launchpad-attachment-input",eH=q||eN,ez=e=>{let t=e.repo?.trim();if(t){let e=t.split("/").filter(Boolean),n=e[e.length-1]?.replace(/\.git$/i,"");if(n)return n}return e.id},eG=V?ez(V):null,eV=V?`${eG} \xb7 ${ea||V.defaultBranch||"main"}`:B?O:"Select project",eZ=eL?.taskRef?.trim()||eL?.issueId?.trim()||eL?.id||"Link task",eJ=eL?eg(eL.text):"Choose a task, bug, or issue from this project's board",eX=V?.id??G??null,eK=(0,s.useCallback)(e=>{let t=Array.from(e.currentTarget.files??[]);if(e.currentTarget.value="",!t.length)return;let n=new Set(ek.map(e=>`${e.name}:${e.size}:${e.lastModified}`)),a=t.filter(e=>!n.has(`${e.name}:${e.size}:${e.lastModified}`));a.length>0&&ey(e=>[...e,...a]),eS(null)},[ek]),eQ=(0,s.useCallback)(e=>{ey(t=>t.filter((t,n)=>n!==e))},[]),eY=(0,s.useCallback)(async()=>{let e;if(eS(null),!eX||!V)return R({projectId:eX??void 0,...ev?{baseBranch:ea||V?.defaultBranch||void 0}:{branch:ea||V?.defaultBranch||void 0},issueId:el.trim()||void 0,bridgeId:E||void 0,useWorktree:ev,permissionMode:ew});eC(!0),eS(null);try{ek.length>0&&(e=await X({files:ek,projectId:V.id,taskRef:el.trim()||void 0,bridgeId:E||void 0}))}catch(e){return eS(e instanceof Error?e.message:"Failed to upload attachment"),!1}finally{eC(!1)}let t=await R({projectId:eX??void 0,...ev?{baseBranch:ea||V.defaultBranch||void 0}:{branch:ea||V.defaultBranch||void 0},issueId:el.trim()||void 0,bridgeId:E||void 0,useWorktree:ev,permissionMode:ew,...e&&e.length>0?{attachments:e}:{}});return t&&(ey([]),eS(null)),t},[el,eX,R,ew,ea,V,V?.defaultBranch,E,ek,ev]);return(0,s.useEffect)(()=>{ey([]),eS(null)},[eX]),(0,a.jsx)("section",{className:"flex h-full min-h-0 items-start justify-center overflow-auto bg-[var(--vk-bg-main)] px-3 py-4 sm:items-center sm:px-6 sm:py-6",children:(0,a.jsxs)("div",{className:"w-full max-w-[768px]",children:[(0,a.jsx)("h1",{className:"pb-4 text-center text-[30px] font-medium leading-[34px] tracking-[-0.7px] text-[var(--vk-text-strong)] sm:text-[36px] sm:leading-[40px] sm:tracking-[-0.9px]",children:"What would you like to work on?"}),E?null:(0,a.jsxs)("div",{className:"mb-4 flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(h.A,{className:"mt-0.5 h-[14px] w-[14px] shrink-0"}),(0,a.jsx)("span",{children:L?"Pair or reconnect a laptop to browse workspaces and launch coding agents from the web dashboard.":"Showing projects and sessions from the local backend. Pair a laptop and select it here to browse that device instead."})]}),(0,a.jsxs)("div",{className:"mx-auto w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,a.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b border-[var(--vk-border)] px-2 pb-[9px] pt-2",children:[(0,a.jsx)(Z.N,{seed:{label:n},className:"h-[25px] w-[25px] border-none bg-transparent"}),(0,a.jsxs)(i.bL,{children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",className:"inline-flex h-[31px] max-w-[70vw] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] data-[state=open]:bg-[var(--vk-bg-hover)] sm:max-w-none","aria-label":"Select agent",children:[(0,a.jsx)("span",{className:"truncate pr-1",children:W}),(0,a.jsx)(j.A,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"start",sideOffset:6,className:eT,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Agents"}),D.map(e=>{let t=e===n,s=l[(0,S.q)(e)]??null;return(0,a.jsxs)(i.q7,{onSelect:()=>r(e),className:e_,children:[(0,a.jsx)(Z.N,{seed:{label:e},className:"h-6 w-6 border-none bg-transparent"}),(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("div",{children:em(e)}),s?.ready?null:(0,a.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--vk-text-muted)]",children:s?.installed?"Setup required":"Not installed"})]}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:t?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},e)})]})})]}),(0,a.jsxs)(i.bL,{onOpenChange:eu,children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",disabled:!G,className:"ml-auto flex h-[31px] min-w-[220px] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-left disabled:cursor-not-allowed disabled:opacity-50 sm:ml-0 sm:w-[286px]","aria-label":"Link task",children:[(0,a.jsx)("span",{className:"pr-2 text-[12px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Task"}),(0,a.jsx)("span",{className:"min-w-0 flex-1 truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)]",children:eZ}),(0,a.jsx)(j.A,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"end",side:"bottom",sideOffset:6,className:eT,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Link task"}),(0,a.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:eJ}),(0,a.jsxs)(i.q7,{onSelect:()=>es(""),className:e_,children:[(0,a.jsx)("span",{children:"No linked task"}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:el?null:(0,a.jsx)(k.A,{className:"h-4 w-4"})})]}),ed?(0,a.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Loading board tasks..."}):ei.length>0?ei.map(e=>{let t=eh(e),n=eg(e.text),r=[e.type,e.priority].filter(Boolean).join(" \xb7 ");return(0,a.jsxs)(i.q7,{onSelect:()=>es(t),className:`${e_} min-w-[320px] items-start`,children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("div",{className:"truncate",children:e.taskRef?.trim()||n}),(0,a.jsxs)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:[e.taskRef?.trim()?n:t,r?` \xb7 ${r}`:""]})]}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:el===t?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},t)}):(0,a.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"No existing tasks were found for this project."})]})})]})]}),(0,a.jsx)("div",{className:"rounded-[3.5px]",children:(0,a.jsxs)("div",{className:"flex flex-col gap-3 p-2",children:[(0,a.jsxs)("div",{className:"relative w-full",children:[(0,a.jsx)("textarea",{value:e,onChange:e=>t(e.target.value),placeholder:"Optional launch prompt. Leave empty to open the native CLI.",rows:1,className:"min-h-[24px] w-full resize-none bg-transparent pr-16 text-[16px] leading-[24px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"}),(0,a.jsxs)("label",{htmlFor:eW,className:`absolute right-[18px] top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] ${eX?"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]":"cursor-not-allowed opacity-50"}`,children:[(0,a.jsx)("input",{id:eW,type:"file",accept:"*/*",multiple:!0,onChange:eK,disabled:!eX||eH,className:"hidden"}),(0,a.jsx)(y.A,{className:"h-[14px] w-[14px]"})]}),(0,a.jsx)("button",{type:"button","aria-label":"Preview",className:"absolute right-0 top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,a.jsx)(N.A,{className:"h-[14px] w-[14px]"})})]}),ek.length>0?(0,a.jsx)("div",{className:"flex flex-wrap gap-1.5",children:ek.map((e,t)=>(0,a.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 rounded-[999px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-1 text-[11px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)("span",{className:"max-w-[160px] truncate",title:e.name,children:e.name}),(0,a.jsx)("button",{type:"button","aria-label":`Remove attachment ${e.name}`,onClick:()=>eQ(t),className:"inline-flex h-[14px] w-[14px] items-center justify-center rounded-full text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,a.jsx)(C.A,{className:"h-3 w-3"})})]},`${e.name}-${e.size}-${e.lastModified}-${t}`))}):null,(0,a.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-1 gap-y-2",children:[(0,a.jsxs)(i.bL,{children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsx)("button",{type:"button",className:"inline-flex h-[29px] w-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Select workspace or project",children:(0,a.jsx)(g.A,{className:"h-[15px] w-[15px]"})})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"start",sideOffset:6,className:eT,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Projects"}),z.map(e=>{let t=ez(e),n=e.id!==t?e.id:e.path?.trim()||e.repo?.trim()||null;return(0,a.jsxs)(i.q7,{onSelect:()=>P(e.id),className:`${e_} min-w-[280px] items-start`,children:[(0,a.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,a.jsx)("div",{className:"truncate",children:t}),n?(0,a.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:n}):null]}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:e.id===G?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},e.id)}),(0,a.jsx)(i.wv,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,a.jsxs)(i.q7,{onSelect:T,className:e_,children:[(0,a.jsx)(A.A,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:"Add Workspace"})]})]})})]}),eO.length>0?(0,a.jsxs)(i.bL,{children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button","aria-label":"Select reasoning effort",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,a.jsx)("span",{children:eq}),(0,a.jsx)(j.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"start",sideOffset:6,className:eF,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Reasoning"}),eO.map(e=>(0,a.jsxs)(i.q7,{onSelect:()=>d({...o,reasoningEffort:e.id}),className:e_,children:[(0,a.jsx)("span",{children:e.label}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eB===e.id?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},e.id))]})})]}):null,(0,a.jsxs)(i.bL,{children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,a.jsx)("span",{children:eP}),(0,a.jsx)(j.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"start",sideOffset:6,className:eF,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Model"}),(0,a.jsxs)(i.q7,{onSelect:()=>d((0,en.c0)(n,c,p,V?.agentModel,V?.agentReasoningEffort)),className:e_,children:[(0,a.jsx)("span",{children:"Default"}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:e$?null:(0,a.jsx)(k.A,{className:"h-4 w-4"})})]}),eU.map(e=>(0,a.jsxs)(i.q7,{onSelect:()=>{var t;let a;return t=e.id,a=(0,en.iL)(n,c,p,t),void d({catalogModel:t,customModel:"",reasoningEffort:a.some(e=>e.id===o.reasoningEffort)?o.reasoningEffort:(0,en.YS)(n,c,p,t)})},className:e_,children:[(0,a.jsx)("span",{children:e.label}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:e$===e.id?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},e.id)),0===eU.length?(0,a.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Models will appear here after the selected agent is installed and its runtime catalog is detected."}):null,H&&!H.ready?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsx)(i.wv,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,a.jsx)("button",{type:"button",onClick:()=>_(n),className:"flex w-full items-center rounded-[3px] px-3 py-2 text-left text-[13px] text-[var(--vk-orange)] transition hover:bg-[var(--vk-bg-hover)]",children:H.installed?"Open setup":"Open install guide"})]}):null]})})]}),(0,a.jsxs)(i.bL,{children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[(0,a.jsx)("span",{children:eD.label}),(0,a.jsx)(j.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"start",sideOffset:6,className:eF,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Permissions"}),eR.map(({id:e,label:t,icon:n})=>(0,a.jsxs)(i.q7,{onSelect:()=>ej(e),className:e_,children:[(0,a.jsx)(n,{className:"h-4 w-4"}),(0,a.jsx)("span",{children:t}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:ew===e?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},e))]})})]}),J.length>0?(0,a.jsxs)("label",{className:"inline-flex h-[29px] max-w-[260px] items-center gap-[6px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)]",children:[(0,a.jsx)(h.A,{className:"h-[14px] w-[14px] text-[var(--vk-text-muted)]"}),(0,a.jsxs)("select",{value:E,onChange:e=>M(e.target.value),className:"min-w-0 flex-1 bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none",children:[L?null:(0,a.jsx)("option",{value:"",children:"Local backend"}),J.map(e=>(0,a.jsxs)("option",{value:e.bridgeId,children:[e.hostname," \xb7 ",e.os]},e.bridgeId))]})]}):(0,a.jsxs)("div",{className:"inline-flex h-[29px] items-center gap-[6px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(h.A,{className:"h-[14px] w-[14px]"}),(0,a.jsx)("span",{children:E&&!K?"Waiting for selected device":L?"No device connected":"Local backend"})]}),(0,a.jsxs)(i.bL,{onOpenChange:ef,children:[(0,a.jsx)(i.l9,{asChild:!0,children:(0,a.jsx)("button",{type:"button",disabled:!V,className:"inline-flex min-h-[29px] max-w-[320px] items-center justify-center truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:text-[var(--vk-text-strong)] disabled:cursor-not-allowed disabled:opacity-50",children:eV})}),(0,a.jsx)(i.ZL,{children:(0,a.jsxs)(i.UC,{align:"start",side:"bottom",sideOffset:6,avoidCollisions:!1,className:eT,children:[(0,a.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Branch"}),eG?(0,a.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:eG}):null,ee?(0,a.jsx)("div",{className:"px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:"Loading branches..."}):Q.map(e=>(0,a.jsxs)(i.q7,{onSelect:()=>er(e),className:e_,children:[(0,a.jsx)("span",{children:e}),(0,a.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:ea===e?(0,a.jsx)(k.A,{className:"h-4 w-4"}):null})]},e))]})})]})]}),(0,a.jsx)("div",{className:"flex w-full justify-end sm:w-auto",children:(0,a.jsx)("button",{type:"button",onClick:eY,disabled:eH||!G,className:"inline-flex min-h-[29px] items-center justify-center rounded-[3px] bg-[var(--vk-bg-hover)] px-[8px] py-[6.5px] text-[16px] leading-[16px] text-[var(--vk-text-strong)] transition-colors hover:bg-[var(--vk-bg-active)] disabled:cursor-not-allowed disabled:opacity-50",children:eH?(0,a.jsx)(f.A,{className:"h-4 w-4 animate-spin"}):"Launch"})})]}),H&&!H.ready?(0,a.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:(0,a.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,a.jsxs)("div",{className:"min-w-0",children:[(0,a.jsxs)("p",{className:"text-[13px] text-[var(--vk-text-strong)]",children:[W," is not ready on this machine."]}),(0,a.jsx)("p",{className:"pt-0.5 text-[12px] text-[var(--vk-text-muted)]",children:H.installed?"Finish login or local setup to load models and start streaming sessions.":"Install the CLI first, then its models and authentication state will appear here."})]}),(0,a.jsx)("button",{type:"button",onClick:()=>_(n),className:"inline-flex h-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] px-3 text-[12px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)]",children:H.installed?"Open setup":"Open install"})]})}):null,(0,a.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,a.jsx)("input",{type:"checkbox",checked:ev,onChange:e=>eb(e.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,a.jsxs)("span",{children:["Use worktree isolation",(0,a.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, the session runs directly on the selected branch in the local repo."})]})]})]})})]}),F&&(0,a.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:F}),eA&&(0,a.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:eA})]})})})},88272:(e,t,n)=>{"use strict";n.d(t,{c0:()=>u,Z3:()=>l,Ik:()=>o,iL:()=>d,YS:()=>c,ZA:()=>p,xb:()=>x,aB:()=>m});var a=n(76196),r=n(5739);function l(){return{catalogModel:"",customModel:"",reasoningEffort:""}}function s(e,t){return t[(0,r.q)(e)]??null}function i(e){if(!e)return[];let t=[],n=new Set;for(let a of Object.values(e.modelsByAccess))if(Array.isArray(a))for(let e of a)!e?.id||n.has(e.id)||(n.add(e.id),t.push(e));return t}function o(e,t,n){let r=s(e,n),l=(0,a.Tk)(e,t),o=r&&l?r.modelsByAccess[l]??[]:[],d=i(r);if(d.length>0){let e=[],t=new Set;for(let n of[...o,...d])!n?.id||t.has(n.id)||(t.add(n.id),e.push(n));return e}return(0,a.d8)(e,t)}function d(e,t,n,r){let l=s(e,n),i=(0,a.Tk)(e,t);if(l){if(!l)return[];let e=r?.trim();return e&&l.reasoningOptionsByModel?.[e]?.length?l.reasoningOptionsByModel[e]??[]:i?l.reasoningOptionsByAccess?.[i]??[]:[]}return(0,a.u6)(e,t)}function c(e,t,n,r){let l=s(e,n),i=(0,a.Tk)(e,t);return l?function(e,t,n){if(!e)return null;let a=t?.trim();return a&&e.defaultReasoningByModel?.[a]?e.defaultReasoningByModel[a]??null:n?e.defaultReasoningByAccess?.[n]??null:null}(l,r,i)??"":(0,a.DZ)(e,t)??""}function p(e,t){let n=s(e,t),r=n?.customModelPlaceholder.trim();if(r)return r;let l=(0,a.yM)(e)?.label??"agent";return`Enter exact ${l} model id`}function u(e,t,n,r,l){let p=r?.trim()??"",u=l?.trim().toLowerCase()??"",x=s(e,n),m=o(e,t,n),h=function(e,t,n){let r=s(e,n),l=(0,a.Tk)(e,t);if(r)return(r&&l?r.defaultModelByAccess[l]??null:null)??i(r)[0]?.id??"";return(0,a.O$)(e,t)??""}(e,t,n),g=i(x).length>0,f=a=>{let r=d(e,t,n,a);return u.length>0&&r.some(e=>e.id===u)?u:c(e,t,n,a)};if(p.length>0){if(m.some(e=>e.id===p))return{catalogModel:p,customModel:"",reasoningEffort:f(p)};if(!g)return{catalogModel:h,customModel:p,reasoningEffort:f(p)}}return{catalogModel:h,customModel:"",reasoningEffort:f(h)}}function x(e){let t=e.customModel.trim();if(t.length>0)return t;let n=e.catalogModel.trim();return n.length>0?n:void 0}function m(e){let t=e.reasoningEffort.trim().toLowerCase();return t.length>0?t:void 0}}},e=>{e.O(0,[3036,691,3357,5587,3051,1257,6343,7720,5971,587,1968,7358],()=>e(e.s=12529)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[824],{18510:(e,t,n)=>{"use strict";n.d(t,{J:()=>s,s:()=>r});var i=n(10926);function s(e){let t=(0,i.C0)(e);if(!t)return"/";let n=new URLSearchParams;return n.set("bridge",t),`/?${n.toString()}`}function r(e,t={}){let n,s=e.trim(),o=(0,i.DW)(s)?s:(n=(0,i.C0)(t.bridgeId))?(0,i.Bp)(n,s):s,d=new URLSearchParams,a=t.tab?.trim();a&&d.set("tab",a);let l=d.toString(),c=`/sessions/${encodeURIComponent(o)}`;return l.length>0?`${c}?${l}`:c}},39337:(e,t,n)=>{"use strict";n.d(t,{default:()=>w});var i=n(54568),s=n(7620),r=n(79748),o=n(46012),d=n(862),a=n(84169),l=n(39702),c=n(29450),u=n(4997),h=n(86181),p=n(53649),b=n(86011),m=n(59207),g=n(35821),f=n(95106),S=n(10926),I=n(31404),j=n(18510),v=n(76050);function w({requiresPairedDeviceScope:e=!1}){let t=(0,r.useParams)(),n=(0,r.useRouter)(),x=(0,r.useSearchParams)(),C=(0,s.useMemo)(()=>(0,S.DW)(t.id)?.bridgeId??null,[t.id]),$=(0,s.useMemo)(()=>(0,S.C0)(x.get("bridge")??x.get("bridgeId")),[x]),E=C??$,M=(0,s.useMemo)(()=>E&&!C?(0,S.Bp)(E,t.id):t.id,[t.id,E,C]),P=!e||!!E,{session:k}=(0,g.w)(M,null,{bridgeId:E,enabled:P}),O=k?.bridgeId??E,{projects:N}=(0,p.U)(O,{enabled:!e||!!O}),{preferences:R,loading:U}=(0,m.g)(O,{enabled:!e||!!O}),{mobileSidebarOpen:L,desktopSidebarOpen:y,toggleSidebar:T,closeSidebarOnMobile:_}=(0,o.T)({initialDesktopOpen:!1}),D=L||y,{sessions:J,refresh:W}=(0,f.t)(void 0,{enabled:D&&(!e||!!O),bridgeId:O}),[B,K]=(0,s.useState)(null),[z,A]=(0,s.useState)(!1),F=(0,s.useMemo)(()=>{let e=x.get("tab");return"dispatcher"!==e&&("terminal"===e?"terminal"===(0,v.tK)(k):null===e&&"terminal"===(0,v.tK)(k))},[k,x])&&z,G=k?.projectId??null;(0,b.Q)({enabled:!U&&null!==G,projectId:G,preferences:R?.notifications??null,bridgeId:O});let Q=(0,s.useMemo)(()=>k?[k.projectId,k.branch].filter(Boolean).join(" \xb7 "):B||"Session",[k,B]),V=(0,s.useMemo)(()=>(0,j.J)(O),[O]);async function q(e){let t=await fetch((0,I.S)(`/api/sessions/${encodeURIComponent(e)}/archive`,O),{method:"POST"}),i=await t.json().catch(()=>null);if(404===t.status&&(t=await fetch((0,I.S)(`/api/sessions/${encodeURIComponent(e)}/actions`,O),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),i=await t.json().catch(()=>null)),!t.ok)throw Error(i?.error??`Failed to archive session: ${t.status}`);e===M?n.replace(V):await W()}return((0,s.useEffect)(()=>{if(M===t.id)return;let e=new URLSearchParams(x.toString());e.delete("bridge"),e.delete("bridgeId");let i=e.toString(),s=`/sessions/${encodeURIComponent(M)}${i.length>0?`?${i}`:""}`;n.replace(s,{scroll:!1})},[M,t.id,n,x]),(0,s.useEffect)(()=>{k?.projectId?K(k.projectId):!B&&N.length>0&&K(N[0]?.id??null)},[k?.projectId,N,B]),(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,t=()=>{A((0,h.k$)())};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),t.id)?(0,i.jsxs)(d.G,{mobileSidebarOpen:L,desktopSidebarOpen:y,onToggleSidebar:T,hideMobileSidebarToggle:F,sidebar:D?(0,i.jsx)(c.WorkspaceSidebarPanel,{projects:N,selectedProjectId:B,onSelectProject:e=>{null===e?n.push(V):K(e)},sessions:J,selectedSessionId:M,onSelectSession:(e,t)=>{let i=J.find(t=>t.id===e)??null;n.push((0,j.s)(e,{bridgeId:O,tab:t?.tab??(0,v.tK)(i)})),_()},onArchiveSession:q,onCreateWorkspace:()=>{n.push(V)}}):null,children:[F?null:(0,i.jsx)(a.V,{title:Q,rightContent:(0,i.jsx)(l.J,{})}),(0,i.jsx)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${F?"bg-[#060404]":""}`,children:(0,i.jsx)(u.SessionDetail,{sessionId:M,initialSession:k,bridgeId:O,immersiveMobileMode:F,onOpenSidebar:T},M)})]}):(0,i.jsx)("div",{className:"flex h-dvh min-h-[100dvh] items-center justify-center",children:(0,i.jsx)("span",{className:"text-[13px] text-[var(--text-muted)]",children:"No session ID provided"})})}},69755:(e,t,n)=>{Promise.resolve().then(n.bind(n,39337))}},e=>{e.O(0,[3357,5587,3051,1257,9151,7720,5971,4997,9450,587,1968,7358],()=>e(e.s=69755)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(()=>{"use strict";var e,a,c,d,f,b,t,r,o={},n={};function i(e){var a=n[e];if(void 0!==a)return a.exports;var c=n[e]={exports:{}},d=!0;try{o[e].call(c.exports,c,c.exports,i),d=!1}finally{d&&delete n[e]}return c.exports}i.m=o,e=[],i.O=(a,c,d,f)=>{if(c){f=f||0;for(var b=e.length;b>0&&e[b-1][2]>f;b--)e[b]=e[b-1];e[b]=[c,d,f];return}for(var t=1/0,b=0;b<e.length;b++){for(var[c,d,f]=e[b],r=!0,o=0;o<c.length;o++)(!1&f||t>=f)&&Object.keys(i.O).every(e=>i.O[e](c[o]))?c.splice(o--,1):(r=!1,f<t&&(t=f));if(r){e.splice(b--,1);var n=d();void 0!==n&&(a=n)}}return a},i.n=e=>{var a=e&&e.__esModule?()=>e.default:()=>e;return i.d(a,{a:a}),a},c=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,i.t=function(e,d){if(1&d&&(e=this(e)),8&d||"object"==typeof e&&e&&(4&d&&e.__esModule||16&d&&"function"==typeof e.then))return e;var f=Object.create(null);i.r(f);var b={};a=a||[null,c({}),c([]),c(c)];for(var t=2&d&&e;"object"==typeof t&&!~a.indexOf(t);t=c(t))Object.getOwnPropertyNames(t).forEach(a=>b[a]=()=>e[a]);return b.default=()=>e,i.d(f,b),f},i.d=(e,a)=>{for(var c in a)i.o(a,c)&&!i.o(e,c)&&Object.defineProperty(e,c,{enumerable:!0,get:a[c]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce((a,c)=>(i.f[c](e,a),a),[])),i.u=e=>4997===e?"static/chunks/4997-f297bb4a54382c67.js":9450===e?"static/chunks/9450-35c367faf559f770.js":524===e?"static/chunks/524-766ca5d84a96df31.js":3816===e?"static/chunks/3816-2bc42b289190ba69.js":"static/chunks/"+(({260:"336436a7",1659:"a4f73d83",1917:"58f38233",3470:"7545c6b5",3543:"6907ee1e",3616:"d917f8c9",3849:"87851ddc",4177:"19a2cade",4762:"b3ef812f",8561:"f1fd93f1",9223:"08e9f8d4",9430:"59a51a4c",9992:"b74732b4"})[e]||e)+"."+({21:"89c66005a060a5db",39:"a4c71badafdd9999",49:"bfdb657c1e94fe04",66:"ba8e1f8a7de3ffd1",137:"7e8b0517bf569b15",143:"9393fc8d78a0dbd9",195:"b27e08cda1161770",205:"75576600d7a32b34",251:"6fe9737785590215",260:"77452dd3b20146a6",307:"364d1ff853e806b5",338:"301aee496ec62b30",347:"06e7bb721073d0b1",401:"dae54b037209112d",474:"9e365f2edaec91ff",491:"8df9bdbe831f4a73",520:"725f6c2169f35670",566:"464b5951f5f05fbc",614:"2281a8b0c301797b",634:"941fd9f55ad81365",638:"b62e9131cfac26e8",643:"8b320f8377a34b75",659:"14e369b9a4944635",667:"e76918e0db9306fc",695:"cc4437eb14820e73",705:"2659af85fc9c96ef",723:"3923fc1a881c8665",736:"183230ba50bb651f",759:"143be185109e794a",763:"30a13397784472fb",803:"a3f1e1d6d507fa12",850:"8533925c75596812",901:"2ed792978b958610",918:"c648315f31be5ecf",920:"98e63d826640ee86",931:"c7e3b80b2feae415",941:"fd98a3ee624da6e2",949:"fbf94b4684ba3c0b",997:"09c037d3028aae00",1006:"3c53de09482da913",1046:"33b71e1d00faada0",1052:"9ac2274003f5905d",1081:"789e4034df652c60",1087:"4ca163e5ca349fb0",1159:"dce3d7a284d851f9",1220:"754b8fdccae1a987",1227:"aef52ee97a37b67e",1251:"b08a0d5b010580b3",1256:"8218290894c814dd",1343:"e183b62a101e2a28",1356:"df5a7b1d1f903566",1485:"a50ac4eccab1da5a",1516:"1f7f72b30243687d",1569:"80a8d41e0abcb447",1604:"a56818148e23d78e",1613:"c6fe9f1e79098bb1",1659:"53e654ffdc9fdd3e",1745:"cd7d71918de9cb63",1874:"6d895982b7984d7f",1890:"1de505c9bbb58403",1917:"5ff89f94ff0f0386",1924:"efdd3dca61561159",1949:"6166871f4616f671",1973:"ba05db0960003e3a",2002:"6ccdaa3301a08bc3",2008:"39797e4860749054",2009:"15bf57d75d91fc70",2029:"1f9ef678d457ce40",2064:"c919e26ada69b601",2094:"08a34a1f82aabb38",2118:"6d7d5b626ea9d95e",2136:"45f74e82dddfcf8a",2187:"316f1d2f81bd6a15",2194:"be772557a806b45b",2213:"2aeefe2d5fe80865",2248:"181dfaa9b563f715",2288:"1e7ffee26b63eedf",2394:"2749bfe10e8256fd",2505:"59659818a6437c38",2582:"7f2e3456831cafbe",2618:"898cb1f35198c030",2643:"d8509333d39edf34",2672:"5484d5bc2feb29eb",2716:"74b190135fc8f8ae",2725:"f04d6fa81951b02d",2766:"6708336cdaaec987",2799:"d9ce5c7fa7af72b6",2944:"f98cb801f2fe6801",2968:"c035675959036a26",2969:"7ed62af605513fc5",3025:"a6409a4c50aa6b50",3027:"d32f7ce6fe24e24d",3035:"d55165cf71483875",3048:"581728e93215a4f2",3111:"7f47b7af66ca1fbf",3211:"b0595e60ea4fcff0",3219:"cc7c5745c8155aa9",3285:"c2ac95fcff2bc28f",3309:"ace84bdcc45f5619",3348:"2f574ccf2b5cfd8c",3445:"7c393f3049424e54",3446:"fb026320baffe327",3470:"2ef286cc269cbbe0",3502:"76db367d14aefbab",3518:"1c34dd172e486ce4",3531:"fa4d6b63e1e692cd",3543:"8ad341b6a75fa799",3583:"28ace0881fe730ea",3609:"fcf9f91042cff79b",3616:"5680ad3780812343",3714:"d42d5df72b92ec38",3736:"b92826c00020fe12",3750:"bab3eb0fdeb5a4a1",3826:"bdc7a2af31e802c3",3838:"43d4c06d3215ad8a",3843:"cde2fe886e4eb9f2",3849:"dc71a6695b07428e",3922:"6f871228307155f8",3971:"154b902083a92a74",4021:"828758f4e47c21c3",4063:"3047633f31ed7455",4107:"731f8239852ddbbe",4163:"7b7f2384954f9f57",4177:"31d92e49bbf690f8",4185:"ab47a50594e8178a",4280:"33630d2fd3b5faf7",4293:"04c5c8d53b110acc",4305:"39d5a4854f6581a3",4314:"a3eb2293d2685eb0",4319:"09d04cf39cd7b5b2",4352:"49db0f8e3514003f",4388:"0688e8bc30480818",4404:"953f24dbeb0a44c0",4429:"8f0b98d34e7e0df0",4443:"ebc7fae0d2c5e91d",4486:"96a4833a8d35ee07",4535:"bd6377f18f4a51d5",4582:"8b972ea7500df8dd",4605:"9365a7e5cfa96b95",4611:"48026daa1ceef8e9",4651:"46eb45dbae3b7fbf",4695:"576442890bb85872",4715:"0235398be0cee170",4733:"db3cdb2b713fe48d",4742:"dd50a37e0c09e4d0",4743:"8f684de86de07757",4762:"c82050d496b46242",4849:"35376b4657ff1071",4889:"e7f34a1375ffd6e2",4891:"d007b90163d3764c",4910:"fa3651c9836e9cc8",4921:"c919e26ada69b601",4947:"e100d75290295105",4982:"70f8d2d0c17e3045",5013:"edb21916aadcba03",5034:"b30b7437764f6226",5171:"43e5c4edb3205ebe",5299:"0ee0685bbff562f3",5361:"0d3c5e5a487a67ed",5372:"d89a41b743afad60",5387:"a19edfb860f62e94",5403:"4d4517a4aeb6f9d4",5406:"47524e5109936f41",5436:"1228842465009bde",5482:"b5316a9b4bf214ed",5488:"f8de80cfdcf5ea54",5503:"d687814dc81efe2a",5541:"551a82f6823faefa",5559:"16487a252280590e",5644:"3dae19dbc7cd6dc1",5794:"6608ef6f4dcae4c5",5811:"158470dcd2d20272",5910:"55ac290e7e676b0b",5937:"966f925b66fcfbfd",5965:"810c6a006d03100a",5968:"fbd894c4549909ae",5990:"c6ed8770bc5bb2b9",6056:"1236748c7371fe94",6092:"54281dc96c515c4c",6097:"c8f304e256b528f7",6114:"8aa1b5ce7e6d65e3",6143:"005593bfdd2ac4ef",6153:"1b16c58083ddc5da",6202:"46533eb50bcb2b02",6226:"8ab007badc948408",6227:"23f0128159fa5aa7",6258:"8c13bb60c07fd0a8",6267:"13f3222151b29c47",6294:"f625e24dda25ad33",6300:"46ca86f61f0e2653",6318:"1ceadf3c639caecd",6347:"7a01ff4eb14248c5",6439:"67ce2783c59f94a5",6446:"7f2a0581b25f2f32",6453:"dca52781e2d97623",6498:"c68cf2fed1f8e223",6543:"33b19a960d99cbd9",6546:"23d70f654f80c658",6558:"951535ea0d1f1134",6637:"3a8b94fba0f25c8e",6639:"509ba1e7aa03a5d0",6660:"3ab1fe8312128d13",6674:"d4d35317497fff70",6675:"a6cf864cd6fecad5",6702:"e7afb4c56e120896",6721:"b81baf909d7449fa",6750:"dd3e03b1561f93c7",6772:"702586c4a13fa3b5",6778:"b11dd7c7d98f5ec9",6820:"6cacbe052a5e60c3",6836:"28cea96e95318a01",6858:"083125bdb146331f",6884:"c194f0a98a1b9118",6934:"b01dbcef6fcc5f10",6944:"b258f33302e798eb",6976:"bc4b9f7f4e783f74",6982:"e249c102d4364c36",7052:"668b973df8146782",7077:"c8c37a8cc46080ec",7078:"006aaa7649f1eba1",7082:"536cebbdae597baa",7111:"4e2a85c51d610456",7175:"0fe5febb816790b3",7245:"9a7044c686e1e8aa",7268:"f4890b6e1a3e575f",7302:"8172d81113189817",7383:"d818de224b4753ab",7388:"de247364c0d07eef",7403:"25b1d8574003a276",7452:"42dee77dbd7b945d",7504:"cc1d00d4cf49e440",7511:"95dc3df17bdce110",7538:"7e1bbbe63cff0562",7540:"cc573f0982af80f8",7559:"dc4bc3eed3a2c9aa",7565:"9ae86ea1715782a0",7578:"d04c0169c7ff59a0",7582:"95ebb4fa829e8609",7604:"49556d0292523231",7605:"278fa9614a1c4efc",7654:"69f0303ee3115f18",7799:"09bfbba1458ea0a0",7805:"61d009e1c1d63173",7813:"d7cd03ac2be02c32",7865:"07472b61729561eb",7885:"bbf9d27c9955862e",7915:"4ff095add809bba6",7921:"28d1f2b5eae62719",7952:"81312df15a130b8d",7966:"0b31fb2fe5ded9b2",8e3:"4beca6f7273e77be",8043:"337f0eccb0fea28c",8048:"2249af53330a66f6",8090:"8388e7f012bf0720",8093:"cd36e108daad0739",8115:"eb9dfcc86b21cce2",8130:"997b05975d40c96e",8132:"736c2350218bc374",8179:"3106e7c063997aa3",8194:"b6d433be4f244e14",8198:"cb3080398c70f78a",8218:"ba21c9fe8e1eefe2",8392:"71f74c174370d847",8414:"ab44334e110076e4",8432:"265e7fb442f7455a",8495:"8803956ba0d8c40c",8539:"a2d3694f0d117516",8561:"64d591c95ab55378",8564:"52775d4281d72165",8599:"c0a141e199720df1",8645:"980580120c56e67f",8658:"eefde27f46690669",8672:"d1fcd7ce65b7e5cb",8678:"acd1281dd062017b",8706:"bd4abfb526b585cc",8707:"2c3de6c603e121a0",8716:"1f136fe023d06d7d",8724:"7aa617ae4d55c023",8733:"c626198538458c59",8735:"350b7fd13037afed",8745:"5ed48d5b158fa809",8791:"2566e7881cc41e40",8894:"57dc3f3674d677eb",8959:"57014b840ee75752",8967:"6a167410c4240598",9003:"db666d472b6641cf",9054:"d2c903b7ddcae050",9085:"651439c0e5509629",9115:"3cf91571d413e064",9120:"e4b2cccaaac06e9e",9121:"63e72a22943ba681",9123:"89a3946f71e0e678",9136:"f074be345a9303f0",9167:"b297f3e0aac18dbd",9175:"9790d827e86e77dd",9203:"c5c041ead00ab2f9",9223:"15b9de8ccbdc5de6",9291:"877a6cbda0d05565",9327:"57b60dbce23abd74",9336:"57f0540627cf97d0",9344:"686191b6c16a6511",9354:"b29c9f4b8aa62a4b",9355:"28e46420ac563b95",9381:"6ee9137dc570b715",9388:"0f6a9f1c67c36e1c",9430:"fbe21468acadb86a",9439:"0aa6da7584d6c097",9505:"340358fb294f8acb",9506:"3d9e616fd121f667",9526:"23109be66dc055b3",9531:"3016f53df0c2a542",9543:"41a3da37802c1894",9602:"8c998080def3f0e0",9643:"fc02d88ab0d46ac1",9647:"6f33ab64e451a5e1",9650:"fa041bf7e01981a4",9683:"c919e26ada69b601",9707:"472a90178e35f6ae",9710:"1d9197dec86da9c0",9739:"2a985335dfd530d7",9752:"b6a9b4abd7e860b5",9781:"4d49a4b2f4758912",9847:"ef13fb8d4579968a",9914:"314c7fab8d237bd8",9982:"7cbaa0d4f5a1d0a1",9992:"b957826bf9891669"})[e]+".js",i.miniCssF=e=>{},i.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),i.o=(e,a)=>Object.prototype.hasOwnProperty.call(e,a),d={},i.l=(e,a,c,f)=>{if(d[e])return void d[e].push(a);if(void 0!==c)for(var b,t,r=document.getElementsByTagName("script"),o=0;o<r.length;o++){var n=r[o];if(n.getAttribute("src")==e||n.getAttribute("data-webpack")=="_N_E:"+c){b=n;break}}b||(t=!0,(b=document.createElement("script")).charset="utf-8",b.timeout=120,i.nc&&b.setAttribute("nonce",i.nc),b.setAttribute("data-webpack","_N_E:"+c),b.src=i.tu(e)),d[e]=[a];var u=(a,c)=>{b.onerror=b.onload=null,clearTimeout(s);var f=d[e];if(delete d[e],b.parentNode&&b.parentNode.removeChild(b),f&&f.forEach(e=>e(c)),a)return a(c)},s=setTimeout(u.bind(null,void 0,{type:"timeout",target:b}),12e4);b.onerror=u.bind(null,b.onerror),b.onload=u.bind(null,b.onload),t&&document.head.appendChild(b)},i.r=e=>{"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.tt=()=>(void 0===f&&(f={createScriptURL:e=>e},"u">typeof trustedTypes&&trustedTypes.createPolicy&&(f=trustedTypes.createPolicy("nextjs#bundler",f))),f),i.tu=e=>i.tt().createScriptURL(e),i.p="/_next/",b={8068:0,9271:0,9306:0},i.f.j=(e,a)=>{var c=i.o(b,e)?b[e]:void 0;if(0!==c)if(c)a.push(c[2]);else if(/^(8068|9271|9306)$/.test(e))b[e]=0;else{var d=new Promise((a,d)=>c=b[e]=[a,d]);a.push(c[2]=d);var f=i.p+i.u(e),t=Error();i.l(f,a=>{if(i.o(b,e)&&(0!==(c=b[e])&&(b[e]=void 0),c)){var d=a&&("load"===a.type?"missing":a.type),f=a&&a.target&&a.target.src;t.message="Loading chunk "+e+" failed.\n("+d+": "+f+")",t.name="ChunkLoadError",t.type=d,t.request=f,c[1](t)}},"chunk-"+e,e)}},i.O.j=e=>0===b[e],t=(e,a)=>{var c,d,[f,t,r]=a,o=0;if(f.some(e=>0!==b[e])){for(c in t)i.o(t,c)&&(i.m[c]=t[c]);if(r)var n=r(i)}for(e&&e(a);o<f.length;o++)d=f[o],i.o(b,d)&&b[d]&&b[d][0](),b[d]=0;return i.O(n)},(r=self.webpackChunk_N_E=self.webpackChunk_N_E||[]).forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r)),i.nc=void 0})();
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|