@p4code/cli 0.1.26 → 0.1.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/bin.mjs +1 -1
- package/dist/client/assets/DiffPanel-BAF3cYyw.js +98 -0
- package/dist/client/assets/{FilePreviewPanel-BQQLaLpK.js → FilePreviewPanel-9KNhEGOM.js} +4 -4
- package/dist/client/assets/PreviewPanel-Cf84rh6P.js +2 -0
- package/dist/client/assets/arrow-right-BTLkCknE.js +2 -0
- package/dist/client/assets/{fileCommentAnnotations-CRFAhzRA.js → fileCommentAnnotations-CpiZEOW7.js} +2 -2
- package/dist/client/assets/index-D1PfDaQW.js +891 -0
- package/dist/client/assets/index-Xpg1fQAg.css +1 -0
- package/dist/client/assets/{terminal-links-D-5oUNjJ.js → terminal-links-wSVIDKqM.js} +2 -2
- package/dist/client/index.html +3 -3
- package/package.json +1 -1
- package/dist/client/assets/DiffPanel-BwQlPbUS.js +0 -98
- package/dist/client/assets/PreviewPanel-Coh4ziog.js +0 -2
- package/dist/client/assets/arrow-right-CZ5hDV1Y.js +0 -2
- package/dist/client/assets/index-C93D7bsA.js +0 -875
- package/dist/client/assets/index-CVtJ86EL.css +0 -1
|
@@ -42,5 +42,5 @@ import{r as e,t}from"./rolldown-runtime-QTnfLwEv.js";import{i as n,r}from"./prel
|
|
|
42
42
|
`),fenceLanguage:i_e(e.filePath)}}function i_e(e){let t=e.replaceAll(`\\`,`/`),n=t.slice(t.lastIndexOf(`/`)+1).toLowerCase(),r=n.lastIndexOf(`.`);return r>0&&r<n.length-1?n.slice(r+1):n.startsWith(`.`)&&n.length>1?n.slice(1):`text`}function K6(e){return e.endsWith(`
|
|
43
43
|
`)?e.slice(0,-1):e}function q6(e){let t=[];for(let n of e.hunks){let r=n.deletionStart,i=n.additionStart,a=n.deletionLineIndex,o=n.additionLineIndex;for(let s of n.hunkContent){if(s.type===`context`){for(let n=0;n<s.lines;n+=1)t.push({change:`context`,oldLineNumber:r,newLineNumber:i,content:K6(e.additionLines[o]??e.deletionLines[a]??``)}),r+=1,i+=1,a+=1,o+=1;continue}for(let n=0;n<s.deletions;n+=1)t.push({change:`delete`,oldLineNumber:r,newLineNumber:null,content:K6(e.deletionLines[a]??``)}),r+=1,a+=1;for(let n=0;n<s.additions;n+=1)t.push({change:`add`,oldLineNumber:null,newLineNumber:i,content:K6(e.additionLines[o]??``)}),i+=1,o+=1}}return t}function J6(e){return e.change===`delete`&&e.oldLineNumber!==null?{lineNumber:e.oldLineNumber,side:`deletions`}:e.newLineNumber===null?e.oldLineNumber===null?null:{lineNumber:e.oldLineNumber,side:`deletions`}:{lineNumber:e.newLineNumber,side:`additions`}}function a_e(e,t){let n=q6(e),r=n[t.startIndex],i=n[t.endIndex];if(!r||!i)return null;let a=J6(r),o=J6(i);return!a||!o?null:{start:a.lineNumber,side:a.side,end:o.lineNumber,endSide:o.side}}function Y6(e,t,n){let r=n===`deletions`?`oldLineNumber`:`newLineNumber`,i=e.findIndex(e=>e[r]===t);if(i>=0)return i;let a=r===`oldLineNumber`?`newLineNumber`:`oldLineNumber`;return e.findIndex(e=>e[a]===t)}function X6(e,t){let n=e.filter(e=>e[t]!==null);return{start:n[0]?.[t]??0,count:n.length}}function Z6(e){return e===`add`?`+`:e===`delete`?`-`:` `}function o_e(e){let t=e[0],n=e.at(-1);if(!t||!n)return`line`;let r=t.newLineNumber??t.oldLineNumber,i=n.newLineNumber??n.oldLineNumber;if(r===null||i===null)return e.length===1?`line`:`${e.length} lines`;let a=Z6(t.change).trim(),o=a.length>0&&e.every(e=>e.change===t.change)?a:``;return r===i?`${o}${r}`:`${o}${r} to ${o}${i}`}function s_e(e){let t=q6(e.fileDiff),n=Y6(t,e.range.start,e.range.side),r=Y6(t,e.range.end,e.range.endSide??e.range.side);if(n<0||r<0)return null;let i=Math.min(n,r),a=Math.max(n,r),o=t.slice(i,a+1),s=X6(o,`oldLineNumber`),c=X6(o,`newLineNumber`);return{id:e.id,sectionId:e.sectionId,sectionTitle:e.sectionTitle,filePath:e.filePath,startIndex:i,endIndex:a,rangeLabel:o_e(o),text:e.text.trim(),diff:[`@@ -${s.start},${s.count} +${c.start},${c.count} @@`,...o.map(e=>`${Z6(e.change)}${e.content}`)].join(`
|
|
44
44
|
`),fenceLanguage:`diff`}}function c_e(e){if((e.fenceLanguage??`diff`)!==`diff`)return``;let t=e.diff.trim();if(t.length===0)return``;if(t.startsWith(`diff --git `))return t;let n=e.filePath.replaceAll(`\\`,`/`);return[`diff --git a/${n} b/${n}`,`--- a/${n}`,`+++ b/${n}`,t].join(`
|
|
45
|
-
`)}var Q6=bv(Uk),l_e=bv(wk),$6=bv(H6),e8=`p4code:composer-drafts:v1`,t8=8,u_e=H([`local`,`worktree`]),n8=L.pipe(qv(`DraftId`)),r8=Kge(typeof localStorage<`u`?localStorage:B6(),300);typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{r8.flush()});var i8=z({id:L,name:L,mimeType:L,sizeBytes:Lv,dataUrl:L}),d_e=z({id:L,threadId:Y,createdAt:L,terminalId:L,terminalLabel:L,lineStart:Lv,lineEnd:Lv}),f_e=z({functionName:U(L),fileName:U(L),lineNumber:U(Lv),columnNumber:U(Lv)}),p_e=z({id:L,threadId:Y,pickedAt:L,pageUrl:L,pageTitle:U(L),tagName:L,selector:U(L),htmlPreview:L,componentName:U(L),source:U(f_e),styles:L}),m_e=z({prompt:L,attachments:B(i8),terminalContexts:P(B(d_e)),elementContexts:P(B(p_e)),previewAnnotations:P(B($se)),reviewComments:P(B(H6)),modelSelectionByProvider:P(Bv(Tk,Hk)),activeProvider:P(U(Tk)),runtimeMode:P(Uk),interactionMode:P(Gk),compressMode:P(qk),unpromptedSubagents:P(R)}),h_e=z({threadId:Y,environmentId:L,projectId:ob,logicalProjectKey:P(L),createdAt:L,runtimeMode:Uk,interactionMode:Gk,branch:U(L),worktreePath:U(L),envMode:u_e,startFromOrigin:R.pipe(W(M(!1))),promotedTo:P(U(z({environmentId:L,threadId:L})))}),g_e=z({version:Lv,state:z({draftsByThreadKey:Bv(L,m_e),draftThreadsByThreadKey:Bv(L,h_e),logicalProjectDraftThreadKeyByLogicalProjectKey:Bv(L,L),stickyModelSelectionByProvider:P(Bv(Tk,Hk)),stickyActiveProvider:P(U(Tk))})});function a8(e){if(!e)return null;let t=e.options;return!t||t.length===0?null:{[e.instanceId]:t}}function __e(e){if(!e)return null;let t={};for(let[n,r]of Object.entries(e))r?.options&&r.options.length>0&&(t[n]=r.options);return Object.keys(t).length>0?t:null}function v_e(e){return{...e,...e.options?{options:e.options.map(e=>({...e}))}:{}}}function o8(e){let t=[];for(let[n,r]of Object.entries(e))r!==void 0&&t.push([n,v_e(r)]);return Object.fromEntries(t)}var s8=Object.freeze({draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null}),c8=[],l8=[],u8=[],y_e=[],d8=[],f8=[],p8=[];Object.freeze(c8),Object.freeze(l8),Object.freeze(u8),Object.freeze(d8),Object.freeze(f8),Object.freeze(p8);var m8=Object.freeze({}),b_e=Object.freeze({activeProvider:null,modelSelectionByProvider:m8}),x_e=Object.freeze({prompt:``,images:c8,nonPersistedImageIds:l8,persistedAttachments:u8,terminalContexts:y_e,elementContexts:d8,previewAnnotations:f8,reviewComments:p8,modelSelectionByProvider:m8,activeProvider:null,runtimeMode:null,interactionMode:null,compressMode:null,unpromptedSubagents:null});function h8(){return{prompt:``,images:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],elementContexts:[],previewAnnotations:[],reviewComments:[],modelSelectionByProvider:{},activeProvider:null,runtimeMode:null,interactionMode:null,compressMode:null,unpromptedSubagents:null}}function g8(e){return`${e.mimeType}\u0000${e.sizeBytes}\u0000${e.name}`}function _8(e){return`${e.terminalId}\u0000${e.lineStart}\u0000${e.lineEnd}`}function v8(e,t){let n=t.terminalId.trim(),r=t.terminalLabel.trim();if(n.length===0||r.length===0)return null;let i=Math.max(1,Math.floor(t.lineStart)),a=Math.max(i,Math.floor(t.lineEnd));return{...t,threadId:e,terminalId:n,terminalLabel:r,lineStart:i,lineEnd:a,text:u6(t.text)}}function y8(e,t){let n=new Set,r=new Set,i=[];for(let a of t){let t=v8(e,a);if(!t)continue;let o=_8(t);n.has(t.id)||r.has(o)||(i.push(t),n.add(t.id),r.add(o))}return i}function b8(e){return e.prompt.length===0&&e.images.length===0&&e.persistedAttachments.length===0&&e.terminalContexts.length===0&&e.elementContexts.length===0&&e.previewAnnotations.length===0&&e.reviewComments.length===0&&Object.keys(e.modelSelectionByProvider).length===0&&e.activeProvider===null&&e.runtimeMode===null&&e.interactionMode===null&&e.compressMode===null&&e.unpromptedSubagents===null}function x8(e){return l_e(e)?e:null}var S_e=/^[a-zA-Z][a-zA-Z0-9_-]{0,63}$/;function S8(e){return typeof e!=`string`||!S_e.test(e)?null:e}function C8(e){if(Array.isArray(e)){let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=n,r=e.id,i=e.value;typeof r!=`string`||r.length===0||(typeof i==`string`||typeof i==`boolean`)&&t.push({id:r,value:i})}return t.length>0?t:void 0}if(e&&typeof e==`object`){let t=e,n=[];for(let[e,r]of Object.entries(t))(typeof r==`string`||typeof r==`boolean`)&&n.push({id:e,value:r});return n.length>0?n:void 0}}function w8(e,t,n){let r=e&&typeof e==`object`?e:null,i={};for(let e of[`codex`,`claudeAgent`,`cursor`,`opencode`]){let t=C8(r?.[e]);t&&(i[e]=t)}if(t===`codex`&&n){let e=[];if(typeof n.effort==`string`&&n.effort.length>0&&e.push({id:`reasoningEffort`,value:n.effort}),(n.codexFastMode===!0||typeof n.serviceTier==`string`&&n.serviceTier===`fast`)&&e.push({id:`fastMode`,value:!0}),e.length>0){let t=i.codex??[],n=new Set(t.map(e=>e.id)),r=[...t];for(let t of e)n.has(t.id)||r.push(t);i.codex=r}}return Object.keys(i).length>0?i:null}function T8(e,t){let n=e&&typeof e==`object`?e:null,r=S8(n?.instanceId??n?.provider??t?.provider);if(r===null)return null;let i=n?.model??t?.model;if(typeof i!=`string`)return null;let a=qJ(i,x8(n?.provider??t?.provider)??wk.make(`codex`));if(!a)return null;if(Array.isArray(n?.options))return QJ(r,a,C8(n.options));let o=x8(r),s=o?w8(n?.options?{[o]:n.options}:t?.modelOptions,o,o===`codex`?t?.legacyCodex:void 0):null;return QJ(r,a,o?s?.[o]:void 0)}function E8(e,t){if(e===null)return null;let n=x8(e.instanceId),r=n?t?.[n]:void 0;return QJ(e.instanceId,e.model,r)}function D8(e,t){if(!e?.options||e.options.length===0)return w8(t);let n=x8(e.instanceId);return n?C_e(w8(t),n,e.options):w8(t)}function C_e(e,t,n){let{[t]:r,...i}=e??{},a={...i};return n&&n.length>0&&(a[t]=n),Object.keys(a).length>0?a:null}function O8(e,t){let n={};if(t)for(let r of[`codex`,`claudeAgent`,`cursor`,`opencode`]){let i=t[r];if(i&&i.length>0){let t=wk.make(r),a=Dk(t);n[a]=QJ(a,e?.instanceId===a?e.model:zk[t]??`gpt-5.6-sol`,i)}}return e&&(n[e.instanceId]=e),n}function w_e(e){let t=e.threadModelSelection?.model??e.projectModelSelection?.model??null,n=(e.selectedInstanceId?Z3(e.selectedInstanceId,e.settings,e.providers,t):null)??X3(e.selectedProvider,e.settings,e.providers,t)??qJ(t,e.selectedProvider)??uY(e.providers,e.selectedProvider),r=e.selectedInstanceId?e.draft?.modelSelectionByProvider?.[e.selectedInstanceId]:void 0,i=e.draft?.modelSelectionByProvider?.[Tk.make(e.selectedProvider)],a=r??i,o=r?e.selectedInstanceId??Tk.make(e.selectedProvider):Tk.make(e.selectedProvider);return{selectedModel:a?.model?Z3(o,e.settings,e.providers,a.model)??X3(e.selectedProvider,e.settings,e.providers,a.model):n,modelOptions:__e(e.draft?.modelSelectionByProvider)??a8(e.threadModelSelection)??a8(e.projectModelSelection)??null}}function k8(e){typeof URL>`u`||e.startsWith(`blob:`)&&URL.revokeObjectURL(e)}function A8(e){if(e)for(let t of e.images)k8(t.previewUrl)}function T_e(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.name,i=t.mimeType,a=t.sizeBytes,o=t.dataUrl;return typeof n!=`string`||typeof r!=`string`||typeof i!=`string`||typeof a!=`number`||!Number.isFinite(a)||typeof o!=`string`||n.length===0||o.length===0?null:{id:n,name:r,mimeType:i,sizeBytes:a,dataUrl:o}}function E_e(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.threadId,i=t.pickedAt,a=t.pageUrl,o=t.tagName;if(typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0||typeof i!=`string`||i.length===0||typeof a!=`string`||a.length===0||typeof o!=`string`||o.length===0)return null;let s=t.source,c=null;if(s&&typeof s==`object`){let e=s;c={functionName:typeof e.functionName==`string`?e.functionName:null,fileName:typeof e.fileName==`string`?e.fileName:null,lineNumber:typeof e.lineNumber==`number`&&Number.isFinite(e.lineNumber)?e.lineNumber:null,columnNumber:typeof e.columnNumber==`number`&&Number.isFinite(e.columnNumber)?e.columnNumber:null}}return{id:n,threadId:r,pickedAt:i,pageUrl:a,pageTitle:typeof t.pageTitle==`string`?t.pageTitle:null,tagName:o,selector:typeof t.selector==`string`?t.selector:null,htmlPreview:typeof t.htmlPreview==`string`?t.htmlPreview:``,componentName:typeof t.componentName==`string`?t.componentName:null,source:c,styles:typeof t.styles==`string`?t.styles:``}}function D_e(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.threadId,i=t.createdAt,a=t.lineStart,o=t.lineEnd;if(typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0||typeof i!=`string`||i.length===0||typeof a!=`number`||!Number.isFinite(a)||typeof o!=`number`||!Number.isFinite(o))return null;let s=typeof t.terminalId==`string`?t.terminalId.trim():``,c=typeof t.terminalLabel==`string`?t.terminalLabel.trim():``;if(s.length===0||c.length===0)return null;let l=Math.max(1,Math.floor(a));return{id:n,threadId:r,createdAt:i,terminalId:s,terminalLabel:c,lineStart:l,lineEnd:Math.max(l,Math.floor(o))}}function O_e(e,t){return e===`local`||e===`worktree`?e:t?`worktree`:`local`}function j8(e){return FB(e)}function M8(e){return e.trim()}function N8(e){return typeof e==`string`?e.trim():IB(e)}function P8(e,t){let n=zB(e);return n?N8(n):t?.environmentId?N8(NB(t.environmentId,e)):e}function k_e(e){return zB(e)}function F8(e,t){if(typeof t==`string`){let e=t.trim();return e.length>0?n8.make(e):null}return t}function I8(e,t){let n=F8(e,t);if(!n)return null;if(typeof n!=`string`){let t=N8(n);if(e.draftsByThreadKey[t])return t;for(let[t,r]of Object.entries(e.draftThreadsByThreadKey))if(r.environmentId===n.environmentId&&r.threadId===n.threadId)return t;return t}let r=N8(n);return r.length>0?r:null}function L8(e,t){let n=F8(e,t);return n?typeof n==`string`?e.draftThreadsByThreadKey[n]?.threadId??null:n.threadId:null}function R8(e,t){let n=I8(e,t);return n?e.draftsByThreadKey[n]??null:null}function A_e(e,t){return Object.values(e).includes(t)}function z8(e,t){return{draftId:e,...t}}function j_e(e,t,n,r,i){let a=r!==void 0&&(r.environmentId!==e.environmentId||r.projectId!==e.projectId),o=i?.worktreePath===void 0?a?null:r?.worktreePath??null:i.worktreePath??null,s=i?.branch===void 0?a?null:r?.branch??null:i.branch??null,c=i?.startFromOrigin===void 0?a?!1:r?.startFromOrigin??!1:i.startFromOrigin;return{threadId:t,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:n,createdAt:i?.createdAt??r?.createdAt??new Date().toISOString(),runtimeMode:i?.runtimeMode??r?.runtimeMode??`full-access`,interactionMode:i?.interactionMode??r?.interactionMode??`default`,branch:s,worktreePath:o,envMode:i?.envMode??(o?`worktree`:a?`local`:r?.envMode??`local`),startFromOrigin:c,promotedTo:null}}function B8(e,t){return!e||!t?e===t:e.environmentId===t.environmentId&&e.threadId===t.threadId}function V8(e){return e?.promotedTo!==null&&e?.promotedTo!==void 0}function M_e(e,t){return!!e&&e.threadId===t.threadId&&e.environmentId===t.environmentId&&e.projectId===t.projectId&&e.logicalProjectKey===t.logicalProjectKey&&e.createdAt===t.createdAt&&e.runtimeMode===t.runtimeMode&&e.interactionMode===t.interactionMode&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.envMode===t.envMode&&e.startFromOrigin===t.startFromOrigin&&B8(e.promotedTo,t.promotedTo)}function H8(e,t){let n=Object.fromEntries(Object.entries(e.logicalProjectDraftThreadKeyByLogicalProjectKey).filter(([,e])=>e!==t)),{[t]:r,...i}=e.draftThreadsByThreadKey,{[t]:a,...o}=e.draftsByThreadKey;return A8(a),{draftsByThreadKey:o,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n}}function U8(e,t){let n={},r=new Map;if(t&&typeof t==`object`)for(let[e,n]of Object.entries(t)){if(typeof n!=`string`||n.length===0)continue;let t=RB(e);if(!t)continue;let i=zB(n);if(i){r.set(i.threadId,i.environmentId);continue}r.set(n,t.environmentId)}if(e&&typeof e==`object`)for(let[t,i]of Object.entries(e)){if(typeof t!=`string`||t.length===0||!i||typeof i!=`object`)continue;let e=i,a=zB(t),o=P8(t),s=a?.threadId??(typeof e.threadId==`string`&&e.threadId.length>0?e.threadId:t),c=a?.environmentId??(typeof e.environmentId==`string`&&e.environmentId.length>0?e.environmentId:r.get(t)),l=e.projectId,u=e.createdAt,d=e.branch,f=e.worktreePath,p=e.startFromOrigin===!0,m=typeof f==`string`?f:null,h=e.promotedTo,g=h&&typeof h==`object`?h:null,_=g&&typeof g.environmentId==`string`&&g.environmentId.length>0&&typeof g.threadId==`string`&&g.threadId.length>0?NB(g.environmentId,g.threadId):null;if(typeof l!=`string`||l.length===0||c===void 0)continue;let v=c;n[o]={threadId:s,environmentId:v,projectId:l,logicalProjectKey:typeof e.logicalProjectKey==`string`&&e.logicalProjectKey.length>0?e.logicalProjectKey:a?j8(MB(v,l)):t,createdAt:typeof u==`string`&&u.length>0?u:new Date().toISOString(),runtimeMode:Q6(e.runtimeMode)?e.runtimeMode:Q3,interactionMode:e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:$3,branch:typeof d==`string`?d:null,worktreePath:m,envMode:O_e(e.envMode,m),startFromOrigin:p,promotedTo:_}}let i={};if(t&&typeof t==`object`)for(let[e,a]of Object.entries(t)){if(typeof a!=`string`||a.length===0)continue;let t=RB(e),o=zB(a),s=P8(a);if(i[e]=s,o&&r.set(o.threadId,o.environmentId),!t){let t=n[s];t&&!t.logicalProjectKey&&(n[s]={...t,logicalProjectKey:e});continue}n[s]?(n[s]?.projectId!==t.projectId||n[s]?.environmentId!==t.environmentId)&&(n[s]={...n[s],threadId:n[s].threadId,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e}):n[s]={threadId:o?.threadId??s,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e,createdAt:new Date().toISOString(),runtimeMode:Q3,interactionMode:$3,branch:null,worktreePath:null,envMode:`local`,startFromOrigin:!1,promotedTo:null}}return{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:i}}function W8(e,t){if(!e||typeof e!=`object`)return{};let n=new Map;for(let[e,r]of Object.entries(t)){let t=k_e(e);t&&n.set(t.threadId,r.environmentId)}let r={};for(let[i,a]of Object.entries(e)){if(typeof i!=`string`||i.length===0||!a||typeof a!=`object`)continue;let e=a,o=typeof e.prompt==`string`?e.prompt:``,s=Array.isArray(e.attachments)?e.attachments.flatMap(e=>{let t=T_e(e);return t?[t]:[]}):[],c=Array.isArray(e.terminalContexts)?e.terminalContexts.flatMap(e=>{let t=D_e(e);return t?[t]:[]}):[],l=Array.isArray(e.elementContexts)?e.elementContexts.flatMap(e=>{let t=E_e(e);return t?[t]:[]}):[],u=Array.isArray(e.reviewComments)?e.reviewComments.filter($6):[],d=Q6(e.runtimeMode)?e.runtimeMode:null,f=e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:null,p=h6(o,c.length),m=a,h={},g=null;if(e.modelSelectionByProvider&&typeof e.modelSelectionByProvider==`object`)h=e.modelSelectionByProvider,g=S8(e.activeProvider);else{let e=w8(m.modelOptions,void 0,m)??null,t=T8(m.modelSelection,{provider:m.provider,model:m.model,modelOptions:e??m.modelOptions,legacyCodex:m}),n=D8(t,e),r=E8(t,n);h=O8(r,n),g=r?.instanceId??null}let _=Object.keys(h).length>0||g!==null;if(o.length===0&&s.length===0&&c.length===0&&l.length===0&&u.length===0&&!_&&!d&&!f)continue;let v=zB(i)===null?t[i]===void 0?(()=>{let e=n.get(i);return e?P8(i,{environmentId:e}):i})():i:P8(i);r[v]={prompt:p,attachments:s,...c.length>0?{terminalContexts:c}:{},...l.length>0?{elementContexts:l}:{},...u.length>0?{reviewComments:u}:{},..._?{modelSelectionByProvider:o8(h),activeProvider:g}:{},...d?{runtimeMode:d}:{},...f?{interactionMode:f}:{}}}return r}function N_e(e){if(!e||typeof e!=`object`)return s8;let t=e,n=t.draftsByThreadKey??t.draftsByThreadId,r=t.draftThreadsByThreadKey??t.draftThreadsByThreadId,i=t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId,a=w8(t.stickyModelOptions)??{},o=T8(t.stickyModelSelection,{provider:t.stickyProvider??`codex`,model:t.stickyModel,modelOptions:a}),s=D8(o,a),c=O8(E8(o,s),s),l=S8(t.stickyProvider)??null,{draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d}=U8(r,i);return{draftsByThreadKey:W8(n,u),draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d,stickyModelSelectionByProvider:o8(c),stickyActiveProvider:l}}function P_e(e){let t={};for(let[n,r]of Object.entries(e.draftsByThreadKey)){if(typeof n!=`string`||n.length===0)continue;let e=Object.keys(r.modelSelectionByProvider).length>0||r.activeProvider!==null;r.prompt.length===0&&r.persistedAttachments.length===0&&r.terminalContexts.length===0&&r.elementContexts.length===0&&r.previewAnnotations.length===0&&r.reviewComments.length===0&&!e&&r.runtimeMode===null&&r.interactionMode===null&&r.compressMode===null&&r.unpromptedSubagents===null||(t[n]={prompt:r.prompt,attachments:r.persistedAttachments,...r.terminalContexts.length>0?{terminalContexts:r.terminalContexts.map(e=>({id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd}))}:{},...r.elementContexts.length>0?{elementContexts:r.elementContexts.map(e=>({id:e.id,threadId:e.threadId,pickedAt:e.pickedAt,pageUrl:e.pageUrl,pageTitle:e.pageTitle,tagName:e.tagName,selector:e.selector,htmlPreview:e.htmlPreview,componentName:e.componentName,source:e.source,styles:e.styles}))}:{},...r.previewAnnotations.length>0?{previewAnnotations:r.previewAnnotations.map(e=>({...e}))}:{},...r.reviewComments.length>0?{reviewComments:r.reviewComments.map(e=>({...e}))}:{},...e?{modelSelectionByProvider:o8(r.modelSelectionByProvider),activeProvider:r.activeProvider}:{},...r.runtimeMode?{runtimeMode:r.runtimeMode}:{},...r.interactionMode?{interactionMode:r.interactionMode}:{},...r.compressMode?{compressMode:r.compressMode}:{},...r.unpromptedSubagents===null?{}:{unpromptedSubagents:r.unpromptedSubagents}})}return{draftsByThreadKey:t,draftThreadsByThreadKey:e.draftThreadsByThreadKey,logicalProjectDraftThreadKeyByLogicalProjectKey:e.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:o8(e.stickyModelSelectionByProvider),stickyActiveProvider:e.stickyActiveProvider}}function F_e(e){if(!e||typeof e!=`object`)return s8;let t=e,{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r}=U8(t.draftThreadsByThreadKey??t.draftThreadsByThreadId,t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId),i={},a=null;if(t.stickyModelSelectionByProvider&&typeof t.stickyModelSelectionByProvider==`object`)i=t.stickyModelSelectionByProvider,a=S8(t.stickyActiveProvider);else{let e=w8(t.stickyModelOptions)??{},n=T8(t.stickyModelSelection,{provider:t.stickyProvider,model:t.stickyModel,modelOptions:e}),r=D8(n,e);i=O8(E8(n,r),r),a=S8(t.stickyProvider)}return{draftsByThreadKey:W8(t.draftsByThreadKey??t.draftsByThreadId,n),draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r,stickyModelSelectionByProvider:o8(i),stickyActiveProvider:a}}function I_e(e){if(e.length===0)return[];try{let t=XK(e8,g_e);return!t||t.version!==t8?[]:(t.state.draftsByThreadKey[e]?.attachments??[]).map(e=>e.id)}catch{return[]}}function L_e(e,t,n){let r=new Set;try{r8.flush(),r=new Set(I_e(e))}catch{r=new Set}n(n=>{let i=n.draftsByThreadKey[e];if(!i)return n;let a=new Set(i.images.map(e=>e.id)),o=t.filter(e=>a.has(e.id)&&r.has(e.id)),s=[];for(let e of i.images)r.has(e.id)||s.push(e.id);let c={...i,persistedAttachments:o,nonPersistedImageIds:s},l={...n.draftsByThreadKey};return b8(c)?delete l[e]:l[e]=c,{draftsByThreadKey:l}})}function R_e(e){let t=e.dataUrl.indexOf(`,`),n=t===-1?e.dataUrl:e.dataUrl.slice(0,t),r=t===-1?``:e.dataUrl.slice(t+1);if(r.length===0)return null;try{if(!n.includes(`;base64`)){let t=decodeURIComponent(r),i=n.startsWith(`data:`)&&n.includes(`;`)?n.slice(5,n.indexOf(`;`)):e.mimeType;return new File([t],e.name,{type:i||e.mimeType})}let t=atob(r),i=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)i[e]=t.charCodeAt(e);return new File([i],e.name,{type:e.mimeType})}catch{return null}}function G8(e){return e.flatMap(e=>{let t=R_e(e);return t?[{type:`image`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.dataUrl,file:t}]:[]})}function z_e(e){let t=e.modelSelectionByProvider??{},n=S8(e.activeProvider)??null;return{prompt:e.prompt,images:G8(e.attachments),nonPersistedImageIds:[],persistedAttachments:[...e.attachments],terminalContexts:e.terminalContexts?.map(e=>({...e,text:``}))??[],elementContexts:e.elementContexts?.map(e=>({...e}))??[],previewAnnotations:e.previewAnnotations?.map(e=>({...e}))??[],reviewComments:e.reviewComments?.map(e=>({...e}))??[],modelSelectionByProvider:t,activeProvider:n,runtimeMode:e.runtimeMode??null,interactionMode:e.interactionMode??null,compressMode:e.compressMode??null,unpromptedSubagents:e.unpromptedSubagents??null}}function B_e(e){return{threadId:e.threadId,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:e.logicalProjectKey??j8(MB(e.environmentId,e.projectId)),createdAt:e.createdAt,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,branch:e.branch,worktreePath:e.worktreePath,envMode:e.envMode,startFromOrigin:e.startFromOrigin,promotedTo:e.promotedTo?NB(e.promotedTo.environmentId,e.promotedTo.threadId):null}}var K8=v6()(x6((e,t)=>{let n=e;return{draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null,getComposerDraft:e=>R8(t(),e),getDraftThreadByLogicalProjectKey:e=>t().getDraftSessionByLogicalProjectKey(e),getDraftSessionByLogicalProjectKey:e=>{let n=M8(e);if(n.length===0)return null;let r=t().logicalProjectDraftThreadKeyByLogicalProjectKey[n];if(!r)return null;let i=t().draftThreadsByThreadKey[r];return!i||V8(i)?null:z8(n8.make(r),i)},getDraftThreadByProjectRef:e=>t().getDraftSessionByProjectRef(e),getDraftSessionByProjectRef:e=>{for(let[n,r]of Object.entries(t().draftThreadsByThreadKey))if(!V8(r)&&r.projectId===e.projectId&&r.environmentId===e.environmentId)return z8(n8.make(n),r);return null},getDraftSession:e=>t().draftThreadsByThreadKey[e]??null,getDraftSessionByRef:e=>{for(let n of Object.values(t().draftThreadsByThreadKey))if(n.environmentId===e.environmentId&&n.threadId===e.threadId)return n;return null},getDraftThread:e=>typeof e==`string`?t().getDraftSession(n8.make(e)):t().getDraftSessionByRef(e),getDraftThreadByRef:e=>t().getDraftSessionByRef(e),listDraftThreadKeys:()=>Object.values(t().draftThreadsByThreadKey).map(e=>IB(NB(e.environmentId,e.threadId))),hasDraftThreadsInEnvironment:e=>Object.values(t().draftThreadsByThreadKey).some(t=>t.environmentId===e),setLogicalProjectDraftThreadId:(e,t,r,i)=>{let a=M8(e);a.length===0||r.length===0||n(e=>{let n=e.draftThreadsByThreadKey[r],o=e.logicalProjectDraftThreadKeyByLogicalProjectKey[a],s=j_e(t,i?.threadId??n?.threadId??Y.make(r),a,n,i);if(o===r&&M_e(n,s))return e;let c={...e.logicalProjectDraftThreadKeyByLogicalProjectKey,[a]:r},l={...e.draftThreadsByThreadKey,[r]:s},u=e.draftsByThreadKey,d=o===void 0?void 0:l[o];return o&&o!==r&&!A_e(c,o)&&!V8(d)&&(delete l[o],e.draftsByThreadKey[o]!==void 0&&(u={...e.draftsByThreadKey},delete u[o])),{draftsByThreadKey:u,draftThreadsByThreadKey:l,logicalProjectDraftThreadKeyByLogicalProjectKey:c}})},setProjectDraftThreadId:(e,n,r)=>{t().setLogicalProjectDraftThreadId(j8(e),e,n,r)},setDraftThreadContext:(e,r)=>{let i=I8(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r.projectRef??{environmentId:t.environmentId,projectId:t.projectId};if(n.projectId.length===0||n.environmentId.length===0)return e;let a=n.environmentId!==t.environmentId||n.projectId!==t.projectId,o=r.worktreePath===void 0?a?null:t.worktreePath:r.worktreePath??null,s=r.branch===void 0?a?null:t.branch:r.branch??null,c=r.startFromOrigin===void 0?a?!1:t.startFromOrigin:r.startFromOrigin,l={threadId:t.threadId,environmentId:n.environmentId,projectId:n.projectId,logicalProjectKey:t.logicalProjectKey,createdAt:r.createdAt===void 0?t.createdAt:r.createdAt||t.createdAt,runtimeMode:r.runtimeMode??t.runtimeMode,interactionMode:r.interactionMode??t.interactionMode,branch:s,worktreePath:o,envMode:r.envMode??(o?`worktree`:a?`local`:t.envMode??`local`),startFromOrigin:c,promotedTo:t.promotedTo??null};return l.environmentId===t.environmentId&&l.projectId===t.projectId&&l.logicalProjectKey===t.logicalProjectKey&&l.createdAt===t.createdAt&&l.runtimeMode===t.runtimeMode&&l.interactionMode===t.interactionMode&&l.branch===t.branch&&l.worktreePath===t.worktreePath&&l.envMode===t.envMode&&l.startFromOrigin===t.startFromOrigin&&B8(l.promotedTo,t.promotedTo)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:l}}})},clearProjectDraftThreadId:e=>{n(t=>{let n=Object.entries(t.draftThreadsByThreadKey).find(([,t])=>t.projectId===e.projectId&&t.environmentId===e.environmentId);return n?H8(t,n[0]):t})},clearProjectDraftThreadById:(e,r)=>{let i=I8(t(),r)??``;i.length!==0&&n(t=>{let n=t.draftThreadsByThreadKey[i];return!n||n.projectId!==e.projectId||n.environmentId!==e.environmentId?t:H8(t,i)})},markDraftThreadPromoting:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r??NB(t.environmentId,t.threadId);return B8(t.promotedTo,n)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:{...t,promotedTo:n}}}})},finalizePromotedDraftThread:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[r];return V8(t)?H8(e,r):e})},clearDraftThread:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[r]!==void 0,n=Object.values(e.logicalProjectDraftThreadKeyByLogicalProjectKey).includes(r),i=e.draftsByThreadKey[r]!==void 0;return!t&&!n&&!i?e:H8(e,r)})},setStickyModelSelection:e=>{let t=T8(e);n(e=>{if(!t)return e;let n={...e.stickyModelSelectionByProvider,[t.instanceId]:t};return ft(e.stickyModelSelectionByProvider,n)?e.stickyActiveProvider===t.instanceId?e:{stickyActiveProvider:t.instanceId}:{stickyModelSelectionByProvider:n,stickyActiveProvider:t.instanceId}})},applyStickyState:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.stickyModelSelectionByProvider,n=e.stickyActiveProvider;if(Object.keys(t).length===0&&n===null)return e;let i=e.draftsByThreadKey[r]??h8(),a={...i.modelSelectionByProvider};for(let[e,n]of Object.entries(t))if(n){let t=e,r=a[t];a[t]={...n,model:r?.model??n.model}}if(ft(i.modelSelectionByProvider,a)&&i.activeProvider===n)return e;let o={...i,modelSelectionByProvider:a,activeProvider:n},s={...e.draftsByThreadKey};return b8(o)?delete s[r]:s[r]=o,{draftsByThreadKey:s}})},setPrompt:(e,r)=>{let i=I8(t(),e)??``;i.length!==0&&n(e=>{let t={...e.draftsByThreadKey[i]??h8(),prompt:r},n={...e.draftsByThreadKey};return b8(t)?delete n[i]:n[i]=t,{draftsByThreadKey:n}})},setTerminalContexts:(e,r)=>{let i=I8(t(),e),a=L8(t(),e);if(!i||!a)return;let o=y8(a,r);n(e=>{let t=e.draftsByThreadKey[i]??h8(),n={...t,prompt:h6(t.prompt,o.length),terminalContexts:o},r={...e.draftsByThreadKey};return b8(n)?delete r[i]:r[i]=n,{draftsByThreadKey:r}})},setModelSelection:(e,r,i)=>{let a=I8(t(),e)??``;if(a.length===0)return;let o=T8(r);n(e=>{let t=e.draftsByThreadKey[a];if(!t&&o===null)return e;let n=t??h8(),r={...n.modelSelectionByProvider};if(o){let e=r[o.instanceId];o.options!==void 0||i?.replaceOptions?r[o.instanceId]=o:r[o.instanceId]=QJ(o.instanceId,o.model,e?.options)}let s=o?.instanceId??n.activeProvider;if(ft(n.modelSelectionByProvider,r)&&n.activeProvider===s)return e;let c={...n,modelSelectionByProvider:r,activeProvider:s},l={...e.draftsByThreadKey};return b8(c)?delete l[a]:l[a]=c,{draftsByThreadKey:l}})},setModelOptions:(e,r)=>{let i=I8(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i];if(!t&&(!r||Object.keys(r).length===0))return e;let n=t??h8(),a={...n.modelSelectionByProvider};for(let e of[`codex`,`claudeAgent`,`cursor`,`opencode`]){if(!r||!(e in r))continue;let t=r[e],n=wk.make(e),i=Dk(n),o=a[i];if(t&&t.length>0)a[i]=QJ(i,o?.model??zk[n]??`gpt-5.6-sol`,t);else if(o?.options){let{options:e,...t}=o;a[i]=t}}if(ft(n.modelSelectionByProvider,a))return e;let o={...n,modelSelectionByProvider:a},s={...e.draftsByThreadKey};return b8(o)?delete s[i]:s[i]=o,{draftsByThreadKey:s}})},setProviderModelOptions:(e,r,i,a)=>{let o=I8(t(),e)??``;if(o.length===0)return;let s=x8(r);if(s===null)return;let c=a?.instanceId??Dk(s),l=qJ(a?.model,s)??zk[s]??`gpt-5.6-sol`,u=i&&i.length>0?i:void 0;n(e=>{let t=e.draftsByThreadKey[o]??h8(),n={...t.modelSelectionByProvider},r=n[c];if(u)n[c]=QJ(c,r?.model??l,u);else if(r&&(r.options?.length??0)>0){let{options:e,...t}=r;n[c]=t}let i=e.stickyModelSelectionByProvider,s=e.stickyActiveProvider;if(a?.persistSticky===!0){i={...e.stickyModelSelectionByProvider};let n=i[c]??t.modelSelectionByProvider[c]??QJ(c,l);if(u)i[c]=QJ(c,n.model,u);else if((n.options?.length??0)>0){let{options:e,...t}=n;i[c]=t}s=a.instanceId?c:t.activeProvider??c}if(ft(t.modelSelectionByProvider,n)&&ft(e.stickyModelSelectionByProvider,i)&&e.stickyActiveProvider===s)return e;let d={...t,...a?.instanceId?{activeProvider:c}:{},modelSelectionByProvider:n},f={...e.draftsByThreadKey};return b8(d)?delete f[o]:f[o]=d,{draftsByThreadKey:f,...a?.persistSticky===!0?{stickyModelSelectionByProvider:i,stickyActiveProvider:s}:{}}})},setRuntimeMode:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=Q6(r)?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.runtimeMode===a)return e;let r={...n,runtimeMode:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setInteractionMode:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=r===`plan`||r==="default"?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.interactionMode===a)return e;let r={...n,interactionMode:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setCompressMode:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=r===`off`||r===`lite`||r===`full`||r===`ultra`?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.compressMode===a)return e;let r={...n,compressMode:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setUnpromptedSubagents:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=typeof r==`boolean`?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.unpromptedSubagents===a)return e;let r={...n,unpromptedSubagents:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},addImage:(e,n)=>{let r=I8(t(),e),i=L8(t(),e);!r||!i||t().addImages(typeof e==`string`?n8.make(r):e,[n])},addImages:(e,r)=>{let i=I8(t(),e)??``;i.length===0||r.length===0||n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=new Set(t.images.map(e=>e.id)),a=new Set(t.images.map(e=>g8(e))),o=new Set(t.images.map(e=>e.previewUrl)),s=[];for(let e of r){let t=g8(e);if(n.has(e.id)||a.has(t)){o.has(e.previewUrl)||k8(e.previewUrl);continue}s.push(e),n.add(e.id),a.add(t),o.add(e.previewUrl)}return s.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,images:[...t.images,...s]}}}})},removeImage:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=t().draftsByThreadKey[i];if(!a)return;let o=a.images.find(e=>e.id===r);o&&k8(o.previewUrl),n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,images:t.images.filter(e=>e.id!==r),nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>e!==r),persistedAttachments:t.persistedAttachments.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return b8(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},insertTerminalContext:(e,r,i,a)=>{let o=I8(t(),e),s=L8(t(),e);if(!o||!s)return!1;let c=!1;return n(e=>{let t=e.draftsByThreadKey[o]??h8(),n=v8(s,i);if(!n)return e;let l=_8(n);if(t.terminalContexts.some(e=>e.id===n.id)||t.terminalContexts.some(e=>_8(e)===l))return e;c=!0;let u=Math.max(0,Math.min(t.terminalContexts.length,a)),d={...t,prompt:r,terminalContexts:[...t.terminalContexts.slice(0,u),n,...t.terminalContexts.slice(u)]};return{draftsByThreadKey:{...e.draftsByThreadKey,[o]:d}}}),c},addTerminalContext:(e,n)=>{let r=I8(t(),e),i=L8(t(),e);!r||!i||t().addTerminalContexts(typeof e==`string`?n8.make(r):e,[n])},addTerminalContexts:(e,r)=>{let i=I8(t(),e),a=L8(t(),e);!i||!a||r.length===0||n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=y8(a,[...t.terminalContexts,...r]).slice(t.terminalContexts.length);return n.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,prompt:h6(t.prompt,t.terminalContexts.length+n.length),terminalContexts:[...t.terminalContexts,...n]}}}})},removeTerminalContext:(e,r)=>{let i=I8(t(),e)??``;i.length===0||r.length===0||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,terminalContexts:t.terminalContexts.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return b8(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},clearTerminalContexts:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t||t.terminalContexts.length===0)return e;let n={...t,terminalContexts:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},addElementContext:(e,r)=>{let i=I8(t(),e),a=L8(t(),e);if(!i||!a)return!1;let o=!1;return n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=r6(r);if(t.elementContexts.some(e=>r6(e)===n))return e;o=!0;let s={...r,id:pge(),threadId:a,pickedAt:new Date().toISOString()};return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,elementContexts:[...t.elementContexts,s]}}}}),o},setElementContexts:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t={...e.draftsByThreadKey[i]??h8(),elementContexts:[...r]},n={...e.draftsByThreadKey};return b8(t)?delete n[i]:n[i]=t,{draftsByThreadKey:n}})},removeElementContext:(e,r)=>{let i=I8(t(),e)??``;i.length===0||r.length===0||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n=t.elementContexts.filter(e=>e.id!==r);if(n.length===t.elementContexts.length)return e;let a={...t,elementContexts:n},o={...e.draftsByThreadKey};return b8(a)?delete o[i]:o[i]=a,{draftsByThreadKey:o}})},clearElementContexts:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t||t.elementContexts.length===0)return e;let n={...t,elementContexts:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},addPreviewAnnotation:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=t.previewAnnotations.filter(e=>e.id!==r.id),a={...r,screenshot:r.screenshot?{...r.screenshot,dataUrl:``}:null};return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,previewAnnotations:[...n,a]}}}})},setPreviewAnnotations:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t=e.draftsByThreadKey[i]??h8();return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,previewAnnotations:[...r]}}}})},removePreviewAnnotation:(e,r)=>{let i=I8(t(),e);!i||!r||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n=t.previewAnnotations.filter(e=>e.id!==r);if(n.length===t.previewAnnotations.length)return e;let a={...t,previewAnnotations:n,images:t.images.filter(e=>e.id!==r),persistedAttachments:t.persistedAttachments.filter(e=>e.id!==r),nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>e!==r)},o={...e.draftsByThreadKey};return b8(a)?delete o[i]:o[i]=a,{draftsByThreadKey:o}})},addReviewComment:(e,r)=>{let i=I8(t(),e);!i||!$6(r)||n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=t.reviewComments.filter(e=>e.id!==r.id);return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,reviewComments:[...n,{...r}]}}}})},setReviewComments:(e,r)=>{let i=I8(t(),e);if(!i)return;let a=r.filter($6).map(e=>({...e}));n(e=>{let t={...e.draftsByThreadKey[i]??h8(),reviewComments:a},n={...e.draftsByThreadKey};return b8(t)?delete n[i]:n[i]=t,{draftsByThreadKey:n}})},removeReviewComment:(e,r)=>{let i=I8(t(),e);!i||!r||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n=t.reviewComments.filter(e=>e.id!==r);if(n.length===t.reviewComments.length)return e;let a={...t,reviewComments:n},o={...e.draftsByThreadKey};return b8(a)?delete o[i]:o[i]=a,{draftsByThreadKey:o}})},clearPersistedAttachments:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n={...t,persistedAttachments:[],nonPersistedImageIds:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},syncPersistedAttachments:(e,r)=>{let i=I8(t(),e);if(!i)return;let a=new Set(r.map(e=>e.id));n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,persistedAttachments:r,nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>!a.has(e))},o={...e.draftsByThreadKey};return b8(n)?delete o[i]:o[i]=n,{draftsByThreadKey:o}}),Promise.resolve().then(()=>{L_e(i,r,n)})},clearComposerContent:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n={...t,prompt:``,images:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],elementContexts:[],previewAnnotations:[],reviewComments:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},clearComposerPromptAndImages:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;for(let e of t.images)k8(e.previewUrl);let n={...t,prompt:h6(``,t.terminalContexts.length),images:[],nonPersistedImageIds:[],persistedAttachments:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})}}},{name:e8,version:t8,storage:y6(()=>r8),migrate:N_e,partialize:P_e,merge:(e,t)=>{let n=F_e(e),r=Object.fromEntries(Object.entries(n.draftsByThreadKey).map(([e,t])=>[e,z_e(t)])),i=Object.fromEntries(Object.entries(n.draftThreadsByThreadKey).map(([e,t])=>[e,B_e(t)]));return{...t,draftsByThreadKey:r,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:n.stickyModelSelectionByProvider??{},stickyActiveProvider:n.stickyActiveProvider??null}}}));function V_e(e){K8.setState(t=>{let n=new Set;for(let[r,i]of Object.entries(t.draftThreadsByThreadKey))i.environmentId===e&&n.add(r);for(let r of Object.keys(t.draftsByThreadKey))zB(r)?.environmentId===e&&n.add(r);for(let[r,i]of Object.entries(t.logicalProjectDraftThreadKeyByLogicalProjectKey))RB(r)?.environmentId===e&&n.add(i);let r=Object.fromEntries(Object.entries(t.logicalProjectDraftThreadKeyByLogicalProjectKey).filter(([t,r])=>RB(t)?.environmentId!==e&&!n.has(r))),i=Object.fromEntries(Object.entries(t.draftThreadsByThreadKey).filter(([t,r])=>r.environmentId!==e&&!n.has(t)));return{draftsByThreadKey:Object.fromEntries(Object.entries(t.draftsByThreadKey).filter(([e,t])=>n.has(e)?(A8(t),!1):!0)),draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:r}}),r8.flush()}function H_e(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=t=>R8(t,e)??x_e,t[0]=e,t[1]=n),K8(n)}function U_e(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=R8(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:b_e},t[0]=e,t[1]=n),K8(T6(n))}function W_e(e){let t=(0,Dp.c)(11),n;t[0]!==e.draftId||t[1]!==e.threadRef?(n=e.threadRef??e.draftId??n8.make(``),t[0]=e.draftId,t[1]=e.threadRef,t[2]=n):n=t[2];let r=U_e(n),i;return t[3]!==r||t[4]!==e.projectModelSelection||t[5]!==e.providers||t[6]!==e.selectedInstanceId||t[7]!==e.selectedProvider||t[8]!==e.settings||t[9]!==e.threadModelSelection?(i=w_e({draft:r,providers:e.providers,selectedProvider:e.selectedProvider,selectedInstanceId:e.selectedInstanceId,threadModelSelection:e.threadModelSelection,projectModelSelection:e.projectModelSelection,settings:e.settings}),t[3]=r,t[4]=e.projectModelSelection,t[5]=e.providers,t[6]=e.selectedInstanceId,t[7]=e.selectedProvider,t[8]=e.settings,t[9]=e.threadModelSelection,t[10]=i):i=t[10],i}function G_e(e){let t=K8.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey))r.environmentId===e.environmentId&&r.threadId===e.threadId&&t.markDraftThreadPromoting(n8.make(n),e)}function K_e(e){let t=K8.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey)){let i=r.promotedTo;if(i?i.environmentId===e.environmentId&&i.threadId===e.threadId:r.environmentId===e.environmentId&&r.threadId===e.threadId){let r=n8.make(n);t.markDraftThreadPromoting(r,e),t.finalizePromotedDraftThread(r)}}}function q8(...e){return PJ(aq(e))}function J8(e){return/mac|iphone|ipad|ipod/i.test(e)}function q_e(e){return/^win(dows)?/i.test(e)}function J_e(e){return dm(globalThis.crypto.getRandomValues(new Uint8Array(e)))}function Y8(){let e=globalThis.crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=dm(e);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}var Y_e=()=>ob.make(Y8()),X_e=()=>Y.make(Y8()),Z_e=()=>n8.make(Y8()),Q_e=()=>fb.make(Y8());function $_e(e,t){switch(t.type){case`snapshot`:return xr({config:t.config,latestEvent:t,source:`live`});case`keybindingsUpdated`:return Nr(e,e=>({config:{...e.config,keybindings:t.payload.keybindings,issues:t.payload.issues},latestEvent:t,source:`live`}));case`providerStatuses`:return Nr(e,e=>({config:{...e.config,providers:t.payload.providers},latestEvent:t,source:`live`}));case`settingsUpdated`:return Nr(e,e=>({config:{...e.config,settings:t.payload.settings},latestEvent:t,source:`live`}))}}var eve=e=>({version:1,type:`snapshot`,config:e}),tve=fp(`EnvironmentServerConfigState.make`)(function*(){let e=yield*XG,t=yield*qW,n=e.target.environmentId,r=yield*yj(Nr(yield*t.loadServerConfig(n).pipe(tf(e=>mp(`Could not load cached server configuration.`).pipe(_p({environmentId:n,...FG(e)}),Qd(br())))),e=>({config:e,latestEvent:eve(e),source:`cache`}))),i=yield*Tx(1),a=yield*gO(br()),o=fp(`EnvironmentServerConfigState.persist`)(function*(e){return yield*t.saveServerConfig(n,e).pipe(Qd(!0),tf(e=>mp(`Could not persist cached server configuration.`).pipe(_p({environmentId:n,...FG(e)}),Qd(!1))))}),s=fp(`EnvironmentServerConfigState.persistPending`)(function*(e){(yield*o(e))&&(yield*xO(a,t=>wr(t)&&t.value===e?br():t))});return yield*jC(i).pipe(ZC(`500 millis`),sw(s),Zf),yield*uK(X.subscribeServerConfig,{}).pipe(sw(e=>zd(function*(){let t=$_e(yield*xj(r),e);Cr(t)||(yield*vO(a,xr(t.value.config)),yield*Cj(r,t),yield*Dx(i,t.value.config))})),Zf),yield*Af(()=>_O(a).pipe(Gd(Tr({onNone:()=>Id,onSome:e=>o(e).pipe(ef)})))),r});function nve(e){return DK(e,FC(tve().pipe(Zd(e=>bj(e).pipe(GC(e=>Tr(e,{onNone:()=>zi,onSome:e=>Li(e)})))))))}function rve(e,t){if(t.type!==`welcome`)return[e,[]];let n=t.payload;return[xr(n),[n]]}function ive(e,t){return e?.source===`live`?e.config:t??e?.config??null}function ave(e,t){let n=fK(),r={mode:`serial`,key:({environmentId:e})=>e},i=iH(t=>e.atom(nve(t)).pipe(AV(5*6e4),oH(`environment-data:server:config-projection:${t}`))),a=e=>i(e.environmentId),o=BV(null).pipe(oH(`environment-data:server:config:empty`)),s=iH(e=>e===null?o:BV(n=>ive(kr(tV(n(a({environmentId:e,input:{}})))),n(t.initialConfigValueAtom(e)))).pipe(oH(`environment-data:server:config:${e}`)));return{configValueAtom:s,settingsValueAtom:iH(e=>BV(t=>t(s(e))?.settings??null).pipe(oH(`environment-data:server:settings:${e}`))),providersValueAtom:iH(e=>BV(t=>t(s(e))?.providers??null).pipe(oH(`environment-data:server:providers:${e}`))),traceDiagnostics:jK(e,{label:`environment-data:server:trace-diagnostics`,tag:X.serverGetTraceDiagnostics}),processDiagnostics:jK(e,{label:`environment-data:server:process-diagnostics`,tag:X.serverGetProcessDiagnostics}),processResourceHistory:jK(e,{label:`environment-data:server:process-resource-history`,tag:X.serverGetProcessResourceHistory}),configProjection:a,welcome:MK(e,{label:`environment-data:server:welcome`,tag:X.subscribeServerLifecycle,transform:e=>e.pipe(JC(br,rve))}),refreshProviders:NK(e,{label:`environment-data:server:refresh-providers`,tag:X.serverRefreshProviders,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}}),getProviderUsage:NK(e,{label:`environment-data:server:get-provider-usage`,tag:X.serverGetProviderUsage}),updateProvider:NK(e,{label:`environment-data:server:update-provider`,tag:X.serverUpdateProvider,scheduler:n,concurrency:r}),updateServer:NK(e,{label:`environment-data:server:update-server`,tag:X.serverUpdateServer,scheduler:n,concurrency:r}),upsertKeybinding:NK(e,{label:`environment-data:server:upsert-keybinding`,tag:X.serverUpsertKeybinding,scheduler:n,concurrency:r}),removeKeybinding:NK(e,{label:`environment-data:server:remove-keybinding`,tag:X.serverRemoveKeybinding,scheduler:n,concurrency:r}),updateSettings:NK(e,{label:`environment-data:server:update-settings`,tag:X.serverUpdateSettings,scheduler:n,concurrency:r}),signalProcess:NK(e,{label:`environment-data:server:signal-process`,tag:X.serverSignalProcess})}}var X8=(e,t)=>e===null?t.pipe(wf(zz,{credentials:`include`})):t,Z8=e=>e===null?{}:{authorization:`Bearer ${e.token}`},ove=6e3,sve=fp(`clientRuntime.state.fetchEnvironmentShellSnapshot`)(function*(e){let t=Ap(e.prepared.httpBaseUrl,`/api/orchestration/shell`),n=yield*DB(e.prepared.httpBaseUrl),r=Z8(e.prepared.httpAuthorization);return yield*kB(t,e.timeoutMs??ove,X8(e.prepared.httpAuthorization,n.orchestration.shellSnapshot({headers:r})))}),Q8=class extends Ir()(`@p4code/client-runtime/state/shellSnapshotHttp/ShellSnapshotLoader`){},cve=fu(Q8,zd(function*(){let e=yield*CO;return Q8.of({load:t=>sve({prepared:t}).pipe(Zd(xr),wf(CO,e),af(e=>mp(`Could not load the environment shell snapshot over HTTP; using the socket snapshot instead.`).pipe(_p({cause:Fu(e)}),Qd(br()))))})}));function lve(e,t){if(t.sequence<=e.snapshotSequence)return e;switch(t.kind){case`project-upserted`:{let n=e.projects.some(e=>e.id===t.project.id)?na(e.projects,e=>e.id===t.project.id?t.project:e):Ji(e.projects,t.project);return{...e,projects:n,snapshotSequence:t.sequence}}case`project-removed`:return{...e,projects:ia(e.projects,e=>e.id!==t.projectId),snapshotSequence:t.sequence};case`thread-upserted`:{let n=e.threads.some(e=>e.id===t.thread.id)?na(e.threads,e=>e.id===t.thread.id?t.thread:e):Ji(e.threads,t.thread);return{...e,threads:n,snapshotSequence:t.sequence}}case`thread-removed`:return{...e,threads:ia(e.threads,e=>e.id!==t.threadId),snapshotSequence:t.sequence};default:return e}}function uve(e,t){return{...t,environmentId:e}}function dve(e,t){return{...t,environmentId:e}}function fve(e,t){return{...t,environmentId:e}}function pve(e){return{openInEditor:NK(e,{label:`environment-data:shell:open-in-editor`,tag:X.shellOpenInEditor})}}function mve(e){return iH(t=>BV(n=>Tr(tV(n(e(t))),{onNone:()=>null,onSome:e=>kr(e.snapshot)})).pipe(oH(`environment-snapshot:${t}`)))}var $8={snapshot:br(),status:`empty`,error:br()};function e5(e){return wr(e)?`cached`:`empty`}var hve=`Could not synchronize environment data.`,gve=fp(`EnvironmentShellState.make`)(function*(){let e=yield*XG,t=yield*qW,n=yield*Q8,r=yield*Sf(IG),i=e.target.environmentId,a=yield*t.loadShell(i).pipe(tf(e=>mp(`Could not load cached environment shell.`).pipe(_p({environmentId:i,...FG(e)}),Qd(br())))),o=yield*yj({snapshot:a,status:e5(a),error:br()}),s=yield*gO(!1),c=yield*Tx(1),l=fp(`EnvironmentShellState.persist`)(function*(e){yield*t.saveShell(i,e).pipe(tf(e=>mp(`Could not persist environment shell cache.`).pipe(_p({environmentId:i,...FG(e)}))))});yield*jC(c).pipe(ZC(`500 millis`),sw(l),Zf);let u=vO(s,!1).pipe(qd(wj(o,e=>({...e,status:e5(e.snapshot)})))),d=wj(o,e=>({...e,status:`synchronizing`,error:br()})),f=wj(o,e=>e.status===`live`?e:{...e,status:`synchronizing`,error:br()}),p=e=>vO(s,!1).pipe(qd(mp(`Could not synchronize the environment shell.`)),_p({environmentId:i,...FG(e)}),qd(wj(o,e=>({...e,status:e5(e.snapshot),error:xr(hve)})))),m=fp(`EnvironmentShellState.applyItem`)(function*(e){if(e.kind===`synchronized`){yield*vO(s,!1),yield*wj(o,e=>wr(e.snapshot)?{...e,status:`live`,error:br()}:e);return}let t=yield*xj(o),n=e.kind===`snapshot`?e.snapshot:Tr(t.snapshot,{onNone:()=>null,onSome:t=>e.sequence>t.snapshotSequence?lve(t,e):t});if(n===null)return;let r=yield*_O(s);yield*Cj(o,{snapshot:xr(n),status:r?`synchronizing`:`live`,error:br()}),yield*Dx(c,n)}),h=Tr(r,{onNone:()=>PC,onSome:e=>e.changes.pipe(WC(e=>e===`application-active`))});return yield*d,yield*Zf(lK(Vk.subscribeShell,fp(`EnvironmentShellState.makeSubscribeInput`)(function*(t){let r=yield*t.initialConfig.pipe(Zd(e=>e.shellResumeCompletionMarker===!0),df(()=>!1));yield*vO(s,r),yield*d;let i=yield*xj(e.prepared).pipe(Gd(Tr({onSome:M,onNone:()=>bj(e.prepared).pipe(WC(wr),IC(e=>e.value),ow,Zd(Mr))}))),a=yield*n.load(i);return wr(a)?(yield*m({kind:`snapshot`,snapshot:a.value}),{afterSequence:a.value.snapshotSequence,...r?{requestCompletionMarker:!0}:{}}):r?{requestCompletionMarker:!0}:{}}),{onExpectedFailure:e=>p(Mu(e)),retryExpectedFailureAfter:`250 millis`,resubscribe:h}).pipe(sw(m))),yield*bj(e.state).pipe(sw(e=>{switch(TW(e)){case`synchronizing`:return d;case`disconnected`:return u;case`ready`:return f}}),Zf),o});function _ve(e){return DK(e,FC(gve().pipe(Zd(bj))))}var vve=Object.freeze({hasSnapshot:!1,hasSynchronizingShell:!1,hasCachedShell:!1,hasLiveShell:!1,firstError:null,latestSnapshotUpdatedAt:null}),yve=new Map;function bve(e,t){return e.hasSnapshot===t.hasSnapshot&&e.hasSynchronizingShell===t.hasSynchronizingShell&&e.hasCachedShell===t.hasCachedShell&&e.hasLiveShell===t.hasLiveShell&&e.firstError===t.firstError&&e.latestSnapshotUpdatedAt===t.latestSnapshotUpdatedAt}function xve(e,t){if(e.size!==t.size)return!1;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function Sve(e){let t=vve;return BV(n=>{let r=!1,i=!1,a=!1,o=!1,s=null,c=null;for(let t of n(e.catalogValueAtom).entries.keys()){let l=n(e.shellStateValueAtom(t));if(i||=l.status===`synchronizing`,a||=l.status===`cached`,o||=l.status===`live`,s===null&&(s=kr(l.error)),Cr(l.snapshot))continue;r=!0;let u=l.snapshot.value.updatedAt;(c===null||u>c)&&(c=u)}let l={hasSnapshot:r,hasSynchronizingShell:i,hasCachedShell:a,hasLiveShell:o,firstError:s,latestSnapshotUpdatedAt:c};return bve(t,l)||(t=l),t}).pipe(oH(`environment-shell-summary`))}function Cve(e){let t=yve;return BV(n=>{let r=new Map;for(let t of n(e.catalogValueAtom).entries.keys()){let i=n(e.serverConfigValueAtom(t));i!==null&&r.set(t,i)}return xve(t,r)||(t=r),t}).pipe(oH(`environment-server-configs`))}function wve(e){let t=iH(t=>e.atom(_ve(t),{initialValue:$8}));return{stateAtom:t,stateValueAtom:iH(e=>BV(n=>Er(tV(n(t(e))),()=>$8)).pipe(oH(`environment-shell-state-value:${e}`)))}}var Tve=[{key:`mod+b`,command:`sidebar.toggle`},{key:`mod+j`,command:`terminal.toggle`},{key:`mod+alt+b`,command:`rightPanel.toggle`},{key:`mod+d`,command:`terminal.split`,when:`terminalFocus`},{key:`mod+shift+d`,command:`terminal.splitVertical`,when:`terminalFocus`},{key:`mod+n`,command:`terminal.new`,when:`terminalFocus`},{key:`mod+w`,command:`terminal.close`,when:`terminalFocus`},{key:`mod+d`,command:`diff.toggle`,when:`!terminalFocus`},{key:`mod+shift+j`,command:`preview.toggle`},{key:`mod+r`,command:`preview.refresh`,when:`previewFocus`},{key:`mod+l`,command:`preview.focusUrl`,when:`previewFocus`},{key:`mod+=`,command:`preview.zoomIn`,when:`previewFocus`},{key:`mod++`,command:`preview.zoomIn`,when:`previewFocus`},{key:`mod+-`,command:`preview.zoomOut`,when:`previewFocus`},{key:`mod+0`,command:`preview.resetZoom`,when:`previewFocus`},{key:`mod+k`,command:`commandPalette.toggle`,when:`!terminalFocus`},{key:`mod+s`,command:`composer.stash`,when:`!terminalFocus`},{key:`mod+n`,command:`chat.new`,when:`!terminalFocus`},{key:`mod+shift+o`,command:`chat.new`,when:`!terminalFocus`},{key:`mod+shift+n`,command:`chat.newLocal`,when:`!terminalFocus`},{key:`mod+shift+m`,command:`modelPicker.toggle`,when:`!terminalFocus`},{key:`mod+o`,command:`editor.openFavorite`},{key:`mod+shift+[`,command:`thread.previous`},{key:`mod+shift+]`,command:`thread.next`},...VM.map((e,t)=>({key:`mod+${t+1}`,command:e})),...HM.map((e,t)=>({key:`mod+${t+1}`,command:e,when:`modelPickerOpen`}))];function Eve(e){return e===`space`?` `:e===`esc`?`escape`:e}function Dve(e){let t=[...e.toLowerCase().split(`+`).map(e=>e.trim())],n=0;for(;t[t.length-1]===``;)n+=1,t.pop();if(n>0&&t.push(`+`),t.some(e=>e.length===0)||t.length===0)return null;let r=null,i=!1,a=!1,o=!1,s=!1,c=!1;for(let e of t)switch(e){case`cmd`:case`meta`:i=!0;break;case`ctrl`:case`control`:a=!0;break;case`shift`:o=!0;break;case`alt`:case`option`:s=!0;break;case`mod`:c=!0;break;default:if(r!==null)return null;r=Eve(e)}return r===null?null:{key:r,metaKey:i,ctrlKey:a,shiftKey:o,altKey:s,modKey:c}}function Ove(e){let t=[],n=0;for(;n<e.length;){let r=e[n];if(!r)break;if(/\s/.test(r)){n+=1;continue}if(e.startsWith(`&&`,n)){t.push({type:`and`}),n+=2;continue}if(e.startsWith(`||`,n)){t.push({type:`or`}),n+=2;continue}if(r===`!`){t.push({type:`not`}),n+=1;continue}if(r===`(`){t.push({type:`lparen`}),n+=1;continue}if(r===`)`){t.push({type:`rparen`}),n+=1;continue}let i=/^[A-Za-z_][A-Za-z0-9_.-]*/.exec(e.slice(n));if(!i)return null;t.push({type:`identifier`,value:i[0]}),n+=i[0].length}return t}function t5(e){let t=Ove(e);if(!t||t.length===0)return null;let n=0,r=e=>{if(e>64)return null;let r=t[n];if(!r)return null;if(r.type===`identifier`)return n+=1,{type:`identifier`,name:r.value};if(r.type===`lparen`){n+=1;let r=o(e+1),i=t[n];return!r||!i||i.type!==`rparen`?null:(n+=1,r)}return null},i=e=>{let i=0;for(;t[n]?.type===`not`;)if(n+=1,i+=1,i>64)return null;let a=r(e);if(!a)return null;for(;i>0;)a={type:`not`,node:a},--i;return a},a=e=>{let r=i(e);if(!r)return null;for(;t[n]?.type===`and`;){n+=1;let t=i(e);if(!t)return null;r={type:`and`,left:r,right:t}}return r},o=e=>{let r=a(e);if(!r)return null;for(;t[n]?.type===`or`;){n+=1;let t=a(e);if(!t)return null;r={type:`or`,left:r,right:t}}return r},s=o(0);return!s||n!==t.length?null:s}function kve(e){let t=Dve(e.key);if(!t)return null;if(e.when!==void 0){let n=t5(e.when);return n?{command:e.command,shortcut:t,whenAst:n}:null}return{command:e.command,shortcut:t}}function Ave(e){let t=[];for(let n of e){let e=kve(n);e&&t.push(e)}return t.slice(-256)}var n5=Ave(Tve),r5=Object.freeze({isReady:!1,entries:new Map});function jve(e){let t=fK(),n={mode:`serial`,key:()=>`environment-catalog`},r=e.atom(FC(tK.pipe(Zd(e=>bj(e.entries).pipe(IC(e=>({isReady:!0,entries:e})))))),{initialValue:r5}),i=BV(e=>Er(tV(e(r)),()=>r5)).pipe(oH(`environment-catalog-value`)),a=e.atom(FC(tK.pipe(Zd(e=>bj(e.networkStatus)))),{initialValue:`unknown`});return{catalogAtom:r,catalogValueAtom:i,networkStatusAtom:a,networkStatusValueAtom:BV(e=>Er(tV(e(a)),()=>`unknown`)).pipe(oH(`environment-network-status-value`)),stateAtom:iH(t=>e.atom(DK(t,FC(XG.pipe(Zd(e=>bj(e.state))))),{initialValue:EW})),register:bK(e,{label:`environment-catalog:register`,scheduler:t,concurrency:n,execute:e=>tK.pipe(Gd(t=>t.register(e)))}),remove:bK(e,{label:`environment-catalog:remove`,scheduler:t,concurrency:n,execute:e=>tK.pipe(Gd(t=>t.remove(e)))}),retryNow:bK(e,{label:`environment-catalog:retry-now`,scheduler:t,concurrency:n,execute:e=>tK.pipe(Gd(t=>t.retryNow(e)))})}}var i5=`token`,Mve=`host`,Nve=`label`,Pve=new Set([`http:`,`https:`,`ws:`,`wss:`]),a5=e=>new URLSearchParams(e.hash.startsWith(`#`)?e.hash.slice(1):e.hash),o5=class extends G()(`RemoteBackendUrlMissingError`,{}){get message(){return`Enter a backend URL.`}},s5=class extends G()(`RemotePairingUrlInvalidError`,{cause:F(Dy()),protocol:F(L)}){get message(){return`Pairing URL is invalid.`}},c5=class extends G()(`RemoteBackendUrlInvalidError`,{source:H([`direct-host`,`hosted-pairing-host`]),cause:F(Dy()),protocol:F(L)}){get message(){return`Backend URL is invalid.`}},l5=class extends G()(`RemotePairingTokenMissingError`,{host:L}){get message(){return`Pairing URL is missing its token.`}},u5=class extends G()(`RemotePairingCodeMissingError`,{host:L}){get message(){return`Enter a pairing code.`}};V([o5,s5,c5,l5,u5]);var d5=e=>Pve.has(e.protocol),f5=(e,t)=>{let n=e.trim();if(!n)throw new o5;let r=n.replace(/^\/+/,``),i=/^[a-zA-Z][a-zA-Z\d+-]*:\/\//.test(r)?r:`https://${r}`,a;try{a=new URL(i)}catch(e){throw new c5({source:t,cause:e})}if(!d5(a))throw new c5({source:t,protocol:a.protocol});return a.pathname=`/`,a.search=``,a.hash=``,a},p5=e=>{let t=new URL(e.toString());return t.protocol===`ws:`?t.protocol=`http:`:t.protocol===`wss:`&&(t.protocol=`https:`),t.pathname=`/`,t.search=``,t.hash=``,t.toString()},m5=e=>{let t=new URL(e.toString());return t.protocol===`http:`?t.protocol=`ws:`:t.protocol===`https:`&&(t.protocol=`wss:`),t.pathname=`/`,t.search=``,t.hash=``,t.toString()},h5=e=>{let t=a5(e).get(i5)?.trim()??``;if(t.length>0)return t;let n=e.searchParams.get(i5)?.trim()??``;return n.length>0?n:null},Fve=e=>{let t=new URL(e.toString()),n=a5(t);return n.has(i5)&&(n.delete(i5),t.hash=n.toString()),t.searchParams.delete(i5),t},g5=(e,t)=>{let n=new URL(e.toString());return n.searchParams.delete(i5),n.hash=new URLSearchParams([[i5,t]]).toString(),n},Ive=e=>{let t=e.searchParams.get(Mve)?.trim()??``,n=h5(e)?.trim()??``,r=e.searchParams.get(Nve)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}},Lve=e=>{let t=e.pairingUrl?.trim()??``;if(t.length>0){let e;try{e=new URL(t)}catch(e){throw new s5({cause:e})}if(!d5(e))throw new s5({protocol:e.protocol});let n=Ive(e);if(n){let e=f5(n.host,`hosted-pairing-host`);return{credential:n.token,httpBaseUrl:p5(e),wsBaseUrl:m5(e)}}let r=h5(e)??``;if(!r)throw new l5({host:e.host});return{credential:r,httpBaseUrl:p5(e),wsBaseUrl:m5(e)}}let n=e.host?.trim()??``,r=e.pairingCode?.trim()??``;if(!n)throw new o5;let i=f5(n,`direct-host`);if(!r)throw new u5({host:i.host});return{credential:r,httpBaseUrl:p5(i),wsBaseUrl:m5(i)}},_5=class extends Ir()(`@p4code/client-runtime/connection/onboarding/ConnectionOnboarding`){},Rve=fp(`clientRuntime.connection.onboarding.resolvePairingTarget`)(function*(e){return yield*Ud({try:()=>Lve(e),catch:e=>new wW({reason:`configuration`,detail:e instanceof Error?e.message:`The pairing details are invalid.`})})}),zve=fp(`clientRuntime.connection.onboarding.preparePairingRegistration`)(function*(e){let t=yield*Rve(e),n=yield*pW,r=yield*jB({httpBaseUrl:t.httpBaseUrl}).pipe(of(oG)),i=yield*eG({httpBaseUrl:t.httpBaseUrl,credential:t.credential,scopes:n.scopes,clientMetadata:n.metadata}).pipe(of(oG)),a=`bearer:${r.environmentId}`;return new PW({target:new vW({environmentId:r.environmentId,label:r.label,connectionId:a}),profile:new OW({connectionId:a,environmentId:r.environmentId,label:r.label,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl}),credential:new jW({token:i.access_token})})}),Bve=fp(`clientRuntime.connection.onboarding.registerPairingConnection`)(function*(e){let t=yield*zve(e);return yield*(yield*tK).register(t),t.target.environmentId}),Vve=bv(jW),Hve=bv(OW),Uve=fp(`clientRuntime.connection.onboarding.updateBearerConnection`)(function*(e){let t=yield*tK,n=yield*LW,r=(yield*xj(t.entries)).get(e.environmentId),i=r?.target._tag===`BearerConnectionTarget`?yield*n.get(r.target.connectionId):br(),a=yield*Wve({input:e,entry:Or(r),credential:i});yield*t.register(a)}),Wve=fp(`clientRuntime.connection.onboarding.prepareBearerConnectionUpdate`)(function*(e){let t=kr(e.entry);if(t==null||t.target._tag!==`BearerConnectionTarget`||Cr(t.profile)||!Hve(t.profile.value))return yield*new wW({reason:`configuration`,detail:`Only saved bearer environments can be edited.`});let n=e.credential;if(Cr(n)||!Vve(n.value))return yield*new wW({reason:`authentication`,detail:`The saved bearer credential is unavailable.`});let r=e.input.label.trim();if(r===``)return yield*new wW({reason:`configuration`,detail:`Environment label cannot be empty.`});let i=yield*Ud({try:()=>Op(e.input.httpBaseUrl),catch:e=>new wW({reason:`configuration`,detail:e instanceof Error?e.message:`The environment URL is invalid.`})}),a=t.target.connectionId;return new PW({target:new vW({environmentId:e.input.environmentId,label:r,connectionId:a}),profile:new OW({connectionId:a,environmentId:e.input.environmentId,label:r,httpBaseUrl:i,wsBaseUrl:kp(i)}),credential:n.value})}),Gve=fp(`clientRuntime.connection.onboarding.prepareSshRegistration`)(function*(e){let t=yield*(yield*hW).provision(e.target),n=`ssh:${t.environmentId}`,r=e.label?.trim()||t.label||t.bootstrap.target.alias;return new FW({target:new yW({environmentId:t.environmentId,label:r,connectionId:n}),profile:new kW({connectionId:n,environmentId:t.environmentId,label:r,target:t.bootstrap.target})})}),Kve=fp(`clientRuntime.connection.onboarding.registerSshConnection`)(function*(e){let t=yield*Gve(e);return yield*(yield*tK).register(t),t.target.environmentId}),qve=fu(_5,zd(function*(){let e=yield*tK,t=yield*pW,n=yield*CO,r=yield*hW,i=yield*LW;return _5.of({registerPairing:r=>Bve(r).pipe(wf(tK,e),wf(pW,t),wf(CO,n)),registerSsh:t=>Kve(t).pipe(wf(tK,e),wf(hW,r)),updateBearer:t=>Uve(t).pipe(wf(tK,e),wf(LW,i))})})),v5=class extends Ir()(`@p4code/client-runtime/platform/source/PlatformConnectionSource`){},Jve=vG.pipe(bu(lG)),Yve=TG.pipe(bu(_u(Jve,CG))),y5=nK.pipe(bu(Yve)),Xve=_u(y5,qve.pipe(bu(y5))),Zve=hu(zd(function*(){let e=yield*tK,t=yield*v5;yield*e.start,yield*t.registrations.pipe(sw(e.reconcilePlatform),Zf)}).pipe(qf(`clientRuntime.connection.application.start`))).pipe(xu(Xve));function Qve(e){switch(e.phase){case`available`:return{phase:`available`,error:null,traceId:null};case`offline`:return{phase:`offline`,error:null,traceId:null};case`connecting`:return{phase:e.attempt<=1&&e.lastFailure===null?`connecting`:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`connected`:return{phase:`connected`,error:null,traceId:null};case`backoff`:return{phase:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`blocked`:return{phase:`error`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null}}}function b5(e){switch(e.phase){case`available`:return`Available`;case`offline`:return`Offline`;case`connecting`:return`Connecting...`;case`reconnecting`:return e.error?`Failed to connect. Reconnecting... Reason: ${e.error}`:`Reconnecting...`;case`connected`:return`Connected`;case`error`:return e.error?`Connection failed. Reason: ${e.error}`:`Connection failed`}}function $ve(e){return e.phase===`reconnecting`&&e.error?`Failed to connect. Reconnecting...`:b5({...e,error:null})}function eye(e){return Qve(e)}function tye(e){switch(e.target._tag){case`PrimaryConnectionTarget`:return e.target.httpBaseUrl;case`BearerConnectionTarget`:return wr(e.profile)&&e.profile.value._tag===`BearerConnectionProfile`?e.profile.value.httpBaseUrl:null;case`SshConnectionTarget`:return wr(e.profile)&&e.profile.value._tag===`SshConnectionProfile`?`${e.profile.value.target.username}@${e.profile.value.target.hostname}`:null}}var nye=6e3,rye=fp(`clientRuntime.state.fetchEnvironmentThreadSnapshot`)(function*(e){let t=Ap(e.prepared.httpBaseUrl,`/api/orchestration/threads/${e.threadId}`),n=yield*DB(e.prepared.httpBaseUrl),r=Z8(e.prepared.httpAuthorization);return yield*kB(t,e.timeoutMs??nye,X8(e.prepared.httpAuthorization,n.orchestration.threadSnapshot({params:{threadId:e.threadId},headers:r})))}),x5=class extends Ir()(`@p4code/client-runtime/state/threadSnapshotHttp/ThreadSnapshotLoader`){},iye=fu(x5,zd(function*(){let e=yield*CO;return x5.of({load:(t,n)=>rye({prepared:t,threadId:n}).pipe(Zd(xr),wf(CO,e),rf({EnvironmentResourceNotFoundError:()=>gp(`Thread snapshot not found over HTTP; deferring to the socket subscription.`).pipe(_p({threadId:n}),Qd(br()))}),af(e=>mp(`Could not load the thread snapshot over HTTP; using the socket snapshot instead.`).pipe(_p({threadId:n,cause:Fu(e)}),Qd(br()))))})})),aye=class extends G()(`InvalidScopedProjectKeyError`,{key:L}){get message(){return`Invalid scoped project atom key: ${JSON.stringify(this.key)}.`}},oye=class extends G()(`InvalidScopedThreadKeyError`,{key:L}){get message(){return`Invalid scoped thread atom key: ${JSON.stringify(this.key)}.`}},sye=class extends G()(`InvalidScopedProjectRefCollectionKeyError`,{key:L,cause:Dy()}){get message(){return`Invalid scoped project reference collection atom key: ${JSON.stringify(this.key)}.`}},cye=Tv(B(Hv([L,L])));function lye(e){return`${e.environmentId}\u0000${e.projectId}`}function S5(e){return`${e.environmentId}\u0000${e.threadId}`}function uye(e){return JSON.stringify(e.map(e=>[e.environmentId,e.projectId]))}function dye(e){let t=e.indexOf(`\0`);if(t<0)throw new aye({key:e});return{environmentId:cb.make(e.slice(0,t)),projectId:ob.make(e.slice(t+1))}}function fye(e){let t;try{t=cye(JSON.parse(e))}catch(t){throw new sye({key:e,cause:t})}return t.map(([e,t])=>({environmentId:cb.make(e),projectId:ob.make(t)}))}function C5(e){let t=e.indexOf(`\0`);if(t<0)throw new oye({key:e});return{environmentId:cb.make(e.slice(0,t)),threadId:Y.make(e.slice(t+1))}}function pye(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.projectId===t[n]?.projectId)}function w5(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.threadId===t[n]?.threadId)}function T5(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}var mye=ur(fr(or,e=>e.createdAt),fr(or,e=>e.id)),E5=fr(sr,e=>e.checkpointTurnCount??2**53-1),hye=dr([fr(sr,e=>e.sequence??2**53-1),fr(or,e=>e.createdAt),fr(or,e=>e.id)]);function gye(e,t){switch(t.type){case`project.created`:case`project.meta-updated`:case`project.deleted`:return{kind:`unchanged`};case`thread.created`:return{kind:`updated`,thread:{id:t.payload.threadId,projectId:t.payload.projectId,title:t.payload.title,modelSelection:t.payload.modelSelection,runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,compressMode:t.payload.compressMode,unpromptedSubagents:t.payload.unpromptedSubagents,branch:t.payload.branch,worktreePath:t.payload.worktreePath,latestTurn:null,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,archivedAt:null,settledOverride:null,settledAt:null,snoozedUntil:null,snoozedAt:null,deletedAt:null,messages:[],proposedPlans:[],activities:[],checkpoints:[],session:null}};case`thread.deleted`:return{kind:`deleted`};case`thread.archived`:return{kind:`updated`,thread:{...e,archivedAt:t.payload.archivedAt,updatedAt:t.payload.updatedAt}};case`thread.unarchived`:return{kind:`updated`,thread:{...e,archivedAt:null,updatedAt:t.payload.updatedAt}};case`thread.settled`:return{kind:`updated`,thread:{...e,settledOverride:`settled`,settledAt:t.payload.settledAt,updatedAt:t.payload.updatedAt}};case`thread.unsettled`:return{kind:`updated`,thread:{...e,settledOverride:t.payload.reason===`user`?`active`:null,settledAt:null,updatedAt:t.payload.updatedAt}};case`thread.snoozed`:return{kind:`updated`,thread:{...e,snoozedUntil:t.payload.snoozedUntil,snoozedAt:t.payload.snoozedAt,updatedAt:t.payload.updatedAt}};case`thread.unsnoozed`:return{kind:`updated`,thread:{...e,snoozedUntil:null,snoozedAt:null,updatedAt:t.payload.updatedAt}};case`thread.meta-updated`:return{kind:`updated`,thread:{...e,...t.payload.title===void 0?{}:{title:t.payload.title},...t.payload.modelSelection===void 0?{}:{modelSelection:t.payload.modelSelection},...t.payload.branch===void 0?{}:{branch:t.payload.branch},...t.payload.worktreePath===void 0?{}:{worktreePath:t.payload.worktreePath},updatedAt:t.payload.updatedAt}};case`thread.runtime-mode-set`:return{kind:`updated`,thread:{...e,runtimeMode:t.payload.runtimeMode,updatedAt:t.payload.updatedAt}};case`thread.interaction-mode-set`:return{kind:`updated`,thread:{...e,interactionMode:t.payload.interactionMode,updatedAt:t.payload.updatedAt}};case`thread.compress-mode-set`:return{kind:`updated`,thread:{...e,compressMode:t.payload.compressMode,updatedAt:t.payload.updatedAt}};case`thread.unprompted-subagents-set`:return{kind:`updated`,thread:{...e,unpromptedSubagents:t.payload.unpromptedSubagents,updatedAt:t.payload.updatedAt}};case`thread.turn-start-requested`:return{kind:`updated`,thread:{...e,...t.payload.modelSelection===void 0?{}:{modelSelection:t.payload.modelSelection},runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,compressMode:t.payload.compressMode,unpromptedSubagents:t.payload.unpromptedSubagents,updatedAt:t.occurredAt}};case`thread.turn-interrupt-requested`:{if(t.payload.turnId===void 0)return{kind:`unchanged`};let n=e.latestTurn;return n===null||n.turnId!==t.payload.turnId?{kind:`unchanged`}:{kind:`updated`,thread:{...e,latestTurn:{...n,state:`interrupted`,startedAt:n.startedAt??t.payload.createdAt,completedAt:n.completedAt??t.payload.createdAt},updatedAt:t.occurredAt}}}case`thread.message-sent`:{let n={id:t.payload.messageId,role:t.payload.role,text:t.payload.text,...t.payload.attachments===void 0?{}:{attachments:t.payload.attachments},turnId:t.payload.turnId,streaming:t.payload.streaming,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt},r=e.messages.find(e=>e.id===n.id)?na(e.messages,e=>e.id===n.id?{...e,text:n.streaming?`${e.text}${n.text}`:n.text.length>0?n.text:e.text,streaming:n.streaming,...n.turnId===void 0?{}:{turnId:n.turnId},...n.streaming?{}:{updatedAt:n.updatedAt},...n.attachments===void 0?{}:{attachments:n.attachments}}:e):Ji(e.messages,n),i=t.payload.turnId!==null&&e.session?.status===`running`&&e.session.activeTurnId===t.payload.turnId,a=!t.payload.streaming&&!i,o=t.payload.role===`assistant`&&t.payload.turnId!==null&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?{turnId:t.payload.turnId,state:a?e.latestTurn?.state===`interrupted`?`interrupted`:e.latestTurn?.state===`error`?`error`:`completed`:`running`,requestedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.requestedAt:t.payload.createdAt,startedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.startedAt??t.payload.createdAt:t.payload.createdAt,completedAt:a?t.payload.updatedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.completedAt??null:null,assistantMessageId:t.payload.messageId}:e.latestTurn,s=t.payload.role===`assistant`&&t.payload.turnId!==null?vye(e.checkpoints,t.payload.turnId,t.payload.messageId):e.checkpoints;return{kind:`updated`,thread:{...e,messages:r,checkpoints:s,latestTurn:o,updatedAt:t.occurredAt}}}case`thread.session-set`:{let n=_ye(t.payload.session.status),r=t.payload.session.status===`running`&&t.payload.session.activeTurnId!==null?{turnId:t.payload.session.activeTurnId,state:`running`,requestedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.requestedAt:t.payload.session.updatedAt,startedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.startedAt??t.payload.session.updatedAt:t.payload.session.updatedAt,completedAt:null,assistantMessageId:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.assistantMessageId:null}:e.latestTurn!==null&&e.latestTurn.state===`running`&&n!==null?{...e.latestTurn,state:n,completedAt:t.payload.session.updatedAt}:e.latestTurn;return{kind:`updated`,thread:{...e,session:t.payload.session,latestTurn:r,updatedAt:t.occurredAt}}}case`thread.session-stop-requested`:return e.session===null?{kind:`unchanged`}:{kind:`updated`,thread:{...e,session:{...e.session,status:`stopped`,activeTurnId:null,updatedAt:t.payload.createdAt},updatedAt:t.occurredAt}};case`thread.proposed-plan-upserted`:{let n=t.payload.proposedPlan,r=Te(e.proposedPlans,ia(e=>e.id!==n.id),Ji(n),$i(mye));return{kind:`updated`,thread:{...e,proposedPlans:r,updatedAt:t.occurredAt}}}case`thread.turn-diff-completed`:{let n={turnId:t.payload.turnId,checkpointTurnCount:t.payload.checkpointTurnCount,checkpointRef:t.payload.checkpointRef,status:t.payload.status,files:t.payload.files,assistantMessageId:t.payload.assistantMessageId,completedAt:t.payload.completedAt},r=e.checkpoints.find(e=>e.turnId===n.turnId);if(r&&r.status!==`missing`&&n.status===`missing`)return{kind:`unchanged`};let i=Te(e.checkpoints,ia(e=>e.turnId!==n.turnId),Ji(n),$i(E5)),a=!(e.session?.status===`running`&&e.session.activeTurnId===t.payload.turnId)&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?{turnId:t.payload.turnId,state:D5(t.payload.status),requestedAt:e.latestTurn?.requestedAt??t.payload.completedAt,startedAt:e.latestTurn?.startedAt??t.payload.completedAt,completedAt:t.payload.completedAt,assistantMessageId:t.payload.assistantMessageId}:e.latestTurn;return{kind:`updated`,thread:{...e,checkpoints:i,latestTurn:a,updatedAt:t.occurredAt}}}case`thread.reverted`:{let n=Te(e.checkpoints,ia(e=>e.checkpointTurnCount!==void 0&&e.checkpointTurnCount<=t.payload.turnCount),$i(E5)),r=new Set(na(n,e=>e.turnId)),i=yye(e.messages,r),a=Te(e.proposedPlans,ia(e=>e.turnId===null||r.has(e.turnId))),o=Te(e.activities,ia(e=>e.turnId===null||r.has(e.turnId))),s=n.at(-1)??null;return{kind:`updated`,thread:{...e,checkpoints:n,messages:i,proposedPlans:a,activities:o,latestTurn:s===null?null:{turnId:s.turnId,state:D5(s.status),requestedAt:s.completedAt,startedAt:s.completedAt,completedAt:s.completedAt,assistantMessageId:s.assistantMessageId??null},updatedAt:t.occurredAt}}}case`thread.activity-appended`:{let n=Te(e.activities,ia(e=>e.id!==t.payload.activity.id),Ji(t.payload.activity),$i(hye));return{kind:`updated`,thread:{...e,activities:n,updatedAt:t.occurredAt}}}case`thread.approval-response-requested`:case`thread.user-input-response-requested`:case`thread.checkpoint-revert-requested`:return{kind:`unchanged`}}return{kind:`unchanged`}}function _ye(e){switch(e){case`idle`:case`ready`:return`completed`;case`error`:return`error`;case`interrupted`:case`stopped`:return`interrupted`;case`starting`:case`running`:return null}}function D5(e){switch(e){case`ready`:return`completed`;case`error`:return`error`;case`missing`:return`completed`}}function vye(e,t,n){return na(e,e=>e.turnId===t?{...e,assistantMessageId:n}:e)}function yye(e,t){return ia(e,e=>e.role===`system`||e.turnId===null?!0:t.has(e.turnId))}var O5=5*6e4,k5={data:br(),status:`empty`,error:br()},A5=``,bye=or;function xye(e){return Te(e,$i(bye),e=>e.join(A5))}function Sye(e){return e.length===0?[]:Te(e.split(A5),na(e=>cb.make(e)))}function Cye(e){return iH(t=>BV(n=>{let r=[],i=null,a=!1;for(let o of Sye(t)){let t=n(e.getSnapshotAtom(o));a||=t.waiting;let s=kr(tV(t));s!==null&&r.push({environmentId:o,snapshot:s}),i===null&&t._tag===`Failure`&&(i=`Failed to load archived threads.`)}return{snapshots:r,error:i,isLoading:a}}).pipe(oH(`${e.labelPrefix}:${t}`)))}function j5(e){return zd(function*(){return e.commandId===void 0?yield*(yield*sj).randomUUIDv4.pipe(sf,Zd(ub.make)):e.commandId})}function M5(e){return Dd({commandId:j5(e),createdAt:e.createdAt===void 0?em.pipe(Zd(om)):M(e.createdAt)})}function N5(e){return sK(Vk.dispatchCommand,e)}var wye=fp(`EnvironmentCommands.createProject`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`project.create`,commandId:t.commandId,createdAt:t.createdAt})}),Tye=fp(`EnvironmentCommands.updateProject`)(function*(e){return yield*N5({...e,type:`project.meta.update`,commandId:yield*j5(e)})}),Eye=fp(`EnvironmentCommands.deleteProject`)(function*(e){return yield*N5({...e,type:`project.delete`,commandId:yield*j5(e)})}),Dye=fp(`EnvironmentCommands.createThread`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.create`,commandId:t.commandId,createdAt:t.createdAt})}),Oye=fp(`EnvironmentCommands.deleteThread`)(function*(e){return yield*N5({...e,type:`thread.delete`,commandId:yield*j5(e)})}),kye=fp(`EnvironmentCommands.archiveThread`)(function*(e){return yield*N5({...e,type:`thread.archive`,commandId:yield*j5(e)})}),Aye=fp(`EnvironmentCommands.unarchiveThread`)(function*(e){return yield*N5({...e,type:`thread.unarchive`,commandId:yield*j5(e)})}),jye=fp(`EnvironmentCommands.settleThread`)(function*(e){return yield*N5({...e,type:`thread.settle`,commandId:yield*j5(e)})}),Mye=fp(`EnvironmentCommands.unsettleThread`)(function*(e){return yield*N5({...e,type:`thread.unsettle`,commandId:yield*j5(e)})}),Nye=fp(`EnvironmentCommands.snoozeThread`)(function*(e){return yield*N5({...e,type:`thread.snooze`,commandId:yield*j5(e)})}),Pye=fp(`EnvironmentCommands.unsnoozeThread`)(function*(e){return yield*N5({...e,type:`thread.unsnooze`,commandId:yield*j5(e)})}),Fye=fp(`EnvironmentCommands.updateThreadMetadata`)(function*(e){return yield*N5({...e,type:`thread.meta.update`,commandId:yield*j5(e)})}),Iye=fp(`EnvironmentCommands.setThreadRuntimeMode`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.runtime-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),Lye=fp(`EnvironmentCommands.setThreadInteractionMode`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.interaction-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),Rye=fp(`EnvironmentCommands.setThreadCompressMode`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.compress-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),zye=fp(`EnvironmentCommands.setThreadUnpromptedSubagents`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.unprompted-subagents.set`,commandId:t.commandId,createdAt:t.createdAt})}),Bye=fp(`EnvironmentCommands.startThreadTurn`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.turn.start`,commandId:t.commandId,createdAt:t.createdAt})}),Vye=fp(`EnvironmentCommands.interruptThreadTurn`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.turn.interrupt`,commandId:t.commandId,createdAt:t.createdAt})}),Hye=fp(`EnvironmentCommands.respondToThreadApproval`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.approval.respond`,commandId:t.commandId,createdAt:t.createdAt})}),Uye=fp(`EnvironmentCommands.respondToThreadUserInput`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.user-input.respond`,commandId:t.commandId,createdAt:t.createdAt})}),Wye=fp(`EnvironmentCommands.revertThreadCheckpoint`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.checkpoint.revert`,commandId:t.commandId,createdAt:t.createdAt})}),Gye=fp(`EnvironmentCommands.stopThreadSession`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.session.stop`,commandId:t.commandId,createdAt:t.createdAt})});function Kye(e){let t=fK(),n={mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId])};return{create:AK(e,{label:`environment-data:commands:thread:create`,execute:e=>Dye(e),scheduler:t,concurrency:n}),delete:AK(e,{label:`environment-data:commands:thread:delete`,execute:e=>Oye(e),scheduler:t,concurrency:n}),archive:AK(e,{label:`environment-data:commands:thread:archive`,execute:e=>kye(e),scheduler:t,concurrency:n}),unarchive:AK(e,{label:`environment-data:commands:thread:unarchive`,execute:e=>Aye(e),scheduler:t,concurrency:n}),settle:AK(e,{label:`environment-data:commands:thread:settle`,execute:e=>jye(e),scheduler:t,concurrency:n}),unsettle:AK(e,{label:`environment-data:commands:thread:unsettle`,execute:e=>Mye(e),scheduler:t,concurrency:n}),snooze:AK(e,{label:`environment-data:commands:thread:snooze`,execute:e=>Nye(e),scheduler:t,concurrency:n}),unsnooze:AK(e,{label:`environment-data:commands:thread:unsnooze`,execute:e=>Pye(e),scheduler:t,concurrency:n}),updateMetadata:AK(e,{label:`environment-data:commands:thread:update-metadata`,execute:e=>Fye(e),scheduler:t,concurrency:n}),setRuntimeMode:AK(e,{label:`environment-data:commands:thread:set-runtime-mode`,execute:e=>Iye(e),scheduler:t,concurrency:n}),setInteractionMode:AK(e,{label:`environment-data:commands:thread:set-interaction-mode`,execute:e=>Lye(e),scheduler:t,concurrency:n}),setCompressMode:AK(e,{label:`environment-data:commands:thread:set-compress-mode`,execute:e=>Rye(e),scheduler:t,concurrency:n}),setUnpromptedSubagents:AK(e,{label:`environment-data:commands:thread:set-unprompted-subagents`,execute:e=>zye(e),scheduler:t,concurrency:n}),startTurn:AK(e,{label:`environment-data:commands:thread:start-turn`,execute:e=>Bye(e),scheduler:t,concurrency:n}),interruptTurn:AK(e,{label:`environment-data:commands:thread:interrupt-turn`,execute:e=>Vye(e),scheduler:t,concurrency:n}),respondToApproval:AK(e,{label:`environment-data:commands:thread:respond-to-approval`,execute:e=>Hye(e),scheduler:t,concurrency:n}),respondToUserInput:AK(e,{label:`environment-data:commands:thread:respond-to-user-input`,execute:e=>Uye(e),scheduler:t,concurrency:n}),revertCheckpoint:AK(e,{label:`environment-data:commands:thread:revert-checkpoint`,execute:e=>Wye(e),scheduler:t,concurrency:n}),stopSession:AK(e,{label:`environment-data:commands:thread:stop-session`,execute:e=>Gye(e),scheduler:t,concurrency:n})}}var qye=Object.freeze([]),Jye=Object.freeze([]),Yye=Object.freeze([]),Xye=Object.freeze([]);function Zye(e,t){return e===null||t===null||e.environmentId!==t.environmentId||e.id!==t.id?e:{...e,environmentId:t.environmentId,id:t.id,projectId:t.projectId,title:t.title,modelSelection:t.modelSelection,runtimeMode:t.runtimeMode,interactionMode:t.interactionMode,compressMode:t.compressMode,unpromptedSubagents:t.unpromptedSubagents,branch:t.branch,worktreePath:t.worktreePath,latestTurn:t.latestTurn,createdAt:t.createdAt,updatedAt:t.updatedAt,archivedAt:t.archivedAt,settledOverride:t.settledOverride,settledAt:t.settledAt,snoozedUntil:t.snoozedUntil,snoozedAt:t.snoozedAt,session:t.session}}function Qye(e){let t=iH(t=>{let n=C5(t);return BV(t=>Er(tV(t(e(n.environmentId,n.threadId))),()=>k5)).pipe(AV(O5),oH(`environment-thread-state-value:${t}`))}),n=iH(e=>{let n=C5(e),r=null,i=null;return BV(a=>{let o=kr(a(t(e)).data);return o===r?i:(r=o,i=o===null?null:fve(n.environmentId,o),i)}).pipe(AV(O5),oH(`environment-thread-detail:${e}`))}),r=iH(e=>BV(n=>n(t(e)).status).pipe(AV(O5),oH(`environment-thread-status:${e}`))),i=iH(e=>BV(n=>kr(n(t(e)).error)).pipe(AV(O5),oH(`environment-thread-error:${e}`))),a=iH(e=>BV(t=>t(n(e))?.messages??qye).pipe(AV(O5),oH(`environment-thread-messages:${e}`))),o=iH(e=>BV(t=>t(n(e))?.activities??Jye).pipe(AV(O5),oH(`environment-thread-activities:${e}`))),s=iH(e=>BV(t=>t(n(e))?.proposedPlans??Yye).pipe(AV(O5),oH(`environment-thread-proposed-plans:${e}`))),c=iH(e=>BV(t=>t(n(e))?.checkpoints??Xye).pipe(AV(O5),oH(`environment-thread-checkpoints:${e}`))),l=iH(e=>BV(t=>t(n(e))?.session??null).pipe(AV(O5),oH(`environment-thread-session:${e}`))),u=iH(e=>BV(t=>t(n(e))?.latestTurn??null).pipe(AV(O5),oH(`environment-thread-latest-turn:${e}`)));return{stateAtom:e=>t(S5(e)),detailAtom:e=>n(S5(e)),statusAtom:e=>r(S5(e)),errorAtom:e=>i(S5(e)),messagesAtom:e=>a(S5(e)),activitiesAtom:e=>o(S5(e)),proposedPlansAtom:e=>s(S5(e)),checkpointsAtom:e=>c(S5(e)),sessionAtom:e=>l(S5(e)),latestTurnAtom:e=>u(S5(e))}}var $ye=Object.freeze([]),ebe=Object.freeze([]),tbe=new Map,P5=new Map;function nbe(e){let t=iH(t=>BV(n=>n(e.snapshotAtom(t))?.threads??$ye).pipe(oH(`environment-threads:${t}`))),n=iH(e=>BV(n=>{let r=n(t(e));return r.length===0?tbe:new Map(r.map(e=>[e.id,e]))}).pipe(oH(`environment-thread-index:${e}`))),r=iH(e=>{let n=[];return BV(r=>{let i=r(t(e)).map(t=>({environmentId:e,threadId:t.id}));return w5(n,i)?n:(n=i,i)}).pipe(oH(`environment-thread-refs:${e}`))}),i=iH(e=>{let n=P5;return BV(r=>{let i=new Map;for(let n of r(t(e))){let t=i.get(n.projectId),r={environmentId:e,threadId:n.id};t===void 0?i.set(n.projectId,[r]):t.push(r)}if(i.size===0)return n=P5,n;let a=new Map;for(let[e,t]of i){let r=n.get(e);a.set(e,r!==void 0&&w5(r,t)?r:t)}return n=a,n}).pipe(oH(`environment-thread-refs-by-project:${e}`))}),a=iH(e=>{let t=C5(e),r=null,i=null;return BV(e=>{let a=e(n(t.environmentId)).get(t.threadId)??null;return a===r?i:(r=a,i=a===null?null:dve(t.environmentId,a),i)}).pipe(oH(`environment-thread-shell:${e}`))}),o=iH(e=>{let t=fye(e),n=[];return BV(e=>{let r=[],o=new Set;for(let n of t){let t=e(i(n.environmentId)).get(n.projectId)??ebe;for(let n of t){let t=S5(n);if(o.has(t))continue;o.add(t);let i=e(a(t));i!==null&&r.push(i)}}return T5(n,r)||(n=r),n}).pipe(oH(`environment-thread-shells-for-projects:${e}`))}),s=[],c=BV(t=>{let n=[];for(let i of t(e.catalogValueAtom).entries.keys())n.push(...t(r(i)));return w5(s,n)?s:(s=n,n)}).pipe(oH(`environment-thread-refs`)),l=[];return{environmentThreadsAtom:t,environmentThreadIndexAtom:n,environmentThreadRefsAtom:r,environmentThreadRefsByProjectAtom:i,threadRefsAtom:c,threadShellsAtom:BV(e=>{let t=e(c).flatMap(t=>{let n=e(a(S5(t)));return n===null?[]:[n]});return T5(l,t)||(l=t),l}).pipe(oH(`environment-thread-shell-list`)),threadShellsForProjectRefsAtom:e=>o(uye(e)),threadShellAtom:e=>a(S5(e))}}function F5(e){return wr(e)?`cached`:`empty`}function rbe(e){let t=Mu(e);return t instanceof Error&&t.message.trim().length>0?t.message:`Could not synchronize the thread.`}function I5(e){let t=e.session?.status;return t!==`starting`&&t!==`running`}var ibe=fp(`EnvironmentThreadState.make`)(function*(e){let t=yield*XG,n=yield*qW,r=yield*x5,i=yield*Sf(IG),a=t.target.environmentId,o=yield*n.loadThread(a,e).pipe(tf(t=>mp(`Could not load cached thread.`).pipe(_p({environmentId:a,threadId:e,error:t.message}),Qd(br())))),s=Nr(o,e=>e.thread),c=yield*yj({data:s,status:F5(s),error:br()}),l=yield*yj(Tr(o,{onNone:()=>0,onSome:e=>e.snapshotSequence})),u=yield*gO(!1),d=yield*Tx(1),f=fp(`EnvironmentThreadState.persist`)(function*(t){yield*n.saveThread(a,t).pipe(tf(t=>mp(`Could not persist the thread cache.`).pipe(_p({environmentId:a,threadId:e,error:t.message}))))});yield*jC(d).pipe(ZC(`500 millis`),sw(f),Zf);let p=wj(c,e=>e.status===`deleted`?e:{...e,status:`synchronizing`,error:br()}),m=wj(c,e=>e.status===`live`||e.status===`deleted`?e:{...e,status:`synchronizing`,error:br()}),h=zd(function*(){yield*vO(u,!1),yield*wj(c,e=>({...e,status:e.status===`deleted`?e.status:F5(e.data)}))}),g=e=>vO(u,!1).pipe(qd(wj(c,t=>({...t,status:t.status===`deleted`?t.status:F5(t.data),error:xr(rbe(e))})))),_=fp(`EnvironmentThreadState.setThread`)(function*(e){let t=yield*_O(u);if(yield*Cj(c,{data:xr(e),status:t?`synchronizing`:`live`,error:br()}),I5(e)){let t=yield*xj(l);yield*Dx(d,{snapshotSequence:t,thread:e})}}),v=fp(`EnvironmentThreadState.setDeleted`)(function*(){yield*vO(u,!1),yield*Cj(c,{data:br(),status:`deleted`,error:br()}),yield*n.removeThread(a,e).pipe(tf(t=>mp(`Could not remove the cached thread.`).pipe(_p({environmentId:a,threadId:e,error:t.message}))))}),y=fp(`EnvironmentThreadState.applyItem`)(function*(e){if(e.kind===`synchronized`){yield*vO(u,!1),yield*wj(c,e=>wr(e.data)&&e.status!==`deleted`?{...e,status:`live`,error:br()}:e);return}if(e.kind===`snapshot`){yield*Cj(l,e.snapshot.snapshotSequence),yield*_(e.snapshot.thread);return}let t=yield*xj(l);if(e.event.sequence<=t)return;yield*Cj(l,e.event.sequence);let n=yield*xj(c);if(Cr(n.data)){e.event.type===`thread.deleted`&&(yield*v());return}let r=gye(n.data.value,e.event);r.kind===`updated`?yield*_(r.thread):r.kind===`deleted`&&(yield*v())});yield*bj(t.state).pipe(sw(e=>{switch(TW(e)){case`synchronizing`:return p;case`disconnected`:return h;case`ready`:return m}}),Zf);let b=Tr(i,{onNone:()=>PC,onSome:e=>e.changes.pipe(WC(e=>e===`application-active`))});return yield*p,yield*Zf(lK(Vk.subscribeThread,fp(`EnvironmentThreadState.makeSubscribeInput`)(function*(n){let i=yield*n.initialConfig.pipe(Zd(e=>e.threadResumeCompletionMarker===!0),df(()=>!1));yield*vO(u,i),yield*p;let a=yield*xj(c);if(Cr(a.data)&&a.status!==`deleted`){let n=yield*xj(t.prepared).pipe(Gd(Tr({onSome:M,onNone:()=>bj(t.prepared).pipe(WC(wr),IC(e=>e.value),ow,Zd(Mr))}))),i=yield*r.load(n,e);wr(i)&&(yield*y({kind:`snapshot`,snapshot:i.value}),a=yield*xj(c))}let o=yield*xj(l),s=wr(a.data);return!i&&s&&(yield*wj(c,e=>({...e,status:e.status===`deleted`?e.status:`live`,error:br()}))),{threadId:e,...s?{afterSequence:o}:{},...i?{requestCompletionMarker:!0}:{}}}),{onExpectedFailure:g,retryExpectedFailureAfter:`250 millis`,resubscribe:b}).pipe(sw(y))),yield*Af(()=>Dd([xj(c),xj(l)]).pipe(Gd(([e,t])=>Tr(e.data,{onNone:()=>Id,onSome:e=>I5(e)?f({snapshotSequence:t,thread:e}):Id})))),c});function abe(e,t){return DK(e,FC(ibe(t).pipe(Zd(bj))))}function obe(e){let t=iH(t=>{let{environmentId:n,threadId:r}=C5(t);return e.atom(abe(n,r),{initialValue:k5}).pipe(AV(O5),oH(`environment-thread-state:${t}`))});return{stateAtom:(e,n)=>t(S5({environmentId:e,threadId:n}))}}var sbe=cu(sj,Hoe({randomBytes:e=>globalThis.crypto.getRandomValues(new Uint8Array(e)),digest:(e,t)=>Ad(async()=>{let n=new Uint8Array(t.length);return n.set(t),new Uint8Array(await globalThis.crypto.subtle.digest(e,n.buffer))})})),L5=H([`configured`,`window-origin`,`desktop-managed`]),cbe=H([`http-base-url`,`websocket-base-url`,`development-server-url`,`window-location-url`]),R5=class extends G()(`PrimaryEnvironmentUrlInvalidError`,{source:L5,urlKind:cbe,cause:Dy()}){get message(){return`Could not parse ${this.urlKind} for the ${this.source} primary environment target.`}},z5=class extends G()(`PrimaryEnvironmentProtocolUnsupportedError`,{source:L5,protocol:L}){get message(){return`The ${this.source} primary environment target uses unsupported protocol ${this.protocol}.`}},B5=class extends G()(`DesktopEnvironmentBootstrapIncompleteError`,{hasHttpBaseUrl:R,hasWsBaseUrl:R}){get message(){return`Desktop bootstrap is missing ${[...this.hasHttpBaseUrl?[]:[`httpBaseUrl`],...this.hasWsBaseUrl?[]:[`wsBaseUrl`]].join(` and `)} for the local environment.`}};bv(R5),bv(z5),bv(B5);var lbe=new Set([`127.0.0.1`,`::1`,`localhost`]);function ube(){return(window.desktopBridge?.getLocalEnvironmentBootstraps()??[]).find(e=>e.id===`primary`)??null}function V5(e){try{return e.baseUrl===void 0?new URL(e.rawValue):new URL(e.rawValue,e.baseUrl)}catch(t){throw new R5({source:e.source,urlKind:e.urlKind,cause:t})}}function H5(e,t,n){return V5({rawValue:e,baseUrl:window.location.origin,source:t,urlKind:n}).toString()}function dbe(e){return e.trim().toLowerCase().replace(/^\[(.*)\]$/,`$1`)}function fbe(e){return lbe.has(dbe(e))}function pbe(e){return e.target.httpBaseUrl}function mbe(){return null}function hbe(){let e=V5({rawValue:window.location.origin,source:`window-origin`,urlKind:`http-base-url`}),t=e.toString();if(e.protocol===`http:`)e.protocol=`ws:`;else if(e.protocol===`https:`)e.protocol=`wss:`;else throw new z5({source:`window-origin`,protocol:e.protocol});return{source:`window-origin`,target:{httpBaseUrl:t,wsBaseUrl:e.toString()}}}function gbe(){let e=ube();if(!e||!e.httpBaseUrl&&!e.wsBaseUrl)return null;if(!e.httpBaseUrl||!e.wsBaseUrl)throw new B5({hasHttpBaseUrl:!!e.httpBaseUrl,hasWsBaseUrl:!!e.wsBaseUrl});return{source:`desktop-managed`,target:{httpBaseUrl:H5(e.httpBaseUrl,`desktop-managed`,`http-base-url`),wsBaseUrl:H5(e.wsBaseUrl,`desktop-managed`,`websocket-base-url`)}}}function U5(e,t){let n=W5(),r=V5({rawValue:pbe(n),source:n.source,urlKind:`http-base-url`});return r.pathname=e,t&&(r.search=new URLSearchParams(t).toString()),r.toString()}function W5(){return gbe()??mbe()??hbe()}var G5=class extends Ir()(`@p4code/web/environments/primary/httpClient/PrimaryEnvironmentHttpClient`){},_be=fu(G5,Pd(()=>DB(U5(`/`)))),K5=`p4code:primary-bearer:v1`,vbe=3e4;function q5(){return typeof window<`u`}function J5(e){try{return`${K5}:${new URL(e).origin}`}catch{return`${K5}:${e}`}}function ybe(e){try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return null;let n=t,r=n.token;if(typeof r!=`string`||r.trim().length===0)return null;let i=n.expiresAtMs;return{token:r,expiresAtMs:typeof i==`number`&&Number.isFinite(i)?i:null}}catch{return null}}function bbe(e){if(!q5())return null;let t=null;try{t=window.localStorage.getItem(J5(e))}catch{return null}if(t===null)return null;let n=ybe(t);return n===null||n.expiresAtMs!==null&&n.expiresAtMs-vbe<=Date.now()?(Y5(e),null):n.token}function xbe(e){if(!q5())return;let t=typeof e.expiresInSeconds==`number`&&Number.isFinite(e.expiresInSeconds)?Date.now()+e.expiresInSeconds*1e3:null,n={token:e.token,expiresAtMs:t};try{window.localStorage.setItem(J5(e.httpBaseUrl),JSON.stringify(n))}catch{}}function Y5(e){if(q5())try{window.localStorage.removeItem(J5(e))}catch{}}var X5=null;function Sbe(){if(typeof window>`u`)return Promise.resolve(null);let e=window.desktopBridge;return e?(X5??=e.getLocalEnvironmentBearerToken().catch(e=>{throw X5=null,e}),X5):Promise.resolve(null)}function Z5(){return typeof window>`u`||window.desktopBridge!==void 0||window.nativeApi!==void 0||!window.location.origin.startsWith(`http`)?!1:new URL(U5(`/`)).origin===window.location.origin}function Cbe(){return typeof window>`u`||window.desktopBridge!==void 0?!1:!Z5()}async function Q5(){return await Sbe()||bbe(U5(`/`))}function wbe(e){return e.pipe(AO(e=>Ad(Q5).pipe(Zd(t=>t?nD(e,t):e))))}function Tbe(){return sne(Fd(()=>{let e=TB(globalThis.fetch);return Z5()?vu(e,cu(zz,{credentials:`include`})):vu(fu(CO,Zd(CO,wbe)).pipe(bu(e)),cu(zz,{credentials:`omit`}))}))}var $5=Tbe(),e7=TB((e,t)=>globalThis.fetch(e,t));uj(e7);var Ebe=uj(_be.pipe(bu($5))),Dbe=e=>Ebe.runPromise(e),Obe=e=>Dbe(e),t7=mu(uj(_u(e7,sbe,iO)).contextEffect),kbe=z({connectionId:L,credential:MW}),Abe=z({schemaVersion:I(1),targets:B(bW),profiles:B(AW),credentials:B(kbe)}),n7=Object.freeze({schemaVersion:1,targets:[],profiles:[],credentials:[]});function r7(e,t,n){let r=t(n);return[...e.filter(e=>t(e)!==r),n]}function i7(e,t,n){return e.filter(e=>t(e)!==n)}function jbe(e){switch(e._tag){case`PrimaryConnectionTarget`:return null;case`BearerConnectionTarget`:case`SshConnectionTarget`:return e.connectionId}}function a7(e,t){let n=jbe(t);return{...e,targets:i7(e.targets,e=>e.environmentId,t.environmentId),profiles:n===null?e.profiles:i7(e.profiles,e=>e.connectionId,n),credentials:n===null?e.credentials:i7(e.credentials,e=>e.connectionId,n)}}function Mbe(e,t){let n=t.target,r=e.targets.find(e=>e.environmentId===n.environmentId),i=r===void 0?e:a7(e,r),a={...i,targets:r7(i.targets,e=>e.environmentId,n)};switch(t._tag){case`BearerConnectionRegistration`:return{...a,profiles:r7(a.profiles,e=>e.connectionId,t.profile),credentials:r7(a.credentials,e=>e.connectionId,{connectionId:t.target.connectionId,credential:t.credential})};case`SshConnectionRegistration`:return{...a,profiles:r7(a.profiles,e=>e.connectionId,t.profile)}}}function Nbe(e,t){return a7(e,t)}function o7(){return``}function Pbe(){return o7()||window.location.origin}function Fbe(){return``}function Ibe(){return null}function Lbe(e){try{return new URL(e).origin}catch{return null}}function s7(e=new URL(window.location.href)){if(Fbe())return!1;if(Ibe())return!0;let t=Lbe(o7());return t!==null&&e.origin===t}function c7(e=new URL(window.location.href)){let t=e.searchParams.get(`host`)?.trim()??``,n=h5(e)?.trim()??``,r=e.searchParams.get(`label`)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}}function Rbe(e=new URL(window.location.href)){return c7(e)!==null}function zbe(e){let t=new URL(`/pair`,Pbe());t.searchParams.set(`host`,e.host);let n=e.label?.trim();return n&&t.searchParams.set(`label`,n),g5(t,e.token).toString()}var l7=sV();function Bbe({children:e}){return(0,O.createElement)(FK.Provider,{value:l7},e)}var u7=15e3,d7=new Map,Vbe=new Set([X.previewAutomationConnect]),f7=BV([]).pipe(aH,oH(`slow-rpc-ack-requests`));function p7(e){l7.set(f7,[...e])}function m7(){return l7.get(f7)}function Hbe(e){return!e.includes(`subscribe`)&&!Vbe.has(e)}function Ube(e,t){if(!Hbe(t))return;h7(e),Kbe();let n=Date.now(),r={requestId:e,startedAt:new Date(n).toISOString(),startedAtMs:n,tag:t,thresholdMs:u7},i=setTimeout(()=>{d7.delete(e),Gbe(r)},u7);d7.set(e,{request:r,timeoutId:i})}function Wbe(e){h7(e);let t=m7();t.some(t=>t.requestId===e)&&p7(t.filter(t=>t.requestId!==e))}function h7(e){let t=d7.get(e);t&&(clearTimeout(t.timeoutId),d7.delete(e))}function Gbe(e){let t=[...m7(),e];if(t.length<=256){p7(t);return}p7(t.slice(-256))}function Kbe(){for(;d7.size>=256;){let e=d7.keys().next().value;if(e===void 0)return;h7(e)}}function qbe(){return zK(f7)}var Jbe=`local:`;function Ybe(e){return`${Jbe}${e}`}function Xbe(e){return e._tag===`BearerConnectionTarget`&&e.connectionId.startsWith(`local:`)}function Zbe(e){let t=[],n=()=>{let n=e();if(n===void 0)return t=[],{_tag:`Success`,bootstraps:t};try{return t=n.getLocalEnvironmentBootstraps().filter(e=>e.id!==cM),{_tag:`Success`,bootstraps:t}}catch(e){return{_tag:`Failure`,cause:e}}};return{readResult:n,readSnapshot:()=>{let e=n();return e._tag===`Success`?e.bootstraps:t}}}var g7=Zbe(()=>window.desktopBridge);function Qbe(){return g7.readResult()}function $be(){return g7.readSnapshot()}var exe=`p4code:connection-runtime`,txe=4,_7=`catalog`,v7=`shell`,y7=`thread`,b7=`server-config`,x7=`vcs-refs`,S7=`document`,C7=1,w7=jy(z({schemaVersion:I(C7),environmentId:cb,snapshot:mA})),T7=jy(z({schemaVersion:I(2),environmentId:cb,threadId:Y,snapshot:hA})),E7=jy(z({schemaVersion:I(1),environmentId:cb,config:TN})),D7=jy(z({schemaVersion:I(1),environmentId:cb,cwd:L,refs:zP})),O7=jy(Abe),nxe=xv(O7),rxe=Ov(O7),ixe=xv(w7),axe=Ov(w7),oxe=xv(T7),sxe=Ov(T7),cxe=xv(E7),lxe=Ov(E7),uxe=xv(D7),dxe=Ov(D7);function k7(e,t){return new CW({reason:`remote-unavailable`,detail:`Could not ${e} the local connection catalog: ${String(t)}`})}function A7(e,t){return new WW({operation:e,message:`Could not ${e.replaceAll(`-`,` `)}: ${String(t)}`})}var fxe=fp(`web.connectionStorage.openDatabase`)(function*(){return yield*Ld(e=>{if(typeof indexedDB>`u`){e(Bd(k7(`open`,`IndexedDB is unavailable in this browser context.`)));return}let t=indexedDB.open(exe,txe);t.addEventListener(`upgradeneeded`,()=>{t.result.objectStoreNames.contains(_7)||t.result.createObjectStore(_7),t.result.objectStoreNames.contains(v7)||t.result.createObjectStore(v7),t.result.objectStoreNames.contains(y7)||t.result.createObjectStore(y7),t.result.objectStoreNames.contains(b7)||t.result.createObjectStore(b7),t.result.objectStoreNames.contains(x7)||t.result.createObjectStore(x7)}),t.addEventListener(`error`,()=>{e(Bd(k7(`open`,t.error??`Unknown IndexedDB error`)))}),t.addEventListener(`success`,()=>{e(M(t.result))})})});function j7(e,t,n){return Ld(r=>{let i=e.transaction(t,`readonly`).objectStore(t).get(n);i.addEventListener(`error`,()=>{r(Bd(k7(`read`,i.error??`Unknown IndexedDB read error`)))}),i.addEventListener(`success`,()=>{r(M(i.result))})}).pipe(qf(`web.connectionStorage.readDatabaseValue`))}function M7(e,t,n,r){return Ld(i=>{let a=e.transaction(t,`readwrite`);a.addEventListener(`error`,()=>{i(Bd(k7(`write`,a.error??`Unknown IndexedDB write error`)))}),a.addEventListener(`complete`,()=>{i(Id)}),a.objectStore(t).put(r,n)}).pipe(qf(`web.connectionStorage.writeDatabaseValue`))}function N7(e,t,n){return Ld(r=>{let i=e.transaction(t,`readwrite`);i.addEventListener(`error`,()=>{r(Bd(k7(`remove`,i.error??`Unknown IndexedDB remove error`)))}),i.addEventListener(`complete`,()=>{r(Id)}),i.objectStore(t).delete(n)}).pipe(qf(`web.connectionStorage.removeDatabaseValue`))}function P7(e,t,n){return Ld(r=>{let i=e.transaction(t,`readwrite`);i.addEventListener(`error`,()=>{r(Bd(k7(`remove`,i.error??`Unknown IndexedDB cursor error`)))}),i.addEventListener(`complete`,()=>{r(Id)});let a=i.objectStore(t).openCursor(n);a.addEventListener(`error`,()=>{r(Bd(k7(`remove`,a.error??`Unknown IndexedDB cursor error`)))}),a.addEventListener(`success`,()=>{let e=a.result;e!==null&&(e.delete(),e.continue())})}).pipe(qf(`web.connectionStorage.removeDatabaseValuesInRange`))}function F7(e,t){return`${e}:${t}`}function I7(e,t){return`${e}:${t}`}var pxe=fp(`web.connectionStorage.decodeCatalog`)(function*(e){return yield*nxe(e).pipe(of(e=>k7(`decode`,e)))}),L7=fp(`web.connectionStorage.encodeCatalog`)(function*(e){return yield*rxe(e).pipe(of(e=>k7(`encode`,e)))});function mxe(e){let t=window.desktopBridge;return t?.getConnectionCatalog!==void 0&&t.setConnectionCatalog!==void 0?{read:jd({try:()=>t.getConnectionCatalog(),catch:e=>k7(`load`,e)}),write:e=>jd({try:()=>t.setConnectionCatalog(e),catch:e=>k7(`save`,e)}).pipe(Gd(e=>e?Id:Bd(k7(`save`,`Desktop secure storage is unavailable in this system context.`))))}:{read:j7(e,_7,S7).pipe(Zd(e=>typeof e==`string`?e:null)),write:t=>M7(e,_7,S7,t),quarantine:t=>M7(e,_7,`${S7}:corrupt:${Date.now()}`,t)}}var hxe=fp(`web.connectionStorage.makeCatalogStore`)(function*(e){let t=yield*gO(br()),n=yield*eS(1),r=fp(`web.connectionStorage.loadCatalog`)(function*(){let n=yield*_O(t);if(wr(n))return n.value;let r=yield*e.read,i=n7;return r!==null&&r.trim()!==``&&(i=yield*pxe(r).pipe(tf(t=>zd(function*(){yield*mp(`Discarding a corrupt web connection catalog.`,{error:t.message}),e.quarantine!==void 0&&(yield*e.quarantine(r).pipe(tf(e=>mp(`Could not quarantine the corrupt web connection catalog.`,{error:e.message}))));let n=yield*L7(n7);return yield*e.write(n).pipe(tf(e=>mp(`Could not persist the recovered web connection catalog.`,{error:e.message}))),n7})))),yield*vO(t,xr(i)),i});return{read:n.withPermits(1)(r()),update:fp(`web.connectionStorage.updateCatalog`)(function*(i){yield*n.withPermits(1)(zd(function*(){let n=i(yield*r());yield*e.write(yield*L7(n)),yield*vO(t,xr(n))}))})}}),gxe=mu(zd(function*(){let e=yield*Of(fxe(),e=>Fd(()=>e.close())),t=yield*hxe(mxe(e)),n=GW.of({list:t.read.pipe(Zd(e=>e.targets),of(e=>A7(`list-targets`,e)))}),r=KW.of({register:e=>t.update(t=>Mbe(t,e)).pipe(of(e=>A7(`register-connection`,e))),remove:e=>t.update(t=>Nbe(t,e)).pipe(of(e=>A7(`remove-connection`,e)))}),i=BW({get:e=>t.read.pipe(Zd(t=>Or(t.profiles.find(t=>t.connectionId===e)))),put:e=>t.update(t=>({...t,profiles:r7(t.profiles,e=>e.connectionId,e)})),remove:e=>t.update(t=>({...t,profiles:i7(t.profiles,e=>e.connectionId,e)}))}),a=RW({get:e=>t.read.pipe(Zd(t=>Or(t.credentials.find(t=>t.connectionId===e)?.credential))),put:(e,n)=>t.update(t=>({...t,credentials:r7(t.credentials,e=>e.connectionId,{connectionId:e,credential:n})})),remove:e=>t.update(t=>({...t,credentials:i7(t.credentials,e=>e.connectionId,e)}))}),o=qW.of({loadShell:t=>j7(e,v7,t).pipe(Gd(e=>typeof e==`string`?ixe(e).pipe(of(e=>A7(`load-shell`,e)),Zd(e=>e.environmentId===t?xr(e.snapshot):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-shell`,e))),saveShell:(t,n)=>zd(function*(){let r=yield*axe({schemaVersion:C7,environmentId:t,snapshot:n}).pipe(of(e=>A7(`save-shell`,e)));yield*M7(e,v7,t,r)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-shell`,e))),loadServerConfig:t=>j7(e,b7,t).pipe(Gd(e=>typeof e==`string`?cxe(e).pipe(of(e=>A7(`load-server-config`,e)),Zd(e=>e.environmentId===t?xr(e.config):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-server-config`,e))),saveServerConfig:(t,n)=>zd(function*(){let r=yield*lxe({schemaVersion:1,environmentId:t,config:n}).pipe(of(e=>A7(`save-server-config`,e)));yield*M7(e,b7,t,r)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-server-config`,e))),loadThread:(t,n)=>j7(e,y7,F7(t,n)).pipe(Gd(e=>typeof e==`string`?oxe(e).pipe(of(e=>A7(`load-thread`,e)),Zd(e=>e.environmentId===t&&e.threadId===n?xr(e.snapshot):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-thread`,e))),saveThread:(t,n)=>zd(function*(){let r=yield*sxe({schemaVersion:2,environmentId:t,threadId:n.thread.id,snapshot:n}).pipe(of(e=>A7(`save-thread`,e)));yield*M7(e,y7,F7(t,n.thread.id),r)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-thread`,e))),loadVcsRefs:(t,n)=>j7(e,x7,I7(t,n)).pipe(Gd(e=>typeof e==`string`?uxe(e).pipe(of(e=>A7(`load-vcs-refs`,e)),Zd(e=>e.environmentId===t&&e.cwd===n?xr(e.refs):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-vcs-refs`,e))),saveVcsRefs:(t,n,r)=>zd(function*(){let i=yield*dxe({schemaVersion:1,environmentId:t,cwd:n,refs:r}).pipe(of(e=>A7(`save-vcs-refs`,e)));yield*M7(e,x7,I7(t,n),i)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-vcs-refs`,e))),removeVcsRefs:(t,n)=>N7(e,x7,I7(t,n)).pipe(of(e=>A7(`remove-vcs-refs`,e))),clearVcsRefs:t=>P7(e,x7,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)).pipe(of(e=>A7(`clear-vcs-refs`,e))),removeThread:(t,n)=>N7(e,y7,F7(t,n)).pipe(of(e=>A7(`remove-thread`,e))),clear:t=>Dd([N7(e,v7,t),P7(e,y7,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)),N7(e,b7,t),P7(e,x7,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`))],{concurrency:`unbounded`,discard:!0}).pipe(of(e=>A7(`clear-environment`,e)))});return Hr(GW,n).pipe(Ur(KW,r),Ur(zW,i),Ur(LW,a),Ur(qW,o))})),R7=0;function _xe(){return typeof navigator>`u`?`unknown`:navigator.onLine?`online`:`offline`}var vxe=UW({status:Fd(_xe),changes:TC(e=>Of(Fd(()=>{let t=()=>Ox(e,`online`),n=()=>Ox(e,`offline`);return window.addEventListener(`online`,t),window.addEventListener(`offline`,n),{online:t,offline:n}}),({online:e,offline:t})=>Fd(()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,t)})).pipe(ef))}),yxe=RG({changes:TC(e=>Of(Fd(()=>{let t=()=>{document.visibilityState===`visible`&&Ox(e,`application-active`)};return document.addEventListener(`visibilitychange`,t),t}),e=>Fd(()=>{document.removeEventListener(`visibilitychange`,e)})).pipe(ef))});function z7(){let e=window.desktopBridge!==void 0,t=navigator.platform.trim();return{label:e?`P4Code Desktop`:`P4Code Web`,deviceType:`desktop`,...t===``?{}:{os:t}}}function B7(e){let t=e instanceof Error?e.message:String(e);return t.toLowerCase().includes(`cancel`)?new wW({reason:`authentication`,detail:t}):new CW({reason:`remote-unavailable`,detail:`Could not prepare the SSH environment: ${t}`})}var bxe=fp(`web.connectionPlatform.ssh.provisionDesktop`)(function*(e,t){let n=yield*jd({try:()=>e.ensureSshEnvironment(t,{issuePairingToken:!0}),catch:B7}),r=n.pairingToken;if(r===null)return yield*new wW({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`});let i=yield*jd({try:()=>e.fetchSshEnvironmentDescriptor(n.httpBaseUrl),catch:B7}),a=yield*jd({try:()=>e.bootstrapSshBearerSession(n.httpBaseUrl,r),catch:B7});return{environmentId:i.environmentId,label:i.label,bootstrap:n,bearerToken:a.access_token}}),xxe=mu(Fd(()=>{let e=pW.of({metadata:z7(),scopes:Kw}),t=mW.of({bearerToken:jd({try:Q5,catch:e=>new CW({reason:`remote-unavailable`,detail:`Could not load the primary environment credential: ${String(e)}`})}).pipe(Zd(Dr))}),n=hW.of({provision:fp(`web.connectionPlatform.ssh.provision`)(function*(e){let t=window.desktopBridge;return t===void 0?yield*new wW({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`}):yield*bxe(t,e)}),prepare:fp(`web.connectionPlatform.ssh.prepare`)(function*(e){let t=window.desktopBridge;if(t===void 0)return yield*new wW({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`});let n=yield*jd({try:()=>t.ensureSshEnvironment(e.target,{issuePairingToken:!0}),catch:B7});return n.pairingToken===null?yield*new wW({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`}):{bootstrap:n,bearerToken:(yield*jd({try:()=>t.bootstrapSshBearerSession(n.httpBaseUrl,n.pairingToken),catch:B7})).access_token}}),disconnect:fp(`web.connectionPlatform.ssh.disconnect`)(function*(e){let t=window.desktopBridge;t!==void 0&&(yield*jd({try:()=>t.disconnectSshEnvironment(e),catch:e=>new CW({reason:`remote-unavailable`,detail:`Could not disconnect the SSH environment: ${String(e)}`})}))})});return Hr(mW,t).pipe(Ur(pW,e),Ur(hW,n))})),Sxe=fp(`web.connectionPlatform.loadPrimaryConnectionRegistration`)(function*(e){let t=yield*jB({httpBaseUrl:e.target.httpBaseUrl}).pipe(bf($5),of(oG));return new NW({target:new _W({environmentId:t.environmentId,label:t.label,httpBaseUrl:e.target.httpBaseUrl,wsBaseUrl:e.target.wsBaseUrl})})}),Cxe=fp(`web.connectionPlatform.loadSecondaryConnectionRegistration`)(function*(e){if(e.httpBaseUrl===null||e.wsBaseUrl===null||e.bootstrapToken===void 0)return yield*new CW({reason:`endpoint-unavailable`,detail:`Desktop-local backend ${e.id} is not ready yet.`});let t=e.httpBaseUrl,n=e.wsBaseUrl,r=yield*jB({httpBaseUrl:t}).pipe(of(oG)),i=yield*Hu,a=yield*eG({httpBaseUrl:t,credential:e.bootstrapToken,scopes:Kw,clientMetadata:z7()}).pipe(of(oG)),o=Ybe(e.id),s=e.label||r.label;return{registration:new PW({target:new vW({environmentId:r.environmentId,label:s,connectionId:o}),profile:new OW({connectionId:o,environmentId:r.environmentId,label:s,httpBaseUrl:t,wsBaseUrl:n}),credential:new jW({token:a.access_token})}),expiresAtEpochMs:V7(i,a.expires_in),refreshAtEpochMs:Exe(i,a.expires_in)}}),wxe=`3 seconds`,Txe=5e3;function V7(e,t){return e+Math.max(0,t*1e3)}function Exe(e,t){return Math.max(e,V7(e,t)-Txe)}function Dxe(e=W5){try{return{_tag:`Success`,target:e()}}catch(e){return{_tag:`Failure`,cause:e}}}function Oxe(e,t){return t._tag===`Failure`?e.get(cM):void 0}function H7(e,t,n){return e.signature===t&&(e.refreshAtEpochMs===void 0||n<e.refreshAtEpochMs)}function kxe(e,t,n){return e.signature===t&&e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs}function Axe(e,t,n){return t._tag===`Success`?new Map:new Map([...e].filter(([,e])=>e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs))}var jxe=_u(gxe,vxe,yxe,xxe,fu(v5,zd(function*(){if(s7())return v5.of({registrations:EC});let e=yield*gO(new Map),t=zd(function*(){let t=yield*_O(e),n=yield*Hu,r=new Map,i=[],a=Dxe(),o=Oxe(t,a);if(o!==void 0&&(r.set(cM,o),i.push(o.registration)),a._tag===`Failure`)yield*mp(`Could not read the primary environment topology.`,{cause:a.cause});else if(a.target!==null){let e=a.target,o=`primary|${e.target.httpBaseUrl}|${e.target.wsBaseUrl}`,s=t.get(cM);if(s!==void 0&&H7(s,o,n))r.set(cM,s),i.push(s.registration);else{let t=yield*Sxe(e).pipe(cf(e=>mp(`Could not discover the primary environment.`,{error:e})),Yd);if(wr(t)){let e={signature:o,registration:t.value};r.set(cM,e),i.push(t.value)}}}let s=Qbe();for(let[e,a]of Axe(t,s,n))r.set(e,a),i.push(a.registration);if(s._tag===`Failure`)yield*mp(`Could not read the desktop-local backend topology.`,{cause:s.cause});else for(let e of s.bootstraps){let a=`${e.httpBaseUrl}|${e.wsBaseUrl}|${e.bootstrapToken??``}`,o=t.get(e.id);if(o!==void 0&&H7(o,a,n)){r.set(e.id,o),i.push(o.registration);continue}let s=yield*Cxe(e).pipe(cf(t=>mp(`Could not connect a desktop-local backend.`,{id:e.id,error:t})),Yd);if(wr(s)){let t={signature:a,...s.value};r.set(e.id,t),i.push(s.value.registration)}else o!==void 0&&kxe(o,a,n)&&(r.set(e.id,o),i.push(o.registration))}return yield*vO(e,r),i}).pipe(bf(Bz));return v5.of({registrations:xC(wxe).pipe(LC(()=>t))})})),cu(JW,JW.of({clear:e=>Fd(()=>{V_e(e)})})),cu(iK,iK.of({observe:({environmentId:e,method:t})=>Fd(()=>{R7+=1;let n=`${e}:${R7}`;return Ube(n,`${t} · ${e}`),Fd(()=>{Wbe(n)})})}))).pipe(bu(t7)),U7=JV(vu(Zve,vu(iye,cve)).pipe(xu(_u(t7,jxe)))),W7=jve(U7),G7=BV(e=>{for(let[t,n]of e(W7.catalogValueAtom).entries)if(n.target._tag===`PrimaryConnectionTarget`)return t;return null}).pipe(oH(`web-primary-environment-id`));function Mxe(e){return e.pipe(Zd(xr),tf(e=>mp(`Could not load the initial environment configuration.`).pipe(_p({...FG(e)}),Qd(br()))))}function Nxe(e){let t=iH(t=>e.atom(DK(t,FC(XG.pipe(Zd(e=>bj(e.session).pipe(LC(Tr({onNone:()=>M(br()),onSome:e=>Mxe(e.initialConfig)}))))))),{initialValue:br()})),n=iH(e=>BV(n=>kr(Er(tV(n(t(e))),()=>br()))).pipe(oH(`environment-config-value:${e}`))),r=iH(t=>e.atom(DK(t,FC(XG.pipe(Zd(e=>bj(e.prepared))))),{initialValue:br()}));return{initialConfigAtom:t,initialConfigValueAtom:n,preparedConnectionAtom:r,preparedConnectionValueAtom:iH(e=>BV(t=>Er(tV(t(r(e))),()=>br())).pipe(oH(`environment-prepared-connection:${e}`)))}}var K7=Nxe(U7),Pxe=BV(br()).pipe(oH(`web-prepared-connection:empty`));function q7(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Pxe:K7.preparedConnectionValueAtom(e),t[0]=e,t[1]=n),zK(n)}function Fxe(e){return kr(l7.get(K7.preparedConnectionValueAtom(e)))}var J7=ave(U7,{initialConfigValueAtom:K7.initialConfigValueAtom}),Ixe=Cve({catalogValueAtom:W7.catalogValueAtom,serverConfigValueAtom:J7.configValueAtom}),Lxe=[],Rxe=[],zxe={config:null,latestEvent:null,welcome:null},Y7=BV(e=>{let t=e(G7);if(t===null)return zxe;let n={environmentId:t,input:{}},r=kr(tV(e(J7.configProjection(n)))),i=kr(tV(e(J7.welcome(n))));return{config:e(J7.configValueAtom(t)),latestEvent:r?.latestEvent??null,welcome:i}}).pipe(oH(`web-primary-server-state`)),X7=BV(e=>e(Y7).config).pipe(oH(`web-primary-server-config`)),Bxe=BV(e=>e(Y7).latestEvent).pipe(oH(`web-primary-server-config-event`)),Vxe=BV(e=>e(Y7).welcome).pipe(oH(`web-primary-server-welcome`)),Hxe=BV(e=>e(X7)?.settings??bN).pipe(oH(`web-primary-server-settings`)),Uxe=BV(e=>e(X7)?.providers??Rxe).pipe(oH(`web-primary-server-providers`)),Wxe=BV(e=>e(X7)?.keybindings??n5).pipe(oH(`web-primary-server-keybindings`)),Gxe=BV(e=>e(X7)?.availableEditors??Lxe).pipe(oH(`web-primary-server-available-editors`)),Kxe=BV(e=>e(X7)?.keybindingsConfigPath??null).pipe(oH(`web-primary-server-keybindings-config-path`)),qxe=BV(e=>e(X7)?.observability??null).pipe(oH(`web-primary-server-observability`)),Z7=`http://www.w3.org/2000/svg`,Jxe={pencil:[{tag:`path`,attrs:{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`}},{tag:`path`,attrs:{d:`m15 5 4 4`}}],copy:[{tag:`rect`,attrs:{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`}},{tag:`path`,attrs:{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`}}],"folder-tree":[{tag:`path`,attrs:{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`}},{tag:`path`,attrs:{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`}},{tag:`path`,attrs:{d:`M3 5a2 2 0 0 0 2 2h3`}},{tag:`path`,attrs:{d:`M3 3v13a2 2 0 0 0 2 2h3`}}],trash:[{tag:`path`,attrs:{d:`M3 6h18`}},{tag:`path`,attrs:{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`}},{tag:`path`,attrs:{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`}},{tag:`line`,attrs:{x1:`10`,x2:`10`,y1:`11`,y2:`17`}},{tag:`line`,attrs:{x1:`14`,x2:`14`,y1:`11`,y2:`17`}}]};function Yxe(e,t){let n=Jxe[e];if(!n)return null;let r=document.createElementNS(Z7,`svg`);r.setAttribute(`xmlns`,Z7),r.setAttribute(`viewBox`,`0 0 24 24`),r.setAttribute(`fill`,`none`),r.setAttribute(`stroke`,`currentColor`),r.setAttribute(`stroke-width`,`2`),r.setAttribute(`stroke-linecap`,`round`),r.setAttribute(`stroke-linejoin`,`round`),r.setAttribute(`class`,t===`destructive`?`size-3.5 shrink-0`:`size-3.5 shrink-0 text-muted-foreground`);for(let e of n){let t=document.createElementNS(Z7,e.tag);for(let[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);r.appendChild(t)}return r}function Q7(e,t,n){let r=e.getBoundingClientRect(),i=Math.min(Math.max(4,t),Math.max(4,window.innerWidth-r.width-4)),a=Math.min(Math.max(4,n),Math.max(4,window.innerHeight-r.height-4));e.style.left=`${i}px`,e.style.top=`${a}px`}function $7(e,t){if(typeof Node<`u`&&e instanceof Node)return t.some(t=>t.contains(e));if(!e||typeof e!=`object`)return!1;let n=e;for(;n&&typeof n==`object`;){if(t.includes(n))return!0;n=n.parent}return!1}function Xxe(e,t){return new Promise(n=>{let r=[],i=!1,a=!1,o=e=>{if(!i){i=!0,document.removeEventListener(`keydown`,s),document.removeEventListener(`pointerdown`,c,!0),document.removeEventListener(`contextmenu`,l,!0);for(let e of r)e.remove();n(e)}},s=e=>{e.key===`Escape`&&(e.preventDefault(),o(null))},c=e=>{!a||$7(e.target,r)||o(null)},l=e=>{!a||$7(e.target,r)||(e.preventDefault(),o(null))},u=e=>{for(;r.length>e;)r.pop()?.remove()},d=(e,t,n,i)=>{u(i);let s=document.createElement(`div`);s.className=`dropdown-glass fixed z-[10000] min-w-32 max-w-sm overflow-hidden rounded-lg bg-clip-padding text-popover-foreground outline-none`,s.style.cssText=`position:fixed;z-index:10000;min-width:8rem;max-width:24rem;overflow:hidden;border-radius:var(--radius-lg);background-clip:padding-box;color:var(--popover-foreground);outline:none;pointer-events:auto;`,s.style.left=`${t}px`,s.style.top=`${n}px`,s.dataset.level=String(i);let c=document.createElement(`div`);c.className=`max-h-[min(24rem,70vh)] min-w-0 max-w-sm overflow-y-auto overflow-x-hidden p-1`,c.style.cssText=`max-height:min(24rem,70vh);min-width:0;max-width:24rem;overflow-x:hidden;overflow-y:auto;padding:0.25rem;`;for(let t of e){if(t.header===!0){let e=document.createElement(`div`);e.className=`px-2 py-1.5 font-medium text-muted-foreground text-xs`,e.textContent=t.label,c.appendChild(e);continue}let e=Array.isArray(t.children)&&t.children.length>0,n=!e&&(t.destructive===!0||t.id===`delete`),s=document.createElement(`button`);s.type=`button`;let l=t.disabled===!0;s.disabled=l;let f=`flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1 text-left outline-none transition-colors sm:min-h-7 sm:text-sm min-h-8 text-base`;if(s.className=l?`${f} pointer-events-none cursor-not-allowed text-muted-foreground opacity-64`:n?`${f} text-destructive-foreground hover:bg-destructive/10 hover:text-destructive-foreground`:`${f} text-foreground hover:bg-accent hover:text-accent-foreground`,s.style.cssText=`display:flex;width:100%;min-height:1.75rem;align-items:center;gap:0.5rem;border:0;border-radius:var(--radius-sm);background:transparent;padding:0.25rem 0.5rem;color:var(--foreground);font-family:var(--font-sans,system-ui,sans-serif);font-size:0.875rem;line-height:1.25rem;text-align:left;cursor:default;`,n&&(s.style.color=`var(--destructive-foreground)`),l&&(s.style.color=`var(--muted-foreground)`,s.style.opacity=`0.64`,s.style.pointerEvents=`none`),typeof t.icon==`string`){let e=Yxe(t.icon,n?`destructive`:`neutral`);e&&s.appendChild(e)}let p=document.createElement(`span`);if(p.className=`min-w-0 flex-1 truncate`,p.textContent=t.label,s.appendChild(p),e){let e=document.createElement(`span`);e.className=`ms-auto shrink-0 text-muted-foreground/80 text-sm leading-none`,e.textContent=`>`,s.appendChild(e)}l||(s.addEventListener(`mouseenter`,()=>{s.style.background=n?`color-mix(in srgb, var(--destructive) 10%, transparent)`:`var(--accent)`,s.style.color=n?`var(--destructive-foreground)`:`var(--accent-foreground)`}),s.addEventListener(`mouseleave`,()=>{s.style.background=`transparent`,s.style.color=n?`var(--destructive-foreground)`:`var(--foreground)`}),e?(s.addEventListener(`mouseenter`,()=>{let e=s.getBoundingClientRect(),n=e.right+4,a=e.top;d(t.children,n,a,i+1);let o=r[i+1];if(!o)return;let c=o.getBoundingClientRect();c.right>window.innerWidth&&Q7(o,e.left-c.width-4,e.top)}),s.addEventListener(`click`,e=>{e.preventDefault()})):(s.addEventListener(`mouseenter`,()=>{u(i+1)}),s.addEventListener(`click`,()=>{a&&o(t.id)}))),c.appendChild(s)}s.appendChild(c),s.addEventListener(`mouseenter`,()=>{u(i+1)}),document.body.appendChild(s),r[i]=s,requestAnimationFrame(()=>{Q7(s,t,n)})};document.addEventListener(`keydown`,s),document.addEventListener(`pointerdown`,c,!0),document.addEventListener(`contextmenu`,l,!0),d(e,t?.x??0,t?.y??0,0),requestAnimationFrame(()=>{a=!0})})}var e9=`p4code:client-settings:v1`;function t9(){return typeof window<`u`}function Zxe(){if(!t9())return null;try{return XK(e9,sN)}catch(e){return console.error(`Could not read persisted client settings.`,e),null}}function Qxe(e){t9()&&ZK(e9,e,sN)}var n9;function r9(){return Error(`Local backend API is unavailable before a backend is paired.`)}function $xe(){return{dialogs:{pickFolder:async e=>window.desktopBridge?window.desktopBridge.pickFolder(e):null,confirm:async e=>window.desktopBridge?window.desktopBridge.confirm(e):window.confirm(e)},shell:{openInEditor:()=>Promise.reject(r9()),openExternal:async e=>{if(window.desktopBridge){if(!await window.desktopBridge.openExternal(e))throw Error(`Unable to open link.`);return}window.open(e,`_blank`,`noopener,noreferrer`)},showItemInFolder:async e=>{if(!window.desktopBridge)throw Error(`Revealing files is unavailable in this browser.`);if(!await window.desktopBridge.showItemInFolder(e))throw Error(`Unable to reveal the file.`)},canRevealItemInFolder:()=>!!window.desktopBridge},contextMenu:{show:async(e,t)=>window.desktopBridge?window.desktopBridge.showContextMenu(e,t):Xxe(e,t)},persistence:{getClientSettings:async()=>window.desktopBridge?window.desktopBridge.getClientSettings():Zxe(),setClientSettings:async e=>{if(window.desktopBridge)return window.desktopBridge.setClientSettings(e);Qxe(e)}},server:{getConfig:()=>Promise.reject(r9()),refreshProviders:()=>Promise.reject(r9()),updateProvider:()=>Promise.reject(r9()),upsertKeybinding:()=>Promise.reject(r9()),removeKeybinding:()=>Promise.reject(r9()),getSettings:()=>Promise.reject(r9()),updateSettings:()=>Promise.reject(r9()),discoverSourceControl:()=>Promise.reject(r9()),getTraceDiagnostics:()=>Promise.reject(r9()),getProcessDiagnostics:()=>Promise.reject(r9()),getProcessResourceHistory:()=>Promise.reject(r9()),signalProcess:()=>Promise.reject(r9())}}}function i9(){if(!(typeof window>`u`))return n9||(window.nativeApi?(n9=window.nativeApi,n9):(n9=$xe(),n9))}function eSe(){return i9()?.shell.canRevealItemInFolder()??!1}function tSe(){let e=i9();if(!e)throw Error(`Local API not found`);return e}function nSe(e,t){if(e.size!==t.size)return!1;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function rSe(e){let t=iH(t=>BV(n=>{let r=n(e.catalogValueAtom).entries.get(t);return r===void 0?null:{entry:r,connection:eye(Er(tV(n(e.stateAtom(t))),()=>EW)),serverConfig:n(e.serverConfigValueAtom(t))}}).pipe(oH(`environment-presentation:${t}`))),n=new Map;return{presentationAtom:t,presentationsAtom:BV(r=>{let i=new Map;for(let n of r(e.catalogValueAtom).entries.keys()){let e=r(t(n));e!==null&&i.set(n,e)}return nSe(n,i)||(n=i),n}).pipe(oH(`environment-presentations`))}}var a9=rSe({catalogValueAtom:W7.catalogValueAtom,stateAtom:W7.stateAtom,serverConfigValueAtom:J7.configValueAtom}),iSe=BV(null).pipe(oH(`web-environment-presentation:empty`));function aSe(e){let t=(0,Dp.c)(5),n=zK(W7.catalogValueAtom),r;t[0]===e?r=t[1]:(r=e===null?iSe:a9.presentationAtom(e),t[0]=e,t[1]=r);let i=zK(r),a;return t[2]!==n.isReady||t[3]!==i?(a={isReady:n.isReady,presentation:i},t[2]=n.isReady,t[3]=i,t[4]=a):a=t[4],a}var oSe=BV(GB(!1)).pipe(oH(`web-environment-query:empty`));function sSe(e){let t=Mu(e);return t instanceof Error&&t.message.trim().length>0?t.message:`The environment request failed.`}function cSe(e){let t=(0,Dp.c)(10),n=e??oSe,r=zK(n),i=WK(n),a;t[0]===r?a=t[1]:(a=kr(tV(r)),t[0]=r,t[1]=a);let o;t[2]!==r._tag||t[3]!==r.cause?(o=r._tag===`Failure`?sSe(r.cause):null,t[2]=r._tag,t[3]=r.cause,t[4]=o):o=t[4];let s=e!==null&&r.waiting,c;return t[5]!==i||t[6]!==a||t[7]!==o||t[8]!==s?(c={data:a,error:o,isPending:s,refresh:i},t[5]=i,t[6]=a,t[7]=o,t[8]=s,t[9]=c):c=t[9],c}function o9(e,t){return{...t,environmentId:e,label:t.entry.target.label,displayUrl:tye(t.entry)}}function lSe(){let e=(0,Dp.c)(7),t=zK(W7.catalogValueAtom),n=zK(W7.networkStatusValueAtom),r=zK(a9.presentationsAtom),i;e[0]===r?i=e[1]:(i=[...r.entries()].map(uSe),e[0]=r,e[1]=i);let a=i,o;return e[2]!==t.isReady||e[3]!==a||e[4]!==n||e[5]!==r?(o={isReady:t.isReady,networkStatus:n,environments:a,presentationById:r},e[2]=t.isReady,e[3]=a,e[4]=n,e[5]=r,e[6]=o):o=e[6],o}function uSe(e){let[t,n]=e;return o9(t,n)}function s9(){return zK(G7)}function c9(e){let t=(0,Dp.c)(3),{presentation:n}=aSe(e),r;return t[0]!==e||t[1]!==n?(r=e===null||n===null?null:o9(e,n),t[0]=e,t[1]=n,t[2]=r):r=t[2],r}function dSe(){return c9(s9())}function fSe(e){let t=(0,Dp.c)(2),n=q7(e),r;return t[0]===n?r=t[1]:(r=wr(n)?n.value.httpBaseUrl:null,t[0]=n,t[1]=r),r}function pSe(e,t){let n=(0,Dp.c)(6),r=(0,O.useContext)(FK),i=typeof t==`string`?t:t?.label??e.label,a=typeof t==`string`?!0:t?.reportFailure??!0,o=typeof t==`string`?!0:t?.reportDefect??!0,s;return n[0]!==e||n[1]!==i||n[2]!==r||n[3]!==o||n[4]!==a?(s=t=>pK(r,e,t,{label:i,reportFailure:a,reportDefect:o}),n[0]=e,n[1]=i,n[2]=r,n[3]=o,n[4]=a,n[5]=s):s=n[5],s}var l9=O.createContext(void 0);function u9(e){let t=O.useContext(l9);if(t===void 0&&!e)throw Error(jY(72));return t}var mSe={...R0,disabled:p0(e=>e.disabled),instantType:p0(e=>e.instantType),isInstantPhase:p0(e=>e.isInstantPhase),trackCursorAxis:p0(e=>e.trackCursorAxis),disableHoverablePopup:p0(e=>e.disableHoverablePopup),lastOpenChangeReason:p0(e=>e.openChangeReason),closeOnClick:p0(e=>e.closeOnClick),closeDelay:p0(e=>e.closeDelay),hasViewport:p0(e=>e.hasViewport)},hSe=class e extends b0{constructor(e,t,n=!1){let r=new j0,i={...gSe(),...e};i.floatingRootContext=N0(r,t,n),super(i,{popupRef:O.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:r},mSe)}setOpen=(e,t)=>{let n=t.reason,r=n===zX,i=e&&n===`trigger-focus`,a=!e&&(n===`trigger-press`||n===`escape-key`);if(t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)},this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let o=()=>{let r={open:e,openChangeReason:n};i?r.instantType=`focus`:a?r.instantType=`dismiss`:n===`trigger-hover`&&(r.instantType=void 0),E0(r,e,t.trigger),this.update(r)};r?Tp.flushSync(o):o()};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,xQ(RX,e))}static useStore(t,n){return w0(t,(t,r)=>new e(n,t,r)).store}};function gSe(){return{...M0(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,hasViewport:!1}}var _Se=g0(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=hSe.useStore(l?.store,{open:n,openProp:r,activeTriggerId:d,triggerIdProp:u});B2(()=>{r===void 0&&p.state.open===!1&&n===!0&&p.update({open:!0,activeTriggerId:d})}),p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let m=p.useState(`open`),h=!t&&m,g=p.useState(`activeTriggerId`),_=p.useState(`mounted`),v=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i}),p.useSyncedValue(`disabled`,t),O0(p);let{forceUnmount:y,transitionStatus:b}=k0(h,p),x=p.useState(`isInstantPhase`),S=p.useState(`instantType`),C=p.useState(`lastOpenChangeReason`),w=O.useRef(null);BZ(()=>{m&&t&&p.setOpen(!1,xQ(aZ))},[m,t,p]),BZ(()=>{b===`ending`&&C===`none`||b!==`ending`&&x?(S!==`delay`&&(w.current=S),p.set(`instantType`,`delay`)):w.current!==null&&(p.set(`instantType`,w.current),w.current=null)},[b,x,C,S,p]),BZ(()=>{h&&(g??p.set(`payload`,void 0))},[p,g,h]);let T=O.useCallback(()=>{p.setOpen(!1,xQ(oZ))},[p]);O.useImperativeHandle(o,()=>({unmount:y,close:T}),[y,T]);let E=h||_||!t&&a!==`none`;return(0,N.jsxs)(l9.Provider,{value:p,children:[E&&(0,N.jsx)(vSe,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:v}):f]})});function vSe({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=V1(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=Ofe(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n});return A0(e,{activeTriggerProps:O.useMemo(()=>tX(a.reference,i.reference),[a.reference,i.reference]),inactiveTriggerProps:O.useMemo(()=>tX(a.trigger,i.trigger),[a.trigger,i.trigger]),popupProps:O.useMemo(()=>tX(C0,a.floating,i.floating),[a.floating,i.floating])}),null}var d9=O.createContext(void 0);function ySe(){return O.useContext(d9)}var bSe=function(e){return e[e.popupOpen=EX.popupOpen]=`popupOpen`,e.triggerDisabled=`data-trigger-disabled`,e}({}),f9=`data-base-ui-tooltip-trigger`;function p9(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(mZ(n))return n}}let t=e.target;return mZ(t)?t:null}function xSe(e){let t=e;for(;t;){if(t.hasAttribute(f9))return t;let e=t.parentElement;if(e){t=e;continue}let n=t.getRootNode();t=`host`in n&&mZ(n.host)?n.host:null}return null}var SSe=_0(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=u9(!0),m=a?.store??p;if(!m)throw Error(jY(82));let h=vQ(d),g=m.useState(`isTriggerActive`,h),_=m.useState(`isOpenedByTrigger`,h),v=m.useState(`floatingRootContext`),y=O.useRef(null),b=c??600,x=u??0,{registerTrigger:S,isMountedByThisTrigger:C}=D0(h,y,m,{payload:o,closeOnClick:l,closeDelay:x}),w=ySe(),{delayRef:T,isInstantPhase:E,hasProvider:ee}=qde(v,{open:_}),te=G0(v);m.useSyncedValue(`isInstantPhase`,E);let D=m.useState(`disabled`),ne=s??D,re=a$(ne),ie=m.useState(`trackCursorAxis`),k=m.useState(`disableHoverablePopup`),ae=O.useRef(!1),A=LQ(),oe=O.useRef(void 0);function se(){let e=w?.delay,t=typeof T.current==`object`?T.current.open:void 0,n=b;return ee&&(n=t===0?0:c??e??b),n}function ce(e){let t=y.current;if(!t||!e)return!1;let n=xSe(e);return n!==null&&n!==t&&GQ(t,n)}function le(e){let t=ce(e);return ae.current=t,t&&(te.openChangeTimeout.clear(),te.restTimeout.clear(),te.restTimeoutPending=!1,A.clear()),t}let ue=q0(v,{enabled:!ne,mouseOnly:!0,move:!1,handleClose:!k&&ie!==`both`?i2():null,restMs:se,delay(){let e=typeof T.current==`object`?T.current.close:void 0,t=x;return u==null&&ee&&(t=e),{close:t}},triggerElementRef:y,isActiveTrigger:g,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!ae.current}}),de=V0(v,{enabled:!ne}).reference,fe=e=>{let t=ae.current,n=p9(e),r=le(n),i=y.current,a=i&&n&&GQ(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,xQ(zX,e));return}if(t&&!r&&a&&!re.current&&!m.select(`open`)&&i&&VQ(oe.current)){let t=()=>{!ae.current&&!re.current&&!m.select(`open`)&&m.setOpen(!0,xQ(zX,e,i))},n=se();n===0?(A.clear(),t()):A.start(n,t)}},pe=m.useState(`triggerProps`,C);return hX(`button`,e,{state:{open:_},ref:[t,S,y],props:[ue,de,C||ie!==`none`?pe:void 0,{onMouseOver(e){fe(e.nativeEvent)},onFocus(e){ce(p9(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){ae.current=!1,A.clear(),oe.current=void 0},onPointerEnter(e){oe.current=e.pointerType},onPointerDown(e){oe.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:h,[bSe.triggerDisabled]:ne?``:void 0,[f9]:ne?void 0:``},f],stateAttributesMapping:MX})}),m9=O.createContext(void 0);function CSe(){let e=O.useContext(m9);if(e===void 0)throw Error(jY(70));return e}var h9=O.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{portalNode:c,portalSubtree:l}=C1({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,N.jsxs)(O.Fragment,{children:[l,c&&Tp.createPortal(n,c)]})}),wSe=O.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return u9().useState(`mounted`)||n?(0,N.jsx)(m9.Provider,{value:n,children:(0,N.jsx)(h9,{ref:t,...r})}):null}),g9=O.createContext(void 0);function _9(){let e=O.useContext(g9);if(e===void 0)throw Error(jY(71));return e}var TSe=O.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=b1,style:g,..._}=e,v=u9(),y=CSe(),b=v.useState(`open`),x=v.useState(`mounted`),S=v.useState(`trackCursorAxis`),C=v.useState(`disableHoverablePopup`),w=v.useState(`floatingRootContext`),T=v.useState(`instantType`),E=v.useState(`transitionStatus`),ee=O2({anchor:i,positionMethod:a,floatingRootContext:w,mounted:x,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:y,collisionAvoidance:h,adaptiveOrigin:v.useState(`hasViewport`)?T2:void 0}),te=M2(e,O.useMemo(()=>({open:b,side:ee.side,align:ee.align,anchorHidden:ee.anchorHidden,instant:S===`none`?T:`tracking-cursor`}),[b,ee.side,ee.align,ee.anchorHidden,S,T]),{styles:ee.positionerStyles,transitionStatus:E,props:_,refs:[t,v.useStateSetter(`positionerElement`)],hidden:!x,inert:!b||S===`both`||C});return(0,N.jsx)(g9.Provider,{value:ee,children:te})}),ESe={...PX,...wX},DSe=O.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=u9(),{side:s,align:c}=_9(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);MQ({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),K0(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return hX(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[f,v2(d),a],stateAttributesMapping:ESe})}),OSe=function(e){let{delay:t,closeDelay:n,timeout:r=400}=e,i=O.useMemo(()=>({delay:t,closeDelay:n}),[t,n]),a=O.useMemo(()=>({open:t,close:n}),[t,n]);return(0,N.jsx)(d9.Provider,{value:i,children:(0,N.jsx)(Kde,{delay:a,timeoutMs:r,children:e.children})})},kSe=function(e){return e.popupWidth=`--popup-width`,e.popupHeight=`--popup-height`,e}({}),ASe={activationDirection:e=>e?{"data-activation-direction":e}:null},jSe=O.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,s=u9(),c=_9(),l=s.useState(`instantType`),{children:u,state:d}=o4({store:s,side:c.side,cssVars:kSe,children:a});return hX(`div`,e,{state:{activationDirection:d.activationDirection,transitioning:d.transitioning,instant:l},ref:t,props:[o,{children:u}],stateAttributesMapping:ASe})}),MSe=OSe,NSe=_Se;function PSe(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=(0,N.jsx)(SSe,{"data-slot":`tooltip-trigger`,...e}),t[0]=e,t[1]=n),n}function FSe(e){let t=(0,Dp.c)(24),n,r,i,a,o,s,c,l;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6],c=t[7],l=t[8]):({className:i,align:o,sideOffset:s,side:c,variant:l,anchor:n,children:r,...a}=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,t[8]=l);let u=o===void 0?`center`:o,d=s===void 0?4:s,f=c===void 0?`top`:c,p=(l===void 0?`default`:l)===`glass`?`dropdown-glass shadow-xl shadow-black/25 before:hidden`:`border bg-popover not-dark:bg-clip-padding shadow-md/5`,m;t[9]!==i||t[10]!==p?(m=q8(`relative flex h-(--popup-height,auto) w-(--popup-width,auto) origin-(--transform-origin) text-balance rounded-md text-popover-foreground text-xs transition-[width,height,scale,opacity] before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-md)-1px)] before:shadow-[0_1px_--theme(--color-black/4%)] data-ending-style:scale-98 data-starting-style:scale-98 data-ending-style:opacity-0 data-starting-style:opacity-0 data-instant:duration-0 dark:before:shadow-[0_-1px_--theme(--color-white/6%)]`,p,i),t[9]=i,t[10]=p,t[11]=m):m=t[11];let h;t[12]===r?h=t[13]:(h=(0,N.jsx)(jSe,{className:`relative size-full overflow-clip px-(--viewport-inline-padding) py-1 [--viewport-inline-padding:--spacing(2)] data-instant:transition-none **:data-current:data-ending-style:opacity-0 **:data-current:data-starting-style:opacity-0 **:data-previous:data-ending-style:opacity-0 **:data-previous:data-starting-style:opacity-0 **:data-current:w-[calc(var(--popup-width)-2*var(--viewport-inline-padding)-2px)] **:data-previous:w-[calc(var(--popup-width)-2*var(--viewport-inline-padding)-2px)] **:data-previous:truncate **:data-current:opacity-100 **:data-previous:opacity-100 **:data-current:transition-opacity **:data-previous:transition-opacity`,"data-slot":`tooltip-viewport`,children:r}),t[12]=r,t[13]=h);let g;t[14]!==a||t[15]!==m||t[16]!==h?(g=(0,N.jsx)(DSe,{className:m,"data-slot":`tooltip-popup`,...a,children:h}),t[14]=a,t[15]=m,t[16]=h,t[17]=g):g=t[17];let _;return t[18]!==u||t[19]!==n||t[20]!==f||t[21]!==d||t[22]!==g?(_=(0,N.jsx)(wSe,{children:(0,N.jsx)(TSe,{align:u,anchor:n,className:`pointer-events-none z-50 h-(--positioner-height) w-(--positioner-width) max-w-(--available-width) transition-[top,left,right,bottom,transform] data-instant:transition-none`,"data-slot":`tooltip-positioner`,side:f,sideOffset:d,children:g})}),t[18]=u,t[19]=n,t[20]=f,t[21]=d,t[22]=g,t[23]=_):_=t[23],_}function ISe(e){return e.bootstrapComplete?e.serverThreadDetailExists||e.draftThreadExists?`ready`:e.serverThreadDetailDeleted?`missing`:e.serverThreadShellExists?`loading`:`missing`:`loading`}function LSe(e){return{environmentId:e.environmentId,threadId:e.threadId}}function RSe(e){return{draftId:e}}function zSe(e){return!e.environmentId||!e.threadId?null:NB(e.environmentId,e.threadId)}function BSe(e){return e.environmentId&&e.threadId?{kind:`server`,threadRef:NB(e.environmentId,e.threadId)}:e.draftId?{kind:`draft`,draftId:e.draftId}:null}function VSe(e,t){return e?.kind===`server`?e.threadRef:e?.kind!==`draft`||!t?.promotedTo?null:t.promotedTo}var v9=`task`,HSe=`p4code:right-panel-state:v2`,USe=7,y9={isOpen:!1,activeSurfaceId:null,surfaces:[]},b9=e=>{switch(e){case`diff`:return{id:`diff`,kind:e};case`files`:return{id:`files`,kind:e};case`plan`:return{id:`plan`,kind:e};case`task`:return{id:v9,kind:e}}},x9=e=>e?{id:`browser:${e}`,kind:`preview`,resourceId:e}:{id:`browser:new`,kind:`preview`,resourceId:null},WSe=(e,t,n,r,i)=>({id:e,kind:`file`,relativePath:t,...n===void 0?{}:{rootPath:n},revealLine:r,revealRequestId:i});function GSe(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t<=0?{rootPath:e.slice(0,1)||`/`,relativePath:e.slice(1)}:{rootPath:e.slice(0,t),relativePath:e.slice(t+1)}}var KSe=e=>({id:`terminal:${e}`,kind:`terminal`,resourceId:e,terminalIds:[e],activeTerminalId:e}),S9=(e,t,n=!0)=>({isOpen:!0,surfaces:e.surfaces.some(e=>e.id===t.id)?e.surfaces:[...e.surfaces,t],activeSurfaceId:n?t.id:e.activeSurfaceId}),C9=(e,t,n)=>{let r=e[t]??y9,i=n(r);if(!i.isOpen&&i.activeSurfaceId===null&&i.surfaces.length===0){if(!(t in e))return e;let{[t]:n,...r}=e;return r}return i===r?e:{...e,[t]:i}};function qSe(e){return e===void 0||!Number.isFinite(e)?null:Math.max(1,Math.trunc(e))}var w9=(e,t)=>{let n=e.surfaces.filter(e=>e.kind!==`files`),r=n.find(e=>e.id===t.surfaceId&&e.kind===`file`),i=WSe(t.surfaceId,t.relativePath,t.rootPath,qSe(t.line),(r?.revealRequestId??0)+1);return{isOpen:!0,activeSurfaceId:i.id,surfaces:r?n.map(e=>e.id===i.id?i:e):[...n,i]}};function JSe(e){return!e||typeof e!=`object`?{byThreadKey:{}}:{byThreadKey:`byThreadKey`in e&&e.byThreadKey&&typeof e.byThreadKey==`object`?Object.fromEntries(Object.entries(e.byThreadKey).map(([e,t])=>{let n=t&&typeof t==`object`?t:null,r=Array.isArray(n?.surfaces)?n.surfaces.flatMap(e=>{if(e.kind===`file`){let t=typeof e.revealLine==`number`&&Number.isFinite(e.revealLine)?Math.max(1,Math.trunc(e.revealLine)):null,n=typeof e.revealRequestId==`number`&&Number.isSafeInteger(e.revealRequestId)&&e.revealRequestId>=0?e.revealRequestId:0,{rootPath:r,...i}=e,a=typeof r==`string`&&r.length>0?r:void 0;return[{...i,...a===void 0?{}:{rootPath:a},revealLine:t,revealRequestId:n}]}if(e.kind!==`terminal`)return[e];if(!(`resourceId`in e)||typeof e.resourceId!=`string`||e.id!==`terminal:${e.resourceId}`)return[];let t=`terminalIds`in e&&Array.isArray(e.terminalIds)?[...new Set(e.terminalIds.filter(e=>typeof e==`string`))]:[e.resourceId],n=`activeTerminalId`in e&&typeof e.activeTerminalId==`string`&&t.includes(e.activeTerminalId)?e.activeTerminalId:t[0]??e.resourceId;return[{...e,terminalIds:t.length>0?t:[e.resourceId],activeTerminalId:n}]}):[],i=r.some(e=>e.id===n?.activeSurfaceId)?n?.activeSurfaceId??null:null;return[e,{isOpen:typeof n?.isOpen==`boolean`?n.isOpen:i!==null,surfaces:r,activeSurfaceId:i}]})):{}}}var YSe=v6()(x6(e=>({byThreadKey:{},open:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>n===`preview`?S9(e,e.surfaces.find(e=>e.kind===`preview`)??x9(null)):S9(e,b9(n)))})),openBrowser:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=x9(n),r=n?e.surfaces.filter(e=>e.id!==`browser:new`):e.surfaces;return S9({...e,surfaces:r},t)})})),openFile:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>w9(e,{surfaceId:`file:${n}`,relativePath:n,rootPath:void 0,line:r}))})),openLocalFile:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let{rootPath:t,relativePath:i}=GSe(n);return w9(e,{surfaceId:`file:${n}`,relativePath:i,rootPath:t,line:r})})})),openTerminal:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>S9(e,KSe(n)))})),splitTerminal:(t,n,r,i=`horizontal`)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>({...e,isOpen:!0,activeSurfaceId:n,surfaces:e.surfaces.map(e=>{if(e.id!==n||e.kind!==`terminal`)return e;let{splitDirection:t,...a}=e;return{...a,terminalIds:e.terminalIds.includes(r)?e.terminalIds:[...e.terminalIds,r],activeTerminalId:r,...i===`vertical`?{splitDirection:`vertical`}:{}}})}))})),activateTerminal:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>({...e,activeSurfaceId:n,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`terminal`&&e.terminalIds.includes(r)?{...e,activeTerminalId:r}:e)}))})),closeTerminal:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.find(e=>e.id===n&&e.kind===`terminal`);if(!t||t.kind!==`terminal`)return e;let i=t.terminalIds.filter(e=>e!==r);if(i.length===0){let t=e.surfaces.findIndex(e=>e.id===n),r=e.surfaces.filter(e=>e.id!==n),i=r[Math.min(t,r.length-1)]??null;return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r,activeSurfaceId:e.activeSurfaceId===n?i?.id??null:e.activeSurfaceId}}return{...e,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`terminal`?{...e,terminalIds:i,activeTerminalId:e.activeTerminalId===r?i.at(-1)??i[0]:e.activeTerminalId}:e)}})})),activateSurface:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.surfaces.some(e=>e.id===n)?{...e,isOpen:!0,activeSurfaceId:n}:e)})),closeSurface:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0)return e;let r=e.surfaces.filter(e=>e.id!==n);if(e.activeSurfaceId!==n)return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r};let i=r[Math.min(t,r.length-1)]??null;return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r,activeSurfaceId:i?.id??null}})})),closeOtherSurfaces:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.find(e=>e.id===n);return!t||e.surfaces.length===1?e:{...e,isOpen:!0,surfaces:[t],activeSurfaceId:t.id}})})),closeSurfacesToRight:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0||t===e.surfaces.length-1)return e;let r=e.surfaces.slice(0,t+1),i=r.some(t=>t.id===e.activeSurfaceId);return{...e,surfaces:r,activeSurfaceId:i?e.activeSurfaceId:n}})})),closeAllSurfaces:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.surfaces.length===0?e:{...e,isOpen:!1,surfaces:[],activeSurfaceId:null})})),reconcileBrowserSurfaces:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=new Set(n.map(e=>`browser:${e}`)),r=e.surfaces.filter(e=>e.kind!==`preview`),i=e.surfaces.filter(e=>e.kind===`preview`&&e.id!==`browser:new`&&t.has(e.id)),a=new Set(i.map(e=>e.id)),o=n.filter(e=>!a.has(`browser:${e}`)).map(e=>x9(e)),s=[...r,...i,...o],c=s.some(t=>t.id===e.activeSurfaceId),l=s.find(e=>e.kind===`preview`);return{...e,surfaces:s,activeSurfaceId:c?e.activeSurfaceId:l?.id??s[0]?.id??null}})})),reconcileFileSurfaces:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{if(n)return e;let t=e.surfaces.filter(e=>e.kind!==`files`&&(e.kind!==`file`||e.rootPath!==void 0));if(t.length===e.surfaces.length)return e;let r=t.some(t=>t.id===e.activeSurfaceId);return{...e,isOpen:t.length>0?e.isOpen:!1,surfaces:t,activeSurfaceId:r?e.activeSurfaceId:t.at(-1)?.id??null}})})),show:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.isOpen?e:{...e,isOpen:!0})})),close:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.isOpen?{...e,isOpen:!1}:e)})),toggleVisibility:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>({...e,isOpen:!e.isOpen}))})),toggle:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.find(t=>t.id===e.activeSurfaceId);return e.isOpen&&t?.kind===n?{...e,isOpen:!1}:n===`preview`?S9(e,e.surfaces.find(e=>e.kind===`preview`)??x9(null)):S9(e,b9(n))})})),removeThread:t=>e(e=>{let n=IB(t);if(!(n in e.byThreadKey))return e;let{[n]:r,...i}=e.byThreadKey;return{byThreadKey:i}})}),{name:HSe,version:USe,storage:y6(()=>V6(typeof window<`u`?window.localStorage:void 0)),partialize:e=>({byThreadKey:e.byThreadKey}),migrate:JSe}));function T9(e,t){return t?e[IB(t)]??y9:y9}function XSe(e,t){let n=T9(e,t);return n.isOpen?n.surfaces.find(e=>e.id===n.activeSurfaceId)?.kind??null:null}function ZSe(e,t){let n=T9(e,t);return n.isOpen?n.surfaces.find(e=>e.id===n.activeSurfaceId)??null:null}var E9=O.forwardRef(function(e,t){let{render:n,className:r,id:i,name:a,value:o,disabled:s=!1,onValueChange:c,defaultValue:l,autoFocus:u=!1,style:d,...f}=e,{state:p,name:m,disabled:h,setTouched:g,setDirty:_,validityData:v,setFocused:y,setFilled:b,validationMode:x,validation:S}=N4(),C=h||s,w=m??a,T={...p,disabled:C},{labelId:E}=F4(),ee=I4({id:i});BZ(()=>{let e=o!=null;S.inputRef.current?.value||e&&o!==``?b(!0):e&&o===``&&b(!1)},[S.inputRef,b,o]);let te=O.useRef(null);BZ(()=>{u&&te.current===WQ(o$(te.current))&&y(!0)},[u,y]);let[D]=cZ({controlled:o,default:l,name:`FieldControl`,state:`value`}),ne=o!==void 0,re=ne?D:void 0,ie=LZ(()=>S.inputRef.current?.value);return P4(S.inputRef,ee,re,ie),hX(`input`,e,{ref:[t,te],state:T,props:[{id:ee,disabled:C,name:w,ref:S.inputRef,"aria-labelledby":E,autoFocus:u,...ne?{value:re}:{defaultValue:l},onChange(e){let t=e.currentTarget.value;c?.(t,xQ(LX,e.nativeEvent)),_(t!==v.initialValue),b(t!==``)},onFocus(){y(!0)},onBlur(e){g(!0),y(!1),x===`onBlur`&&S.commit(e.currentTarget.value)},onKeyDown(e){e.currentTarget.tagName===`INPUT`&&e.key===`Enter`&&(g(!0),S.commit(e.currentTarget.value))}},S.getInputValidationProps(),f],stateAttributesMapping:A4})}),D9=H([`light`,`dark`,`system`]),O9=`p4code:theme`,k9=`(prefers-color-scheme: dark)`,A9={theme:`system`,systemDark:!1},j9=`theme-color`,QSe=`meta[name="${j9}"][data-dynamic-theme-color="true"]`,M9=class extends G()(`ThemeStorageError`,{operation:H([`read`,`write`]),storageKey:L,theme:F(D9),cause:Dy()}){get message(){return`Failed to ${this.operation} theme preference for ${this.storageKey}.`}},N9=bv(M9),P9=class extends G()(`DesktopThemeSyncError`,{theme:D9,cause:Dy()}){get message(){return`Failed to sync the ${this.theme} theme to the desktop shell.`}},$Se=bv(P9),F9=[],I9=null,L9=null,R9=null,z9=null;function B9(){for(let e of F9)e()}function V9(){return typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(k9).matches}function eCe(){if(typeof window>`u`)return A9.theme;let e;try{e=window.localStorage.getItem(O9)}catch(e){throw new M9({operation:`read`,storageKey:O9,cause:e})}return e===`light`||e===`dark`||e===`system`?e:A9.theme}function tCe(e){if(!(typeof window>`u`))try{window.localStorage.setItem(O9,e),z9=null}catch(t){throw new M9({operation:`write`,storageKey:O9,theme:e,cause:t})}}function H9(){if(z9!==null)return A9.theme;try{return eCe()}catch(e){let t=N9(e)?e:new M9({operation:`read`,storageKey:O9,cause:e});return z9=t,console.error(t.message,{operation:t.operation,storageKey:t.storageKey,...FG(t)}),A9.theme}}function nCe(){let e=document.querySelector(QSe);return e||(e=document.createElement(`meta`),e.name=j9,e.setAttribute(`data-dynamic-theme-color`,`true`),document.head.append(e),e)}function U9(e){let t=e?.trim().toLowerCase();return!t||t===`transparent`||t===`rgba(0, 0, 0, 0)`||t===`rgba(0 0 0 / 0)`?null:e?.trim()??null}function rCe(){return document.querySelector(`main[data-slot='sidebar-inset']`)??document.querySelector(`[data-slot='sidebar-inner']`)??document.body}function W9(){if(typeof document>`u`||typeof getComputedStyle>`u`)return;let e=U9(getComputedStyle(rCe()).backgroundColor),t=U9(getComputedStyle(document.body).backgroundColor),n=e??t;n&&(document.documentElement.style.backgroundColor=n,document.body.style.backgroundColor=n,nCe().setAttribute(`content`,n))}function G9(e,t=!1){if(typeof document>`u`||typeof window>`u`)return;let n=e===`system`?V9():!1;if(R9?.theme===e&&R9.systemDark===n){K9(e);return}t&&document.documentElement.classList.add(`no-transitions`);let r=e===`dark`||e===`system`&&n;document.documentElement.classList.toggle(`dark`,r),R9={theme:e,systemDark:n},W9(),K9(e),t&&(document.documentElement.offsetHeight,requestAnimationFrame(()=>{document.documentElement.classList.remove(`no-transitions`)}))}async function iCe(e,t){try{await e.setTheme(t)}catch(e){throw new P9({theme:t,cause:e})}}function K9(e){if(typeof window>`u`)return;let t=window.desktopBridge;!t||typeof t.setTheme!=`function`||L9===e||(L9=e,iCe(t,e).catch(t=>{let n=$Se(t)?t:new P9({theme:e,cause:t});console.error(n.message,{theme:n.theme,...FG(n)}),L9===e&&(L9=null)}))}typeof document<`u`&&typeof window<`u`&&G9(H9());function aCe(){if(typeof window>`u`)return A9;let e=H9(),t=e===`system`?V9():!1;return I9&&I9.theme===e&&I9.systemDark===t||(I9={theme:e,systemDark:t}),I9}function oCe(){return A9}function sCe(e){if(typeof window>`u`)return()=>{};F9.push(e);let t=typeof window.matchMedia==`function`?window.matchMedia(k9):null,n=()=>{H9()===`system`&&G9(`system`,!0),B9()};t?.addEventListener(`change`,n);let r=e=>{e.key===O9&&(z9=null,G9(H9(),!0),B9())};return window.addEventListener(`storage`,r),()=>{F9=F9.filter(t=>t!==e),t?.removeEventListener(`change`,n),window.removeEventListener(`storage`,r)}}function cCe(){let e=(0,Dp.c)(6),t=(0,O.useSyncExternalStore)(sCe,aCe,oCe),n=t.theme,r=n===`system`?t.systemDark?`dark`:`light`:n,i=lCe,a,o;e[0]===n?(a=e[1],o=e[2]):(a=()=>{G9(n)},o=[n],e[0]=n,e[1]=a,e[2]=o),(0,O.useEffect)(a,o);let s;return e[3]!==r||e[4]!==n?(s={theme:n,setTheme:i,resolvedTheme:r},e[3]=r,e[4]=n,e[5]=s):s=e[5],s}function lCe(e){if(!(typeof window>`u`)){try{tCe(e)}catch(t){let n=t,r=N9(n)?n:new M9({operation:`write`,storageKey:O9,theme:e,cause:n});console.error(r.message,{operation:r.operation,storageKey:r.storageKey,theme:e,...FG(r)});return}G9(e,!0),B9()}}function uCe(e){let t=(0,Dp.c)(15),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({className:n,size:i,unstyled:a,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o=i===void 0?`default`:i,s=a===void 0?!1:a,c;t[5]!==n||t[6]!==s?(c=q8(!s&&`relative inline-flex w-full rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] has-focus-visible:has-aria-invalid:border-destructive/64 has-focus-visible:has-aria-invalid:ring-destructive/16 has-aria-invalid:border-destructive/36 has-focus-visible:border-ring has-disabled:opacity-64 has-[:disabled,:focus-visible,[aria-invalid]]:shadow-none has-focus-visible:ring-[3px] not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] sm:text-sm dark:bg-input/32 dark:has-aria-invalid:ring-destructive/24 dark:not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]`,n)||void 0,t[5]=n,t[6]=s,t[7]=c):c=t[7];let l;t[8]!==r||t[9]!==o?(l=(0,N.jsx)(E9,{render:e=>(0,N.jsx)(`textarea`,{className:q8(`field-sizing-content min-h-17.5 w-full rounded-[inherit] px-[calc(--spacing(3)-1px)] py-[calc(--spacing(1.5)-1px)] outline-none max-sm:min-h-20.5`,o===`sm`&&`min-h-16.5 px-[calc(--spacing(2.5)-1px)] py-[calc(--spacing(1)-1px)] max-sm:min-h-19.5`,o===`lg`&&`min-h-18.5 py-[calc(--spacing(2)-1px)] max-sm:min-h-21.5`),"data-slot":`textarea`,...tX(e,r)})}),t[8]=r,t[9]=o,t[10]=l):l=t[10];let u;return t[11]!==o||t[12]!==c||t[13]!==l?(u=(0,N.jsx)(`span`,{className:c,"data-size":o,"data-slot":`textarea-control`,children:l}),t[11]=o,t[12]=c,t[13]=l,t[14]=u):u=t[14],u}var dCe=/https?:\/\/[^\s"'`<>]+/g,fCe=/(?:~\/|\.{1,2}\/|\/|[A-Za-z]:[\\/]|\\\\)[^\s"'`<>]+|[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)+(?::\d+){0,2}/g,pCe=/[.,;!?]+$/;function mCe(e){let t=e.replace(pCe,``);if(t.length===0)return t;let n=(e,n)=>{for(;t.endsWith(n);){if(t.split(e).length-1>=t.split(n).length-1)return;t=t.slice(0,-1)}};return n(`(`,`)`),n(`[`,`]`),n(`{`,`}`),t}function q9(e,t){return e.start<t.end&&t.start<e.end}function J9(e,t,n,r){let i=[];n.lastIndex=0;for(let a of e.matchAll(n)){let e=a[0],n=a.index??-1;if(n<0||e.length===0)continue;let o=mCe(e);if(o.length===0||t===`path`&&/^https?:\/\//i.test(o))continue;let s={kind:t,text:o,start:n,end:n+o.length};[...r,...i].some(e=>q9(s,e))||i.push(s)}return i}function Y9(e){return/^[A-Za-z]:[\\/]/.test(e)||e.startsWith(`\\\\`)}function hCe(e){return e.startsWith(`/`)||Y9(e)}function X9(e){return Y9(e)||/[A-Za-z]:\\/.test(e)}function Z9(e,t,n){let r=e.replace(/[\\/]+$/,``);return n===`\\`?`${r}\\${t.replaceAll(`/`,`\\`)}`:`${r}/${t.replace(/^\/+/,``)}`}function gCe(e){let t=e.match(/^\/Users\/([^/]+)/);if(t?.[1])return`/Users/${t[1]}`;let n=e.match(/^\/home\/([^/]+)/);if(n?.[1])return`/home/${n[1]}`;let r=e.match(/^([A-Za-z]:\\Users\\[^\\]+)/);if(r?.[1])return r[1]}function Q9(e){let t=e,n,r,i=t.match(/:(\d+)$/);if(!i?.[1])return{path:t,line:void 0,column:void 0};n=i[1],t=t.slice(0,-i[0].length);let a=t.match(/:(\d+)$/);return a?.[1]?(r=a[1],t=t.slice(0,-a[0].length)):(r=n,n=void 0),{path:t,line:r,column:n}}function _Ce(e){let t=J9(e,`url`,dCe,[]),n=J9(e,`path`,fCe,t);return[...t,...n].toSorted((e,t)=>e.start-t.start)}function vCe(e,t){let n=t(e-1);if(!n)return null;let r=e,i=n;for(;r>1&&i.isWrapped;){let e=t(r-2);if(!e)return null;--r,i=e}let a=[],o=0,s=r;for(;;){let e=t(s-1);if(!e)break;let n=t(s)?.isWrapped===!0,r=e.translateToString(!n);if(a.push({bufferLineNumber:s,text:r,startIndex:o,endIndex:o+r.length}),o+=r.length,!n)break;s+=1}return{text:a.map(e=>e.text).join(``),segments:a}}function $9(e,t){for(let n of e)if(t<n.endIndex)return{x:t-n.startIndex+1,y:n.bufferLineNumber};let n=e[e.length-1];return{x:Math.max(n?.text.length??0,1),y:n?.bufferLineNumber??1}}function yCe(e,t){return{start:$9(e.segments,t.start),end:$9(e.segments,t.end-1)}}function bCe(e,t){return e.start.y<=t&&t<=e.end.y}function xCe(e,t=typeof navigator>`u`?``:navigator.platform){return t.length===0?!1:J8(t)?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function SCe(e,t){let{path:n,line:r,column:i}=Q9(e),a=n;if(n.startsWith(`~/`)){let e=gCe(t);if(e){let t=X9(e)?`\\`:`/`;a=Z9(e,n.slice(2),t)}}else hCe(n)||(a=Z9(t,n,X9(t)?`\\`:`/`));return r?`${a}:${r}${i?`:${i}`:``}`:a}export{Xbe as $,GQ as $a,UM as $c,Pd as $d,Ar as $f,a2 as $i,Vw as $l,qhe as $n,NX as $o,p4 as $r,_K as $s,n8 as $t,tb as $u,fSe as A,yfe as Aa,$I as Ac,Gd as Ad,va as Af,A2 as Ai,TO as Al,dge as An,UX as Ao,te as Ap,R4 as Ar,qJ as As,pye as At,ay as Au,X7 as B,N$ as Ba,mN as Bc,gp as Bd,Aee as Bf,c2 as Bi,fE as Bl,Y3 as Bn,ZX as Bo,N4 as Br,FK as Bs,Sve as Bt,Gv as Bu,NSe as C,z1 as Ca,zB as Cc,Ld as Cd,zl as Cf,H2 as Ci,wk as Cl,_ge as Cn,LZ as Co,re as Cp,X4 as Cr,oY as Cs,Tye as Ct,cb as Cu,h9 as D,j1 as Da,IB as Dc,vf as Dd,Hl as Df,I2 as Di,CO as Dl,gge as Dn,cZ as Do,x as Dp,G4 as Dr,eY as Ds,T5 as Dt,B as Du,PSe as E,N1 as Ea,FB as Ec,tf as Ed,Bl as Ef,L2 as Ei,rae as El,Oge as En,hZ as Eo,D as Ep,U4 as Er,cY as Es,k5 as Et,K as Eu,eSe as F,I$ as Fa,iP as Fc,Bf as Fd,Gee as Ff,x2 as Fi,FD as Fl,oge as Fn,GX as Fo,s as Fp,I4 as Fr,ZK as Fs,g5 as Ft,Bv as Fu,Uxe as G,c$ as Ga,hN as Gc,yp as Gd,ti as Gf,d2 as Gi,Hw as Gl,U3 as Gn,VX as Go,x4 as Gr,MK as Gs,J8 as Gt,Jv as Gu,Wxe as H,j$ as Ha,oN as Hc,mp as Hd,wi as Hf,o2 as Hi,gE as Hl,Z3 as Hn,tZ as Ho,A4 as Hr,AK as Hs,pve as Ht,Ay as Hu,tSe as I,P$ as Ia,rP as Ic,Xf as Id,$i as If,y2 as Ii,LD as Il,tge as In,YX as Io,m as Ip,F4 as Ir,tq as Is,Fve as It,L as Iu,J7 as J,a$ as Ja,xue as Jc,Ad as Jd,xee as Jf,h2 as Ji,qw as Jl,Hhe as Jn,RX as Jo,Rme as Jr,yK as Js,Q_e as Jt,bv as Ju,Hxe as K,l$ as Ka,gN as Kc,Rd as Kd,Ir as Kf,Ipe as Ki,Yw as Kl,Yhe as Kn,nZ as Ko,b4 as Kr,kK as Ks,q_e as Kt,rie as Ku,i9 as L,L$ as La,Kue as Lc,zd as Ld,zi as Lf,v2 as Li,ZE as Ll,$3 as Ln,qX as Lo,h as Lp,P4 as Lr,WK as Ls,n5 as Lt,z as Lu,dSe as M,y1 as Ma,VF as Mc,fp as Md,fa as Mf,T2 as Mi,wO as Ml,l6 as Mn,$X as Mo,f as Mp,B4 as Mr,YJ as Ms,$ve as Mt,H as Mu,s9 as N,bfe as Na,sF as Nc,dp as Nd,ra as Nf,C2 as Ni,zD as Nl,i6 as Nn,QX as No,E as Np,V4 as Nr,oq as Ns,_5 as Nt,U as Nu,pSe as O,k1 as Oa,X as Oc,jf as Od,Cl as Of,M2 as Oi,MO as Ol,Age as On,rZ as Oo,ee as Op,K4 as Or,QJ as Os,dye as Ot,R as Ou,cSe as P,b1 as Pa,cF as Pc,Od as Pd,Kee as Pf,S2 as Pi,AD as Pl,a6 as Pn,oZ as Po,S as Pp,z4 as Pr,XK as Ps,h5 as Pt,Lv as Pu,U7 as Q,WQ as Qa,HM as Qc,M as Qd,kr as Qf,Vpe as Qi,Rw as Ql,P3 as Qn,PX as Qo,u4 as Qr,EK as Qs,Y8 as Qt,eb as Qu,Ixe as R,R$ as Ra,pN as Rc,uf as Rd,Li as Rf,s2 as Ri,dD as Rl,Q3 as Rn,JX as Ro,j4 as Rr,UK as Rs,t5 as Rt,G as Ru,BSe as S,V1 as Sa,tV as Sc,ef as Sd,uu as Sf,U2 as Si,Bk as Sl,Tge as Sn,BZ as So,ie as Sp,Q4 as Sr,rY as Ss,Eye as St,yb as Su,MSe as T,M1 as Ta,NB as Tc,rf as Td,Kl as Tf,R2 as Ti,Dk as Tl,f6 as Tn,mZ as To,T as Tp,W4 as Tr,lY as Ts,xye as Tt,Y as Tu,Kxe as U,z$ as Ua,bN as Uc,Zd as Ud,ki as Uf,m2 as Ui,tE as Ul,ege as Un,eZ as Uo,C4 as Ur,NK as Us,uve as Ut,Sv as Uu,Bxe as V,M$ as Va,cN as Vc,hp as Vd,Fi as Vf,l2 as Vi,pE as Vl,$he as Vn,HX as Vo,k4 as Vr,fK as Vs,mve as Vt,V as Vu,qxe as W,u$ as Wa,Due as Wc,of as Wd,yi as Wf,u2 as Wi,bT as Wl,R3 as Wn,LX as Wo,S4 as Wr,jK as Ws,q8 as Wt,nie as Wu,q7 as X,r$ as Xa,Sue as Xc,lf as Xd,Or as Xf,Lpe as Xi,Ww as Xl,N3 as Xn,IX as Xo,y4 as Xr,hK as Xs,X_e as Xt,F as Xu,Fxe as Y,i$ as Ya,yN as Yc,wf as Yd,Pr as Yf,f2 as Yi,Xw as Yl,F3 as Yn,FX as Yo,Lme as Yr,DK as Ys,Y_e as Yt,cy as Yu,W7 as Z,ZQ as Za,qM as Zc,hf as Zd,Er as Zf,Bpe as Zi,zw as Zl,Rhe as Zn,TX as Zo,Fme as Zr,mK as Zs,J_e as Zt,P as Zu,RSe as _,D0 as _a,YB as _c,Dd as _d,Au as _f,X2 as _i,Wk as _l,T6 as _n,$Z as _o,pe as _p,_3 as _r,EY as _s,nbe as _t,uC as _u,yCe as a,z0 as aa,XG as ac,A_ as ad,Id as af,g4 as ai,rM as al,H_e as an,MQ as ao,sr as ap,Fhe as ar,$Y as as,Rbe as at,HC as au,zSe as b,v0 as ba,KB as bc,Qd as bd,_u as bf,q2 as bi,Zk as bl,v6 as bn,WZ as bo,oe as bp,o3 as br,CY as bs,Kye as bt,Ox as bu,uCe as c,R0 as ca,EW as cc,gh as cd,yd as cf,Ome as ci,nse as cl,s_e as cn,DQ as co,lr as cp,y3 as cr,JY as cs,Obe as ct,bC as cu,E9 as d,E0 as da,aH as dc,Vm as dd,xd as df,l4 as di,Pj as dl,G6 as dn,SQ as do,Xt as dp,whe as dr,PY as ds,Y5 as dt,qC as du,i2 as ea,SK as ec,Ky as ed,Fd as ef,wme as ei,VM as el,i8 as en,KQ as eo,Cr as ep,Jhe as er,MX as es,$be as et,Kw as eu,v9 as f,O0 as fa,BV as fc,am as fd,Une as ff,Sme as fi,Dj as fl,e_e as fn,vQ as fo,Rt as fp,_he as fr,FY as fs,xbe as ft,sw as fu,YSe as g,w0 as ga,cV as gc,Of as gd,Tu as gf,Z2 as gi,nj as gl,z6 as gn,tQ as go,me as gp,bhe as gr,DY as gs,obe as gt,lC as gu,T9 as h,wpe as ha,oH as hc,im as hd,Eu as hf,Q2 as hi,uj as hl,V6 as hn,pQ as ho,ve as hp,xhe as hr,OY as hs,U5 as ht,FC as hu,SCe as i,K0 as ia,uK as ic,Z_ as id,zf as if,h4 as ii,nM as il,K8 as in,PQ as io,xr as ip,j3 as ir,tX as is,zbe as it,$C as iu,lSe as j,gfe as ja,qF as jc,xp as jd,_a as jf,O2 as ji,jO as jl,s6 as jn,KX as jo,l as jp,L4 as jr,$J as js,b5 as jt,fy as ju,c9 as k,w1 as ka,EL as kc,Bd as kd,xl as kf,j2 as ki,NO as kl,kge as kn,WX as ko,b as kp,H4 as kr,JJ as ks,lye as kt,Dy as ku,W9 as l,j0 as la,TW as lc,Eh as ld,wd as lf,Dme as li,kj as ll,r_e as ln,wQ as lo,fr as lp,x3 as lr,RY as ls,$5 as lt,IC as lu,ZSe as m,A0 as ma,dH as mc,tm as md,Bu as mf,o4 as mi,xj as ml,B6 as mn,fQ as mo,ft as mp,Che as mr,kY as ms,fbe as mt,zC as mu,_Ce as n,Z0 as na,sK as nc,nv as nd,ff as nf,f4 as ni,cM as nl,G8 as nn,IQ as no,Tr as np,Uhe as nr,wX as ns,Bbe as nt,Jw as nu,Q9 as o,M0 as oa,FG as oc,Ph as od,Hf as of,Tme as oi,Hj as ol,W_e as on,jQ as oo,or as op,Ihe as or,YY as os,s7 as ot,EC as ou,XSe as p,k0 as pa,AV as pc,om as pd,Vu as pf,c4 as pi,bj as pl,a_e as pn,_Q as po,Dt as pp,She as pr,jY as ps,G5 as pt,XC as pu,Vxe as q,o$ as qa,_N as qc,sf as qd,Kr as qf,Rpe as qi,Uw as ql,Lhe as qn,zX as qo,Ime as qr,bK as qs,Z_e as qt,Tv as qu,xCe as r,q0 as ra,cK as rc,rv as rd,jd as rf,m4 as ri,zse as rl,G_e as rn,LQ as ro,br as rp,Phe as rr,hX as rs,l7 as rt,TC as ru,bCe as s,N0 as sa,qW as sc,Bh as sd,Jne as sf,Eme as si,Uj as sl,n_e as sn,kQ as so,pr as sp,A3 as sr,XY as ss,c7 as st,GC as su,vCe as t,Q0 as ta,gK as tc,Qre as td,cf as tf,Cme as ti,Cce as tl,K_e as tn,RQ as to,wr as tp,L3 as tr,xX as ts,qbe as tt,Bw as tu,cCe as u,C0 as ua,iH as uc,Dh as ud,bd as uf,d4 as ui,Oj as ul,c_e as un,xQ as uo,zn as up,b3 as ur,LY as us,Cbe as ut,JC as uu,LSe as v,b0 as va,nV as vc,qd as vd,_ne as vf,Y2 as vi,Vk as vl,y6 as vn,QZ as vo,de as vp,yhe as vr,TY as vs,Qye as vt,gC as vu,FSe as w,R1 as wa,MB as wc,af as wd,Wl as wf,B2 as wi,Tk as wl,p6 as wn,dZ as wo,ne as wp,Y4 as wr,sY as ws,Cye as wt,ob as wu,ISe as x,p0 as xa,qB as xc,$d as xd,cu as xf,W2 as xi,Lk as xl,Cge as xn,VZ as xo,k as xp,$4 as xr,mY as xs,wye as xt,xb as xu,VSe as y,y0 as ya,GB as yc,_p as yd,Mu as yf,J2 as yi,Qk as yl,x6 as yn,ZZ as yo,ce as yp,s3 as yr,wY as ys,Zye as yt,mC as yu,Gxe as z,F$ as za,fN as zc,If as zd,ui as zf,p2 as zi,NE as zl,nge as zn,XX as zo,M4 as zr,zK as zs,wve as zt,Hv as zu};
|
|
46
|
-
//# sourceMappingURL=terminal-links-
|
|
45
|
+
`)}var Q6=bv(Uk),l_e=bv(wk),$6=bv(H6),e8=`p4code:composer-drafts:v1`,t8=8,u_e=H([`local`,`worktree`]),n8=L.pipe(qv(`DraftId`)),r8=Kge(typeof localStorage<`u`?localStorage:B6(),300);typeof window<`u`&&typeof window.addEventListener==`function`&&window.addEventListener(`beforeunload`,()=>{r8.flush()});var i8=z({id:L,name:L,mimeType:L,sizeBytes:Lv,dataUrl:L}),d_e=z({id:L,threadId:Y,createdAt:L,terminalId:L,terminalLabel:L,lineStart:Lv,lineEnd:Lv}),f_e=z({functionName:U(L),fileName:U(L),lineNumber:U(Lv),columnNumber:U(Lv)}),p_e=z({id:L,threadId:Y,pickedAt:L,pageUrl:L,pageTitle:U(L),tagName:L,selector:U(L),htmlPreview:L,componentName:U(L),source:U(f_e),styles:L}),m_e=z({prompt:L,attachments:B(i8),terminalContexts:P(B(d_e)),elementContexts:P(B(p_e)),previewAnnotations:P(B($se)),reviewComments:P(B(H6)),modelSelectionByProvider:P(Bv(Tk,Hk)),activeProvider:P(U(Tk)),runtimeMode:P(Uk),interactionMode:P(Gk),compressMode:P(qk),unpromptedSubagents:P(R)}),h_e=z({threadId:Y,environmentId:L,projectId:ob,logicalProjectKey:P(L),createdAt:L,runtimeMode:Uk,interactionMode:Gk,branch:U(L),worktreePath:U(L),envMode:u_e,startFromOrigin:R.pipe(W(M(!1))),promotedTo:P(U(z({environmentId:L,threadId:L})))}),g_e=z({version:Lv,state:z({draftsByThreadKey:Bv(L,m_e),draftThreadsByThreadKey:Bv(L,h_e),logicalProjectDraftThreadKeyByLogicalProjectKey:Bv(L,L),stickyModelSelectionByProvider:P(Bv(Tk,Hk)),stickyActiveProvider:P(U(Tk))})});function a8(e){if(!e)return null;let t=e.options;return!t||t.length===0?null:{[e.instanceId]:t}}function __e(e){if(!e)return null;let t={};for(let[n,r]of Object.entries(e))r?.options&&r.options.length>0&&(t[n]=r.options);return Object.keys(t).length>0?t:null}function v_e(e){return{...e,...e.options?{options:e.options.map(e=>({...e}))}:{}}}function o8(e){let t=[];for(let[n,r]of Object.entries(e))r!==void 0&&t.push([n,v_e(r)]);return Object.fromEntries(t)}var s8=Object.freeze({draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null}),c8=[],l8=[],u8=[],y_e=[],d8=[],f8=[],p8=[];Object.freeze(c8),Object.freeze(l8),Object.freeze(u8),Object.freeze(d8),Object.freeze(f8),Object.freeze(p8);var m8=Object.freeze({}),b_e=Object.freeze({activeProvider:null,modelSelectionByProvider:m8}),x_e=Object.freeze({prompt:``,images:c8,nonPersistedImageIds:l8,persistedAttachments:u8,terminalContexts:y_e,elementContexts:d8,previewAnnotations:f8,reviewComments:p8,modelSelectionByProvider:m8,activeProvider:null,runtimeMode:null,interactionMode:null,compressMode:null,unpromptedSubagents:null});function h8(){return{prompt:``,images:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],elementContexts:[],previewAnnotations:[],reviewComments:[],modelSelectionByProvider:{},activeProvider:null,runtimeMode:null,interactionMode:null,compressMode:null,unpromptedSubagents:null}}function g8(e){return`${e.mimeType}\u0000${e.sizeBytes}\u0000${e.name}`}function _8(e){return`${e.terminalId}\u0000${e.lineStart}\u0000${e.lineEnd}`}function v8(e,t){let n=t.terminalId.trim(),r=t.terminalLabel.trim();if(n.length===0||r.length===0)return null;let i=Math.max(1,Math.floor(t.lineStart)),a=Math.max(i,Math.floor(t.lineEnd));return{...t,threadId:e,terminalId:n,terminalLabel:r,lineStart:i,lineEnd:a,text:u6(t.text)}}function y8(e,t){let n=new Set,r=new Set,i=[];for(let a of t){let t=v8(e,a);if(!t)continue;let o=_8(t);n.has(t.id)||r.has(o)||(i.push(t),n.add(t.id),r.add(o))}return i}function b8(e){return e.prompt.length===0&&e.images.length===0&&e.persistedAttachments.length===0&&e.terminalContexts.length===0&&e.elementContexts.length===0&&e.previewAnnotations.length===0&&e.reviewComments.length===0&&Object.keys(e.modelSelectionByProvider).length===0&&e.activeProvider===null&&e.runtimeMode===null&&e.interactionMode===null&&e.compressMode===null&&e.unpromptedSubagents===null}function x8(e){return l_e(e)?e:null}var S_e=/^[a-zA-Z][a-zA-Z0-9_-]{0,63}$/;function S8(e){return typeof e!=`string`||!S_e.test(e)?null:e}function C8(e){if(Array.isArray(e)){let t=[];for(let n of e){if(!n||typeof n!=`object`)continue;let e=n,r=e.id,i=e.value;typeof r!=`string`||r.length===0||(typeof i==`string`||typeof i==`boolean`)&&t.push({id:r,value:i})}return t.length>0?t:void 0}if(e&&typeof e==`object`){let t=e,n=[];for(let[e,r]of Object.entries(t))(typeof r==`string`||typeof r==`boolean`)&&n.push({id:e,value:r});return n.length>0?n:void 0}}function w8(e,t,n){let r=e&&typeof e==`object`?e:null,i={};for(let e of[`codex`,`claudeAgent`,`cursor`,`opencode`]){let t=C8(r?.[e]);t&&(i[e]=t)}if(t===`codex`&&n){let e=[];if(typeof n.effort==`string`&&n.effort.length>0&&e.push({id:`reasoningEffort`,value:n.effort}),(n.codexFastMode===!0||typeof n.serviceTier==`string`&&n.serviceTier===`fast`)&&e.push({id:`fastMode`,value:!0}),e.length>0){let t=i.codex??[],n=new Set(t.map(e=>e.id)),r=[...t];for(let t of e)n.has(t.id)||r.push(t);i.codex=r}}return Object.keys(i).length>0?i:null}function T8(e,t){let n=e&&typeof e==`object`?e:null,r=S8(n?.instanceId??n?.provider??t?.provider);if(r===null)return null;let i=n?.model??t?.model;if(typeof i!=`string`)return null;let a=qJ(i,x8(n?.provider??t?.provider)??wk.make(`codex`));if(!a)return null;if(Array.isArray(n?.options))return QJ(r,a,C8(n.options));let o=x8(r),s=o?w8(n?.options?{[o]:n.options}:t?.modelOptions,o,o===`codex`?t?.legacyCodex:void 0):null;return QJ(r,a,o?s?.[o]:void 0)}function E8(e,t){if(e===null)return null;let n=x8(e.instanceId),r=n?t?.[n]:void 0;return QJ(e.instanceId,e.model,r)}function D8(e,t){if(!e?.options||e.options.length===0)return w8(t);let n=x8(e.instanceId);return n?C_e(w8(t),n,e.options):w8(t)}function C_e(e,t,n){let{[t]:r,...i}=e??{},a={...i};return n&&n.length>0&&(a[t]=n),Object.keys(a).length>0?a:null}function O8(e,t){let n={};if(t)for(let r of[`codex`,`claudeAgent`,`cursor`,`opencode`]){let i=t[r];if(i&&i.length>0){let t=wk.make(r),a=Dk(t);n[a]=QJ(a,e?.instanceId===a?e.model:zk[t]??`gpt-5.6-sol`,i)}}return e&&(n[e.instanceId]=e),n}function w_e(e){let t=e.threadModelSelection?.model??e.projectModelSelection?.model??null,n=(e.selectedInstanceId?Z3(e.selectedInstanceId,e.settings,e.providers,t):null)??X3(e.selectedProvider,e.settings,e.providers,t)??qJ(t,e.selectedProvider)??uY(e.providers,e.selectedProvider),r=e.selectedInstanceId?e.draft?.modelSelectionByProvider?.[e.selectedInstanceId]:void 0,i=e.draft?.modelSelectionByProvider?.[Tk.make(e.selectedProvider)],a=r??i,o=r?e.selectedInstanceId??Tk.make(e.selectedProvider):Tk.make(e.selectedProvider);return{selectedModel:a?.model?Z3(o,e.settings,e.providers,a.model)??X3(e.selectedProvider,e.settings,e.providers,a.model):n,modelOptions:__e(e.draft?.modelSelectionByProvider)??a8(e.threadModelSelection)??a8(e.projectModelSelection)??null}}function k8(e){typeof URL>`u`||e.startsWith(`blob:`)&&URL.revokeObjectURL(e)}function A8(e){if(e)for(let t of e.images)k8(t.previewUrl)}function T_e(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.name,i=t.mimeType,a=t.sizeBytes,o=t.dataUrl;return typeof n!=`string`||typeof r!=`string`||typeof i!=`string`||typeof a!=`number`||!Number.isFinite(a)||typeof o!=`string`||n.length===0||o.length===0?null:{id:n,name:r,mimeType:i,sizeBytes:a,dataUrl:o}}function E_e(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.threadId,i=t.pickedAt,a=t.pageUrl,o=t.tagName;if(typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0||typeof i!=`string`||i.length===0||typeof a!=`string`||a.length===0||typeof o!=`string`||o.length===0)return null;let s=t.source,c=null;if(s&&typeof s==`object`){let e=s;c={functionName:typeof e.functionName==`string`?e.functionName:null,fileName:typeof e.fileName==`string`?e.fileName:null,lineNumber:typeof e.lineNumber==`number`&&Number.isFinite(e.lineNumber)?e.lineNumber:null,columnNumber:typeof e.columnNumber==`number`&&Number.isFinite(e.columnNumber)?e.columnNumber:null}}return{id:n,threadId:r,pickedAt:i,pageUrl:a,pageTitle:typeof t.pageTitle==`string`?t.pageTitle:null,tagName:o,selector:typeof t.selector==`string`?t.selector:null,htmlPreview:typeof t.htmlPreview==`string`?t.htmlPreview:``,componentName:typeof t.componentName==`string`?t.componentName:null,source:c,styles:typeof t.styles==`string`?t.styles:``}}function D_e(e){if(!e||typeof e!=`object`)return null;let t=e,n=t.id,r=t.threadId,i=t.createdAt,a=t.lineStart,o=t.lineEnd;if(typeof n!=`string`||n.length===0||typeof r!=`string`||r.length===0||typeof i!=`string`||i.length===0||typeof a!=`number`||!Number.isFinite(a)||typeof o!=`number`||!Number.isFinite(o))return null;let s=typeof t.terminalId==`string`?t.terminalId.trim():``,c=typeof t.terminalLabel==`string`?t.terminalLabel.trim():``;if(s.length===0||c.length===0)return null;let l=Math.max(1,Math.floor(a));return{id:n,threadId:r,createdAt:i,terminalId:s,terminalLabel:c,lineStart:l,lineEnd:Math.max(l,Math.floor(o))}}function O_e(e,t){return e===`local`||e===`worktree`?e:t?`worktree`:`local`}function j8(e){return FB(e)}function M8(e){return e.trim()}function N8(e){return typeof e==`string`?e.trim():IB(e)}function P8(e,t){let n=zB(e);return n?N8(n):t?.environmentId?N8(NB(t.environmentId,e)):e}function k_e(e){return zB(e)}function F8(e,t){if(typeof t==`string`){let e=t.trim();return e.length>0?n8.make(e):null}return t}function I8(e,t){let n=F8(e,t);if(!n)return null;if(typeof n!=`string`){let t=N8(n);if(e.draftsByThreadKey[t])return t;for(let[t,r]of Object.entries(e.draftThreadsByThreadKey))if(r.environmentId===n.environmentId&&r.threadId===n.threadId)return t;return t}let r=N8(n);return r.length>0?r:null}function L8(e,t){let n=F8(e,t);return n?typeof n==`string`?e.draftThreadsByThreadKey[n]?.threadId??null:n.threadId:null}function R8(e,t){let n=I8(e,t);return n?e.draftsByThreadKey[n]??null:null}function A_e(e,t){return Object.values(e).includes(t)}function z8(e,t){return{draftId:e,...t}}function j_e(e,t,n,r,i){let a=r!==void 0&&(r.environmentId!==e.environmentId||r.projectId!==e.projectId),o=i?.worktreePath===void 0?a?null:r?.worktreePath??null:i.worktreePath??null,s=i?.branch===void 0?a?null:r?.branch??null:i.branch??null,c=i?.startFromOrigin===void 0?a?!1:r?.startFromOrigin??!1:i.startFromOrigin;return{threadId:t,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:n,createdAt:i?.createdAt??r?.createdAt??new Date().toISOString(),runtimeMode:i?.runtimeMode??r?.runtimeMode??`full-access`,interactionMode:i?.interactionMode??r?.interactionMode??`default`,branch:s,worktreePath:o,envMode:i?.envMode??(o?`worktree`:a?`local`:r?.envMode??`local`),startFromOrigin:c,promotedTo:null}}function B8(e,t){return!e||!t?e===t:e.environmentId===t.environmentId&&e.threadId===t.threadId}function V8(e){return e?.promotedTo!==null&&e?.promotedTo!==void 0}function M_e(e,t){return!!e&&e.threadId===t.threadId&&e.environmentId===t.environmentId&&e.projectId===t.projectId&&e.logicalProjectKey===t.logicalProjectKey&&e.createdAt===t.createdAt&&e.runtimeMode===t.runtimeMode&&e.interactionMode===t.interactionMode&&e.branch===t.branch&&e.worktreePath===t.worktreePath&&e.envMode===t.envMode&&e.startFromOrigin===t.startFromOrigin&&B8(e.promotedTo,t.promotedTo)}function H8(e,t){let n=Object.fromEntries(Object.entries(e.logicalProjectDraftThreadKeyByLogicalProjectKey).filter(([,e])=>e!==t)),{[t]:r,...i}=e.draftThreadsByThreadKey,{[t]:a,...o}=e.draftsByThreadKey;return A8(a),{draftsByThreadKey:o,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n}}function U8(e,t){let n={},r=new Map;if(t&&typeof t==`object`)for(let[e,n]of Object.entries(t)){if(typeof n!=`string`||n.length===0)continue;let t=RB(e);if(!t)continue;let i=zB(n);if(i){r.set(i.threadId,i.environmentId);continue}r.set(n,t.environmentId)}if(e&&typeof e==`object`)for(let[t,i]of Object.entries(e)){if(typeof t!=`string`||t.length===0||!i||typeof i!=`object`)continue;let e=i,a=zB(t),o=P8(t),s=a?.threadId??(typeof e.threadId==`string`&&e.threadId.length>0?e.threadId:t),c=a?.environmentId??(typeof e.environmentId==`string`&&e.environmentId.length>0?e.environmentId:r.get(t)),l=e.projectId,u=e.createdAt,d=e.branch,f=e.worktreePath,p=e.startFromOrigin===!0,m=typeof f==`string`?f:null,h=e.promotedTo,g=h&&typeof h==`object`?h:null,_=g&&typeof g.environmentId==`string`&&g.environmentId.length>0&&typeof g.threadId==`string`&&g.threadId.length>0?NB(g.environmentId,g.threadId):null;if(typeof l!=`string`||l.length===0||c===void 0)continue;let v=c;n[o]={threadId:s,environmentId:v,projectId:l,logicalProjectKey:typeof e.logicalProjectKey==`string`&&e.logicalProjectKey.length>0?e.logicalProjectKey:a?j8(MB(v,l)):t,createdAt:typeof u==`string`&&u.length>0?u:new Date().toISOString(),runtimeMode:Q6(e.runtimeMode)?e.runtimeMode:Q3,interactionMode:e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:$3,branch:typeof d==`string`?d:null,worktreePath:m,envMode:O_e(e.envMode,m),startFromOrigin:p,promotedTo:_}}let i={};if(t&&typeof t==`object`)for(let[e,a]of Object.entries(t)){if(typeof a!=`string`||a.length===0)continue;let t=RB(e),o=zB(a),s=P8(a);if(i[e]=s,o&&r.set(o.threadId,o.environmentId),!t){let t=n[s];t&&!t.logicalProjectKey&&(n[s]={...t,logicalProjectKey:e});continue}n[s]?(n[s]?.projectId!==t.projectId||n[s]?.environmentId!==t.environmentId)&&(n[s]={...n[s],threadId:n[s].threadId,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e}):n[s]={threadId:o?.threadId??s,environmentId:t.environmentId,projectId:t.projectId,logicalProjectKey:e,createdAt:new Date().toISOString(),runtimeMode:Q3,interactionMode:$3,branch:null,worktreePath:null,envMode:`local`,startFromOrigin:!1,promotedTo:null}}return{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:i}}function W8(e,t){if(!e||typeof e!=`object`)return{};let n=new Map;for(let[e,r]of Object.entries(t)){let t=k_e(e);t&&n.set(t.threadId,r.environmentId)}let r={};for(let[i,a]of Object.entries(e)){if(typeof i!=`string`||i.length===0||!a||typeof a!=`object`)continue;let e=a,o=typeof e.prompt==`string`?e.prompt:``,s=Array.isArray(e.attachments)?e.attachments.flatMap(e=>{let t=T_e(e);return t?[t]:[]}):[],c=Array.isArray(e.terminalContexts)?e.terminalContexts.flatMap(e=>{let t=D_e(e);return t?[t]:[]}):[],l=Array.isArray(e.elementContexts)?e.elementContexts.flatMap(e=>{let t=E_e(e);return t?[t]:[]}):[],u=Array.isArray(e.reviewComments)?e.reviewComments.filter($6):[],d=Q6(e.runtimeMode)?e.runtimeMode:null,f=e.interactionMode===`plan`||e.interactionMode==="default"?e.interactionMode:null,p=h6(o,c.length),m=a,h={},g=null;if(e.modelSelectionByProvider&&typeof e.modelSelectionByProvider==`object`)h=e.modelSelectionByProvider,g=S8(e.activeProvider);else{let e=w8(m.modelOptions,void 0,m)??null,t=T8(m.modelSelection,{provider:m.provider,model:m.model,modelOptions:e??m.modelOptions,legacyCodex:m}),n=D8(t,e),r=E8(t,n);h=O8(r,n),g=r?.instanceId??null}let _=Object.keys(h).length>0||g!==null;if(o.length===0&&s.length===0&&c.length===0&&l.length===0&&u.length===0&&!_&&!d&&!f)continue;let v=zB(i)===null?t[i]===void 0?(()=>{let e=n.get(i);return e?P8(i,{environmentId:e}):i})():i:P8(i);r[v]={prompt:p,attachments:s,...c.length>0?{terminalContexts:c}:{},...l.length>0?{elementContexts:l}:{},...u.length>0?{reviewComments:u}:{},..._?{modelSelectionByProvider:o8(h),activeProvider:g}:{},...d?{runtimeMode:d}:{},...f?{interactionMode:f}:{}}}return r}function N_e(e){if(!e||typeof e!=`object`)return s8;let t=e,n=t.draftsByThreadKey??t.draftsByThreadId,r=t.draftThreadsByThreadKey??t.draftThreadsByThreadId,i=t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId,a=w8(t.stickyModelOptions)??{},o=T8(t.stickyModelSelection,{provider:t.stickyProvider??`codex`,model:t.stickyModel,modelOptions:a}),s=D8(o,a),c=O8(E8(o,s),s),l=S8(t.stickyProvider)??null,{draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d}=U8(r,i);return{draftsByThreadKey:W8(n,u),draftThreadsByThreadKey:u,logicalProjectDraftThreadKeyByLogicalProjectKey:d,stickyModelSelectionByProvider:o8(c),stickyActiveProvider:l}}function P_e(e){let t={};for(let[n,r]of Object.entries(e.draftsByThreadKey)){if(typeof n!=`string`||n.length===0)continue;let e=Object.keys(r.modelSelectionByProvider).length>0||r.activeProvider!==null;r.prompt.length===0&&r.persistedAttachments.length===0&&r.terminalContexts.length===0&&r.elementContexts.length===0&&r.previewAnnotations.length===0&&r.reviewComments.length===0&&!e&&r.runtimeMode===null&&r.interactionMode===null&&r.compressMode===null&&r.unpromptedSubagents===null||(t[n]={prompt:r.prompt,attachments:r.persistedAttachments,...r.terminalContexts.length>0?{terminalContexts:r.terminalContexts.map(e=>({id:e.id,threadId:e.threadId,createdAt:e.createdAt,terminalId:e.terminalId,terminalLabel:e.terminalLabel,lineStart:e.lineStart,lineEnd:e.lineEnd}))}:{},...r.elementContexts.length>0?{elementContexts:r.elementContexts.map(e=>({id:e.id,threadId:e.threadId,pickedAt:e.pickedAt,pageUrl:e.pageUrl,pageTitle:e.pageTitle,tagName:e.tagName,selector:e.selector,htmlPreview:e.htmlPreview,componentName:e.componentName,source:e.source,styles:e.styles}))}:{},...r.previewAnnotations.length>0?{previewAnnotations:r.previewAnnotations.map(e=>({...e}))}:{},...r.reviewComments.length>0?{reviewComments:r.reviewComments.map(e=>({...e}))}:{},...e?{modelSelectionByProvider:o8(r.modelSelectionByProvider),activeProvider:r.activeProvider}:{},...r.runtimeMode?{runtimeMode:r.runtimeMode}:{},...r.interactionMode?{interactionMode:r.interactionMode}:{},...r.compressMode?{compressMode:r.compressMode}:{},...r.unpromptedSubagents===null?{}:{unpromptedSubagents:r.unpromptedSubagents}})}return{draftsByThreadKey:t,draftThreadsByThreadKey:e.draftThreadsByThreadKey,logicalProjectDraftThreadKeyByLogicalProjectKey:e.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:o8(e.stickyModelSelectionByProvider),stickyActiveProvider:e.stickyActiveProvider}}function F_e(e){if(!e||typeof e!=`object`)return s8;let t=e,{draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r}=U8(t.draftThreadsByThreadKey??t.draftThreadsByThreadId,t.logicalProjectDraftThreadKeyByLogicalProjectKey??t.projectDraftThreadKeyByProjectKey??t.projectDraftThreadIdByProjectKey??t.projectDraftThreadIdByProjectId),i={},a=null;if(t.stickyModelSelectionByProvider&&typeof t.stickyModelSelectionByProvider==`object`)i=t.stickyModelSelectionByProvider,a=S8(t.stickyActiveProvider);else{let e=w8(t.stickyModelOptions)??{},n=T8(t.stickyModelSelection,{provider:t.stickyProvider,model:t.stickyModel,modelOptions:e}),r=D8(n,e);i=O8(E8(n,r),r),a=S8(t.stickyProvider)}return{draftsByThreadKey:W8(t.draftsByThreadKey??t.draftsByThreadId,n),draftThreadsByThreadKey:n,logicalProjectDraftThreadKeyByLogicalProjectKey:r,stickyModelSelectionByProvider:o8(i),stickyActiveProvider:a}}function I_e(e){if(e.length===0)return[];try{let t=XK(e8,g_e);return!t||t.version!==t8?[]:(t.state.draftsByThreadKey[e]?.attachments??[]).map(e=>e.id)}catch{return[]}}function L_e(e,t,n){let r=new Set;try{r8.flush(),r=new Set(I_e(e))}catch{r=new Set}n(n=>{let i=n.draftsByThreadKey[e];if(!i)return n;let a=new Set(i.images.map(e=>e.id)),o=t.filter(e=>a.has(e.id)&&r.has(e.id)),s=[];for(let e of i.images)r.has(e.id)||s.push(e.id);let c={...i,persistedAttachments:o,nonPersistedImageIds:s},l={...n.draftsByThreadKey};return b8(c)?delete l[e]:l[e]=c,{draftsByThreadKey:l}})}function R_e(e){let t=e.dataUrl.indexOf(`,`),n=t===-1?e.dataUrl:e.dataUrl.slice(0,t),r=t===-1?``:e.dataUrl.slice(t+1);if(r.length===0)return null;try{if(!n.includes(`;base64`)){let t=decodeURIComponent(r),i=n.startsWith(`data:`)&&n.includes(`;`)?n.slice(5,n.indexOf(`;`)):e.mimeType;return new File([t],e.name,{type:i||e.mimeType})}let t=atob(r),i=new Uint8Array(t.length);for(let e=0;e<t.length;e+=1)i[e]=t.charCodeAt(e);return new File([i],e.name,{type:e.mimeType})}catch{return null}}function G8(e){return e.flatMap(e=>{let t=R_e(e);return t?[{type:`image`,id:e.id,name:e.name,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:e.dataUrl,file:t}]:[]})}function z_e(e){let t=e.modelSelectionByProvider??{},n=S8(e.activeProvider)??null;return{prompt:e.prompt,images:G8(e.attachments),nonPersistedImageIds:[],persistedAttachments:[...e.attachments],terminalContexts:e.terminalContexts?.map(e=>({...e,text:``}))??[],elementContexts:e.elementContexts?.map(e=>({...e}))??[],previewAnnotations:e.previewAnnotations?.map(e=>({...e}))??[],reviewComments:e.reviewComments?.map(e=>({...e}))??[],modelSelectionByProvider:t,activeProvider:n,runtimeMode:e.runtimeMode??null,interactionMode:e.interactionMode??null,compressMode:e.compressMode??null,unpromptedSubagents:e.unpromptedSubagents??null}}function B_e(e){return{threadId:e.threadId,environmentId:e.environmentId,projectId:e.projectId,logicalProjectKey:e.logicalProjectKey??j8(MB(e.environmentId,e.projectId)),createdAt:e.createdAt,runtimeMode:e.runtimeMode,interactionMode:e.interactionMode,branch:e.branch,worktreePath:e.worktreePath,envMode:e.envMode,startFromOrigin:e.startFromOrigin,promotedTo:e.promotedTo?NB(e.promotedTo.environmentId,e.promotedTo.threadId):null}}var K8=v6()(x6((e,t)=>{let n=e;return{draftsByThreadKey:{},draftThreadsByThreadKey:{},logicalProjectDraftThreadKeyByLogicalProjectKey:{},stickyModelSelectionByProvider:{},stickyActiveProvider:null,getComposerDraft:e=>R8(t(),e),getDraftThreadByLogicalProjectKey:e=>t().getDraftSessionByLogicalProjectKey(e),getDraftSessionByLogicalProjectKey:e=>{let n=M8(e);if(n.length===0)return null;let r=t().logicalProjectDraftThreadKeyByLogicalProjectKey[n];if(!r)return null;let i=t().draftThreadsByThreadKey[r];return!i||V8(i)?null:z8(n8.make(r),i)},getDraftThreadByProjectRef:e=>t().getDraftSessionByProjectRef(e),getDraftSessionByProjectRef:e=>{for(let[n,r]of Object.entries(t().draftThreadsByThreadKey))if(!V8(r)&&r.projectId===e.projectId&&r.environmentId===e.environmentId)return z8(n8.make(n),r);return null},getDraftSession:e=>t().draftThreadsByThreadKey[e]??null,getDraftSessionByRef:e=>{for(let n of Object.values(t().draftThreadsByThreadKey))if(n.environmentId===e.environmentId&&n.threadId===e.threadId)return n;return null},getDraftThread:e=>typeof e==`string`?t().getDraftSession(n8.make(e)):t().getDraftSessionByRef(e),getDraftThreadByRef:e=>t().getDraftSessionByRef(e),listDraftThreadKeys:()=>Object.values(t().draftThreadsByThreadKey).map(e=>IB(NB(e.environmentId,e.threadId))),hasDraftThreadsInEnvironment:e=>Object.values(t().draftThreadsByThreadKey).some(t=>t.environmentId===e),setLogicalProjectDraftThreadId:(e,t,r,i)=>{let a=M8(e);a.length===0||r.length===0||n(e=>{let n=e.draftThreadsByThreadKey[r],o=e.logicalProjectDraftThreadKeyByLogicalProjectKey[a],s=j_e(t,i?.threadId??n?.threadId??Y.make(r),a,n,i);if(o===r&&M_e(n,s))return e;let c={...e.logicalProjectDraftThreadKeyByLogicalProjectKey,[a]:r},l={...e.draftThreadsByThreadKey,[r]:s},u=e.draftsByThreadKey,d=o===void 0?void 0:l[o];return o&&o!==r&&!A_e(c,o)&&!V8(d)&&(delete l[o],e.draftsByThreadKey[o]!==void 0&&(u={...e.draftsByThreadKey},delete u[o])),{draftsByThreadKey:u,draftThreadsByThreadKey:l,logicalProjectDraftThreadKeyByLogicalProjectKey:c}})},setProjectDraftThreadId:(e,n,r)=>{t().setLogicalProjectDraftThreadId(j8(e),e,n,r)},setDraftThreadContext:(e,r)=>{let i=I8(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r.projectRef??{environmentId:t.environmentId,projectId:t.projectId};if(n.projectId.length===0||n.environmentId.length===0)return e;let a=n.environmentId!==t.environmentId||n.projectId!==t.projectId,o=r.worktreePath===void 0?a?null:t.worktreePath:r.worktreePath??null,s=r.branch===void 0?a?null:t.branch:r.branch??null,c=r.startFromOrigin===void 0?a?!1:t.startFromOrigin:r.startFromOrigin,l={threadId:t.threadId,environmentId:n.environmentId,projectId:n.projectId,logicalProjectKey:t.logicalProjectKey,createdAt:r.createdAt===void 0?t.createdAt:r.createdAt||t.createdAt,runtimeMode:r.runtimeMode??t.runtimeMode,interactionMode:r.interactionMode??t.interactionMode,branch:s,worktreePath:o,envMode:r.envMode??(o?`worktree`:a?`local`:t.envMode??`local`),startFromOrigin:c,promotedTo:t.promotedTo??null};return l.environmentId===t.environmentId&&l.projectId===t.projectId&&l.logicalProjectKey===t.logicalProjectKey&&l.createdAt===t.createdAt&&l.runtimeMode===t.runtimeMode&&l.interactionMode===t.interactionMode&&l.branch===t.branch&&l.worktreePath===t.worktreePath&&l.envMode===t.envMode&&l.startFromOrigin===t.startFromOrigin&&B8(l.promotedTo,t.promotedTo)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:l}}})},clearProjectDraftThreadId:e=>{n(t=>{let n=Object.entries(t.draftThreadsByThreadKey).find(([,t])=>t.projectId===e.projectId&&t.environmentId===e.environmentId);return n?H8(t,n[0]):t})},clearProjectDraftThreadById:(e,r)=>{let i=I8(t(),r)??``;i.length!==0&&n(t=>{let n=t.draftThreadsByThreadKey[i];return!n||n.projectId!==e.projectId||n.environmentId!==e.environmentId?t:H8(t,i)})},markDraftThreadPromoting:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t=e.draftThreadsByThreadKey[i];if(!t)return e;let n=r??NB(t.environmentId,t.threadId);return B8(t.promotedTo,n)?e:{draftThreadsByThreadKey:{...e.draftThreadsByThreadKey,[i]:{...t,promotedTo:n}}}})},finalizePromotedDraftThread:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[r];return V8(t)?H8(e,r):e})},clearDraftThread:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftThreadsByThreadKey[r]!==void 0,n=Object.values(e.logicalProjectDraftThreadKeyByLogicalProjectKey).includes(r),i=e.draftsByThreadKey[r]!==void 0;return!t&&!n&&!i?e:H8(e,r)})},setStickyModelSelection:e=>{let t=T8(e);n(e=>{if(!t)return e;let n={...e.stickyModelSelectionByProvider,[t.instanceId]:t};return ft(e.stickyModelSelectionByProvider,n)?e.stickyActiveProvider===t.instanceId?e:{stickyActiveProvider:t.instanceId}:{stickyModelSelectionByProvider:n,stickyActiveProvider:t.instanceId}})},applyStickyState:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.stickyModelSelectionByProvider,n=e.stickyActiveProvider;if(Object.keys(t).length===0&&n===null)return e;let i=e.draftsByThreadKey[r]??h8(),a={...i.modelSelectionByProvider};for(let[e,n]of Object.entries(t))if(n){let t=e,r=a[t];a[t]={...n,model:r?.model??n.model}}if(ft(i.modelSelectionByProvider,a)&&i.activeProvider===n)return e;let o={...i,modelSelectionByProvider:a,activeProvider:n},s={...e.draftsByThreadKey};return b8(o)?delete s[r]:s[r]=o,{draftsByThreadKey:s}})},setPrompt:(e,r)=>{let i=I8(t(),e)??``;i.length!==0&&n(e=>{let t={...e.draftsByThreadKey[i]??h8(),prompt:r},n={...e.draftsByThreadKey};return b8(t)?delete n[i]:n[i]=t,{draftsByThreadKey:n}})},setTerminalContexts:(e,r)=>{let i=I8(t(),e),a=L8(t(),e);if(!i||!a)return;let o=y8(a,r);n(e=>{let t=e.draftsByThreadKey[i]??h8(),n={...t,prompt:h6(t.prompt,o.length),terminalContexts:o},r={...e.draftsByThreadKey};return b8(n)?delete r[i]:r[i]=n,{draftsByThreadKey:r}})},setModelSelection:(e,r,i)=>{let a=I8(t(),e)??``;if(a.length===0)return;let o=T8(r);n(e=>{let t=e.draftsByThreadKey[a];if(!t&&o===null)return e;let n=t??h8(),r={...n.modelSelectionByProvider};if(o){let e=r[o.instanceId];o.options!==void 0||i?.replaceOptions?r[o.instanceId]=o:r[o.instanceId]=QJ(o.instanceId,o.model,e?.options)}let s=o?.instanceId??n.activeProvider;if(ft(n.modelSelectionByProvider,r)&&n.activeProvider===s)return e;let c={...n,modelSelectionByProvider:r,activeProvider:s},l={...e.draftsByThreadKey};return b8(c)?delete l[a]:l[a]=c,{draftsByThreadKey:l}})},setModelOptions:(e,r)=>{let i=I8(t(),e)??``;i.length!==0&&n(e=>{let t=e.draftsByThreadKey[i];if(!t&&(!r||Object.keys(r).length===0))return e;let n=t??h8(),a={...n.modelSelectionByProvider};for(let e of[`codex`,`claudeAgent`,`cursor`,`opencode`]){if(!r||!(e in r))continue;let t=r[e],n=wk.make(e),i=Dk(n),o=a[i];if(t&&t.length>0)a[i]=QJ(i,o?.model??zk[n]??`gpt-5.6-sol`,t);else if(o?.options){let{options:e,...t}=o;a[i]=t}}if(ft(n.modelSelectionByProvider,a))return e;let o={...n,modelSelectionByProvider:a},s={...e.draftsByThreadKey};return b8(o)?delete s[i]:s[i]=o,{draftsByThreadKey:s}})},setProviderModelOptions:(e,r,i,a)=>{let o=I8(t(),e)??``;if(o.length===0)return;let s=x8(r);if(s===null)return;let c=a?.instanceId??Dk(s),l=qJ(a?.model,s)??zk[s]??`gpt-5.6-sol`,u=i&&i.length>0?i:void 0;n(e=>{let t=e.draftsByThreadKey[o]??h8(),n={...t.modelSelectionByProvider},r=n[c];if(u)n[c]=QJ(c,r?.model??l,u);else if(r&&(r.options?.length??0)>0){let{options:e,...t}=r;n[c]=t}let i=e.stickyModelSelectionByProvider,s=e.stickyActiveProvider;if(a?.persistSticky===!0){i={...e.stickyModelSelectionByProvider};let n=i[c]??t.modelSelectionByProvider[c]??QJ(c,l);if(u)i[c]=QJ(c,n.model,u);else if((n.options?.length??0)>0){let{options:e,...t}=n;i[c]=t}s=a.instanceId?c:t.activeProvider??c}if(ft(t.modelSelectionByProvider,n)&&ft(e.stickyModelSelectionByProvider,i)&&e.stickyActiveProvider===s)return e;let d={...t,...a?.instanceId?{activeProvider:c}:{},modelSelectionByProvider:n},f={...e.draftsByThreadKey};return b8(d)?delete f[o]:f[o]=d,{draftsByThreadKey:f,...a?.persistSticky===!0?{stickyModelSelectionByProvider:i,stickyActiveProvider:s}:{}}})},setRuntimeMode:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=Q6(r)?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.runtimeMode===a)return e;let r={...n,runtimeMode:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setInteractionMode:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=r===`plan`||r==="default"?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.interactionMode===a)return e;let r={...n,interactionMode:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setCompressMode:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=r===`off`||r===`lite`||r===`full`||r===`ultra`?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.compressMode===a)return e;let r={...n,compressMode:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},setUnpromptedSubagents:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=typeof r==`boolean`?r:null;n(e=>{let t=e.draftsByThreadKey[i];if(!t&&a===null)return e;let n=t??h8();if(n.unpromptedSubagents===a)return e;let r={...n,unpromptedSubagents:a},o={...e.draftsByThreadKey};return b8(r)?delete o[i]:o[i]=r,{draftsByThreadKey:o}})},addImage:(e,n)=>{let r=I8(t(),e),i=L8(t(),e);!r||!i||t().addImages(typeof e==`string`?n8.make(r):e,[n])},addImages:(e,r)=>{let i=I8(t(),e)??``;i.length===0||r.length===0||n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=new Set(t.images.map(e=>e.id)),a=new Set(t.images.map(e=>g8(e))),o=new Set(t.images.map(e=>e.previewUrl)),s=[];for(let e of r){let t=g8(e);if(n.has(e.id)||a.has(t)){o.has(e.previewUrl)||k8(e.previewUrl);continue}s.push(e),n.add(e.id),a.add(t),o.add(e.previewUrl)}return s.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,images:[...t.images,...s]}}}})},removeImage:(e,r)=>{let i=I8(t(),e)??``;if(i.length===0)return;let a=t().draftsByThreadKey[i];if(!a)return;let o=a.images.find(e=>e.id===r);o&&k8(o.previewUrl),n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,images:t.images.filter(e=>e.id!==r),nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>e!==r),persistedAttachments:t.persistedAttachments.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return b8(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},insertTerminalContext:(e,r,i,a)=>{let o=I8(t(),e),s=L8(t(),e);if(!o||!s)return!1;let c=!1;return n(e=>{let t=e.draftsByThreadKey[o]??h8(),n=v8(s,i);if(!n)return e;let l=_8(n);if(t.terminalContexts.some(e=>e.id===n.id)||t.terminalContexts.some(e=>_8(e)===l))return e;c=!0;let u=Math.max(0,Math.min(t.terminalContexts.length,a)),d={...t,prompt:r,terminalContexts:[...t.terminalContexts.slice(0,u),n,...t.terminalContexts.slice(u)]};return{draftsByThreadKey:{...e.draftsByThreadKey,[o]:d}}}),c},addTerminalContext:(e,n)=>{let r=I8(t(),e),i=L8(t(),e);!r||!i||t().addTerminalContexts(typeof e==`string`?n8.make(r):e,[n])},addTerminalContexts:(e,r)=>{let i=I8(t(),e),a=L8(t(),e);!i||!a||r.length===0||n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=y8(a,[...t.terminalContexts,...r]).slice(t.terminalContexts.length);return n.length===0?e:{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,prompt:h6(t.prompt,t.terminalContexts.length+n.length),terminalContexts:[...t.terminalContexts,...n]}}}})},removeTerminalContext:(e,r)=>{let i=I8(t(),e)??``;i.length===0||r.length===0||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,terminalContexts:t.terminalContexts.filter(e=>e.id!==r)},a={...e.draftsByThreadKey};return b8(n)?delete a[i]:a[i]=n,{draftsByThreadKey:a}})},clearTerminalContexts:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t||t.terminalContexts.length===0)return e;let n={...t,terminalContexts:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},addElementContext:(e,r)=>{let i=I8(t(),e),a=L8(t(),e);if(!i||!a)return!1;let o=!1;return n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=r6(r);if(t.elementContexts.some(e=>r6(e)===n))return e;o=!0;let s={...r,id:pge(),threadId:a,pickedAt:new Date().toISOString()};return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,elementContexts:[...t.elementContexts,s]}}}}),o},setElementContexts:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t={...e.draftsByThreadKey[i]??h8(),elementContexts:[...r]},n={...e.draftsByThreadKey};return b8(t)?delete n[i]:n[i]=t,{draftsByThreadKey:n}})},removeElementContext:(e,r)=>{let i=I8(t(),e)??``;i.length===0||r.length===0||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n=t.elementContexts.filter(e=>e.id!==r);if(n.length===t.elementContexts.length)return e;let a={...t,elementContexts:n},o={...e.draftsByThreadKey};return b8(a)?delete o[i]:o[i]=a,{draftsByThreadKey:o}})},clearElementContexts:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t||t.elementContexts.length===0)return e;let n={...t,elementContexts:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},addPreviewAnnotation:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=t.previewAnnotations.filter(e=>e.id!==r.id),a={...r,screenshot:r.screenshot?{...r.screenshot,dataUrl:``}:null};return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,previewAnnotations:[...n,a]}}}})},setPreviewAnnotations:(e,r)=>{let i=I8(t(),e);i&&n(e=>{let t=e.draftsByThreadKey[i]??h8();return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,previewAnnotations:[...r]}}}})},removePreviewAnnotation:(e,r)=>{let i=I8(t(),e);!i||!r||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n=t.previewAnnotations.filter(e=>e.id!==r);if(n.length===t.previewAnnotations.length)return e;let a={...t,previewAnnotations:n,images:t.images.filter(e=>e.id!==r),persistedAttachments:t.persistedAttachments.filter(e=>e.id!==r),nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>e!==r)},o={...e.draftsByThreadKey};return b8(a)?delete o[i]:o[i]=a,{draftsByThreadKey:o}})},addReviewComment:(e,r)=>{let i=I8(t(),e);!i||!$6(r)||n(e=>{let t=e.draftsByThreadKey[i]??h8(),n=t.reviewComments.filter(e=>e.id!==r.id);return{draftsByThreadKey:{...e.draftsByThreadKey,[i]:{...t,reviewComments:[...n,{...r}]}}}})},setReviewComments:(e,r)=>{let i=I8(t(),e);if(!i)return;let a=r.filter($6).map(e=>({...e}));n(e=>{let t={...e.draftsByThreadKey[i]??h8(),reviewComments:a},n={...e.draftsByThreadKey};return b8(t)?delete n[i]:n[i]=t,{draftsByThreadKey:n}})},removeReviewComment:(e,r)=>{let i=I8(t(),e);!i||!r||n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n=t.reviewComments.filter(e=>e.id!==r);if(n.length===t.reviewComments.length)return e;let a={...t,reviewComments:n},o={...e.draftsByThreadKey};return b8(a)?delete o[i]:o[i]=a,{draftsByThreadKey:o}})},clearPersistedAttachments:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n={...t,persistedAttachments:[],nonPersistedImageIds:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},syncPersistedAttachments:(e,r)=>{let i=I8(t(),e);if(!i)return;let a=new Set(r.map(e=>e.id));n(e=>{let t=e.draftsByThreadKey[i];if(!t)return e;let n={...t,persistedAttachments:r,nonPersistedImageIds:t.nonPersistedImageIds.filter(e=>!a.has(e))},o={...e.draftsByThreadKey};return b8(n)?delete o[i]:o[i]=n,{draftsByThreadKey:o}}),Promise.resolve().then(()=>{L_e(i,r,n)})},clearComposerContent:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;let n={...t,prompt:``,images:[],nonPersistedImageIds:[],persistedAttachments:[],terminalContexts:[],elementContexts:[],previewAnnotations:[],reviewComments:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})},clearComposerPromptAndImages:e=>{let r=I8(t(),e)??``;r.length!==0&&n(e=>{let t=e.draftsByThreadKey[r];if(!t)return e;for(let e of t.images)k8(e.previewUrl);let n={...t,prompt:h6(``,t.terminalContexts.length),images:[],nonPersistedImageIds:[],persistedAttachments:[]},i={...e.draftsByThreadKey};return b8(n)?delete i[r]:i[r]=n,{draftsByThreadKey:i}})}}},{name:e8,version:t8,storage:y6(()=>r8),migrate:N_e,partialize:P_e,merge:(e,t)=>{let n=F_e(e),r=Object.fromEntries(Object.entries(n.draftsByThreadKey).map(([e,t])=>[e,z_e(t)])),i=Object.fromEntries(Object.entries(n.draftThreadsByThreadKey).map(([e,t])=>[e,B_e(t)]));return{...t,draftsByThreadKey:r,draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:n.logicalProjectDraftThreadKeyByLogicalProjectKey,stickyModelSelectionByProvider:n.stickyModelSelectionByProvider??{},stickyActiveProvider:n.stickyActiveProvider??null}}}));function V_e(e){K8.setState(t=>{let n=new Set;for(let[r,i]of Object.entries(t.draftThreadsByThreadKey))i.environmentId===e&&n.add(r);for(let r of Object.keys(t.draftsByThreadKey))zB(r)?.environmentId===e&&n.add(r);for(let[r,i]of Object.entries(t.logicalProjectDraftThreadKeyByLogicalProjectKey))RB(r)?.environmentId===e&&n.add(i);let r=Object.fromEntries(Object.entries(t.logicalProjectDraftThreadKeyByLogicalProjectKey).filter(([t,r])=>RB(t)?.environmentId!==e&&!n.has(r))),i=Object.fromEntries(Object.entries(t.draftThreadsByThreadKey).filter(([t,r])=>r.environmentId!==e&&!n.has(t)));return{draftsByThreadKey:Object.fromEntries(Object.entries(t.draftsByThreadKey).filter(([e,t])=>n.has(e)?(A8(t),!1):!0)),draftThreadsByThreadKey:i,logicalProjectDraftThreadKeyByLogicalProjectKey:r}}),r8.flush()}function H_e(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=t=>R8(t,e)??x_e,t[0]=e,t[1]=n),K8(n)}function U_e(){return K8(W_e)}function W_e(e){let t=e.stickyActiveProvider;return t===null?null:e.stickyModelSelectionByProvider[t]??null}function G_e(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=t=>{let n=R8(t,e);return n?{activeProvider:n.activeProvider,modelSelectionByProvider:n.modelSelectionByProvider}:b_e},t[0]=e,t[1]=n),K8(T6(n))}function K_e(e){let t=(0,Dp.c)(11),n;t[0]!==e.draftId||t[1]!==e.threadRef?(n=e.threadRef??e.draftId??n8.make(``),t[0]=e.draftId,t[1]=e.threadRef,t[2]=n):n=t[2];let r=G_e(n),i;return t[3]!==r||t[4]!==e.projectModelSelection||t[5]!==e.providers||t[6]!==e.selectedInstanceId||t[7]!==e.selectedProvider||t[8]!==e.settings||t[9]!==e.threadModelSelection?(i=w_e({draft:r,providers:e.providers,selectedProvider:e.selectedProvider,selectedInstanceId:e.selectedInstanceId,threadModelSelection:e.threadModelSelection,projectModelSelection:e.projectModelSelection,settings:e.settings}),t[3]=r,t[4]=e.projectModelSelection,t[5]=e.providers,t[6]=e.selectedInstanceId,t[7]=e.selectedProvider,t[8]=e.settings,t[9]=e.threadModelSelection,t[10]=i):i=t[10],i}function q_e(e){let t=K8.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey))r.environmentId===e.environmentId&&r.threadId===e.threadId&&t.markDraftThreadPromoting(n8.make(n),e)}function J_e(e){let t=K8.getState();for(let[n,r]of Object.entries(t.draftThreadsByThreadKey)){let i=r.promotedTo;if(i?i.environmentId===e.environmentId&&i.threadId===e.threadId:r.environmentId===e.environmentId&&r.threadId===e.threadId){let r=n8.make(n);t.markDraftThreadPromoting(r,e),t.finalizePromotedDraftThread(r)}}}function q8(...e){return PJ(aq(e))}function J8(e){return/mac|iphone|ipad|ipod/i.test(e)}function Y_e(e){return/^win(dows)?/i.test(e)}function X_e(e){return dm(globalThis.crypto.getRandomValues(new Uint8Array(e)))}function Y8(){let e=globalThis.crypto.getRandomValues(new Uint8Array(16));e[6]=e[6]&15|64,e[8]=e[8]&63|128;let t=dm(e);return`${t.slice(0,8)}-${t.slice(8,12)}-${t.slice(12,16)}-${t.slice(16,20)}-${t.slice(20)}`}var Z_e=()=>ob.make(Y8()),Q_e=()=>Y.make(Y8()),$_e=()=>n8.make(Y8()),eve=()=>fb.make(Y8());function tve(e,t){switch(t.type){case`snapshot`:return xr({config:t.config,latestEvent:t,source:`live`});case`keybindingsUpdated`:return Nr(e,e=>({config:{...e.config,keybindings:t.payload.keybindings,issues:t.payload.issues},latestEvent:t,source:`live`}));case`providerStatuses`:return Nr(e,e=>({config:{...e.config,providers:t.payload.providers},latestEvent:t,source:`live`}));case`settingsUpdated`:return Nr(e,e=>({config:{...e.config,settings:t.payload.settings},latestEvent:t,source:`live`}))}}var nve=e=>({version:1,type:`snapshot`,config:e}),rve=fp(`EnvironmentServerConfigState.make`)(function*(){let e=yield*XG,t=yield*qW,n=e.target.environmentId,r=yield*yj(Nr(yield*t.loadServerConfig(n).pipe(tf(e=>mp(`Could not load cached server configuration.`).pipe(_p({environmentId:n,...FG(e)}),Qd(br())))),e=>({config:e,latestEvent:nve(e),source:`cache`}))),i=yield*Tx(1),a=yield*gO(br()),o=fp(`EnvironmentServerConfigState.persist`)(function*(e){return yield*t.saveServerConfig(n,e).pipe(Qd(!0),tf(e=>mp(`Could not persist cached server configuration.`).pipe(_p({environmentId:n,...FG(e)}),Qd(!1))))}),s=fp(`EnvironmentServerConfigState.persistPending`)(function*(e){(yield*o(e))&&(yield*xO(a,t=>wr(t)&&t.value===e?br():t))});return yield*jC(i).pipe(ZC(`500 millis`),sw(s),Zf),yield*uK(X.subscribeServerConfig,{}).pipe(sw(e=>zd(function*(){let t=tve(yield*xj(r),e);Cr(t)||(yield*vO(a,xr(t.value.config)),yield*Cj(r,t),yield*Dx(i,t.value.config))})),Zf),yield*Af(()=>_O(a).pipe(Gd(Tr({onNone:()=>Id,onSome:e=>o(e).pipe(ef)})))),r});function ive(e){return DK(e,FC(rve().pipe(Zd(e=>bj(e).pipe(GC(e=>Tr(e,{onNone:()=>zi,onSome:e=>Li(e)})))))))}function ave(e,t){if(t.type!==`welcome`)return[e,[]];let n=t.payload;return[xr(n),[n]]}function ove(e,t){return e?.source===`live`?e.config:t??e?.config??null}function sve(e,t){let n=fK(),r={mode:`serial`,key:({environmentId:e})=>e},i=iH(t=>e.atom(ive(t)).pipe(AV(5*6e4),oH(`environment-data:server:config-projection:${t}`))),a=e=>i(e.environmentId),o=BV(null).pipe(oH(`environment-data:server:config:empty`)),s=iH(e=>e===null?o:BV(n=>ove(kr(tV(n(a({environmentId:e,input:{}})))),n(t.initialConfigValueAtom(e)))).pipe(oH(`environment-data:server:config:${e}`)));return{configValueAtom:s,settingsValueAtom:iH(e=>BV(t=>t(s(e))?.settings??null).pipe(oH(`environment-data:server:settings:${e}`))),providersValueAtom:iH(e=>BV(t=>t(s(e))?.providers??null).pipe(oH(`environment-data:server:providers:${e}`))),traceDiagnostics:jK(e,{label:`environment-data:server:trace-diagnostics`,tag:X.serverGetTraceDiagnostics}),processDiagnostics:jK(e,{label:`environment-data:server:process-diagnostics`,tag:X.serverGetProcessDiagnostics}),processResourceHistory:jK(e,{label:`environment-data:server:process-resource-history`,tag:X.serverGetProcessResourceHistory}),configProjection:a,welcome:MK(e,{label:`environment-data:server:welcome`,tag:X.subscribeServerLifecycle,transform:e=>e.pipe(JC(br,ave))}),refreshProviders:NK(e,{label:`environment-data:server:refresh-providers`,tag:X.serverRefreshProviders,concurrency:{mode:`singleFlight`,key:({environmentId:e})=>e}}),getProviderUsage:NK(e,{label:`environment-data:server:get-provider-usage`,tag:X.serverGetProviderUsage}),updateProvider:NK(e,{label:`environment-data:server:update-provider`,tag:X.serverUpdateProvider,scheduler:n,concurrency:r}),updateServer:NK(e,{label:`environment-data:server:update-server`,tag:X.serverUpdateServer,scheduler:n,concurrency:r}),upsertKeybinding:NK(e,{label:`environment-data:server:upsert-keybinding`,tag:X.serverUpsertKeybinding,scheduler:n,concurrency:r}),removeKeybinding:NK(e,{label:`environment-data:server:remove-keybinding`,tag:X.serverRemoveKeybinding,scheduler:n,concurrency:r}),updateSettings:NK(e,{label:`environment-data:server:update-settings`,tag:X.serverUpdateSettings,scheduler:n,concurrency:r}),signalProcess:NK(e,{label:`environment-data:server:signal-process`,tag:X.serverSignalProcess})}}var X8=(e,t)=>e===null?t.pipe(wf(zz,{credentials:`include`})):t,Z8=e=>e===null?{}:{authorization:`Bearer ${e.token}`},cve=6e3,lve=fp(`clientRuntime.state.fetchEnvironmentShellSnapshot`)(function*(e){let t=Ap(e.prepared.httpBaseUrl,`/api/orchestration/shell`),n=yield*DB(e.prepared.httpBaseUrl),r=Z8(e.prepared.httpAuthorization);return yield*kB(t,e.timeoutMs??cve,X8(e.prepared.httpAuthorization,n.orchestration.shellSnapshot({headers:r})))}),Q8=class extends Ir()(`@p4code/client-runtime/state/shellSnapshotHttp/ShellSnapshotLoader`){},uve=fu(Q8,zd(function*(){let e=yield*CO;return Q8.of({load:t=>lve({prepared:t}).pipe(Zd(xr),wf(CO,e),af(e=>mp(`Could not load the environment shell snapshot over HTTP; using the socket snapshot instead.`).pipe(_p({cause:Fu(e)}),Qd(br()))))})}));function dve(e,t){if(t.sequence<=e.snapshotSequence)return e;switch(t.kind){case`project-upserted`:{let n=e.projects.some(e=>e.id===t.project.id)?na(e.projects,e=>e.id===t.project.id?t.project:e):Ji(e.projects,t.project);return{...e,projects:n,snapshotSequence:t.sequence}}case`project-removed`:return{...e,projects:ia(e.projects,e=>e.id!==t.projectId),snapshotSequence:t.sequence};case`thread-upserted`:{let n=e.threads.some(e=>e.id===t.thread.id)?na(e.threads,e=>e.id===t.thread.id?t.thread:e):Ji(e.threads,t.thread);return{...e,threads:n,snapshotSequence:t.sequence}}case`thread-removed`:return{...e,threads:ia(e.threads,e=>e.id!==t.threadId),snapshotSequence:t.sequence};default:return e}}function fve(e,t){return{...t,environmentId:e}}function pve(e,t){return{...t,environmentId:e}}function mve(e,t){return{...t,environmentId:e}}function hve(e){return{openInEditor:NK(e,{label:`environment-data:shell:open-in-editor`,tag:X.shellOpenInEditor})}}function gve(e){return iH(t=>BV(n=>Tr(tV(n(e(t))),{onNone:()=>null,onSome:e=>kr(e.snapshot)})).pipe(oH(`environment-snapshot:${t}`)))}var $8={snapshot:br(),status:`empty`,error:br()};function e5(e){return wr(e)?`cached`:`empty`}var _ve=`Could not synchronize environment data.`,vve=fp(`EnvironmentShellState.make`)(function*(){let e=yield*XG,t=yield*qW,n=yield*Q8,r=yield*Sf(IG),i=e.target.environmentId,a=yield*t.loadShell(i).pipe(tf(e=>mp(`Could not load cached environment shell.`).pipe(_p({environmentId:i,...FG(e)}),Qd(br())))),o=yield*yj({snapshot:a,status:e5(a),error:br()}),s=yield*gO(!1),c=yield*Tx(1),l=fp(`EnvironmentShellState.persist`)(function*(e){yield*t.saveShell(i,e).pipe(tf(e=>mp(`Could not persist environment shell cache.`).pipe(_p({environmentId:i,...FG(e)}))))});yield*jC(c).pipe(ZC(`500 millis`),sw(l),Zf);let u=vO(s,!1).pipe(qd(wj(o,e=>({...e,status:e5(e.snapshot)})))),d=wj(o,e=>({...e,status:`synchronizing`,error:br()})),f=wj(o,e=>e.status===`live`?e:{...e,status:`synchronizing`,error:br()}),p=e=>vO(s,!1).pipe(qd(mp(`Could not synchronize the environment shell.`)),_p({environmentId:i,...FG(e)}),qd(wj(o,e=>({...e,status:e5(e.snapshot),error:xr(_ve)})))),m=fp(`EnvironmentShellState.applyItem`)(function*(e){if(e.kind===`synchronized`){yield*vO(s,!1),yield*wj(o,e=>wr(e.snapshot)?{...e,status:`live`,error:br()}:e);return}let t=yield*xj(o),n=e.kind===`snapshot`?e.snapshot:Tr(t.snapshot,{onNone:()=>null,onSome:t=>e.sequence>t.snapshotSequence?dve(t,e):t});if(n===null)return;let r=yield*_O(s);yield*Cj(o,{snapshot:xr(n),status:r?`synchronizing`:`live`,error:br()}),yield*Dx(c,n)}),h=Tr(r,{onNone:()=>PC,onSome:e=>e.changes.pipe(WC(e=>e===`application-active`))});return yield*d,yield*Zf(lK(Vk.subscribeShell,fp(`EnvironmentShellState.makeSubscribeInput`)(function*(t){let r=yield*t.initialConfig.pipe(Zd(e=>e.shellResumeCompletionMarker===!0),df(()=>!1));yield*vO(s,r),yield*d;let i=yield*xj(e.prepared).pipe(Gd(Tr({onSome:M,onNone:()=>bj(e.prepared).pipe(WC(wr),IC(e=>e.value),ow,Zd(Mr))}))),a=yield*n.load(i);return wr(a)?(yield*m({kind:`snapshot`,snapshot:a.value}),{afterSequence:a.value.snapshotSequence,...r?{requestCompletionMarker:!0}:{}}):r?{requestCompletionMarker:!0}:{}}),{onExpectedFailure:e=>p(Mu(e)),retryExpectedFailureAfter:`250 millis`,resubscribe:h}).pipe(sw(m))),yield*bj(e.state).pipe(sw(e=>{switch(TW(e)){case`synchronizing`:return d;case`disconnected`:return u;case`ready`:return f}}),Zf),o});function yve(e){return DK(e,FC(vve().pipe(Zd(bj))))}var bve=Object.freeze({hasSnapshot:!1,hasSynchronizingShell:!1,hasCachedShell:!1,hasLiveShell:!1,firstError:null,latestSnapshotUpdatedAt:null}),xve=new Map;function Sve(e,t){return e.hasSnapshot===t.hasSnapshot&&e.hasSynchronizingShell===t.hasSynchronizingShell&&e.hasCachedShell===t.hasCachedShell&&e.hasLiveShell===t.hasLiveShell&&e.firstError===t.firstError&&e.latestSnapshotUpdatedAt===t.latestSnapshotUpdatedAt}function Cve(e,t){if(e.size!==t.size)return!1;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function wve(e){let t=bve;return BV(n=>{let r=!1,i=!1,a=!1,o=!1,s=null,c=null;for(let t of n(e.catalogValueAtom).entries.keys()){let l=n(e.shellStateValueAtom(t));if(i||=l.status===`synchronizing`,a||=l.status===`cached`,o||=l.status===`live`,s===null&&(s=kr(l.error)),Cr(l.snapshot))continue;r=!0;let u=l.snapshot.value.updatedAt;(c===null||u>c)&&(c=u)}let l={hasSnapshot:r,hasSynchronizingShell:i,hasCachedShell:a,hasLiveShell:o,firstError:s,latestSnapshotUpdatedAt:c};return Sve(t,l)||(t=l),t}).pipe(oH(`environment-shell-summary`))}function Tve(e){let t=xve;return BV(n=>{let r=new Map;for(let t of n(e.catalogValueAtom).entries.keys()){let i=n(e.serverConfigValueAtom(t));i!==null&&r.set(t,i)}return Cve(t,r)||(t=r),t}).pipe(oH(`environment-server-configs`))}function Eve(e){let t=iH(t=>e.atom(yve(t),{initialValue:$8}));return{stateAtom:t,stateValueAtom:iH(e=>BV(n=>Er(tV(n(t(e))),()=>$8)).pipe(oH(`environment-shell-state-value:${e}`)))}}var Dve=[{key:`mod+b`,command:`sidebar.toggle`},{key:`mod+j`,command:`terminal.toggle`},{key:`mod+alt+b`,command:`rightPanel.toggle`},{key:`mod+d`,command:`terminal.split`,when:`terminalFocus`},{key:`mod+shift+d`,command:`terminal.splitVertical`,when:`terminalFocus`},{key:`mod+n`,command:`terminal.new`,when:`terminalFocus`},{key:`mod+w`,command:`terminal.close`,when:`terminalFocus`},{key:`mod+d`,command:`diff.toggle`,when:`!terminalFocus`},{key:`mod+shift+j`,command:`preview.toggle`},{key:`mod+r`,command:`preview.refresh`,when:`previewFocus`},{key:`mod+l`,command:`preview.focusUrl`,when:`previewFocus`},{key:`mod+=`,command:`preview.zoomIn`,when:`previewFocus`},{key:`mod++`,command:`preview.zoomIn`,when:`previewFocus`},{key:`mod+-`,command:`preview.zoomOut`,when:`previewFocus`},{key:`mod+0`,command:`preview.resetZoom`,when:`previewFocus`},{key:`mod+k`,command:`commandPalette.toggle`,when:`!terminalFocus`},{key:`mod+s`,command:`composer.stash`,when:`!terminalFocus`},{key:`mod+n`,command:`chat.new`,when:`!terminalFocus`},{key:`mod+shift+o`,command:`chat.new`,when:`!terminalFocus`},{key:`mod+shift+n`,command:`chat.newLocal`,when:`!terminalFocus`},{key:`mod+shift+m`,command:`modelPicker.toggle`,when:`!terminalFocus`},{key:`mod+o`,command:`editor.openFavorite`},{key:`mod+shift+[`,command:`thread.previous`},{key:`mod+shift+]`,command:`thread.next`},...VM.map((e,t)=>({key:`mod+${t+1}`,command:e})),...HM.map((e,t)=>({key:`mod+${t+1}`,command:e,when:`modelPickerOpen`}))];function Ove(e){return e===`space`?` `:e===`esc`?`escape`:e}function kve(e){let t=[...e.toLowerCase().split(`+`).map(e=>e.trim())],n=0;for(;t[t.length-1]===``;)n+=1,t.pop();if(n>0&&t.push(`+`),t.some(e=>e.length===0)||t.length===0)return null;let r=null,i=!1,a=!1,o=!1,s=!1,c=!1;for(let e of t)switch(e){case`cmd`:case`meta`:i=!0;break;case`ctrl`:case`control`:a=!0;break;case`shift`:o=!0;break;case`alt`:case`option`:s=!0;break;case`mod`:c=!0;break;default:if(r!==null)return null;r=Ove(e)}return r===null?null:{key:r,metaKey:i,ctrlKey:a,shiftKey:o,altKey:s,modKey:c}}function Ave(e){let t=[],n=0;for(;n<e.length;){let r=e[n];if(!r)break;if(/\s/.test(r)){n+=1;continue}if(e.startsWith(`&&`,n)){t.push({type:`and`}),n+=2;continue}if(e.startsWith(`||`,n)){t.push({type:`or`}),n+=2;continue}if(r===`!`){t.push({type:`not`}),n+=1;continue}if(r===`(`){t.push({type:`lparen`}),n+=1;continue}if(r===`)`){t.push({type:`rparen`}),n+=1;continue}let i=/^[A-Za-z_][A-Za-z0-9_.-]*/.exec(e.slice(n));if(!i)return null;t.push({type:`identifier`,value:i[0]}),n+=i[0].length}return t}function t5(e){let t=Ave(e);if(!t||t.length===0)return null;let n=0,r=e=>{if(e>64)return null;let r=t[n];if(!r)return null;if(r.type===`identifier`)return n+=1,{type:`identifier`,name:r.value};if(r.type===`lparen`){n+=1;let r=o(e+1),i=t[n];return!r||!i||i.type!==`rparen`?null:(n+=1,r)}return null},i=e=>{let i=0;for(;t[n]?.type===`not`;)if(n+=1,i+=1,i>64)return null;let a=r(e);if(!a)return null;for(;i>0;)a={type:`not`,node:a},--i;return a},a=e=>{let r=i(e);if(!r)return null;for(;t[n]?.type===`and`;){n+=1;let t=i(e);if(!t)return null;r={type:`and`,left:r,right:t}}return r},o=e=>{let r=a(e);if(!r)return null;for(;t[n]?.type===`or`;){n+=1;let t=a(e);if(!t)return null;r={type:`or`,left:r,right:t}}return r},s=o(0);return!s||n!==t.length?null:s}function jve(e){let t=kve(e.key);if(!t)return null;if(e.when!==void 0){let n=t5(e.when);return n?{command:e.command,shortcut:t,whenAst:n}:null}return{command:e.command,shortcut:t}}function Mve(e){let t=[];for(let n of e){let e=jve(n);e&&t.push(e)}return t.slice(-256)}var n5=Mve(Dve),r5=Object.freeze({isReady:!1,entries:new Map});function Nve(e){let t=fK(),n={mode:`serial`,key:()=>`environment-catalog`},r=e.atom(FC(tK.pipe(Zd(e=>bj(e.entries).pipe(IC(e=>({isReady:!0,entries:e})))))),{initialValue:r5}),i=BV(e=>Er(tV(e(r)),()=>r5)).pipe(oH(`environment-catalog-value`)),a=e.atom(FC(tK.pipe(Zd(e=>bj(e.networkStatus)))),{initialValue:`unknown`});return{catalogAtom:r,catalogValueAtom:i,networkStatusAtom:a,networkStatusValueAtom:BV(e=>Er(tV(e(a)),()=>`unknown`)).pipe(oH(`environment-network-status-value`)),stateAtom:iH(t=>e.atom(DK(t,FC(XG.pipe(Zd(e=>bj(e.state))))),{initialValue:EW})),register:bK(e,{label:`environment-catalog:register`,scheduler:t,concurrency:n,execute:e=>tK.pipe(Gd(t=>t.register(e)))}),remove:bK(e,{label:`environment-catalog:remove`,scheduler:t,concurrency:n,execute:e=>tK.pipe(Gd(t=>t.remove(e)))}),retryNow:bK(e,{label:`environment-catalog:retry-now`,scheduler:t,concurrency:n,execute:e=>tK.pipe(Gd(t=>t.retryNow(e)))})}}var i5=`token`,Pve=`host`,Fve=`label`,Ive=new Set([`http:`,`https:`,`ws:`,`wss:`]),a5=e=>new URLSearchParams(e.hash.startsWith(`#`)?e.hash.slice(1):e.hash),o5=class extends G()(`RemoteBackendUrlMissingError`,{}){get message(){return`Enter a backend URL.`}},s5=class extends G()(`RemotePairingUrlInvalidError`,{cause:F(Dy()),protocol:F(L)}){get message(){return`Pairing URL is invalid.`}},c5=class extends G()(`RemoteBackendUrlInvalidError`,{source:H([`direct-host`,`hosted-pairing-host`]),cause:F(Dy()),protocol:F(L)}){get message(){return`Backend URL is invalid.`}},l5=class extends G()(`RemotePairingTokenMissingError`,{host:L}){get message(){return`Pairing URL is missing its token.`}},u5=class extends G()(`RemotePairingCodeMissingError`,{host:L}){get message(){return`Enter a pairing code.`}};V([o5,s5,c5,l5,u5]);var d5=e=>Ive.has(e.protocol),f5=(e,t)=>{let n=e.trim();if(!n)throw new o5;let r=n.replace(/^\/+/,``),i=/^[a-zA-Z][a-zA-Z\d+-]*:\/\//.test(r)?r:`https://${r}`,a;try{a=new URL(i)}catch(e){throw new c5({source:t,cause:e})}if(!d5(a))throw new c5({source:t,protocol:a.protocol});return a.pathname=`/`,a.search=``,a.hash=``,a},p5=e=>{let t=new URL(e.toString());return t.protocol===`ws:`?t.protocol=`http:`:t.protocol===`wss:`&&(t.protocol=`https:`),t.pathname=`/`,t.search=``,t.hash=``,t.toString()},m5=e=>{let t=new URL(e.toString());return t.protocol===`http:`?t.protocol=`ws:`:t.protocol===`https:`&&(t.protocol=`wss:`),t.pathname=`/`,t.search=``,t.hash=``,t.toString()},h5=e=>{let t=a5(e).get(i5)?.trim()??``;if(t.length>0)return t;let n=e.searchParams.get(i5)?.trim()??``;return n.length>0?n:null},Lve=e=>{let t=new URL(e.toString()),n=a5(t);return n.has(i5)&&(n.delete(i5),t.hash=n.toString()),t.searchParams.delete(i5),t},g5=(e,t)=>{let n=new URL(e.toString());return n.searchParams.delete(i5),n.hash=new URLSearchParams([[i5,t]]).toString(),n},Rve=e=>{let t=e.searchParams.get(Pve)?.trim()??``,n=h5(e)?.trim()??``,r=e.searchParams.get(Fve)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}},zve=e=>{let t=e.pairingUrl?.trim()??``;if(t.length>0){let e;try{e=new URL(t)}catch(e){throw new s5({cause:e})}if(!d5(e))throw new s5({protocol:e.protocol});let n=Rve(e);if(n){let e=f5(n.host,`hosted-pairing-host`);return{credential:n.token,httpBaseUrl:p5(e),wsBaseUrl:m5(e)}}let r=h5(e)??``;if(!r)throw new l5({host:e.host});return{credential:r,httpBaseUrl:p5(e),wsBaseUrl:m5(e)}}let n=e.host?.trim()??``,r=e.pairingCode?.trim()??``;if(!n)throw new o5;let i=f5(n,`direct-host`);if(!r)throw new u5({host:i.host});return{credential:r,httpBaseUrl:p5(i),wsBaseUrl:m5(i)}},_5=class extends Ir()(`@p4code/client-runtime/connection/onboarding/ConnectionOnboarding`){},Bve=fp(`clientRuntime.connection.onboarding.resolvePairingTarget`)(function*(e){return yield*Ud({try:()=>zve(e),catch:e=>new wW({reason:`configuration`,detail:e instanceof Error?e.message:`The pairing details are invalid.`})})}),Vve=fp(`clientRuntime.connection.onboarding.preparePairingRegistration`)(function*(e){let t=yield*Bve(e),n=yield*pW,r=yield*jB({httpBaseUrl:t.httpBaseUrl}).pipe(of(oG)),i=yield*eG({httpBaseUrl:t.httpBaseUrl,credential:t.credential,scopes:n.scopes,clientMetadata:n.metadata}).pipe(of(oG)),a=`bearer:${r.environmentId}`;return new PW({target:new vW({environmentId:r.environmentId,label:r.label,connectionId:a}),profile:new OW({connectionId:a,environmentId:r.environmentId,label:r.label,httpBaseUrl:t.httpBaseUrl,wsBaseUrl:t.wsBaseUrl}),credential:new jW({token:i.access_token})})}),Hve=fp(`clientRuntime.connection.onboarding.registerPairingConnection`)(function*(e){let t=yield*Vve(e);return yield*(yield*tK).register(t),t.target.environmentId}),Uve=bv(jW),Wve=bv(OW),Gve=fp(`clientRuntime.connection.onboarding.updateBearerConnection`)(function*(e){let t=yield*tK,n=yield*LW,r=(yield*xj(t.entries)).get(e.environmentId),i=r?.target._tag===`BearerConnectionTarget`?yield*n.get(r.target.connectionId):br(),a=yield*Kve({input:e,entry:Or(r),credential:i});yield*t.register(a)}),Kve=fp(`clientRuntime.connection.onboarding.prepareBearerConnectionUpdate`)(function*(e){let t=kr(e.entry);if(t==null||t.target._tag!==`BearerConnectionTarget`||Cr(t.profile)||!Wve(t.profile.value))return yield*new wW({reason:`configuration`,detail:`Only saved bearer environments can be edited.`});let n=e.credential;if(Cr(n)||!Uve(n.value))return yield*new wW({reason:`authentication`,detail:`The saved bearer credential is unavailable.`});let r=e.input.label.trim();if(r===``)return yield*new wW({reason:`configuration`,detail:`Environment label cannot be empty.`});let i=yield*Ud({try:()=>Op(e.input.httpBaseUrl),catch:e=>new wW({reason:`configuration`,detail:e instanceof Error?e.message:`The environment URL is invalid.`})}),a=t.target.connectionId;return new PW({target:new vW({environmentId:e.input.environmentId,label:r,connectionId:a}),profile:new OW({connectionId:a,environmentId:e.input.environmentId,label:r,httpBaseUrl:i,wsBaseUrl:kp(i)}),credential:n.value})}),qve=fp(`clientRuntime.connection.onboarding.prepareSshRegistration`)(function*(e){let t=yield*(yield*hW).provision(e.target),n=`ssh:${t.environmentId}`,r=e.label?.trim()||t.label||t.bootstrap.target.alias;return new FW({target:new yW({environmentId:t.environmentId,label:r,connectionId:n}),profile:new kW({connectionId:n,environmentId:t.environmentId,label:r,target:t.bootstrap.target})})}),Jve=fp(`clientRuntime.connection.onboarding.registerSshConnection`)(function*(e){let t=yield*qve(e);return yield*(yield*tK).register(t),t.target.environmentId}),Yve=fu(_5,zd(function*(){let e=yield*tK,t=yield*pW,n=yield*CO,r=yield*hW,i=yield*LW;return _5.of({registerPairing:r=>Hve(r).pipe(wf(tK,e),wf(pW,t),wf(CO,n)),registerSsh:t=>Jve(t).pipe(wf(tK,e),wf(hW,r)),updateBearer:t=>Gve(t).pipe(wf(tK,e),wf(LW,i))})})),v5=class extends Ir()(`@p4code/client-runtime/platform/source/PlatformConnectionSource`){},Xve=vG.pipe(bu(lG)),Zve=TG.pipe(bu(_u(Xve,CG))),y5=nK.pipe(bu(Zve)),Qve=_u(y5,Yve.pipe(bu(y5))),$ve=hu(zd(function*(){let e=yield*tK,t=yield*v5;yield*e.start,yield*t.registrations.pipe(sw(e.reconcilePlatform),Zf)}).pipe(qf(`clientRuntime.connection.application.start`))).pipe(xu(Qve));function eye(e){switch(e.phase){case`available`:return{phase:`available`,error:null,traceId:null};case`offline`:return{phase:`offline`,error:null,traceId:null};case`connecting`:return{phase:e.attempt<=1&&e.lastFailure===null?`connecting`:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`connected`:return{phase:`connected`,error:null,traceId:null};case`backoff`:return{phase:`reconnecting`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null};case`blocked`:return{phase:`error`,error:e.lastFailure?.message??null,traceId:e.lastFailure?.traceId??null}}}function b5(e){switch(e.phase){case`available`:return`Available`;case`offline`:return`Offline`;case`connecting`:return`Connecting...`;case`reconnecting`:return e.error?`Failed to connect. Reconnecting... Reason: ${e.error}`:`Reconnecting...`;case`connected`:return`Connected`;case`error`:return e.error?`Connection failed. Reason: ${e.error}`:`Connection failed`}}function tye(e){return e.phase===`reconnecting`&&e.error?`Failed to connect. Reconnecting...`:b5({...e,error:null})}function nye(e){return eye(e)}function rye(e){switch(e.target._tag){case`PrimaryConnectionTarget`:return e.target.httpBaseUrl;case`BearerConnectionTarget`:return wr(e.profile)&&e.profile.value._tag===`BearerConnectionProfile`?e.profile.value.httpBaseUrl:null;case`SshConnectionTarget`:return wr(e.profile)&&e.profile.value._tag===`SshConnectionProfile`?`${e.profile.value.target.username}@${e.profile.value.target.hostname}`:null}}var iye=6e3,aye=fp(`clientRuntime.state.fetchEnvironmentThreadSnapshot`)(function*(e){let t=Ap(e.prepared.httpBaseUrl,`/api/orchestration/threads/${e.threadId}`),n=yield*DB(e.prepared.httpBaseUrl),r=Z8(e.prepared.httpAuthorization);return yield*kB(t,e.timeoutMs??iye,X8(e.prepared.httpAuthorization,n.orchestration.threadSnapshot({params:{threadId:e.threadId},headers:r})))}),x5=class extends Ir()(`@p4code/client-runtime/state/threadSnapshotHttp/ThreadSnapshotLoader`){},oye=fu(x5,zd(function*(){let e=yield*CO;return x5.of({load:(t,n)=>aye({prepared:t,threadId:n}).pipe(Zd(xr),wf(CO,e),rf({EnvironmentResourceNotFoundError:()=>gp(`Thread snapshot not found over HTTP; deferring to the socket subscription.`).pipe(_p({threadId:n}),Qd(br()))}),af(e=>mp(`Could not load the thread snapshot over HTTP; using the socket snapshot instead.`).pipe(_p({threadId:n,cause:Fu(e)}),Qd(br()))))})})),sye=class extends G()(`InvalidScopedProjectKeyError`,{key:L}){get message(){return`Invalid scoped project atom key: ${JSON.stringify(this.key)}.`}},cye=class extends G()(`InvalidScopedThreadKeyError`,{key:L}){get message(){return`Invalid scoped thread atom key: ${JSON.stringify(this.key)}.`}},lye=class extends G()(`InvalidScopedProjectRefCollectionKeyError`,{key:L,cause:Dy()}){get message(){return`Invalid scoped project reference collection atom key: ${JSON.stringify(this.key)}.`}},uye=Tv(B(Hv([L,L])));function dye(e){return`${e.environmentId}\u0000${e.projectId}`}function S5(e){return`${e.environmentId}\u0000${e.threadId}`}function fye(e){return JSON.stringify(e.map(e=>[e.environmentId,e.projectId]))}function pye(e){let t=e.indexOf(`\0`);if(t<0)throw new sye({key:e});return{environmentId:cb.make(e.slice(0,t)),projectId:ob.make(e.slice(t+1))}}function mye(e){let t;try{t=uye(JSON.parse(e))}catch(t){throw new lye({key:e,cause:t})}return t.map(([e,t])=>({environmentId:cb.make(e),projectId:ob.make(t)}))}function C5(e){let t=e.indexOf(`\0`);if(t<0)throw new cye({key:e});return{environmentId:cb.make(e.slice(0,t)),threadId:Y.make(e.slice(t+1))}}function hye(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.projectId===t[n]?.projectId)}function w5(e,t){return e.length===t.length&&e.every((e,n)=>e.environmentId===t[n]?.environmentId&&e.threadId===t[n]?.threadId)}function T5(e,t){return e.length===t.length&&e.every((e,n)=>e===t[n])}var gye=ur(fr(or,e=>e.createdAt),fr(or,e=>e.id)),E5=fr(sr,e=>e.checkpointTurnCount??2**53-1),_ye=dr([fr(sr,e=>e.sequence??2**53-1),fr(or,e=>e.createdAt),fr(or,e=>e.id)]);function vye(e,t){switch(t.type){case`project.created`:case`project.meta-updated`:case`project.deleted`:return{kind:`unchanged`};case`thread.created`:return{kind:`updated`,thread:{id:t.payload.threadId,projectId:t.payload.projectId,title:t.payload.title,modelSelection:t.payload.modelSelection,runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,compressMode:t.payload.compressMode,unpromptedSubagents:t.payload.unpromptedSubagents,branch:t.payload.branch,worktreePath:t.payload.worktreePath,latestTurn:null,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt,archivedAt:null,settledOverride:null,settledAt:null,snoozedUntil:null,snoozedAt:null,deletedAt:null,messages:[],proposedPlans:[],activities:[],checkpoints:[],session:null}};case`thread.deleted`:return{kind:`deleted`};case`thread.archived`:return{kind:`updated`,thread:{...e,archivedAt:t.payload.archivedAt,updatedAt:t.payload.updatedAt}};case`thread.unarchived`:return{kind:`updated`,thread:{...e,archivedAt:null,updatedAt:t.payload.updatedAt}};case`thread.settled`:return{kind:`updated`,thread:{...e,settledOverride:`settled`,settledAt:t.payload.settledAt,updatedAt:t.payload.updatedAt}};case`thread.unsettled`:return{kind:`updated`,thread:{...e,settledOverride:t.payload.reason===`user`?`active`:null,settledAt:null,updatedAt:t.payload.updatedAt}};case`thread.snoozed`:return{kind:`updated`,thread:{...e,snoozedUntil:t.payload.snoozedUntil,snoozedAt:t.payload.snoozedAt,updatedAt:t.payload.updatedAt}};case`thread.unsnoozed`:return{kind:`updated`,thread:{...e,snoozedUntil:null,snoozedAt:null,updatedAt:t.payload.updatedAt}};case`thread.meta-updated`:return{kind:`updated`,thread:{...e,...t.payload.title===void 0?{}:{title:t.payload.title},...t.payload.modelSelection===void 0?{}:{modelSelection:t.payload.modelSelection},...t.payload.branch===void 0?{}:{branch:t.payload.branch},...t.payload.worktreePath===void 0?{}:{worktreePath:t.payload.worktreePath},updatedAt:t.payload.updatedAt}};case`thread.runtime-mode-set`:return{kind:`updated`,thread:{...e,runtimeMode:t.payload.runtimeMode,updatedAt:t.payload.updatedAt}};case`thread.interaction-mode-set`:return{kind:`updated`,thread:{...e,interactionMode:t.payload.interactionMode,updatedAt:t.payload.updatedAt}};case`thread.compress-mode-set`:return{kind:`updated`,thread:{...e,compressMode:t.payload.compressMode,updatedAt:t.payload.updatedAt}};case`thread.unprompted-subagents-set`:return{kind:`updated`,thread:{...e,unpromptedSubagents:t.payload.unpromptedSubagents,updatedAt:t.payload.updatedAt}};case`thread.turn-start-requested`:return{kind:`updated`,thread:{...e,...t.payload.modelSelection===void 0?{}:{modelSelection:t.payload.modelSelection},runtimeMode:t.payload.runtimeMode,interactionMode:t.payload.interactionMode,compressMode:t.payload.compressMode,unpromptedSubagents:t.payload.unpromptedSubagents,updatedAt:t.occurredAt}};case`thread.turn-interrupt-requested`:{if(t.payload.turnId===void 0)return{kind:`unchanged`};let n=e.latestTurn;return n===null||n.turnId!==t.payload.turnId?{kind:`unchanged`}:{kind:`updated`,thread:{...e,latestTurn:{...n,state:`interrupted`,startedAt:n.startedAt??t.payload.createdAt,completedAt:n.completedAt??t.payload.createdAt},updatedAt:t.occurredAt}}}case`thread.message-sent`:{let n={id:t.payload.messageId,role:t.payload.role,text:t.payload.text,...t.payload.attachments===void 0?{}:{attachments:t.payload.attachments},turnId:t.payload.turnId,streaming:t.payload.streaming,createdAt:t.payload.createdAt,updatedAt:t.payload.updatedAt},r=e.messages.find(e=>e.id===n.id)?na(e.messages,e=>e.id===n.id?{...e,text:n.streaming?`${e.text}${n.text}`:n.text.length>0?n.text:e.text,streaming:n.streaming,...n.turnId===void 0?{}:{turnId:n.turnId},...n.streaming?{}:{updatedAt:n.updatedAt},...n.attachments===void 0?{}:{attachments:n.attachments}}:e):Ji(e.messages,n),i=t.payload.turnId!==null&&e.session?.status===`running`&&e.session.activeTurnId===t.payload.turnId,a=!t.payload.streaming&&!i,o=t.payload.role===`assistant`&&t.payload.turnId!==null&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?{turnId:t.payload.turnId,state:a?e.latestTurn?.state===`interrupted`?`interrupted`:e.latestTurn?.state===`error`?`error`:`completed`:`running`,requestedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.requestedAt:t.payload.createdAt,startedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.startedAt??t.payload.createdAt:t.payload.createdAt,completedAt:a?t.payload.updatedAt:e.latestTurn?.turnId===t.payload.turnId?e.latestTurn.completedAt??null:null,assistantMessageId:t.payload.messageId}:e.latestTurn,s=t.payload.role===`assistant`&&t.payload.turnId!==null?bye(e.checkpoints,t.payload.turnId,t.payload.messageId):e.checkpoints;return{kind:`updated`,thread:{...e,messages:r,checkpoints:s,latestTurn:o,updatedAt:t.occurredAt}}}case`thread.session-set`:{let n=yye(t.payload.session.status),r=t.payload.session.status===`running`&&t.payload.session.activeTurnId!==null?{turnId:t.payload.session.activeTurnId,state:`running`,requestedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.requestedAt:t.payload.session.updatedAt,startedAt:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.startedAt??t.payload.session.updatedAt:t.payload.session.updatedAt,completedAt:null,assistantMessageId:e.latestTurn?.turnId===t.payload.session.activeTurnId?e.latestTurn.assistantMessageId:null}:e.latestTurn!==null&&e.latestTurn.state===`running`&&n!==null?{...e.latestTurn,state:n,completedAt:t.payload.session.updatedAt}:e.latestTurn;return{kind:`updated`,thread:{...e,session:t.payload.session,latestTurn:r,updatedAt:t.occurredAt}}}case`thread.session-stop-requested`:return e.session===null?{kind:`unchanged`}:{kind:`updated`,thread:{...e,session:{...e.session,status:`stopped`,activeTurnId:null,updatedAt:t.payload.createdAt},updatedAt:t.occurredAt}};case`thread.proposed-plan-upserted`:{let n=t.payload.proposedPlan,r=Te(e.proposedPlans,ia(e=>e.id!==n.id),Ji(n),$i(gye));return{kind:`updated`,thread:{...e,proposedPlans:r,updatedAt:t.occurredAt}}}case`thread.turn-diff-completed`:{let n={turnId:t.payload.turnId,checkpointTurnCount:t.payload.checkpointTurnCount,checkpointRef:t.payload.checkpointRef,status:t.payload.status,files:t.payload.files,assistantMessageId:t.payload.assistantMessageId,completedAt:t.payload.completedAt},r=e.checkpoints.find(e=>e.turnId===n.turnId);if(r&&r.status!==`missing`&&n.status===`missing`)return{kind:`unchanged`};let i=Te(e.checkpoints,ia(e=>e.turnId!==n.turnId),Ji(n),$i(E5)),a=!(e.session?.status===`running`&&e.session.activeTurnId===t.payload.turnId)&&(e.latestTurn===null||e.latestTurn.turnId===t.payload.turnId)?{turnId:t.payload.turnId,state:D5(t.payload.status),requestedAt:e.latestTurn?.requestedAt??t.payload.completedAt,startedAt:e.latestTurn?.startedAt??t.payload.completedAt,completedAt:t.payload.completedAt,assistantMessageId:t.payload.assistantMessageId}:e.latestTurn;return{kind:`updated`,thread:{...e,checkpoints:i,latestTurn:a,updatedAt:t.occurredAt}}}case`thread.reverted`:{let n=Te(e.checkpoints,ia(e=>e.checkpointTurnCount!==void 0&&e.checkpointTurnCount<=t.payload.turnCount),$i(E5)),r=new Set(na(n,e=>e.turnId)),i=xye(e.messages,r),a=Te(e.proposedPlans,ia(e=>e.turnId===null||r.has(e.turnId))),o=Te(e.activities,ia(e=>e.turnId===null||r.has(e.turnId))),s=n.at(-1)??null;return{kind:`updated`,thread:{...e,checkpoints:n,messages:i,proposedPlans:a,activities:o,latestTurn:s===null?null:{turnId:s.turnId,state:D5(s.status),requestedAt:s.completedAt,startedAt:s.completedAt,completedAt:s.completedAt,assistantMessageId:s.assistantMessageId??null},updatedAt:t.occurredAt}}}case`thread.activity-appended`:{let n=Te(e.activities,ia(e=>e.id!==t.payload.activity.id),Ji(t.payload.activity),$i(_ye));return{kind:`updated`,thread:{...e,activities:n,updatedAt:t.occurredAt}}}case`thread.approval-response-requested`:case`thread.user-input-response-requested`:case`thread.checkpoint-revert-requested`:return{kind:`unchanged`}}return{kind:`unchanged`}}function yye(e){switch(e){case`idle`:case`ready`:return`completed`;case`error`:return`error`;case`interrupted`:case`stopped`:return`interrupted`;case`starting`:case`running`:return null}}function D5(e){switch(e){case`ready`:return`completed`;case`error`:return`error`;case`missing`:return`completed`}}function bye(e,t,n){return na(e,e=>e.turnId===t?{...e,assistantMessageId:n}:e)}function xye(e,t){return ia(e,e=>e.role===`system`||e.turnId===null?!0:t.has(e.turnId))}var O5=5*6e4,k5={data:br(),status:`empty`,error:br()},A5=``,Sye=or;function Cye(e){return Te(e,$i(Sye),e=>e.join(A5))}function wye(e){return e.length===0?[]:Te(e.split(A5),na(e=>cb.make(e)))}function Tye(e){return iH(t=>BV(n=>{let r=[],i=null,a=!1;for(let o of wye(t)){let t=n(e.getSnapshotAtom(o));a||=t.waiting;let s=kr(tV(t));s!==null&&r.push({environmentId:o,snapshot:s}),i===null&&t._tag===`Failure`&&(i=`Failed to load archived threads.`)}return{snapshots:r,error:i,isLoading:a}}).pipe(oH(`${e.labelPrefix}:${t}`)))}function j5(e){return zd(function*(){return e.commandId===void 0?yield*(yield*sj).randomUUIDv4.pipe(sf,Zd(ub.make)):e.commandId})}function M5(e){return Dd({commandId:j5(e),createdAt:e.createdAt===void 0?em.pipe(Zd(om)):M(e.createdAt)})}function N5(e){return sK(Vk.dispatchCommand,e)}var Eye=fp(`EnvironmentCommands.createProject`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`project.create`,commandId:t.commandId,createdAt:t.createdAt})}),Dye=fp(`EnvironmentCommands.updateProject`)(function*(e){return yield*N5({...e,type:`project.meta.update`,commandId:yield*j5(e)})}),Oye=fp(`EnvironmentCommands.deleteProject`)(function*(e){return yield*N5({...e,type:`project.delete`,commandId:yield*j5(e)})}),kye=fp(`EnvironmentCommands.createThread`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.create`,commandId:t.commandId,createdAt:t.createdAt})}),Aye=fp(`EnvironmentCommands.deleteThread`)(function*(e){return yield*N5({...e,type:`thread.delete`,commandId:yield*j5(e)})}),jye=fp(`EnvironmentCommands.archiveThread`)(function*(e){return yield*N5({...e,type:`thread.archive`,commandId:yield*j5(e)})}),Mye=fp(`EnvironmentCommands.unarchiveThread`)(function*(e){return yield*N5({...e,type:`thread.unarchive`,commandId:yield*j5(e)})}),Nye=fp(`EnvironmentCommands.settleThread`)(function*(e){return yield*N5({...e,type:`thread.settle`,commandId:yield*j5(e)})}),Pye=fp(`EnvironmentCommands.unsettleThread`)(function*(e){return yield*N5({...e,type:`thread.unsettle`,commandId:yield*j5(e)})}),Fye=fp(`EnvironmentCommands.snoozeThread`)(function*(e){return yield*N5({...e,type:`thread.snooze`,commandId:yield*j5(e)})}),Iye=fp(`EnvironmentCommands.unsnoozeThread`)(function*(e){return yield*N5({...e,type:`thread.unsnooze`,commandId:yield*j5(e)})}),Lye=fp(`EnvironmentCommands.updateThreadMetadata`)(function*(e){return yield*N5({...e,type:`thread.meta.update`,commandId:yield*j5(e)})}),Rye=fp(`EnvironmentCommands.setThreadRuntimeMode`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.runtime-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),zye=fp(`EnvironmentCommands.setThreadInteractionMode`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.interaction-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),Bye=fp(`EnvironmentCommands.setThreadCompressMode`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.compress-mode.set`,commandId:t.commandId,createdAt:t.createdAt})}),Vye=fp(`EnvironmentCommands.setThreadUnpromptedSubagents`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.unprompted-subagents.set`,commandId:t.commandId,createdAt:t.createdAt})}),Hye=fp(`EnvironmentCommands.startThreadTurn`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.turn.start`,commandId:t.commandId,createdAt:t.createdAt})}),Uye=fp(`EnvironmentCommands.interruptThreadTurn`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.turn.interrupt`,commandId:t.commandId,createdAt:t.createdAt})}),Wye=fp(`EnvironmentCommands.respondToThreadApproval`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.approval.respond`,commandId:t.commandId,createdAt:t.createdAt})}),Gye=fp(`EnvironmentCommands.respondToThreadUserInput`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.user-input.respond`,commandId:t.commandId,createdAt:t.createdAt})}),Kye=fp(`EnvironmentCommands.revertThreadCheckpoint`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.checkpoint.revert`,commandId:t.commandId,createdAt:t.createdAt})}),qye=fp(`EnvironmentCommands.stopThreadSession`)(function*(e){let t=yield*M5(e);return yield*N5({...e,type:`thread.session.stop`,commandId:t.commandId,createdAt:t.createdAt})});function Jye(e){let t=fK(),n={mode:`serial`,key:({environmentId:e,input:t})=>JSON.stringify([e,t.threadId])};return{create:AK(e,{label:`environment-data:commands:thread:create`,execute:e=>kye(e),scheduler:t,concurrency:n}),delete:AK(e,{label:`environment-data:commands:thread:delete`,execute:e=>Aye(e),scheduler:t,concurrency:n}),archive:AK(e,{label:`environment-data:commands:thread:archive`,execute:e=>jye(e),scheduler:t,concurrency:n}),unarchive:AK(e,{label:`environment-data:commands:thread:unarchive`,execute:e=>Mye(e),scheduler:t,concurrency:n}),settle:AK(e,{label:`environment-data:commands:thread:settle`,execute:e=>Nye(e),scheduler:t,concurrency:n}),unsettle:AK(e,{label:`environment-data:commands:thread:unsettle`,execute:e=>Pye(e),scheduler:t,concurrency:n}),snooze:AK(e,{label:`environment-data:commands:thread:snooze`,execute:e=>Fye(e),scheduler:t,concurrency:n}),unsnooze:AK(e,{label:`environment-data:commands:thread:unsnooze`,execute:e=>Iye(e),scheduler:t,concurrency:n}),updateMetadata:AK(e,{label:`environment-data:commands:thread:update-metadata`,execute:e=>Lye(e),scheduler:t,concurrency:n}),setRuntimeMode:AK(e,{label:`environment-data:commands:thread:set-runtime-mode`,execute:e=>Rye(e),scheduler:t,concurrency:n}),setInteractionMode:AK(e,{label:`environment-data:commands:thread:set-interaction-mode`,execute:e=>zye(e),scheduler:t,concurrency:n}),setCompressMode:AK(e,{label:`environment-data:commands:thread:set-compress-mode`,execute:e=>Bye(e),scheduler:t,concurrency:n}),setUnpromptedSubagents:AK(e,{label:`environment-data:commands:thread:set-unprompted-subagents`,execute:e=>Vye(e),scheduler:t,concurrency:n}),startTurn:AK(e,{label:`environment-data:commands:thread:start-turn`,execute:e=>Hye(e),scheduler:t,concurrency:n}),interruptTurn:AK(e,{label:`environment-data:commands:thread:interrupt-turn`,execute:e=>Uye(e),scheduler:t,concurrency:n}),respondToApproval:AK(e,{label:`environment-data:commands:thread:respond-to-approval`,execute:e=>Wye(e),scheduler:t,concurrency:n}),respondToUserInput:AK(e,{label:`environment-data:commands:thread:respond-to-user-input`,execute:e=>Gye(e),scheduler:t,concurrency:n}),revertCheckpoint:AK(e,{label:`environment-data:commands:thread:revert-checkpoint`,execute:e=>Kye(e),scheduler:t,concurrency:n}),stopSession:AK(e,{label:`environment-data:commands:thread:stop-session`,execute:e=>qye(e),scheduler:t,concurrency:n})}}var Yye=Object.freeze([]),Xye=Object.freeze([]),Zye=Object.freeze([]),Qye=Object.freeze([]);function $ye(e,t){return e===null||t===null||e.environmentId!==t.environmentId||e.id!==t.id?e:{...e,environmentId:t.environmentId,id:t.id,projectId:t.projectId,title:t.title,modelSelection:t.modelSelection,runtimeMode:t.runtimeMode,interactionMode:t.interactionMode,compressMode:t.compressMode,unpromptedSubagents:t.unpromptedSubagents,branch:t.branch,worktreePath:t.worktreePath,latestTurn:t.latestTurn,createdAt:t.createdAt,updatedAt:t.updatedAt,archivedAt:t.archivedAt,settledOverride:t.settledOverride,settledAt:t.settledAt,snoozedUntil:t.snoozedUntil,snoozedAt:t.snoozedAt,session:t.session}}function ebe(e){let t=iH(t=>{let n=C5(t);return BV(t=>Er(tV(t(e(n.environmentId,n.threadId))),()=>k5)).pipe(AV(O5),oH(`environment-thread-state-value:${t}`))}),n=iH(e=>{let n=C5(e),r=null,i=null;return BV(a=>{let o=kr(a(t(e)).data);return o===r?i:(r=o,i=o===null?null:mve(n.environmentId,o),i)}).pipe(AV(O5),oH(`environment-thread-detail:${e}`))}),r=iH(e=>BV(n=>n(t(e)).status).pipe(AV(O5),oH(`environment-thread-status:${e}`))),i=iH(e=>BV(n=>kr(n(t(e)).error)).pipe(AV(O5),oH(`environment-thread-error:${e}`))),a=iH(e=>BV(t=>t(n(e))?.messages??Yye).pipe(AV(O5),oH(`environment-thread-messages:${e}`))),o=iH(e=>BV(t=>t(n(e))?.activities??Xye).pipe(AV(O5),oH(`environment-thread-activities:${e}`))),s=iH(e=>BV(t=>t(n(e))?.proposedPlans??Zye).pipe(AV(O5),oH(`environment-thread-proposed-plans:${e}`))),c=iH(e=>BV(t=>t(n(e))?.checkpoints??Qye).pipe(AV(O5),oH(`environment-thread-checkpoints:${e}`))),l=iH(e=>BV(t=>t(n(e))?.session??null).pipe(AV(O5),oH(`environment-thread-session:${e}`))),u=iH(e=>BV(t=>t(n(e))?.latestTurn??null).pipe(AV(O5),oH(`environment-thread-latest-turn:${e}`)));return{stateAtom:e=>t(S5(e)),detailAtom:e=>n(S5(e)),statusAtom:e=>r(S5(e)),errorAtom:e=>i(S5(e)),messagesAtom:e=>a(S5(e)),activitiesAtom:e=>o(S5(e)),proposedPlansAtom:e=>s(S5(e)),checkpointsAtom:e=>c(S5(e)),sessionAtom:e=>l(S5(e)),latestTurnAtom:e=>u(S5(e))}}var tbe=Object.freeze([]),nbe=Object.freeze([]),rbe=new Map,P5=new Map;function ibe(e){let t=iH(t=>BV(n=>n(e.snapshotAtom(t))?.threads??tbe).pipe(oH(`environment-threads:${t}`))),n=iH(e=>BV(n=>{let r=n(t(e));return r.length===0?rbe:new Map(r.map(e=>[e.id,e]))}).pipe(oH(`environment-thread-index:${e}`))),r=iH(e=>{let n=[];return BV(r=>{let i=r(t(e)).map(t=>({environmentId:e,threadId:t.id}));return w5(n,i)?n:(n=i,i)}).pipe(oH(`environment-thread-refs:${e}`))}),i=iH(e=>{let n=P5;return BV(r=>{let i=new Map;for(let n of r(t(e))){let t=i.get(n.projectId),r={environmentId:e,threadId:n.id};t===void 0?i.set(n.projectId,[r]):t.push(r)}if(i.size===0)return n=P5,n;let a=new Map;for(let[e,t]of i){let r=n.get(e);a.set(e,r!==void 0&&w5(r,t)?r:t)}return n=a,n}).pipe(oH(`environment-thread-refs-by-project:${e}`))}),a=iH(e=>{let t=C5(e),r=null,i=null;return BV(e=>{let a=e(n(t.environmentId)).get(t.threadId)??null;return a===r?i:(r=a,i=a===null?null:pve(t.environmentId,a),i)}).pipe(oH(`environment-thread-shell:${e}`))}),o=iH(e=>{let t=mye(e),n=[];return BV(e=>{let r=[],o=new Set;for(let n of t){let t=e(i(n.environmentId)).get(n.projectId)??nbe;for(let n of t){let t=S5(n);if(o.has(t))continue;o.add(t);let i=e(a(t));i!==null&&r.push(i)}}return T5(n,r)||(n=r),n}).pipe(oH(`environment-thread-shells-for-projects:${e}`))}),s=[],c=BV(t=>{let n=[];for(let i of t(e.catalogValueAtom).entries.keys())n.push(...t(r(i)));return w5(s,n)?s:(s=n,n)}).pipe(oH(`environment-thread-refs`)),l=[];return{environmentThreadsAtom:t,environmentThreadIndexAtom:n,environmentThreadRefsAtom:r,environmentThreadRefsByProjectAtom:i,threadRefsAtom:c,threadShellsAtom:BV(e=>{let t=e(c).flatMap(t=>{let n=e(a(S5(t)));return n===null?[]:[n]});return T5(l,t)||(l=t),l}).pipe(oH(`environment-thread-shell-list`)),threadShellsForProjectRefsAtom:e=>o(fye(e)),threadShellAtom:e=>a(S5(e))}}function F5(e){return wr(e)?`cached`:`empty`}function abe(e){let t=Mu(e);return t instanceof Error&&t.message.trim().length>0?t.message:`Could not synchronize the thread.`}function I5(e){let t=e.session?.status;return t!==`starting`&&t!==`running`}var obe=fp(`EnvironmentThreadState.make`)(function*(e){let t=yield*XG,n=yield*qW,r=yield*x5,i=yield*Sf(IG),a=t.target.environmentId,o=yield*n.loadThread(a,e).pipe(tf(t=>mp(`Could not load cached thread.`).pipe(_p({environmentId:a,threadId:e,error:t.message}),Qd(br())))),s=Nr(o,e=>e.thread),c=yield*yj({data:s,status:F5(s),error:br()}),l=yield*yj(Tr(o,{onNone:()=>0,onSome:e=>e.snapshotSequence})),u=yield*gO(!1),d=yield*Tx(1),f=fp(`EnvironmentThreadState.persist`)(function*(t){yield*n.saveThread(a,t).pipe(tf(t=>mp(`Could not persist the thread cache.`).pipe(_p({environmentId:a,threadId:e,error:t.message}))))});yield*jC(d).pipe(ZC(`500 millis`),sw(f),Zf);let p=wj(c,e=>e.status===`deleted`?e:{...e,status:`synchronizing`,error:br()}),m=wj(c,e=>e.status===`live`||e.status===`deleted`?e:{...e,status:`synchronizing`,error:br()}),h=zd(function*(){yield*vO(u,!1),yield*wj(c,e=>({...e,status:e.status===`deleted`?e.status:F5(e.data)}))}),g=e=>vO(u,!1).pipe(qd(wj(c,t=>({...t,status:t.status===`deleted`?t.status:F5(t.data),error:xr(abe(e))})))),_=fp(`EnvironmentThreadState.setThread`)(function*(e){let t=yield*_O(u);if(yield*Cj(c,{data:xr(e),status:t?`synchronizing`:`live`,error:br()}),I5(e)){let t=yield*xj(l);yield*Dx(d,{snapshotSequence:t,thread:e})}}),v=fp(`EnvironmentThreadState.setDeleted`)(function*(){yield*vO(u,!1),yield*Cj(c,{data:br(),status:`deleted`,error:br()}),yield*n.removeThread(a,e).pipe(tf(t=>mp(`Could not remove the cached thread.`).pipe(_p({environmentId:a,threadId:e,error:t.message}))))}),y=fp(`EnvironmentThreadState.applyItem`)(function*(e){if(e.kind===`synchronized`){yield*vO(u,!1),yield*wj(c,e=>wr(e.data)&&e.status!==`deleted`?{...e,status:`live`,error:br()}:e);return}if(e.kind===`snapshot`){yield*Cj(l,e.snapshot.snapshotSequence),yield*_(e.snapshot.thread);return}let t=yield*xj(l);if(e.event.sequence<=t)return;yield*Cj(l,e.event.sequence);let n=yield*xj(c);if(Cr(n.data)){e.event.type===`thread.deleted`&&(yield*v());return}let r=vye(n.data.value,e.event);r.kind===`updated`?yield*_(r.thread):r.kind===`deleted`&&(yield*v())});yield*bj(t.state).pipe(sw(e=>{switch(TW(e)){case`synchronizing`:return p;case`disconnected`:return h;case`ready`:return m}}),Zf);let b=Tr(i,{onNone:()=>PC,onSome:e=>e.changes.pipe(WC(e=>e===`application-active`))});return yield*p,yield*Zf(lK(Vk.subscribeThread,fp(`EnvironmentThreadState.makeSubscribeInput`)(function*(n){let i=yield*n.initialConfig.pipe(Zd(e=>e.threadResumeCompletionMarker===!0),df(()=>!1));yield*vO(u,i),yield*p;let a=yield*xj(c);if(Cr(a.data)&&a.status!==`deleted`){let n=yield*xj(t.prepared).pipe(Gd(Tr({onSome:M,onNone:()=>bj(t.prepared).pipe(WC(wr),IC(e=>e.value),ow,Zd(Mr))}))),i=yield*r.load(n,e);wr(i)&&(yield*y({kind:`snapshot`,snapshot:i.value}),a=yield*xj(c))}let o=yield*xj(l),s=wr(a.data);return!i&&s&&(yield*wj(c,e=>({...e,status:e.status===`deleted`?e.status:`live`,error:br()}))),{threadId:e,...s?{afterSequence:o}:{},...i?{requestCompletionMarker:!0}:{}}}),{onExpectedFailure:g,retryExpectedFailureAfter:`250 millis`,resubscribe:b}).pipe(sw(y))),yield*Af(()=>Dd([xj(c),xj(l)]).pipe(Gd(([e,t])=>Tr(e.data,{onNone:()=>Id,onSome:e=>I5(e)?f({snapshotSequence:t,thread:e}):Id})))),c});function sbe(e,t){return DK(e,FC(obe(t).pipe(Zd(bj))))}function cbe(e){let t=iH(t=>{let{environmentId:n,threadId:r}=C5(t);return e.atom(sbe(n,r),{initialValue:k5}).pipe(AV(O5),oH(`environment-thread-state:${t}`))});return{stateAtom:(e,n)=>t(S5({environmentId:e,threadId:n}))}}var lbe=cu(sj,Hoe({randomBytes:e=>globalThis.crypto.getRandomValues(new Uint8Array(e)),digest:(e,t)=>Ad(async()=>{let n=new Uint8Array(t.length);return n.set(t),new Uint8Array(await globalThis.crypto.subtle.digest(e,n.buffer))})})),L5=H([`configured`,`window-origin`,`desktop-managed`]),ube=H([`http-base-url`,`websocket-base-url`,`development-server-url`,`window-location-url`]),R5=class extends G()(`PrimaryEnvironmentUrlInvalidError`,{source:L5,urlKind:ube,cause:Dy()}){get message(){return`Could not parse ${this.urlKind} for the ${this.source} primary environment target.`}},z5=class extends G()(`PrimaryEnvironmentProtocolUnsupportedError`,{source:L5,protocol:L}){get message(){return`The ${this.source} primary environment target uses unsupported protocol ${this.protocol}.`}},B5=class extends G()(`DesktopEnvironmentBootstrapIncompleteError`,{hasHttpBaseUrl:R,hasWsBaseUrl:R}){get message(){return`Desktop bootstrap is missing ${[...this.hasHttpBaseUrl?[]:[`httpBaseUrl`],...this.hasWsBaseUrl?[]:[`wsBaseUrl`]].join(` and `)} for the local environment.`}};bv(R5),bv(z5),bv(B5);var dbe=new Set([`127.0.0.1`,`::1`,`localhost`]);function fbe(){return(window.desktopBridge?.getLocalEnvironmentBootstraps()??[]).find(e=>e.id===`primary`)??null}function V5(e){try{return e.baseUrl===void 0?new URL(e.rawValue):new URL(e.rawValue,e.baseUrl)}catch(t){throw new R5({source:e.source,urlKind:e.urlKind,cause:t})}}function H5(e,t,n){return V5({rawValue:e,baseUrl:window.location.origin,source:t,urlKind:n}).toString()}function pbe(e){return e.trim().toLowerCase().replace(/^\[(.*)\]$/,`$1`)}function mbe(e){return dbe.has(pbe(e))}function hbe(e){return e.target.httpBaseUrl}function gbe(){return null}function _be(){let e=V5({rawValue:window.location.origin,source:`window-origin`,urlKind:`http-base-url`}),t=e.toString();if(e.protocol===`http:`)e.protocol=`ws:`;else if(e.protocol===`https:`)e.protocol=`wss:`;else throw new z5({source:`window-origin`,protocol:e.protocol});return{source:`window-origin`,target:{httpBaseUrl:t,wsBaseUrl:e.toString()}}}function vbe(){let e=fbe();if(!e||!e.httpBaseUrl&&!e.wsBaseUrl)return null;if(!e.httpBaseUrl||!e.wsBaseUrl)throw new B5({hasHttpBaseUrl:!!e.httpBaseUrl,hasWsBaseUrl:!!e.wsBaseUrl});return{source:`desktop-managed`,target:{httpBaseUrl:H5(e.httpBaseUrl,`desktop-managed`,`http-base-url`),wsBaseUrl:H5(e.wsBaseUrl,`desktop-managed`,`websocket-base-url`)}}}function U5(e,t){let n=W5(),r=V5({rawValue:hbe(n),source:n.source,urlKind:`http-base-url`});return r.pathname=e,t&&(r.search=new URLSearchParams(t).toString()),r.toString()}function W5(){return vbe()??gbe()??_be()}var G5=class extends Ir()(`@p4code/web/environments/primary/httpClient/PrimaryEnvironmentHttpClient`){},ybe=fu(G5,Pd(()=>DB(U5(`/`)))),K5=`p4code:primary-bearer:v1`,bbe=3e4;function q5(){return typeof window<`u`}function J5(e){try{return`${K5}:${new URL(e).origin}`}catch{return`${K5}:${e}`}}function xbe(e){try{let t=JSON.parse(e);if(typeof t!=`object`||!t)return null;let n=t,r=n.token;if(typeof r!=`string`||r.trim().length===0)return null;let i=n.expiresAtMs;return{token:r,expiresAtMs:typeof i==`number`&&Number.isFinite(i)?i:null}}catch{return null}}function Sbe(e){if(!q5())return null;let t=null;try{t=window.localStorage.getItem(J5(e))}catch{return null}if(t===null)return null;let n=xbe(t);return n===null||n.expiresAtMs!==null&&n.expiresAtMs-bbe<=Date.now()?(Y5(e),null):n.token}function Cbe(e){if(!q5())return;let t=typeof e.expiresInSeconds==`number`&&Number.isFinite(e.expiresInSeconds)?Date.now()+e.expiresInSeconds*1e3:null,n={token:e.token,expiresAtMs:t};try{window.localStorage.setItem(J5(e.httpBaseUrl),JSON.stringify(n))}catch{}}function Y5(e){if(q5())try{window.localStorage.removeItem(J5(e))}catch{}}var X5=null;function wbe(){if(typeof window>`u`)return Promise.resolve(null);let e=window.desktopBridge;return e?(X5??=e.getLocalEnvironmentBearerToken().catch(e=>{throw X5=null,e}),X5):Promise.resolve(null)}function Z5(){return typeof window>`u`||window.desktopBridge!==void 0||window.nativeApi!==void 0||!window.location.origin.startsWith(`http`)?!1:new URL(U5(`/`)).origin===window.location.origin}function Tbe(){return typeof window>`u`||window.desktopBridge!==void 0?!1:!Z5()}async function Q5(){return await wbe()||Sbe(U5(`/`))}function Ebe(e){return e.pipe(AO(e=>Ad(Q5).pipe(Zd(t=>t?nD(e,t):e))))}function Dbe(){return sne(Fd(()=>{let e=TB(globalThis.fetch);return Z5()?vu(e,cu(zz,{credentials:`include`})):vu(fu(CO,Zd(CO,Ebe)).pipe(bu(e)),cu(zz,{credentials:`omit`}))}))}var $5=Dbe(),e7=TB((e,t)=>globalThis.fetch(e,t));uj(e7);var Obe=uj(ybe.pipe(bu($5))),kbe=e=>Obe.runPromise(e),Abe=e=>kbe(e),t7=mu(uj(_u(e7,lbe,iO)).contextEffect),jbe=z({connectionId:L,credential:MW}),Mbe=z({schemaVersion:I(1),targets:B(bW),profiles:B(AW),credentials:B(jbe)}),n7=Object.freeze({schemaVersion:1,targets:[],profiles:[],credentials:[]});function r7(e,t,n){let r=t(n);return[...e.filter(e=>t(e)!==r),n]}function i7(e,t,n){return e.filter(e=>t(e)!==n)}function Nbe(e){switch(e._tag){case`PrimaryConnectionTarget`:return null;case`BearerConnectionTarget`:case`SshConnectionTarget`:return e.connectionId}}function a7(e,t){let n=Nbe(t);return{...e,targets:i7(e.targets,e=>e.environmentId,t.environmentId),profiles:n===null?e.profiles:i7(e.profiles,e=>e.connectionId,n),credentials:n===null?e.credentials:i7(e.credentials,e=>e.connectionId,n)}}function Pbe(e,t){let n=t.target,r=e.targets.find(e=>e.environmentId===n.environmentId),i=r===void 0?e:a7(e,r),a={...i,targets:r7(i.targets,e=>e.environmentId,n)};switch(t._tag){case`BearerConnectionRegistration`:return{...a,profiles:r7(a.profiles,e=>e.connectionId,t.profile),credentials:r7(a.credentials,e=>e.connectionId,{connectionId:t.target.connectionId,credential:t.credential})};case`SshConnectionRegistration`:return{...a,profiles:r7(a.profiles,e=>e.connectionId,t.profile)}}}function Fbe(e,t){return a7(e,t)}function o7(){return``}function Ibe(){return o7()||window.location.origin}function Lbe(){return``}function Rbe(){return null}function zbe(e){try{return new URL(e).origin}catch{return null}}function s7(e=new URL(window.location.href)){if(Lbe())return!1;if(Rbe())return!0;let t=zbe(o7());return t!==null&&e.origin===t}function c7(e=new URL(window.location.href)){let t=e.searchParams.get(`host`)?.trim()??``,n=h5(e)?.trim()??``,r=e.searchParams.get(`label`)?.trim()??``;return!t||!n?null:{host:t,token:n,label:r}}function Bbe(e=new URL(window.location.href)){return c7(e)!==null}function Vbe(e){let t=new URL(`/pair`,Ibe());t.searchParams.set(`host`,e.host);let n=e.label?.trim();return n&&t.searchParams.set(`label`,n),g5(t,e.token).toString()}var l7=sV();function Hbe({children:e}){return(0,O.createElement)(FK.Provider,{value:l7},e)}var u7=15e3,d7=new Map,Ube=new Set([X.previewAutomationConnect]),f7=BV([]).pipe(aH,oH(`slow-rpc-ack-requests`));function p7(e){l7.set(f7,[...e])}function m7(){return l7.get(f7)}function Wbe(e){return!e.includes(`subscribe`)&&!Ube.has(e)}function Gbe(e,t){if(!Wbe(t))return;h7(e),Jbe();let n=Date.now(),r={requestId:e,startedAt:new Date(n).toISOString(),startedAtMs:n,tag:t,thresholdMs:u7},i=setTimeout(()=>{d7.delete(e),qbe(r)},u7);d7.set(e,{request:r,timeoutId:i})}function Kbe(e){h7(e);let t=m7();t.some(t=>t.requestId===e)&&p7(t.filter(t=>t.requestId!==e))}function h7(e){let t=d7.get(e);t&&(clearTimeout(t.timeoutId),d7.delete(e))}function qbe(e){let t=[...m7(),e];if(t.length<=256){p7(t);return}p7(t.slice(-256))}function Jbe(){for(;d7.size>=256;){let e=d7.keys().next().value;if(e===void 0)return;h7(e)}}function Ybe(){return zK(f7)}var Xbe=`local:`;function Zbe(e){return`${Xbe}${e}`}function Qbe(e){return e._tag===`BearerConnectionTarget`&&e.connectionId.startsWith(`local:`)}function $be(e){let t=[],n=()=>{let n=e();if(n===void 0)return t=[],{_tag:`Success`,bootstraps:t};try{return t=n.getLocalEnvironmentBootstraps().filter(e=>e.id!==cM),{_tag:`Success`,bootstraps:t}}catch(e){return{_tag:`Failure`,cause:e}}};return{readResult:n,readSnapshot:()=>{let e=n();return e._tag===`Success`?e.bootstraps:t}}}var g7=$be(()=>window.desktopBridge);function exe(){return g7.readResult()}function txe(){return g7.readSnapshot()}var nxe=`p4code:connection-runtime`,rxe=4,_7=`catalog`,v7=`shell`,y7=`thread`,b7=`server-config`,x7=`vcs-refs`,S7=`document`,C7=1,w7=jy(z({schemaVersion:I(C7),environmentId:cb,snapshot:mA})),T7=jy(z({schemaVersion:I(2),environmentId:cb,threadId:Y,snapshot:hA})),E7=jy(z({schemaVersion:I(1),environmentId:cb,config:TN})),D7=jy(z({schemaVersion:I(1),environmentId:cb,cwd:L,refs:zP})),O7=jy(Mbe),ixe=xv(O7),axe=Ov(O7),oxe=xv(w7),sxe=Ov(w7),cxe=xv(T7),lxe=Ov(T7),uxe=xv(E7),dxe=Ov(E7),fxe=xv(D7),pxe=Ov(D7);function k7(e,t){return new CW({reason:`remote-unavailable`,detail:`Could not ${e} the local connection catalog: ${String(t)}`})}function A7(e,t){return new WW({operation:e,message:`Could not ${e.replaceAll(`-`,` `)}: ${String(t)}`})}var mxe=fp(`web.connectionStorage.openDatabase`)(function*(){return yield*Ld(e=>{if(typeof indexedDB>`u`){e(Bd(k7(`open`,`IndexedDB is unavailable in this browser context.`)));return}let t=indexedDB.open(nxe,rxe);t.addEventListener(`upgradeneeded`,()=>{t.result.objectStoreNames.contains(_7)||t.result.createObjectStore(_7),t.result.objectStoreNames.contains(v7)||t.result.createObjectStore(v7),t.result.objectStoreNames.contains(y7)||t.result.createObjectStore(y7),t.result.objectStoreNames.contains(b7)||t.result.createObjectStore(b7),t.result.objectStoreNames.contains(x7)||t.result.createObjectStore(x7)}),t.addEventListener(`error`,()=>{e(Bd(k7(`open`,t.error??`Unknown IndexedDB error`)))}),t.addEventListener(`success`,()=>{e(M(t.result))})})});function j7(e,t,n){return Ld(r=>{let i=e.transaction(t,`readonly`).objectStore(t).get(n);i.addEventListener(`error`,()=>{r(Bd(k7(`read`,i.error??`Unknown IndexedDB read error`)))}),i.addEventListener(`success`,()=>{r(M(i.result))})}).pipe(qf(`web.connectionStorage.readDatabaseValue`))}function M7(e,t,n,r){return Ld(i=>{let a=e.transaction(t,`readwrite`);a.addEventListener(`error`,()=>{i(Bd(k7(`write`,a.error??`Unknown IndexedDB write error`)))}),a.addEventListener(`complete`,()=>{i(Id)}),a.objectStore(t).put(r,n)}).pipe(qf(`web.connectionStorage.writeDatabaseValue`))}function N7(e,t,n){return Ld(r=>{let i=e.transaction(t,`readwrite`);i.addEventListener(`error`,()=>{r(Bd(k7(`remove`,i.error??`Unknown IndexedDB remove error`)))}),i.addEventListener(`complete`,()=>{r(Id)}),i.objectStore(t).delete(n)}).pipe(qf(`web.connectionStorage.removeDatabaseValue`))}function P7(e,t,n){return Ld(r=>{let i=e.transaction(t,`readwrite`);i.addEventListener(`error`,()=>{r(Bd(k7(`remove`,i.error??`Unknown IndexedDB cursor error`)))}),i.addEventListener(`complete`,()=>{r(Id)});let a=i.objectStore(t).openCursor(n);a.addEventListener(`error`,()=>{r(Bd(k7(`remove`,a.error??`Unknown IndexedDB cursor error`)))}),a.addEventListener(`success`,()=>{let e=a.result;e!==null&&(e.delete(),e.continue())})}).pipe(qf(`web.connectionStorage.removeDatabaseValuesInRange`))}function F7(e,t){return`${e}:${t}`}function I7(e,t){return`${e}:${t}`}var hxe=fp(`web.connectionStorage.decodeCatalog`)(function*(e){return yield*ixe(e).pipe(of(e=>k7(`decode`,e)))}),L7=fp(`web.connectionStorage.encodeCatalog`)(function*(e){return yield*axe(e).pipe(of(e=>k7(`encode`,e)))});function gxe(e){let t=window.desktopBridge;return t?.getConnectionCatalog!==void 0&&t.setConnectionCatalog!==void 0?{read:jd({try:()=>t.getConnectionCatalog(),catch:e=>k7(`load`,e)}),write:e=>jd({try:()=>t.setConnectionCatalog(e),catch:e=>k7(`save`,e)}).pipe(Gd(e=>e?Id:Bd(k7(`save`,`Desktop secure storage is unavailable in this system context.`))))}:{read:j7(e,_7,S7).pipe(Zd(e=>typeof e==`string`?e:null)),write:t=>M7(e,_7,S7,t),quarantine:t=>M7(e,_7,`${S7}:corrupt:${Date.now()}`,t)}}var _xe=fp(`web.connectionStorage.makeCatalogStore`)(function*(e){let t=yield*gO(br()),n=yield*eS(1),r=fp(`web.connectionStorage.loadCatalog`)(function*(){let n=yield*_O(t);if(wr(n))return n.value;let r=yield*e.read,i=n7;return r!==null&&r.trim()!==``&&(i=yield*hxe(r).pipe(tf(t=>zd(function*(){yield*mp(`Discarding a corrupt web connection catalog.`,{error:t.message}),e.quarantine!==void 0&&(yield*e.quarantine(r).pipe(tf(e=>mp(`Could not quarantine the corrupt web connection catalog.`,{error:e.message}))));let n=yield*L7(n7);return yield*e.write(n).pipe(tf(e=>mp(`Could not persist the recovered web connection catalog.`,{error:e.message}))),n7})))),yield*vO(t,xr(i)),i});return{read:n.withPermits(1)(r()),update:fp(`web.connectionStorage.updateCatalog`)(function*(i){yield*n.withPermits(1)(zd(function*(){let n=i(yield*r());yield*e.write(yield*L7(n)),yield*vO(t,xr(n))}))})}}),vxe=mu(zd(function*(){let e=yield*Of(mxe(),e=>Fd(()=>e.close())),t=yield*_xe(gxe(e)),n=GW.of({list:t.read.pipe(Zd(e=>e.targets),of(e=>A7(`list-targets`,e)))}),r=KW.of({register:e=>t.update(t=>Pbe(t,e)).pipe(of(e=>A7(`register-connection`,e))),remove:e=>t.update(t=>Fbe(t,e)).pipe(of(e=>A7(`remove-connection`,e)))}),i=BW({get:e=>t.read.pipe(Zd(t=>Or(t.profiles.find(t=>t.connectionId===e)))),put:e=>t.update(t=>({...t,profiles:r7(t.profiles,e=>e.connectionId,e)})),remove:e=>t.update(t=>({...t,profiles:i7(t.profiles,e=>e.connectionId,e)}))}),a=RW({get:e=>t.read.pipe(Zd(t=>Or(t.credentials.find(t=>t.connectionId===e)?.credential))),put:(e,n)=>t.update(t=>({...t,credentials:r7(t.credentials,e=>e.connectionId,{connectionId:e,credential:n})})),remove:e=>t.update(t=>({...t,credentials:i7(t.credentials,e=>e.connectionId,e)}))}),o=qW.of({loadShell:t=>j7(e,v7,t).pipe(Gd(e=>typeof e==`string`?oxe(e).pipe(of(e=>A7(`load-shell`,e)),Zd(e=>e.environmentId===t?xr(e.snapshot):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-shell`,e))),saveShell:(t,n)=>zd(function*(){let r=yield*sxe({schemaVersion:C7,environmentId:t,snapshot:n}).pipe(of(e=>A7(`save-shell`,e)));yield*M7(e,v7,t,r)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-shell`,e))),loadServerConfig:t=>j7(e,b7,t).pipe(Gd(e=>typeof e==`string`?uxe(e).pipe(of(e=>A7(`load-server-config`,e)),Zd(e=>e.environmentId===t?xr(e.config):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-server-config`,e))),saveServerConfig:(t,n)=>zd(function*(){let r=yield*dxe({schemaVersion:1,environmentId:t,config:n}).pipe(of(e=>A7(`save-server-config`,e)));yield*M7(e,b7,t,r)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-server-config`,e))),loadThread:(t,n)=>j7(e,y7,F7(t,n)).pipe(Gd(e=>typeof e==`string`?cxe(e).pipe(of(e=>A7(`load-thread`,e)),Zd(e=>e.environmentId===t&&e.threadId===n?xr(e.snapshot):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-thread`,e))),saveThread:(t,n)=>zd(function*(){let r=yield*lxe({schemaVersion:2,environmentId:t,threadId:n.thread.id,snapshot:n}).pipe(of(e=>A7(`save-thread`,e)));yield*M7(e,y7,F7(t,n.thread.id),r)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-thread`,e))),loadVcsRefs:(t,n)=>j7(e,x7,I7(t,n)).pipe(Gd(e=>typeof e==`string`?fxe(e).pipe(of(e=>A7(`load-vcs-refs`,e)),Zd(e=>e.environmentId===t&&e.cwd===n?xr(e.refs):br())):M(br())),of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`load-vcs-refs`,e))),saveVcsRefs:(t,n,r)=>zd(function*(){let i=yield*pxe({schemaVersion:1,environmentId:t,cwd:n,refs:r}).pipe(of(e=>A7(`save-vcs-refs`,e)));yield*M7(e,x7,I7(t,n),i)}).pipe(of(e=>e._tag===`ConnectionPersistenceError`?e:A7(`save-vcs-refs`,e))),removeVcsRefs:(t,n)=>N7(e,x7,I7(t,n)).pipe(of(e=>A7(`remove-vcs-refs`,e))),clearVcsRefs:t=>P7(e,x7,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)).pipe(of(e=>A7(`clear-vcs-refs`,e))),removeThread:(t,n)=>N7(e,y7,F7(t,n)).pipe(of(e=>A7(`remove-thread`,e))),clear:t=>Dd([N7(e,v7,t),P7(e,y7,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`)),N7(e,b7,t),P7(e,x7,IDBKeyRange.bound(`${t}:`,`${t}:\uffff`))],{concurrency:`unbounded`,discard:!0}).pipe(of(e=>A7(`clear-environment`,e)))});return Hr(GW,n).pipe(Ur(KW,r),Ur(zW,i),Ur(LW,a),Ur(qW,o))})),R7=0;function yxe(){return typeof navigator>`u`?`unknown`:navigator.onLine?`online`:`offline`}var bxe=UW({status:Fd(yxe),changes:TC(e=>Of(Fd(()=>{let t=()=>Ox(e,`online`),n=()=>Ox(e,`offline`);return window.addEventListener(`online`,t),window.addEventListener(`offline`,n),{online:t,offline:n}}),({online:e,offline:t})=>Fd(()=>{window.removeEventListener(`online`,e),window.removeEventListener(`offline`,t)})).pipe(ef))}),xxe=RG({changes:TC(e=>Of(Fd(()=>{let t=()=>{document.visibilityState===`visible`&&Ox(e,`application-active`)};return document.addEventListener(`visibilitychange`,t),t}),e=>Fd(()=>{document.removeEventListener(`visibilitychange`,e)})).pipe(ef))});function z7(){let e=window.desktopBridge!==void 0,t=navigator.platform.trim();return{label:e?`P4Code Desktop`:`P4Code Web`,deviceType:`desktop`,...t===``?{}:{os:t}}}function B7(e){let t=e instanceof Error?e.message:String(e);return t.toLowerCase().includes(`cancel`)?new wW({reason:`authentication`,detail:t}):new CW({reason:`remote-unavailable`,detail:`Could not prepare the SSH environment: ${t}`})}var Sxe=fp(`web.connectionPlatform.ssh.provisionDesktop`)(function*(e,t){let n=yield*jd({try:()=>e.ensureSshEnvironment(t,{issuePairingToken:!0}),catch:B7}),r=n.pairingToken;if(r===null)return yield*new wW({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`});let i=yield*jd({try:()=>e.fetchSshEnvironmentDescriptor(n.httpBaseUrl),catch:B7}),a=yield*jd({try:()=>e.bootstrapSshBearerSession(n.httpBaseUrl,r),catch:B7});return{environmentId:i.environmentId,label:i.label,bootstrap:n,bearerToken:a.access_token}}),Cxe=mu(Fd(()=>{let e=pW.of({metadata:z7(),scopes:Kw}),t=mW.of({bearerToken:jd({try:Q5,catch:e=>new CW({reason:`remote-unavailable`,detail:`Could not load the primary environment credential: ${String(e)}`})}).pipe(Zd(Dr))}),n=hW.of({provision:fp(`web.connectionPlatform.ssh.provision`)(function*(e){let t=window.desktopBridge;return t===void 0?yield*new wW({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`}):yield*Sxe(t,e)}),prepare:fp(`web.connectionPlatform.ssh.prepare`)(function*(e){let t=window.desktopBridge;if(t===void 0)return yield*new wW({reason:`unsupported`,detail:`SSH environments are only available in the desktop app.`});let n=yield*jd({try:()=>t.ensureSshEnvironment(e.target,{issuePairingToken:!0}),catch:B7});return n.pairingToken===null?yield*new wW({reason:`authentication`,detail:`The SSH environment did not issue a pairing credential.`}):{bootstrap:n,bearerToken:(yield*jd({try:()=>t.bootstrapSshBearerSession(n.httpBaseUrl,n.pairingToken),catch:B7})).access_token}}),disconnect:fp(`web.connectionPlatform.ssh.disconnect`)(function*(e){let t=window.desktopBridge;t!==void 0&&(yield*jd({try:()=>t.disconnectSshEnvironment(e),catch:e=>new CW({reason:`remote-unavailable`,detail:`Could not disconnect the SSH environment: ${String(e)}`})}))})});return Hr(mW,t).pipe(Ur(pW,e),Ur(hW,n))})),wxe=fp(`web.connectionPlatform.loadPrimaryConnectionRegistration`)(function*(e){let t=yield*jB({httpBaseUrl:e.target.httpBaseUrl}).pipe(bf($5),of(oG));return new NW({target:new _W({environmentId:t.environmentId,label:t.label,httpBaseUrl:e.target.httpBaseUrl,wsBaseUrl:e.target.wsBaseUrl})})}),Txe=fp(`web.connectionPlatform.loadSecondaryConnectionRegistration`)(function*(e){if(e.httpBaseUrl===null||e.wsBaseUrl===null||e.bootstrapToken===void 0)return yield*new CW({reason:`endpoint-unavailable`,detail:`Desktop-local backend ${e.id} is not ready yet.`});let t=e.httpBaseUrl,n=e.wsBaseUrl,r=yield*jB({httpBaseUrl:t}).pipe(of(oG)),i=yield*Hu,a=yield*eG({httpBaseUrl:t,credential:e.bootstrapToken,scopes:Kw,clientMetadata:z7()}).pipe(of(oG)),o=Zbe(e.id),s=e.label||r.label;return{registration:new PW({target:new vW({environmentId:r.environmentId,label:s,connectionId:o}),profile:new OW({connectionId:o,environmentId:r.environmentId,label:s,httpBaseUrl:t,wsBaseUrl:n}),credential:new jW({token:a.access_token})}),expiresAtEpochMs:V7(i,a.expires_in),refreshAtEpochMs:Oxe(i,a.expires_in)}}),Exe=`3 seconds`,Dxe=5e3;function V7(e,t){return e+Math.max(0,t*1e3)}function Oxe(e,t){return Math.max(e,V7(e,t)-Dxe)}function kxe(e=W5){try{return{_tag:`Success`,target:e()}}catch(e){return{_tag:`Failure`,cause:e}}}function Axe(e,t){return t._tag===`Failure`?e.get(cM):void 0}function H7(e,t,n){return e.signature===t&&(e.refreshAtEpochMs===void 0||n<e.refreshAtEpochMs)}function jxe(e,t,n){return e.signature===t&&e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs}function Mxe(e,t,n){return t._tag===`Success`?new Map:new Map([...e].filter(([,e])=>e.expiresAtEpochMs!==void 0&&n<e.expiresAtEpochMs))}var Nxe=_u(vxe,bxe,xxe,Cxe,fu(v5,zd(function*(){if(s7())return v5.of({registrations:EC});let e=yield*gO(new Map),t=zd(function*(){let t=yield*_O(e),n=yield*Hu,r=new Map,i=[],a=kxe(),o=Axe(t,a);if(o!==void 0&&(r.set(cM,o),i.push(o.registration)),a._tag===`Failure`)yield*mp(`Could not read the primary environment topology.`,{cause:a.cause});else if(a.target!==null){let e=a.target,o=`primary|${e.target.httpBaseUrl}|${e.target.wsBaseUrl}`,s=t.get(cM);if(s!==void 0&&H7(s,o,n))r.set(cM,s),i.push(s.registration);else{let t=yield*wxe(e).pipe(cf(e=>mp(`Could not discover the primary environment.`,{error:e})),Yd);if(wr(t)){let e={signature:o,registration:t.value};r.set(cM,e),i.push(t.value)}}}let s=exe();for(let[e,a]of Mxe(t,s,n))r.set(e,a),i.push(a.registration);if(s._tag===`Failure`)yield*mp(`Could not read the desktop-local backend topology.`,{cause:s.cause});else for(let e of s.bootstraps){let a=`${e.httpBaseUrl}|${e.wsBaseUrl}|${e.bootstrapToken??``}`,o=t.get(e.id);if(o!==void 0&&H7(o,a,n)){r.set(e.id,o),i.push(o.registration);continue}let s=yield*Txe(e).pipe(cf(t=>mp(`Could not connect a desktop-local backend.`,{id:e.id,error:t})),Yd);if(wr(s)){let t={signature:a,...s.value};r.set(e.id,t),i.push(s.value.registration)}else o!==void 0&&jxe(o,a,n)&&(r.set(e.id,o),i.push(o.registration))}return yield*vO(e,r),i}).pipe(bf(Bz));return v5.of({registrations:xC(Exe).pipe(LC(()=>t))})})),cu(JW,JW.of({clear:e=>Fd(()=>{V_e(e)})})),cu(iK,iK.of({observe:({environmentId:e,method:t})=>Fd(()=>{R7+=1;let n=`${e}:${R7}`;return Gbe(n,`${t} · ${e}`),Fd(()=>{Kbe(n)})})}))).pipe(bu(t7)),U7=JV(vu($ve,vu(oye,uve)).pipe(xu(_u(t7,Nxe)))),W7=Nve(U7),G7=BV(e=>{for(let[t,n]of e(W7.catalogValueAtom).entries)if(n.target._tag===`PrimaryConnectionTarget`)return t;return null}).pipe(oH(`web-primary-environment-id`));function Pxe(e){return e.pipe(Zd(xr),tf(e=>mp(`Could not load the initial environment configuration.`).pipe(_p({...FG(e)}),Qd(br()))))}function Fxe(e){let t=iH(t=>e.atom(DK(t,FC(XG.pipe(Zd(e=>bj(e.session).pipe(LC(Tr({onNone:()=>M(br()),onSome:e=>Pxe(e.initialConfig)}))))))),{initialValue:br()})),n=iH(e=>BV(n=>kr(Er(tV(n(t(e))),()=>br()))).pipe(oH(`environment-config-value:${e}`))),r=iH(t=>e.atom(DK(t,FC(XG.pipe(Zd(e=>bj(e.prepared))))),{initialValue:br()}));return{initialConfigAtom:t,initialConfigValueAtom:n,preparedConnectionAtom:r,preparedConnectionValueAtom:iH(e=>BV(t=>Er(tV(t(r(e))),()=>br())).pipe(oH(`environment-prepared-connection:${e}`)))}}var K7=Fxe(U7),Ixe=BV(br()).pipe(oH(`web-prepared-connection:empty`));function q7(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=e===null?Ixe:K7.preparedConnectionValueAtom(e),t[0]=e,t[1]=n),zK(n)}function Lxe(e){return kr(l7.get(K7.preparedConnectionValueAtom(e)))}var J7=sve(U7,{initialConfigValueAtom:K7.initialConfigValueAtom}),Rxe=Tve({catalogValueAtom:W7.catalogValueAtom,serverConfigValueAtom:J7.configValueAtom}),zxe=[],Bxe=[],Vxe={config:null,latestEvent:null,welcome:null},Y7=BV(e=>{let t=e(G7);if(t===null)return Vxe;let n={environmentId:t,input:{}},r=kr(tV(e(J7.configProjection(n)))),i=kr(tV(e(J7.welcome(n))));return{config:e(J7.configValueAtom(t)),latestEvent:r?.latestEvent??null,welcome:i}}).pipe(oH(`web-primary-server-state`)),X7=BV(e=>e(Y7).config).pipe(oH(`web-primary-server-config`)),Hxe=BV(e=>e(Y7).latestEvent).pipe(oH(`web-primary-server-config-event`)),Uxe=BV(e=>e(Y7).welcome).pipe(oH(`web-primary-server-welcome`)),Wxe=BV(e=>e(X7)?.settings??bN).pipe(oH(`web-primary-server-settings`)),Gxe=BV(e=>e(X7)?.providers??Bxe).pipe(oH(`web-primary-server-providers`)),Kxe=BV(e=>e(X7)?.keybindings??n5).pipe(oH(`web-primary-server-keybindings`)),qxe=BV(e=>e(X7)?.availableEditors??zxe).pipe(oH(`web-primary-server-available-editors`)),Jxe=BV(e=>e(X7)?.keybindingsConfigPath??null).pipe(oH(`web-primary-server-keybindings-config-path`)),Yxe=BV(e=>e(X7)?.observability??null).pipe(oH(`web-primary-server-observability`)),Z7=`http://www.w3.org/2000/svg`,Xxe={pencil:[{tag:`path`,attrs:{d:`M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z`}},{tag:`path`,attrs:{d:`m15 5 4 4`}}],copy:[{tag:`rect`,attrs:{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`}},{tag:`path`,attrs:{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`}}],"folder-tree":[{tag:`path`,attrs:{d:`M20 10a1 1 0 0 0 1-1V6a1 1 0 0 0-1-1h-2.5a1 1 0 0 1-.8-.4l-.9-1.2A1 1 0 0 0 15 3h-2a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`}},{tag:`path`,attrs:{d:`M20 21a1 1 0 0 0 1-1v-3a1 1 0 0 0-1-1h-2.9a1 1 0 0 1-.88-.55l-.42-.85a1 1 0 0 0-.92-.6H13a1 1 0 0 0-1 1v5a1 1 0 0 0 1 1Z`}},{tag:`path`,attrs:{d:`M3 5a2 2 0 0 0 2 2h3`}},{tag:`path`,attrs:{d:`M3 3v13a2 2 0 0 0 2 2h3`}}],trash:[{tag:`path`,attrs:{d:`M3 6h18`}},{tag:`path`,attrs:{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`}},{tag:`path`,attrs:{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`}},{tag:`line`,attrs:{x1:`10`,x2:`10`,y1:`11`,y2:`17`}},{tag:`line`,attrs:{x1:`14`,x2:`14`,y1:`11`,y2:`17`}}]};function Zxe(e,t){let n=Xxe[e];if(!n)return null;let r=document.createElementNS(Z7,`svg`);r.setAttribute(`xmlns`,Z7),r.setAttribute(`viewBox`,`0 0 24 24`),r.setAttribute(`fill`,`none`),r.setAttribute(`stroke`,`currentColor`),r.setAttribute(`stroke-width`,`2`),r.setAttribute(`stroke-linecap`,`round`),r.setAttribute(`stroke-linejoin`,`round`),r.setAttribute(`class`,t===`destructive`?`size-3.5 shrink-0`:`size-3.5 shrink-0 text-muted-foreground`);for(let e of n){let t=document.createElementNS(Z7,e.tag);for(let[n,r]of Object.entries(e.attrs))t.setAttribute(n,r);r.appendChild(t)}return r}function Q7(e,t,n){let r=e.getBoundingClientRect(),i=Math.min(Math.max(4,t),Math.max(4,window.innerWidth-r.width-4)),a=Math.min(Math.max(4,n),Math.max(4,window.innerHeight-r.height-4));e.style.left=`${i}px`,e.style.top=`${a}px`}function $7(e,t){if(typeof Node<`u`&&e instanceof Node)return t.some(t=>t.contains(e));if(!e||typeof e!=`object`)return!1;let n=e;for(;n&&typeof n==`object`;){if(t.includes(n))return!0;n=n.parent}return!1}function Qxe(e,t){return new Promise(n=>{let r=[],i=!1,a=!1,o=e=>{if(!i){i=!0,document.removeEventListener(`keydown`,s),document.removeEventListener(`pointerdown`,c,!0),document.removeEventListener(`contextmenu`,l,!0);for(let e of r)e.remove();n(e)}},s=e=>{e.key===`Escape`&&(e.preventDefault(),o(null))},c=e=>{!a||$7(e.target,r)||o(null)},l=e=>{!a||$7(e.target,r)||(e.preventDefault(),o(null))},u=e=>{for(;r.length>e;)r.pop()?.remove()},d=(e,t,n,i)=>{u(i);let s=document.createElement(`div`);s.className=`dropdown-glass fixed z-[10000] min-w-32 max-w-sm overflow-hidden rounded-lg bg-clip-padding text-popover-foreground outline-none`,s.style.cssText=`position:fixed;z-index:10000;min-width:8rem;max-width:24rem;overflow:hidden;border-radius:var(--radius-lg);background-clip:padding-box;color:var(--popover-foreground);outline:none;pointer-events:auto;`,s.style.left=`${t}px`,s.style.top=`${n}px`,s.dataset.level=String(i);let c=document.createElement(`div`);c.className=`max-h-[min(24rem,70vh)] min-w-0 max-w-sm overflow-y-auto overflow-x-hidden p-1`,c.style.cssText=`max-height:min(24rem,70vh);min-width:0;max-width:24rem;overflow-x:hidden;overflow-y:auto;padding:0.25rem;`;for(let t of e){if(t.header===!0){let e=document.createElement(`div`);e.className=`px-2 py-1.5 font-medium text-muted-foreground text-xs`,e.textContent=t.label,c.appendChild(e);continue}let e=Array.isArray(t.children)&&t.children.length>0,n=!e&&(t.destructive===!0||t.id===`delete`),s=document.createElement(`button`);s.type=`button`;let l=t.disabled===!0;s.disabled=l;let f=`flex w-full cursor-default select-none items-center gap-2 rounded-sm px-2 py-1 text-left outline-none transition-colors sm:min-h-7 sm:text-sm min-h-8 text-base`;if(s.className=l?`${f} pointer-events-none cursor-not-allowed text-muted-foreground opacity-64`:n?`${f} text-destructive-foreground hover:bg-destructive/10 hover:text-destructive-foreground`:`${f} text-foreground hover:bg-accent hover:text-accent-foreground`,s.style.cssText=`display:flex;width:100%;min-height:1.75rem;align-items:center;gap:0.5rem;border:0;border-radius:var(--radius-sm);background:transparent;padding:0.25rem 0.5rem;color:var(--foreground);font-family:var(--font-sans,system-ui,sans-serif);font-size:0.875rem;line-height:1.25rem;text-align:left;cursor:default;`,n&&(s.style.color=`var(--destructive-foreground)`),l&&(s.style.color=`var(--muted-foreground)`,s.style.opacity=`0.64`,s.style.pointerEvents=`none`),typeof t.icon==`string`){let e=Zxe(t.icon,n?`destructive`:`neutral`);e&&s.appendChild(e)}let p=document.createElement(`span`);if(p.className=`min-w-0 flex-1 truncate`,p.textContent=t.label,s.appendChild(p),e){let e=document.createElement(`span`);e.className=`ms-auto shrink-0 text-muted-foreground/80 text-sm leading-none`,e.textContent=`>`,s.appendChild(e)}l||(s.addEventListener(`mouseenter`,()=>{s.style.background=n?`color-mix(in srgb, var(--destructive) 10%, transparent)`:`var(--accent)`,s.style.color=n?`var(--destructive-foreground)`:`var(--accent-foreground)`}),s.addEventListener(`mouseleave`,()=>{s.style.background=`transparent`,s.style.color=n?`var(--destructive-foreground)`:`var(--foreground)`}),e?(s.addEventListener(`mouseenter`,()=>{let e=s.getBoundingClientRect(),n=e.right+4,a=e.top;d(t.children,n,a,i+1);let o=r[i+1];if(!o)return;let c=o.getBoundingClientRect();c.right>window.innerWidth&&Q7(o,e.left-c.width-4,e.top)}),s.addEventListener(`click`,e=>{e.preventDefault()})):(s.addEventListener(`mouseenter`,()=>{u(i+1)}),s.addEventListener(`click`,()=>{a&&o(t.id)}))),c.appendChild(s)}s.appendChild(c),s.addEventListener(`mouseenter`,()=>{u(i+1)}),document.body.appendChild(s),r[i]=s,requestAnimationFrame(()=>{Q7(s,t,n)})};document.addEventListener(`keydown`,s),document.addEventListener(`pointerdown`,c,!0),document.addEventListener(`contextmenu`,l,!0),d(e,t?.x??0,t?.y??0,0),requestAnimationFrame(()=>{a=!0})})}var e9=`p4code:client-settings:v1`;function t9(){return typeof window<`u`}function $xe(){if(!t9())return null;try{return XK(e9,sN)}catch(e){return console.error(`Could not read persisted client settings.`,e),null}}function eSe(e){t9()&&ZK(e9,e,sN)}var n9;function r9(){return Error(`Local backend API is unavailable before a backend is paired.`)}function tSe(){return{dialogs:{pickFolder:async e=>window.desktopBridge?window.desktopBridge.pickFolder(e):null,confirm:async e=>window.desktopBridge?window.desktopBridge.confirm(e):window.confirm(e)},shell:{openInEditor:()=>Promise.reject(r9()),openExternal:async e=>{if(window.desktopBridge){if(!await window.desktopBridge.openExternal(e))throw Error(`Unable to open link.`);return}window.open(e,`_blank`,`noopener,noreferrer`)},showItemInFolder:async e=>{if(!window.desktopBridge)throw Error(`Revealing files is unavailable in this browser.`);if(!await window.desktopBridge.showItemInFolder(e))throw Error(`Unable to reveal the file.`)},canRevealItemInFolder:()=>!!window.desktopBridge},contextMenu:{show:async(e,t)=>window.desktopBridge?window.desktopBridge.showContextMenu(e,t):Qxe(e,t)},persistence:{getClientSettings:async()=>window.desktopBridge?window.desktopBridge.getClientSettings():$xe(),setClientSettings:async e=>{if(window.desktopBridge)return window.desktopBridge.setClientSettings(e);eSe(e)}},server:{getConfig:()=>Promise.reject(r9()),refreshProviders:()=>Promise.reject(r9()),updateProvider:()=>Promise.reject(r9()),upsertKeybinding:()=>Promise.reject(r9()),removeKeybinding:()=>Promise.reject(r9()),getSettings:()=>Promise.reject(r9()),updateSettings:()=>Promise.reject(r9()),discoverSourceControl:()=>Promise.reject(r9()),getTraceDiagnostics:()=>Promise.reject(r9()),getProcessDiagnostics:()=>Promise.reject(r9()),getProcessResourceHistory:()=>Promise.reject(r9()),signalProcess:()=>Promise.reject(r9())}}}function i9(){if(!(typeof window>`u`))return n9||(window.nativeApi?(n9=window.nativeApi,n9):(n9=tSe(),n9))}function nSe(){return i9()?.shell.canRevealItemInFolder()??!1}function rSe(){let e=i9();if(!e)throw Error(`Local API not found`);return e}function iSe(e,t){if(e.size!==t.size)return!1;for(let[n,r]of e)if(t.get(n)!==r)return!1;return!0}function aSe(e){let t=iH(t=>BV(n=>{let r=n(e.catalogValueAtom).entries.get(t);return r===void 0?null:{entry:r,connection:nye(Er(tV(n(e.stateAtom(t))),()=>EW)),serverConfig:n(e.serverConfigValueAtom(t))}}).pipe(oH(`environment-presentation:${t}`))),n=new Map;return{presentationAtom:t,presentationsAtom:BV(r=>{let i=new Map;for(let n of r(e.catalogValueAtom).entries.keys()){let e=r(t(n));e!==null&&i.set(n,e)}return iSe(n,i)||(n=i),n}).pipe(oH(`environment-presentations`))}}var a9=aSe({catalogValueAtom:W7.catalogValueAtom,stateAtom:W7.stateAtom,serverConfigValueAtom:J7.configValueAtom}),oSe=BV(null).pipe(oH(`web-environment-presentation:empty`));function sSe(e){let t=(0,Dp.c)(5),n=zK(W7.catalogValueAtom),r;t[0]===e?r=t[1]:(r=e===null?oSe:a9.presentationAtom(e),t[0]=e,t[1]=r);let i=zK(r),a;return t[2]!==n.isReady||t[3]!==i?(a={isReady:n.isReady,presentation:i},t[2]=n.isReady,t[3]=i,t[4]=a):a=t[4],a}var cSe=BV(GB(!1)).pipe(oH(`web-environment-query:empty`));function lSe(e){let t=Mu(e);return t instanceof Error&&t.message.trim().length>0?t.message:`The environment request failed.`}function uSe(e){let t=(0,Dp.c)(10),n=e??cSe,r=zK(n),i=WK(n),a;t[0]===r?a=t[1]:(a=kr(tV(r)),t[0]=r,t[1]=a);let o;t[2]!==r._tag||t[3]!==r.cause?(o=r._tag===`Failure`?lSe(r.cause):null,t[2]=r._tag,t[3]=r.cause,t[4]=o):o=t[4];let s=e!==null&&r.waiting,c;return t[5]!==i||t[6]!==a||t[7]!==o||t[8]!==s?(c={data:a,error:o,isPending:s,refresh:i},t[5]=i,t[6]=a,t[7]=o,t[8]=s,t[9]=c):c=t[9],c}function o9(e,t){return{...t,environmentId:e,label:t.entry.target.label,displayUrl:rye(t.entry)}}function dSe(){let e=(0,Dp.c)(7),t=zK(W7.catalogValueAtom),n=zK(W7.networkStatusValueAtom),r=zK(a9.presentationsAtom),i;e[0]===r?i=e[1]:(i=[...r.entries()].map(fSe),e[0]=r,e[1]=i);let a=i,o;return e[2]!==t.isReady||e[3]!==a||e[4]!==n||e[5]!==r?(o={isReady:t.isReady,networkStatus:n,environments:a,presentationById:r},e[2]=t.isReady,e[3]=a,e[4]=n,e[5]=r,e[6]=o):o=e[6],o}function fSe(e){let[t,n]=e;return o9(t,n)}function s9(){return zK(G7)}function c9(e){let t=(0,Dp.c)(3),{presentation:n}=sSe(e),r;return t[0]!==e||t[1]!==n?(r=e===null||n===null?null:o9(e,n),t[0]=e,t[1]=n,t[2]=r):r=t[2],r}function pSe(){return c9(s9())}function mSe(e){let t=(0,Dp.c)(2),n=q7(e),r;return t[0]===n?r=t[1]:(r=wr(n)?n.value.httpBaseUrl:null,t[0]=n,t[1]=r),r}function hSe(e,t){let n=(0,Dp.c)(6),r=(0,O.useContext)(FK),i=typeof t==`string`?t:t?.label??e.label,a=typeof t==`string`?!0:t?.reportFailure??!0,o=typeof t==`string`?!0:t?.reportDefect??!0,s;return n[0]!==e||n[1]!==i||n[2]!==r||n[3]!==o||n[4]!==a?(s=t=>pK(r,e,t,{label:i,reportFailure:a,reportDefect:o}),n[0]=e,n[1]=i,n[2]=r,n[3]=o,n[4]=a,n[5]=s):s=n[5],s}var l9=O.createContext(void 0);function u9(e){let t=O.useContext(l9);if(t===void 0&&!e)throw Error(jY(72));return t}var gSe={...R0,disabled:p0(e=>e.disabled),instantType:p0(e=>e.instantType),isInstantPhase:p0(e=>e.isInstantPhase),trackCursorAxis:p0(e=>e.trackCursorAxis),disableHoverablePopup:p0(e=>e.disableHoverablePopup),lastOpenChangeReason:p0(e=>e.openChangeReason),closeOnClick:p0(e=>e.closeOnClick),closeDelay:p0(e=>e.closeDelay),hasViewport:p0(e=>e.hasViewport)},_Se=class e extends b0{constructor(e,t,n=!1){let r=new j0,i={...vSe(),...e};i.floatingRootContext=N0(r,t,n),super(i,{popupRef:O.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:r},gSe)}setOpen=(e,t)=>{let n=t.reason,r=n===zX,i=e&&n===`trigger-focus`,a=!e&&(n===`trigger-press`||n===`escape-key`);if(t.preventUnmountOnClose=()=>{this.set(`preventUnmountingOnClose`,!0)},this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let o=()=>{let r={open:e,openChangeReason:n};i?r.instantType=`focus`:a?r.instantType=`dismiss`:n===`trigger-hover`&&(r.instantType=void 0),E0(r,e,t.trigger),this.update(r)};r?Tp.flushSync(o):o()};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,xQ(RX,e))}static useStore(t,n){return w0(t,(t,r)=>new e(n,t,r)).store}};function vSe(){return{...M0(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,hasViewport:!1}}var ySe=g0(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=_Se.useStore(l?.store,{open:n,openProp:r,activeTriggerId:d,triggerIdProp:u});B2(()=>{r===void 0&&p.state.open===!1&&n===!0&&p.update({open:!0,activeTriggerId:d})}),p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let m=p.useState(`open`),h=!t&&m,g=p.useState(`activeTriggerId`),_=p.useState(`mounted`),v=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i}),p.useSyncedValue(`disabled`,t),O0(p);let{forceUnmount:y,transitionStatus:b}=k0(h,p),x=p.useState(`isInstantPhase`),S=p.useState(`instantType`),C=p.useState(`lastOpenChangeReason`),w=O.useRef(null);BZ(()=>{m&&t&&p.setOpen(!1,xQ(aZ))},[m,t,p]),BZ(()=>{b===`ending`&&C===`none`||b!==`ending`&&x?(S!==`delay`&&(w.current=S),p.set(`instantType`,`delay`)):w.current!==null&&(p.set(`instantType`,w.current),w.current=null)},[b,x,C,S,p]),BZ(()=>{h&&(g??p.set(`payload`,void 0))},[p,g,h]);let T=O.useCallback(()=>{p.setOpen(!1,xQ(oZ))},[p]);O.useImperativeHandle(o,()=>({unmount:y,close:T}),[y,T]);let E=h||_||!t&&a!==`none`;return(0,N.jsxs)(l9.Provider,{value:p,children:[E&&(0,N.jsx)(bSe,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:v}):f]})});function bSe({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=V1(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=Ofe(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n});return A0(e,{activeTriggerProps:O.useMemo(()=>tX(a.reference,i.reference),[a.reference,i.reference]),inactiveTriggerProps:O.useMemo(()=>tX(a.trigger,i.trigger),[a.trigger,i.trigger]),popupProps:O.useMemo(()=>tX(C0,a.floating,i.floating),[a.floating,i.floating])}),null}var d9=O.createContext(void 0);function xSe(){return O.useContext(d9)}var SSe=function(e){return e[e.popupOpen=EX.popupOpen]=`popupOpen`,e.triggerDisabled=`data-trigger-disabled`,e}({}),f9=`data-base-ui-tooltip-trigger`;function p9(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(mZ(n))return n}}let t=e.target;return mZ(t)?t:null}function CSe(e){let t=e;for(;t;){if(t.hasAttribute(f9))return t;let e=t.parentElement;if(e){t=e;continue}let n=t.getRootNode();t=`host`in n&&mZ(n.host)?n.host:null}return null}var wSe=_0(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=u9(!0),m=a?.store??p;if(!m)throw Error(jY(82));let h=vQ(d),g=m.useState(`isTriggerActive`,h),_=m.useState(`isOpenedByTrigger`,h),v=m.useState(`floatingRootContext`),y=O.useRef(null),b=c??600,x=u??0,{registerTrigger:S,isMountedByThisTrigger:C}=D0(h,y,m,{payload:o,closeOnClick:l,closeDelay:x}),w=xSe(),{delayRef:T,isInstantPhase:E,hasProvider:ee}=qde(v,{open:_}),te=G0(v);m.useSyncedValue(`isInstantPhase`,E);let D=m.useState(`disabled`),ne=s??D,re=a$(ne),ie=m.useState(`trackCursorAxis`),k=m.useState(`disableHoverablePopup`),ae=O.useRef(!1),A=LQ(),oe=O.useRef(void 0);function se(){let e=w?.delay,t=typeof T.current==`object`?T.current.open:void 0,n=b;return ee&&(n=t===0?0:c??e??b),n}function ce(e){let t=y.current;if(!t||!e)return!1;let n=CSe(e);return n!==null&&n!==t&&GQ(t,n)}function le(e){let t=ce(e);return ae.current=t,t&&(te.openChangeTimeout.clear(),te.restTimeout.clear(),te.restTimeoutPending=!1,A.clear()),t}let ue=q0(v,{enabled:!ne,mouseOnly:!0,move:!1,handleClose:!k&&ie!==`both`?i2():null,restMs:se,delay(){let e=typeof T.current==`object`?T.current.close:void 0,t=x;return u==null&&ee&&(t=e),{close:t}},triggerElementRef:y,isActiveTrigger:g,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!ae.current}}),de=V0(v,{enabled:!ne}).reference,fe=e=>{let t=ae.current,n=p9(e),r=le(n),i=y.current,a=i&&n&&GQ(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,xQ(zX,e));return}if(t&&!r&&a&&!re.current&&!m.select(`open`)&&i&&VQ(oe.current)){let t=()=>{!ae.current&&!re.current&&!m.select(`open`)&&m.setOpen(!0,xQ(zX,e,i))},n=se();n===0?(A.clear(),t()):A.start(n,t)}},pe=m.useState(`triggerProps`,C);return hX(`button`,e,{state:{open:_},ref:[t,S,y],props:[ue,de,C||ie!==`none`?pe:void 0,{onMouseOver(e){fe(e.nativeEvent)},onFocus(e){ce(p9(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){ae.current=!1,A.clear(),oe.current=void 0},onPointerEnter(e){oe.current=e.pointerType},onPointerDown(e){oe.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:h,[SSe.triggerDisabled]:ne?``:void 0,[f9]:ne?void 0:``},f],stateAttributesMapping:MX})}),m9=O.createContext(void 0);function TSe(){let e=O.useContext(m9);if(e===void 0)throw Error(jY(70));return e}var h9=O.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{portalNode:c,portalSubtree:l}=C1({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,N.jsxs)(O.Fragment,{children:[l,c&&Tp.createPortal(n,c)]})}),ESe=O.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return u9().useState(`mounted`)||n?(0,N.jsx)(m9.Provider,{value:n,children:(0,N.jsx)(h9,{ref:t,...r})}):null}),g9=O.createContext(void 0);function _9(){let e=O.useContext(g9);if(e===void 0)throw Error(jY(71));return e}var DSe=O.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=b1,style:g,..._}=e,v=u9(),y=TSe(),b=v.useState(`open`),x=v.useState(`mounted`),S=v.useState(`trackCursorAxis`),C=v.useState(`disableHoverablePopup`),w=v.useState(`floatingRootContext`),T=v.useState(`instantType`),E=v.useState(`transitionStatus`),ee=O2({anchor:i,positionMethod:a,floatingRootContext:w,mounted:x,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:y,collisionAvoidance:h,adaptiveOrigin:v.useState(`hasViewport`)?T2:void 0}),te=M2(e,O.useMemo(()=>({open:b,side:ee.side,align:ee.align,anchorHidden:ee.anchorHidden,instant:S===`none`?T:`tracking-cursor`}),[b,ee.side,ee.align,ee.anchorHidden,S,T]),{styles:ee.positionerStyles,transitionStatus:E,props:_,refs:[t,v.useStateSetter(`positionerElement`)],hidden:!x,inert:!b||S===`both`||C});return(0,N.jsx)(g9.Provider,{value:ee,children:te})}),OSe={...PX,...wX},kSe=O.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=u9(),{side:s,align:c}=_9(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);MQ({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),K0(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return hX(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[f,v2(d),a],stateAttributesMapping:OSe})}),ASe=function(e){let{delay:t,closeDelay:n,timeout:r=400}=e,i=O.useMemo(()=>({delay:t,closeDelay:n}),[t,n]),a=O.useMemo(()=>({open:t,close:n}),[t,n]);return(0,N.jsx)(d9.Provider,{value:i,children:(0,N.jsx)(Kde,{delay:a,timeoutMs:r,children:e.children})})},jSe=function(e){return e.popupWidth=`--popup-width`,e.popupHeight=`--popup-height`,e}({}),MSe={activationDirection:e=>e?{"data-activation-direction":e}:null},NSe=O.forwardRef(function(e,t){let{render:n,className:r,style:i,children:a,...o}=e,s=u9(),c=_9(),l=s.useState(`instantType`),{children:u,state:d}=o4({store:s,side:c.side,cssVars:jSe,children:a});return hX(`div`,e,{state:{activationDirection:d.activationDirection,transitioning:d.transitioning,instant:l},ref:t,props:[o,{children:u}],stateAttributesMapping:MSe})}),PSe=ASe,FSe=ySe;function ISe(e){let t=(0,Dp.c)(2),n;return t[0]===e?n=t[1]:(n=(0,N.jsx)(wSe,{"data-slot":`tooltip-trigger`,...e}),t[0]=e,t[1]=n),n}function LSe(e){let t=(0,Dp.c)(24),n,r,i,a,o,s,c,l;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4],o=t[5],s=t[6],c=t[7],l=t[8]):({className:i,align:o,sideOffset:s,side:c,variant:l,anchor:n,children:r,...a}=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,t[8]=l);let u=o===void 0?`center`:o,d=s===void 0?4:s,f=c===void 0?`top`:c,p=(l===void 0?`default`:l)===`glass`?`dropdown-glass shadow-xl shadow-black/25 before:hidden`:`border bg-popover not-dark:bg-clip-padding shadow-md/5`,m;t[9]!==i||t[10]!==p?(m=q8(`relative flex h-(--popup-height,auto) w-(--popup-width,auto) origin-(--transform-origin) text-balance rounded-md text-popover-foreground text-xs transition-[width,height,scale,opacity] before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-md)-1px)] before:shadow-[0_1px_--theme(--color-black/4%)] data-ending-style:scale-98 data-starting-style:scale-98 data-ending-style:opacity-0 data-starting-style:opacity-0 data-instant:duration-0 dark:before:shadow-[0_-1px_--theme(--color-white/6%)]`,p,i),t[9]=i,t[10]=p,t[11]=m):m=t[11];let h;t[12]===r?h=t[13]:(h=(0,N.jsx)(NSe,{className:`relative size-full overflow-clip px-(--viewport-inline-padding) py-1 [--viewport-inline-padding:--spacing(2)] data-instant:transition-none **:data-current:data-ending-style:opacity-0 **:data-current:data-starting-style:opacity-0 **:data-previous:data-ending-style:opacity-0 **:data-previous:data-starting-style:opacity-0 **:data-current:w-[calc(var(--popup-width)-2*var(--viewport-inline-padding)-2px)] **:data-previous:w-[calc(var(--popup-width)-2*var(--viewport-inline-padding)-2px)] **:data-previous:truncate **:data-current:opacity-100 **:data-previous:opacity-100 **:data-current:transition-opacity **:data-previous:transition-opacity`,"data-slot":`tooltip-viewport`,children:r}),t[12]=r,t[13]=h);let g;t[14]!==a||t[15]!==m||t[16]!==h?(g=(0,N.jsx)(kSe,{className:m,"data-slot":`tooltip-popup`,...a,children:h}),t[14]=a,t[15]=m,t[16]=h,t[17]=g):g=t[17];let _;return t[18]!==u||t[19]!==n||t[20]!==f||t[21]!==d||t[22]!==g?(_=(0,N.jsx)(ESe,{children:(0,N.jsx)(DSe,{align:u,anchor:n,className:`pointer-events-none z-50 h-(--positioner-height) w-(--positioner-width) max-w-(--available-width) transition-[top,left,right,bottom,transform] data-instant:transition-none`,"data-slot":`tooltip-positioner`,side:f,sideOffset:d,children:g})}),t[18]=u,t[19]=n,t[20]=f,t[21]=d,t[22]=g,t[23]=_):_=t[23],_}function RSe(e){return e.bootstrapComplete?e.serverThreadDetailExists||e.draftThreadExists?`ready`:e.serverThreadDetailDeleted?`missing`:e.serverThreadShellExists?`loading`:`missing`:`loading`}function zSe(e){return{environmentId:e.environmentId,threadId:e.threadId}}function BSe(e){return{draftId:e}}function VSe(e){return!e.environmentId||!e.threadId?null:NB(e.environmentId,e.threadId)}function HSe(e){return e.environmentId&&e.threadId?{kind:`server`,threadRef:NB(e.environmentId,e.threadId)}:e.draftId?{kind:`draft`,draftId:e.draftId}:null}function USe(e,t){return e?.kind===`server`?e.threadRef:e?.kind!==`draft`||!t?.promotedTo?null:t.promotedTo}var v9=`task`,WSe=`p4code:right-panel-state:v2`,GSe=7,y9={isOpen:!1,activeSurfaceId:null,surfaces:[]},b9=e=>{switch(e){case`diff`:return{id:`diff`,kind:e};case`files`:return{id:`files`,kind:e};case`plan`:return{id:`plan`,kind:e};case`task`:return{id:v9,kind:e}}},x9=e=>e?{id:`browser:${e}`,kind:`preview`,resourceId:e}:{id:`browser:new`,kind:`preview`,resourceId:null},KSe=(e,t,n,r,i)=>({id:e,kind:`file`,relativePath:t,...n===void 0?{}:{rootPath:n},revealLine:r,revealRequestId:i});function qSe(e){let t=Math.max(e.lastIndexOf(`/`),e.lastIndexOf(`\\`));return t<=0?{rootPath:e.slice(0,1)||`/`,relativePath:e.slice(1)}:{rootPath:e.slice(0,t),relativePath:e.slice(t+1)}}var JSe=e=>({id:`terminal:${e}`,kind:`terminal`,resourceId:e,terminalIds:[e],activeTerminalId:e}),S9=(e,t,n=!0)=>({isOpen:!0,surfaces:e.surfaces.some(e=>e.id===t.id)?e.surfaces:[...e.surfaces,t],activeSurfaceId:n?t.id:e.activeSurfaceId}),C9=(e,t,n)=>{let r=e[t]??y9,i=n(r);if(!i.isOpen&&i.activeSurfaceId===null&&i.surfaces.length===0){if(!(t in e))return e;let{[t]:n,...r}=e;return r}return i===r?e:{...e,[t]:i}};function YSe(e){return e===void 0||!Number.isFinite(e)?null:Math.max(1,Math.trunc(e))}var w9=(e,t)=>{let n=e.surfaces.filter(e=>e.kind!==`files`),r=n.find(e=>e.id===t.surfaceId&&e.kind===`file`),i=KSe(t.surfaceId,t.relativePath,t.rootPath,YSe(t.line),(r?.revealRequestId??0)+1);return{isOpen:!0,activeSurfaceId:i.id,surfaces:r?n.map(e=>e.id===i.id?i:e):[...n,i]}};function XSe(e){return!e||typeof e!=`object`?{byThreadKey:{}}:{byThreadKey:`byThreadKey`in e&&e.byThreadKey&&typeof e.byThreadKey==`object`?Object.fromEntries(Object.entries(e.byThreadKey).map(([e,t])=>{let n=t&&typeof t==`object`?t:null,r=Array.isArray(n?.surfaces)?n.surfaces.flatMap(e=>{if(e.kind===`file`){let t=typeof e.revealLine==`number`&&Number.isFinite(e.revealLine)?Math.max(1,Math.trunc(e.revealLine)):null,n=typeof e.revealRequestId==`number`&&Number.isSafeInteger(e.revealRequestId)&&e.revealRequestId>=0?e.revealRequestId:0,{rootPath:r,...i}=e,a=typeof r==`string`&&r.length>0?r:void 0;return[{...i,...a===void 0?{}:{rootPath:a},revealLine:t,revealRequestId:n}]}if(e.kind!==`terminal`)return[e];if(!(`resourceId`in e)||typeof e.resourceId!=`string`||e.id!==`terminal:${e.resourceId}`)return[];let t=`terminalIds`in e&&Array.isArray(e.terminalIds)?[...new Set(e.terminalIds.filter(e=>typeof e==`string`))]:[e.resourceId],n=`activeTerminalId`in e&&typeof e.activeTerminalId==`string`&&t.includes(e.activeTerminalId)?e.activeTerminalId:t[0]??e.resourceId;return[{...e,terminalIds:t.length>0?t:[e.resourceId],activeTerminalId:n}]}):[],i=r.some(e=>e.id===n?.activeSurfaceId)?n?.activeSurfaceId??null:null;return[e,{isOpen:typeof n?.isOpen==`boolean`?n.isOpen:i!==null,surfaces:r,activeSurfaceId:i}]})):{}}}var ZSe=v6()(x6(e=>({byThreadKey:{},open:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>n===`preview`?S9(e,e.surfaces.find(e=>e.kind===`preview`)??x9(null)):S9(e,b9(n)))})),openBrowser:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=x9(n),r=n?e.surfaces.filter(e=>e.id!==`browser:new`):e.surfaces;return S9({...e,surfaces:r},t)})})),openFile:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>w9(e,{surfaceId:`file:${n}`,relativePath:n,rootPath:void 0,line:r}))})),openLocalFile:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let{rootPath:t,relativePath:i}=qSe(n);return w9(e,{surfaceId:`file:${n}`,relativePath:i,rootPath:t,line:r})})})),openTerminal:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>S9(e,JSe(n)))})),splitTerminal:(t,n,r,i=`horizontal`)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>({...e,isOpen:!0,activeSurfaceId:n,surfaces:e.surfaces.map(e=>{if(e.id!==n||e.kind!==`terminal`)return e;let{splitDirection:t,...a}=e;return{...a,terminalIds:e.terminalIds.includes(r)?e.terminalIds:[...e.terminalIds,r],activeTerminalId:r,...i===`vertical`?{splitDirection:`vertical`}:{}}})}))})),activateTerminal:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>({...e,activeSurfaceId:n,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`terminal`&&e.terminalIds.includes(r)?{...e,activeTerminalId:r}:e)}))})),closeTerminal:(t,n,r)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.find(e=>e.id===n&&e.kind===`terminal`);if(!t||t.kind!==`terminal`)return e;let i=t.terminalIds.filter(e=>e!==r);if(i.length===0){let t=e.surfaces.findIndex(e=>e.id===n),r=e.surfaces.filter(e=>e.id!==n),i=r[Math.min(t,r.length-1)]??null;return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r,activeSurfaceId:e.activeSurfaceId===n?i?.id??null:e.activeSurfaceId}}return{...e,surfaces:e.surfaces.map(e=>e.id===n&&e.kind===`terminal`?{...e,terminalIds:i,activeTerminalId:e.activeTerminalId===r?i.at(-1)??i[0]:e.activeTerminalId}:e)}})})),activateSurface:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.surfaces.some(e=>e.id===n)?{...e,isOpen:!0,activeSurfaceId:n}:e)})),closeSurface:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0)return e;let r=e.surfaces.filter(e=>e.id!==n);if(e.activeSurfaceId!==n)return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r};let i=r[Math.min(t,r.length-1)]??null;return{...e,isOpen:r.length>0&&e.isOpen,surfaces:r,activeSurfaceId:i?.id??null}})})),closeOtherSurfaces:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.find(e=>e.id===n);return!t||e.surfaces.length===1?e:{...e,isOpen:!0,surfaces:[t],activeSurfaceId:t.id}})})),closeSurfacesToRight:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.findIndex(e=>e.id===n);if(t<0||t===e.surfaces.length-1)return e;let r=e.surfaces.slice(0,t+1),i=r.some(t=>t.id===e.activeSurfaceId);return{...e,surfaces:r,activeSurfaceId:i?e.activeSurfaceId:n}})})),closeAllSurfaces:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.surfaces.length===0?e:{...e,isOpen:!1,surfaces:[],activeSurfaceId:null})})),reconcileBrowserSurfaces:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=new Set(n.map(e=>`browser:${e}`)),r=e.surfaces.filter(e=>e.kind!==`preview`),i=e.surfaces.filter(e=>e.kind===`preview`&&e.id!==`browser:new`&&t.has(e.id)),a=new Set(i.map(e=>e.id)),o=n.filter(e=>!a.has(`browser:${e}`)).map(e=>x9(e)),s=[...r,...i,...o],c=s.some(t=>t.id===e.activeSurfaceId),l=s.find(e=>e.kind===`preview`);return{...e,surfaces:s,activeSurfaceId:c?e.activeSurfaceId:l?.id??s[0]?.id??null}})})),reconcileFileSurfaces:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{if(n)return e;let t=e.surfaces.filter(e=>e.kind!==`files`&&(e.kind!==`file`||e.rootPath!==void 0));if(t.length===e.surfaces.length)return e;let r=t.some(t=>t.id===e.activeSurfaceId);return{...e,isOpen:t.length>0?e.isOpen:!1,surfaces:t,activeSurfaceId:r?e.activeSurfaceId:t.at(-1)?.id??null}})})),show:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.isOpen?e:{...e,isOpen:!0})})),close:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>e.isOpen?{...e,isOpen:!1}:e)})),toggleVisibility:t=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>({...e,isOpen:!e.isOpen}))})),toggle:(t,n)=>e(e=>({byThreadKey:C9(e.byThreadKey,IB(t),e=>{let t=e.surfaces.find(t=>t.id===e.activeSurfaceId);return e.isOpen&&t?.kind===n?{...e,isOpen:!1}:n===`preview`?S9(e,e.surfaces.find(e=>e.kind===`preview`)??x9(null)):S9(e,b9(n))})})),removeThread:t=>e(e=>{let n=IB(t);if(!(n in e.byThreadKey))return e;let{[n]:r,...i}=e.byThreadKey;return{byThreadKey:i}})}),{name:WSe,version:GSe,storage:y6(()=>V6(typeof window<`u`?window.localStorage:void 0)),partialize:e=>({byThreadKey:e.byThreadKey}),migrate:XSe}));function T9(e,t){return t?e[IB(t)]??y9:y9}function QSe(e,t){let n=T9(e,t);return n.isOpen?n.surfaces.find(e=>e.id===n.activeSurfaceId)?.kind??null:null}function $Se(e,t){let n=T9(e,t);return n.isOpen?n.surfaces.find(e=>e.id===n.activeSurfaceId)??null:null}var E9=O.forwardRef(function(e,t){let{render:n,className:r,id:i,name:a,value:o,disabled:s=!1,onValueChange:c,defaultValue:l,autoFocus:u=!1,style:d,...f}=e,{state:p,name:m,disabled:h,setTouched:g,setDirty:_,validityData:v,setFocused:y,setFilled:b,validationMode:x,validation:S}=N4(),C=h||s,w=m??a,T={...p,disabled:C},{labelId:E}=F4(),ee=I4({id:i});BZ(()=>{let e=o!=null;S.inputRef.current?.value||e&&o!==``?b(!0):e&&o===``&&b(!1)},[S.inputRef,b,o]);let te=O.useRef(null);BZ(()=>{u&&te.current===WQ(o$(te.current))&&y(!0)},[u,y]);let[D]=cZ({controlled:o,default:l,name:`FieldControl`,state:`value`}),ne=o!==void 0,re=ne?D:void 0,ie=LZ(()=>S.inputRef.current?.value);return P4(S.inputRef,ee,re,ie),hX(`input`,e,{ref:[t,te],state:T,props:[{id:ee,disabled:C,name:w,ref:S.inputRef,"aria-labelledby":E,autoFocus:u,...ne?{value:re}:{defaultValue:l},onChange(e){let t=e.currentTarget.value;c?.(t,xQ(LX,e.nativeEvent)),_(t!==v.initialValue),b(t!==``)},onFocus(){y(!0)},onBlur(e){g(!0),y(!1),x===`onBlur`&&S.commit(e.currentTarget.value)},onKeyDown(e){e.currentTarget.tagName===`INPUT`&&e.key===`Enter`&&(g(!0),S.commit(e.currentTarget.value))}},S.getInputValidationProps(),f],stateAttributesMapping:A4})}),D9=H([`light`,`dark`,`system`]),O9=`p4code:theme`,k9=`(prefers-color-scheme: dark)`,A9={theme:`system`,systemDark:!1},j9=`theme-color`,eCe=`meta[name="${j9}"][data-dynamic-theme-color="true"]`,M9=class extends G()(`ThemeStorageError`,{operation:H([`read`,`write`]),storageKey:L,theme:F(D9),cause:Dy()}){get message(){return`Failed to ${this.operation} theme preference for ${this.storageKey}.`}},N9=bv(M9),P9=class extends G()(`DesktopThemeSyncError`,{theme:D9,cause:Dy()}){get message(){return`Failed to sync the ${this.theme} theme to the desktop shell.`}},tCe=bv(P9),F9=[],I9=null,L9=null,R9=null,z9=null;function B9(){for(let e of F9)e()}function V9(){return typeof window<`u`&&typeof window.matchMedia==`function`&&window.matchMedia(k9).matches}function nCe(){if(typeof window>`u`)return A9.theme;let e;try{e=window.localStorage.getItem(O9)}catch(e){throw new M9({operation:`read`,storageKey:O9,cause:e})}return e===`light`||e===`dark`||e===`system`?e:A9.theme}function rCe(e){if(!(typeof window>`u`))try{window.localStorage.setItem(O9,e),z9=null}catch(t){throw new M9({operation:`write`,storageKey:O9,theme:e,cause:t})}}function H9(){if(z9!==null)return A9.theme;try{return nCe()}catch(e){let t=N9(e)?e:new M9({operation:`read`,storageKey:O9,cause:e});return z9=t,console.error(t.message,{operation:t.operation,storageKey:t.storageKey,...FG(t)}),A9.theme}}function iCe(){let e=document.querySelector(eCe);return e||(e=document.createElement(`meta`),e.name=j9,e.setAttribute(`data-dynamic-theme-color`,`true`),document.head.append(e),e)}function U9(e){let t=e?.trim().toLowerCase();return!t||t===`transparent`||t===`rgba(0, 0, 0, 0)`||t===`rgba(0 0 0 / 0)`?null:e?.trim()??null}function aCe(){return document.querySelector(`main[data-slot='sidebar-inset']`)??document.querySelector(`[data-slot='sidebar-inner']`)??document.body}function W9(){if(typeof document>`u`||typeof getComputedStyle>`u`)return;let e=U9(getComputedStyle(aCe()).backgroundColor),t=U9(getComputedStyle(document.body).backgroundColor),n=e??t;n&&(document.documentElement.style.backgroundColor=n,document.body.style.backgroundColor=n,iCe().setAttribute(`content`,n))}function G9(e,t=!1){if(typeof document>`u`||typeof window>`u`)return;let n=e===`system`?V9():!1;if(R9?.theme===e&&R9.systemDark===n){K9(e);return}t&&document.documentElement.classList.add(`no-transitions`);let r=e===`dark`||e===`system`&&n;document.documentElement.classList.toggle(`dark`,r),R9={theme:e,systemDark:n},W9(),K9(e),t&&(document.documentElement.offsetHeight,requestAnimationFrame(()=>{document.documentElement.classList.remove(`no-transitions`)}))}async function oCe(e,t){try{await e.setTheme(t)}catch(e){throw new P9({theme:t,cause:e})}}function K9(e){if(typeof window>`u`)return;let t=window.desktopBridge;!t||typeof t.setTheme!=`function`||L9===e||(L9=e,oCe(t,e).catch(t=>{let n=tCe(t)?t:new P9({theme:e,cause:t});console.error(n.message,{theme:n.theme,...FG(n)}),L9===e&&(L9=null)}))}typeof document<`u`&&typeof window<`u`&&G9(H9());function sCe(){if(typeof window>`u`)return A9;let e=H9(),t=e===`system`?V9():!1;return I9&&I9.theme===e&&I9.systemDark===t||(I9={theme:e,systemDark:t}),I9}function cCe(){return A9}function lCe(e){if(typeof window>`u`)return()=>{};F9.push(e);let t=typeof window.matchMedia==`function`?window.matchMedia(k9):null,n=()=>{H9()===`system`&&G9(`system`,!0),B9()};t?.addEventListener(`change`,n);let r=e=>{e.key===O9&&(z9=null,G9(H9(),!0),B9())};return window.addEventListener(`storage`,r),()=>{F9=F9.filter(t=>t!==e),t?.removeEventListener(`change`,n),window.removeEventListener(`storage`,r)}}function uCe(){let e=(0,Dp.c)(6),t=(0,O.useSyncExternalStore)(lCe,sCe,cCe),n=t.theme,r=n===`system`?t.systemDark?`dark`:`light`:n,i=dCe,a,o;e[0]===n?(a=e[1],o=e[2]):(a=()=>{G9(n)},o=[n],e[0]=n,e[1]=a,e[2]=o),(0,O.useEffect)(a,o);let s;return e[3]!==r||e[4]!==n?(s={theme:n,setTheme:i,resolvedTheme:r},e[3]=r,e[4]=n,e[5]=s):s=e[5],s}function dCe(e){if(!(typeof window>`u`)){try{rCe(e)}catch(t){let n=t,r=N9(n)?n:new M9({operation:`write`,storageKey:O9,theme:e,cause:n});console.error(r.message,{operation:r.operation,storageKey:r.storageKey,theme:e,...FG(r)});return}G9(e,!0),B9()}}function fCe(e){let t=(0,Dp.c)(15),n,r,i,a;t[0]===e?(n=t[1],r=t[2],i=t[3],a=t[4]):({className:n,size:i,unstyled:a,...r}=e,t[0]=e,t[1]=n,t[2]=r,t[3]=i,t[4]=a);let o=i===void 0?`default`:i,s=a===void 0?!1:a,c;t[5]!==n||t[6]!==s?(c=q8(!s&&`relative inline-flex w-full rounded-lg border border-input bg-background not-dark:bg-clip-padding text-base text-foreground shadow-xs/5 ring-ring/24 transition-shadow before:pointer-events-none before:absolute before:inset-0 before:rounded-[calc(var(--radius-lg)-1px)] has-focus-visible:has-aria-invalid:border-destructive/64 has-focus-visible:has-aria-invalid:ring-destructive/16 has-aria-invalid:border-destructive/36 has-focus-visible:border-ring has-disabled:opacity-64 has-[:disabled,:focus-visible,[aria-invalid]]:shadow-none has-focus-visible:ring-[3px] not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_1px_--theme(--color-black/4%)] sm:text-sm dark:bg-input/32 dark:has-aria-invalid:ring-destructive/24 dark:not-has-disabled:has-not-focus-visible:not-has-aria-invalid:before:shadow-[0_-1px_--theme(--color-white/6%)]`,n)||void 0,t[5]=n,t[6]=s,t[7]=c):c=t[7];let l;t[8]!==r||t[9]!==o?(l=(0,N.jsx)(E9,{render:e=>(0,N.jsx)(`textarea`,{className:q8(`field-sizing-content min-h-17.5 w-full rounded-[inherit] px-[calc(--spacing(3)-1px)] py-[calc(--spacing(1.5)-1px)] outline-none max-sm:min-h-20.5`,o===`sm`&&`min-h-16.5 px-[calc(--spacing(2.5)-1px)] py-[calc(--spacing(1)-1px)] max-sm:min-h-19.5`,o===`lg`&&`min-h-18.5 py-[calc(--spacing(2)-1px)] max-sm:min-h-21.5`),"data-slot":`textarea`,...tX(e,r)})}),t[8]=r,t[9]=o,t[10]=l):l=t[10];let u;return t[11]!==o||t[12]!==c||t[13]!==l?(u=(0,N.jsx)(`span`,{className:c,"data-size":o,"data-slot":`textarea-control`,children:l}),t[11]=o,t[12]=c,t[13]=l,t[14]=u):u=t[14],u}var pCe=/https?:\/\/[^\s"'`<>]+/g,mCe=/(?:~\/|\.{1,2}\/|\/|[A-Za-z]:[\\/]|\\\\)[^\s"'`<>]+|[A-Za-z0-9._-]+(?:\/[A-Za-z0-9._-]+)+(?::\d+){0,2}/g,q9=/[.,;!?]+$/;function hCe(e){let t=e.replace(q9,``);if(t.length===0)return t;let n=(e,n)=>{for(;t.endsWith(n);){if(t.split(e).length-1>=t.split(n).length-1)return;t=t.slice(0,-1)}};return n(`(`,`)`),n(`[`,`]`),n(`{`,`}`),t}function gCe(e,t){return e.start<t.end&&t.start<e.end}function J9(e,t,n,r){let i=[];n.lastIndex=0;for(let a of e.matchAll(n)){let e=a[0],n=a.index??-1;if(n<0||e.length===0)continue;let o=hCe(e);if(o.length===0||t===`path`&&/^https?:\/\//i.test(o))continue;let s={kind:t,text:o,start:n,end:n+o.length};[...r,...i].some(e=>gCe(s,e))||i.push(s)}return i}function Y9(e){return/^[A-Za-z]:[\\/]/.test(e)||e.startsWith(`\\\\`)}function _Ce(e){return e.startsWith(`/`)||Y9(e)}function X9(e){return Y9(e)||/[A-Za-z]:\\/.test(e)}function Z9(e,t,n){let r=e.replace(/[\\/]+$/,``);return n===`\\`?`${r}\\${t.replaceAll(`/`,`\\`)}`:`${r}/${t.replace(/^\/+/,``)}`}function vCe(e){let t=e.match(/^\/Users\/([^/]+)/);if(t?.[1])return`/Users/${t[1]}`;let n=e.match(/^\/home\/([^/]+)/);if(n?.[1])return`/home/${n[1]}`;let r=e.match(/^([A-Za-z]:\\Users\\[^\\]+)/);if(r?.[1])return r[1]}function Q9(e){let t=e,n,r,i=t.match(/:(\d+)$/);if(!i?.[1])return{path:t,line:void 0,column:void 0};n=i[1],t=t.slice(0,-i[0].length);let a=t.match(/:(\d+)$/);return a?.[1]?(r=a[1],t=t.slice(0,-a[0].length)):(r=n,n=void 0),{path:t,line:r,column:n}}function yCe(e){let t=J9(e,`url`,pCe,[]),n=J9(e,`path`,mCe,t);return[...t,...n].toSorted((e,t)=>e.start-t.start)}function bCe(e,t){let n=t(e-1);if(!n)return null;let r=e,i=n;for(;r>1&&i.isWrapped;){let e=t(r-2);if(!e)return null;--r,i=e}let a=[],o=0,s=r;for(;;){let e=t(s-1);if(!e)break;let n=t(s)?.isWrapped===!0,r=e.translateToString(!n);if(a.push({bufferLineNumber:s,text:r,startIndex:o,endIndex:o+r.length}),o+=r.length,!n)break;s+=1}return{text:a.map(e=>e.text).join(``),segments:a}}function $9(e,t){for(let n of e)if(t<n.endIndex)return{x:t-n.startIndex+1,y:n.bufferLineNumber};let n=e[e.length-1];return{x:Math.max(n?.text.length??0,1),y:n?.bufferLineNumber??1}}function xCe(e,t){return{start:$9(e.segments,t.start),end:$9(e.segments,t.end-1)}}function SCe(e,t){return e.start.y<=t&&t<=e.end.y}function CCe(e,t=typeof navigator>`u`?``:navigator.platform){return t.length===0?!1:J8(t)?e.metaKey&&!e.ctrlKey:e.ctrlKey&&!e.metaKey}function wCe(e,t){let{path:n,line:r,column:i}=Q9(e),a=n;if(n.startsWith(`~/`)){let e=vCe(t);if(e){let t=X9(e)?`\\`:`/`;a=Z9(e,n.slice(2),t)}}else _Ce(n)||(a=Z9(t,n,X9(t)?`\\`:`/`));return r?`${a}:${r}${i?`:${i}`:``}`:a}export{Qbe as $,WQ as $a,HM as $c,M as $d,kr as $f,Vpe as $i,Rw as $l,P3 as $n,PX as $o,u4 as $r,EK as $s,n8 as $t,eb as $u,mSe as A,w1 as Aa,EL as Ac,Bd as Ad,xl as Af,j2 as Ai,NO as Al,kge as An,WX as Ao,b as Ap,H4 as Ar,JJ as As,hye as At,Dy as Au,X7 as B,F$ as Ba,fN as Bc,If as Bd,ui as Bf,p2 as Bi,NE as Bl,nge as Bn,XX as Bo,M4 as Br,zK as Bs,wve as Bt,Hv as Bu,FSe as C,V1 as Ca,tV as Cc,ef as Cd,uu as Cf,U2 as Ci,Bk as Cl,Tge as Cn,BZ as Co,ie as Cp,Q4 as Cr,rY as Cs,Dye as Ct,yb as Cu,h9 as D,N1 as Da,FB as Dc,tf as Dd,Bl as Df,L2 as Di,rae as Dl,Oge as Dn,hZ as Do,D as Dp,U4 as Dr,cY as Ds,T5 as Dt,K as Du,ISe as E,M1 as Ea,NB as Ec,rf as Ed,Kl as Ef,R2 as Ei,Dk as El,f6 as En,mZ as Eo,T as Ep,W4 as Er,lY as Es,k5 as Et,Y as Eu,nSe as F,b1 as Fa,cF as Fc,Od as Fd,Kee as Ff,S2 as Fi,AD as Fl,a6 as Fn,oZ as Fo,S as Fp,z4 as Fr,XK as Fs,g5 as Ft,Lv as Fu,Gxe as G,u$ as Ga,Due as Gc,of as Gd,yi as Gf,u2 as Gi,bT as Gl,R3 as Gn,LX as Go,S4 as Gr,jK as Gs,J8 as Gt,nie as Gu,Kxe as H,M$ as Ha,cN as Hc,hp as Hd,Fi as Hf,l2 as Hi,pE as Hl,$he as Hn,HX as Ho,k4 as Hr,fK as Hs,hve as Ht,V as Hu,rSe as I,I$ as Ia,iP as Ic,Bf as Id,Gee as If,x2 as Ii,FD as Il,oge as In,GX as Io,s as Ip,I4 as Ir,ZK as Is,Lve as It,Bv as Iu,J7 as J,o$ as Ja,_N as Jc,sf as Jd,Kr as Jf,Rpe as Ji,Uw as Jl,Lhe as Jn,zX as Jo,Ime as Jr,bK as Js,eve as Jt,Tv as Ju,Wxe as K,c$ as Ka,hN as Kc,yp as Kd,ti as Kf,d2 as Ki,Hw as Kl,U3 as Kn,VX as Ko,x4 as Kr,MK as Ks,Y_e as Kt,Jv as Ku,i9 as L,P$ as La,rP as Lc,Xf as Ld,$i as Lf,y2 as Li,LD as Ll,tge as Ln,YX as Lo,m as Lp,F4 as Lr,tq as Ls,n5 as Lt,L as Lu,pSe as M,gfe as Ma,qF as Mc,xp as Md,_a as Mf,O2 as Mi,jO as Ml,s6 as Mn,KX as Mo,l as Mp,L4 as Mr,$J as Ms,tye as Mt,fy as Mu,s9 as N,y1 as Na,VF as Nc,fp as Nd,fa as Nf,T2 as Ni,wO as Nl,l6 as Nn,$X as No,f as Np,B4 as Nr,YJ as Ns,_5 as Nt,H as Nu,hSe as O,j1 as Oa,IB as Oc,vf as Od,Hl as Of,I2 as Oi,CO as Ol,gge as On,cZ as Oo,x as Op,G4 as Or,eY as Os,pye as Ot,B as Ou,uSe as P,bfe as Pa,sF as Pc,dp as Pd,ra as Pf,C2 as Pi,zD as Pl,i6 as Pn,QX as Po,E as Pp,V4 as Pr,oq as Ps,h5 as Pt,U as Pu,U7 as Q,ZQ as Qa,qM as Qc,hf as Qd,Er as Qf,Bpe as Qi,zw as Ql,Rhe as Qn,TX as Qo,Fme as Qr,mK as Qs,Y8 as Qt,P as Qu,Rxe as R,L$ as Ra,Kue as Rc,zd as Rd,zi as Rf,v2 as Ri,ZE as Rl,$3 as Rn,qX as Ro,h as Rp,P4 as Rr,WK as Rs,t5 as Rt,z as Ru,HSe as S,p0 as Sa,qB as Sc,$d as Sd,cu as Sf,W2 as Si,Lk as Sl,Cge as Sn,VZ as So,k as Sp,$4 as Sr,mY as Ss,Oye as St,xb as Su,PSe as T,R1 as Ta,MB as Tc,af as Td,Wl as Tf,B2 as Ti,Tk as Tl,p6 as Tn,dZ as To,ne as Tp,Y4 as Tr,sY as Ts,Cye as Tt,ob as Tu,Jxe as U,j$ as Ua,oN as Uc,mp as Ud,wi as Uf,o2 as Ui,gE as Ul,Z3 as Un,tZ as Uo,A4 as Ur,AK as Us,fve as Ut,Ay as Uu,Hxe as V,N$ as Va,mN as Vc,gp as Vd,Aee as Vf,c2 as Vi,fE as Vl,Y3 as Vn,ZX as Vo,N4 as Vr,FK as Vs,gve as Vt,Gv as Vu,Yxe as W,z$ as Wa,bN as Wc,Zd as Wd,ki as Wf,m2 as Wi,tE as Wl,ege as Wn,eZ as Wo,C4 as Wr,NK as Ws,q8 as Wt,Sv as Wu,q7 as X,i$ as Xa,yN as Xc,wf as Xd,Pr as Xf,f2 as Xi,Xw as Xl,F3 as Xn,FX as Xo,Lme as Xr,DK as Xs,Q_e as Xt,cy as Xu,Lxe as Y,a$ as Ya,xue as Yc,Ad as Yd,xee as Yf,h2 as Yi,qw as Yl,Hhe as Yn,RX as Yo,Rme as Yr,yK as Ys,Z_e as Yt,bv as Yu,W7 as Z,r$ as Za,Sue as Zc,lf as Zd,Or as Zf,Lpe as Zi,Ww as Zl,N3 as Zn,IX as Zo,y4 as Zr,hK as Zs,X_e as Zt,F as Zu,BSe as _,w0 as _a,cV as _c,Of as _d,Tu as _f,Z2 as _i,nj as _l,z6 as _n,tQ as _o,me as _p,bhe as _r,DY as _s,ibe as _t,lC as _u,xCe as a,K0 as aa,uK as ac,Z_ as ad,zf as af,h4 as ai,nM as al,H_e as an,PQ as ao,xr as ap,j3 as ar,tX as as,Bbe as at,$C as au,VSe as b,y0 as ba,GB as bc,_p as bd,Mu as bf,J2 as bi,Qk as bl,x6 as bn,ZZ as bo,ce as bp,s3 as br,wY as bs,Jye as bt,mC as bu,fCe as c,N0 as ca,qW as cc,Bh as cd,Jne as cf,Eme as ci,Uj as cl,n_e as cn,kQ as co,pr as cp,A3 as cr,XY as cs,Abe as ct,GC as cu,E9 as d,C0 as da,iH as dc,Dh as dd,bd as df,d4 as di,Oj as dl,c_e as dn,xQ as do,zn as dp,b3 as dr,LY as ds,Y5 as dt,JC as du,a2 as ea,_K as ec,tb as ed,Pd as ef,p4 as ei,UM as el,i8 as en,GQ as eo,Ar as ep,qhe as er,NX as es,txe as et,Vw as eu,v9 as f,E0 as fa,aH as fc,Vm as fd,xd as ff,l4 as fi,Pj as fl,G6 as fn,SQ as fo,Xt as fp,whe as fr,PY as fs,Cbe as ft,qC as fu,ZSe as g,wpe as ga,oH as gc,im as gd,Eu as gf,Q2 as gi,uj as gl,V6 as gn,pQ as go,ve as gp,xhe as gr,OY as gs,cbe as gt,FC as gu,T9 as h,A0 as ha,dH as hc,tm as hd,Bu as hf,o4 as hi,xj as hl,B6 as hn,fQ as ho,ft as hp,Che as hr,kY as hs,U5 as ht,zC as hu,wCe as i,q0 as ia,cK as ic,rv as id,jd as if,m4 as ii,zse as il,K8 as in,LQ as io,br as ip,Phe as ir,hX as is,Vbe as it,TC as iu,dSe as j,yfe as ja,$I as jc,Gd as jd,va as jf,A2 as ji,TO as jl,dge as jn,UX as jo,te as jp,R4 as jr,qJ as js,b5 as jt,ay as ju,c9 as k,k1 as ka,X as kc,jf as kd,Cl as kf,M2 as ki,MO as kl,Age as kn,rZ as ko,ee as kp,K4 as kr,QJ as ks,dye as kt,R as ku,W9 as l,R0 as la,EW as lc,gh as ld,yd as lf,Ome as li,nse as ll,s_e as ln,DQ as lo,lr as lp,y3 as lr,JY as ls,$5 as lt,bC as lu,$Se as m,k0 as ma,AV as mc,om as md,Vu as mf,c4 as mi,bj as ml,a_e as mn,_Q as mo,Dt as mp,She as mr,jY as ms,mbe as mt,XC as mu,yCe as n,Q0 as na,gK as nc,Qre as nd,cf as nf,Cme as ni,Cce as nl,G8 as nn,RQ as no,wr as np,L3 as nr,xX as ns,Hbe as nt,Bw as nu,Q9 as o,z0 as oa,XG as oc,A_ as od,Id as of,g4 as oi,rM as ol,K_e as on,MQ as oo,sr as op,Fhe as or,$Y as os,s7 as ot,HC as ou,QSe as p,O0 as pa,BV as pc,am as pd,Une as pf,Sme as pi,Dj as pl,e_e as pn,vQ as po,Rt as pp,_he as pr,FY as ps,G5 as pt,sw as pu,Uxe as q,l$ as qa,gN as qc,Rd as qd,Ir as qf,Ipe as qi,Yw as ql,Yhe as qn,nZ as qo,b4 as qr,kK as qs,$_e as qt,rie as qu,CCe as r,Z0 as ra,sK as rc,nv as rd,ff as rf,f4 as ri,cM as rl,q_e as rn,IQ as ro,Tr as rp,Uhe as rr,wX as rs,l7 as rt,Jw as ru,SCe as s,M0 as sa,FG as sc,Ph as sd,Hf as sf,Tme as si,Hj as sl,U_e as sn,jQ as so,or as sp,Ihe as sr,YY as ss,c7 as st,EC as su,bCe as t,i2 as ta,SK as tc,Ky as td,Fd as tf,wme as ti,VM as tl,J_e as tn,KQ as to,Cr as tp,Jhe as tr,MX as ts,Ybe as tt,Kw as tu,uCe as u,j0 as ua,TW as uc,Eh as ud,wd as uf,Dme as ui,kj as ul,r_e as un,wQ as uo,fr as up,x3 as ur,RY as us,Tbe as ut,IC as uu,zSe as v,D0 as va,YB as vc,Dd as vd,Au as vf,X2 as vi,Wk as vl,T6 as vn,$Z as vo,pe as vp,_3 as vr,EY as vs,ebe as vt,uC as vu,LSe as w,z1 as wa,zB as wc,Ld as wd,zl as wf,H2 as wi,wk as wl,_ge as wn,LZ as wo,re as wp,X4 as wr,oY as ws,Tye as wt,cb as wu,RSe as x,v0 as xa,KB as xc,Qd as xd,_u as xf,q2 as xi,Zk as xl,v6 as xn,WZ as xo,oe as xp,o3 as xr,CY as xs,Eye as xt,Ox as xu,USe as y,b0 as ya,nV as yc,qd as yd,_ne as yf,Y2 as yi,Vk as yl,y6 as yn,QZ as yo,de as yp,yhe as yr,TY as ys,$ye as yt,gC as yu,qxe as z,R$ as za,pN as zc,uf as zd,Li as zf,s2 as zi,dD as zl,Q3 as zn,JX as zo,j4 as zr,UK as zs,Eve as zt,G as zu};
|
|
46
|
+
//# sourceMappingURL=terminal-links-wSVIDKqM.js.map
|