@beeuni/sdk 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +35 -83
- package/dist/beeuni.esm.min.js +35 -35
- package/dist/beeuni.global.js +35 -35
- package/dist/browser/stores/sync-store.d.ts +6 -0
- package/dist/browser/stores/sync-store.js +52 -21
- package/dist/core/client/beeuni.d.ts +7 -29
- package/dist/core/client/beeuni.js +3 -11
- package/dist/core/client/facade-catalog.d.ts +0 -4
- package/dist/core/client/facade-catalog.js +1 -5
- package/dist/core/client/project-connections.d.ts +2 -2
- package/dist/core/client/project-connections.js +2 -2
- package/dist/core/client/project-operations.d.ts +4 -15
- package/dist/core/client/project-operations.js +2 -6
- package/dist/core/client/project-platform-security.d.ts +1 -1
- package/dist/core/client/project-platform-settings.d.ts +1 -1
- package/dist/core/http/api-client.d.ts +0 -7
- package/dist/core/http/api-client.js +1 -37
- package/dist/core/http/auth.d.ts +2 -4
- package/dist/core/http/auth.js +2 -8
- package/dist/core/rest/platform-client/client-policy.d.ts +8 -0
- package/dist/core/rest/platform-client/client-policy.js +30 -0
- package/dist/core/rest/platform-client/index.d.ts +3 -4
- package/dist/core/rest/platform-client/index.js +3 -4
- package/dist/core/rest/platform-client/types.d.ts +1 -1
- package/dist/core/rest/projects-client/apps.d.ts +8 -1
- package/dist/core/rest/projects-client/connectors.d.ts +6 -55
- package/dist/core/rest/projects-client/connectors.js +2 -29
- package/dist/core/rest/projects-client/git-backend.d.ts +1 -10
- package/dist/core/rest/projects-client/git-backend.js +0 -10
- package/dist/core/rest/projects-client/iam-sso.d.ts +0 -10
- package/dist/core/rest/projects-client/iam-sso.js +0 -3
- package/dist/core/rest/projects-client/index.d.ts +1 -4
- package/dist/core/rest/projects-client/index.js +1 -4
- package/dist/core/rest/projects-client/projects.d.ts +2 -1
- package/dist/core/rest/projects-client/projects.js +3 -0
- package/dist/core/rest/projects-client/sandbox.d.ts +8 -9
- package/dist/core/rest/projects-client/session-sandbox.d.ts +1 -1
- package/dist/core/rest/projects-client/sessions.d.ts +2 -2
- package/dist/core/session/control-stream.d.ts +1 -0
- package/dist/core/session/control-stream.js +18 -1
- package/dist/core/session-log/guard.d.ts +6 -0
- package/dist/core/session-log/guard.js +109 -0
- package/dist/core/session-log/index.d.ts +3 -0
- package/dist/core/session-log/index.js +2 -0
- package/dist/core/session-log/saved-log.d.ts +10 -0
- package/dist/core/session-log/saved-log.js +25 -0
- package/dist/core/session-log/source.d.ts +25 -0
- package/dist/core/session-log/source.js +30 -0
- package/dist/core/session-log/store.d.ts +21 -0
- package/dist/core/session-log/store.js +126 -0
- package/dist/core/session-log/tool-call.d.ts +6 -0
- package/dist/core/session-log/tool-call.js +46 -0
- package/dist/core/session-log/types.d.ts +264 -0
- package/dist/core/session-log/types.js +6 -0
- package/dist/core/session-log/v1-view.d.ts +10 -0
- package/dist/core/session-log/v1-view.js +151 -0
- package/dist/core/session-log/v1.d.ts +31 -0
- package/dist/core/session-log/v1.js +466 -0
- package/dist/core/session-sync/copy-store-types.d.ts +19 -0
- package/dist/core/session-sync/copy-store-types.js +1 -0
- package/dist/core/session-sync/saved-copy-store.js +25 -4
- package/dist/core/stream/event-stream.js +2 -2
- package/dist/core/turns/classify.d.ts +2 -1
- package/dist/core/turns/classify.js +3 -1
- package/dist/core/turns/parts.d.ts +3 -2
- package/dist/core/turns/parts.js +4 -2
- package/dist/core/turns/segments/index.d.ts +1 -0
- package/dist/core/turns/segments/index.js +1 -0
- package/dist/core/turns/segments/work-split.d.ts +10 -0
- package/dist/core/turns/segments/work-split.js +40 -0
- package/dist/core/turns/state.d.ts +2 -7
- package/dist/core/turns/state.js +28 -134
- package/dist/core/turns/tools/tool-meta.d.ts +2 -1
- package/dist/core/turns/tools/tool-meta.js +3 -1
- package/dist/core/turns/tools/tool-outcome.d.ts +2 -1
- package/dist/core/turns/tools/tool-outcome.js +3 -1
- package/dist/core/turns/types.d.ts +1 -1
- package/dist/core/warm-session-pool.d.ts +29 -0
- package/dist/core/warm-session-pool.js +127 -0
- package/dist/index.d.ts +2 -2
- package/dist/index.js +2 -2
- package/dist/internal/connector-catalog.d.ts +47 -0
- package/dist/internal/connector-catalog.js +27 -0
- package/dist/internal/host-configuration.d.ts +22 -0
- package/dist/internal/host-configuration.js +28 -0
- package/dist/internal/platform-admin-react.d.ts +12 -0
- package/dist/internal/platform-admin-react.js +13 -0
- package/dist/internal/platform-admin.d.ts +9 -0
- package/dist/internal/platform-admin.js +9 -0
- package/dist/react/index.d.ts +0 -13
- package/dist/react/index.js +0 -13
- package/dist/react/opencode.d.ts +1 -0
- package/dist/react/opencode.js +1 -0
- package/dist/react/query-keys.d.ts +0 -1
- package/dist/react/query-keys.js +0 -1
- package/dist/react/session-transcript-subscription.js +3 -1
- package/dist/react/sign-in-with-beeuni.d.ts +1 -1
- package/dist/react/use-admin-providers.d.ts +5 -5
- package/dist/react/use-opencode-events/handle-event.d.ts +1 -0
- package/dist/react/use-opencode-events/handle-event.js +5 -0
- package/dist/react/use-opencode-events/index.js +1 -0
- package/dist/react/use-runtime-reconnect.js +2 -2
- package/dist/react/use-session-log.d.ts +15 -0
- package/dist/react/use-session-log.js +134 -0
- package/dist/react/use-session.js +2 -0
- package/package.json +15 -7
package/dist/beeuni.esm.min.js
CHANGED
|
@@ -1,24 +1,24 @@
|
|
|
1
|
-
var ab={backendUrl:"",getToken:async()=>null},es=null,Mn=null;function Yk(e){Mn=e}function Qk(){return Mn}function ts(e,t){t?.global!==!1&&(es=e)}function k(){return Mn?.()??es??ab}function ns(){return es!==null||Mn?.()!==void 0}function cb(e){return new Promise(t=>setTimeout(t,e))}async function On(e,t,n){let r=Math.max(1,t?.attempts??1),s=t?.baseDelayMs??0,o=t?.invalidateBetweenAttempts??!1,i=null;for(let a=0;a<r;a++)if(a>0&&(o&&n?.(),s>0&&await cb(s)),i=await e(),i)return i;return i}var rs=12e4;function ub(e){return(e instanceof Request?e.url:String(e)).includes("/global/event")}function bi(e,t,n=rs){let r=e instanceof Request?e.signal:t?.signal;if(ub(e))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function Dn(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}var b=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(t,n={}){super(t),this.name="ApiError";let{name:r,stack:s,...o}=n;Object.assign(this,o),r&&(this.name=r),s&&(this.stack=s);let i=typeof t=="string"?t:t==null?"":String(t);Object.defineProperty(this,"message",{value:i,enumerable:!0,writable:!0,configurable:!0}),Object.setPrototypeOf(this,new.target.prototype)}},J=class extends b{constructor(t="Not authenticated"){super(t,{code:"NO_SESSION"}),this.name="AuthError"}},Ke=class extends b{constructor(t,n,r,s={}){super(r||n.message||`Billing Error: ${t}`,{...s,status:t,detail:n}),this.name="BillingError"}},lt=class extends b{constructor(t=431,n,r){let s="Request headers are too large";super(r||n?.message||s,{status:t,detail:{message:n?.message||s,suggestion:n?.suggestion||"Try uploading files one at a time, or reduce the number of files in a single request."}}),this.name="RequestTooLargeError"}},lb="ENDPOINT_RETIRED";function F(e,t){let n=t?` ${t}`:"";return new b(`${e}() is retired: the Beeuni API no longer serves this endpoint.${n}`,{code:lb})}var ss="feature_disabled";function _i(e){if(!(e instanceof b)||e.status!==403||e.code!==ss)return null;let t=e.details??e.data;return t&&typeof t=="object"?t:{}}function Pi(e){let t=_i(e);return t?(typeof t.feature=="string"&&!e.feature&&(e.feature=t.feature),!0):!1}function Si(e){let t=_i(e);if(!t)return null;let n=e.feature;return typeof n=="string"?n:typeof t.feature=="string"?t.feature:null}function jn(e){let t=e.response?.status||e.status;if(t!==402)return e;let n=e.response?.data||e.data||e.detail||{},r=n?.detail||n;return new Ke(t,{message:r?.message||e.message||"Billing error",...r},void 0,{code:e.code,details:e.details,data:e.data,response:e.response,url:e.url,endpoint:e.endpoint})}function xi(e){return e instanceof Ke}function jt(e){if(e instanceof J)return!0;let t=e?.status;return t===401||t===403}function wi(e){if(!(e instanceof Ke))return null;let t=e.detail?.message?.toLowerCase()||"";return t.includes("credit")||t.includes("balance")||t.includes("insufficient")?{alertTitle:"You ran out of credits",alertSubtitle:"Upgrade your plan to get more credits and continue using the AI assistant."}:{alertTitle:"Billing check failed",alertSubtitle:e.detail?.message||"Please upgrade to continue."}}function ge(){return typeof DOMException=="function"?new DOMException("Aborted","AbortError"):Object.assign(new Error("Aborted"),{name:"AbortError"})}function me(e,t){return new Promise((n,r)=>{let s=()=>{t.removeEventListener("abort",s),r(ge())};t.addEventListener("abort",s,{once:!0}),e.then(n,r).finally(()=>t.removeEventListener("abort",s)),t.aborted&&s()})}function $n(e,t){return new Promise((n,r)=>{let s=()=>{clearTimeout(o),t?.removeEventListener("abort",s),r(ge())},o=setTimeout(()=>{t?.removeEventListener("abort",s),n()},e);t?.aborted?s():t?.addEventListener("abort",s,{once:!0})})}var vi="request_deadline",pb=/^Request exceeded the \d+s server processing deadline$/,Ai=(e,t,n)=>e!==503?!1:(typeof t=="object"&&t!==null&&"code"in t?t.code:void 0)===vi||pb.test(n),db="git_mirror_unavailable",gb=/^git mirror is temporarily unavailable$/,mb=(e,t,n)=>e!==503?!1:(typeof t=="object"&&t!==null&&"code"in t?t.code:void 0)===db||gb.test(n);async function fb(e,t){let n=`HTTP ${e.status}: ${e.statusText}`,r=null;try{r=await me(e.json(),t),typeof r.message=="string"?n=r.message:r.error&&typeof r.error=="string"?n=r.error:typeof r.detail=="string"?n=r.detail:typeof r.detail?.message=="string"?n=r.detail.message:typeof r.reason=="string"&&(n=r.reason)}catch{}if(t.aborted)throw ge();return{message:n,data:r}}function yb(e,t,n){return Ai(e,t,n)||mb(e,t,n)||e===501&&t?.code===Ri||e===409&&(t?.code===Ci||t?.code===Ii)||e===503&&(t?.code===Ti||t?.code===Ei)}async function ki(e,t,n,r){let{message:s,data:o}=await fb(e,t),i=new b(s,{status:e.status,response:e,details:o||void 0,data:o,detail:o?.detail,code:Ai(e.status,o,s)?vi:o?.code||o?.error_code||o?.detail?.error_code||e.status.toString()});e.status===402&&(i=jn(i));let a=e.status!==403?null:o?.code==="account_mfa_required"?"beeuni:mfa-required":o?.code==="sso_required"?"beeuni:sso-required":null;if(a&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent(a))}catch{}return e.status===431&&(i=new lt(431,{message:"Request is too large to process",suggestion:"Try uploading files one at a time, or reduce the number of files attached to your message."})),n&&!yb(e.status,o,s)&&k().onError?.(i,r),{error:i,success:!1}}var hb="X-Beeuni-Impersonate",is="beeuni.impersonation",He=null,Un=!1,os=new Set;function as(){try{return typeof sessionStorage>"u"?null:sessionStorage}catch{return null}}function bb(e,t=Date.now()){if(!e||!e.grantId||!e.accountId)return!1;let n=Date.parse(e.expiresAt);return Number.isFinite(n)&&n>t}function _b(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t?.grantId!="string"||typeof t?.accountId!="string"?null:{grantId:t.grantId,accountId:t.accountId,accountName:typeof t.accountName=="string"?t.accountName:null,expiresAt:typeof t.expiresAt=="string"?t.expiresAt:""}}catch{return null}}function Mi(){for(let e of os)try{e()}catch{}}function Pb(){return Un||(Un=!0,He=_b(as()?.getItem(is)??null)),He&&!bb(He)?(Oi(),null):He}function iR(e){if(Un=!0,!e){Oi();return}He=e;try{as()?.setItem(is,JSON.stringify(e))}catch{}Mi()}function Oi(){Un=!0;let e=He!==null;He=null;try{as()?.removeItem(is)}catch{}e&&Mi()}function aR(e){return os.add(e),()=>{os.delete(e)}}var Sb=/(^|\/)admin\/(api|analytics)(\/|$)/;function xb(e){let t=e;if(/^https?:\/\//.test(e))try{t=new URL(e).pathname}catch{t=e}return!Sb.test(t)}function Di(e){if(e!==void 0&&!xb(e))return{};let t=Pb();return t?{[hb]:t.grantId}:{}}var ps=!1;function wb(e){ps=e}function vb(){return ps}function Ab(e){return e?e instanceof Headers||Array.isArray(e)?[...new Headers(e).entries()]:Object.entries(e):[]}function us(e,t){let n=t.toLowerCase();return Object.keys(e).some(r=>r.toLowerCase()===n)}function $t(e,t,n){let r=t.toLowerCase();for(let s of Object.keys(e))s.toLowerCase()===r&&delete e[s];e[t]=n}function Fn(e,t){let n={},r=[e instanceof Request?e.headers:void 0,t.headers];for(let[s,o]of r.flatMap(Ab))$t(n,s,o);return n}function ls(e,t,n){let r={...t},s=k().clientVersion?.trim();s&&!us(r,"x-beeuni-client-version")&&$t(r,"X-Beeuni-Client-Version",s),ps&&$t(r,"x-beeuni-admin-bypass","1");for(let[o,i]of Object.entries(Di(e)))$t(r,o,i);return us(r,"authorization")||$t(r,"Authorization",`Bearer ${n}`),r}async function Bn(e,t){let n=await Ln();if(!n)throw new J;return{headers:new Headers(ls(e,Fn(e,{headers:t}),n)),rejected:()=>Ut(n)}}function kb(e){return typeof ReadableStream<"u"&&e.body instanceof ReadableStream}function ji(e,t,n,r,s){if(t instanceof Request){let u=new Headers(ls(t.url,Fn(t,n),r));return e(new Request(t,{headers:u,...s?{signal:s}:{}}))}let o=String(t),i=ls(o,Fn(t,n),r),a=o.startsWith("/")&&!o.startsWith("//");return e(o,{...n,headers:i,...a?{credentials:"same-origin"}:{},...s?{signal:s}:{}})}var $i=null;async function ds(e){let t=await On(()=>k().getToken(),e);return t&&($i=t),t}var Ln=ds;function Ut(e=$i){e&&k().getToken.invalidate?.(e)}var cs=new Map;function Rb(e){let t=cs.get(e);if(t)return t;let n=(async()=>(Ut(e),Ln({attempts:2,baseDelayMs:200})))().finally(()=>cs.delete(e));return cs.set(e,n),n}async function Ve(e,t={},n={}){let{retryOnAuthError:r=!0,timeoutMs:s=rs}=n,o=n.fetch??k().fetch??fetch,i=s===null?(e instanceof Request?e.signal:t.signal)??void 0:bi(e,t,s);if(i?.aborted)throw ge();let a=await(i?me(Ln(),i):Ln());if(!a)throw new J;let u=r&&!kb(t)&&!us(Fn(e,t),"authorization"),p=u&&e instanceof Request?e.clone():e,d=await ji(o,e,t,a,i);if(d.status!==401||!u)return d;let g=await Rb(a);return!g||g===a?d:ji(o,p,t,g,i)}async function we(e,t,n,r){let s=await Ve(e,t,n);if(s.ok)return s;let o=await s.text().catch(()=>"");throw new b(o||`${r} (HTTP ${s.status})`,{status:s.status,response:s})}var Ui=()=>k().backendUrl||"",Cb=new Set([502,503,504]),Ib=e=>Cb.has(e),Fi=e=>{let t=(e??"GET").toUpperCase();return t==="GET"||t==="HEAD"},Tb=e=>Fi(e)||(e??"GET").toUpperCase()==="DELETE",Eb=2,Nn=e=>e?.name==="AbortError"||e?.name==="AbortSignal"||e instanceof Error&&e.message.includes("aborted");async function ve(e,t={}){let{showErrors:n=!0,errorContext:r,timeout:s=3e4,deadlineCoversBody:o=!1,...i}=t,a=new AbortController,u={activeController:a,timeoutId:null,isAborted:!1,didTimeout:!1},p=()=>u.activeController.abort();i.signal?.addEventListener("abort",p,{once:!0});try{return await Mb(e,i,n,r,s,o,a,u)}finally{i.signal?.removeEventListener("abort",p)}}async function Mb(e,t,n,r,s,o,i,a){try{if(t.signal?.aborted)throw ge();a.timeoutId=setTimeout(()=>{!a.isAborted&&!i.signal.aborted&&(a.isAborted=!0,a.didTimeout=!0,i.abort())},s);let u={...t.body instanceof FormData?{}:{"Content-Type":"application/json"},...t.headers},p=await Db(e,t,u,s,o,i,a);if(p instanceof J)return{error:p,success:!1};if(!p.ok)return await ki(p,a.activeController.signal,n,r);let d,g=p.headers.get("content-type");return g?.includes("application/json")?d=await me(p.json(),a.activeController.signal):g?.includes("text/")?d=await me(p.text(),a.activeController.signal):d=await me(p.blob(),a.activeController.signal),{data:d,success:!0,headers:p.headers}}catch(u){return jb(u,e,t.method,n,r,s,a)}finally{qn(a)}}function qn(e){e.timeoutId&&clearTimeout(e.timeoutId),e.timeoutId=null}async function Ob(e,t,n){try{await me(e.arrayBuffer(),t)}catch(r){if(Nn(r))throw r}finally{qn(n)}}async function Db(e,t,n,r,s,o,i){let a=Fi(t.method),u=Tb(t.method),p=u?Eb+1:1,d;for(let g=0;g<p;g++){g>0&&await $n(250*2**(g-1),t.signal??void 0);let m=g===0?o:new AbortController;i.activeController=m,t.signal?.aborted&&m.abort(),g>0&&(i.timeoutId=setTimeout(()=>{i.didTimeout=!0,m.abort()},r));try{d=await me(Ve(e,{...t,headers:n,signal:m.signal,credentials:t.credentials??"omit"},{timeoutMs:null}),m.signal)}catch(f){if(i.timeoutId&&(clearTimeout(i.timeoutId),i.timeoutId=null),f instanceof J)return new J;if(i.didTimeout&&Nn(f)&&!t.signal?.aborted&&u&&g<p-1){i.didTimeout=!1;continue}if(Nn(f)||g===p-1)throw f;continue}if(!a||!Ib(d.status)||g===p-1)return s||qn(i),d;await Ob(d,m.signal,i)}return d}function jb(e,t,n,r,s,o,i){qn(i);let a=Nn(e);a&&(i.isAborted=!0);let u;if(a){if(!i.didTimeout)return{error:new b("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let p=t.replace(Ui(),"")||t;u=new b(`Request timed out after ${Math.round(o/1e3)}s: ${p}`,{code:"TIMEOUT",url:t,endpoint:p,timeout:o})}else e instanceof Error?(u=new b(n==="POST"&&e instanceof TypeError&&e.message==="Failed to fetch"?`Failed to fetch: POST ${t.replace(Ui(),"")||t}`:e.message,{name:e.name||"ApiError",stack:e.stack}),r&&k().onError?.(u,s)):(u=new b(String(e)),r&&k().onError?.(u,s));return{error:u,success:!1}}var Ae=()=>k().backendUrl||"",Ri="feature_not_supported",Ci="model_not_servable",Ii="provision_in_flight",Ti="analytics_unavailable",Ei="accounts_list_unavailable",kR={async execute(e,t){try{let{data:n,error:r}=await e();if(r){let s=new b(r.message||"Database error",{code:r.code,details:r});return k().onError?.(s,t),{error:s,success:!1}}return{data:n,success:!0}}catch(n){let r=n instanceof Error?new b(n.message,{name:n.name||"ApiError",stack:n.stack}):new b(String(n));return k().onError?.(r,t),{error:r,success:!1}}}};async function $b(e,t,n={}){let{timeout:r=3e4,fetch:s}=n,o=new AbortController,i=setTimeout(()=>o.abort(),r);try{return await Ve(`${Ae()}${e}`,{method:"POST",headers:{Accept:"text/event-stream","Content-Type":"application/json"},body:JSON.stringify(t),signal:o.signal,credentials:"omit"},{timeoutMs:null,fetch:s})}catch(a){if(a instanceof J)return Dn();throw a}finally{clearTimeout(i)}}var c={putRaw:(e,t,n)=>ve(`${Ae()}${e}`,{...n,method:"PUT",body:t,headers:{"Content-Type":"application/octet-stream",...n?.headers}}),get:(e,t)=>ve(`${Ae()}${e}`,{...t,method:"GET"}),post:(e,t,n)=>ve(`${Ae()}${e}`,{...n,method:"POST",body:t?JSON.stringify(t):void 0}),put:(e,t,n)=>ve(`${Ae()}${e}`,{...n,method:"PUT",body:t?JSON.stringify(t):void 0}),patch:(e,t,n)=>ve(`${Ae()}${e}`,{...n,method:"PATCH",body:t?JSON.stringify(t):void 0}),delete:(e,t)=>ve(`${Ae()}${e}`,{...t,method:"DELETE"}),upload:(e,t,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],ve(`${Ae()}${e}`,{...s,method:"POST",body:t,headers:o})},uploadPut:(e,t,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],ve(`${Ae()}${e}`,{...s,method:"PUT",body:t,headers:o})},postStream:$b};function l(e,t="Project request failed"){if(!e.success||e.data===void 0)throw e.error??new Error(t);return e.data}function gs(e){return e.replace(/\/v1\/?$/,"")}async function pt(e,t){if(!e.backendUrl||!e.accessToken)return null;let n=gs(e.backendUrl);try{let r=await fetch(`${n}${t}`,{headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(e.timeoutMs??8e3)});return r.ok?await r.json():null}catch{return null}}async function Li(){return l(await c.get("/accounts"))}async function Bi(e){return l(await c.post("/accounts",e))}async function Ni(e){return l(await c.get(`/accounts/${e}`))}async function qi(e,t){return l(await c.patch(`/accounts/${e}`,{name:t}))}async function Gi(e){return l(await c.get(`/accounts/${e}/branding`))}async function Wi(e,t){return l(await c.put(`/accounts/${e}/branding`,t))}async function Ki(e,t,n,r){let s=new FormData;return s.append("file",n,r??(n instanceof File?n.name:t)),l(await c.upload(`/accounts/${e}/branding/assets/${t}`,s))}async function Hi(e,t){return l(await c.delete(`/accounts/${e}/branding/assets/${t}`))}async function Vi(e){return l(await c.delete(`/accounts/${e}/branding`))}async function zi(e){return l(await c.get(`/accounts/${e}/members`))}async function Yi(e,t){return l(await c.post(`/accounts/${e}/members`,t,{showErrors:!1}))}async function Qi(e){return l(await c.get(`/accounts/${e}/invites`))}async function Ji(e,t){return l(await c.delete(`/accounts/${e}/invites/${t}`))}async function Xi(e,t){return l(await c.post(`/accounts/${e}/invites/${t}/resend`,{}))}async function Zi(){return l(await c.get("/account-invites",{showErrors:!1})).invites}async function ea(e){return l(await c.get(`/account-invites/${e}`,{showErrors:!1}))}async function ta(e){return l(await c.post(`/account-invites/${e}/accept`,{}))}async function na(e){return l(await c.post(`/account-invites/${e}/decline`,{}))}async function ra(e,t){return l(await c.delete(`/accounts/${e}/members/${t}`))}async function sa(e,t,n){return l(await c.patch(`/accounts/${e}/members/${t}`,{role:n}))}async function oa(e){return l(await c.post(`/accounts/${e}/leave`,{}))}async function OR(e){return pt(e,"/v1/accounts")}async function ia(){let e=await c.get("/accounts/me",{showErrors:!1});return!e.success||!e.data?{valid:!1,error:e.error}:{valid:!0,identity:e.data}}var FR=["marketplace","connectors_api_discover","agentmail_email","llm_gateway","meta_agent","apps","monitors","reminders","warm_sessions","secrets_egress","pooled_provider_secrets","pi_harness","us_region","event_triggers","notification_center","drives","ephemeral_sandboxes"];async function dt(){return l(await c.get("/projects"))}async function ca(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return l(await c.get(`/projects${t}`))}async function Gn(e,t){return l(await c.get(`/projects/${e}`,t))}async function ua(e,t,n="write"){return l(await c.post(`/projects/${e}/git/collaborators`,{github_username:t,permission:n}))}async function la(e,t){return l(await c.post(`/projects/${e}/manifest/validate`,{raw:t}),"Failed to validate manifest")}async function pa(e){return l(await c.post(`/projects/${e}/git-token`,{}),"Failed to mint git token")}function LR(e){let t=e.metadata?.git;return t?.provider==="github"&&t?.managed===!0}async function Wn(e,t){let n=l(await c.get(`/projects/${e}/detail`,{showErrors:!1,...t}));return{...n,config:{...n.config,default_agent:n.config.default_agent??n.config.open_code_default_agent??null}}}async function Kn(e,t){return l(await c.get(`/projects/${e}/llm-catalog`,{showErrors:!1,...t}))}async function Hn(e,t){return l(await c.get(`/projects/${e}/model-picker`,{showErrors:!1,...t}))}async function BR(e,t){return l(await c.get(`/projects/${e}/llm-catalog/providers`,{showErrors:!1,...t}))}async function da(e){return l(await c.post("/projects",e))}async function ga(e){return l(await c.post("/projects/create-repo",e,{showErrors:!1}))}async function ma(e,t={}){return l(await c.post("/projects/provision",{seed_starter:!0,...e},{timeout:12e4,...t}))}var aa=200;function Ub(e){let t=e.split(`
|
|
1
|
+
var Nb={backendUrl:"",getToken:async()=>null},Ss=null,Qn=null;function $C(e){Qn=e}function UC(){return Qn}function xs(e,t){t?.global!==!1&&(Ss=e)}function R(){return Qn?.()??Ss??Nb}function ws(){return Ss!==null||Qn?.()!==void 0}function qb(e){return new Promise(t=>setTimeout(t,e))}async function Xn(e,t,n){let r=Math.max(1,t?.attempts??1),s=t?.baseDelayMs??0,o=t?.invalidateBetweenAttempts??!1,i=null;for(let a=0;a<r;a++)if(a>0&&(o&&n?.(),s>0&&await qb(s)),i=await e(),i)return i;return i}var As=12e4;function Gb(e){return(e instanceof Request?e.url:String(e)).includes("/global/event")}function Bi(e,t,n=As){let r=e instanceof Request?e.signal:t?.signal;if(Gb(e))return r??void 0;let s=AbortSignal.timeout(n);return r?typeof AbortSignal.any=="function"?AbortSignal.any([r,s]):r:s}function Zn(){return new Response(JSON.stringify({error:"Not authenticated"}),{status:401,headers:{"Content-Type":"application/json"}})}var _=class extends Error{status;code;details;data;detail;response;url;endpoint;timeout;constructor(t,n={}){super(t),this.name="ApiError";let{name:r,stack:s,...o}=n;Object.assign(this,o),r&&(this.name=r),s&&(this.stack=s);let i=typeof t=="string"?t:t==null?"":String(t);Object.defineProperty(this,"message",{value:i,enumerable:!0,writable:!0,configurable:!0}),Object.setPrototypeOf(this,new.target.prototype)}},oe=class extends _{constructor(t="Not authenticated"){super(t,{code:"NO_SESSION"}),this.name="AuthError"}},rt=class extends _{constructor(t,n,r,s={}){super(r||n.message||`Billing Error: ${t}`,{...s,status:t,detail:n}),this.name="BillingError"}},wt=class extends _{constructor(t=431,n,r){let s="Request headers are too large";super(r||n?.message||s,{status:t,detail:{message:n?.message||s,suggestion:n?.suggestion||"Try uploading files one at a time, or reduce the number of files in a single request."}}),this.name="RequestTooLargeError"}},Wb="ENDPOINT_RETIRED";function G(e,t){let n=t?` ${t}`:"";return new _(`${e}() is retired: the Beeuni API no longer serves this endpoint.${n}`,{code:Wb})}var vs="feature_disabled";function Fi(e){if(!(e instanceof _)||e.status!==403||e.code!==vs)return null;let t=e.details??e.data;return t&&typeof t=="object"?t:{}}function Ni(e){let t=Fi(e);return t?(typeof t.feature=="string"&&!e.feature&&(e.feature=t.feature),!0):!1}function qi(e){let t=Fi(e);if(!t)return null;let n=e.feature;return typeof n=="string"?n:typeof t.feature=="string"?t.feature:null}function er(e){let t=e.response?.status||e.status;if(t!==402)return e;let n=e.response?.data||e.data||e.detail||{},r=n?.detail||n;return new rt(t,{message:r?.message||e.message||"Billing error",...r},void 0,{code:e.code,details:e.details,data:e.data,response:e.response,url:e.url,endpoint:e.endpoint})}function Gi(e){return e instanceof rt}function en(e){if(e instanceof oe)return!0;let t=e?.status;return t===401||t===403}function Wi(e){if(!(e instanceof rt))return null;let t=e.detail?.message?.toLowerCase()||"";return t.includes("credit")||t.includes("balance")||t.includes("insufficient")?{alertTitle:"You ran out of credits",alertSubtitle:"Upgrade your plan to get more credits and continue using the AI assistant."}:{alertTitle:"Billing check failed",alertSubtitle:e.detail?.message||"Please upgrade to continue."}}function be(){return typeof DOMException=="function"?new DOMException("Aborted","AbortError"):Object.assign(new Error("Aborted"),{name:"AbortError"})}function _e(e,t){return new Promise((n,r)=>{let s=()=>{t.removeEventListener("abort",s),r(be())};t.addEventListener("abort",s,{once:!0}),e.then(n,r).finally(()=>t.removeEventListener("abort",s)),t.aborted&&s()})}function tr(e,t){return new Promise((n,r)=>{let s=()=>{clearTimeout(o),t?.removeEventListener("abort",s),r(be())},o=setTimeout(()=>{t?.removeEventListener("abort",s),n()},e);t?.aborted?s():t?.addEventListener("abort",s,{once:!0})})}var Ki="request_deadline",Kb=/^Request exceeded the \d+s server processing deadline$/,Vi=(e,t,n)=>e!==503?!1:(typeof t=="object"&&t!==null&&"code"in t?t.code:void 0)===Ki||Kb.test(n),Vb="git_mirror_unavailable",Hb=/^git mirror is temporarily unavailable$/,zb=(e,t,n)=>e!==503?!1:(typeof t=="object"&&t!==null&&"code"in t?t.code:void 0)===Vb||Hb.test(n);async function Yb(e,t){let n=`HTTP ${e.status}: ${e.statusText}`,r=null;try{r=await _e(e.json(),t),typeof r.message=="string"?n=r.message:r.error&&typeof r.error=="string"?n=r.error:typeof r.detail=="string"?n=r.detail:typeof r.detail?.message=="string"?n=r.detail.message:typeof r.reason=="string"&&(n=r.reason)}catch{}if(t.aborted)throw be();return{message:n,data:r}}function Jb(e,t,n){return Vi(e,t,n)||zb(e,t,n)||e===501&&t?.code===zi||e===409&&(t?.code===Yi||t?.code===Ji)||e===503&&(t?.code===Qi||t?.code===Xi)}async function Hi(e,t,n,r){let{message:s,data:o}=await Yb(e,t),i=new _(s,{status:e.status,response:e,details:o||void 0,data:o,detail:o?.detail,code:Vi(e.status,o,s)?Ki:o?.code||o?.error_code||o?.detail?.error_code||e.status.toString()});e.status===402&&(i=er(i));let a=e.status!==403?null:o?.code==="account_mfa_required"?"beeuni:mfa-required":o?.code==="sso_required"?"beeuni:sso-required":null;if(a&&typeof window<"u"&&typeof window.dispatchEvent=="function")try{window.dispatchEvent(new CustomEvent(a))}catch{}return e.status===431&&(i=new wt(431,{message:"Request is too large to process",suggestion:"Try uploading files one at a time, or reduce the number of files attached to your message."})),n&&!Jb(e.status,o,s)&&R().onError?.(i,r),{error:i,success:!1}}var Qb="X-Beeuni-Impersonate",Zi="beeuni.impersonation",At=null,ks=!1,Xb=new Set;function ea(){try{return typeof sessionStorage>"u"?null:sessionStorage}catch{return null}}function Zb(e,t=Date.now()){if(!e||!e.grantId||!e.accountId)return!1;let n=Date.parse(e.expiresAt);return Number.isFinite(n)&&n>t}function e_(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t?.grantId!="string"||typeof t?.accountId!="string"?null:{grantId:t.grantId,accountId:t.accountId,accountName:typeof t.accountName=="string"?t.accountName:null,expiresAt:typeof t.expiresAt=="string"?t.expiresAt:""}}catch{return null}}function t_(){for(let e of Xb)try{e()}catch{}}function n_(){return ks||(ks=!0,At=e_(ea()?.getItem(Zi)??null)),At&&!Zb(At)?(r_(),null):At}function r_(){ks=!0;let e=At!==null;At=null;try{ea()?.removeItem(Zi)}catch{}e&&t_()}var s_=/(^|\/)admin\/(api|analytics)(\/|$)/;function o_(e){let t=e;if(/^https?:\/\//.test(e))try{t=new URL(e).pathname}catch{t=e}return!s_.test(t)}function ta(e){if(e!==void 0&&!o_(e))return{};let t=n_();return t?{[Qb]:t.grantId}:{}}var i_=!1;function a_(e){return e?e instanceof Headers||Array.isArray(e)?[...new Headers(e).entries()]:Object.entries(e):[]}function Cs(e,t){let n=t.toLowerCase();return Object.keys(e).some(r=>r.toLowerCase()===n)}function tn(e,t,n){let r=t.toLowerCase();for(let s of Object.keys(e))s.toLowerCase()===r&&delete e[s];e[t]=n}function nr(e,t){let n={},r=[e instanceof Request?e.headers:void 0,t.headers];for(let[s,o]of r.flatMap(a_))tn(n,s,o);return n}function Is(e,t,n){let r={...t},s=R().clientVersion?.trim();s&&!Cs(r,"x-beeuni-client-version")&&tn(r,"X-Beeuni-Client-Version",s),i_&&tn(r,"x-beeuni-admin-bypass","1");for(let[o,i]of Object.entries(ta(e)))tn(r,o,i);return Cs(r,"authorization")||tn(r,"Authorization",`Bearer ${n}`),r}async function sr(e,t){let n=await rr();if(!n)throw new oe;return{headers:new Headers(Is(e,nr(e,{headers:t}),n)),rejected:()=>nn(n)}}function c_(e){return typeof ReadableStream<"u"&&e.body instanceof ReadableStream}function na(e,t,n,r,s){if(t instanceof Request){let c=new Headers(Is(t.url,nr(t,n),r));return e(new Request(t,{headers:c,...s?{signal:s}:{}}))}let o=String(t),i=Is(o,nr(t,n),r),a=o.startsWith("/")&&!o.startsWith("//");return e(o,{...n,headers:i,...a?{credentials:"same-origin"}:{},...s?{signal:s}:{}})}var ra=null;async function Ts(e){let t=await Xn(()=>R().getToken(),e);return t&&(ra=t),t}var rr=Ts;function nn(e=ra){e&&R().getToken.invalidate?.(e)}var Rs=new Map;function l_(e){let t=Rs.get(e);if(t)return t;let n=(async()=>(nn(e),rr({attempts:2,baseDelayMs:200})))().finally(()=>Rs.delete(e));return Rs.set(e,n),n}async function st(e,t={},n={}){let{retryOnAuthError:r=!0,timeoutMs:s=As}=n,o=n.fetch??R().fetch??fetch,i=s===null?(e instanceof Request?e.signal:t.signal)??void 0:Bi(e,t,s);if(i?.aborted)throw be();let a=await(i?_e(rr(),i):rr());if(!a)throw new oe;let c=r&&!c_(t)&&!Cs(nr(e,t),"authorization"),p=c&&e instanceof Request?e.clone():e,d=await na(o,e,t,a,i);if(d.status!==401||!c)return d;let g=await l_(a);return!g||g===a?d:na(o,p,t,g,i)}async function Ie(e,t,n,r){let s=await st(e,t,n);if(s.ok)return s;let o=await s.text().catch(()=>"");throw new _(o||`${r} (HTTP ${s.status})`,{status:s.status,response:s})}var sa=()=>R().backendUrl||"",u_=new Set([502,503,504]),p_=e=>u_.has(e),oa=e=>{let t=(e??"GET").toUpperCase();return t==="GET"||t==="HEAD"},d_=e=>oa(e)||(e??"GET").toUpperCase()==="DELETE",g_=2,or=e=>e?.name==="AbortError"||e?.name==="AbortSignal"||e instanceof Error&&e.message.includes("aborted");async function Te(e,t={}){let{showErrors:n=!0,errorContext:r,timeout:s=3e4,deadlineCoversBody:o=!1,...i}=t,a=new AbortController,c={activeController:a,timeoutId:null,isAborted:!1,didTimeout:!1},p=()=>c.activeController.abort();i.signal?.addEventListener("abort",p,{once:!0});try{return await m_(e,i,n,r,s,o,a,c)}finally{i.signal?.removeEventListener("abort",p)}}async function m_(e,t,n,r,s,o,i,a){try{if(t.signal?.aborted)throw be();a.timeoutId=setTimeout(()=>{!a.isAborted&&!i.signal.aborted&&(a.isAborted=!0,a.didTimeout=!0,i.abort())},s);let c={...t.body instanceof FormData?{}:{"Content-Type":"application/json"},...t.headers},p=await y_(e,t,c,s,o,i,a);if(p instanceof oe)return{error:p,success:!1};if(!p.ok)return await Hi(p,a.activeController.signal,n,r);let d,g=p.headers.get("content-type");return g?.includes("application/json")?d=await _e(p.json(),a.activeController.signal):g?.includes("text/")?d=await _e(p.text(),a.activeController.signal):d=await _e(p.blob(),a.activeController.signal),{data:d,success:!0,headers:p.headers}}catch(c){return h_(c,e,t.method,n,r,s,a)}finally{ir(a)}}function ir(e){e.timeoutId&&clearTimeout(e.timeoutId),e.timeoutId=null}async function f_(e,t,n){try{await _e(e.arrayBuffer(),t)}catch(r){if(or(r))throw r}finally{ir(n)}}async function y_(e,t,n,r,s,o,i){let a=oa(t.method),c=d_(t.method),p=c?g_+1:1,d;for(let g=0;g<p;g++){g>0&&await tr(250*2**(g-1),t.signal??void 0);let m=g===0?o:new AbortController;i.activeController=m,t.signal?.aborted&&m.abort(),g>0&&(i.timeoutId=setTimeout(()=>{i.didTimeout=!0,m.abort()},r));try{d=await _e(st(e,{...t,headers:n,signal:m.signal,credentials:t.credentials??"omit"},{timeoutMs:null}),m.signal)}catch(y){if(i.timeoutId&&(clearTimeout(i.timeoutId),i.timeoutId=null),y instanceof oe)return new oe;if(i.didTimeout&&or(y)&&!t.signal?.aborted&&c&&g<p-1){i.didTimeout=!1;continue}if(or(y)||g===p-1)throw y;continue}if(!a||!p_(d.status)||g===p-1)return s||ir(i),d;await f_(d,m.signal,i)}return d}function h_(e,t,n,r,s,o,i){ir(i);let a=or(e);a&&(i.isAborted=!0);let c;if(a){if(!i.didTimeout)return{error:new _("Request aborted",{name:"AbortError",code:"ABORTED"}),success:!1};let p=t.replace(sa(),"")||t;c=new _(`Request timed out after ${Math.round(o/1e3)}s: ${p}`,{code:"TIMEOUT",url:t,endpoint:p,timeout:o})}else e instanceof Error?(c=new _(n==="POST"&&e instanceof TypeError&&e.message==="Failed to fetch"?`Failed to fetch: POST ${t.replace(sa(),"")||t}`:e.message,{name:e.name||"ApiError",stack:e.stack}),r&&R().onError?.(c,s)):(c=new _(String(e)),r&&R().onError?.(c,s));return{error:c,success:!1}}var Ee=()=>R().backendUrl||"",zi="feature_not_supported",Yi="model_not_servable",Ji="provision_in_flight",Qi="analytics_unavailable",Xi="accounts_list_unavailable";async function b_(e,t,n={}){let{timeout:r=3e4,fetch:s}=n,o=new AbortController,i=setTimeout(()=>o.abort(),r);try{return await st(`${Ee()}${e}`,{method:"POST",headers:{Accept:"text/event-stream","Content-Type":"application/json"},body:JSON.stringify(t),signal:o.signal,credentials:"omit"},{timeoutMs:null,fetch:s})}catch(a){if(a instanceof oe)return Zn();throw a}finally{clearTimeout(i)}}var l={putRaw:(e,t,n)=>Te(`${Ee()}${e}`,{...n,method:"PUT",body:t,headers:{"Content-Type":"application/octet-stream",...n?.headers}}),get:(e,t)=>Te(`${Ee()}${e}`,{...t,method:"GET"}),post:(e,t,n)=>Te(`${Ee()}${e}`,{...n,method:"POST",body:t?JSON.stringify(t):void 0}),put:(e,t,n)=>Te(`${Ee()}${e}`,{...n,method:"PUT",body:t?JSON.stringify(t):void 0}),patch:(e,t,n)=>Te(`${Ee()}${e}`,{...n,method:"PATCH",body:t?JSON.stringify(t):void 0}),delete:(e,t)=>Te(`${Ee()}${e}`,{...t,method:"DELETE"}),upload:(e,t,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],Te(`${Ee()}${e}`,{...s,method:"POST",body:t,headers:o})},uploadPut:(e,t,n)=>{let{headers:r,...s}=n||{},o={...r};return delete o["Content-Type"],Te(`${Ee()}${e}`,{...s,method:"PUT",body:t,headers:o})},postStream:b_};function u(e,t="Project request failed"){if(!e.success||e.data===void 0)throw e.error??new Error(t);return e.data}function Es(e){return e.replace(/\/v1\/?$/,"")}async function vt(e,t){if(!e.backendUrl||!e.accessToken)return null;let n=Es(e.backendUrl);try{let r=await fetch(`${n}${t}`,{headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},signal:AbortSignal.timeout(e.timeoutMs??8e3)});return r.ok?await r.json():null}catch{return null}}async function ia(){return u(await l.get("/accounts"))}async function aa(e){return u(await l.post("/accounts",e))}async function ca(e){return u(await l.get(`/accounts/${e}`))}async function la(e,t){return u(await l.patch(`/accounts/${e}`,{name:t}))}async function ua(e){return u(await l.get(`/accounts/${e}/branding`))}async function pa(e,t){return u(await l.put(`/accounts/${e}/branding`,t))}async function da(e,t,n,r){let s=new FormData;return s.append("file",n,r??(n instanceof File?n.name:t)),u(await l.upload(`/accounts/${e}/branding/assets/${t}`,s))}async function ga(e,t){return u(await l.delete(`/accounts/${e}/branding/assets/${t}`))}async function ma(e){return u(await l.delete(`/accounts/${e}/branding`))}async function fa(e){return u(await l.get(`/accounts/${e}/members`))}async function ya(e,t){return u(await l.post(`/accounts/${e}/members`,t,{showErrors:!1}))}async function ha(e){return u(await l.get(`/accounts/${e}/invites`))}async function ba(e,t){return u(await l.delete(`/accounts/${e}/invites/${t}`))}async function _a(e,t){return u(await l.post(`/accounts/${e}/invites/${t}/resend`,{}))}async function Pa(){return u(await l.get("/account-invites",{showErrors:!1})).invites}async function Sa(e){return u(await l.get(`/account-invites/${e}`,{showErrors:!1}))}async function xa(e){return u(await l.post(`/account-invites/${e}/accept`,{}))}async function wa(e){return u(await l.post(`/account-invites/${e}/decline`,{}))}async function Aa(e,t){return u(await l.delete(`/accounts/${e}/members/${t}`))}async function va(e,t,n){return u(await l.patch(`/accounts/${e}/members/${t}`,{role:n}))}async function ka(e){return u(await l.post(`/accounts/${e}/leave`,{}))}async function hI(e){return vt(e,"/v1/accounts")}async function Ra(){let e=await l.get("/accounts/me",{showErrors:!1});return!e.success||!e.data?{valid:!1,error:e.error}:{valid:!0,identity:e.data}}var xI=["marketplace","connectors_api_discover","agentmail_email","llm_gateway","meta_agent","apps","monitors","reminders","warm_sessions","secrets_egress","pooled_provider_secrets","pi_harness","us_region","event_triggers","notification_center","volumes","stateless_sessions","drives","ephemeral_sandboxes","session_log"];async function kt(){return u(await l.get("/projects"))}async function Ia(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return u(await l.get(`/projects${t}`))}async function ar(e,t){return u(await l.get(`/projects/${e}`,t))}async function Ta(e,t,n="write"){return u(await l.post(`/projects/${e}/git/collaborators`,{github_username:t,permission:n}))}async function Ea(e,t){return u(await l.post(`/projects/${e}/manifest/validate`,{raw:t}),"Failed to validate manifest")}async function Ma(e){return u(await l.post(`/projects/${e}/git-token`,{}),"Failed to mint git token")}function wI(e){let t=e.metadata?.git;return t?.provider==="github"&&t?.managed===!0}async function cr(e,t){let n=u(await l.get(`/projects/${e}/detail`,{showErrors:!1,...t}));return{...n,config:{...n.config,default_agent:n.config.default_agent??n.config.open_code_default_agent??null}}}async function lr(e,t){return u(await l.get(`/projects/${e}/llm-catalog`,{showErrors:!1,...t}))}async function ur(e,t){return u(await l.get(`/projects/${e}/model-picker`,{showErrors:!1,...t}))}async function AI(e,t){return u(await l.get(`/projects/${e}/llm-catalog/providers`,{showErrors:!1,...t}))}async function Oa(e){return u(await l.post("/projects",e))}async function Da(e){return u(await l.post("/projects/create-repo",e,{showErrors:!1}))}async function ja(e,t={}){return u(await l.post("/projects/provision",{seed_starter:!0,...e},{timeout:12e4,...t}))}var Ca=200;function __(e){let t=e.split(`
|
|
2
2
|
`).filter(r=>r.startsWith("data:")).map(r=>r.slice(5).replace(/^ /,""));if(t.length===0)return null;let n=t.join(`
|
|
3
|
-
`);try{return JSON.parse(n)}catch(r){let s=n.length>
|
|
3
|
+
`);try{return JSON.parse(n)}catch(r){let s=n.length>Ca?`${n.slice(0,Ca)}\u2026`:n;throw new Error(`provisionProjectStream: received an unparseable SSE frame (${s})`,{cause:r})}}async function vI(e,t,n={}){let r=await l.postStream("/projects/provision-stream",{seed_starter:!0,...e},n);if(!r.ok){let c=await r.json().catch(()=>null);throw new _(c?.error||`Provision failed: HTTP ${r.status}`,{status:r.status,code:c?.code})}let s=r.body?.getReader();if(!s)throw new Error("Provision stream is unavailable on this runtime (no response body)");let o=new TextDecoder,i="",a=null;try{for(;;){let{done:c,value:p}=await s.read();if(c)break;i+=o.decode(p,{stream:!0});let d=i.indexOf(`
|
|
4
4
|
|
|
5
5
|
`);for(;d!==-1;){let g=i.slice(0,d);i=i.slice(d+2),d=i.indexOf(`
|
|
6
6
|
|
|
7
|
-
`);let m=Ub(g);if(m){if(t(m),m.type==="error")throw new b(m.error,{status:m.status,code:m.code});m.type==="done"&&(a=m.project)}}}}finally{s.cancel().catch(()=>{})}if(!a)throw new Error("Provision stream ended without a result");return a}async function qR(){try{return l(await c.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function Vn(e,t){return l(await c.patch(`/projects/${e}`,t))}async function fa(e,t,n){return l(await c.patch(`/projects/${e}/features`,{feature:t,enabled:n}))}async function ya(e,t,n){return l(await c.patch(`/projects/${e}/experimental`,{feature:t,enabled:n}))}async function ha(e,t){return l(await c.patch(`/projects/${e}/sandbox-provider`,{provider:t}))}async function GR(e,t){return l(await c.get(`/projects/${e}/sandbox-provider/transition`,{showErrors:!1,...t}))}async function WR(e,t){throw F("updateTemplateWarmPool")}async function ba(e,t){return l(await c.patch(`/projects/${e}/onboarding`,{completed:t}))}async function KR(e,t){return l(await c.patch(`/projects/${e}/onboarding`,{profile:t}))}async function zn(e){return l(await c.delete(`/projects/${e}`))}async function HR(e,t){return pt(e,`/v1/projects?account_id=${encodeURIComponent(t)}`)}async function VR(e,t){if(!e.backendUrl||!e.accessToken)return{ok:!1,limitReached:!1};let n=gs(e.backendUrl);try{let r=await fetch(`${n}/v1/projects/provision`,{method:"POST",headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},body:JSON.stringify({seed_starter:!0,...t}),signal:AbortSignal.timeout(e.timeoutMs??9e4)});if(r.ok){let s=await r.json().catch(()=>null);return s?.project_id?{ok:!0,project:s}:{ok:!1,limitReached:!1}}return r.status===403?{ok:!1,limitReached:(await r.json().catch(()=>null))?.code==="project_limit_reached"}:{ok:!1,limitReached:!1}}catch{return{ok:!1,limitReached:!1}}}async function _a(e,t,n){return l(await c.post(`/projects/${e}/skills`,t,{showErrors:!1,...n}))}async function Pa(e){return l(await c.post("/projects/link-repository",e,{showErrors:!1}))}async function Sa(e){let{project_id:t,...n}=e;return l(await c.put(`/projects/${encodeURIComponent(t)}/git/repository`,n,{showErrors:!1}))}async function xa(e){return l(await c.get(`/projects/github/installation?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function wa(e){return l(await c.get(`/projects/github/installations?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function va(e){return l(await c.post("/projects/github/installations/linkable",e,{showErrors:!1}))}async function Aa(e,t,n){let r=new URLSearchParams({account_id:e});t&&r.set("installation_id",t);let s=n?.search?.trim();return s&&r.set("search",s),n?.limit!==void 0&&r.set("limit",String(n.limit)),l(await c.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function ka(e,t,n){let r=new URLSearchParams({account_id:e,installation_id:t,repo_full_name:n});return l(await c.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function Ra(e){return l(await c.post("/projects/github/installation",e,{showErrors:!1}))}async function Ca(e){return l(await c.post("/projects/github/installations/link",e,{showErrors:!1}))}async function Ia(e){return l(await c.post("/projects/github/user-token",e,{showErrors:!1}))}async function Ta(e,t){let n=new URLSearchParams({account_id:e});return t&&n.set("installation_id",t),l(await c.delete(`/projects/github/installation?${n.toString()}`))}async function Ea(){return l(await c.get("/projects/git/backend",{showErrors:!1}))}async function Ma(e){let t=new URLSearchParams,n=e?.search?.trim();n&&t.set("search",n),e?.limit!==void 0&&t.set("limit",String(e.limit));let r=t.toString();return l(await c.get(`/projects/git/backend/repositories${r?`?${r}`:""}`,{showErrors:!1}))}async function iC(e,t){return l(await c.post(`/projects/${e}/access-requests`,{message:t?.trim()||void 0},{showErrors:!1}))}async function Oa(e,t){return l(await c.get(`/projects/${e}/access-requests`,t))}async function Da(e,t,n="member"){return l(await c.post(`/projects/${e}/access-requests/${t}/approve`,{role:n}))}async function ja(e,t){return l(await c.post(`/projects/${e}/access-requests/${t}/reject`,{}))}async function $a(e){return l(await c.get(`/projects/${e}/access`))}async function Ua(e,t,n){return l(await c.put(`/projects/${e}/access/${t}`,{role:n}))}async function Fa(e,t){return l(await c.delete(`/projects/${e}/access/${t}`))}function aC(e){return"status"in e&&e.status==="invited"}async function La(e,t,n,r){return l(await c.post(`/projects/${e}/access/invite`,{email:t,role:n,...r!==void 0?{expires_at:r}:{}}))}async function Ba(e){return l(await c.get(`/projects/${e}/access/pending-invites`))}async function Na(e,t){return l(await c.delete(`/projects/${e}/access/pending-invites/${t}`))}async function qa(e,t){return l(await c.post(`/projects/${e}/access/pending-invites/${t}/resend`))}async function Ga(e){return l(await c.get(`/projects/${e}/group-grants`))}async function Wa(e,t,n,r){return l(await c.post(`/projects/${e}/group-grants`,r===void 0?{group_id:t,role:n}:{group_id:t,role:n,expires_at:r}))}async function Ka(e,t,n,r){return l(await c.patch(`/projects/${e}/group-grants/${t}`,r===void 0?{role:n}:{role:n,expires_at:r}))}async function Ha(e,t){return l(await c.delete(`/projects/${e}/group-grants/${t}`))}async function Va(e){return l(await c.get(`/projects/${e}/resource-grants`))}async function za(e,t){return l(await c.post(`/projects/${e}/resource-grants`,{resource_type:t.resourceType,resource_id:t.resourceId,principal_type:t.principalType,principal_id:t.principalId,...t.expiresAt!==void 0?{expires_at:t.expiresAt}:{}}))}async function Ya(e,t){return l(await c.delete(`/projects/${e}/resource-grants/${t}`))}async function Qa(e,t){return l(await c.get(`/projects/${e}/approvals`,{showErrors:t?.showErrors}))}async function Ja(e,t){return l(await c.get(`/projects/${e}/approvals/needs-input`,{showErrors:t?.showErrors}))}async function Xa(e,t,n,r={}){let s=r.note?.trim();return l(await c.post(`/projects/${e}/approvals/${t}`,{decision:n,...s?{note:s}:{}}))}async function Za(e){return l(await c.get(`/projects/${e}/secrets`,{showErrors:!1}))}async function ec(e,t){return l(await c.post(`/projects/${e}/secrets`,t))}async function tc(e,t,n,r={}){return l(await c.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/strategy`,{strategy:n,...r}))}async function nc(e,t,n){return l(await c.post(`/projects/${e}/secrets/${encodeURIComponent(t)}/broker`,n))}async function rc(e){return l(await c.get(`/projects/${e}/oauth`)).items??[]}async function ms(e,t,n){return l(await c.post(`/projects/${e}/oauth/${t}/start`,{sharing:n?.sharing,...n?.resourceLabel===void 0?{}:{resource_label:n.resourceLabel},...n?.resourceId===void 0?{}:{resource_id:n.resourceId}}))}async function fs(e,t,n){return l(await c.post(`/projects/${e}/oauth/${t}/poll`,{flow_id:n}))}async function sc(e,t){return l(await c.delete(`/projects/${e}/oauth/${encodeURIComponent(t)}`))}var Fb=2e3,Lb=3e3,Bb=10*6e4;async function pC(e){let{projectId:t,provider:n,input:r,onChallenge:s,isCancelled:o,sleep:i=m=>new Promise(f=>setTimeout(f,m)),now:a=()=>Date.now()}=e,u=()=>o?.()??!1,p=await ms(t,n,r);if(u())return{status:"cancelled"};s?.({verification_url:p.verification_url,user_code:p.user_code});let d=Math.max(Fb,p.interval_ms||Lb),g=p.expires_at||a()+Bb;for(;!u()&&a()<g;){if(await i(d),u())return{status:"cancelled"};let m;try{m=await fs(t,n,p.flow_id)}catch{continue}if(u())return{status:"cancelled"};if(m.status==="success")return{status:"success",credential:m.credential};if(m.status==="failed")return{status:"failed",error:m.error};if(m.status==="expired")return{status:"expired"}}return u()?{status:"cancelled"}:{status:"expired"}}async function oc(e,t){return l(await c.put(`/projects/${e}/git-credential`,t))}async function ic(e,t){return l(await c.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}`))}async function ac(e,t,n){return l(await c.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`,n))}async function cc(e,t){return l(await c.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`))}var ys=e=>`/accounts/${encodeURIComponent(e)}/secret-resources`,gt=(e,t)=>`${ys(e)}/${encodeURIComponent(t)}`,uc=(e,t,n)=>`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/provider-secret-pools/${encodeURIComponent(n)}`;async function lc(e,t){let n=t?`?project_id=${encodeURIComponent(t)}`:"";return l(await c.get(`${ys(e)}${n}`))}async function pc(e,t){return l(await c.post(ys(e),t))}async function dc(e,t,n){return l(await c.put(`${gt(e,t)}/value`,{value:n}))}async function gc(e,t){return l(await c.post(`${gt(e,t)}/retry`))}async function mc(e,t){return l(await c.delete(gt(e,t)))}async function fc(e,t,n,r){return l(await c.put(`${gt(e,t)}/grants/${encodeURIComponent(n)}`,{},r))}async function yc(e,t,n,r){return l(await c.delete(`${gt(e,t)}/grants/${encodeURIComponent(n)}`,r))}async function hc(e,t,n,r){return l(await c.put(`${gt(e,t)}/access`,{mode:n,user_ids:r}))}async function bc(e,t,n){return l(await c.get(uc(e,t,n)))}async function _c(e,t){let n=`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/provider-secret-pools`;return l(await c.get(n))}async function Pc(e,t,n,r){return l(await c.put(uc(e,t,n),{secret_ids:r}))}async function hs(){return ds()}async function Nb(e){return On(()=>k().getToken(),e,bs)}function bs(){Ut()}function PC(e){e===null&&Ut()}function SC(e){}async function Ft(){return hs()}async function xC(e){return Nb(e)}async function M(e,t,n){try{return await Ve(e,t,{retryOnAuthError:n?.retryOnAuthError,timeoutMs:n?.timeoutMs})}catch(r){if(r instanceof J)return Dn();throw r}}function Yn(e,t){return e?`/connectors/projects/${encodeURIComponent(e)}/${t}`:`/connectors/${t}`}async function Lt(e,t){let n=new URLSearchParams;t?.slug&&n.set("slug",t.slug),t?.includeSchemas!==void 0&&n.set("include_schemas",String(t.includeSchemas)),t?.includeOutputSchemas&&n.set("include_output_schemas","true");let r=n.toString()?`?${n.toString()}`:"";return l(await c.get(`${Yn(e,"catalog")}${r}`)).connectors??[]}async function _s(e){let t=[];for(let n of await Lt(e,{includeSchemas:!1}))for(let r of n.actions)t.push({tool:`${n.slug}.${r.path}`,connector:n.slug,action:r.path,risk:r.risk,description:r.description||r.name,inputSchema:r.inputSchema});return t}async function Sc(e,t="",n={}){let r=t.trim().toLowerCase(),s=r.split(/\s+/).filter(Boolean),o=[],i=[];for(let a of await _s(e)){let u=`${a.tool} ${a.description}`.toLowerCase();!r||u.includes(r)?o.push(a):s.every(p=>u.includes(p))&&i.push(a)}return[...o,...i].slice(0,n.limit??20)}async function Ps(e,t){let n=t.indexOf(".");if(n<0)return null;let r=t.slice(0,n).trim();if(!r)return null;let s=(await Lt(e,{slug:r,includeSchemas:!0,includeOutputSchemas:!0})).find(o=>o.slug===r);if(!s)return null;for(let o of s.actions){let i=`${s.slug}.${o.path}`;if(i===t)return{tool:i,connector:s.slug,action:o.path,risk:o.risk,description:o.description||o.name,inputSchema:o.inputSchema,outputSchema:o.outputSchema??null}}return null}function qb(e){let t=e.indexOf("."),n=t<0?"":e.slice(0,t).trim(),r=t<0?"":e.slice(t+1).trim();if(!n||!r)throw new Error("tool must use the connector.action format");return{connector:n,action:r}}var Gb=9e4;async function mt(e,t,n={},r={}){let{connector:s,action:o}=qb(t),i=r.account?.trim(),a=r.approvalContext?.trim(),u=l(await c.post(Yn(e,"call"),{connector:s,action:o,args:n,...i?{account:i}:{},...a?{approval_context:a}:{}},{timeout:r.timeoutMs??Gb,signal:r.signal}));return u.ok&&u.binding!==void 0&&!("output"in u)&&(u.output=u.data),u}async function Ss(e,t){let n=await c.get(Yn(e,`connectors/${encodeURIComponent(t)}/accounts`));return l(n).accounts??[]}function Wb(e,t){if(e&&typeof e=="object"){let n=e;for(let r of["reason","error","message","detail"])if(typeof n[r]=="string"&&n[r])return n[r]}return`HTTP ${t}`}function Kb(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t-=1;return t===e.length?e:e.slice(0,t)}async function xs(e,t,n){let r=n.filename.trim(),s=n.contentType.trim();if(!r)throw new Error("filename is required");if(!s)throw new Error("contentType is required");let o={"Content-Type":s,"X-Beeuni-Attachment-Filename":encodeURIComponent(r),"X-Beeuni-Attachment-Disposition":n.contentDisposition??"attachment"};n.contentId?.trim()&&(o["X-Beeuni-Attachment-Content-Id"]=encodeURIComponent(n.contentId.trim())),n.connector?.trim()&&(o["X-Beeuni-Attachment-Connector"]=encodeURIComponent(n.connector.trim()));let i=Kb(k().backendUrl),a=Yn(e,"attachments"),u=await M(`${i}${a}`,{method:"POST",headers:o,body:t},{timeoutMs:6e4}),p=await u.text(),d=null;if(p)try{d=JSON.parse(p)}catch{d=p}if(!u.ok)throw new b(Wb(d,u.status),{status:u.status,code:String(d&&typeof d=="object"?d.code??u.status:u.status),details:d,response:u,endpoint:a});return d}function IC(e){if(e.owner_type!=="project")return!1;let t=e.shared_with??[];return t.length===0||t.some(n=>n.principal_type==="project")}async function xc(e){return l(await c.get(`/projects/${e}/connections`))}async function wc(e){return l(await c.get(`/projects/${e}/connections/all`))}async function vc(e,t){return l(await c.post(`/projects/${e}/connections`,t))}async function Ac(e,t){return l(await c.post(`/projects/${e}/connections/me`,t))}async function kc(e,t,n){return l(await c.put(`/projects/${e}/connections/${t}/credential`,n))}function ke(e,t,n){return`/projects/${e}/connections/${t}/oauth2/${n}`}async function TC(e,t){return l(await c.post(`/projects/${e}/connectors/${encodeURIComponent(t)}/oauth2/connection`,{}))}async function EC(e,t,n){return l(await c.put(ke(e,t,"application"),n))}async function MC(e,t){return l(await c.get(ke(e,t,"application")))}async function OC(e,t,n){return l(await c.post(ke(e,t,"discover"),n))}async function DC(e,t,n={}){return l(await c.post(ke(e,t,"discover-resource"),n))}async function jC(e,t,n){return l(await c.post(ke(e,t,"register"),n))}async function $C(e,t,n){return l(await c.post(ke(e,t,"authorize"),n))}async function UC(e,t,n){return l(await c.post(ke(e,t,"device"),n))}async function FC(e,t,n){return l(await c.post(ke(e,t,`device/${encodeURIComponent(n)}`),{}))}async function LC(e,t){return l(await c.get(ke(e,t,"status")))}async function Rc(e,t){return l(await c.put(`/projects/${e}/connections/${t}/revoke`,{}))}async function Cc(e,t){return l(await c.put(`/projects/${e}/connections/${t}/activate`,{}))}async function Ic(e,t){return l(await c.put(`/projects/${e}/connections/${t}/default`,{}))}async function Tc(e,t,n){return l(await c.put(`/projects/${e}/connections/${t}/label`,{label:n}))}async function Ec(e,t){return l(await c.post(`/projects/${e}/computers`,{tunnel_id:t.tunnelId,...t.share?{share:t.share}:{}}))}async function Mc(e,t,n=[]){return l(await c.post(`/projects/${e}/connections/${t}/share`,{principals:n}))}async function Oc(e,t,n={}){return l(await c.post(`/projects/${e}/connections/${t}/connect`,n))}async function Dc(e,t){return l(await c.post(`/projects/${e}/connections/${t}/connect/finalize`,{}))}async function jc(e,t){let n=t?.includeSchemas===void 0?"":`?include_schemas=${t.includeSchemas}`;return l(await c.get(`/connectors/projects/${e}/connectors${n}`,{showErrors:!1}))}async function $c(e){return l(await c.post(`/connectors/projects/${e}/connectors/sync`,{}))}async function Uc(e,t,n){return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/credential-mode`,{mode:n}))}async function Fc(e,t,n){return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/authorization-strategy`,{authorization_strategy:n}))}async function Lc(e,t,n){return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/sensitive`,{sensitive:n}))}async function Bc(e,t){return l(await c.get(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/policies`))}async function Nc(e,t,n){return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/policies`,{policies:n}))}async function BC(e,t){throw new Error("Connection-specific policies were removed. Use getConnectorPolicies(projectId, slug).")}async function NC(e,t,n){throw new Error("Connection-specific policies were removed. Use setConnectorPolicies(projectId, slug, policies).")}async function qc(e,t){return l(await c.get(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/config`))}async function Gc(e,t,n){return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/name`,{name:n}))}async function Hb(e,t,n={}){return l(await c.post(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/connect`,{...n.owner?{owner:n.owner}:{},...n.successRedirectUri?{success_redirect_uri:n.successRedirectUri}:{},...n.errorRedirectUri?{error_redirect_uri:n.errorRedirectUri}:{}}))}var Wc=Hb;async function qC(e,t){return l(await c.get(`/connectors/projects/${e}/sessions/${encodeURIComponent(t)}/connect-requests`)).connectors??[]}async function Kc(e,t){return l(await c.post(`/connectors/projects/${e}/connectors`,t))}async function Hc(e,t){return l(await c.post(`/connectors/projects/${e}/connectors/auth-discovery`,t))}async function Vc(e,t){return l(await c.delete(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}`))}async function zc(e,t,n){let r=typeof t=="string"||t===void 0?{...t?{q:t}:{},...n?{cursor:n}:{}}:t,s=new URLSearchParams;r.q&&s.set("q",r.q),r.category&&s.set("category",r.category),r.cursor&&s.set("cursor",r.cursor),r.limit&&s.set("limit",String(r.limit));let o=s.toString();return l(await c.get(`/connectors/projects/${e}/pipedream/apps${o?`?${o}`:""}`))}async function Yc(e,t){let n=new URLSearchParams;t?.perCategory&&n.set("perCategory",String(t.perCategory)),t?.maxCategories&&n.set("maxCategories",String(t.maxCategories));let r=n.toString();return l(await c.get(`/connectors/projects/${e}/pipedream/sections${r?`?${r}`:""}`))}async function GC(e,t={}){let n=new URLSearchParams;t.q&&n.set("q",t.q),t.category&&n.set("category",t.category),t.cursor&&n.set("cursor",t.cursor),t.limit&&n.set("limit",String(t.limit));let r=n.toString(),s=l(await c.get(`/connectors/projects/${e}/connect/toolkits${r?`?${r}`:""}`));if("toolkits"in s)return s;let o=s.cursor?.trim()||void 0;return{provider:"composio",toolkits:s.items,nextCursor:o,hasMore:!!o}}async function WC(e,t){let n=new URLSearchParams;t?.perCategory&&n.set("perCategory",String(t.perCategory)),t?.maxCategories&&n.set("maxCategories",String(t.maxCategories));let r=n.toString();return l(await c.get(`/connectors/projects/${e}/connect/sections${r?`?${r}`:""}`))}async function ws(e,t,n){let r=typeof t=="string"||t===void 0?{...t?{q:t}:{},...n?{cursor:n}:{}}:t,s=new URLSearchParams;r.q&&s.set("q",r.q),r.category&&s.set("category",r.category),r.cursor&&s.set("cursor",r.cursor),r.limit&&s.set("limit",String(r.limit));let o=s.toString();return l(await c.get(`/connectors/projects/${e}/discover/connectors${o?`?${o}`:""}`))}async function Qc(e,t){let n=new URLSearchParams;t?.perCategory&&n.set("perCategory",String(t.perCategory)),t?.maxCategories&&n.set("maxCategories",String(t.maxCategories));let r=n.toString();return l(await c.get(`/connectors/projects/${e}/discover/sections${r?`?${r}`:""}`))}async function vs(e,t){let n=new URLSearchParams({id:t});return l(await c.get(`/connectors/projects/${e}/discover/connectors/detail?${n.toString()}`))}var KC=ws,HC=vs;async function Jc(){return l(await c.get("/connectors/connect-status"))}async function Xc(e,t,n){let r=typeof n=="string"?{value:n}:n;return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/credential`,r))}async function Zc(e,t){return l(await c.delete(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/credential`))}async function VC(e,t,n){return l(await c.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/secret-binding`,{secret_identifier:n}))}async function Vb(e,t,n={}){let r={};return n.owner&&(r.owner=n.owner),n.connectionId&&(r.connection_id=n.connectionId),l(await c.post(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/connect/finalize`,r))}var eu=Vb;var Qn=class extends b{reason;connector;action;binding;upstreamStatus;retryAfterSeconds;connectUrl;hint;availableAccounts;requestedAccount;constructor(t,n){let{reason:r,connector:s,action:o,binding:i,upstreamStatus:a,retryAfterSeconds:u,connectUrl:p,hint:d,availableAccounts:g,requestedAccount:m,...f}=n;super(t,{...f,name:"ConnectorCallError"}),this.reason=r,this.connector=s,this.action=o,this.binding=i??null,this.upstreamStatus=a??null,this.retryAfterSeconds=u??null,this.connectUrl=p??null,this.hint=d??null,this.availableAccounts=g??[],this.requestedAccount=m??null}},As=class extends Error{connector;action;reason;executionId;approvalUrl;approvalSummary;approvalInstructions;retryable;constructor(t,n,r){super(`${t}.${n} is waiting for approval`+(r.approval_url?`: ${r.approval_url}`:"")),this.name="ConnectorApprovalPendingError",this.connector=t,this.action=n,this.reason=r.reason??null,this.executionId=r.execution_id??null,this.approvalUrl=r.approval_url??null,this.approvalSummary=r.approval_summary??null,this.approvalInstructions=r.approval_instructions??null,this.retryable=r.retryable??!1,Object.setPrototypeOf(this,new.target.prototype)}},ks=class extends Error{code="max_pages_exceeded";connector;action;maxPages;nextArgs;constructor(t,n,r,s){super(`${t}.${n} has more than ${r} pages; resume with nextArgs`),this.name="ConnectorPageLimitError",this.connector=t,this.action=n,this.maxPages=r,this.nextArgs=s,Object.setPrototypeOf(this,new.target.prototype)}},fe=e=>typeof e=="string"&&e?e:null;function tu(e){return/^([a-z][a-z0-9_]*)(?::|$)/.exec(e)?.[1]??"connector_error"}function zb(e){let t=e?.headers?.get("retry-after");return t&&/^\d+$/.test(t.trim())?Number(t):null}function Yb(e,t,n){if(!(e instanceof b)||typeof e.status!="number")return e;let r=e.details&&typeof e.details=="object"?e.details:{},s=fe(r.reason)??fe(r.error)??e.message,o=/^upstream_(\d{3})\b/.exec(s),i=typeof r.upstream_status=="number"?r.upstream_status:o?Number(o[1]):null;return new Qn(fe(r.message)??fe(r.hint)??s,{status:e.status,code:i===null?tu(s):`upstream_${i}`,details:e.details,data:e.details,response:e.response,reason:s,connector:fe(r.connector)??t,action:fe(r.action)??n,binding:fe(r.binding),upstreamStatus:i,retryAfterSeconds:typeof r.retry_after_seconds=="number"?r.retry_after_seconds:zb(e.response),connectUrl:fe(r.connect_url),hint:fe(r.hint),availableAccounts:Array.isArray(r.available_accounts)?r.available_accounts:[],requestedAccount:fe(r.requested_account)})}function Qb(e){if("output"in e)return e.output;let t=e.data;return t?.provider==="composio"&&"result"in t?t.result:t?.jsonrpc==="2.0"&&t.result?t.result.structuredContent??t.result.content:e.data}async function Rs(e,t,n,r={},s={}){let o=t.trim(),i=n.trim();if(!o||!i)throw new Error("connector slug and action are required");let a;try{a=await mt(e,`${o}.${i}`,r,s)}catch(u){throw Yb(u,o,i)}if(a.status==="pending_approval")throw new As(o,i,a);if(!a.ok||a.upstream_error){let u=a.upstream_error??a.reason??"connector_error";throw new Qn(u,{status:200,code:a.upstream_error?"upstream_error":tu(u),details:a,data:a,reason:u,connector:o,action:i,binding:a.binding??null,upstreamStatus:a.upstream_status??null})}return Qb(a)}async function*nu(e,t,n,r,s){let{next:o,maxPages:i=100,...a}=s,u=r;for(let p=0;u;p++){if(p>=i)throw new ks(t,n,i,u);let d=await Rs(e,t,n,u,a);yield d,u=o(d,u)}}async function ru(e){return l(await c.get(`/connectors/projects/${e}/policies`))}async function su(e,t,n){return l(await c.put(`/connectors/projects/${e}/policies`,{policies:t,defaultMode:n}))}async function ou(e){return l(await c.get(`/projects/${e}/sandboxes`))}async function iu(e){return l(await c.get(`/projects/${e}/snapshots`))}async function Jn(e){return l(await c.get(`/projects/${e}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function au(e,t){return l(await c.post(`/projects/${e}/snapshots/rebuild`,t?{slug:t}:{}))}async function cu(e){return l(await c.post(`/projects/${e}/snapshots/fix-with-agent`,{}))}async function uu(e,t){return l(await c.post(`/projects/${e}/sandbox-templates`,t))}async function lu(e,t,n){return l(await c.patch(`/projects/${e}/sandbox-templates/${t}`,n))}async function pu(e,t){return l(await c.delete(`/projects/${e}/sandbox-templates/${t}`))}async function du(e,t){return l(await c.post(`/projects/${e}/sandbox-templates/${t}/build`,{}))}async function gu(e){return l(await c.get(`/projects/${e}/sandboxes`))}async function Xn(e){let t=new URL(k().backendUrl,globalThis.location?.href),n=new URL(e);if(n.origin!==t.origin)throw new Error(`Refusing to attach credentials to a URL outside the Beeuni backend: ${n.origin}`);let{headers:r}=await Bn(e);return{url:e,headers:Object.fromEntries(r.entries())}}async function mu(e,t){let n=new URLSearchParams;t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path);let r=n.toString()?`?${n.toString()}`:"";return l(await c.get(`/projects/${e}/files${r}`,{showErrors:!1}))}async function fu(e,t){let n=new URLSearchParams;return t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path),n.set("depth","1"),l(await c.get(`/projects/${e}/files?${n.toString()}`,{showErrors:!1}))}async function yu(e,t,n){let r=new URLSearchParams({q:t});return n?.content&&r.set("content","1"),n?.ref&&r.set("ref",n.ref),n?.limit&&r.set("limit",String(n.limit)),l(await c.get(`/projects/${e}/files/search?${r.toString()}`))}async function hu(e,t,n){let r=new URLSearchParams({path:t});return n&&r.set("ref",n),l(await c.get(`/projects/${e}/files/content?${r.toString()}`,{showErrors:!1}))}var Jb=10*6e4;async function bu(e,t,n){let r=new URLSearchParams;t&&r.set("ref",t),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"",o=`${k().backendUrl||""}/projects/${e}/files/archive${s}`;return await(await we(o,{method:"GET"},{timeoutMs:Jb},"Failed to download")).blob()}async function _u(e,t,n){let r=new URLSearchParams;t&&r.set("ref",t),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"";return Xn(`${k().backendUrl}/projects/${encodeURIComponent(e)}/files/archive${s}`)}async function dI(e,t,n,r){let s=new URLSearchParams({path:t});n&&s.set("ref",n);let o=s.toString()?`?${s.toString()}`:"",i=`${k().backendUrl||""}/projects/${e}/files/raw${o}`;return await(await we(i,{method:"GET",...r?.signal?{signal:r.signal}:{}},{},"Failed to read file")).blob()}var Cs=52428800,Xb=104857600,Pu=20;var er=e=>`/projects/${encodeURIComponent(e)}/attachments`,tr={showErrors:!1,deadlineCoversBody:!0},Su=3e4,Zb=12e4,e_=6e4,t_=5*6e4,n_=6e4,r_=6e4;function Zn(){return new b("Request aborted",{name:"AbortError",code:"ABORTED"})}function Bt(e){if(e?.aborted)throw Zn()}function s_(e){return!(e instanceof b)||e.code==="ABORTED"||e.code==="attachment_budget_exceeded"?!1:e.code==="TIMEOUT"||e.name==="TypeError"||e.status===429||e.status!==void 0&&e.status>=500}async function Nt(e,t,n=!1){let r;for(let s=0;;s++){Bt(t);try{return await e()}catch(o){let i=n&&o instanceof b&&o.status===409&&o.code==="attachment_processing";if(t?.aborted||!(s_(o)||i))throw o;r??=Date.now()+(n?t_:e_);let a=Math.min(8e3,500*2**s)*(.5+Math.random()/2);if(Date.now()+a>=r)throw o;try{await $n(a,t)}catch{throw Bt(t),o}}}}function o_(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&Object.values(e).every(t=>typeof t=="string")}function Is(e,t,n){let r=e?.upload,s=e?.received_bytes,o=Number.isSafeInteger(s)&&s>=0&&s<=t.size,i=r?.kind==="direct"?typeof r.url=="string"&&/^https?:\/\//i.test(r.url)&&r.method==="PUT"&&o_(r.headers)&&Number.isFinite(Date.parse(r.expires_at))&&(s===0||s===t.size):r?.kind==="chunked"&&Number.isSafeInteger(r.chunk_size)&&r.chunk_size>0&&(s===t.size||s%r.chunk_size===0);if(!e?.attachment_id||n!==void 0&&e.attachment_id!==n||e.size!==t.size||!o||!i)throw new Error("Invalid attachment upload handle");return e}async function xu(e,t,n,r){return l(await c.post(er(e),{...r?{attachment_id:r}:{},filename:t.name,mime:t.type||"application/octet-stream",size:t.size},{...tr,signal:n,timeout:Su}),"Failed to start attachment upload")}async function wu(e,t,n,r){let s=Is({...await Nt(()=>xu(e,t,r.signal,n.attachment_id),r.signal),received_bytes:0},t,n.attachment_id);return r.onUpload?.(s),s}function vu(e,t){let n;try{n=JSON.parse(t)}catch{}let r=typeof n?.message=="string"?n.message:typeof n?.error=="string"?n.error:`HTTP ${e}`;return new b(r,{status:e,details:n,code:String(n?.statusCode??e)})}function i_(e){if(!(e instanceof b))return;let t=Number(e.details?.statusCode);return Number.isInteger(t)&&t>=400?t:e.status}function a_(e,t,n,r){return new Promise((s,o)=>{let i=new e,a=0,u=!1,p,d=f=>{u||(u=!0,p&&clearTimeout(p),r.signal?.removeEventListener("abort",m),f?o(f):s())},g=()=>{p&&clearTimeout(p),p=setTimeout(()=>{d(new b("Attachment upload stalled",{code:"TIMEOUT"})),i.abort()},n_)},m=()=>{d(Zn()),i.abort()};i.open(t.method,t.url);for(let[f,h]of Object.entries(t.headers))i.setRequestHeader(f,h);i.upload.onprogress=f=>{g(),a=Math.min(f.loaded,n.size),r.onProgress?.(a,n.size)},i.onload=()=>{i.status>=200&&i.status<300?(a<n.size&&r.onProgress?.(n.size,n.size),d()):d(vu(i.status,i.responseText))},i.onerror=()=>d(new b("Network error during attachment upload",{name:"TypeError"})),i.onabort=()=>d(Zn()),r.signal?.addEventListener("abort",m,{once:!0}),g(),i.send(n)})}async function c_(e,t,n){let r=k().fetch??fetch,s;try{s=await r(e.url,{method:e.method,headers:e.headers,body:t,signal:n.signal,credentials:"omit"})}catch(o){throw n.signal?.aborted||o instanceof Error&&o.name==="AbortError"?Zn():new b(o instanceof Error?o.message:String(o),{name:o instanceof Error?o.name:"TypeError"})}if(!s.ok)throw vu(s.status,await s.text().catch(()=>""));n.onProgress?.(t.size,t.size)}function u_(e,t,n){Bt(n.signal);let r=globalThis.XMLHttpRequest;return typeof r=="function"?a_(r,e,t,n):c_(e,t,n)}async function l_(e,t,n,r){let s=n,o=!1;for(r.onProgress?.(0,t.size);s.upload.kind==="direct";){let i=s.upload;try{await Nt(()=>u_(i,t,r),r.signal)}catch(a){let u=i_(a);if(u!==409){if(o||!(u===400||u===401||u===403))throw a;o=!0,s=await wu(e,t,s,r);continue}}return s={...s,received_bytes:t.size},r.onUpload?.(s),s}return Au(e,t,s,r)}async function Au(e,t,n,r){if(n.upload.kind!=="chunked")throw new Error("Invalid attachment upload handle");let s=n.upload.chunk_size,o=`${er(e)}/${encodeURIComponent(n.attachment_id)}`,i=n;for(;i.received_bytes<t.size;){Bt(r.signal);let a=i.received_bytes,u=Math.min(a+s,t.size),p=t.slice(a,u),d=await Nt(async()=>l(await c.putRaw(`${o}/chunks/${a/s}`,p,{...tr,signal:r.signal,timeout:Su}),"Failed to upload attachment chunk"),r.signal);if(d.size!==t.size||d.received_bytes!==u)throw new Error("Invalid attachment chunk acknowledgment");i={...i,received_bytes:u},r.onUpload?.(i),r.onProgress?.(u,t.size)}return i}async function nr(e,t,n={}){if(!e)throw new Error("A project is required to upload attachments");if(!Number.isSafeInteger(t.size)||t.size<=0||t.size>52428800)throw new Error("Attachment must contain 1 byte to 50 MiB");Bt(n.signal);let r=n.resume?Is({...n.resume},t):Is({...await Nt(()=>xu(e,t,n.signal),n.signal),received_bytes:0},t);n.onUpload?.(r),r.received_bytes<t.size&&(r.upload.kind==="direct"&&Date.parse(r.upload.expires_at)-Date.now()<r_&&(r=await wu(e,t,r,n)),r=r.upload.kind==="direct"?await l_(e,t,r,n):await Au(e,t,r,n)),n.onProcessing?.();let s=`${er(e)}/${encodeURIComponent(r.attachment_id)}`;try{return await Nt(async()=>l(await c.post(`${s}/complete`,{},{...tr,signal:n.signal,timeout:Zb}),"Failed to complete attachment upload"),n.signal,!0)}catch(o){throw r.upload.kind==="direct"&&o instanceof b&&o.code==="attachment_not_uploaded"&&n.onUpload?.({...r,received_bytes:0}),o}}async function qt(e,t,n={}){if(!e)throw new Error("A project is required to remove attachments");let r=await c.delete(`${er(e)}/${encodeURIComponent(t)}`,{...tr,signal:n.signal});if(!r.success)throw r.error??new Error("Failed to remove attachment")}async function ku(e,t){let n=new URLSearchParams;t?.q&&n.set("q",t.q),t?.limit!=null&&n.set("limit",String(t.limit)),t?.includeSessionBranches!==void 0&&n.set("include_session_branches",String(t.includeSessionBranches));let r=n.toString()?`?${n.toString()}`:"";return l(await c.get(`/projects/${e}/branches${r}`))}async function Ru(e,t){let n=new URLSearchParams;t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path),t?.limit!=null&&n.set("limit",String(t.limit)),t?.skip!=null&&n.set("skip",String(t.skip));let r=n.toString()?`?${n.toString()}`:"";return l(await c.get(`/projects/${e}/commits${r}`))}async function Cu(e,t){return l(await c.get(`/projects/${e}/commits/${encodeURIComponent(t)}`))}async function Iu(e,t,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return l(await c.get(`/projects/${e}/commits/${encodeURIComponent(t)}/diff${s}`))}async function Tu(e,t,n){let r=new URLSearchParams({path:t});return n?.ref&&r.set("ref",n.ref),n?.limit!=null&&r.set("limit",String(n.limit)),n?.skip!=null&&r.set("skip",String(n.skip)),l(await c.get(`/projects/${e}/files/history?${r.toString()}`))}async function Eu(e,t){let n=new URLSearchParams({from:t.from,into:t.into});return l(await c.get(`/projects/${e}/version-diff?${n.toString()}`))}async function Mu(e,t,n){let r=new URLSearchParams;t&&r.set("status",t),n?.originSessionId&&r.set("origin_session_id",n.originSessionId),n?.limit!=null&&r.set("limit",String(n.limit));let s=r.toString()?`?${r.toString()}`:"";return l(await c.get(`/projects/${e}/change-requests${s}`,{showErrors:!1,timeout:15e3}))}async function Ou(e,t){return l(await c.get(`/projects/${e}/change-requests/${t}`))}async function Du(e,t){return l(await c.get(`/projects/${e}/change-requests/${t}/diff`))}async function ju(e,t){return l(await c.get(`/projects/${e}/change-requests/${t}/merge-preview`))}async function $u(e,t){return l(await c.post(`/projects/${e}/change-requests`,t))}async function Uu(e,t,n){return l(await c.post(`/projects/${e}/change-requests/${t}/merge`,n??{},{showErrors:!1}))}async function Fu(e,t){return l(await c.post(`/projects/${e}/change-requests/${t}/close`,{}))}async function Lu(e,t){return l(await c.post(`/projects/${e}/change-requests/${t}/reopen`,{}))}async function Bu(e,t,n){return l(await c.post(`/projects/${e}/change-requests/${t}/request-changes`,{feedback:n}))}async function Nu(e,t,n){return l(await c.post(`/projects/${e}/sessions/${t}/commit-push`,n??{}))}async function qu(e,t,n){return l(await c.patch(`/projects/${e}/change-requests/${t}`,n))}var ft=new Set,p_=500;function rr(e){e&&(ft.add(e),ft.size>p_&&ft.delete(ft.values().next().value))}function Gu(e){return!!e&&ft.has(e)}function kI(e){e&&ft.delete(e)}function Wu(e){return!!e&&e.available===!0&&e.source==="mirror"&&Array.isArray(e.messages)&&e.messages.length>0&&!!(e.runtime_session_id??e.opencode_session_id)}var sr=1,d_=12,g_=15e5,m_=3e5,f_=336*60*60*1e3,y_="beeuni.saved-copy";function Ts(e){return!!e&&typeof e.then=="function"}function h_(e,t){return Ts(e)?e.then(t):t(e)}function b_(e,t){let n=JSON.stringify(e);if(n.length<=t)return n;let{messages:r}=e.e;if(r.length===0)return null;let s=a=>{let u=r.slice(r.length-a);return JSON.stringify({...e,e:{...e.e,messages:u,message_count:u.length,complete:!1,next_cursor:String(u[0].info.id)}})},o=s(1).length-JSON.stringify(r[r.length-1]).length,i=0;for(;i<r.length;){let a=JSON.stringify(r[r.length-1-i]).length+(i>0?1:0);if(o+a>t)break;o+=a,i+=1}for(;i>0;i-=1){let a=s(i);if(a.length<=t)return a}return null}function __(e){let t=e.captured_at?Date.parse(e.captured_at):Number.NaN;return Number.isFinite(t)?t:0}function CI(e){let{storage:t,userId:n,maxSessions:r=d_,maxBytes:s=g_,maxEnvelopeBytes:o=m_,maxAgeMs:i=f_,namespace:a=y_,now:u=()=>Date.now()}=e,p=`${a}:${n}:`,d=`${p}index`,g=(w,P)=>`${p}${w}/${P}`,m=w=>{try{let P=t.getItem(w);return Ts(P)?P.catch(()=>null):P}catch{return null}},f=w=>{try{let P=t.removeItem(w);Ts(P)&&P.catch(()=>{})}catch{}},h=async w=>{try{await t.removeItem(w)}catch{}},x=w=>{if(!w)return[];try{let P=JSON.parse(w);return P?.v===sr&&Array.isArray(P.entries)?P.entries:[]}catch{return[]}},D=Promise.resolve(),j=w=>{let P=D.then(w,w);return D=P.catch(()=>{}),P},L=async w=>{try{await t.setItem(d,JSON.stringify({v:sr,entries:w}))}catch{}},y=async()=>x(await m(d)),_=async(w,P)=>{let A=[...w].sort((T,B)=>T.u-B.u),I=A.reduce((T,B)=>T+B.b,0);for(;A.length>r||I>s;){let T=A.findIndex($=>$.s!==P);if(T===-1)break;let[B]=A.splice(T,1);I-=B.b,await h(`${p}${B.s}`)}return A},S=w=>{j(async()=>{let P=await y(),A=P.find(I=>I.s===w);A&&(A.u=u(),await L(P))})},E=w=>j(async()=>{await h(`${p}${w}`);let P=await y(),A=P.filter(I=>I.s!==w);A.length!==P.length&&await L(A)});return{keyFor:g,read(w,P){let A=`${w}/${P}`;return h_(m(g(w,P)),I=>{if(!I)return null;let T;try{T=JSON.parse(I)}catch{return f(g(w,P)),E(A),null}return!T||T.v!==sr||T.user!==n||u()-T.at>i||!Wu(T.e)?(f(g(w,P)),E(A),null):(S(A),T.e)})},write(w,P,A){let I=`${w}/${P}`;if(!Wu(A))return E(I);let T={v:sr,user:n,at:u(),e:A},B=b_(T,o);if(B===null)return E(I);let $=__(A);return j(async()=>{let N=await y(),q=N.find(_e=>_e.s===I);if(q&&$>0&&q.c>$)return;let le=N.filter(_e=>_e.s!==I),ue={s:I,b:B.length,u:u(),c:$},qe=await _([...le,ue],I),at=g(w,P);try{await t.setItem(at,B)}catch{let _e=qe.filter(Pe=>Pe.s!==I).sort((Pe,ie)=>Pe.u-ie.u)[0];_e&&(await h(`${p}${_e.s}`),qe=qe.filter(Pe=>Pe.s!==_e.s));try{await t.setItem(at,B)}catch{await h(at),qe=qe.filter(Pe=>Pe.s!==I)}}await L(qe)})},remove(w,P){return E(`${w}/${P}`)},clear(){return j(async()=>{let w=await y();for(let P of w)await h(`${p}${P.s}`);await h(d)})}}}var Ku=null;function II(e){Ku=e}function Hu(){return Ku}var P_=new Set;function Vu(e){for(let t of P_)try{t(e)}catch{}}function UI(e){let t=typeof e.parent_session_id=="string"?e.parent_session_id:e.metadata?.spawned_by_session;if(typeof t!="string")return null;let n=t.trim();return!n||n===e.session_id?null:n}var FI=50,S_=200,LI=S_;function zu(e){let t=new URLSearchParams;e?.scope&&e.scope!=="visible"&&t.set("scope",e.scope),e?.limit!==void 0&&t.set("limit",String(e.limit)),e?.cursor&&t.set("cursor",e.cursor),e?.parent&&t.set("parent",e.parent),e?.startedBy&&t.set("started_by",e.startedBy);let n=e?.q?.trim();n&&t.set("q",n);for(let r of e?.labels??[])t.append("label",r);return t.size>0?`?${t}`:""}async function Yu(e,t){let n=await c.get(`/projects/${e}/sessions${zu(t)}`);return{items:l(n),next_cursor:n.headers?.get("x-next-cursor")??null}}async function yt(e,t){return l(await c.get(`/projects/${e}/sessions${zu(t)}`))}async function Qu(e,t,n){return l(await c.put(`/projects/${e}/sessions/${t}/sharing`,n))}async function Ju(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/participants`,{showErrors:!1}))}async function Xu(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/watch`,{showErrors:!1}))}async function Zu(e,t,n){return l(await c.put(`/projects/${e}/sessions/${t}/watch`,{watching:n}))}function BI(e,t){let n=e.public_url??e.public_path??e.proxy_path??e.public_token??"";if(!n)return"";if(/^https?:\/\//.test(n))return n;if(t)try{return new URL(n,t).toString()}catch{return n}return n}function NI(e,t=new Date){let n=null;for(let r of e)r.resource_type!=="transcript"||r.revoked_at||r.expires_at&&Date.parse(r.expires_at)<=t.getTime()||(!n||Date.parse(r.created_at)>Date.parse(n.created_at))&&(n=r);return n}async function el(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/previews`))}async function tl(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/public-shares`,{showErrors:!1}))}async function nl(e,t,n){return l(await c.post(`/projects/${e}/sessions/${t}/public-shares`,n))}async function rl(e,t,n){return l(await c.delete(`/projects/${e}/sessions/${t}/public-shares/${n}`))}async function ht(e,t){let n=l(await c.post(`/projects/${e}/sessions`,t??{}));return t?.initial_prompt||rr(n?.session_id),n}async function sl(e,t){let n=t?.excludeSessionId?{exclude_session_id:t.excludeSessionId}:{},r=l(await c.post(`/projects/${e}/sessions/warm`,n,{showErrors:!1}));return r.reused||rr(r.session.session_id),r}async function ol(e,t){let n=l(await c.post(`/projects/${e}/sessions/warm/claim`,t,{showErrors:!1}));return rr(n.session_id),n}async function or(e,t,n){return l(await c.get(`/projects/${e}/sessions/${t}`,{showErrors:n?.showErrors}))}async function il(e,t,n,r){let s=new URLSearchParams;n&&s.set("limit",String(n)),r?.cursor&&s.set("cursor",r.cursor),r?.includeEvents!=null&&s.set("include_events",String(r.includeEvents));let o=s.toString();return l(await c.get(`/projects/${e}/sessions/${t}/audit${o?`?${o}`:""}`,{showErrors:r?.showErrors}))}async function al(e,t,n){let r=new URLSearchParams;n?.limit!=null&&r.set("limit",String(n.limit)),n?.chars!=null&&r.set("chars",String(n.chars));let s=r.toString();return l(await c.get(`/projects/${e}/sessions/${t}/transcript${s?`?${s}`:""}`))}async function cl(e,t,n){let r=new URLSearchParams({shape:"sync"});return n?.limit!=null&&r.set("limit",String(n.limit)),n?.history&&r.set("history","true"),n?.before&&r.set("before",n.before),n?.child&&r.set("child",n.child),l(await c.get(`/projects/${e}/sessions/${t}/transcript?${r.toString()}`,{showErrors:!1,signal:n?.signal}))}async function ul(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/turn`))}async function qI(e,t,n){let r=new URLSearchParams;n?.transcript!=null&&r.set("transcript",String(n.transcript));let s=r.toString();return l(await c.get(`/projects/${e}/sessions/${t}/snapshot${s?`?${s}`:""}`,{signal:n?.signal,showErrors:!1}))}function x_(e){if(e)return e==="interrupt"?"transcript":"composer"}async function ir(e,t,n){let r=n.placement??x_(n.delivery);return l(await c.post(`/projects/${e}/sessions/${t}/prompts`,{client_message_id:n.clientMessageId,message_id:n.messageId,parts:n.parts,...r?{placement:r}:{},...n.delivery?{delivery:n.delivery}:{},...n.overrides?{overrides:n.overrides}:{},...n.remintOnDelivery?{remint_on_delivery:!0}:{},...typeof n.clientSentAtMs=="number"?{client_sent_at_ms:Math.trunc(n.clientSentAtMs)}:{}}))}async function ll(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/prompts`,{showErrors:!1}))}async function pl(e,t,n){return l(await c.delete(`/projects/${e}/sessions/${t}/prompts/${n}`,{showErrors:!1})).removed}async function dl(e,t,n,r){return l(await c.patch(`/projects/${e}/sessions/${t}/prompts/${n}`,{text:r},{showErrors:!1}))}async function gl(e,t,n){return l(await c.patch(`/projects/${e}/sessions/${t}/prompts/${n}`,{delivery:"interrupt"},{showErrors:!1}))}async function ml(e,t,n){return l(await c.post(`/projects/${e}/sessions/${t}/prompts/${n}/retry`,{},{showErrors:!1}))}async function fl(e,t,n){return l(await c.post(`/projects/${e}/sessions/${t}/prompts/hold`,{held:n},{showErrors:!1}))}async function yl(e,t,n){return l(await c.patch(`/projects/${e}/sessions/${t}`,n))}async function hl(e,t){let n=l(await c.delete(`/projects/${e}/sessions/${t}`));return Hu()?.remove(e,t),n}async function ar(e,t,n={}){return l(await c.post(`/projects/${e}/sessions/${t}/restart`,n.reset_machine?{reset_machine:!0,...n.discard_state?{discard_state:!0}:{}}:{}))}async function cr(e,t){let n=l(await c.post(`/projects/${e}/sessions/${t}/stop`,{}));return Vu(t),n}async function bl(e,t){return l(await c.get(`/projects/${e}/sessions/${encodeURIComponent(t)}/config`,{showErrors:!1}))}function w_(e){let t=e.split(`
|
|
7
|
+
`);let m=__(g);if(m){if(t(m),m.type==="error")throw new _(m.error,{status:m.status,code:m.code});m.type==="done"&&(a=m.project)}}}}finally{s.cancel().catch(()=>{})}if(!a)throw new Error("Provision stream ended without a result");return a}async function kI(){try{return u(await l.get("/projects/managed-git/status",{showErrors:!1}))}catch{return{configured:!1,provider:"github"}}}async function pr(e,t){return u(await l.patch(`/projects/${e}`,t))}async function $a(e,t,n){return u(await l.patch(`/projects/${e}/features`,{feature:t,enabled:n}))}async function Ua(e,t,n){return u(await l.patch(`/projects/${e}/experimental`,{feature:t,enabled:n}))}async function La(e,t){return u(await l.patch(`/projects/${e}/sandbox-provider`,{provider:t}))}async function RI(e,t){return u(await l.get(`/projects/${e}/sandbox-provider/transition`,{showErrors:!1,...t}))}async function CI(e,t){throw G("updateTemplateWarmPool")}async function Ba(e,t){return u(await l.patch(`/projects/${e}/onboarding`,{completed:t}))}async function II(e,t){return u(await l.patch(`/projects/${e}/onboarding`,{profile:t}))}async function dr(e){return u(await l.delete(`/projects/${e}`))}async function TI(e,t){return vt(e,`/v1/projects?account_id=${encodeURIComponent(t)}`)}async function EI(e,t){if(!e.backendUrl||!e.accessToken)return{ok:!1,limitReached:!1};let n=Es(e.backendUrl);try{let r=await fetch(`${n}/v1/projects/provision`,{method:"POST",headers:{Authorization:`Bearer ${e.accessToken}`,"Content-Type":"application/json"},body:JSON.stringify({seed_starter:!0,...t}),signal:AbortSignal.timeout(e.timeoutMs??9e4)});if(r.ok){let s=await r.json().catch(()=>null);return s?.project_id?{ok:!0,project:s}:{ok:!1,limitReached:!1}}return r.status===403?{ok:!1,limitReached:(await r.json().catch(()=>null))?.code==="project_limit_reached"}:{ok:!1,limitReached:!1}}catch{return{ok:!1,limitReached:!1}}}async function Fa(e,t,n){return u(await l.post(`/projects/${e}/skills`,t,{showErrors:!1,...n}))}async function Na(e){return u(await l.post("/projects/link-repository",e,{showErrors:!1}))}async function qa(e){let{project_id:t,...n}=e;return u(await l.put(`/projects/${encodeURIComponent(t)}/git/repository`,n,{showErrors:!1}))}async function Ga(e){return u(await l.get(`/projects/github/installation?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function Wa(e){return u(await l.get(`/projects/github/installations?account_id=${encodeURIComponent(e)}`,{showErrors:!1}))}async function Ka(e){return u(await l.post("/projects/github/installations/linkable",e,{showErrors:!1}))}async function Va(e,t,n){let r=new URLSearchParams({account_id:e});t&&r.set("installation_id",t);let s=n?.search?.trim();return s&&r.set("search",s),n?.limit!==void 0&&r.set("limit",String(n.limit)),u(await l.get(`/projects/github/repositories?${r.toString()}`,{showErrors:!1}))}async function Ha(e,t,n){let r=new URLSearchParams({account_id:e,installation_id:t,repo_full_name:n});return u(await l.get(`/projects/github/repository-branches?${r.toString()}`,{showErrors:!1}))}async function za(e){return u(await l.post("/projects/github/installation",e,{showErrors:!1}))}async function Ya(e){return u(await l.post("/projects/github/installations/link",e,{showErrors:!1}))}async function Ja(e){return u(await l.post("/projects/github/user-token",e,{showErrors:!1}))}async function Qa(e,t){let n=new URLSearchParams({account_id:e});return t&&n.set("installation_id",t),u(await l.delete(`/projects/github/installation?${n.toString()}`))}async function NI(){return u(await l.get("/projects/git/backend",{showErrors:!1}))}async function KI(e,t){return u(await l.post(`/projects/${e}/access-requests`,{message:t?.trim()||void 0},{showErrors:!1}))}async function Xa(e,t){return u(await l.get(`/projects/${e}/access-requests`,t))}async function Za(e,t,n="member"){return u(await l.post(`/projects/${e}/access-requests/${t}/approve`,{role:n}))}async function ec(e,t){return u(await l.post(`/projects/${e}/access-requests/${t}/reject`,{}))}async function tc(e){return u(await l.get(`/projects/${e}/access`))}async function nc(e,t,n){return u(await l.put(`/projects/${e}/access/${t}`,{role:n}))}async function rc(e,t){return u(await l.delete(`/projects/${e}/access/${t}`))}function VI(e){return"status"in e&&e.status==="invited"}async function sc(e,t,n,r){return u(await l.post(`/projects/${e}/access/invite`,{email:t,role:n,...r!==void 0?{expires_at:r}:{}}))}async function oc(e){return u(await l.get(`/projects/${e}/access/pending-invites`))}async function ic(e,t){return u(await l.delete(`/projects/${e}/access/pending-invites/${t}`))}async function ac(e,t){return u(await l.post(`/projects/${e}/access/pending-invites/${t}/resend`))}async function cc(e){return u(await l.get(`/projects/${e}/group-grants`))}async function lc(e,t,n,r){return u(await l.post(`/projects/${e}/group-grants`,r===void 0?{group_id:t,role:n}:{group_id:t,role:n,expires_at:r}))}async function uc(e,t,n,r){return u(await l.patch(`/projects/${e}/group-grants/${t}`,r===void 0?{role:n}:{role:n,expires_at:r}))}async function pc(e,t){return u(await l.delete(`/projects/${e}/group-grants/${t}`))}async function dc(e){return u(await l.get(`/projects/${e}/resource-grants`))}async function gc(e,t){return u(await l.post(`/projects/${e}/resource-grants`,{resource_type:t.resourceType,resource_id:t.resourceId,principal_type:t.principalType,principal_id:t.principalId,...t.expiresAt!==void 0?{expires_at:t.expiresAt}:{}}))}async function mc(e,t){return u(await l.delete(`/projects/${e}/resource-grants/${t}`))}async function fc(e,t){return u(await l.get(`/projects/${e}/approvals`,{showErrors:t?.showErrors}))}async function yc(e,t){return u(await l.get(`/projects/${e}/approvals/needs-input`,{showErrors:t?.showErrors}))}async function hc(e,t,n,r={}){let s=r.note?.trim();return u(await l.post(`/projects/${e}/approvals/${t}`,{decision:n,...s?{note:s}:{}}))}async function bc(e){return u(await l.get(`/projects/${e}/secrets`,{showErrors:!1}))}async function _c(e,t){return u(await l.post(`/projects/${e}/secrets`,t))}async function Pc(e,t,n,r={}){return u(await l.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/strategy`,{strategy:n,...r}))}async function Sc(e,t,n){return u(await l.post(`/projects/${e}/secrets/${encodeURIComponent(t)}/broker`,n))}async function xc(e){return u(await l.get(`/projects/${e}/oauth`)).items??[]}async function Ms(e,t,n){return u(await l.post(`/projects/${e}/oauth/${t}/start`,{sharing:n?.sharing,...n?.resourceLabel===void 0?{}:{resource_label:n.resourceLabel},...n?.resourceId===void 0?{}:{resource_id:n.resourceId}}))}async function Os(e,t,n){return u(await l.post(`/projects/${e}/oauth/${t}/poll`,{flow_id:n}))}async function wc(e,t){return u(await l.delete(`/projects/${e}/oauth/${encodeURIComponent(t)}`))}var P_=2e3,S_=3e3,x_=10*6e4;async function JI(e){let{projectId:t,provider:n,input:r,onChallenge:s,isCancelled:o,sleep:i=m=>new Promise(y=>setTimeout(y,m)),now:a=()=>Date.now()}=e,c=()=>o?.()??!1,p=await Ms(t,n,r);if(c())return{status:"cancelled"};s?.({verification_url:p.verification_url,user_code:p.user_code});let d=Math.max(P_,p.interval_ms||S_),g=p.expires_at||a()+x_;for(;!c()&&a()<g;){if(await i(d),c())return{status:"cancelled"};let m;try{m=await Os(t,n,p.flow_id)}catch{continue}if(c())return{status:"cancelled"};if(m.status==="success")return{status:"success",credential:m.credential};if(m.status==="failed")return{status:"failed",error:m.error};if(m.status==="expired")return{status:"expired"}}return c()?{status:"cancelled"}:{status:"expired"}}async function Ac(e,t){return u(await l.put(`/projects/${e}/git-credential`,t))}async function vc(e,t){return u(await l.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}`))}async function kc(e,t,n){return u(await l.put(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`,n))}async function Rc(e,t){return u(await l.delete(`/projects/${e}/secrets/${encodeURIComponent(t)}/personal`))}var Ds=e=>`/accounts/${encodeURIComponent(e)}/secret-resources`,Rt=(e,t)=>`${Ds(e)}/${encodeURIComponent(t)}`,Cc=(e,t,n)=>`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/provider-secret-pools/${encodeURIComponent(n)}`;async function Ic(e,t){let n=t?`?project_id=${encodeURIComponent(t)}`:"";return u(await l.get(`${Ds(e)}${n}`))}async function Tc(e,t){return u(await l.post(Ds(e),t))}async function Ec(e,t,n){return u(await l.put(`${Rt(e,t)}/value`,{value:n}))}async function Mc(e,t){return u(await l.post(`${Rt(e,t)}/retry`))}async function Oc(e,t){return u(await l.delete(Rt(e,t)))}async function Dc(e,t,n,r){return u(await l.put(`${Rt(e,t)}/grants/${encodeURIComponent(n)}`,{},r))}async function jc(e,t,n,r){return u(await l.delete(`${Rt(e,t)}/grants/${encodeURIComponent(n)}`,r))}async function $c(e,t,n,r){return u(await l.put(`${Rt(e,t)}/access`,{mode:n,user_ids:r}))}async function Uc(e,t,n){return u(await l.get(Cc(e,t,n)))}async function Lc(e,t){let n=`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/provider-secret-pools`;return u(await l.get(n))}async function Bc(e,t,n,r){return u(await l.put(Cc(e,t,n),{secret_ids:r}))}async function ot(){return Ts()}async function oT(e){return Xn(()=>R().getToken(),e,js)}function js(){nn()}function iT(e){e===null&&nn()}function aT(e){}async function j(e,t,n){try{return await st(e,t,{retryOnAuthError:n?.retryOnAuthError,timeoutMs:n?.timeoutMs})}catch(r){if(r instanceof oe)return Zn();throw r}}function gr(e,t){return e?`/connectors/projects/${encodeURIComponent(e)}/${t}`:`/connectors/${t}`}async function rn(e,t){let n=new URLSearchParams;t?.slug&&n.set("slug",t.slug),t?.includeSchemas!==void 0&&n.set("include_schemas",String(t.includeSchemas)),t?.includeOutputSchemas&&n.set("include_output_schemas","true");let r=n.toString()?`?${n.toString()}`:"";return u(await l.get(`${gr(e,"catalog")}${r}`)).connectors??[]}async function $s(e){let t=[];for(let n of await rn(e,{includeSchemas:!1}))for(let r of n.actions)t.push({tool:`${n.slug}.${r.path}`,connector:n.slug,action:r.path,risk:r.risk,description:r.description||r.name,inputSchema:r.inputSchema});return t}async function Fc(e,t="",n={}){let r=t.trim().toLowerCase(),s=r.split(/\s+/).filter(Boolean),o=[],i=[];for(let a of await $s(e)){let c=`${a.tool} ${a.description}`.toLowerCase();!r||c.includes(r)?o.push(a):s.every(p=>c.includes(p))&&i.push(a)}return[...o,...i].slice(0,n.limit??20)}async function Us(e,t){let n=t.indexOf(".");if(n<0)return null;let r=t.slice(0,n).trim();if(!r)return null;let s=(await rn(e,{slug:r,includeSchemas:!0,includeOutputSchemas:!0})).find(o=>o.slug===r);if(!s)return null;for(let o of s.actions){let i=`${s.slug}.${o.path}`;if(i===t)return{tool:i,connector:s.slug,action:o.path,risk:o.risk,description:o.description||o.name,inputSchema:o.inputSchema,outputSchema:o.outputSchema??null}}return null}function w_(e){let t=e.indexOf("."),n=t<0?"":e.slice(0,t).trim(),r=t<0?"":e.slice(t+1).trim();if(!n||!r)throw new Error("tool must use the connector.action format");return{connector:n,action:r}}var A_=9e4;async function Ct(e,t,n={},r={}){let{connector:s,action:o}=w_(t),i=r.account?.trim(),a=r.approvalContext?.trim(),c=u(await l.post(gr(e,"call"),{connector:s,action:o,args:n,...i?{account:i}:{},...a?{approval_context:a}:{}},{timeout:r.timeoutMs??A_,signal:r.signal}));return c.ok&&c.binding!==void 0&&!("output"in c)&&(c.output=c.data),c}async function Ls(e,t){let n=await l.get(gr(e,`connectors/${encodeURIComponent(t)}/accounts`));return u(n).accounts??[]}function v_(e,t){if(e&&typeof e=="object"){let n=e;for(let r of["reason","error","message","detail"])if(typeof n[r]=="string"&&n[r])return n[r]}return`HTTP ${t}`}function k_(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t-=1;return t===e.length?e:e.slice(0,t)}async function Bs(e,t,n){let r=n.filename.trim(),s=n.contentType.trim();if(!r)throw new Error("filename is required");if(!s)throw new Error("contentType is required");let o={"Content-Type":s,"X-Beeuni-Attachment-Filename":encodeURIComponent(r),"X-Beeuni-Attachment-Disposition":n.contentDisposition??"attachment"};n.contentId?.trim()&&(o["X-Beeuni-Attachment-Content-Id"]=encodeURIComponent(n.contentId.trim())),n.connector?.trim()&&(o["X-Beeuni-Attachment-Connector"]=encodeURIComponent(n.connector.trim()));let i=k_(R().backendUrl),a=gr(e,"attachments"),c=await j(`${i}${a}`,{method:"POST",headers:o,body:t},{timeoutMs:6e4}),p=await c.text(),d=null;if(p)try{d=JSON.parse(p)}catch{d=p}if(!c.ok)throw new _(v_(d,c.status),{status:c.status,code:String(d&&typeof d=="object"?d.code??c.status:c.status),details:d,response:c,endpoint:a});return d}function mT(e){if(e.owner_type!=="project")return!1;let t=e.shared_with??[];return t.length===0||t.some(n=>n.principal_type==="project")}async function Nc(e){return u(await l.get(`/projects/${e}/connections`))}async function qc(e){return u(await l.get(`/projects/${e}/connections/all`))}async function Gc(e,t){return u(await l.post(`/projects/${e}/connections`,t))}async function Wc(e,t){return u(await l.post(`/projects/${e}/connections/me`,t))}async function Kc(e,t,n){return u(await l.put(`/projects/${e}/connections/${t}/credential`,n))}function Me(e,t,n){return`/projects/${e}/connections/${t}/oauth2/${n}`}async function fT(e,t){return u(await l.post(`/projects/${e}/connectors/${encodeURIComponent(t)}/oauth2/connection`,{}))}async function yT(e,t,n){return u(await l.put(Me(e,t,"application"),n))}async function hT(e,t){return u(await l.get(Me(e,t,"application")))}async function bT(e,t,n){return u(await l.post(Me(e,t,"discover"),n))}async function _T(e,t,n={}){return u(await l.post(Me(e,t,"discover-resource"),n))}async function PT(e,t,n){return u(await l.post(Me(e,t,"register"),n))}async function ST(e,t,n){return u(await l.post(Me(e,t,"authorize"),n))}async function xT(e,t,n){return u(await l.post(Me(e,t,"device"),n))}async function wT(e,t,n){return u(await l.post(Me(e,t,`device/${encodeURIComponent(n)}`),{}))}async function AT(e,t){return u(await l.get(Me(e,t,"status")))}async function Vc(e,t){return u(await l.put(`/projects/${e}/connections/${t}/revoke`,{}))}async function Hc(e,t){return u(await l.put(`/projects/${e}/connections/${t}/activate`,{}))}async function zc(e,t){return u(await l.put(`/projects/${e}/connections/${t}/default`,{}))}async function Yc(e,t,n){return u(await l.put(`/projects/${e}/connections/${t}/label`,{label:n}))}async function Jc(e,t){return u(await l.post(`/projects/${e}/computers`,{tunnel_id:t.tunnelId,...t.share?{share:t.share}:{}}))}async function Qc(e,t,n=[]){return u(await l.post(`/projects/${e}/connections/${t}/share`,{principals:n}))}async function Xc(e,t,n={}){return u(await l.post(`/projects/${e}/connections/${t}/connect`,n))}async function Zc(e,t){return u(await l.post(`/projects/${e}/connections/${t}/connect/finalize`,{}))}async function el(e,t){let n=t?.includeSchemas===void 0?"":`?include_schemas=${t.includeSchemas}`;return u(await l.get(`/connectors/projects/${e}/connectors${n}`,{showErrors:!1}))}async function tl(e){return u(await l.post(`/connectors/projects/${e}/connectors/sync`,{}))}async function nl(e,t,n){return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/credential-mode`,{mode:n}))}async function rl(e,t,n){return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/authorization-strategy`,{authorization_strategy:n}))}async function sl(e,t,n){return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/sensitive`,{sensitive:n}))}async function ol(e,t){return u(await l.get(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/policies`))}async function il(e,t,n){return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/policies`,{policies:n}))}async function vT(e,t){throw new Error("Connection-specific policies were removed. Use getConnectorPolicies(projectId, slug).")}async function kT(e,t,n){throw new Error("Connection-specific policies were removed. Use setConnectorPolicies(projectId, slug, policies).")}async function al(e,t){return u(await l.get(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/config`))}async function cl(e,t,n){return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/name`,{name:n}))}async function ll(e,t,n={}){return u(await l.post(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/connect`,{...n.owner?{owner:n.owner}:{},...n.successRedirectUri?{success_redirect_uri:n.successRedirectUri}:{},...n.errorRedirectUri?{error_redirect_uri:n.errorRedirectUri}:{}}))}async function RT(e,t){return u(await l.get(`/connectors/projects/${e}/sessions/${encodeURIComponent(t)}/connect-requests`)).connectors??[]}async function ul(e,t){return u(await l.post(`/connectors/projects/${e}/connectors`,t))}async function pl(e,t){return u(await l.post(`/connectors/projects/${e}/connectors/auth-discovery`,t))}async function dl(e,t){return u(await l.delete(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}`))}async function CT(e,t={}){let n=new URLSearchParams;t.q&&n.set("q",t.q),t.category&&n.set("category",t.category),t.cursor&&n.set("cursor",t.cursor),t.limit&&n.set("limit",String(t.limit));let r=n.toString(),s=u(await l.get(`/connectors/projects/${e}/connect/toolkits${r?`?${r}`:""}`));if("toolkits"in s)return s;let o=s.cursor?.trim()||void 0;return{provider:"composio",toolkits:s.items,nextCursor:o,hasMore:!!o}}async function IT(e,t){let n=new URLSearchParams;t?.perCategory&&n.set("perCategory",String(t.perCategory)),t?.maxCategories&&n.set("maxCategories",String(t.maxCategories));let r=n.toString();return u(await l.get(`/connectors/projects/${e}/connect/sections${r?`?${r}`:""}`))}async function Fs(e,t,n){let r=typeof t=="string"||t===void 0?{...t?{q:t}:{},...n?{cursor:n}:{}}:t,s=new URLSearchParams;r.q&&s.set("q",r.q),r.category&&s.set("category",r.category),r.cursor&&s.set("cursor",r.cursor),r.limit&&s.set("limit",String(r.limit));let o=s.toString();return u(await l.get(`/connectors/projects/${e}/discover/connectors${o?`?${o}`:""}`))}async function gl(e,t){let n=new URLSearchParams;t?.perCategory&&n.set("perCategory",String(t.perCategory)),t?.maxCategories&&n.set("maxCategories",String(t.maxCategories));let r=n.toString();return u(await l.get(`/connectors/projects/${e}/discover/sections${r?`?${r}`:""}`))}async function Ns(e,t){let n=new URLSearchParams({id:t});return u(await l.get(`/connectors/projects/${e}/discover/connectors/detail?${n.toString()}`))}var TT=Fs,ET=Ns;async function ml(){return u(await l.get("/connectors/connect-status"))}async function fl(e,t,n){let r=typeof n=="string"?{value:n}:n;return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/credential`,r))}async function yl(e,t){return u(await l.delete(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/credential`))}async function MT(e,t,n){return u(await l.put(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/secret-binding`,{secret_identifier:n}))}async function hl(e,t,n={}){let r={};return n.owner&&(r.owner=n.owner),n.connectionId&&(r.connection_id=n.connectionId),u(await l.post(`/connectors/projects/${e}/connectors/${encodeURIComponent(t)}/connect/finalize`,r))}var mr=class extends _{reason;connector;action;binding;upstreamStatus;retryAfterSeconds;connectUrl;hint;availableAccounts;requestedAccount;constructor(t,n){let{reason:r,connector:s,action:o,binding:i,upstreamStatus:a,retryAfterSeconds:c,connectUrl:p,hint:d,availableAccounts:g,requestedAccount:m,...y}=n;super(t,{...y,name:"ConnectorCallError"}),this.reason=r,this.connector=s,this.action=o,this.binding=i??null,this.upstreamStatus=a??null,this.retryAfterSeconds=c??null,this.connectUrl=p??null,this.hint=d??null,this.availableAccounts=g??[],this.requestedAccount=m??null}},qs=class extends Error{connector;action;reason;executionId;approvalUrl;approvalSummary;approvalInstructions;retryable;constructor(t,n,r){super(`${t}.${n} is waiting for approval`+(r.approval_url?`: ${r.approval_url}`:"")),this.name="ConnectorApprovalPendingError",this.connector=t,this.action=n,this.reason=r.reason??null,this.executionId=r.execution_id??null,this.approvalUrl=r.approval_url??null,this.approvalSummary=r.approval_summary??null,this.approvalInstructions=r.approval_instructions??null,this.retryable=r.retryable??!1,Object.setPrototypeOf(this,new.target.prototype)}},Gs=class extends Error{code="max_pages_exceeded";connector;action;maxPages;nextArgs;constructor(t,n,r,s){super(`${t}.${n} has more than ${r} pages; resume with nextArgs`),this.name="ConnectorPageLimitError",this.connector=t,this.action=n,this.maxPages=r,this.nextArgs=s,Object.setPrototypeOf(this,new.target.prototype)}},Pe=e=>typeof e=="string"&&e?e:null;function bl(e){return/^([a-z][a-z0-9_]*)(?::|$)/.exec(e)?.[1]??"connector_error"}function R_(e){let t=e?.headers?.get("retry-after");return t&&/^\d+$/.test(t.trim())?Number(t):null}function C_(e,t,n){if(!(e instanceof _)||typeof e.status!="number")return e;let r=e.details&&typeof e.details=="object"?e.details:{},s=Pe(r.reason)??Pe(r.error)??e.message,o=/^upstream_(\d{3})\b/.exec(s),i=typeof r.upstream_status=="number"?r.upstream_status:o?Number(o[1]):null;return new mr(Pe(r.message)??Pe(r.hint)??s,{status:e.status,code:i===null?bl(s):`upstream_${i}`,details:e.details,data:e.details,response:e.response,reason:s,connector:Pe(r.connector)??t,action:Pe(r.action)??n,binding:Pe(r.binding),upstreamStatus:i,retryAfterSeconds:typeof r.retry_after_seconds=="number"?r.retry_after_seconds:R_(e.response),connectUrl:Pe(r.connect_url),hint:Pe(r.hint),availableAccounts:Array.isArray(r.available_accounts)?r.available_accounts:[],requestedAccount:Pe(r.requested_account)})}function I_(e){if("output"in e)return e.output;let t=e.data;return t?.provider==="composio"&&"result"in t?t.result:t?.jsonrpc==="2.0"&&t.result?t.result.structuredContent??t.result.content:e.data}async function Ws(e,t,n,r={},s={}){let o=t.trim(),i=n.trim();if(!o||!i)throw new Error("connector slug and action are required");let a;try{a=await Ct(e,`${o}.${i}`,r,s)}catch(c){throw C_(c,o,i)}if(a.status==="pending_approval")throw new qs(o,i,a);if(!a.ok||a.upstream_error){let c=a.upstream_error??a.reason??"connector_error";throw new mr(c,{status:200,code:a.upstream_error?"upstream_error":bl(c),details:a,data:a,reason:c,connector:o,action:i,binding:a.binding??null,upstreamStatus:a.upstream_status??null})}return I_(a)}async function*_l(e,t,n,r,s){let{next:o,maxPages:i=100,...a}=s,c=r;for(let p=0;c;p++){if(p>=i)throw new Gs(t,n,i,c);let d=await Ws(e,t,n,c,a);yield d,c=o(d,c)}}async function Pl(e){return u(await l.get(`/connectors/projects/${e}/policies`))}async function Sl(e,t,n){return u(await l.put(`/connectors/projects/${e}/policies`,{policies:t,defaultMode:n}))}async function xl(e){return u(await l.get(`/projects/${e}/sandboxes`))}async function wl(e){return u(await l.get(`/projects/${e}/snapshots`))}async function fr(e){return u(await l.get(`/projects/${e}/sandbox-health`,{showErrors:!1,timeout:15e3}))}async function Al(e,t){return u(await l.post(`/projects/${e}/snapshots/rebuild`,t?{slug:t}:{}))}async function vl(e){return u(await l.post(`/projects/${e}/snapshots/fix-with-agent`,{}))}async function kl(e,t){return u(await l.post(`/projects/${e}/sandbox-templates`,t))}async function Rl(e,t,n){return u(await l.patch(`/projects/${e}/sandbox-templates/${t}`,n))}async function Cl(e,t){return u(await l.delete(`/projects/${e}/sandbox-templates/${t}`))}async function Il(e,t){return u(await l.post(`/projects/${e}/sandbox-templates/${t}/build`,{}))}async function Tl(e){return u(await l.get(`/projects/${e}/sandboxes`))}async function yr(e){let t=new URL(R().backendUrl,globalThis.location?.href),n=new URL(e);if(n.origin!==t.origin)throw new Error(`Refusing to attach credentials to a URL outside the Beeuni backend: ${n.origin}`);let{headers:r}=await sr(e);return{url:e,headers:Object.fromEntries(r.entries())}}async function El(e,t){let n=new URLSearchParams;t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path);let r=n.toString()?`?${n.toString()}`:"";return u(await l.get(`/projects/${e}/files${r}`,{showErrors:!1}))}async function Ml(e,t){let n=new URLSearchParams;return t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path),n.set("depth","1"),u(await l.get(`/projects/${e}/files?${n.toString()}`,{showErrors:!1}))}async function Ol(e,t,n){let r=new URLSearchParams({q:t});return n?.content&&r.set("content","1"),n?.ref&&r.set("ref",n.ref),n?.limit&&r.set("limit",String(n.limit)),u(await l.get(`/projects/${e}/files/search?${r.toString()}`))}async function Dl(e,t,n){let r=new URLSearchParams({path:t});return n&&r.set("ref",n),u(await l.get(`/projects/${e}/files/content?${r.toString()}`,{showErrors:!1}))}var T_=10*6e4;async function jl(e,t,n){let r=new URLSearchParams;t&&r.set("ref",t),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"",o=`${R().backendUrl||""}/projects/${e}/files/archive${s}`;return await(await Ie(o,{method:"GET"},{timeoutMs:T_},"Failed to download")).blob()}async function $l(e,t,n){let r=new URLSearchParams;t&&r.set("ref",t),n&&r.set("path",n);let s=r.toString()?`?${r.toString()}`:"";return yr(`${R().backendUrl}/projects/${encodeURIComponent(e)}/files/archive${s}`)}async function QT(e,t,n,r){let s=new URLSearchParams({path:t});n&&s.set("ref",n);let o=s.toString()?`?${s.toString()}`:"",i=`${R().backendUrl||""}/projects/${e}/files/raw${o}`;return await(await Ie(i,{method:"GET",...r?.signal?{signal:r.signal}:{}},{},"Failed to read file")).blob()}var Ks=52428800,E_=104857600,Ul=20;var br=e=>`/projects/${encodeURIComponent(e)}/attachments`,_r={showErrors:!1,deadlineCoversBody:!0},Ll=3e4,M_=12e4,O_=6e4,D_=5*6e4,j_=6e4,$_=6e4;function hr(){return new _("Request aborted",{name:"AbortError",code:"ABORTED"})}function sn(e){if(e?.aborted)throw hr()}function U_(e){return!(e instanceof _)||e.code==="ABORTED"||e.code==="attachment_budget_exceeded"?!1:e.code==="TIMEOUT"||e.name==="TypeError"||e.status===429||e.status!==void 0&&e.status>=500}async function on(e,t,n=!1){let r;for(let s=0;;s++){sn(t);try{return await e()}catch(o){let i=n&&o instanceof _&&o.status===409&&o.code==="attachment_processing";if(t?.aborted||!(U_(o)||i))throw o;r??=Date.now()+(n?D_:O_);let a=Math.min(8e3,500*2**s)*(.5+Math.random()/2);if(Date.now()+a>=r)throw o;try{await tr(a,t)}catch{throw sn(t),o}}}}function L_(e){return!!e&&typeof e=="object"&&!Array.isArray(e)&&Object.values(e).every(t=>typeof t=="string")}function Vs(e,t,n){let r=e?.upload,s=e?.received_bytes,o=Number.isSafeInteger(s)&&s>=0&&s<=t.size,i=r?.kind==="direct"?typeof r.url=="string"&&/^https?:\/\//i.test(r.url)&&r.method==="PUT"&&L_(r.headers)&&Number.isFinite(Date.parse(r.expires_at))&&(s===0||s===t.size):r?.kind==="chunked"&&Number.isSafeInteger(r.chunk_size)&&r.chunk_size>0&&(s===t.size||s%r.chunk_size===0);if(!e?.attachment_id||n!==void 0&&e.attachment_id!==n||e.size!==t.size||!o||!i)throw new Error("Invalid attachment upload handle");return e}async function Bl(e,t,n,r){return u(await l.post(br(e),{...r?{attachment_id:r}:{},filename:t.name,mime:t.type||"application/octet-stream",size:t.size},{..._r,signal:n,timeout:Ll}),"Failed to start attachment upload")}async function Fl(e,t,n,r){let s=Vs({...await on(()=>Bl(e,t,r.signal,n.attachment_id),r.signal),received_bytes:0},t,n.attachment_id);return r.onUpload?.(s),s}function Nl(e,t){let n;try{n=JSON.parse(t)}catch{}let r=typeof n?.message=="string"?n.message:typeof n?.error=="string"?n.error:`HTTP ${e}`;return new _(r,{status:e,details:n,code:String(n?.statusCode??e)})}function B_(e){if(!(e instanceof _))return;let t=Number(e.details?.statusCode);return Number.isInteger(t)&&t>=400?t:e.status}function F_(e,t,n,r){return new Promise((s,o)=>{let i=new e,a=0,c=!1,p,d=y=>{c||(c=!0,p&&clearTimeout(p),r.signal?.removeEventListener("abort",m),y?o(y):s())},g=()=>{p&&clearTimeout(p),p=setTimeout(()=>{d(new _("Attachment upload stalled",{code:"TIMEOUT"})),i.abort()},j_)},m=()=>{d(hr()),i.abort()};i.open(t.method,t.url);for(let[y,h]of Object.entries(t.headers))i.setRequestHeader(y,h);i.upload.onprogress=y=>{g(),a=Math.min(y.loaded,n.size),r.onProgress?.(a,n.size)},i.onload=()=>{i.status>=200&&i.status<300?(a<n.size&&r.onProgress?.(n.size,n.size),d()):d(Nl(i.status,i.responseText))},i.onerror=()=>d(new _("Network error during attachment upload",{name:"TypeError"})),i.onabort=()=>d(hr()),r.signal?.addEventListener("abort",m,{once:!0}),g(),i.send(n)})}async function N_(e,t,n){let r=R().fetch??fetch,s;try{s=await r(e.url,{method:e.method,headers:e.headers,body:t,signal:n.signal,credentials:"omit"})}catch(o){throw n.signal?.aborted||o instanceof Error&&o.name==="AbortError"?hr():new _(o instanceof Error?o.message:String(o),{name:o instanceof Error?o.name:"TypeError"})}if(!s.ok)throw Nl(s.status,await s.text().catch(()=>""));n.onProgress?.(t.size,t.size)}function q_(e,t,n){sn(n.signal);let r=globalThis.XMLHttpRequest;return typeof r=="function"?F_(r,e,t,n):N_(e,t,n)}async function G_(e,t,n,r){let s=n,o=!1;for(r.onProgress?.(0,t.size);s.upload.kind==="direct";){let i=s.upload;try{await on(()=>q_(i,t,r),r.signal)}catch(a){let c=B_(a);if(c!==409){if(o||!(c===400||c===401||c===403))throw a;o=!0,s=await Fl(e,t,s,r);continue}}return s={...s,received_bytes:t.size},r.onUpload?.(s),s}return ql(e,t,s,r)}async function ql(e,t,n,r){if(n.upload.kind!=="chunked")throw new Error("Invalid attachment upload handle");let s=n.upload.chunk_size,o=`${br(e)}/${encodeURIComponent(n.attachment_id)}`,i=n;for(;i.received_bytes<t.size;){sn(r.signal);let a=i.received_bytes,c=Math.min(a+s,t.size),p=t.slice(a,c),d=await on(async()=>u(await l.putRaw(`${o}/chunks/${a/s}`,p,{..._r,signal:r.signal,timeout:Ll}),"Failed to upload attachment chunk"),r.signal);if(d.size!==t.size||d.received_bytes!==c)throw new Error("Invalid attachment chunk acknowledgment");i={...i,received_bytes:c},r.onUpload?.(i),r.onProgress?.(c,t.size)}return i}async function Pr(e,t,n={}){if(!e)throw new Error("A project is required to upload attachments");if(!Number.isSafeInteger(t.size)||t.size<=0||t.size>52428800)throw new Error("Attachment must contain 1 byte to 50 MiB");sn(n.signal);let r=n.resume?Vs({...n.resume},t):Vs({...await on(()=>Bl(e,t,n.signal),n.signal),received_bytes:0},t);n.onUpload?.(r),r.received_bytes<t.size&&(r.upload.kind==="direct"&&Date.parse(r.upload.expires_at)-Date.now()<$_&&(r=await Fl(e,t,r,n)),r=r.upload.kind==="direct"?await G_(e,t,r,n):await ql(e,t,r,n)),n.onProcessing?.();let s=`${br(e)}/${encodeURIComponent(r.attachment_id)}`;try{return await on(async()=>u(await l.post(`${s}/complete`,{},{..._r,signal:n.signal,timeout:M_}),"Failed to complete attachment upload"),n.signal,!0)}catch(o){throw r.upload.kind==="direct"&&o instanceof _&&o.code==="attachment_not_uploaded"&&n.onUpload?.({...r,received_bytes:0}),o}}async function an(e,t,n={}){if(!e)throw new Error("A project is required to remove attachments");let r=await l.delete(`${br(e)}/${encodeURIComponent(t)}`,{..._r,signal:n.signal});if(!r.success)throw r.error??new Error("Failed to remove attachment")}async function Gl(e,t){let n=new URLSearchParams;t?.q&&n.set("q",t.q),t?.limit!=null&&n.set("limit",String(t.limit)),t?.includeSessionBranches!==void 0&&n.set("include_session_branches",String(t.includeSessionBranches));let r=n.toString()?`?${n.toString()}`:"";return u(await l.get(`/projects/${e}/branches${r}`))}async function Wl(e,t){let n=new URLSearchParams;t?.ref&&n.set("ref",t.ref),t?.path&&n.set("path",t.path),t?.limit!=null&&n.set("limit",String(t.limit)),t?.skip!=null&&n.set("skip",String(t.skip));let r=n.toString()?`?${n.toString()}`:"";return u(await l.get(`/projects/${e}/commits${r}`))}async function Kl(e,t){return u(await l.get(`/projects/${e}/commits/${encodeURIComponent(t)}`))}async function Vl(e,t,n){let r=new URLSearchParams;n?.path&&r.set("path",n.path);let s=r.toString()?`?${r.toString()}`:"";return u(await l.get(`/projects/${e}/commits/${encodeURIComponent(t)}/diff${s}`))}async function Hl(e,t,n){let r=new URLSearchParams({path:t});return n?.ref&&r.set("ref",n.ref),n?.limit!=null&&r.set("limit",String(n.limit)),n?.skip!=null&&r.set("skip",String(n.skip)),u(await l.get(`/projects/${e}/files/history?${r.toString()}`))}async function zl(e,t){let n=new URLSearchParams({from:t.from,into:t.into});return u(await l.get(`/projects/${e}/version-diff?${n.toString()}`))}async function Yl(e,t,n){let r=new URLSearchParams;t&&r.set("status",t),n?.originSessionId&&r.set("origin_session_id",n.originSessionId),n?.limit!=null&&r.set("limit",String(n.limit));let s=r.toString()?`?${r.toString()}`:"";return u(await l.get(`/projects/${e}/change-requests${s}`,{showErrors:!1,timeout:15e3}))}async function Jl(e,t){return u(await l.get(`/projects/${e}/change-requests/${t}`))}async function Ql(e,t){return u(await l.get(`/projects/${e}/change-requests/${t}/diff`))}async function Xl(e,t){return u(await l.get(`/projects/${e}/change-requests/${t}/merge-preview`))}async function Zl(e,t){return u(await l.post(`/projects/${e}/change-requests`,t))}async function eu(e,t,n){return u(await l.post(`/projects/${e}/change-requests/${t}/merge`,n??{},{showErrors:!1}))}async function tu(e,t){return u(await l.post(`/projects/${e}/change-requests/${t}/close`,{}))}async function nu(e,t){return u(await l.post(`/projects/${e}/change-requests/${t}/reopen`,{}))}async function ru(e,t,n){return u(await l.post(`/projects/${e}/change-requests/${t}/request-changes`,{feedback:n}))}async function su(e,t,n){return u(await l.post(`/projects/${e}/sessions/${t}/commit-push`,n??{}))}async function ou(e,t,n){return u(await l.patch(`/projects/${e}/change-requests/${t}`,n))}var It=new Set,W_=500;function Sr(e){e&&(It.add(e),It.size>W_&&It.delete(It.values().next().value))}function iu(e){return!!e&&It.has(e)}function pE(e){e&&It.delete(e)}var We="beeuni.session/2",cn=1,K_=["shell","read","write","edit","patch","list","glob","grep","web_fetch","web_search","todo","task","question","plan","mcp","other"];var ne=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),z=e=>typeof e=="string",Se=e=>z(e)&&e.length>0,De=e=>e===null||z(e),J=(e,t)=>e===void 0||t(e),Oe=(...e)=>t=>e.includes(t),ln=e=>Number.isInteger(e)&&e>=0,Tt=e=>typeof e=="number",lu=e=>e.schema===We&&ln(e.v),it=e=>J(e,z),Hs=e=>e===void 0||ne(e)&&Object.values(e).every(t=>ne(t)&&z(t.version)),uu=e=>e===null||ne(e)&&z(e.provider)&&z(e.model)&&it(e.variant),V_=e=>e===null||ne(e)&&Tt(e.input)&&Tt(e.output)&&Tt(e.cache_read)&&Tt(e.cache_write)&&J(e.reasoning,Tt)&&J(e.cost,Tt),au=e=>ne(e)&&(e.type==="text"&&z(e.text)||e.type==="attachment"&&z(e.mime)),H_=e=>ne(e)&&Array.isArray(e.content)&&e.content.every(au)&&J(e.model_content,t=>Array.isArray(t)&&t.every(au))&&typeof e.is_error=="boolean",cu={text:e=>z(e.text)&&J(e.bytes,ln)&&it(e.ref)&&(e.ref===void 0||e.bytes!==void 0),reasoning:e=>z(e.text),attachment:e=>z(e.mime)&&it(e.ref)&&J(e.bytes,ln)&&e.ref===void 0==(e.bytes===void 0),tool_call:e=>z(e.call_id)&&z(e.name)&&Se(e.kind)&&Oe("pending","running","complete","error")(e.status)&&J(e.result,H_),compaction:e=>De(e.summary)&&De(e.first_kept_message_id),subtask:e=>z(e.thread_id)&&z(e.agent)&&z(e.description),step:e=>Oe("start","finish")(e.phase),harness:e=>Se(e.harness)&&Se(e.kind)&&typeof e.model_visible=="boolean"};function z_(e,t){if(!Array.isArray(e))return!1;let n=new Set;for(let r of e){if(!ne(r)||!Se(r.id)||n.has(r.id)||!Object.hasOwn(cu,r.type)||!cu[r.type](r)||!Hs(r.ext)||t&&r.type==="tool_call"&&(r.status==="pending"||r.status==="running"||!r.result))return!1;n.add(r.id)}return!0}function Y_(e){return ne(e)&&lu(e)&&Se(e.message_id)&&Se(e.thread_id)&&Number.isInteger(e.seq)&&Oe("user","assistant","system")(e.role)&&Oe("turn","compaction","context")(e.kind)&&Oe("streaming","complete","error","aborted","interrupted")(e.status)&&typeof e.in_context=="boolean"&&J(e.hidden_reason,Oe("failed_attempt","aborted","retracted","reverted","superseded"))&&J(e.origin,Oe("prompt","steer","command","automation","subagent","notification"))&&J(e.agent,De)&&J(e.reply_to,De)&&J(e.parent_message_id,De)&&it(e.native_agent_id)&&it(e.context_ref)&&uu(e.model)&&V_(e.usage)&&Oe("stop","tool_calls","length","error","aborted",null)(e.finish)&&(e.error===null||ne(e.error)&&Se(e.error.code)&&z(e.error.message))&&z(e.created_at)&&De(e.completed_at)&&ne(e.producer)&&Se(e.producer.harness)&&z(e.producer.harness_version)&&z(e.producer.adapter_version)&&Hs(e.ext)&&z_(e.blocks,e.status!=="streaming"&&e.in_context===!0)}function J_(e){return ne(e)&&lu(e)&&Se(e.thread_id)&&De(e.parent_thread_id)&&(e.spawned_by===null||ne(e.spawned_by))&&z(e.created_at)}function Q_(e){return ne(e)&&J(e.schema,t=>t===We)&&J(e.v,ln)&&it(e.session_id)&&J(e.title,De)&&it(e.created_at)&&J(e.restore_grade,Oe("native","converted","partial"))&&J(e.todos,Array.isArray)&&J(e.pending,t=>ne(t)&&Array.isArray(t.questions)&&Array.isArray(t.permissions))&&J(e.selection,t=>ne(t)&&J(t.agent,De)&&uu(t.model??null))&&J(e.harness,t=>ne(t)&&z(t.current)&&Array.isArray(t.history))&&Hs(e.ext)}function pu(e){return ne(e)&&ln(e.generation)&&typeof e.has_more=="boolean"&&Q_(e.session)&&Array.isArray(e.threads)&&e.threads.every(J_)&&(e.thread_id===null||Se(e.thread_id))&&Array.isArray(e.messages)&&e.messages.every(t=>Y_(t)&&t.thread_id===e.thread_id)}var X_=e=>pu(e)&&e.messages.length>0;function Z_(e,t){let{messages:n}=e.e;for(let r=0;r<n.length;r++){let s=JSON.stringify(r===0?e:{...e,e:{...e.e,messages:n.slice(r),has_more:!0}});if(s.length<=t)return s}return null}var du={paintable:X_,fit:Z_,capturedAt:()=>0},eP=new WeakMap;function gu(e,t,n){eP.set(e,{read:(r,s)=>t.read(r,s),write:async(r,s,o)=>{await t.write(r,s,o),await n(r,s)}})}function tP(e){return!!e&&e.available===!0&&e.source==="mirror"&&Array.isArray(e.messages)&&e.messages.length>0&&!!(e.runtime_session_id??e.opencode_session_id)}var xr=1,nP=12,rP=15e5,sP=3e5,oP=336*60*60*1e3,fu="beeuni.saved-copy";function zs(e){return!!e&&typeof e.then=="function"}function iP(e,t){return zs(e)?e.then(t):t(e)}function aP(e,t){let n=JSON.stringify(e);if(n.length<=t)return n;let{messages:r}=e.e;if(r.length===0)return null;let s=a=>{let c=r.slice(r.length-a);return JSON.stringify({...e,e:{...e.e,messages:c,message_count:c.length,complete:!1,next_cursor:String(c[0].info.id)}})},o=s(1).length-JSON.stringify(r[r.length-1]).length,i=0;for(;i<r.length;){let a=JSON.stringify(r[r.length-1-i]).length+(i>0?1:0);if(o+a>t)break;o+=a,i+=1}for(;i>0;i-=1){let a=s(i);if(a.length<=t)return a}return null}function cP(e){let t=e.captured_at?Date.parse(e.captured_at):Number.NaN;return Number.isFinite(t)?t:0}var lP={paintable:tP,fit:aP,capturedAt:cP};function _E(e){let t=mu(e,lP),n=mu({...e,namespace:`${e.namespace??fu}.log`},du),r={...t,remove:async(s,o)=>{await Promise.all([t.remove(s,o),n.remove(s,o)])},clear:async()=>{await Promise.all([t.clear(),n.clear()])}};return gu(r,n,t.remove),r}function mu(e,t){let{storage:n,userId:r,maxSessions:s=nP,maxBytes:o=rP,maxEnvelopeBytes:i=sP,maxAgeMs:a=oP,namespace:c=fu,now:p=()=>Date.now()}=e,d=`${c}:${r}:`,g=`${d}index`,m=(P,x)=>`${d}${P}/${x}`,y=P=>{try{let x=n.getItem(P);return zs(x)?x.catch(()=>null):x}catch{return null}},h=P=>{try{let x=n.removeItem(P);zs(x)&&x.catch(()=>{})}catch{}},w=async P=>{try{await n.removeItem(P)}catch{}},M=P=>{if(!P)return[];try{let x=JSON.parse(P);return x?.v===xr&&Array.isArray(x.entries)?x.entries:[]}catch{return[]}},B=Promise.resolve(),F=P=>{let x=B.then(P,P);return B=x.catch(()=>{}),x},f=async P=>{try{await n.setItem(g,JSON.stringify({v:xr,entries:P}))}catch{}},b=async()=>M(await y(g)),S=async(P,x)=>{let v=[...P].sort(($,D)=>$.u-D.u),k=v.reduce(($,D)=>$+D.b,0);for(;v.length>s||k>o;){let $=v.findIndex(E=>E.s!==x);if($===-1)break;let[D]=v.splice($,1);k-=D.b,await w(`${d}${D.s}`)}return v},O=P=>{F(async()=>{let x=await b(),v=x.find(k=>k.s===P);v&&(v.u=p(),await f(x))})},C=P=>F(async()=>{await w(`${d}${P}`);let x=await b(),v=x.filter(k=>k.s!==P);v.length!==x.length&&await f(v)});return{keyFor:m,read(P,x){let v=`${P}/${x}`;return iP(y(m(P,x)),k=>{if(!k)return null;let $;try{$=JSON.parse(k)}catch{return h(m(P,x)),C(v),null}return!$||$.v!==xr||$.user!==r||p()-$.at>a||!t.paintable($.e)?(h(m(P,x)),C(v),null):(O(v),$.e)})},write(P,x,v){let k=`${P}/${x}`;if(!t.paintable(v))return C(k);let $={v:xr,user:r,at:p(),e:v},D=t.fit($,i);if(D===null)return C(k);let E=t.capturedAt(v);return F(async()=>{let q=await b(),Q=q.find(ke=>ke.s===k);if(Q&&E>0&&Q.c>E)return;let V=q.filter(ke=>ke.s!==k),Xt={s:k,b:D.length,u:p(),c:E},ve=await S([...V,Xt],k),Zt=m(P,x);try{await n.setItem(Zt,D)}catch{let ke=ve.filter(Z=>Z.s!==k).sort((Z,et)=>Z.u-et.u)[0];ke&&(await w(`${d}${ke.s}`),ve=ve.filter(Z=>Z.s!==ke.s));try{await n.setItem(Zt,D)}catch{await w(Zt),ve=ve.filter(Z=>Z.s!==k)}}await f(ve)})},remove(P,x){return C(`${P}/${x}`)},clear(){return F(async()=>{let P=await b();for(let x of P)await w(`${d}${x.s}`);await w(g)})}}}var yu=null;function PE(e){yu=e}function hu(){return yu}var uP=new Set;function bu(e){for(let t of uP)try{t(e)}catch{}}function CE(e){let t=typeof e.parent_session_id=="string"?e.parent_session_id:e.metadata?.spawned_by_session;if(typeof t!="string")return null;let n=t.trim();return!n||n===e.session_id?null:n}var IE=50,pP=200,TE=pP;function _u(e){let t=new URLSearchParams;e?.scope&&e.scope!=="visible"&&t.set("scope",e.scope),e?.limit!==void 0&&t.set("limit",String(e.limit)),e?.cursor&&t.set("cursor",e.cursor),e?.parent&&t.set("parent",e.parent),e?.startedBy&&t.set("started_by",e.startedBy);let n=e?.q?.trim();n&&t.set("q",n);for(let r of e?.labels??[])t.append("label",r);return t.size>0?`?${t}`:""}async function Pu(e,t){let n=await l.get(`/projects/${e}/sessions${_u(t)}`);return{items:u(n),next_cursor:n.headers?.get("x-next-cursor")??null}}async function Et(e,t){return u(await l.get(`/projects/${e}/sessions${_u(t)}`))}async function Su(e,t,n){return u(await l.put(`/projects/${e}/sessions/${t}/sharing`,n))}async function xu(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/participants`,{showErrors:!1}))}async function wu(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/watch`,{showErrors:!1}))}async function Au(e,t,n){return u(await l.put(`/projects/${e}/sessions/${t}/watch`,{watching:n}))}function EE(e,t){let n=e.public_url??e.public_path??e.proxy_path??e.public_token??"";if(!n)return"";if(/^https?:\/\//.test(n))return n;if(t)try{return new URL(n,t).toString()}catch{return n}return n}function ME(e,t=new Date){let n=null;for(let r of e)r.resource_type!=="transcript"||r.revoked_at||r.expires_at&&Date.parse(r.expires_at)<=t.getTime()||(!n||Date.parse(r.created_at)>Date.parse(n.created_at))&&(n=r);return n}async function vu(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/previews`))}async function ku(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/public-shares`,{showErrors:!1}))}async function Ru(e,t,n){return u(await l.post(`/projects/${e}/sessions/${t}/public-shares`,n))}async function Cu(e,t,n){return u(await l.delete(`/projects/${e}/sessions/${t}/public-shares/${n}`))}async function Mt(e,t){let n=u(await l.post(`/projects/${e}/sessions`,t??{}));return t?.initial_prompt||Sr(n?.session_id),n}async function Iu(e,t){let n=t?.excludeSessionId?{exclude_session_id:t.excludeSessionId}:{},r=u(await l.post(`/projects/${e}/sessions/warm`,n,{showErrors:!1}));return r.reused||Sr(r.session.session_id),r}async function Tu(e,t){let n=u(await l.post(`/projects/${e}/sessions/warm/claim`,t,{showErrors:!1}));return Sr(n.session_id),n}async function wr(e,t,n){return u(await l.get(`/projects/${e}/sessions/${t}`,{showErrors:n?.showErrors}))}async function Eu(e,t,n,r){let s=new URLSearchParams;n&&s.set("limit",String(n)),r?.cursor&&s.set("cursor",r.cursor),r?.includeEvents!=null&&s.set("include_events",String(r.includeEvents));let o=s.toString();return u(await l.get(`/projects/${e}/sessions/${t}/audit${o?`?${o}`:""}`,{showErrors:r?.showErrors}))}async function Mu(e,t,n){let r=new URLSearchParams;n?.limit!=null&&r.set("limit",String(n.limit)),n?.chars!=null&&r.set("chars",String(n.chars));let s=r.toString();return u(await l.get(`/projects/${e}/sessions/${t}/transcript${s?`?${s}`:""}`))}async function Ou(e,t,n){let r=new URLSearchParams({shape:"sync"});return n?.limit!=null&&r.set("limit",String(n.limit)),n?.history&&r.set("history","true"),n?.before&&r.set("before",n.before),n?.child&&r.set("child",n.child),u(await l.get(`/projects/${e}/sessions/${t}/transcript?${r.toString()}`,{showErrors:!1,signal:n?.signal}))}async function Du(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/turn`))}async function OE(e,t,n){let r=new URLSearchParams;n?.transcript!=null&&r.set("transcript",String(n.transcript));let s=r.toString();return u(await l.get(`/projects/${e}/sessions/${t}/snapshot${s?`?${s}`:""}`,{signal:n?.signal,showErrors:!1}))}function dP(e){if(e)return e==="interrupt"?"transcript":"composer"}async function Ar(e,t,n){let r=n.placement??dP(n.delivery);return u(await l.post(`/projects/${e}/sessions/${t}/prompts`,{client_message_id:n.clientMessageId,message_id:n.messageId,parts:n.parts,...r?{placement:r}:{},...n.delivery?{delivery:n.delivery}:{},...n.overrides?{overrides:n.overrides}:{},...n.remintOnDelivery?{remint_on_delivery:!0}:{},...typeof n.clientSentAtMs=="number"?{client_sent_at_ms:Math.trunc(n.clientSentAtMs)}:{}}))}async function ju(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/prompts`,{showErrors:!1}))}async function $u(e,t,n){return u(await l.delete(`/projects/${e}/sessions/${t}/prompts/${n}`,{showErrors:!1})).removed}async function Uu(e,t,n,r){return u(await l.patch(`/projects/${e}/sessions/${t}/prompts/${n}`,{text:r},{showErrors:!1}))}async function Lu(e,t,n){return u(await l.patch(`/projects/${e}/sessions/${t}/prompts/${n}`,{delivery:"interrupt"},{showErrors:!1}))}async function Bu(e,t,n){return u(await l.post(`/projects/${e}/sessions/${t}/prompts/${n}/retry`,{},{showErrors:!1}))}async function Fu(e,t,n){return u(await l.post(`/projects/${e}/sessions/${t}/prompts/hold`,{held:n},{showErrors:!1}))}async function Nu(e,t,n){return u(await l.patch(`/projects/${e}/sessions/${t}`,n))}async function qu(e,t){let n=u(await l.delete(`/projects/${e}/sessions/${t}`));return hu()?.remove(e,t),n}async function vr(e,t,n={}){return u(await l.post(`/projects/${e}/sessions/${t}/restart`,n.reset_machine?{reset_machine:!0,...n.discard_state?{discard_state:!0}:{}}:{}))}async function kr(e,t){let n=u(await l.post(`/projects/${e}/sessions/${t}/stop`,{}));return bu(t),n}async function Gu(e,t){return u(await l.get(`/projects/${e}/sessions/${encodeURIComponent(t)}/config`,{showErrors:!1}))}function gP(e){let t=e.split(`
|
|
8
8
|
`).filter(n=>n.startsWith("data:")).map(n=>n.slice(5).replace(/^ /,""));if(t.length===0)return null;try{return JSON.parse(t.join(`
|
|
9
|
-
`))}catch(n){throw new Error("reloadProjectSessionConfigStream received an invalid SSE frame",{cause:n})}}async function
|
|
9
|
+
`))}catch(n){throw new Error("reloadProjectSessionConfigStream received an invalid SSE frame",{cause:n})}}async function Wu(e,t,n={}){return u(await l.post(`/projects/${e}/sessions/${encodeURIComponent(t)}/reload`,n,{showErrors:!1}))}async function Ku(e,t,n,r,s={}){let o=await l.postStream(`/projects/${e}/sessions/${encodeURIComponent(t)}/reload-stream`,n,s);if(!o.ok){let d=await o.json().catch(()=>null);throw new _(d?.error||`Reload failed: HTTP ${o.status}`,{status:o.status,code:d?.code,data:d})}let i=o.body?.getReader();if(!i)throw new Error("Reload stream is unavailable on this runtime (no response body)");let a=new TextDecoder,c="",p=null;try{for(;;){let{done:d,value:g}=await i.read();if(d)break;c+=a.decode(g,{stream:!0});let m=c.indexOf(`
|
|
10
10
|
|
|
11
|
-
`);for(;m!==-1;){let
|
|
11
|
+
`);for(;m!==-1;){let y=c.slice(0,m);c=c.slice(m+2),m=c.indexOf(`
|
|
12
12
|
|
|
13
|
-
`);let h=w_(f);if(h){if(r(h),h.type==="error")throw new b(h.error,{status:h.status,code:h.code,data:{reason:h.reason}});h.type==="done"&&(p=h.result)}}}}finally{i.cancel().catch(()=>{})}if(!p)throw new Error("Reload stream ended without a result");return p}async function Sl(e,t){return l(await c.get(`/projects/${e}/sessions/${encodeURIComponent(t)}/scope`))}async function xl(e,t,n){return l(await c.put(`/projects/${e}/sessions/${encodeURIComponent(t)}/scope`,n))}async function wl(e,t,n){return l(await c.put(`/projects/${e}/sessions/${encodeURIComponent(t)}/model`,{model:n,opencode_model:n}))}function vl(e){let t=e.metadata?.opencode_model;return typeof t=="string"&&t.trim()?t.trim():null}async function Al(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/message-authors`,{showErrors:!1}))}async function kl(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/model-usage`,{showErrors:!1}))}function WI(e,t){let n=e.author_user_id===void 0||!t.userId||e.author_user_id===t.userId;return{own:n,removable:n||t.managesSession===!0}}async function Rl(e){return l(await c.get(`/projects/${e}/triggers`))}async function Cl(e,t){return l(await c.post(`/projects/${e}/triggers`,t))}async function Il(e,t,n){return l(await c.patch(`/projects/${e}/triggers/${t}`,n))}async function Tl(e,t){return l(await c.delete(`/projects/${e}/triggers/${t}`))}async function El(e,t){return l(await c.patch(`/projects/${e}/triggers/activation`,{paused:t}))}async function Ml(e,t){return l(await c.post(`/projects/${e}/triggers/${t}/fire`,{}))}async function Ol(e,t){let n="connector"in t?`connector=${encodeURIComponent(t.connector)}`:`app=${encodeURIComponent(t.app)}${t.source?`&source=${encodeURIComponent(t.source)}`:""}`;return l(await c.get(`/projects/${e}/triggers/event-types?${n}`))}async function Dl(e){return l(await c.get(`/projects/${e}/triggers/event-apps`))}var Oe=new Map;function Es(e,t){return`${e}::${t}`}function jl(e,t){Oe.delete(e),Oe.set(e,t)}function $l(e,t){let n=Es(e,t),r=Oe.get(n);return r&&jl(n,r),r}function Ul(e,t,n){let r=Es(e,t);if(!Oe.has(r)&&Oe.size>=512){let s=Oe.keys().next().value;s!==void 0&&Oe.delete(s)}jl(r,n)}function Fl(e,t){Oe.delete(Es(e,t))}function v_(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Gt(){return v_(k().backendUrl||"http://localhost:8008/v1")}function Ll(){let e=k().sandboxId;return e?`${Gt()}/p/${e}/8000`:""}function A_(e,t=8e3){return`${Gt()}/p/${e}/${t}`}function ze(e,t=8e3){return A_(e,t)}function nT(e){if(e.status!=="running"||!e.sandbox_id||!e.sandbox_provider||!e.sandbox_url||!(e.runtime_session_id??e.opencode_session_id))return null;let t=e.runtime_session_id??e.opencode_session_id,n=e.sandbox_url.match(/\/p\/([^/]+)\//)?.[1];return n?{stage:"ready",agent_name:e.agent_name??"default",retriable:!0,sandbox:{sandbox_id:e.sandbox_id,session_id:e.session_id,project_id:e.project_id,account_id:e.account_id,provider:e.sandbox_provider,external_id:n,base_url:e.sandbox_url,status:"active",config:{},metadata:e.metadata,last_used_at:e.updated_at,created_at:e.created_at,updated_at:e.updated_at},runtime_session_id:t,opencode_session_id:t,runtime_url:e.sandbox_url}:null}var Ms=class extends Error{status;code;terminal;constructor(t,n){super(t),this.name="SessionStartError",this.status=n.status,this.code=n.code,this.terminal=n.terminal}};function rT(e){return e instanceof Error&&e.name==="SessionStartError"}function k_(e){let t=e,n=t?.status,r=t?.code??t?.details?.code??t?.details?.error,s=t?.message||"Unable to start this session";return n&&n>=400&&n<500&&n!==408&&n!==429?new Ms(s,{status:n,code:r,terminal:!0}):null}function Bl(e,t,n){let r=typeof n=="number"?n:n?.waitMs,s=typeof n=="number"?void 0:n?.repositoryMode,o=new URLSearchParams;r&&r>0&&o.set("wait_ms",String(Math.floor(r))),s&&o.set("repository_mode",s),typeof n=="object"&&n?.keepStopped&&o.set("keep_stopped","1"),typeof n=="object"&&n?.intentAgeMs&&n.intentAgeMs>0&&o.set("intent_age_ms",String(Math.floor(n.intentAgeMs)));let i=o.size>0?`?${o.toString()}`:"";return c.post(`/projects/${e}/sessions/${t}/start${i}`,{},{showErrors:!1})}async function Ye(e,t,n){let r=await Bl(e,t,n);if(!r.success||!r.data){let s=k_(r.error);if(s&&!(s.status===404&&Gu(t)))throw s;return null}return ql(e,t,r.data)}async function Nl(e,t,n){let r=await Bl(e,t,n);if(!r.success||!r.data)throw r.error??new Error("Unable to start this session");return ql(e,t,r.data)}function ql(e,t,n){let r=n.sandbox?.external_id,s=n.runtime_session_id??n.opencode_session_id;return n.stage==="ready"&&r&&s&&Ul(e,t,{runtimeSessionId:s,opencodeSessionId:s,runtimeUrl:ze(r),sandboxId:r}),n}function sT(e,t){return["session-start",e,t]}async function Gl(e){return l(await c.get(`/projects/${e}/model-defaults`))}async function Wl(e,t){return l(await c.put(`/projects/${e}/model-defaults`,t))}async function Kl(e,t){let n=new URLSearchParams({scope:t.scope,...t.agentName?{agentName:t.agentName}:{}}).toString();return l(await c.delete(`/projects/${e}/model-defaults?${n}`))}async function pT(e,t){return l(await c.put(`/projects/${e}/model-enablement`,{modelOverrides:t}))}function Hl(e){let t=[];for(let n of e){let r=n.trim();r&&!t.includes(r)&&t.push(r)}return t}function R_(e,t){if(e.length!==t.length)return!1;let n=new Set(t);return e.every(r=>n.has(r))}function ur(e){let t=e.connectors_required?Hl(e.connectors_required):void 0,n=e.connectors_personal?Hl(e.connectors_personal):void 0;if(t&&n&&!R_(t,n))throw new Error("connectors_personal must match connectors_required when both fields are present");let r={...e};return delete r.connectors_personal,(t!==void 0||n!==void 0)&&(r.connectors_required=t??n),r}async function Vl(e,t,n){let r=ur(n);return l(await c.put(`/projects/${e}/agents/${encodeURIComponent(t)}/scope`,r))}async function ST(e,t){let n=l(await c.get(`/projects/${e}/agents/${encodeURIComponent(t)}/config`));return{...n,block:n.block?Os(n.block):null}}async function xT(e,t,n){let r=Os(n,!0),s=l(await c.put(`/projects/${e}/agents/${encodeURIComponent(t)}/config`,r));return{...s,block:s.block?Os(s.block):null}}function Os(e,t=!1){let n=ur(e);if(n.workspace===void 0)return n;let r=n.workspace==="branch";if(n.repository_access!==void 0&&n.repository_access!==r)throw new Error("repository_access conflicts with workspace");if(t&&n.workspace==="read"&&n.repository_access===void 0)throw new Error("Legacy read is unavailable. Set repository_access explicitly.");return n.repository_access??=r,delete n.workspace,n}async function wT(e,t,n){return l(await c.post(`/projects/${e}/secrets/${encodeURIComponent(t)}/grant`,{agent:n}))}async function zl(e,t){return l(await c.put(`/projects/${e}/default-agent`,{agent:t}))}var Yl="Use createPerSeatCheckout().";function Ql(){return{credits:{total:0,daily:0,monthly:0,extra:0,can_run:!1,daily_refresh:null},subscription:{tier_key:"none",tier_display_name:"No Plan",status:"no_subscription",billing_period:null,provider:"stripe",subscription_id:null,current_period_end:null,cancel_at_period_end:!1,is_cancelled:!1,cancellation_effective_date:null,has_scheduled_change:!1,scheduled_change:null,commitment:{has_commitment:!1,can_cancel:!0,commitment_type:null,months_remaining:null,commitment_end_date:null},can_purchase_credits:!1},models:[],limits:{concurrent_runs:{running_count:0,limit:0,can_start:!1,tier_name:"none"},ai_worker_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"},custom_mcp_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"}},tier:{name:"none",display_name:"No Plan",monthly_credits:0,can_purchase_credits:!1}}}function C_(e){let t=e.trim().toLowerCase();return t===""||t==="free"||t==="none"?"free":t==="enterprise"?"enterprise":"team"}function CT(e){let t=e?.plan;if(t)return{family:t.family,label:t.label,sublabel:t.sublabel??null,isGrandfathered:t.is_grandfathered===!0};let n=e??Ql(),r=(n.subscription?.tier_key||n.tier?.name||"none").toString(),s=(n.tier?.display_name||"").trim()||r;return{family:C_(r),label:s,sublabel:null,isGrandfathered:!1}}async function Jl(e){let t=await c.get(e,{showErrors:!1}),n=t.error?.status===404&&/billing is not enabled/i.test(t.error.message||"");if(t.error&&t.error.status!==401&&!n)throw t.error;return t.error?Ql():t.data}function Xl(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let n=t.toString();return n?`?${n}`:""}async function Zl(e){return Jl(`/billing/account-state${Xl(e)}`)}async function ep(e){return Jl(`/billing/account-state/minimal${Xl(e)}`)}async function tp(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.limit!=null&&t.set("limit",String(e.limit)),e?.offset!=null&&t.set("offset",String(e.offset)),e?.typeFilter&&t.set("type_filter",Array.isArray(e.typeFilter)?e.typeFilter.join(","):e.typeFilter);let n=t.toString();return l(await c.get(`/billing/transactions${n?`?${n}`:""}`))}async function np(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.days!=null&&t.set("days",String(e.days));let n=t.toString();return l(await c.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function rp(){return l(await c.get("/billing/credit-breakdown"))}async function sp(e){let t=e!=null?`?days=${e}`:"";return l(await c.get(`/billing/usage-history${t}`))}async function op(){return l(await c.get("/billing/tier-configurations"))}async function IT(e){let t=e.accountId?`?account_id=${encodeURIComponent(e.accountId)}`:"";return pt(e,`/v1/billing/account-state${t}`)}async function ip(e){throw F("createCheckoutSession",Yl)}async function ap(e,t){throw F("confirmCheckoutSession",Yl)}async function cp(e,t){return l(await c.post("/billing/create-portal-session",{account_id:t,return_url:e}),"Failed to create portal session")}async function up(e,t){return l(await c.post("/billing/cancel-subscription",{account_id:t,feedback:e}),"Failed to cancel subscription")}async function lp(e){return l(await c.post("/billing/reactivate-subscription",{account_id:e}),"Failed to reactivate subscription")}async function pp(e,t,n){throw F("scheduleDowngrade","Change the plan in the Stripe customer portal (createPortalSession()).")}async function dp(e){return l(await c.post("/billing/cancel-scheduled-change",{account_id:e}),"Failed to cancel scheduled change")}async function gp(e,t){let n=new URLSearchParams({new_price_id:e});return t&&n.set("account_id",t),l(await c.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function mp(e){return l(await c.post("/billing/purchase-credits",{amount:e.amount,account_id:e.accountId,success_url:e.successUrl,cancel_url:e.cancelUrl}),"Failed to purchase credits")}async function fp(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return l(await c.get(`/billing/auto-topup/settings${t}`),"Failed to load auto-topup settings")}async function TT(e){return l(await c.post(`/accounts/${encodeURIComponent(e)}/top-up-requests`,{}),"Failed to ask the owners for credits")}async function yp(e){return l(await c.post("/billing/auto-topup/configure",{account_id:e.accountId,enabled:e.enabled,threshold:e.threshold,amount:e.amount},{showErrors:!1}),"Failed to configure auto-topup")}async function ET(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return l(await c.get(`/billing/auto-topup/setup-status${t}`,{timeout:8e3,showErrors:!1}),"Failed to load auto-topup setup status")}async function MT(e){return l(await c.post("/billing/create-per-seat-checkout",{account_id:e.accountId,success_url:e.successUrl,cancel_url:e.cancelUrl,locale:e.locale}),"Failed to create per-seat checkout")}async function OT(e){return l(await c.post("/billing/claim-per-seat",{account_id:e}),"Failed to switch to per-seat billing")}async function DT(e){return l(await c.post("/billing/sync-subscription",{account_id:e}),"Failed to sync subscription")}async function hp(e={}){let t=new URLSearchParams;e.start&&t.set("start",e.start),e.end&&t.set("end",e.end),(e.groupBy==="model"||e.groupBy==="provider"||e.groupBy==="day")&&t.set("group_by",e.groupBy),e.accountId&&t.set("account_id",e.accountId);let n=t.toString();return l(await c.get(`/usage${n?`?${n}`:""}`))}function Ds(e,t){t.accountId&&e.set("account_id",t.accountId),t.projectId&&e.set("project_id",t.projectId)}function lr(e,t){t.from&&e.set("from",t.from),t.to&&e.set("to",t.to)}function pr(e){return e.size>0?`?${e}`:""}async function _p(e={}){let t=new URLSearchParams;return Ds(t,e),e.ownerId&&t.set("owner_id",e.ownerId),lr(t,e),e.sort&&t.set("sort",e.sort),e.limit!=null&&t.set("limit",String(e.limit)),e.offset!=null&&t.set("offset",String(e.offset)),l(await c.get(`/usage/session-costs${pr(t)}`))}async function dr(e,t={}){let n=new URLSearchParams;return Ds(n,t),l(await c.get(`/usage/session-costs/${encodeURIComponent(e)}${pr(n)}`))}async function BT(e={}){let t=new URLSearchParams;return e.accountId&&t.set("account_id",e.accountId),lr(t,e),e.sort&&t.set("sort",e.sort),e.limit!=null&&t.set("limit",String(e.limit)),e.offset!=null&&t.set("offset",String(e.offset)),l(await c.get(`/usage/cost-by-project${pr(t)}`))}async function NT(e={}){let t=new URLSearchParams;return Ds(t,e),e.sessionId&&t.set("session_id",e.sessionId),lr(t,e),l(await c.get(`/usage/cost-summary${pr(t)}`))}function bp(e,t={}){let n=new URLSearchParams;if(t.accountId&&n.set("account_id",t.accountId),t.projectId&&n.set("project_id",t.projectId),e==="sessions"){let s=t;s.ownerId&&n.set("owner_id",s.ownerId)}lr(n,t),t.sort&&n.set("sort",t.sort),n.set("format","csv");let r=e==="projects"?"/usage/cost-by-project":"/usage/session-costs";return`${k().backendUrl||""}${r}?${n}`}async function qT(e,t={}){let n=bp(e==="projects"?"projects":"sessions",t),r=await we(n,{method:"GET"},{timeoutMs:10*6e4},"Failed to export CSV"),s=r.headers.get("x-beeuni-row-cap"),o=s!=null?Number(s):NaN;return{blob:await r.blob(),rowCap:Number.isFinite(o)?o:null}}async function Pp(e,t){return l(await c.post(`/channels/${e}/identity/bind`,{token:t}),"Failed to connect your account")}function HT(e){return Pp("slack",e)}function VT(e){return Pp("teams",e)}async function Sp(e,t){return l(await c.post(`/channels/${e}/identity/preview`,{token:t},{showErrors:!1}),"This link is invalid or has expired")}function zT(e){return Sp("slack",e)}function YT(e){return Sp("teams",e)}async function xp(e){let t=await c.get(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});return t.success?t.data??null:null}async function wp(e,t){return l(await c.post(`/projects/${encodeURIComponent(e)}/channels/slack/connect`,t,{showErrors:!1}),"Failed to connect")}var I_={oauth_available:!1,install_url:null};async function vp(e){let t=await c.get(`/projects/${encodeURIComponent(e)}/channels/slack/mode`,{showErrors:!1});return!t.success||!t.data?I_:t.data}async function Ap(e,t,n){return l(await c.post(`/projects/${encodeURIComponent(t)}/channels/${e}/oauth/complete`,{code:n.code,state:n.state},{showErrors:!1}),"Failed to finish the install")}function kp(e,t){return Ap("slack",e,t)}function Rp(e,t){return Ap("teams",e,t)}async function Cp(e){return l(await c.get(`/webhooks/slack/${encodeURIComponent(e)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function Ip(e){let t=await c.delete(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});if(!t.success)throw new Error(t.error?.message??"Failed to disconnect")}async function Tp(e,t){return l(await c.get(`/projects/${encodeURIComponent(e)}/channels/slack/file?url=${encodeURIComponent(t)}`,{showErrors:!1}),"Failed to download Slack file")}async function Ep(e,t){return l(await c.post(`/projects/${encodeURIComponent(e)}/channels/slack/file/upload`,{channel:t.channel,filename:t.filename,content_base64:t.contentBase64,comment:t.comment,thread_ts:t.threadTs},{showErrors:!1}),"Failed to upload Slack file")}function js(e){let t=e.connectionId??e.connection_id??null,n=e.connectorSlug??e.connector_slug??e.connectionSlug??e.connection_slug??"beeuni_email";return{...e,connectionId:t,connectorSlug:n}}var T_={provider:"agentmail",managed_available:!1};async function Mp(e,t){let n=t?`?connector_slug=${encodeURIComponent(t)}`:"",r=await c.get(`/projects/${encodeURIComponent(e)}/channels/email/installation${n}`,{showErrors:!1});return r.success&&r.data?js(r.data):null}async function Op(e){let t=await c.get(`/projects/${encodeURIComponent(e)}/channels/email/mode`,{showErrors:!1});return!t.success||!t.data?T_:t.data}async function Dp(e,t){let n=l(await c.post(`/projects/${encodeURIComponent(e)}/channels/email/connect`,t,{showErrors:!1}),"Failed to connect email");return js(n)}async function jp(e,t){let n=t?`?connector_slug=${encodeURIComponent(t)}`:"",r=await c.delete(`/projects/${encodeURIComponent(e)}/channels/email/installation${n}`,{showErrors:!1});if(!r.success)throw new Error(r.error?.message??"Failed to disconnect email")}async function $p(e,t,n){let r=l(await c.patch(`/projects/${encodeURIComponent(e)}/channels/email/installation`,{connector_slug:t??"beeuni_email",sender_policy:n},{showErrors:!1}),"Failed to update email policy");return js(r)}async function QT(e){return l(await c.get(`/projects/${encodeURIComponent(e)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function JT(e,t,n){return l(await c.patch(`/projects/${encodeURIComponent(e)}/channels/bindings/${encodeURIComponent(t)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function Up(e){return l(await c.get(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Fp(e,t){return l(await c.put(`/projects/${e}/gateway/routing-policy`,t),"Gateway routing policy request failed")}async function Lp(e){return l(await c.delete(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function Bp(e,t){return l(await c.post(`/projects/${e}/gateway/routing-policy/preview`,t),"Gateway route preview failed")}async function Np(e,t){let n=new URLSearchParams;t?.limit&&n.set("limit",String(t.limit)),t?.offset&&n.set("offset",String(t.offset)),t?.ok!==void 0&&n.set("ok",String(t.ok));let r=n.toString();return l(await c.get(`/projects/${e}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function qp(e,t){return l(await c.get(`/projects/${e}/gateway/logs/${t}`),"Gateway request failed")}async function Gp(e,t){return l(await c.get(`/projects/${e}/gateway/overview${t?`?days=${t}`:""}`),"Gateway request failed")}async function Wp(e,t){return l(await c.get(`/projects/${e}/gateway/series${t?`?days=${t}`:""}`),"Gateway request failed")}async function Kp(e,t){return l(await c.get(`/projects/${e}/gateway/breakdown${t?`?days=${t}`:""}`),"Gateway request failed")}async function Hp(e,t){return l(await c.get(`/projects/${e}/gateway/sessions${t?`?days=${t}`:""}`),"Gateway request failed")}async function Vp(e,t){return l(await c.get(`/projects/${e}/gateway/errors${t?`?days=${t}`:""}`),"Gateway request failed")}async function zp(e){return l(await c.get(`/projects/${e}/gateway/budgets`),"Gateway request failed")}async function Yp(e,t){return l(await c.put(`/projects/${e}/gateway/budgets`,t),"Gateway request failed")}async function Qp(e,t){return l(await c.delete(`/projects/${e}/gateway/budgets/${t}`),"Gateway request failed")}async function Jp(e){return l(await c.get(`/projects/${e}/gateway/keys`),"Gateway request failed")}async function Xp(e,t){return l(await c.post(`/projects/${e}/gateway/keys`,{name:t}),"Gateway request failed")}async function Zp(e,t){return l(await c.delete(`/projects/${e}/gateway/keys/${t}`),"Gateway request failed")}async function ed(e,t,n,r,s){return l(await c.post(`/projects/${e}/gateway/playground`,{prompt:t,models:n,...r?{system:r}:{},...s&&Object.keys(s).length?{generationConfig:s}:{}}),"Gateway request failed")}async function tE(e,t){return l(await c.post(`/projects/${e}/gateway/providers/${encodeURIComponent(t)}/verify`,{}),"Gateway provider verification failed")}async function sE(){throw F("getReferralCode")}async function oE(){throw F("refreshReferralCode")}async function iE(e){throw F("validateReferralCode")}async function aE(){throw F("getReferralStats")}async function cE(e={}){throw F("listReferrals")}async function uE(e){throw F("sendReferralEmails")}function O(e){return c.get(e,{showErrors:!1})}function v(e){return l(e,"Unexpected empty response")}async function td(e){return v(await O(`/accounts/${e}/iam/groups`)).groups}async function nd(e,t){return v(await O(`/accounts/${e}/iam/groups/${t}`))}async function rd(e,t){return v(await c.post(`/accounts/${e}/iam/groups`,t,{showErrors:!1}))}async function sd(e,t,n){return v(await c.patch(`/accounts/${e}/iam/groups/${t}`,n))}async function od(e,t){return v(await c.delete(`/accounts/${e}/iam/groups/${t}`))}async function id(e,t){return v(await O(`/accounts/${e}/iam/groups/${t}/members`)).members}async function ad(e,t,n){return v(await c.post(`/accounts/${e}/iam/groups/${t}/members`,{userIds:n}))}async function yE(e,t){return v(await O(`/accounts/${e}/iam/groups/${t}/project-grants`)).grants}async function cd(e,t,n){return v(await c.delete(`/accounts/${e}/iam/groups/${t}/members/${n}`))}async function hE(e,t){return v(await O(`/accounts/${e}/iam/members/${t}/groups`)).groups}async function bE(e,t){let n=v(await O(`/accounts/${e}/iam/members/${t}/project-access`));return{projects:n.projects,account_wide_policies:n.account_wide_policies??[]}}function De(e){let t=new URLSearchParams;for(let[r,s]of Object.entries(e))s&&t.set(r,String(s));let n=t.toString();return n?`?${n}`:""}async function wE(e,t={}){let n=De({resourceType:t.resourceType,principalType:t.principalType,principalId:t.principalId,projectId:t.projectId});return v(await O(`/accounts/${e}/iam/resource-grants${n}`)).grants}async function CE(e,t={}){let n=De({principalType:t.principalType,principalId:t.principalId,scopeType:t.scopeType,scopeId:t.scopeId===null?"null":t.scopeId});return v(await O(`/accounts/${e}/iam/policies${n}`)).policies}async function IE(e,t){return v(await c.post(`/accounts/${e}/iam/policies`,t,{showErrors:!1}))}async function TE(e,t,n){return v(await c.patch(`/accounts/${e}/iam/policies/${t}`,n,{showErrors:!1}))}async function EE(e,t){return v(await c.delete(`/accounts/${e}/iam/policies/${t}`))}async function ME(e,t){return v(await c.post(`/accounts/${e}/iam/policies:bulk-delete`,{policy_ids:t},{showErrors:!1}))}async function OE(e,t){return v(await c.post(`/accounts/${e}/iam/policies:bulk-import`,{policies:t},{showErrors:!1}))}async function ud(e){return v(await O(`/accounts/${e}/iam/roles`)).roles}async function ld(e){return v(await O(`/accounts/${e}/iam/agent-identities`)).agents}async function pd(e){return v(await c.get(`/projects/${e}/agent-identities`,{showErrors:!1})).agents}async function dd(e,t){return v(await O(`/accounts/${e}/iam/roles/${t}/permissions`))}async function UE(e){return v(await O(`/accounts/${e}/iam/actions`)).actions}async function gd(e,t){return v(await O(`/accounts/${e}/iam/roles/${t}/usage`))}async function md(e,t){return v(await c.post(`/accounts/${e}/iam/roles`,t,{showErrors:!1}))}async function fd(e,t,n){return v(await c.patch(`/accounts/${e}/iam/roles/${t}`,n,{showErrors:!1}))}async function yd(e,t,n){return v(await c.put(`/accounts/${e}/iam/roles/${t}/permissions`,{actions:n},{showErrors:!1}))}async function hd(e,t){return v(await c.delete(`/accounts/${e}/iam/roles/${t}`,{showErrors:!1}))}async function FE(e,t,n){return v(await c.patch(`/accounts/${e}/iam/members/${t}/super-admin`,{isSuperAdmin:n}))}async function qE(e){return v(await O(`/accounts/${e}/iam/scim/tokens`)).tokens}async function GE(e,t){return v(await c.post(`/accounts/${e}/iam/scim/tokens`,t,{showErrors:!1}))}async function WE(e,t){return v(await c.delete(`/accounts/${e}/iam/scim/tokens/${t}`))}async function zE(e){return v(await O(`/accounts/${e}/iam/mfa-required`))}async function YE(e){return v(await O(`/accounts/${e}/iam/mfa-required/preview`))}async function QE(e,t){return v(await c.patch(`/accounts/${e}/iam/mfa-required`,{enabled:t},{showErrors:!1}))}async function JE(e){return v(await O(`/accounts/${e}/iam/session-oversight`))}async function XE(e,t){return v(await c.patch(`/accounts/${e}/iam/session-oversight`,{enabled:t},{showErrors:!1}))}async function nM(e){return v(await O(`/accounts/${e}/iam/sso/provider`)).provider}async function rM(e,t){return v(await c.put(`/accounts/${e}/iam/sso/provider`,t,{showErrors:!1})).provider}async function sM(e,t){return v(await c.post(`/accounts/${e}/iam/sso/provider/from-metadata`,t,{showErrors:!1})).provider}async function oM(e){return v(await c.post(`/accounts/${e}/iam/sso/provider/verify-domain`,{},{showErrors:!1})).provider}async function iM(e){return v(await c.delete(`/accounts/${e}/iam/sso/provider`))}async function aM(e){return v(await O(`/accounts/${e}/iam/sso/mappings`)).mappings}async function cM(e,t){return v(await c.post(`/accounts/${e}/iam/sso/mappings`,t,{showErrors:!1}))}async function uM(e,t){return v(await c.delete(`/accounts/${e}/iam/sso/mappings/${t}`))}async function gM(e){return v(await O(`/accounts/${e}/iam/session-policy`))}async function mM(e,t){return v(await c.patch(`/accounts/${e}/iam/session-policy`,t,{showErrors:!1}))}async function fM(e){return v(await O(`/accounts/${e}/iam/sessions`)).sessions}async function yM(e,t){return v(await c.post(`/accounts/${e}/iam/sessions/${t}/revoke`,{},{showErrors:!1}))}async function hM(e){return v(await O(`/accounts/${e}/iam/pat-policy`))}async function bM(e,t){return v(await c.patch(`/accounts/${e}/iam/pat-policy`,t,{showErrors:!1}))}async function xM(e){return v(await O(`/accounts/${e}/iam/service-accounts`)).service_accounts}async function wM(e,t){return v(await c.post(`/accounts/${e}/iam/service-accounts`,t,{showErrors:!1}))}async function vM(e,t){return v(await c.post(`/accounts/${e}/iam/service-accounts/${t}/disable`,{},{showErrors:!1}))}async function AM(e,t){return v(await c.delete(`/accounts/${e}/iam/service-accounts/${t}`))}async function TM(e){return v(await O(`/accounts/${e}/audit/webhooks`)).webhooks}async function EM(e,t){return v(await c.post(`/accounts/${e}/audit/webhooks`,t,{showErrors:!1}))}async function MM(e,t,n){return v(await c.patch(`/accounts/${e}/audit/webhooks/${t}`,n))}async function OM(e,t){return v(await c.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function DM(e,t={}){let n=De({action:t.action,actor:t.actor,project_id:t.project_id,session_id:t.session_id,actor_type:t.actor_type,source:t.source,credential_kind:t.credential_kind,phase:t.phase,outcome:t.outcome,request_id:t.request_id,correlation_id:t.correlation_id,resource_type:t.resource_type,since:t.since,until:t.until,q:t.q,cursor:t.cursor,limit:t.limit});return v(await O(`/accounts/${e}/audit${n}`))}async function bd(e,t,n){let r=new URLSearchParams;return r.set("action",n.action),n.resourceType&&r.set("resourceType",n.resourceType),n.resourceId&&r.set("resourceId",n.resourceId),v(await O(`/accounts/${e}/iam/members/${t}/effective?${r.toString()}`))}async function _d(e,t,n){return n.length===0?[]:v(await c.post(`/accounts/${e}/iam/members/${t}/effective:batch`,{probes:n})).results}async function NM(e){return v(await O(`/accounts/${e}/iam/enterprise-demo`)).enabled}async function qM(e,t){return v(await c.put(`/accounts/${e}/iam/enterprise-demo`,{enabled:t})).enabled}async function Pd(e){return l(await c.get(`/accounts/${e}/iam/oauth-clients`,{showErrors:!1}))}async function Sd(e,t){return l(await c.get(`/accounts/${e}/iam/oauth-clients/${t}`,{showErrors:!1}))}async function xd(e,t){return l(await c.post(`/accounts/${e}/iam/oauth-clients`,t,{showErrors:!1}))}async function wd(e,t,n){return l(await c.patch(`/accounts/${e}/iam/oauth-clients/${t}`,n,{showErrors:!1}))}async function vd(e,t){return l(await c.post(`/accounts/${e}/iam/oauth-clients/${t}/rotate-secret`,{},{showErrors:!1}))}async function Ad(e,t){return l(await c.delete(`/accounts/${e}/iam/oauth-clients/${t}`,{showErrors:!1}))}function E_(e){return De({principal_type:e?.principalType,principal_id:e?.principalId,scope_type:e?.scopeType,scope_id:e?.scopeId,object_type:e?.objectType,object_id:e?.objectId,role_id:e?.roleId,include_expired:e?.includeExpired?"true":void 0})}async function kd(e,t){return l(await O(`/accounts/${e}/iam/assignments${E_(t)}`)).assignments}async function Rd(e,t){let n={principal_type:t.principal.type,principal_id:t.principal.id,scope_type:t.scope.type,scope_id:t.scope.type==="project"?t.scope.id:null};return t.roleId?n.role_id=t.roleId:n.role_key=t.roleKey,t.object&&(n.object_type=t.object.type,n.object_id=t.object.id),t.expiresAt!==void 0&&(n.expires_at=t.expiresAt),l(await c.post(`/accounts/${e}/iam/assignments`,n))}async function Cd(e,t){return l(await c.delete(`/accounts/${e}/iam/assignments/${t}`)).assignment}async function Id(e,t){let n=t?.scopeType?`?scope_type=${t.scopeType}`:"";return l(await O(`/accounts/${e}/iam/permissions${n}`)).permissions}async function eO(){let e=await c.get("/account/deletion-status",{showErrors:!1});return e.error?.status===404?null:l(e,"Failed to load account deletion status")}async function tO(e="User requested deletion"){return l(await c.post("/account/request-deletion",{reason:e},{showErrors:!1}),"Failed to request account deletion")}async function nO(){return l(await c.post("/account/cancel-deletion",void 0,{showErrors:!1}),"Failed to cancel account deletion")}async function rO(){return l(await c.delete("/account/delete-immediately",{showErrors:!1}),"Failed to delete account immediately")}async function sO(){return(await c.get("/user-roles",{showErrors:!1})).data??{isAdmin:!1,role:null}}function cO(){return c.get("/admin/api/provider-distribution").then(e=>l(e))}function uO(e=300){return c.get(`/admin/api/sandboxes?limit=${e}`).then(t=>l(t))}function lO(e){return c.put("/admin/api/provider-distribution",e).then(t=>l(t))}function pO(e){return c.get(`/admin/api/provider-analytics?days=${e}`).then(t=>l(t))}function dO(e,t){return c.post(`/admin/api/sandboxes/${encodeURIComponent(e)}/migrate`,{targetProvider:t}).then(n=>l(n))}function gO(){return c.get("/admin/api/provider-fallback").then(e=>l(e))}function mO(e){return c.put("/admin/api/provider-fallback",{enabled:e}).then(t=>l(t))}function fO(){return c.get("/admin/api/boot-modes").then(e=>l(e))}function yO(e){return c.put("/admin/api/boot-modes",e).then(t=>l(t))}var Td="Export the deck as PDF or PPTX with convertRuntimePresentation().";async function _O(e){throw F("getGoogleAuthUrl",Td)}async function PO(e,t){throw F("convertPresentationToGoogleSlides",Td)}async function Ed(e,t){let n=new URLSearchParams;t?.segment&&n.set("segment",t.segment),t?.kind&&n.set("kind",t.kind);let r=n.toString();return l(await c.get(`/projects/${e}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function Md(e,t){return l(await c.get(`/projects/${e}/review/items/${t}`))}async function Od(e,t){return l(await c.post(`/projects/${e}/review/items`,t))}async function Dd(e,t,n){return l(await c.post(`/projects/${e}/review/items/${t}/act`,n))}async function jd(e,t){return l(await c.post(`/projects/${e}/review/bulk`,t))}var $s="call:";function AO(e){return e.startsWith("cr:")&&e.length>3?{type:"change_request",changeRequestId:e.slice(3)}:e.startsWith($s)&&e.length>$s.length?{type:"connector_call",executionId:e.slice($s.length)}:{type:"review_item",reviewItemId:e}}function M_(e){return e==="needs_you"?"needs_you":e==="waiting"?"waiting":"done"}function kO(e){let t={needs_you:0,waiting:0,done:0};for(let n of e)t[M_(n.status)]+=1;return t}function RO(e){switch(e){case"approved":return"approve";case"rejected":return"reject";case"changes_requested":return"changes";case"done":return"answer";case"dismissed":return"dismiss";default:return null}}function Us(e){return e.split(/[._-]/).filter(Boolean).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}function Ud(e){let t=e.indexOf(".");return t<=0?Us(e):`(${Us(e.slice(0,t))}) ${Us(e.slice(t+1))}`}function O_(e){let t=e.indexOf(".");return t>0?{connector:e.slice(0,t),action:e.slice(t+1)}:{connector:e,action:""}}var gr=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{},U=e=>typeof e=="string"&&e?e:void 0,ye=e=>Array.isArray(e)?e:void 0,$d=e=>typeof e=="number"?e:0,D_=e=>e.split(`
|
|
14
|
-
`).map(t=>t.trim()).filter(Boolean);function j_(e,t){let n=gr(e.advanced),r=U(e.description),s=ye(e.whatChanged)??(r?D_(r):t.summary?[t.summary]:[]);return{crId:U(e.cr_id),number:typeof e.number=="number"?e.number:void 0,whatChanged:s,impact:U(e.impact)??"",verification:ye(e.verification)??[],previewUrl:U(e.previewUrl)??U(e.preview_url),conflicts:ye(e.conflicts),requestedChanges:ye(e.requested_changes)??[],advanced:{headRef:U(n.headRef)??U(e.head_ref)??"",baseRef:U(n.baseRef)??U(e.base_ref)??"",headSha:U(n.headSha)??U(e.head_sha)??U(e.head_commit_sha)??"",baseSha:U(n.baseSha)??U(e.base_sha)??"",additions:$d(n.additions),deletions:$d(n.deletions),files:ye(n.files)??[],mergeMode:U(n.mergeMode)??"merge"}}}function $_(e,t){let n=ye(e.actions);if(n)return{actions:n.map((u,p)=>({id:U(u.id)??`${t.review_item_id}-${p}`,title:U(u.title)??"Action",connector:U(u.connector)??"",action:U(u.action)??"",consequence:U(u.consequence)??"",risk:U(u.risk)??t.risk,icon:U(u.icon)??"generic",argsPreview:ye(u.argsPreview)??[],policySource:U(u.policySource)??"Requires approval",decided:u.decided==="approved"||u.decided==="denied"?u.decided:void 0}))};let r=U(e.action_path)??"",{connector:s,action:o}=O_(r),i=gr(e.args_preview),a=Object.keys(i).length>0;return{actions:[{id:U(e.execution_id)??t.review_item_id,title:r?Ud(r):t.title||"Run action",connector:s,action:o,consequence:"Runs against the real connector once you approve",risk:t.risk,icon:"generic",argsPreview:Object.entries(i).map(([u,p])=>({key:u,value:p==="[redacted]"?"Hidden credential":typeof p=="string"?p:JSON.stringify(p,null,2)})),actionPath:r,rawArgsPreview:a?i:void 0,reviewComplete:e.args_preview_complete===!0,previewAuthorized:e.args_preview_authorized!==!1,approvalContext:U(e.approval_context),connectorRisk:U(e.risk)??null,policySource:"Requires approval"}]}}function U_(e,t){return{artifactKind:U(e.artifactKind)??"document",artifactLabel:U(e.artifactLabel)??"Output",previewUrl:U(e.previewUrl)??U(e.preview_url),preview:U(e.preview),files:ye(e.files),note:U(e.note)??t.summary??""}}function F_(e,t){return{question:U(e.question)??t.title??"",context:U(e.context),options:ye(e.options)??[]}}function L_(e,t){return{note:U(e.note)??t.summary??"",children:ye(e.children)??[]}}function B_(e){let t=gr(e.detail);switch(e.kind){case"change":return j_(t,e);case"approval":return $_(t,e);case"output":return U_(t,e);case"decision":return F_(t,e);case"batch":return L_(t,e)}}function N_(e,t){let n=typeof e.number=="number"?e.number:void 0,r=U(e.base_ref);return n!=null&&r?`#${n} \u2192 ${r}`:t}function CO(e,t={}){let n=gr(e.detail),r=e.origin_session_id??void 0,s=r?t.sessionLabels?.[r]:void 0,o=e.kind==="approval"?U(n.action_path):void 0,i=e.kind==="change"?N_(n,e.summary):e.kind==="approval"?s??(r?"From a running session":e.summary):e.summary;return{id:e.review_item_id,kind:e.kind,title:o?Ud(o):e.title,summary:i,risk:e.risk,status:e.status,source:e.source,agent:e.agent||"Agent",createdAt:e.created_at,sessionId:r,detail:B_(e)}}async function Fd(e){return l(await c.get(`/p/share?sandbox_id=${encodeURIComponent(e)}`),"Failed to load public links").shares??[]}async function Ld(e){return l(await c.post("/p/share",{sandbox_id:e.sandboxId,port:e.port,ttl:e.ttl,label:e.label}),"Failed to generate public URL")}async function Bd(e,t){let n=await c.delete(`/p/share/${encodeURIComponent(t)}?sandbox_id=${encodeURIComponent(e)}`);if(!n.success)throw new Error(n.error?.message??"Failed to revoke public link")}var Fs=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function Nd(e,t=""){return`${Gt()}/public/session-shares/${encodeURIComponent(e)}${t}`}async function qd(e){let t=await fetch(e,{method:"GET",headers:{Accept:"application/json"}}),n=await t.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!t.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||t.statusText||`HTTP ${t.status}`;throw new Fs(s,t.status)}return r}async function DO(e){return qd(Nd(e))}async function jO(e){return qd(Nd(e,"/messages"))}async function Gd(e,t){return l(await c.get(`/projects/${e}/sessions/${t}/reminders`))}async function Wd(e,t,n){return l(await c.post(`/projects/${e}/sessions/${t}/reminders`,n))}async function Ls(e,t,n,r){return l(await c.patch(`/projects/${e}/sessions/${t}/reminders/${n}`,r))}async function Bs(e,t,n){return l(await c.delete(`/projects/${e}/sessions/${t}/reminders/${n}`))}var q_=4;async function Kd(e,t){let n=new Array(e.length),r=0,s=async()=>{for(;r<e.length;){let i=r++;try{await t(e[i]),n[i]={ok:!0}}catch(a){n[i]={ok:!1,error:a}}}};await Promise.all(Array.from({length:Math.min(q_,e.length)},s));let o={done:[],failed:[]};return e.forEach((i,a)=>{let u=n[a];u.ok?o.done.push(i):o.failed.push({reminder:i,error:u.error})}),o}function Hd(e,t,n){return Kd(t,r=>Ls(e,r.sessionId,r.reminderId,n))}function Vd(e,t){return Kd(t,n=>Bs(e,n.sessionId,n.reminderId))}async function zd(e){return l(await c.get(`/projects/${e}/reminders`))}async function Yd(e,t){let n=new URLSearchParams;e&&n.set("account_id",e),t?.mine&&n.set("mine","true");let r=n.size>0?`?${n.toString()}`:"";return l(await c.get(`/accounts/tokens${r}`))}async function Qd(e){let{accountId:t,expiresAt:n,projectId:r,name:s}=e;return l(await c.post("/accounts/tokens",{name:s,...t?{account_id:t}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function Jd(e,t){let n=t?`?account_id=${encodeURIComponent(t)}`:"";return l(await c.delete(`/accounts/tokens/${e}${n}`))}async function Xd(){return l(await c.get("/oauth/grants")).grants}async function Zd(e){return l(await c.delete(`/oauth/grants/${encodeURIComponent(e)}`))}async function qO(){return l(await c.get("/accounts/me/devices")).devices}async function GO(e){return l(await c.delete(`/accounts/me/devices/${encodeURIComponent(e)}`))}async function eg(e){return l(await c.get(`/projects/${e}/cli-token`))}async function tg(e,t){return l(await c.post(`/projects/${e}/cli-token`,t??{}))}async function ng(e,t){return l(await c.delete(`/projects/${e}/cli-token/${t}`))}function bt(e){let t=new URLSearchParams,n=" format action actor actor_type project_id session_id source credential_kind phase outcome resource_type request_id correlation_id since until q cursor limit ";for(let[r,s]of Object.entries(e))n.includes(` ${r} `)&&s!=null&&s!==""&&t.set(r,String(s));return t}function Ns(e={}){return{format:e.format,action:e.action,actor:e.actor,actor_type:e.actorType,project_id:e.projectId,session_id:e.sessionId,source:e.source,credential_kind:e.credentialKind,phase:e.phase,outcome:e.outcome,resource_type:e.resourceType,request_id:e.requestId,correlation_id:e.correlationId,since:e.since,until:e.until,q:e.q,cursor:e.cursor,limit:e.limit}}async function rg(e,t){let n=bt(Ns(t)).toString();return l(await c.get(`/accounts/${e}/audit${n?`?${n}`:""}`))}async function sg(e,t){let n=bt(Ns({...t,projectId:void 0})).toString();return l(await c.get(`/projects/${e}/audit${n?`?${n}`:""}`))}async function og(e,t){let n=bt(Ns(t)).toString();return l(await c.get(`/accounts/${e}/audit/export${n?`?${n}`:""}`))}async function ig(e){return l(await c.get(`/accounts/${e}/audit/webhooks`))}async function ag(e,t){return l(await c.post(`/accounts/${e}/audit/webhooks`,t))}async function cg(e,t,n){return l(await c.patch(`/accounts/${e}/audit/webhooks/${t}`,n))}async function ug(e,t){return l(await c.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function lg(e,t){return l(await c.post(`/projects/${e}/secret-requests`,{names:t.names,labels:t.labels,descriptions:t.descriptions,scope:t.scope,expires_in_minutes:t.expiresInMinutes}),"Failed to mint secret-entry link")}async function pg(e,t){return l(await c.post(`/projects/${e}/connect-requests`,{slug:t.slug,...t.owner?{owner:t.owner}:{},...t.label?{label:t.label}:{},expires_in_minutes:t.expiresInMinutes}),"Failed to mint connect link")}async function XO(e){return l(await c.get(`/approval-links/${e}`),"Failed to load approval")}async function dg(e){let t=new URLSearchParams;e?.query&&t.set("query",e.query),e?.type&&t.set("type",e.type),e?.source&&t.set("source",e.source),e?.limit!==void 0&&t.set("limit",String(e.limit)),e?.offset!==void 0&&t.set("offset",String(e.offset));let n=t.toString()?`?${t.toString()}`:"";return l(await c.get(`/marketplace/items${n}`))}async function gg(){return l(await c.get("/marketplace/marketplaces"))}async function mg(){return l(await c.get("/marketplace/marketplaces/featured"))}async function fg(e){return l(await c.get(`/marketplace/items/${encodeURIComponent(e)}`),"Item not found")}async function yg(e,t){return l(await c.get(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`),"File not found")}async function hg(){return l(await c.get("/marketplace/sources"))}async function bg(e){return l(await c.post("/marketplace/sources",e),"Failed to add marketplace source")}async function _g(e){return l(await c.delete(`/marketplace/sources/${encodeURIComponent(e)}`),"Failed to remove marketplace source")}async function nD(e,t){return l(await c.post(`/projects/${encodeURIComponent(e)}/marketplace/install-session`,{id:t}),"Failed to start marketplace install session")}async function oD(e){throw F("getTemplate")}async function iD(e,t){throw F("installTemplate")}async function Pg(e){return l(await c.get(`/projects/${e}/apps`),"Failed to list Apps").apps}async function Sg(e,t){return l(await c.post(`/projects/${e}/apps`,t),"Failed to create App")}async function qs(e,t){return l(await c.get(`/projects/${e}/apps/${t}`),"Failed to load App")}async function xg(e,t,n){return l(await c.patch(`/projects/${e}/apps/${t}`,n),"Failed to update App")}async function wg(e,t){return l(await c.delete(`/projects/${e}/apps/${t}`),"Failed to delete App")}async function vg(e,t){return l(await c.post(`/projects/${e}/apps/${t}/token`,{}),"Failed to mint an App token")}async function Ag(e,t){let n=await qs(e,t);if(!n.auth)throw new Error("This server does not report sign-in values for Apps.");let r=l(await c.get(`/projects/${e}/jwks.json`),"Failed to read the project key set"),s=new TextEncoder().encode(JSON.stringify(r)),o="";for(let i of s)o+=String.fromCharCode(i);return{BEEUNI_AUTH_ISSUER:n.auth.issuer,BEEUNI_AUTH_AUDIENCE:n.auth.audience,BEEUNI_AUTH_JWKS:`data:application/json;base64,${btoa(o)}`}}async function kg(e,t){return l(await c.get(`/projects/${e}/apps/${t}/access`),"Failed to load App access policy")}async function Rg(e,t){return l(await c.get(`/projects/${e}/apps/${t}/agents`),"Failed to load the agents with access to this App").agents}async function Cg(e,t,n){return l(await c.patch(`/projects/${e}/apps/${t}/access`,n),"Failed to update App access policy")}async function Ig(e,t){return l(await c.post(`/projects/${e}/apps/${t}/access-session`,{}),"Failed to create App access session")}async function Gs(e,t){return l(await c.post(`/projects/${e}/apps/artifacts`,t),"Failed to register App artifact")}async function Ws(e,t,n){return l(await c.post(`/projects/${e}/apps/artifacts/${t}/finalize`,n),"Failed to finalize App artifact")}async function G_(e){return e instanceof Uint8Array?e:new Uint8Array(await e.arrayBuffer())}async function W_(e){let t=Uint8Array.from(e),n=await globalThis.crypto.subtle.digest("SHA-256",t.buffer);return Array.from(new Uint8Array(n),r=>r.toString(16).padStart(2,"0")).join("")}async function Tg(e,t,n={}){let r=await G_(t),s=n.mediaType??"application/gzip",o=await Gs(e,{kind:"archive",media_type:s});if(!o.upload)throw new Error("App artifact registration did not return an upload URL");if(r.byteLength>o.upload.max_bytes)throw new Error(`App artifact exceeds ${o.upload.max_bytes} bytes`);n.onProgress?.(0,r.byteLength);let i=await fetch(o.upload.url,{method:"PUT",body:new Blob([Uint8Array.from(r).buffer],{type:s}),signal:n.signal,headers:{"content-type":s,"x-upsert":"false"}});if(!i.ok){let a=await i.text().catch(()=>"");throw new Error(`App artifact upload failed with HTTP ${i.status}${a?`: ${a}`:""}`)}return n.onProgress?.(r.byteLength,r.byteLength),Ws(e,o.artifact.artifact_id,{sha256:await W_(r),size_bytes:r.byteLength})}async function Eg(e,t,n){return l(await c.post(`/projects/${e}/apps/${t}/deployments`,n),"Failed to create App deployment")}async function Mg(e,t){return l(await c.get(`/projects/${e}/apps/${t}/deployments`),"Failed to list App deployments").deployments}async function Og(e,t,n){return l(await c.get(`/projects/${e}/apps/${t}/deployments/${n}`),"Failed to load App deployment")}async function Dg(e,t,n,r={}){let s=new URLSearchParams;r.after!==void 0&&s.set("after",String(r.after)),r.limit!==void 0&&s.set("limit",String(r.limit));let o=s.size?`?${s.toString()}`:"";return l(await c.get(`/projects/${e}/apps/${t}/deployments/${n}/logs${o}`),"Failed to load App logs")}async function jg(e,t){return l(await c.post(`/projects/${e}/apps/${t}/start`,{}),"Failed to start App")}async function $g(e,t){return l(await c.post(`/projects/${e}/apps/${t}/stop`,{}),"Failed to stop App")}async function Ug(e,t,n){return l(await c.delete(`/projects/${e}/apps/${t}/deployments/${n}`),"Failed to delete App deployment")}async function Fg(e,t,n){return l(await c.post(`/projects/${e}/apps/${t}/rollback`,{deployment_id:n}),"Failed to roll back App")}var ae=(e,t)=>`/projects/${e}/apps/${t}`;async function Lg(e,t){return l(await c.get(`${ae(e,t)}/machines`),"Failed to list machines").machines}async function Ks(e,t,n,r){return l(await c.post(`${ae(e,t)}/machines/${n}/${r}`,{}),`Failed to ${r} the machine`).machines}var Bg=(e,t,n)=>Ks(e,t,n,"start"),Ng=(e,t,n)=>Ks(e,t,n,"stop"),qg=(e,t,n)=>Ks(e,t,n,"restart");async function Gg(e,t,n){return l(await c.delete(`${ae(e,t)}/machines/${n}`),"Failed to destroy the machine").machines}async function Wg(e,t,n){return l(await c.put(`${ae(e,t)}/scale`,{count:n}),"Failed to scale the App")}async function Kg(e,t,n){return l(await c.post(`${ae(e,t)}/exec`,n),"Failed to run the command")}async function Hg(e,t){return l(await c.get(`${ae(e,t)}/volumes`),"Failed to list volumes").volumes}async function Vg(e,t,n){return l(await c.post(`${ae(e,t)}/volumes`,n),"Failed to create the volume")}async function zg(e,t,n,r){return l(await c.patch(`${ae(e,t)}/volumes/${n}`,r),"Failed to update the volume")}async function Yg(e,t,n,r){l(await c.delete(`${ae(e,t)}/volumes/${n}?confirm=${encodeURIComponent(r)}`),"Failed to destroy the volume")}async function Qg(e,t,n){return l(await c.get(`${ae(e,t)}/volumes/${n}/snapshots`),"Failed to list snapshots").snapshots}async function Jg(e,t,n){return l(await c.post(`${ae(e,t)}/volumes/${n}/snapshots`,{}),"Failed to take the snapshot")}async function Xg(e,t,n,r){return l(await c.post(`${ae(e,t)}/volumes/${n}/restore`,{snapshot_id:r}),"Failed to restore the volume")}async function Zg(e,t,n,r){return l(await c.post(`${ae(e,t)}/volumes/${n}/fork`,r),"Failed to fork the volume")}function te(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return t===e.length?e:e.slice(0,t)}var ne=e=>`/drives/${encodeURIComponent(e)}`;async function PD(e){let t=l(await c.get(`/drives?${new URLSearchParams({projectId:e})}`),"Failed to load files").drives;if(!t[0])throw new b("Files not found",{status:404});return t[0]}async function SD(e,t){return l(await c.get(`${ne(e)}/access?${new URLSearchParams({path:t})}`),"Failed to load sharing")}async function xD(e,t){return l(await c.put(`${ne(e)}/access`,t),"Failed to share folder")}async function wD(e,t){let n=l(await c.delete(`${ne(e)}/access/${encodeURIComponent(t)}`),"Failed to stop sharing");return{pendingSessions:typeof n?.pendingSessions=="number"?n.pendingSessions:0}}async function vD(e){return l(await c.get(`${ne(e)}/principals`),"Failed to load people")}async function AD(e){return l(await c.get(`${ne(e)}/conflicts`),"Failed to load conflicts").conflicts}async function kD(e,t){l(await c.post(`${ne(e)}/conflicts/${encodeURIComponent(t)}/dismiss`,{}),"Failed to dismiss conflict")}async function RD(e,t="/"){return(await K_(e,t)).entries}async function K_(e,t="/"){return l(await c.get(`${ne(e)}/files?${new URLSearchParams({path:t})}`),"Failed to load files")}function em(e,t,n){let r=te(k().backendUrl),s={path:t};return n?.download&&(s.download="1"),`${r}${ne(e)}/files/content?${new URLSearchParams(s)}`}async function CD(e,t,n){let r=await M(em(e,t),{signal:n});if(!r.ok){let s=await r.json().catch(()=>null);throw new b(s?.message||"Could not download file",{status:r.status})}return r.blob()}async function ID(e,t,n){let r=await M(em(e,t),{signal:n});if(!r.ok){let s=await r.json().catch(()=>null);throw new b(s?.message||"Could not download file",{status:r.status})}return{blob:await r.blob(),version:r.headers.get("etag")}}async function TD(e,t,n,r){return l(await c.putRaw(`${ne(e)}/files/content?${new URLSearchParams({path:t})}`,n,{signal:r?.signal,...r?.ifMatch?{headers:{"If-Match":r.ifMatch}}:{}}),"Failed to upload file")}async function ED(e,t){return l(await c.post(`${ne(e)}/files/mkdir`,{path:t}),"Failed to create folder")}async function MD(e,t,n){return l(await c.post(`${ne(e)}/files/move`,{from:t,to:n}),"Failed to move")}async function OD(e,t,n){let r={path:t};n?.recursive&&(r.recursive="true"),l(await c.delete(`${ne(e)}/files?${new URLSearchParams(r)}`),"Failed to delete")}async function DD(e){return l(await c.get(`${ne(e)}/versions`),"Failed to load versions").versions}async function jD(e,t){l(await c.post(`${ne(e)}/restore`,{versionId:t}),"Failed to restore version")}var H_=(e,t)=>`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/drives`;async function $D(e,t){return(await V_(e,t)).drives}async function V_(e,t){return l(await c.get(H_(e,t)),"Failed to load session files")}async function tm(e){return l(await c.post("/notifications/device-token",e))}async function nm(e,t){return l(await c.delete(`/notifications/device-token/${encodeURIComponent(e)}`,{signal:t?.signal}))}var BD=["turn_done","turn_error","question","permission","shared","automation_failed","automation_recovered"];async function rm(e={},t){let n=new URLSearchParams;e.limit!==void 0&&n.set("limit",String(e.limit)),e.before&&n.set("before",e.before);let r=n.toString();return l(await c.get(`/notifications${r?`?${r}`:""}`,{showErrors:!1,signal:t?.signal}))}async function sm(e){let t="ids"in e?{ids:e.ids}:"all"in e?{all:!0}:{session_id:e.sessionId};return l(await c.post("/notifications/read",t))}var ND={turn_done:{push:!0,email:!1},turn_error:{push:!0,email:!0},question:{push:!0,email:!0},permission:{push:!0,email:!1},shared:{push:!0,email:!0},automation_failed:{push:!0,email:!0},automation_recovered:{push:!0,email:!1}};async function om(){return l(await c.get("/notifications/preferences",{showErrors:!1}))}async function im(e){return l(await c.put("/notifications/preferences",e))}async function am(){return l(await c.get("/notifications/web-push/key",{showErrors:!1}))}async function cm(e){let t={endpoint:e.endpoint,keys:{p256dh:e.keys.p256dh,auth:e.keys.auth}};return l(await c.post("/notifications/web-push/subscriptions",t,{showErrors:!1}))}async function um(e,t){return l(await c.delete(`/notifications/web-push/subscriptions?endpoint=${encodeURIComponent(e)}`,{signal:t?.signal,showErrors:!1}))}async function mr(e){return l(await c.get(`/projects/${e}/model-access`))}async function fr(e,t){return l(await c.put(`/projects/${e}/model-access`,t))}var Wt=e=>`/provider-connections/${encodeURIComponent(e)}`,lm=e=>`/projects/${encodeURIComponent(e)}/personal-providers`;async function pm(){return l(await c.get("/provider-connections"))}async function dm(e,t,n={}){return l(await c.put(Wt(e),{api_key:t,...n}))}async function gm(e,t){let n=t?`${Wt(e)}/connections/${encodeURIComponent(t)}`:Wt(e);return l(await c.delete(n))}async function mm(e,t={}){return l(await c.post(`${Wt(e)}/start`,t))}async function fm(e,t){return l(await c.post(`${Wt(e)}/poll`,{flow_id:t}))}async function ym(e){return l(await c.get(lm(e)))}async function hm(e,t,n,r={}){return l(await c.put(`${lm(e)}/${encodeURIComponent(t)}`,{enabled:n,...r}))}async function JD(e){return l(await c.get(`/projects/${e}/starter-suggestions`))}function ZD(e){let{running:t,isCarousel:n,contentStatus:r,isWebsitePreview:s,previewHasError:o,previewIsLinkOnly:i}=e;return t||n?!1:s?o&&!i:r==="error"}function Hs(e){return typeof e=="string"&&e.trim().length>0}function bm(e){if(!e||typeof e!="object")return!1;let{path:t,url:n,content:r}=e;return Hs(t)||Hs(n)||Hs(r)}function z_(e){if(Array.isArray(e))return e.length>0?e:null;if(typeof e!="string"||!e.trim())return null;try{let t=JSON.parse(e);return Array.isArray(t)&&t.length>0?t:null}catch{return null}}function yr(e){if(!e)return!0;let t=z_(e.items);return t?!t.some(bm):!bm(e)}function pe(e){return(e??"").replace(/^oc-/,"").replace(/-/g,"_")}function nj(e){return pe(e)==="bash"}function rj(e){let t=pe(e);return t==="question"||t==="ask"}function sj(e,t){let n=Math.max(0,e);return`${t?"Running":"Ran"} ${n} command${n===1?"":"s"}`}var Y_=new Set(["show","show_user"]);function _m(e){return Y_.has(pe(e))}function oj(e,t){let n=Math.max(0,e);return`${t?"Writing":"Wrote"} ${n} file${n===1?"":"s"}`}function Pm(e){return!!(e.type==="snapshot"||e.type==="patch"||e.type==="step-start"||e.type==="step-finish"||e.type==="text"&&!e.text?.trim()||Vs(e))}function Vs(e){let t=pe(e.tool);return t!=="show"&&t!=="show_user"||e.state?.status!=="completed"?!1:yr(e.state?.input)}var Q_=new Set(["show","show_user","agent_spawn","agent_status","agent_message","agent_task_update","agent_stop"]);function Sm(e){return Q_.has(pe(e))}var J_=50*1024*1024,zs="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",X_=new RegExp(`^beeuni-attachment://(${zs})/(${zs})/(${zs})$`);function Qs(e){if(typeof e!="string")return null;let t=X_.exec(e);return t?{projectId:t[1],sessionId:t[2],attachmentId:t[3]}:null}function dj(e){return Qs(e)!==null}var Ys=new WeakMap;async function xm(e,t,n,r={}){if(n.size>J_)throw new Error("Attachments must be 50 MiB or smaller.");let s=`${e}/${t}`,o=r.attachmentId?void 0:Ys.get(n)?.get(s);if(o?.promise)return o.promise;let i=o??{id:r.attachmentId??crypto.randomUUID(),promise:void 0};if(!r.attachmentId){let u=Ys.get(n)??new Map;u.set(s,i),Ys.set(n,u)}let a=new FormData;return a.append("attachment_id",i.id),a.append("file",n,n.name),i.promise=c.upload(`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/attachments`,a,{signal:r.signal,timeout:12e4,showErrors:!1}).then(l).catch(u=>{throw i.promise=void 0,u}),i.promise}async function wm(e,t){let n=Qs(e);if(!n)throw new Error("Invalid attachment reference");let r=k().backendUrl.replace(/\/$/,""),s=await M(`${r}/projects/${n.projectId}/sessions/${n.sessionId}/attachments/${n.attachmentId}`,{signal:t});if(!s.ok)throw new b("Could not load attachment",{status:s.status});return s.blob()}var Z_=new Set(["show","show_user"]);function eP(e){let t=[],n=0;for(;;){let r=e.indexOf("<file",n);if(r===-1)return t;let s=r+5;if(s>=e.length||!/\s/.test(e[s])){n=s;continue}let o=e.indexOf(">",s);if(o===-1)return t;let i=e.indexOf("</file>",o+1);if(i===-1)return t;t.push(e.slice(s,o).trimStart()),n=i+7}}var _t=e=>!!e&&typeof e=="object"&&!Array.isArray(e),Kt=e=>typeof e=="string"&&e.length>0?e:null,vm=e=>typeof e=="string"?Kt(e.split("/").pop()):null;function hr(e,t){let n=e.match(new RegExp(`(?:^|\\s)${t}="([^"]*)"`))?.[1];return n===void 0?null:n.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}function tP(e){if(Array.isArray(e))return e;if(typeof e!="string"||!e.trim())return[];try{let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function nP(e,t){for(let n of eP(e))t(hr(n,"attachment"),hr(n,"filename")??vm(hr(n,"path")),hr(n,"mime"))}function rP(e,t){for(let n of[e,...tP(e.items)])_t(n)&&t(n.attachment,vm(n.path),null)}function gj(e){if(!Array.isArray(e))return[];let t=[],n=new Set;for(let r of e){if(!_t(r)||!_t(r.info)||!Array.isArray(r.parts))continue;let s=Kt(r.info.id);if(!s)continue;let o=Kt(r.info.role)??"unknown",i=(a,u,p)=>{let d=Qs(a);!d||n.has(a)||(n.add(a),t.push({url:a,attachment_id:d.attachmentId,filename:u,mime:p,message_id:s,role:o}))};for(let a of r.parts)_t(a)&&(a.type==="file"?i(a.url,Kt(a.filename),Kt(a.mime)):a.type==="text"&&typeof a.text=="string"?nP(a.text,i):a.type==="tool"&&typeof a.tool=="string"&&Z_.has(pe(a.tool))&&_t(a.state)&&_t(a.state.input)&&rP(a.state.input,i))}return t}function je(e){try{return typeof process<"u"?process.env?.[e]:void 0}catch{return}}function sP(e,t){if(e==null)return t;let n=e.trim().toLowerCase();return["1","true","yes","y","on"].includes(n)?!0:["0","false","no","n","off"].includes(n)?!1:t}function bj(e){if(e==null)return;let t=e.trim().toLowerCase();if(["1","true","yes","y","on"].includes(t))return!0;if(["0","false","no","n","off"].includes(t))return!1}function Js(e,t,n){return e!==void 0?e:sP(je(t),n)}var Am={get disableMobileAdvertising(){return Js(k().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return Js(k().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return Js(k().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return!1}};var oP=new Set(["project-manager"]);function Xs(e){return e.native===!0||e.mode==="subagent"||e.hidden||e.enabled===!1?!1:Am.enableProjects||!oP.has(e.name)}function Sj(e){let t=e.agents.filter(Xs),n=e.default_agent??e.open_code_default_agent;return n?t.sort((r,s)=>r.name===n?-1:s.name===n?1:0):t}function km(){return{projects:{list:dt,listForAccount:ca,get:Gn,detail:Wn,create:da,createRepo:ga,provision:ma,update:Vn,archive:zn,llmCatalog:Kn,modelPicker:Hn,modelAccess:mr,setModelAccess:fr,sandboxHealth:Jn,sandboxTemplates:ou,sessions:yt,createSession:ht},github:{linkRepository:Pa,replaceProjectRepository:Sa,getInstallation:xa,listInstallations:wa,listLinkableInstallations:va,listRepositories:Aa,listRepositoryBranches:ka,linkInstallation:Ca,saveInstallation:Ra,deleteInstallation:Ta,storeUserToken:Ia},gitBackend:{get:Ea,repositories:Ma},connectStatus:Jc,marketplace:{items:o=>dg(o),item:o=>fg(o),itemFile:(o,i)=>yg(o,i),marketplaces:()=>gg(),featured:()=>mg(),sources:{list:()=>hg(),add:o=>bg(o),remove:o=>_g(o)}}}}function Rm(){return{billing:{accountState:Zl,accountStateMinimal:ep,transactions:tp,transactionsSummary:np,creditBreakdown:rp,usageHistory:sp,usageRollup:hp,sessionCosts:{list:_p,get:dr},tierConfigurations:op,checkout:{createSession:n=>ip(n),confirmSession:(n,r)=>ap(n,r)},subscription:{createPortalSession:(n,r)=>cp(n,r),cancel:(n,r)=>up(n,r),reactivate:n=>lp(n),scheduleDowngrade:(n,r,s)=>pp(n,r,s),cancelScheduledChange:n=>dp(n),prorationPreview:(n,r)=>gp(n,r)},credits:{purchase:n=>mp(n),autoTopupSettings:n=>fp(n),configureAutoTopup:n=>yp(n)}},sandboxShares:{list:Fd,create:Ld,revoke:Bd}}}var $e={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",BEEUNI_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};function Ue(){let e=je("BACKEND_URL")||k().backendUrl;return e||"http://localhost:8008/v1"}function Vt(e){let t=te(e);return t.endsWith("/v1")?t:`${t}/v1`}function Ht(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}if(Array.isArray(e)){for(let t of e){let n=Ht(t);if(n)return n}return}if(e&&typeof e=="object"){let t=e;return Ht(t.sandboxId??t.id??t.slug??Object.values(t)[0])}}function iP(e){return e==="running"||e==="active"?"active":e==="queued"||e==="branching"||e==="provisioning"?"provisioning":e==="failed"||e==="error"?"error":e==="stopped"||e==="completed"||e==="archived"?"stopped":e||"unknown"}function Zs(e,t,n){let r=n?.external_id||t.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||t.sandbox_id||"";return{sandbox_id:n?.sandbox_id||t.sandbox_id||t.session_id,external_id:r,name:t.name||`${e.name} session`,provider:n?.provider||t.sandbox_provider||"daytona",base_url:n?.base_url||t.sandbox_url||(n?.external_id?`${Ue()}/p/${n.external_id}/${$e.BEEUNI_MASTER}`:""),status:iP(n?.status||t.status),metadata:{...t.metadata??{},project_id:e.project_id,session_id:t.session_id,project_name:e.name,runtime_status:n?.status,error:t.error},created_at:n?.created_at||t.created_at,updated_at:n?.updated_at||t.updated_at}}async function eo(){let e=await dt(),t=[];for(let n of e){let r=await yt(n.project_id).catch(()=>[]);for(let s of r)t.push({project:n,session:s,runtime:null,sandbox:Zs(n,s,null)})}return t.sort((n,r)=>{let s={active:0,provisioning:1,stopped:2,error:3},o=(s[n.sandbox.status]??99)-(s[r.sandbox.status]??99);return o!==0?o:Date.parse(r.sandbox.updated_at)-Date.parse(n.sandbox.updated_at)})}async function Qe(e){let t=await eo();return e?t.find(n=>n.sandbox.sandbox_id===e||n.sandbox.external_id===e||n.session.session_id===e||n.runtime?.external_id===e)??null:t[0]??null}var zt=class extends Error{constructor(n,r,s){super(r);this.code=n;this.status=s;this.name="HeadlessAuthError"}code;status};async function Q(e,t,n){let r=n?.fetch??k().fetch??((p,d)=>fetch(p,d)),s=te(n?.backendUrl??k().backendUrl??"");if(!s)throw new zt("not_configured","backendUrl is not configured (configureBeeuni / createBeeuni first)",0);let o={accept:"application/json"};t.body!==void 0&&(o["content-type"]="application/json"),t.bearer&&(o.authorization=`Bearer ${t.bearer}`);let i=await r(`${Vt(s)}${e}`,{method:t.method??(t.body!==void 0?"POST":"GET"),headers:o,...t.body!==void 0?{body:JSON.stringify(t.body)}:{},...n?.signal?{signal:n.signal}:{}}),a=await i.text().catch(()=>""),u=null;try{u=a?JSON.parse(a):null}catch{u=a}if(!i.ok){let p=u&&typeof u=="object"?u:{};throw new zt(typeof p.error=="string"?p.error:"auth_error",typeof p.error_description=="string"&&p.error_description?p.error_description:typeof p.error=="string"?p.error:i.statusText||`HTTP ${i.status}`,i.status)}return u}function to(e,t){return Q("/auth/signup",{body:e},t)}function no(e,t){return Q("/auth/sign-in/password",{body:e},t)}function ro(e,t){return Q("/auth/sign-in/magic-link",{body:e},t)}function so(e,t){return Q("/auth/verify-otp",{body:e},t)}function oo(e,t){return Q("/auth/sign-in/oauth",{body:e},t)}function io(e,t){return Q("/auth/oauth/exchange",{body:e},t)}function Yt(e,t){return Q("/auth/refresh",{body:e},t)}function ao(e,t){return Q("/auth/password/reset",{body:e},t)}function co(e,t,n){return Q("/auth/password/update",{body:e,bearer:t},n)}function uo(e,t){return Q("/auth/user",{bearer:e},t)}function lo(e,t,n){return Q("/auth/user",{method:"PATCH",body:e,bearer:t},n)}function po(e,t){return Q("/auth/sign-in/sso",{body:e},t)}var go={enroll:(e,t,n)=>Q("/auth/mfa/factors",{body:e,bearer:t},n),challenge:(e,t={},n,r)=>Q(`/auth/mfa/factors/${encodeURIComponent(e)}/challenge`,{body:t,bearer:n},r),verify:(e,t,n,r)=>Q(`/auth/mfa/factors/${encodeURIComponent(e)}/verify`,{body:t,bearer:n},r),unenroll:(e,t,n)=>Q(`/auth/mfa/factors/${encodeURIComponent(e)}`,{method:"DELETE",bearer:t},n)};function mo(e,t={},n){return Q("/auth/sign-out",{body:t,bearer:e},n)}function fo(e={}){let t=e.refreshSkewSeconds??60,n=e.now??(()=>Date.now()),r=null,s=null,o=!e.storage,i=null,a=null,u=0,p=new Set,d=x=>(x.expires_at??0)*1e3,g=x=>d(x)-t*1e3<=n();async function m(){e.storage&&(r?await e.storage.set(JSON.stringify({session:r,user:s})):await e.storage.remove());for(let x of[...p])try{x(r)}catch{}try{e.onChange?.(r)}catch{}}async function f(){if(o)return r;if(!i){let x=u,D=(async()=>{let j=await e.storage.get();if(x===u&&j)try{let L=JSON.parse(j);L.session?.access_token&&L.session?.refresh_token&&(r=L.session,s=L.user??null)}catch{r=null}return o=!0,r})();i=D,D.then(()=>{i===D&&(i=null)},()=>{i===D&&(i=null)})}return i}async function h(){if(await f(),!r)return null;if(!a){let x=r.refresh_token,D=u,j=Yt({refresh_token:x},e.request).then(async L=>(D!==u||(r=L.session,L.user&&(s=L.user),await m()),r)).catch(async L=>{if(D!==u)return r;let y=L&&typeof L=="object"&&"status"in L?L.status:0;if(y>=400&&y<500)return r=null,s=null,await m(),null;throw L}).finally(()=>{a===j&&(a=null)});a=j}return a}return{subscribe(x){return p.add(x),()=>{p.delete(x)}},current:()=>r,user:()=>s,load:f,async set(x,D){await f(),u+=1,a=null,r=x,D!==void 0&&(s=D),x||(s=null),await m()},async getToken(){return await f(),r?g(r)?(await h().catch(()=>r))?.access_token??null:r.access_token:null},refresh:h,async clear(){u+=1,a=null,r=null,s=null,o=!0,await m()}}}function Cm(){return{list:Li,get:Ni,create:Bi,secretResources:{list:lc,create:pc,rotate:dc,retry:gc,remove:mc,grant:fc,revoke:yc,setAccess:hc},updateName:qi,branding:{get:Gi,update:Wi,uploadAsset:Ki,removeAsset:Hi,reset:Vi},leave:oa,members:zi,invite:Yi,removeMember:ra,updateMemberRole:sa,invites:Qi,cancelInvite:Ji,resendInvite:Xi,tokens:{list:Yd,create:Qd,revoke:Jd},connectedApps:{list:Xd,revoke:Zd},audit:{log:rg,export:og,webhooks:{list:ig,create:ag,update:cg,remove:ug}}}}function Im(){return{assignments:{list:kd,create:Rd,revoke:Cd},permissions:{list:Id,forRole:dd},roles:{list:ud,create:md,update:fd,setPermissions:yd,remove:hd,usage:gd},groups:{list:td,get:nd,create:rd,update:sd,remove:od,members:{list:id,add:ad,remove:cd}},agentIdentities:ld,oauthClients:{list:Pd,get:Sd,create:xd,update:wd,rotateSecret:vd,remove:Ad},can:bd,canBatch:_d}}function Tm(){let e={signUp:to,signInWithPassword:no,sendMagicLink:ro,verifyOtp:so,signInWithProvider:oo,exchangeCode:io,refresh:Yt,resetPassword:ao,updatePassword:co,updateUserMetadata:lo,signInWithSso:po,mfa:go,user:uo,signOut:mo,session:fo},t=Cm(),n=Im();return{auth:e,accounts:t,iam:n,accountInvites:{listMine:Zi,describe:ea,accept:ta,decline:na}}}var Qt=new Map,yo=new Map;function ho(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Em(e){return Qt.get(ho(e))??null}function Mm(){return[...Qt.values()].filter(e=>typeof e=="string")}function Om(e){return Qt.has(ho(e))}async function Je(e){let t=ho(e),n=Qt.get(t);if(n!==void 0)return n;let r=yo.get(t);if(r)return r;let s=(async()=>{try{let o=await c.get("/p/config",{showErrors:!1,errorContext:{operation:"load preview config",silent:!0}});if(!o.success)return null;let i=typeof o.data?.preview_url_template=="string"?o.data.preview_url_template:null;return Qt.set(t,i),i}catch{return null}finally{yo.delete(t)}})();return yo.set(t,s),s}function Dm(e){let{apiBaseUrl:t}=e;return Om(t)||Je(t).catch(()=>{}),{sandboxId:e.sandboxId,backendPort:e.backendPort,apiBaseUrl:t,previewUrlTemplate:Em(t)}}function jm(e){function t(n){try{return new URL(n)}catch{if(typeof window<"u"&&window.location?.origin)try{return new URL(n,window.location.origin)}catch{return null}throw new b(`Beeuni SDK: backendUrl must be an absolute URL outside the browser (got ${JSON.stringify(n)}). Relative paths like "/api/beeuni" only resolve against a page origin \u2014 configure an absolute backendUrl for server-side hosts.`,{code:"INVALID_BACKEND_URL"})}}return function(r){let s=k().backendUrl??e.backendUrl,o=80,i=t(s);return i&&(o=i.port?Number(i.port):i.protocol==="https:"?443:80),Dm({sandboxId:r,apiBaseUrl:s,backendPort:o})}}function $m(e,t){let n=null;async function r(){n||(n=or(e,t,{showErrors:!1}).then(s=>{let o=vl(s)??"",i=o.indexOf("/"),a=i>0&&i<o.length-1?{providerID:o.slice(0,i),modelID:o.slice(i+1)}:void 0,u=s.agent_name?.trim()||void 0;return{model:a,agent:u}}));try{return await n}catch(s){throw n=null,s}}return{persistedPromptDefaults:r,clearPersistedDefaults:()=>{n=null}}}var Jt=new Map;function Um(e){let t=`Session runtime not ready (stage: ${e?.stage??"unknown"})`,n=e?.failure,r=[];n?.category&&r.push(n.category),n?.message&&r.push(n.message);let s=n?.evidence?.error;return s&&s!==n?.message&&r.push(s),r.length===0&&e?.reason&&r.push(e.reason),r.length>0?`${t}: ${r.join(" \u2014 ")}`:t}var Pt=class extends Error{constructor(t){super(`Session runtime not ready \u2014 call \`await session.ensureReady()\` (it drives \`start()\` to completion and resolves this session's own sandbox runtime) before calling \`${t}\`.`),this.name="SessionNotReadyError"}};var St={url:null,sandboxId:null,dbSandboxId:null,version:0},cP=new Set;function Fm(e,t=null,n=null){if(!(St.url===e&&St.sandboxId===t&&St.dbSandboxId===n)){St={url:e,sandboxId:t,dbSandboxId:n,version:St.version+1};for(let r of cP)r()}}function Lm(){return St.url}function Bm(e,t){async function n(r){let s=Date.now()+r,o=()=>Math.max(0,s-Date.now()),i=await Ye(e,t,Math.min(3e4,o()));for(;Date.now()<s&&(i==null||(i.stage==="provisioning"||i.stage==="starting")&&i.retriable);)await new Promise(d=>setTimeout(d,Math.min(1e3,o()))),i=await Ye(e,t,Math.min(3e4,o()));let a=i?.runtime_session_id??i?.opencode_session_id;if(!i||i.stage!=="ready"||!i.sandbox||!a)throw new b(Um(i),{code:"RUNTIME_UNAVAILABLE"});let u=i.sandbox.external_id;if(!u)throw new b("Session sandbox has no external_id \u2014 cannot resolve its runtime URL",{code:"RUNTIME_UNAVAILABLE"});let p=ze(u);return Fm(p,u),{runtimeSessionId:a,opencodeSessionId:a,runtimeUrl:p,sandboxId:u}}return n}function Nm(e,t,n){let r=null;function s(){if(r)return r;let p=$l(e,t);return p&&(r=p),r}let o=Bm(e,t);async function i(p){let d=s();if(d)return d;let g=p?.readyTimeoutMs??18e4,m=Je(k().backendUrl??n.backendUrl).catch(()=>null),f=`${e}
|
|
15
|
-
${t}`,h=
|
|
13
|
+
`);let h=gP(y);if(h){if(r(h),h.type==="error")throw new _(h.error,{status:h.status,code:h.code,data:{reason:h.reason}});h.type==="done"&&(p=h.result)}}}}finally{i.cancel().catch(()=>{})}if(!p)throw new Error("Reload stream ended without a result");return p}async function Vu(e,t){return u(await l.get(`/projects/${e}/sessions/${encodeURIComponent(t)}/scope`))}async function Hu(e,t,n){return u(await l.put(`/projects/${e}/sessions/${encodeURIComponent(t)}/scope`,n))}async function zu(e,t,n){return u(await l.put(`/projects/${e}/sessions/${encodeURIComponent(t)}/model`,{model:n,opencode_model:n}))}function Yu(e){let t=e.metadata?.opencode_model;return typeof t=="string"&&t.trim()?t.trim():null}async function Ju(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/message-authors`,{showErrors:!1}))}async function Qu(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/model-usage`,{showErrors:!1}))}function jE(e,t){let n=e.author_user_id===void 0||!t.userId||e.author_user_id===t.userId;return{own:n,removable:n||t.managesSession===!0}}async function Xu(e){return u(await l.get(`/projects/${e}/triggers`))}async function Zu(e,t){return u(await l.post(`/projects/${e}/triggers`,t))}async function ep(e,t,n){return u(await l.patch(`/projects/${e}/triggers/${t}`,n))}async function tp(e,t){return u(await l.delete(`/projects/${e}/triggers/${t}`))}async function np(e,t){return u(await l.patch(`/projects/${e}/triggers/activation`,{paused:t}))}async function rp(e,t){return u(await l.post(`/projects/${e}/triggers/${t}/fire`,{}))}async function sp(e,t){let n="connector"in t?`connector=${encodeURIComponent(t.connector)}`:`app=${encodeURIComponent(t.app)}${t.source?`&source=${encodeURIComponent(t.source)}`:""}`;return u(await l.get(`/projects/${e}/triggers/event-types?${n}`))}async function op(e){return u(await l.get(`/projects/${e}/triggers/event-apps`))}var Ke=new Map;function Ys(e,t){return`${e}::${t}`}function ip(e,t){Ke.delete(e),Ke.set(e,t)}function ap(e,t){let n=Ys(e,t),r=Ke.get(n);return r&&ip(n,r),r}function cp(e,t,n){let r=Ys(e,t);if(!Ke.has(r)&&Ke.size>=512){let s=Ke.keys().next().value;s!==void 0&&Ke.delete(s)}ip(r,n)}function lp(e,t){Ke.delete(Ys(e,t))}function mP(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function un(){return mP(R().backendUrl||"http://localhost:8008/v1")}function up(){let e=R().sandboxId;return e?`${un()}/p/${e}/8000`:""}function fP(e,t=8e3){return`${un()}/p/${e}/${t}`}function at(e,t=8e3){return fP(e,t)}function HE(e){if(e.status!=="running"||!e.sandbox_id||!e.sandbox_provider||!e.sandbox_url||!(e.runtime_session_id??e.opencode_session_id))return null;let t=e.runtime_session_id??e.opencode_session_id,n=e.sandbox_url.match(/\/p\/([^/]+)\//)?.[1];return n?{stage:"ready",agent_name:e.agent_name??"default",retriable:!0,sandbox:{sandbox_id:e.sandbox_id,session_id:e.session_id,project_id:e.project_id,account_id:e.account_id,provider:e.sandbox_provider,external_id:n,base_url:e.sandbox_url,status:"active",config:{},metadata:e.metadata,last_used_at:e.updated_at,created_at:e.created_at,updated_at:e.updated_at},runtime_session_id:t,opencode_session_id:t,runtime_url:e.sandbox_url}:null}var Js=class extends Error{status;code;terminal;constructor(t,n){super(t),this.name="SessionStartError",this.status=n.status,this.code=n.code,this.terminal=n.terminal}};function zE(e){return e instanceof Error&&e.name==="SessionStartError"}function yP(e){let t=e,n=t?.status,r=t?.code??t?.details?.code??t?.details?.error,s=t?.message||"Unable to start this session";return n&&n>=400&&n<500&&n!==408&&n!==429?new Js(s,{status:n,code:r,terminal:!0}):null}function pp(e,t,n){let r=typeof n=="number"?n:n?.waitMs,s=typeof n=="number"?void 0:n?.repositoryMode,o=new URLSearchParams;r&&r>0&&o.set("wait_ms",String(Math.floor(r))),s&&o.set("repository_mode",s),typeof n=="object"&&n?.keepStopped&&o.set("keep_stopped","1"),typeof n=="object"&&n?.intentAgeMs&&n.intentAgeMs>0&&o.set("intent_age_ms",String(Math.floor(n.intentAgeMs)));let i=o.size>0?`?${o.toString()}`:"";return l.post(`/projects/${e}/sessions/${t}/start${i}`,{},{showErrors:!1})}async function ct(e,t,n){let r=await pp(e,t,n);if(!r.success||!r.data){let s=yP(r.error);if(s&&!(s.status===404&&iu(t)))throw s;return null}return gp(e,t,r.data)}async function dp(e,t,n){let r=await pp(e,t,n);if(!r.success||!r.data)throw r.error??new Error("Unable to start this session");return gp(e,t,r.data)}function gp(e,t,n){let r=n.sandbox?.external_id,s=n.runtime_session_id??n.opencode_session_id;return n.stage==="ready"&&r&&s&&cp(e,t,{runtimeSessionId:s,opencodeSessionId:s,runtimeUrl:at(r),sandboxId:r}),n}function YE(e,t){return["session-start",e,t]}async function mp(e){return u(await l.get(`/projects/${e}/model-defaults`))}async function fp(e,t){return u(await l.put(`/projects/${e}/model-defaults`,t))}async function yp(e,t){let n=new URLSearchParams({scope:t.scope,...t.agentName?{agentName:t.agentName}:{}}).toString();return u(await l.delete(`/projects/${e}/model-defaults?${n}`))}async function nM(e,t){return u(await l.put(`/projects/${e}/model-enablement`,{modelOverrides:t}))}function hp(e){let t=[];for(let n of e){let r=n.trim();r&&!t.includes(r)&&t.push(r)}return t}function hP(e,t){if(e.length!==t.length)return!1;let n=new Set(t);return e.every(r=>n.has(r))}function Rr(e){let t=e.connectors_required?hp(e.connectors_required):void 0,n=e.connectors_personal?hp(e.connectors_personal):void 0;if(t&&n&&!hP(t,n))throw new Error("connectors_personal must match connectors_required when both fields are present");let r={...e};return delete r.connectors_personal,(t!==void 0||n!==void 0)&&(r.connectors_required=t??n),r}async function bp(e,t,n){let r=Rr(n);return u(await l.put(`/projects/${e}/agents/${encodeURIComponent(t)}/scope`,r))}async function dM(e,t){let n=u(await l.get(`/projects/${e}/agents/${encodeURIComponent(t)}/config`));return{...n,block:n.block?Qs(n.block):null}}async function gM(e,t,n){let r=Qs(n,!0),s=u(await l.put(`/projects/${e}/agents/${encodeURIComponent(t)}/config`,r));return{...s,block:s.block?Qs(s.block):null}}function Qs(e,t=!1){let n=Rr(e);if(n.workspace===void 0)return n;let r=n.workspace==="branch";if(n.repository_access!==void 0&&n.repository_access!==r)throw new Error("repository_access conflicts with workspace");if(t&&n.workspace==="read"&&n.repository_access===void 0)throw new Error("Legacy read is unavailable. Set repository_access explicitly.");return n.repository_access??=r,delete n.workspace,n}async function mM(e,t,n){return u(await l.post(`/projects/${e}/secrets/${encodeURIComponent(t)}/grant`,{agent:n}))}async function _p(e,t){return u(await l.put(`/projects/${e}/default-agent`,{agent:t}))}var Pp="Use createPerSeatCheckout().";function Sp(){return{credits:{total:0,daily:0,monthly:0,extra:0,can_run:!1,daily_refresh:null},subscription:{tier_key:"none",tier_display_name:"No Plan",status:"no_subscription",billing_period:null,provider:"stripe",subscription_id:null,current_period_end:null,cancel_at_period_end:!1,is_cancelled:!1,cancellation_effective_date:null,has_scheduled_change:!1,scheduled_change:null,commitment:{has_commitment:!1,can_cancel:!0,commitment_type:null,months_remaining:null,commitment_end_date:null},can_purchase_credits:!1},models:[],limits:{concurrent_runs:{running_count:0,limit:0,can_start:!1,tier_name:"none"},ai_worker_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"},custom_mcp_count:{current_count:0,limit:0,can_create:!1,tier_name:"none"}},tier:{name:"none",display_name:"No Plan",monthly_credits:0,can_purchase_credits:!1}}}function bP(e){let t=e.trim().toLowerCase();return t===""||t==="free"||t==="none"?"free":t==="enterprise"?"enterprise":"team"}function _M(e){let t=e?.plan;if(t)return{family:t.family,label:t.label,sublabel:t.sublabel??null,isGrandfathered:t.is_grandfathered===!0};let n=e??Sp(),r=(n.subscription?.tier_key||n.tier?.name||"none").toString(),s=(n.tier?.display_name||"").trim()||r;return{family:bP(r),label:s,sublabel:null,isGrandfathered:!1}}async function xp(e){let t=await l.get(e,{showErrors:!1}),n=t.error?.status===404&&/billing is not enabled/i.test(t.error.message||"");if(t.error&&t.error.status!==401&&!n)throw t.error;return t.error?Sp():t.data}function wp(e){let t=new URLSearchParams;e?.skipCache&&t.set("skip_cache","true"),e?.accountId&&t.set("account_id",e.accountId);let n=t.toString();return n?`?${n}`:""}async function Ap(e){return xp(`/billing/account-state${wp(e)}`)}async function vp(e){return xp(`/billing/account-state/minimal${wp(e)}`)}async function kp(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.limit!=null&&t.set("limit",String(e.limit)),e?.offset!=null&&t.set("offset",String(e.offset)),e?.typeFilter&&t.set("type_filter",Array.isArray(e.typeFilter)?e.typeFilter.join(","):e.typeFilter);let n=t.toString();return u(await l.get(`/billing/transactions${n?`?${n}`:""}`))}async function Rp(e){let t=new URLSearchParams;e?.accountId&&t.set("account_id",e.accountId),e?.days!=null&&t.set("days",String(e.days));let n=t.toString();return u(await l.get(`/billing/transactions/summary${n?`?${n}`:""}`))}async function Cp(){return u(await l.get("/billing/credit-breakdown"))}async function Ip(e){let t=e!=null?`?days=${e}`:"";return u(await l.get(`/billing/usage-history${t}`))}async function Tp(){return u(await l.get("/billing/tier-configurations"))}async function PM(e){let t=e.accountId?`?account_id=${encodeURIComponent(e.accountId)}`:"";return vt(e,`/v1/billing/account-state${t}`)}async function Ep(e){throw G("createCheckoutSession",Pp)}async function Mp(e,t){throw G("confirmCheckoutSession",Pp)}async function Op(e,t){return u(await l.post("/billing/create-portal-session",{account_id:t,return_url:e}),"Failed to create portal session")}async function Dp(e,t){return u(await l.post("/billing/cancel-subscription",{account_id:t,feedback:e}),"Failed to cancel subscription")}async function jp(e){return u(await l.post("/billing/reactivate-subscription",{account_id:e}),"Failed to reactivate subscription")}async function $p(e,t,n){throw G("scheduleDowngrade","Change the plan in the Stripe customer portal (createPortalSession()).")}async function Up(e){return u(await l.post("/billing/cancel-scheduled-change",{account_id:e}),"Failed to cancel scheduled change")}async function Lp(e,t){let n=new URLSearchParams({new_price_id:e});return t&&n.set("account_id",t),u(await l.get(`/billing/proration-preview?${n.toString()}`),"Failed to load proration preview")}async function Bp(e){return u(await l.post("/billing/purchase-credits",{amount:e.amount,account_id:e.accountId,success_url:e.successUrl,cancel_url:e.cancelUrl}),"Failed to purchase credits")}async function Fp(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return u(await l.get(`/billing/auto-topup/settings${t}`),"Failed to load auto-topup settings")}async function SM(e){return u(await l.post(`/accounts/${encodeURIComponent(e)}/top-up-requests`,{}),"Failed to ask the owners for credits")}async function Np(e){return u(await l.post("/billing/auto-topup/configure",{account_id:e.accountId,enabled:e.enabled,threshold:e.threshold,amount:e.amount},{showErrors:!1}),"Failed to configure auto-topup")}async function xM(e){let t=e?`?account_id=${encodeURIComponent(e)}`:"";return u(await l.get(`/billing/auto-topup/setup-status${t}`,{timeout:8e3,showErrors:!1}),"Failed to load auto-topup setup status")}async function wM(e){return u(await l.post("/billing/create-per-seat-checkout",{account_id:e.accountId,success_url:e.successUrl,cancel_url:e.cancelUrl,locale:e.locale}),"Failed to create per-seat checkout")}async function AM(e){return u(await l.post("/billing/claim-per-seat",{account_id:e}),"Failed to switch to per-seat billing")}async function vM(e){return u(await l.post("/billing/sync-subscription",{account_id:e}),"Failed to sync subscription")}async function qp(e={}){let t=new URLSearchParams;e.start&&t.set("start",e.start),e.end&&t.set("end",e.end),(e.groupBy==="model"||e.groupBy==="provider"||e.groupBy==="day")&&t.set("group_by",e.groupBy),e.accountId&&t.set("account_id",e.accountId);let n=t.toString();return u(await l.get(`/usage${n?`?${n}`:""}`))}function Xs(e,t){t.accountId&&e.set("account_id",t.accountId),t.projectId&&e.set("project_id",t.projectId)}function Cr(e,t){t.from&&e.set("from",t.from),t.to&&e.set("to",t.to)}function Ir(e){return e.size>0?`?${e}`:""}async function Wp(e={}){let t=new URLSearchParams;return Xs(t,e),e.ownerId&&t.set("owner_id",e.ownerId),Cr(t,e),e.sort&&t.set("sort",e.sort),e.limit!=null&&t.set("limit",String(e.limit)),e.offset!=null&&t.set("offset",String(e.offset)),u(await l.get(`/usage/session-costs${Ir(t)}`))}async function Tr(e,t={}){let n=new URLSearchParams;return Xs(n,t),u(await l.get(`/usage/session-costs/${encodeURIComponent(e)}${Ir(n)}`))}async function EM(e={}){let t=new URLSearchParams;return e.accountId&&t.set("account_id",e.accountId),Cr(t,e),e.sort&&t.set("sort",e.sort),e.limit!=null&&t.set("limit",String(e.limit)),e.offset!=null&&t.set("offset",String(e.offset)),u(await l.get(`/usage/cost-by-project${Ir(t)}`))}async function MM(e={}){let t=new URLSearchParams;return Xs(t,e),e.sessionId&&t.set("session_id",e.sessionId),Cr(t,e),u(await l.get(`/usage/cost-summary${Ir(t)}`))}function Gp(e,t={}){let n=new URLSearchParams;if(t.accountId&&n.set("account_id",t.accountId),t.projectId&&n.set("project_id",t.projectId),e==="sessions"){let s=t;s.ownerId&&n.set("owner_id",s.ownerId)}Cr(n,t),t.sort&&n.set("sort",t.sort),n.set("format","csv");let r=e==="projects"?"/usage/cost-by-project":"/usage/session-costs";return`${R().backendUrl||""}${r}?${n}`}async function OM(e,t={}){let n=Gp(e==="projects"?"projects":"sessions",t),r=await Ie(n,{method:"GET"},{timeoutMs:10*6e4},"Failed to export CSV"),s=r.headers.get("x-beeuni-row-cap"),o=s!=null?Number(s):NaN;return{blob:await r.blob(),rowCap:Number.isFinite(o)?o:null}}async function Kp(e,t){return u(await l.post(`/channels/${e}/identity/bind`,{token:t}),"Failed to connect your account")}function UM(e){return Kp("slack",e)}function LM(e){return Kp("teams",e)}async function Vp(e,t){return u(await l.post(`/channels/${e}/identity/preview`,{token:t},{showErrors:!1}),"This link is invalid or has expired")}function BM(e){return Vp("slack",e)}function FM(e){return Vp("teams",e)}async function Hp(e){let t=await l.get(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});return t.success?t.data??null:null}async function zp(e,t){return u(await l.post(`/projects/${encodeURIComponent(e)}/channels/slack/connect`,t,{showErrors:!1}),"Failed to connect")}var _P={oauth_available:!1,install_url:null};async function Yp(e){let t=await l.get(`/projects/${encodeURIComponent(e)}/channels/slack/mode`,{showErrors:!1});return!t.success||!t.data?_P:t.data}async function Jp(e,t,n){return u(await l.post(`/projects/${encodeURIComponent(t)}/channels/${e}/oauth/complete`,{code:n.code,state:n.state},{showErrors:!1}),"Failed to finish the install")}function Qp(e,t){return Jp("slack",e,t)}function Xp(e,t){return Jp("teams",e,t)}async function Zp(e){return u(await l.get(`/webhooks/slack/${encodeURIComponent(e)}/manifest`,{showErrors:!1}),"Failed to load Slack manifest")}async function ed(e){let t=await l.delete(`/projects/${encodeURIComponent(e)}/channels/slack/installation`,{showErrors:!1});if(!t.success)throw new Error(t.error?.message??"Failed to disconnect")}async function td(e,t){return u(await l.get(`/projects/${encodeURIComponent(e)}/channels/slack/file?url=${encodeURIComponent(t)}`,{showErrors:!1}),"Failed to download Slack file")}async function nd(e,t){return u(await l.post(`/projects/${encodeURIComponent(e)}/channels/slack/file/upload`,{channel:t.channel,filename:t.filename,content_base64:t.contentBase64,comment:t.comment,thread_ts:t.threadTs},{showErrors:!1}),"Failed to upload Slack file")}function Zs(e){let t=e.connectionId??e.connection_id??null,n=e.connectorSlug??e.connector_slug??e.connectionSlug??e.connection_slug??"beeuni_email";return{...e,connectionId:t,connectorSlug:n}}var PP={provider:"agentmail",managed_available:!1};async function rd(e,t){let n=t?`?connector_slug=${encodeURIComponent(t)}`:"",r=await l.get(`/projects/${encodeURIComponent(e)}/channels/email/installation${n}`,{showErrors:!1});return r.success&&r.data?Zs(r.data):null}async function sd(e){let t=await l.get(`/projects/${encodeURIComponent(e)}/channels/email/mode`,{showErrors:!1});return!t.success||!t.data?PP:t.data}async function od(e,t){let n=u(await l.post(`/projects/${encodeURIComponent(e)}/channels/email/connect`,t,{showErrors:!1}),"Failed to connect email");return Zs(n)}async function id(e,t){let n=t?`?connector_slug=${encodeURIComponent(t)}`:"",r=await l.delete(`/projects/${encodeURIComponent(e)}/channels/email/installation${n}`,{showErrors:!1});if(!r.success)throw new Error(r.error?.message??"Failed to disconnect email")}async function ad(e,t,n){let r=u(await l.patch(`/projects/${encodeURIComponent(e)}/channels/email/installation`,{connector_slug:t??"beeuni_email",sender_policy:n},{showErrors:!1}),"Failed to update email policy");return Zs(r)}async function NM(e){return u(await l.get(`/projects/${encodeURIComponent(e)}/channels/bindings`,{showErrors:!1}),"Failed to load channel bindings")}async function qM(e,t,n){return u(await l.patch(`/projects/${encodeURIComponent(e)}/channels/bindings/${encodeURIComponent(t)}`,n,{showErrors:!1}),"Failed to update channel binding")}async function cd(e){return u(await l.get(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function ld(e,t){return u(await l.put(`/projects/${e}/gateway/routing-policy`,t),"Gateway routing policy request failed")}async function ud(e){return u(await l.delete(`/projects/${e}/gateway/routing-policy`),"Gateway routing policy request failed")}async function pd(e,t){return u(await l.post(`/projects/${e}/gateway/routing-policy/preview`,t),"Gateway route preview failed")}async function dd(e,t){let n=new URLSearchParams;t?.limit&&n.set("limit",String(t.limit)),t?.offset&&n.set("offset",String(t.offset)),t?.ok!==void 0&&n.set("ok",String(t.ok));let r=n.toString();return u(await l.get(`/projects/${e}/gateway/logs${r?`?${r}`:""}`),"Gateway request failed")}async function gd(e,t){return u(await l.get(`/projects/${e}/gateway/logs/${t}`),"Gateway request failed")}async function md(e,t){return u(await l.get(`/projects/${e}/gateway/overview${t?`?days=${t}`:""}`),"Gateway request failed")}async function fd(e,t){return u(await l.get(`/projects/${e}/gateway/series${t?`?days=${t}`:""}`),"Gateway request failed")}async function yd(e,t){return u(await l.get(`/projects/${e}/gateway/breakdown${t?`?days=${t}`:""}`),"Gateway request failed")}async function hd(e,t){return u(await l.get(`/projects/${e}/gateway/sessions${t?`?days=${t}`:""}`),"Gateway request failed")}async function bd(e,t){return u(await l.get(`/projects/${e}/gateway/errors${t?`?days=${t}`:""}`),"Gateway request failed")}async function _d(e){return u(await l.get(`/projects/${e}/gateway/budgets`),"Gateway request failed")}async function Pd(e,t){return u(await l.put(`/projects/${e}/gateway/budgets`,t),"Gateway request failed")}async function Sd(e,t){return u(await l.delete(`/projects/${e}/gateway/budgets/${t}`),"Gateway request failed")}async function xd(e){return u(await l.get(`/projects/${e}/gateway/keys`),"Gateway request failed")}async function wd(e,t){return u(await l.post(`/projects/${e}/gateway/keys`,{name:t}),"Gateway request failed")}async function Ad(e,t){return u(await l.delete(`/projects/${e}/gateway/keys/${t}`),"Gateway request failed")}async function vd(e,t,n,r,s){return u(await l.post(`/projects/${e}/gateway/playground`,{prompt:t,models:n,...r?{system:r}:{},...s&&Object.keys(s).length?{generationConfig:s}:{}}),"Gateway request failed")}async function VM(e,t){return u(await l.post(`/projects/${e}/gateway/providers/${encodeURIComponent(t)}/verify`,{}),"Gateway provider verification failed")}async function YM(){throw G("getReferralCode")}async function JM(){throw G("refreshReferralCode")}async function QM(e){throw G("validateReferralCode")}async function XM(){throw G("getReferralStats")}async function ZM(e={}){throw G("listReferrals")}async function eO(e){throw G("sendReferralEmails")}function U(e){return l.get(e,{showErrors:!1})}function A(e){return u(e,"Unexpected empty response")}async function kd(e){return A(await U(`/accounts/${e}/iam/groups`)).groups}async function Rd(e,t){return A(await U(`/accounts/${e}/iam/groups/${t}`))}async function Cd(e,t){return A(await l.post(`/accounts/${e}/iam/groups`,t,{showErrors:!1}))}async function Id(e,t,n){return A(await l.patch(`/accounts/${e}/iam/groups/${t}`,n))}async function Td(e,t){return A(await l.delete(`/accounts/${e}/iam/groups/${t}`))}async function Ed(e,t){return A(await U(`/accounts/${e}/iam/groups/${t}/members`)).members}async function Md(e,t,n){return A(await l.post(`/accounts/${e}/iam/groups/${t}/members`,{userIds:n}))}async function aO(e,t){return A(await U(`/accounts/${e}/iam/groups/${t}/project-grants`)).grants}async function Od(e,t,n){return A(await l.delete(`/accounts/${e}/iam/groups/${t}/members/${n}`))}async function cO(e,t){return A(await U(`/accounts/${e}/iam/members/${t}/groups`)).groups}async function lO(e,t){let n=A(await U(`/accounts/${e}/iam/members/${t}/project-access`));return{projects:n.projects,account_wide_policies:n.account_wide_policies??[]}}function Ve(e){let t=new URLSearchParams;for(let[r,s]of Object.entries(e))s&&t.set(r,String(s));let n=t.toString();return n?`?${n}`:""}async function mO(e,t={}){let n=Ve({resourceType:t.resourceType,principalType:t.principalType,principalId:t.principalId,projectId:t.projectId});return A(await U(`/accounts/${e}/iam/resource-grants${n}`)).grants}async function _O(e,t={}){let n=Ve({principalType:t.principalType,principalId:t.principalId,scopeType:t.scopeType,scopeId:t.scopeId===null?"null":t.scopeId});return A(await U(`/accounts/${e}/iam/policies${n}`)).policies}async function PO(e,t){return A(await l.post(`/accounts/${e}/iam/policies`,t,{showErrors:!1}))}async function SO(e,t,n){return A(await l.patch(`/accounts/${e}/iam/policies/${t}`,n,{showErrors:!1}))}async function xO(e,t){return A(await l.delete(`/accounts/${e}/iam/policies/${t}`))}async function wO(e,t){return A(await l.post(`/accounts/${e}/iam/policies:bulk-delete`,{policy_ids:t},{showErrors:!1}))}async function AO(e,t){return A(await l.post(`/accounts/${e}/iam/policies:bulk-import`,{policies:t},{showErrors:!1}))}async function Dd(e){return A(await U(`/accounts/${e}/iam/roles`)).roles}async function jd(e){return A(await U(`/accounts/${e}/iam/agent-identities`)).agents}async function $d(e){return A(await l.get(`/projects/${e}/agent-identities`,{showErrors:!1})).agents}async function Ud(e,t){return A(await U(`/accounts/${e}/iam/roles/${t}/permissions`))}async function CO(e){return A(await U(`/accounts/${e}/iam/actions`)).actions}async function Ld(e,t){return A(await U(`/accounts/${e}/iam/roles/${t}/usage`))}async function Bd(e,t){return A(await l.post(`/accounts/${e}/iam/roles`,t,{showErrors:!1}))}async function Fd(e,t,n){return A(await l.patch(`/accounts/${e}/iam/roles/${t}`,n,{showErrors:!1}))}async function Nd(e,t,n){return A(await l.put(`/accounts/${e}/iam/roles/${t}/permissions`,{actions:n},{showErrors:!1}))}async function qd(e,t){return A(await l.delete(`/accounts/${e}/iam/roles/${t}`,{showErrors:!1}))}async function IO(e,t,n){return A(await l.patch(`/accounts/${e}/iam/members/${t}/super-admin`,{isSuperAdmin:n}))}async function OO(e){return A(await U(`/accounts/${e}/iam/scim/tokens`)).tokens}async function DO(e,t){return A(await l.post(`/accounts/${e}/iam/scim/tokens`,t,{showErrors:!1}))}async function jO(e,t){return A(await l.delete(`/accounts/${e}/iam/scim/tokens/${t}`))}async function BO(e){return A(await U(`/accounts/${e}/iam/mfa-required`))}async function FO(e){return A(await U(`/accounts/${e}/iam/mfa-required/preview`))}async function NO(e,t){return A(await l.patch(`/accounts/${e}/iam/mfa-required`,{enabled:t},{showErrors:!1}))}async function qO(e){return A(await U(`/accounts/${e}/iam/session-oversight`))}async function GO(e,t){return A(await l.patch(`/accounts/${e}/iam/session-oversight`,{enabled:t},{showErrors:!1}))}async function HO(e){return A(await U(`/accounts/${e}/iam/sso/provider`)).provider}async function zO(e,t){return A(await l.post(`/accounts/${e}/iam/sso/provider/from-metadata`,t,{showErrors:!1})).provider}async function YO(e){return A(await l.post(`/accounts/${e}/iam/sso/provider/verify-domain`,{},{showErrors:!1})).provider}async function JO(e){return A(await l.delete(`/accounts/${e}/iam/sso/provider`))}async function QO(e){return A(await U(`/accounts/${e}/iam/sso/mappings`)).mappings}async function XO(e,t){return A(await l.post(`/accounts/${e}/iam/sso/mappings`,t,{showErrors:!1}))}async function ZO(e,t){return A(await l.delete(`/accounts/${e}/iam/sso/mappings/${t}`))}async function rD(e){return A(await U(`/accounts/${e}/iam/session-policy`))}async function sD(e,t){return A(await l.patch(`/accounts/${e}/iam/session-policy`,t,{showErrors:!1}))}async function oD(e){return A(await U(`/accounts/${e}/iam/sessions`)).sessions}async function iD(e,t){return A(await l.post(`/accounts/${e}/iam/sessions/${t}/revoke`,{},{showErrors:!1}))}async function aD(e){return A(await U(`/accounts/${e}/iam/pat-policy`))}async function cD(e,t){return A(await l.patch(`/accounts/${e}/iam/pat-policy`,t,{showErrors:!1}))}async function dD(e){return A(await U(`/accounts/${e}/iam/service-accounts`)).service_accounts}async function gD(e,t){return A(await l.post(`/accounts/${e}/iam/service-accounts`,t,{showErrors:!1}))}async function mD(e,t){return A(await l.post(`/accounts/${e}/iam/service-accounts/${t}/disable`,{},{showErrors:!1}))}async function fD(e,t){return A(await l.delete(`/accounts/${e}/iam/service-accounts/${t}`))}async function PD(e){return A(await U(`/accounts/${e}/audit/webhooks`)).webhooks}async function SD(e,t){return A(await l.post(`/accounts/${e}/audit/webhooks`,t,{showErrors:!1}))}async function xD(e,t,n){return A(await l.patch(`/accounts/${e}/audit/webhooks/${t}`,n))}async function wD(e,t){return A(await l.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function AD(e,t={}){let n=Ve({action:t.action,actor:t.actor,project_id:t.project_id,session_id:t.session_id,actor_type:t.actor_type,source:t.source,credential_kind:t.credential_kind,phase:t.phase,outcome:t.outcome,request_id:t.request_id,correlation_id:t.correlation_id,resource_type:t.resource_type,since:t.since,until:t.until,q:t.q,cursor:t.cursor,limit:t.limit});return A(await U(`/accounts/${e}/audit${n}`))}async function Gd(e,t,n){let r=new URLSearchParams;return r.set("action",n.action),n.resourceType&&r.set("resourceType",n.resourceType),n.resourceId&&r.set("resourceId",n.resourceId),A(await U(`/accounts/${e}/iam/members/${t}/effective?${r.toString()}`))}async function Wd(e,t,n){return n.length===0?[]:A(await l.post(`/accounts/${e}/iam/members/${t}/effective:batch`,{probes:n})).results}async function ED(e){return A(await U(`/accounts/${e}/iam/enterprise-demo`)).enabled}async function MD(e,t){return A(await l.put(`/accounts/${e}/iam/enterprise-demo`,{enabled:t})).enabled}async function Kd(e){return u(await l.get(`/accounts/${e}/iam/oauth-clients`,{showErrors:!1}))}async function Vd(e,t){return u(await l.get(`/accounts/${e}/iam/oauth-clients/${t}`,{showErrors:!1}))}async function Hd(e,t){return u(await l.post(`/accounts/${e}/iam/oauth-clients`,t,{showErrors:!1}))}async function zd(e,t,n){return u(await l.patch(`/accounts/${e}/iam/oauth-clients/${t}`,n,{showErrors:!1}))}async function Yd(e,t){return u(await l.post(`/accounts/${e}/iam/oauth-clients/${t}/rotate-secret`,{},{showErrors:!1}))}async function Jd(e,t){return u(await l.delete(`/accounts/${e}/iam/oauth-clients/${t}`,{showErrors:!1}))}function SP(e){return Ve({principal_type:e?.principalType,principal_id:e?.principalId,scope_type:e?.scopeType,scope_id:e?.scopeId,object_type:e?.objectType,object_id:e?.objectId,role_id:e?.roleId,include_expired:e?.includeExpired?"true":void 0})}async function Qd(e,t){return u(await U(`/accounts/${e}/iam/assignments${SP(t)}`)).assignments}async function Xd(e,t){let n={principal_type:t.principal.type,principal_id:t.principal.id,scope_type:t.scope.type,scope_id:t.scope.type==="project"?t.scope.id:null};return t.roleId?n.role_id=t.roleId:n.role_key=t.roleKey,t.object&&(n.object_type=t.object.type,n.object_id=t.object.id),t.expiresAt!==void 0&&(n.expires_at=t.expiresAt),u(await l.post(`/accounts/${e}/iam/assignments`,n))}async function Zd(e,t){return u(await l.delete(`/accounts/${e}/iam/assignments/${t}`)).assignment}async function eg(e,t){let n=t?.scopeType?`?scope_type=${t.scopeType}`:"";return u(await U(`/accounts/${e}/iam/permissions${n}`)).permissions}async function xP(){let e=await l.get("/account/deletion-status",{showErrors:!1});return e.error?.status===404?null:u(e,"Failed to load account deletion status")}async function wP(e="User requested deletion"){return u(await l.post("/account/request-deletion",{reason:e},{showErrors:!1}),"Failed to request account deletion")}async function AP(){return u(await l.post("/account/cancel-deletion",void 0,{showErrors:!1}),"Failed to cancel account deletion")}async function vP(){return u(await l.delete("/account/delete-immediately",{showErrors:!1}),"Failed to delete account immediately")}var tg="Export the deck as PDF or PPTX with convertRuntimePresentation().";async function VD(e){throw G("getGoogleAuthUrl",tg)}async function HD(e,t){throw G("convertPresentationToGoogleSlides",tg)}async function ng(e,t){let n=new URLSearchParams;t?.segment&&n.set("segment",t.segment),t?.kind&&n.set("kind",t.kind);let r=n.toString();return u(await l.get(`/projects/${e}/review/items${r?`?${r}`:""}`,{showErrors:!1}))}async function rg(e,t){return u(await l.get(`/projects/${e}/review/items/${t}`))}async function sg(e,t){return u(await l.post(`/projects/${e}/review/items`,t))}async function og(e,t,n){return u(await l.post(`/projects/${e}/review/items/${t}/act`,n))}async function ig(e,t){return u(await l.post(`/projects/${e}/review/bulk`,t))}var eo="call:";function XD(e){return e.startsWith("cr:")&&e.length>3?{type:"change_request",changeRequestId:e.slice(3)}:e.startsWith(eo)&&e.length>eo.length?{type:"connector_call",executionId:e.slice(eo.length)}:{type:"review_item",reviewItemId:e}}function kP(e){return e==="needs_you"?"needs_you":e==="waiting"?"waiting":"done"}function ZD(e){let t={needs_you:0,waiting:0,done:0};for(let n of e)t[kP(n.status)]+=1;return t}function ej(e){switch(e){case"approved":return"approve";case"rejected":return"reject";case"changes_requested":return"changes";case"done":return"answer";case"dismissed":return"dismiss";default:return null}}function to(e){return e.split(/[._-]/).filter(Boolean).map(t=>t.charAt(0).toUpperCase()+t.slice(1)).join(" ")}function cg(e){let t=e.indexOf(".");return t<=0?to(e):`(${to(e.slice(0,t))}) ${to(e.slice(t+1))}`}function RP(e){let t=e.indexOf(".");return t>0?{connector:e.slice(0,t),action:e.slice(t+1)}:{connector:e,action:""}}var Er=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:{},L=e=>typeof e=="string"&&e?e:void 0,xe=e=>Array.isArray(e)?e:void 0,ag=e=>typeof e=="number"?e:0,CP=e=>e.split(`
|
|
14
|
+
`).map(t=>t.trim()).filter(Boolean);function IP(e,t){let n=Er(e.advanced),r=L(e.description),s=xe(e.whatChanged)??(r?CP(r):t.summary?[t.summary]:[]);return{crId:L(e.cr_id),number:typeof e.number=="number"?e.number:void 0,whatChanged:s,impact:L(e.impact)??"",verification:xe(e.verification)??[],previewUrl:L(e.previewUrl)??L(e.preview_url),conflicts:xe(e.conflicts),requestedChanges:xe(e.requested_changes)??[],advanced:{headRef:L(n.headRef)??L(e.head_ref)??"",baseRef:L(n.baseRef)??L(e.base_ref)??"",headSha:L(n.headSha)??L(e.head_sha)??L(e.head_commit_sha)??"",baseSha:L(n.baseSha)??L(e.base_sha)??"",additions:ag(n.additions),deletions:ag(n.deletions),files:xe(n.files)??[],mergeMode:L(n.mergeMode)??"merge"}}}function TP(e,t){let n=xe(e.actions);if(n)return{actions:n.map((c,p)=>({id:L(c.id)??`${t.review_item_id}-${p}`,title:L(c.title)??"Action",connector:L(c.connector)??"",action:L(c.action)??"",consequence:L(c.consequence)??"",risk:L(c.risk)??t.risk,icon:L(c.icon)??"generic",argsPreview:xe(c.argsPreview)??[],policySource:L(c.policySource)??"Requires approval",decided:c.decided==="approved"||c.decided==="denied"?c.decided:void 0}))};let r=L(e.action_path)??"",{connector:s,action:o}=RP(r),i=Er(e.args_preview),a=Object.keys(i).length>0;return{actions:[{id:L(e.execution_id)??t.review_item_id,title:r?cg(r):t.title||"Run action",connector:s,action:o,consequence:"Runs against the real connector once you approve",risk:t.risk,icon:"generic",argsPreview:Object.entries(i).map(([c,p])=>({key:c,value:p==="[redacted]"?"Hidden credential":typeof p=="string"?p:JSON.stringify(p,null,2)})),actionPath:r,rawArgsPreview:a?i:void 0,reviewComplete:e.args_preview_complete===!0,previewAuthorized:e.args_preview_authorized!==!1,approvalContext:L(e.approval_context),connectorRisk:L(e.risk)??null,policySource:"Requires approval"}]}}function EP(e,t){return{artifactKind:L(e.artifactKind)??"document",artifactLabel:L(e.artifactLabel)??"Output",previewUrl:L(e.previewUrl)??L(e.preview_url),preview:L(e.preview),files:xe(e.files),note:L(e.note)??t.summary??""}}function MP(e,t){return{question:L(e.question)??t.title??"",context:L(e.context),options:xe(e.options)??[]}}function OP(e,t){return{note:L(e.note)??t.summary??"",children:xe(e.children)??[]}}function DP(e){let t=Er(e.detail);switch(e.kind){case"change":return IP(t,e);case"approval":return TP(t,e);case"output":return EP(t,e);case"decision":return MP(t,e);case"batch":return OP(t,e)}}function jP(e,t){let n=typeof e.number=="number"?e.number:void 0,r=L(e.base_ref);return n!=null&&r?`#${n} \u2192 ${r}`:t}function tj(e,t={}){let n=Er(e.detail),r=e.origin_session_id??void 0,s=r?t.sessionLabels?.[r]:void 0,o=e.kind==="approval"?L(n.action_path):void 0,i=e.kind==="change"?jP(n,e.summary):e.kind==="approval"?s??(r?"From a running session":e.summary):e.summary;return{id:e.review_item_id,kind:e.kind,title:o?cg(o):e.title,summary:i,risk:e.risk,status:e.status,source:e.source,agent:e.agent||"Agent",createdAt:e.created_at,sessionId:r,detail:DP(e)}}async function lg(e){return u(await l.get(`/p/share?sandbox_id=${encodeURIComponent(e)}`),"Failed to load public links").shares??[]}async function ug(e){return u(await l.post("/p/share",{sandbox_id:e.sandboxId,port:e.port,ttl:e.ttl,label:e.label}),"Failed to generate public URL")}async function pg(e,t){let n=await l.delete(`/p/share/${encodeURIComponent(t)}?sandbox_id=${encodeURIComponent(e)}`);if(!n.success)throw new Error(n.error?.message??"Failed to revoke public link")}var no=class extends Error{constructor(n,r){super(n);this.status=r;this.name="PublicSessionShareError"}status};function dg(e,t=""){return`${un()}/public/session-shares/${encodeURIComponent(e)}${t}`}async function gg(e){let t=await fetch(e,{method:"GET",headers:{Accept:"application/json"}}),n=await t.text().catch(()=>""),r=null;try{r=n?JSON.parse(n):null}catch{}if(!t.ok){let s=(r&&typeof r=="object"&&"error"in r&&typeof r.error=="string"?r.error:null)||t.statusText||`HTTP ${t.status}`;throw new no(s,t.status)}return r}async function aj(e){return gg(dg(e))}async function cj(e){return gg(dg(e,"/messages"))}async function mg(e,t){return u(await l.get(`/projects/${e}/sessions/${t}/reminders`))}async function fg(e,t,n){return u(await l.post(`/projects/${e}/sessions/${t}/reminders`,n))}async function ro(e,t,n,r){return u(await l.patch(`/projects/${e}/sessions/${t}/reminders/${n}`,r))}async function so(e,t,n){return u(await l.delete(`/projects/${e}/sessions/${t}/reminders/${n}`))}var $P=4;async function yg(e,t){let n=new Array(e.length),r=0,s=async()=>{for(;r<e.length;){let i=r++;try{await t(e[i]),n[i]={ok:!0}}catch(a){n[i]={ok:!1,error:a}}}};await Promise.all(Array.from({length:Math.min($P,e.length)},s));let o={done:[],failed:[]};return e.forEach((i,a)=>{let c=n[a];c.ok?o.done.push(i):o.failed.push({reminder:i,error:c.error})}),o}function hg(e,t,n){return yg(t,r=>ro(e,r.sessionId,r.reminderId,n))}function bg(e,t){return yg(t,n=>so(e,n.sessionId,n.reminderId))}async function _g(e){return u(await l.get(`/projects/${e}/reminders`))}async function Pg(e,t){let n=new URLSearchParams;e&&n.set("account_id",e),t?.mine&&n.set("mine","true");let r=n.size>0?`?${n.toString()}`:"";return u(await l.get(`/accounts/tokens${r}`))}async function Sg(e){let{accountId:t,expiresAt:n,projectId:r,name:s}=e;return u(await l.post("/accounts/tokens",{name:s,...t?{account_id:t}:{},...n?{expires_at:n}:{},...r?{project_id:r}:{}}))}async function xg(e,t){let n=t?`?account_id=${encodeURIComponent(t)}`:"";return u(await l.delete(`/accounts/tokens/${e}${n}`))}async function wg(){return u(await l.get("/oauth/grants")).grants}async function Ag(e){return u(await l.delete(`/oauth/grants/${encodeURIComponent(e)}`))}async function fj(){return u(await l.get("/accounts/me/devices")).devices}async function yj(e){return u(await l.delete(`/accounts/me/devices/${encodeURIComponent(e)}`))}async function vg(e){return u(await l.get(`/projects/${e}/cli-token`))}async function kg(e,t){return u(await l.post(`/projects/${e}/cli-token`,t??{}))}async function Rg(e,t){return u(await l.delete(`/projects/${e}/cli-token/${t}`))}function Ot(e){let t=new URLSearchParams,n=" format action actor actor_type project_id session_id source credential_kind phase outcome resource_type request_id correlation_id since until q cursor limit ";for(let[r,s]of Object.entries(e))n.includes(` ${r} `)&&s!=null&&s!==""&&t.set(r,String(s));return t}function oo(e={}){return{format:e.format,action:e.action,actor:e.actor,actor_type:e.actorType,project_id:e.projectId,session_id:e.sessionId,source:e.source,credential_kind:e.credentialKind,phase:e.phase,outcome:e.outcome,resource_type:e.resourceType,request_id:e.requestId,correlation_id:e.correlationId,since:e.since,until:e.until,q:e.q,cursor:e.cursor,limit:e.limit}}async function Cg(e,t){let n=Ot(oo(t)).toString();return u(await l.get(`/accounts/${e}/audit${n?`?${n}`:""}`))}async function Ig(e,t){let n=Ot(oo({...t,projectId:void 0})).toString();return u(await l.get(`/projects/${e}/audit${n?`?${n}`:""}`))}async function Tg(e,t){let n=Ot(oo(t)).toString();return u(await l.get(`/accounts/${e}/audit/export${n?`?${n}`:""}`))}async function Eg(e){return u(await l.get(`/accounts/${e}/audit/webhooks`))}async function Mg(e,t){return u(await l.post(`/accounts/${e}/audit/webhooks`,t))}async function Og(e,t,n){return u(await l.patch(`/accounts/${e}/audit/webhooks/${t}`,n))}async function Dg(e,t){return u(await l.delete(`/accounts/${e}/audit/webhooks/${t}`))}async function jg(e,t){return u(await l.post(`/projects/${e}/secret-requests`,{names:t.names,labels:t.labels,descriptions:t.descriptions,scope:t.scope,expires_in_minutes:t.expiresInMinutes}),"Failed to mint secret-entry link")}async function $g(e,t){return u(await l.post(`/projects/${e}/connect-requests`,{slug:t.slug,...t.owner?{owner:t.owner}:{},...t.label?{label:t.label}:{},expires_in_minutes:t.expiresInMinutes}),"Failed to mint connect link")}async function vj(e){return u(await l.get(`/approval-links/${e}`),"Failed to load approval")}async function Ug(e){let t=new URLSearchParams;e?.query&&t.set("query",e.query),e?.type&&t.set("type",e.type),e?.source&&t.set("source",e.source),e?.limit!==void 0&&t.set("limit",String(e.limit)),e?.offset!==void 0&&t.set("offset",String(e.offset));let n=t.toString()?`?${t.toString()}`:"";return u(await l.get(`/marketplace/items${n}`))}async function Lg(){return u(await l.get("/marketplace/marketplaces"))}async function Bg(){return u(await l.get("/marketplace/marketplaces/featured"))}async function Fg(e){return u(await l.get(`/marketplace/items/${encodeURIComponent(e)}`),"Item not found")}async function Ng(e,t){return u(await l.get(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`),"File not found")}async function qg(){return u(await l.get("/marketplace/sources"))}async function Gg(e){return u(await l.post("/marketplace/sources",e),"Failed to add marketplace source")}async function Wg(e){return u(await l.delete(`/marketplace/sources/${encodeURIComponent(e)}`),"Failed to remove marketplace source")}async function Ij(e,t){return u(await l.post(`/projects/${encodeURIComponent(e)}/marketplace/install-session`,{id:t}),"Failed to start marketplace install session")}async function Mj(e){throw G("getTemplate")}async function Oj(e,t){throw G("installTemplate")}async function Kg(e){return u(await l.get(`/projects/${e}/apps`),"Failed to list Apps").apps}async function Vg(e,t){return u(await l.post(`/projects/${e}/apps`,t),"Failed to create App")}async function io(e,t){return u(await l.get(`/projects/${e}/apps/${t}`),"Failed to load App")}async function Hg(e,t,n){return u(await l.patch(`/projects/${e}/apps/${t}`,n),"Failed to update App")}async function zg(e,t){return u(await l.delete(`/projects/${e}/apps/${t}`),"Failed to delete App")}async function Yg(e,t){return u(await l.post(`/projects/${e}/apps/${t}/token`,{}),"Failed to mint an App token")}async function Jg(e,t){let n=await io(e,t);if(!n.auth)throw new Error("This server does not report sign-in values for Apps.");let r=u(await l.get(`/projects/${e}/jwks.json`),"Failed to read the project key set"),s=new TextEncoder().encode(JSON.stringify(r)),o="";for(let i of s)o+=String.fromCharCode(i);return{BEEUNI_AUTH_ISSUER:n.auth.issuer,BEEUNI_AUTH_AUDIENCE:n.auth.audience,BEEUNI_AUTH_JWKS:`data:application/json;base64,${btoa(o)}`}}async function Qg(e,t){return u(await l.get(`/projects/${e}/apps/${t}/access`),"Failed to load App access policy")}async function Xg(e,t){return u(await l.get(`/projects/${e}/apps/${t}/agents`),"Failed to load the agents with access to this App").agents}async function Zg(e,t,n){return u(await l.patch(`/projects/${e}/apps/${t}/access`,n),"Failed to update App access policy")}async function em(e,t){return u(await l.post(`/projects/${e}/apps/${t}/access-session`,{}),"Failed to create App access session")}async function ao(e,t){return u(await l.post(`/projects/${e}/apps/artifacts`,t),"Failed to register App artifact")}async function co(e,t,n){return u(await l.post(`/projects/${e}/apps/artifacts/${t}/finalize`,n),"Failed to finalize App artifact")}async function UP(e){return e instanceof Uint8Array?e:new Uint8Array(await e.arrayBuffer())}async function LP(e){let t=Uint8Array.from(e),n=await globalThis.crypto.subtle.digest("SHA-256",t.buffer);return Array.from(new Uint8Array(n),r=>r.toString(16).padStart(2,"0")).join("")}async function tm(e,t,n={}){let r=await UP(t),s=n.mediaType??"application/gzip",o=await ao(e,{kind:"archive",media_type:s});if(!o.upload)throw new Error("App artifact registration did not return an upload URL");if(r.byteLength>o.upload.max_bytes)throw new Error(`App artifact exceeds ${o.upload.max_bytes} bytes`);n.onProgress?.(0,r.byteLength);let i=await fetch(o.upload.url,{method:"PUT",body:new Blob([Uint8Array.from(r).buffer],{type:s}),signal:n.signal,headers:{"content-type":s,"x-upsert":"false"}});if(!i.ok){let a=await i.text().catch(()=>"");throw new Error(`App artifact upload failed with HTTP ${i.status}${a?`: ${a}`:""}`)}return n.onProgress?.(r.byteLength,r.byteLength),co(e,o.artifact.artifact_id,{sha256:await LP(r),size_bytes:r.byteLength})}async function nm(e,t,n){return u(await l.post(`/projects/${e}/apps/${t}/deployments`,n),"Failed to create App deployment")}async function rm(e,t){return u(await l.get(`/projects/${e}/apps/${t}/deployments`),"Failed to list App deployments").deployments}async function sm(e,t,n){return u(await l.get(`/projects/${e}/apps/${t}/deployments/${n}`),"Failed to load App deployment")}async function om(e,t,n,r={}){let s=new URLSearchParams;r.after!==void 0&&s.set("after",String(r.after)),r.limit!==void 0&&s.set("limit",String(r.limit));let o=s.size?`?${s.toString()}`:"";return u(await l.get(`/projects/${e}/apps/${t}/deployments/${n}/logs${o}`),"Failed to load App logs")}async function im(e,t){return u(await l.post(`/projects/${e}/apps/${t}/start`,{}),"Failed to start App")}async function am(e,t){return u(await l.post(`/projects/${e}/apps/${t}/stop`,{}),"Failed to stop App")}async function cm(e,t,n){return u(await l.delete(`/projects/${e}/apps/${t}/deployments/${n}`),"Failed to delete App deployment")}async function lm(e,t,n){return u(await l.post(`/projects/${e}/apps/${t}/rollback`,{deployment_id:n}),"Failed to roll back App")}var me=(e,t)=>`/projects/${e}/apps/${t}`;async function um(e,t){return u(await l.get(`${me(e,t)}/machines`),"Failed to list machines").machines}async function lo(e,t,n,r){return u(await l.post(`${me(e,t)}/machines/${n}/${r}`,{}),`Failed to ${r} the machine`).machines}var pm=(e,t,n)=>lo(e,t,n,"start"),dm=(e,t,n)=>lo(e,t,n,"stop"),gm=(e,t,n)=>lo(e,t,n,"restart");async function mm(e,t,n){return u(await l.delete(`${me(e,t)}/machines/${n}`),"Failed to destroy the machine").machines}async function fm(e,t,n){return u(await l.put(`${me(e,t)}/scale`,{count:n}),"Failed to scale the App")}async function ym(e,t,n){return u(await l.post(`${me(e,t)}/exec`,n),"Failed to run the command")}async function hm(e,t){return u(await l.get(`${me(e,t)}/volumes`),"Failed to list volumes").volumes}async function bm(e,t,n){return u(await l.post(`${me(e,t)}/volumes`,n),"Failed to create the volume")}async function _m(e,t,n,r){return u(await l.patch(`${me(e,t)}/volumes/${n}`,r),"Failed to update the volume")}async function Pm(e,t,n,r){u(await l.delete(`${me(e,t)}/volumes/${n}?confirm=${encodeURIComponent(r)}`),"Failed to destroy the volume")}async function Sm(e,t,n){return u(await l.get(`${me(e,t)}/volumes/${n}/snapshots`),"Failed to list snapshots").snapshots}async function xm(e,t,n){return u(await l.post(`${me(e,t)}/volumes/${n}/snapshots`,{}),"Failed to take the snapshot")}async function wm(e,t,n,r){return u(await l.post(`${me(e,t)}/volumes/${n}/restore`,{snapshot_id:r}),"Failed to restore the volume")}async function Am(e,t,n,r){return u(await l.post(`${me(e,t)}/volumes/${n}/fork`,r),"Failed to fork the volume")}function le(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return t===e.length?e:e.slice(0,t)}var ue=e=>`/drives/${encodeURIComponent(e)}`;async function Hj(e){let t=u(await l.get(`/drives?${new URLSearchParams({projectId:e})}`),"Failed to load files").drives;if(!t[0])throw new _("Files not found",{status:404});return t[0]}async function zj(e,t){return u(await l.get(`${ue(e)}/access?${new URLSearchParams({path:t})}`),"Failed to load sharing")}async function Yj(e,t){return u(await l.put(`${ue(e)}/access`,t),"Failed to share folder")}async function Jj(e,t){let n=u(await l.delete(`${ue(e)}/access/${encodeURIComponent(t)}`),"Failed to stop sharing");return{pendingSessions:typeof n?.pendingSessions=="number"?n.pendingSessions:0}}async function Qj(e){return u(await l.get(`${ue(e)}/principals`),"Failed to load people")}async function Xj(e){return u(await l.get(`${ue(e)}/conflicts`),"Failed to load conflicts").conflicts}async function Zj(e,t){u(await l.post(`${ue(e)}/conflicts/${encodeURIComponent(t)}/dismiss`,{}),"Failed to dismiss conflict")}async function e$(e,t="/"){return(await BP(e,t)).entries}async function BP(e,t="/"){return u(await l.get(`${ue(e)}/files?${new URLSearchParams({path:t})}`),"Failed to load files")}function vm(e,t,n){let r=le(R().backendUrl),s={path:t};return n?.download&&(s.download="1"),`${r}${ue(e)}/files/content?${new URLSearchParams(s)}`}async function t$(e,t,n){let r=await j(vm(e,t),{signal:n});if(!r.ok){let s=await r.json().catch(()=>null);throw new _(s?.message||"Could not download file",{status:r.status})}return r.blob()}async function n$(e,t,n){let r=await j(vm(e,t),{signal:n});if(!r.ok){let s=await r.json().catch(()=>null);throw new _(s?.message||"Could not download file",{status:r.status})}return{blob:await r.blob(),version:r.headers.get("etag")}}async function r$(e,t,n,r){return u(await l.putRaw(`${ue(e)}/files/content?${new URLSearchParams({path:t})}`,n,{signal:r?.signal,...r?.ifMatch?{headers:{"If-Match":r.ifMatch}}:{}}),"Failed to upload file")}async function s$(e,t){return u(await l.post(`${ue(e)}/files/mkdir`,{path:t}),"Failed to create folder")}async function o$(e,t,n){return u(await l.post(`${ue(e)}/files/move`,{from:t,to:n}),"Failed to move")}async function i$(e,t,n){let r={path:t};n?.recursive&&(r.recursive="true"),u(await l.delete(`${ue(e)}/files?${new URLSearchParams(r)}`),"Failed to delete")}async function a$(e){return u(await l.get(`${ue(e)}/versions`),"Failed to load versions").versions}async function c$(e,t){u(await l.post(`${ue(e)}/restore`,{versionId:t}),"Failed to restore version")}var FP=(e,t)=>`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/drives`;async function l$(e,t){return(await NP(e,t)).drives}async function NP(e,t){return u(await l.get(FP(e,t)),"Failed to load session files")}async function km(e){return u(await l.post("/notifications/device-token",e))}async function Rm(e,t){return u(await l.delete(`/notifications/device-token/${encodeURIComponent(e)}`,{signal:t?.signal}))}var g$=["turn_done","turn_error","question","permission","shared","automation_failed","automation_recovered"];async function Cm(e={},t){let n=new URLSearchParams;e.limit!==void 0&&n.set("limit",String(e.limit)),e.before&&n.set("before",e.before);let r=n.toString();return u(await l.get(`/notifications${r?`?${r}`:""}`,{showErrors:!1,signal:t?.signal}))}async function Im(e){let t="ids"in e?{ids:e.ids}:"all"in e?{all:!0}:{session_id:e.sessionId};return u(await l.post("/notifications/read",t))}var m$={turn_done:{push:!0,email:!1},turn_error:{push:!0,email:!0},question:{push:!0,email:!0},permission:{push:!0,email:!1},shared:{push:!0,email:!0},automation_failed:{push:!0,email:!0},automation_recovered:{push:!0,email:!1}};async function Tm(){return u(await l.get("/notifications/preferences",{showErrors:!1}))}async function Em(e){return u(await l.put("/notifications/preferences",e))}async function Mm(){return u(await l.get("/notifications/web-push/key",{showErrors:!1}))}async function Om(e){let t={endpoint:e.endpoint,keys:{p256dh:e.keys.p256dh,auth:e.keys.auth}};return u(await l.post("/notifications/web-push/subscriptions",t,{showErrors:!1}))}async function Dm(e,t){return u(await l.delete(`/notifications/web-push/subscriptions?endpoint=${encodeURIComponent(e)}`,{signal:t?.signal,showErrors:!1}))}async function Mr(e){return u(await l.get(`/projects/${e}/model-access`))}async function Or(e,t){return u(await l.put(`/projects/${e}/model-access`,t))}function _$(e){let{running:t,isCarousel:n,contentStatus:r,isWebsitePreview:s,previewHasError:o,previewIsLinkOnly:i}=e;return t||n?!1:s?o&&!i:r==="error"}function uo(e){return typeof e=="string"&&e.trim().length>0}function jm(e){if(!e||typeof e!="object")return!1;let{path:t,url:n,content:r}=e;return uo(t)||uo(n)||uo(r)}function qP(e){if(Array.isArray(e))return e.length>0?e:null;if(typeof e!="string"||!e.trim())return null;try{let t=JSON.parse(e);return Array.isArray(t)&&t.length>0?t:null}catch{return null}}function Dr(e){if(!e)return!0;let t=qP(e.items);return t?!t.some(jm):!jm(e)}function fe(e){return(e??"").replace(/^oc-/,"").replace(/-/g,"_")}function x$(e){return fe(e)==="bash"}function w$(e){let t=fe(e);return t==="question"||t==="ask"}function A$(e,t){let n=Math.max(0,e);return`${t?"Running":"Ran"} ${n} command${n===1?"":"s"}`}var GP=new Set(["show","show_user"]);function $m(e){return GP.has(fe(e))}function v$(e,t){let n=Math.max(0,e);return`${t?"Writing":"Wrote"} ${n} file${n===1?"":"s"}`}function Um(e){return!!(e.type==="snapshot"||e.type==="patch"||e.type==="step-start"||e.type==="step-finish"||e.type==="text"&&!e.text?.trim()||po(e))}function po(e){let t=fe(e.tool);return t!=="show"&&t!=="show_user"||e.state?.status!=="completed"?!1:Dr(e.state?.input)}var WP=new Set(["show","show_user","agent_spawn","agent_status","agent_message","agent_task_update","agent_stop"]);function Lm(e){return WP.has(fe(e))}var KP=50*1024*1024,go="[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}",VP=new RegExp(`^beeuni-attachment://(${go})/(${go})/(${go})$`);function fo(e){if(typeof e!="string")return null;let t=VP.exec(e);return t?{projectId:t[1],sessionId:t[2],attachmentId:t[3]}:null}function M$(e){return fo(e)!==null}var mo=new WeakMap;async function Bm(e,t,n,r={}){if(n.size>KP)throw new Error("Attachments must be 50 MiB or smaller.");let s=`${e}/${t}`,o=r.attachmentId?void 0:mo.get(n)?.get(s);if(o?.promise)return o.promise;let i=o??{id:r.attachmentId??crypto.randomUUID(),promise:void 0};if(!r.attachmentId){let c=mo.get(n)??new Map;c.set(s,i),mo.set(n,c)}let a=new FormData;return a.append("attachment_id",i.id),a.append("file",n,n.name),i.promise=l.upload(`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/attachments`,a,{signal:r.signal,timeout:12e4,showErrors:!1}).then(u).catch(c=>{throw i.promise=void 0,c}),i.promise}async function Fm(e,t){let n=fo(e);if(!n)throw new Error("Invalid attachment reference");let r=R().backendUrl.replace(/\/$/,""),s=await j(`${r}/projects/${n.projectId}/sessions/${n.sessionId}/attachments/${n.attachmentId}`,{signal:t});if(!s.ok)throw new _("Could not load attachment",{status:s.status});return s.blob()}var HP=new Set(["show","show_user"]);function zP(e){let t=[],n=0;for(;;){let r=e.indexOf("<file",n);if(r===-1)return t;let s=r+5;if(s>=e.length||!/\s/.test(e[s])){n=s;continue}let o=e.indexOf(">",s);if(o===-1)return t;let i=e.indexOf("</file>",o+1);if(i===-1)return t;t.push(e.slice(s,o).trimStart()),n=i+7}}var Dt=e=>!!e&&typeof e=="object"&&!Array.isArray(e),pn=e=>typeof e=="string"&&e.length>0?e:null,Nm=e=>typeof e=="string"?pn(e.split("/").pop()):null;function jr(e,t){let n=e.match(new RegExp(`(?:^|\\s)${t}="([^"]*)"`))?.[1];return n===void 0?null:n.replace(/"/g,'"').replace(/</g,"<").replace(/>/g,">").replace(/&/g,"&")}function YP(e){if(Array.isArray(e))return e;if(typeof e!="string"||!e.trim())return[];try{let t=JSON.parse(e);return Array.isArray(t)?t:[]}catch{return[]}}function JP(e,t){for(let n of zP(e))t(jr(n,"attachment"),jr(n,"filename")??Nm(jr(n,"path")),jr(n,"mime"))}function QP(e,t){for(let n of[e,...YP(e.items)])Dt(n)&&t(n.attachment,Nm(n.path),null)}function O$(e){if(!Array.isArray(e))return[];let t=[],n=new Set;for(let r of e){if(!Dt(r)||!Dt(r.info)||!Array.isArray(r.parts))continue;let s=pn(r.info.id);if(!s)continue;let o=pn(r.info.role)??"unknown",i=(a,c,p)=>{let d=fo(a);!d||n.has(a)||(n.add(a),t.push({url:a,attachment_id:d.attachmentId,filename:c,mime:p,message_id:s,role:o}))};for(let a of r.parts)Dt(a)&&(a.type==="file"?i(a.url,pn(a.filename),pn(a.mime)):a.type==="text"&&typeof a.text=="string"?JP(a.text,i):a.type==="tool"&&typeof a.tool=="string"&&HP.has(fe(a.tool))&&Dt(a.state)&&Dt(a.state.input)&&QP(a.state.input,i))}return t}function He(e){try{return typeof process<"u"?process.env?.[e]:void 0}catch{return}}function XP(e,t){if(e==null)return t;let n=e.trim().toLowerCase();return["1","true","yes","y","on"].includes(n)?!0:["0","false","no","n","off"].includes(n)?!1:t}function L$(e){if(e==null)return;let t=e.trim().toLowerCase();if(["1","true","yes","y","on"].includes(t))return!0;if(["0","false","no","n","off"].includes(t))return!1}function yo(e,t,n){return e!==void 0?e:XP(He(t),n)}var qm={get disableMobileAdvertising(){return yo(R().featureFlags?.disableMobileAdvertising,"NEXT_PUBLIC_DISABLE_MOBILE_ADVERTISING",!1)},get enableDinoGame(){return yo(R().featureFlags?.enableDinoGame,"NEXT_PUBLIC_ENABLE_DINO_GAME",!1)},get enableProjects(){return yo(R().featureFlags?.enableProjects,"NEXT_PUBLIC_ENABLE_PROJECTS",!1)},get enableAutoModel(){return!1}};var ZP=new Set(["project-manager"]);function ho(e){return e.native===!0||e.mode==="subagent"||e.hidden||e.enabled===!1?!1:qm.enableProjects||!ZP.has(e.name)}function N$(e){let t=e.agents.filter(ho),n=e.default_agent??e.open_code_default_agent;return n?t.sort((r,s)=>r.name===n?-1:s.name===n?1:0):t}function Gm(){return{projects:{list:kt,listForAccount:Ia,get:ar,detail:cr,create:Oa,createRepo:Da,provision:ja,update:pr,archive:dr,llmCatalog:lr,modelPicker:ur,modelAccess:Mr,setModelAccess:Or,sandboxHealth:fr,sandboxTemplates:xl,sessions:Et,createSession:Mt},github:{linkRepository:Na,replaceProjectRepository:qa,getInstallation:Ga,listInstallations:Wa,listLinkableInstallations:Ka,listRepositories:Va,listRepositoryBranches:Ha,linkInstallation:Ya,saveInstallation:za,deleteInstallation:Qa,storeUserToken:Ja},connectStatus:ml,marketplace:{items:s=>Ug(s),item:s=>Fg(s),itemFile:(s,o)=>Ng(s,o),marketplaces:()=>Lg(),featured:()=>Bg(),sources:{list:()=>qg(),add:s=>Gg(s),remove:s=>Wg(s)}}}}function Wm(){return{billing:{accountState:Ap,accountStateMinimal:vp,transactions:kp,transactionsSummary:Rp,creditBreakdown:Cp,usageHistory:Ip,usageRollup:qp,sessionCosts:{list:Wp,get:Tr},tierConfigurations:Tp,checkout:{createSession:n=>Ep(n),confirmSession:(n,r)=>Mp(n,r)},subscription:{createPortalSession:(n,r)=>Op(n,r),cancel:(n,r)=>Dp(n,r),reactivate:n=>jp(n),scheduleDowngrade:(n,r,s)=>$p(n,r,s),cancelScheduledChange:n=>Up(n),prorationPreview:(n,r)=>Lp(n,r)},credits:{purchase:n=>Bp(n),autoTopupSettings:n=>Fp(n),configureAutoTopup:n=>Np(n)}},sandboxShares:{list:lg,create:ug,revoke:pg}}}var ze={DESKTOP:"6080",DESKTOP_HTTPS:"6081",PRESENTATION_VIEWER:"3210",STATIC_FILE_SERVER:"3211",BEEUNI_MASTER:"8000",BROWSER_STREAM:"9223",BROWSER_VIEWER:"9224",SSH:"22"};function Ye(){let e=He("BACKEND_URL")||R().backendUrl;return e||"http://localhost:8008/v1"}function lt(e){let t=le(e);return t.endsWith("/v1")?t:`${t}/v1`}function dn(e){if(typeof e=="string"){let t=e.trim();return t.length>0?t:void 0}if(Array.isArray(e)){for(let t of e){let n=dn(t);if(n)return n}return}if(e&&typeof e=="object"){let t=e;return dn(t.sandboxId??t.id??t.slug??Object.values(t)[0])}}function eS(e){return e==="running"||e==="active"?"active":e==="queued"||e==="branching"||e==="provisioning"?"provisioning":e==="failed"||e==="error"?"error":e==="stopped"||e==="completed"||e==="archived"?"stopped":e||"unknown"}function bo(e,t,n){let r=n?.external_id||t.sandbox_url?.match(/\/p\/([^/]+)\//)?.[1]||t.sandbox_id||"";return{sandbox_id:n?.sandbox_id||t.sandbox_id||t.session_id,external_id:r,name:t.name||`${e.name} session`,provider:n?.provider||t.sandbox_provider||"daytona",base_url:n?.base_url||t.sandbox_url||(n?.external_id?`${Ye()}/p/${n.external_id}/${ze.BEEUNI_MASTER}`:""),status:eS(n?.status||t.status),metadata:{...t.metadata??{},project_id:e.project_id,session_id:t.session_id,project_name:e.name,runtime_status:n?.status,error:t.error},created_at:n?.created_at||t.created_at,updated_at:n?.updated_at||t.updated_at}}async function _o(){let e=await kt(),t=[];for(let n of e){let r=await Et(n.project_id).catch(()=>[]);for(let s of r)t.push({project:n,session:s,runtime:null,sandbox:bo(n,s,null)})}return t.sort((n,r)=>{let s={active:0,provisioning:1,stopped:2,error:3},o=(s[n.sandbox.status]??99)-(s[r.sandbox.status]??99);return o!==0?o:Date.parse(r.sandbox.updated_at)-Date.parse(n.sandbox.updated_at)})}async function ut(e){let t=await _o();return e?t.find(n=>n.sandbox.sandbox_id===e||n.sandbox.external_id===e||n.session.session_id===e||n.runtime?.external_id===e)??null:t[0]??null}var gn=class extends Error{constructor(n,r,s){super(r);this.code=n;this.status=s;this.name="HeadlessAuthError"}code;status};async function re(e,t,n){let r=n?.fetch??R().fetch??((p,d)=>fetch(p,d)),s=le(n?.backendUrl??R().backendUrl??"");if(!s)throw new gn("not_configured","backendUrl is not configured (configureBeeuni / createBeeuni first)",0);let o={accept:"application/json"};t.body!==void 0&&(o["content-type"]="application/json"),t.bearer&&(o.authorization=`Bearer ${t.bearer}`);let i=await r(`${lt(s)}${e}`,{method:t.method??(t.body!==void 0?"POST":"GET"),headers:o,...t.body!==void 0?{body:JSON.stringify(t.body)}:{},...n?.signal?{signal:n.signal}:{}}),a=await i.text().catch(()=>""),c=null;try{c=a?JSON.parse(a):null}catch{c=a}if(!i.ok){let p=c&&typeof c=="object"?c:{};throw new gn(typeof p.error=="string"?p.error:"auth_error",typeof p.error_description=="string"&&p.error_description?p.error_description:typeof p.error=="string"?p.error:i.statusText||`HTTP ${i.status}`,i.status)}return c}function Po(e,t){return re("/auth/signup",{body:e},t)}function So(e,t){return re("/auth/sign-in/password",{body:e},t)}function xo(e,t){return re("/auth/sign-in/magic-link",{body:e},t)}function wo(e,t){return re("/auth/verify-otp",{body:e},t)}function Ao(e,t){return re("/auth/sign-in/oauth",{body:e},t)}function vo(e,t){return re("/auth/oauth/exchange",{body:e},t)}function mn(e,t){return re("/auth/refresh",{body:e},t)}function ko(e,t){return re("/auth/password/reset",{body:e},t)}function Ro(e,t,n){return re("/auth/password/update",{body:e,bearer:t},n)}function Co(e,t){return re("/auth/user",{bearer:e},t)}function Io(e,t,n){return re("/auth/user",{method:"PATCH",body:e,bearer:t},n)}function To(e,t){return re("/auth/sign-in/sso",{body:e},t)}var Eo={enroll:(e,t,n)=>re("/auth/mfa/factors",{body:e,bearer:t},n),challenge:(e,t={},n,r)=>re(`/auth/mfa/factors/${encodeURIComponent(e)}/challenge`,{body:t,bearer:n},r),verify:(e,t,n,r)=>re(`/auth/mfa/factors/${encodeURIComponent(e)}/verify`,{body:t,bearer:n},r),unenroll:(e,t,n)=>re(`/auth/mfa/factors/${encodeURIComponent(e)}`,{method:"DELETE",bearer:t},n)};function Mo(e,t={},n){return re("/auth/sign-out",{body:t,bearer:e},n)}function Oo(e={}){let t=e.refreshSkewSeconds??60,n=e.now??(()=>Date.now()),r=null,s=null,o=!e.storage,i=null,a=null,c=0,p=new Set,d=w=>(w.expires_at??0)*1e3,g=w=>d(w)-t*1e3<=n();async function m(){e.storage&&(r?await e.storage.set(JSON.stringify({session:r,user:s})):await e.storage.remove());for(let w of[...p])try{w(r)}catch{}try{e.onChange?.(r)}catch{}}async function y(){if(o)return r;if(!i){let w=c,M=(async()=>{let B=await e.storage.get();if(w===c&&B)try{let F=JSON.parse(B);F.session?.access_token&&F.session?.refresh_token&&(r=F.session,s=F.user??null)}catch{r=null}return o=!0,r})();i=M,M.then(()=>{i===M&&(i=null)},()=>{i===M&&(i=null)})}return i}async function h(){if(await y(),!r)return null;if(!a){let w=r.refresh_token,M=c,B=mn({refresh_token:w},e.request).then(async F=>(M!==c||(r=F.session,F.user&&(s=F.user),await m()),r)).catch(async F=>{if(M!==c)return r;let f=F&&typeof F=="object"&&"status"in F?F.status:0;if(f>=400&&f<500)return r=null,s=null,await m(),null;throw F}).finally(()=>{a===B&&(a=null)});a=B}return a}return{subscribe(w){return p.add(w),()=>{p.delete(w)}},current:()=>r,user:()=>s,load:y,async set(w,M){await y(),c+=1,a=null,r=w,M!==void 0&&(s=M),w||(s=null),await m()},async getToken(){return await y(),r?g(r)?(await h().catch(()=>r))?.access_token??null:r.access_token:null},refresh:h,async clear(){c+=1,a=null,r=null,s=null,o=!0,await m()}}}function Km(){return{list:ia,get:ca,create:aa,secretResources:{list:Ic,create:Tc,rotate:Ec,retry:Mc,remove:Oc,grant:Dc,revoke:jc,setAccess:$c},updateName:la,branding:{get:ua,update:pa,uploadAsset:da,removeAsset:ga,reset:ma},leave:ka,members:fa,invite:ya,removeMember:Aa,updateMemberRole:va,invites:ha,cancelInvite:ba,resendInvite:_a,tokens:{list:Pg,create:Sg,revoke:xg},connectedApps:{list:wg,revoke:Ag},audit:{log:Cg,export:Tg,webhooks:{list:Eg,create:Mg,update:Og,remove:Dg}}}}function Vm(){return{assignments:{list:Qd,create:Xd,revoke:Zd},permissions:{list:eg,forRole:Ud},roles:{list:Dd,create:Bd,update:Fd,setPermissions:Nd,remove:qd,usage:Ld},groups:{list:kd,get:Rd,create:Cd,update:Id,remove:Td,members:{list:Ed,add:Md,remove:Od}},agentIdentities:jd,oauthClients:{list:Kd,get:Vd,create:Hd,update:zd,rotateSecret:Yd,remove:Jd},can:Gd,canBatch:Wd}}function Hm(){let e={signUp:Po,signInWithPassword:So,sendMagicLink:xo,verifyOtp:wo,signInWithProvider:Ao,exchangeCode:vo,refresh:mn,resetPassword:ko,updatePassword:Ro,updateUserMetadata:Io,signInWithSso:To,mfa:Eo,user:Co,signOut:Mo,session:Oo},t=Km(),n=Vm();return{auth:e,accounts:t,iam:n,accountInvites:{listMine:Pa,describe:Sa,accept:xa,decline:wa}}}var fn=new Map,Do=new Map;function jo(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function zm(e){return fn.get(jo(e))??null}function Ym(){return[...fn.values()].filter(e=>typeof e=="string")}function Jm(e){return fn.has(jo(e))}async function pt(e){let t=jo(e),n=fn.get(t);if(n!==void 0)return n;let r=Do.get(t);if(r)return r;let s=(async()=>{try{let o=await l.get("/p/config",{showErrors:!1,errorContext:{operation:"load preview config",silent:!0}});if(!o.success)return null;let i=typeof o.data?.preview_url_template=="string"?o.data.preview_url_template:null;return fn.set(t,i),i}catch{return null}finally{Do.delete(t)}})();return Do.set(t,s),s}function Qm(e){let{apiBaseUrl:t}=e;return Jm(t)||pt(t).catch(()=>{}),{sandboxId:e.sandboxId,backendPort:e.backendPort,apiBaseUrl:t,previewUrlTemplate:zm(t)}}function Xm(e){function t(n){try{return new URL(n)}catch{if(typeof window<"u"&&window.location?.origin)try{return new URL(n,window.location.origin)}catch{return null}throw new _(`Beeuni SDK: backendUrl must be an absolute URL outside the browser (got ${JSON.stringify(n)}). Relative paths like "/api/beeuni" only resolve against a page origin \u2014 configure an absolute backendUrl for server-side hosts.`,{code:"INVALID_BACKEND_URL"})}}return function(r){let s=R().backendUrl??e.backendUrl,o=80,i=t(s);return i&&(o=i.port?Number(i.port):i.protocol==="https:"?443:80),Qm({sandboxId:r,apiBaseUrl:s,backendPort:o})}}function Zm(e,t){let n=null;async function r(){n||(n=wr(e,t,{showErrors:!1}).then(s=>{let o=Yu(s)??"",i=o.indexOf("/"),a=i>0&&i<o.length-1?{providerID:o.slice(0,i),modelID:o.slice(i+1)}:void 0,c=s.agent_name?.trim()||void 0;return{model:a,agent:c}}));try{return await n}catch(s){throw n=null,s}}return{persistedPromptDefaults:r,clearPersistedDefaults:()=>{n=null}}}var yn=new Map;function ef(e){let t=`Session runtime not ready (stage: ${e?.stage??"unknown"})`,n=e?.failure,r=[];n?.category&&r.push(n.category),n?.message&&r.push(n.message);let s=n?.evidence?.error;return s&&s!==n?.message&&r.push(s),r.length===0&&e?.reason&&r.push(e.reason),r.length>0?`${t}: ${r.join(" \u2014 ")}`:t}var jt=class extends Error{constructor(t){super(`Session runtime not ready \u2014 call \`await session.ensureReady()\` (it drives \`start()\` to completion and resolves this session's own sandbox runtime) before calling \`${t}\`.`),this.name="SessionNotReadyError"}};var $t={url:null,sandboxId:null,dbSandboxId:null,version:0},nS=new Set;function tf(e,t=null,n=null){if(!($t.url===e&&$t.sandboxId===t&&$t.dbSandboxId===n)){$t={url:e,sandboxId:t,dbSandboxId:n,version:$t.version+1};for(let r of nS)r()}}function nf(){return $t.url}function rf(e,t){async function n(r){let s=Date.now()+r,o=()=>Math.max(0,s-Date.now()),i=await ct(e,t,Math.min(3e4,o()));for(;Date.now()<s&&(i==null||(i.stage==="provisioning"||i.stage==="starting")&&i.retriable);)await new Promise(d=>setTimeout(d,Math.min(1e3,o()))),i=await ct(e,t,Math.min(3e4,o()));let a=i?.runtime_session_id??i?.opencode_session_id;if(!i||i.stage!=="ready"||!i.sandbox||!a)throw new _(ef(i),{code:"RUNTIME_UNAVAILABLE"});let c=i.sandbox.external_id;if(!c)throw new _("Session sandbox has no external_id \u2014 cannot resolve its runtime URL",{code:"RUNTIME_UNAVAILABLE"});let p=at(c);return tf(p,c),{runtimeSessionId:a,opencodeSessionId:a,runtimeUrl:p,sandboxId:c}}return n}function sf(e,t,n){let r=null;function s(){if(r)return r;let p=ap(e,t);return p&&(r=p),r}let o=rf(e,t);async function i(p){let d=s();if(d)return d;let g=p?.readyTimeoutMs??18e4,m=pt(R().backendUrl??n.backendUrl).catch(()=>null),y=`${e}
|
|
15
|
+
${t}`,h=yn.get(y);if(h)return r=await h,await m,r;let w=o(g);yn.set(y,w);try{return r=await w,await m,r}finally{yn.get(y)===w&&yn.delete(y)}}function a(p){let d=s();if(!d)throw new jt(p);return d}function c(){r=null,lp(e,t)}return{ensureReady:i,tryResolveReady:s,requireReady:a,forgetReady:c}}var K=["directory","workspace"],of=["messageID","model","agent","noReply","tools","format","system","variant","parts"],I=(e,t,n=K,r=[],s)=>({method:e,path:t,query:n,body:r,bodyParam:s}),rS={"session.list":I("GET","/session",[...K,"scope","path","roots","start","search","limit"]),"session.get":I("GET","/session/{sessionID}"),"session.create":I("POST","/session",K,["parentID","title","agent","model","metadata","permission","workspaceID"]),"session.delete":I("DELETE","/session/{sessionID}"),"session.update":I("PATCH","/session/{sessionID}",K,["title","metadata","permission","time"]),"session.status":I("GET","/session/status"),"session.messages":I("GET","/session/{sessionID}/message",[...K,"limit","before"]),"session.prompt":I("POST","/session/{sessionID}/message",K,of),"session.promptAsync":I("POST","/session/{sessionID}/prompt_async",K,of),"session.abort":I("POST","/session/{sessionID}/abort"),"session.revert":I("POST","/session/{sessionID}/revert",K,["messageID","partID"]),"session.unrevert":I("POST","/session/{sessionID}/unrevert"),"session.summarize":I("POST","/session/{sessionID}/summarize",K,["providerID","modelID","auto"]),"session.command":I("POST","/session/{sessionID}/command",K,["messageID","agent","model","arguments","command","variant","parts"]),"session.share":I("POST","/session/{sessionID}/share"),"session.unshare":I("DELETE","/session/{sessionID}/share"),"session.fork":I("POST","/session/{sessionID}/fork",K,["messageID"]),"session.diff":I("GET","/session/{sessionID}/diff",[...K,"messageID"]),"session.todo":I("GET","/session/{sessionID}/todo"),"permission.list":I("GET","/permission"),"permission.reply":I("POST","/permission/{requestID}/reply",K,["reply","message"]),"question.list":I("GET","/question"),"question.reply":I("POST","/question/{requestID}/reply",K,["answers"]),"question.reject":I("POST","/question/{requestID}/reject"),"part.update":I("PATCH","/session/{sessionID}/message/{messageID}/part/{partID}",K,[],"part"),"part.delete":I("DELETE","/session/{sessionID}/message/{messageID}/part/{partID}"),"file.list":I("GET","/file",[...K,"path"]),"file.read":I("GET","/file/content",[...K,"path"]),"find.files":I("GET","/find/file",[...K,"query","dirs","type","limit"]),"vcs.diff":I("GET","/vcs/diff",[...K,"mode","context"]),"global.health":I("GET","/global/health",[]),"global.dispose":I("POST","/global/dispose",[]),"global.config.get":I("GET","/global/config",[]),"global.config.update":I("PATCH","/global/config",[],[],"config"),"provider.list":I("GET","/provider"),"provider.auth":I("GET","/provider/auth"),"provider.oauth.authorize":I("POST","/provider/{providerID}/oauth/authorize",K,["method","inputs"]),"provider.oauth.callback":I("POST","/provider/{providerID}/oauth/callback",K,["method","code"]),"auth.set":I("PUT","/auth/{providerID}",[],[],"auth"),"app.agents":I("GET","/agent"),"app.skills":I("GET","/skill"),"app.log":I("POST","/log",K,["service","level","message","extra"]),"command.list":I("GET","/command"),"tool.ids":I("GET","/experimental/tool/ids"),"tool.list":I("GET","/experimental/tool",[...K,"provider","model"]),"mcp.status":I("GET","/mcp"),"mcp.add":I("POST","/mcp",K,["name","config"]),"mcp.connect":I("POST","/mcp/{name}/connect"),"mcp.disconnect":I("POST","/mcp/{name}/disconnect"),"mcp.auth.start":I("POST","/mcp/{name}/auth"),"mcp.auth.callback":I("POST","/mcp/{name}/auth/callback",K,["code"]),"mcp.auth.remove":I("DELETE","/mcp/{name}/auth"),"project.list":I("GET","/project"),"project.current":I("GET","/project/current"),"path.get":I("GET","/path")};function sS(e,t){let n=[];for(let r of e.query){let s=t[r];s!=null&&n.push(`${r}=${encodeURIComponent(String(s))}`)}return n.length?`?${n.join("&")}`:""}function oS(e,t,n={},r={}){let s=rS[t],o=s.path.replace(/\{(\w+)\}/g,(p,d)=>encodeURIComponent(String(n[d]))),i,a=!1;if(s.bodyParam)i=n[s.bodyParam],a=i!==void 0;else for(let p of s.body)p in n&&(i={...i,[p]:n[p]},a=!0);let c=new Headers(r.headers);return a&&c.set("Content-Type","application/json"),new Request(`${e.replace(/\/$/,"")}${o}${sS(s,n)}`,{method:s.method,headers:c,redirect:"follow",...a?{body:JSON.stringify(i)}:{},...r.signal?{signal:r.signal}:{}})}function iS(e){if(!e)return"stream";let t=e.split(";")[0]?.trim()??"";return t.startsWith("application/json")||t.endsWith("+json")?"json":t==="multipart/form-data"?"formData":["application/","audio/","image/","video/"].some(n=>t.startsWith(n))?"blob":t.startsWith("text/")?"text":"json"}async function aS(e,t){let n=e.fetch??globalThis.fetch,r;try{r=await n(t)}catch(i){return{error:i||{},request:t,response:void 0}}if(r.headers.get("content-type")==="text/html")throw new Error("The session runtime does not serve this request (it answered text/html)");if(r.ok){let i=iS(r.headers.get("Content-Type"));if(r.status===204||r.headers.get("Content-Length")==="0")return{data:i==="json"?{}:i==="formData"?new FormData:i==="stream"?r.body:await r[i](),request:t,response:r};if(i==="stream")return{data:r.body,request:t,response:r};if(i==="json"){let a=await r.text();return{data:a?JSON.parse(a):{},request:t,response:r}}return{data:await r[i](),request:t,response:r}}let s=await r.text(),o=s;try{o=JSON.parse(s)}catch{}return{error:o||{},request:t,response:r}}function $o(e=globalThis.fetch){return async function*({url:t,headers:n,signal:r}){let s=await e(new Request(t,{method:"GET",headers:n,signal:r,redirect:"follow"}));if(!s.ok)throw Object.assign(new Error(`SSE failed: ${s.status} ${s.statusText}`),{status:s.status});if(!s.body)throw new Error("No body in SSE response");let o=s.body.pipeThrough(new TextDecoderStream).getReader(),i=()=>{try{o.cancel()}catch{}};r.addEventListener("abort",i);try{let a="";for(;;){let{done:c,value:p}=await o.read();if(c)break;a=(a+p).replace(/\r\n/g,`
|
|
16
16
|
`).replace(/\r/g,`
|
|
17
17
|
`);let d=a.split(`
|
|
18
18
|
|
|
19
|
-
`);a=d.pop()??"";for(let g of d){let m={},
|
|
20
|
-
`))if(h.startsWith("data:"))
|
|
21
|
-
`)),yield m}}}finally{r.removeEventListener("abort",i),o.releaseLock()}}}async function*mP(e,t,n){let r=e.eventTransport??bo(e.fetch??globalThis.fetch),s=n.signal??new AbortController().signal,o=n.sseDefaultRetryDelay??3e3,i;for(let a=1;!s.aborted;a++)try{let u=new Headers(n.headers);i!==void 0&&u.set("Last-Event-ID",i);for await(let p of r({url:new URL(t).href,headers:u,signal:s}))if(p.id!==void 0&&(i=p.id),p.retry!==void 0&&(o=p.retry),p.data!==void 0)try{yield JSON.parse(p.data)}catch{yield p.data}return}catch(u){if(n.onSseError?.(u),n.sseMaxRetryAttempts!==void 0&&a>=n.sseMaxRetryAttempts)return;let p=Math.min(o*2**(a-1),n.sseMaxRetryDelay??3e4);await new Promise(d=>setTimeout(d,p))}}function Xt(e){let t=s=>(o,i)=>gP(e,pP(e.baseUrl,s,o,i)),n=s=>o=>t(s)(void 0,o);return{session:{list:t("session.list"),get:t("session.get"),create:t("session.create"),delete:t("session.delete"),update:t("session.update"),status:t("session.status"),messages:t("session.messages"),prompt:t("session.prompt"),promptAsync:t("session.promptAsync"),abort:t("session.abort"),revert:t("session.revert"),unrevert:t("session.unrevert"),summarize:t("session.summarize"),command:t("session.command"),share:t("session.share"),unshare:t("session.unshare"),fork:t("session.fork"),diff:t("session.diff"),todo:t("session.todo")},permission:{list:t("permission.list"),reply:t("permission.reply")},question:{list:t("question.list"),reply:t("question.reply"),reject:t("question.reject")},part:{update:t("part.update"),delete:t("part.delete")},file:{list:t("file.list"),read:t("file.read")},find:{files:t("find.files")},vcs:{diff:t("vcs.diff")},global:{event:async(s={})=>({stream:mP(e,`${e.baseUrl.replace(/\/$/,"")}/global/event`,s)}),health:n("global.health"),dispose:n("global.dispose"),config:{get:n("global.config.get"),update:t("global.config.update")}},provider:{list:t("provider.list"),auth:t("provider.auth"),oauth:{authorize:t("provider.oauth.authorize"),callback:t("provider.oauth.callback")}},auth:{set:t("auth.set")},app:{agents:t("app.agents"),skills:t("app.skills"),log:t("app.log")},command:{list:t("command.list")},tool:{ids:t("tool.ids"),list:t("tool.list")},mcp:{status:t("mcp.status"),add:t("mcp.add"),connect:t("mcp.connect"),disconnect:t("mcp.disconnect"),auth:{start:t("mcp.auth.start"),callback:t("mcp.auth.callback"),remove:t("mcp.auth.remove")}},project:{list:t("project.list"),current:t("project.current")},path:{get:t("path.get")}}}var Gm=200;async function fP(e){let t=await e.text().catch(()=>"");try{let n=JSON.parse(t);return n.data?.message||n.error||n.message||t||`HTTP ${e.status}`}catch{return t||`HTTP ${e.status}`}}function Xe(e,t){if(e.error===void 0)return e.data;let n=e.error,r=typeof n=="string"?n:n?.data?.message||n?.message||n?.error||"request failed";throw new b(`${t}: ${r}`,{...e.response?{status:e.response.status,response:e.response}:{}})}function Wm(e){let t=e.runtimeUrl.replace(/\/$/,""),n=Xt({baseUrl:t,fetch:e.fetch});return{messages:async(r={})=>{let s=encodeURIComponent(r.conversationId??e.rootId),o=async(u,p)=>{let d=new URLSearchParams;u!==void 0&&d.set("limit",String(u)),p&&d.set("before",p);let g=`/messages/${s}${d.size?`?${d}`:""}`,m=x=>e.fetch(new Request(`${t}${x}${g}`,{method:"GET",...r.signal?{signal:r.signal}:{}})),f=await m("/beeuni/runtime");if((f.status===404||(f.headers.get("content-type")??"").startsWith("text/html"))&&(f=await m("/beeuni/opencode")),!f.ok)throw new b(`Reading the session transcript failed: ${await fP(f)}`,{status:f.status,response:f});let h=await f.json();return{messages:h.messages??[],hasMore:h.has_more===!0}},i=await o(r.limit===void 0?void 0:Math.min(r.limit,Gm),r.before),a=[...i.messages];for(;r.limit!==void 0&&a.length<r.limit&&i.hasMore&&a.length>0&&(i=await o(Math.min(r.limit-a.length,Gm),a[0].info.id),!!i.messages.length);)a.unshift(...i.messages);return{messages:a,hasMore:i.hasMore}},pending:async()=>{let[r,s,o]=await Promise.all([n.session.status().then(i=>Xe(i,"Reading the session status failed")),n.permission.list().then(i=>Xe(i,"Reading permission requests failed")),n.question.list().then(i=>Xe(i,"Reading questions failed"))]);return{statuses:r??{},permissions:s??[],questions:o??[]}},answerPermission:async(r,s,o)=>{Xe(await n.permission.reply({requestID:r,reply:s,...o!==void 0?{message:o}:{}}),"Answering the permission request failed")},answerQuestion:async(r,s)=>{if(s===null){Xe(await n.question.reject({requestID:r}),"Dismissing the question failed");return}Xe(await n.question.reply({requestID:r,answers:s}),"Answering the question failed")},compact:async r=>{let s=r;if(!s){let o=await n.global.config.get().then(u=>u.error===void 0?u.data:null),i=typeof o?.model=="string"?o.model:"",a=i.indexOf("/");a>0&&a<i.length-1&&(s={providerID:i.slice(0,a),modelID:i.slice(a+1)})}if(!s)throw new b("Cannot compact: no model is set for this session",{code:"MODEL_REQUIRED"});return Xe(await n.session.summarize({sessionID:e.rootId,providerID:s.providerID,modelID:s.modelID}),"Compacting the session failed"),s}}}function Km(e){async function t(){let{runtimeSessionId:n,runtimeUrl:r}=await e.ensureReady();return Wm({runtimeUrl:r,rootId:n,fetch:M})}return{messages:async n=>(await t()).messages(n),pending:async()=>(await t()).pending(),answerPermission:async(n,r,s)=>(await t()).answerPermission(n,r,s),answerQuestion:async(n,r)=>(await t()).answerQuestion(n,r),compact:async n=>(await t()).compact(n)}}function Hm(e){return{setModel:t=>{e.model=t},changeModel:async t=>{let n=await wl(e.projectId,e.sessionId,t);return e.clearPersistedDefaults(),n}}}var Zt=BigInt(4096),Fe=BigInt(0xffffffffffff),Vm=Fe+BigInt(1),yP=Vm/BigInt(2),Ze=BigInt(3600*1e3)*Zt,_o=120*1e3,hP=/^msg_[0-9a-f]{12}[A-Za-z0-9]{14}$/,bP=/^msg_([0-9a-f]{12})/,zm="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function xt(e){let t=bP.exec(e??"");return t?BigInt(`0x${t[1]}`):null}function en(e){return BigInt(Math.trunc(e))*Zt&Fe}function wt(e,t){let n=e-t&Fe;return n>=yP&&(n-=Vm),n}function Ym(e){let t=null;for(let n of e)n!=null&&(t===null||wt(n,t)>BigInt(0))&&(t=n);return t}function _P(e,t){let n=xt(e);return n===null?!1:wt(n,en(t))>Ze}function PP(e,t){let n=t===void 0?null:en(t);return Qm(e,r=>n===null||wt(r,n)<=Ze)}function Qm(e,t){let n=[];for(let r of e){let s=xt(r);s!==null&&t(s)&&n.push(s)}return Ym(n)}function SP(){let e="",t=new Uint8Array(32);for(;e.length<14;){crypto.getRandomValues(t);for(let n of t)n<248&&e.length<14&&(e+=zm[n%62])}return e}function Jm(e){let t=e.random,n=en(e.nowMs-(e.backdateMs??_o)),r=e.newestKnownTime??null;if(r!==null){let o=wt(r,n);o>=BigInt(0)&&o<=Ze&&(n=r+BigInt(1)&Fe)}let s="";if(t)for(let o=0;o<14;o++)s+=zm[Math.min(61,Math.floor(t()*62))];else s=SP();return{id:`msg_${n.toString(16).padStart(12,"0")}${s}`,time:n}}function Po(e={}){let t=e.nowMs??Date.now(),n=en(t-_o),r=Qm(e.after??[],s=>{let o=wt(s,n);return o>=BigInt(0)&&o<=Ze});return Jm({nowMs:t,newestKnownTime:r}).id}function Xm(e){return{scope:()=>Sl(e.projectId,e.sessionId),providerSecretPool:{list:()=>_c(e.projectId,e.sessionId),get:t=>bc(e.projectId,e.sessionId,t),set:(t,n)=>Pc(e.projectId,e.sessionId,t,n)},rescope:t=>xl(e.projectId,e.sessionId,t),setAgent:t=>{e.agent=t},send:async(t,n)=>{await e.ensureReady();let r=n?.model??e.model,s=n?.agent??e.agent,o=r&&s?{}:await e.persistedPromptDefaults(),i=r??o.model,a=s??o.agent,u=Po(),p=await ir(e.projectId,e.sessionId,{clientMessageId:u,messageId:u,remintOnDelivery:!0,parts:[{type:"text",text:t}],clientSentAtMs:Date.now(),...i||a?{overrides:{...i?{model:i}:{},...a?{agent:a}:{}}}:{}});if(p.state==="failed")throw new b("This prompt was refused: its earlier delivery already failed.",{code:"PROMPT_FAILED"});return p}}}var w$="beeuni.transcript.v1",xP=["auth","rate_limit","credits","context_length","output_length","aborted","unknown"];function v$(e){return typeof e=="string"&&xP.includes(e)}var A$=["once","always","reject"],k$=["read","edit","glob","grep","list","bash","task","external_directory","todowrite","question","webfetch","websearch","lsp","doom_loop","skill"];var Zm=async function*(e){let t=k().eventStreamTransport;if(!t){yield*bo(((s,o)=>M(s,o,{timeoutMs:null})))(e);return}let{headers:n,rejected:r}=await Bn(e.url,e.headers);try{yield*t({...e,headers:n})}catch(s){throw s?.status===401&&r(),s}};function Re(){let e=Lm();return e||(k().billingEnabled??!1?"":Ll())}async function So(e,t){return(await e.json().catch(()=>({})))?.error||e.statusText||t}function xo(e){if(!e)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return e}async function ef(e){let t=xo(e),n=await M(`${t}/env`);if(!n.ok)throw new Error(await So(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function tf(e,t,n){let r=xo(e),s=await M(`${r}/env/${encodeURIComponent(t)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!s.ok)throw new Error(await So(s,"Failed to save secret"))}async function nf(e,t){let n=xo(e),r=await M(`${n}/env/${encodeURIComponent(t)}`,{method:"DELETE"});if(!r.ok)throw new Error(await So(r,"Failed to delete secret"))}var wP={list:ef,set:tf,delete:nf};async function vP(e,t,n){let r=e;for(;r.endsWith("/");)r=r.slice(0,-1);let s=await M(`${r}/beeuni/triggers${t}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}}),o=await s.json();if(!s.ok)throw new Error(o?.error||o?.message||`Request failed with ${s.status}`);return o}async function br(e,t){let n=await e.json().catch(()=>({}));return n?.error||n?.message||e.statusText||t}function tn(e){if(!e)throw new Error("[beeuni-pty] Server URL not ready \u2014 sandbox is still loading");return te(e)}async function rf(e){let t=tn(e),n=await M(`${t}/beeuni/pty`);if(!n.ok)throw new Error(await br(n,"Failed to list terminals"));return n.json()}async function sf(e,t){let n=tn(e),r=await M(`${n}/beeuni/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t??{})});if(!r.ok)throw new Error(await br(r,"Failed to create terminal"));return r.json()}async function of(e,t,n){let r=tn(e),s=await M(`${r}/beeuni/pty/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok)throw new Error(await br(s,"Failed to update terminal"));return s.json()}async function af(e,t){let n=tn(e),r=await M(`${n}/beeuni/pty/${encodeURIComponent(t)}`,{method:"DELETE"});if(!r.ok)throw new Error(await br(r,"Failed to remove terminal"))}async function cf(e,t,n){let r=tn(t),o=`${(()=>{try{let p=new URL(r);return p.protocol==="https:"?p.protocol="wss:":p.protocol==="http:"&&(p.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&p.protocol==="ws:"&&(p.protocol="wss:"),te(p.toString())}catch{return r.replace("https://","wss://").replace("http://","ws://")}})()}/beeuni/pty/${encodeURIComponent(e)}/connect`,i=new URLSearchParams,a=await Ft();a&&i.set("token",a),n?.wake&&i.set("wake","1");let u=i.toString();return u?`${o}${o.includes("?")?"&":"?"}${u}`:o}function AP(e){let t=e.reason.trim().toLowerCase();return t.includes("pty not found")?"replace":t.includes("pty exited")?"ended":e.hadError||t.includes("idle timeout")||t.includes("upstream error")||e.code!==1e3?"reconnect":"ended"}var Le="\x1B",uf="\x07",kP="\0",wo=`(?:${uf}|${Le}\\\\)`,RP=[new RegExp(`${Le}\\]697;[^${uf}${Le}]*${wo}`,"g"),new RegExp(`${kP}?\\{"cursor":\\d+\\}`,"g"),new RegExp(`${Le}\\][0-9]+;rgb:[0-9a-fA-F/]+${wo}`,"g"),new RegExp(`${Le}\\]4;[0-9]+;rgb:[0-9a-fA-F/]+${wo}`,"g"),new RegExp(`${Le}\\[\\??[0-9;]*\\$y`,"g"),new RegExp(`${Le}\\[\\d+;\\d+R`,"g"),new RegExp(`${Le}\\[\\?[0-9;]*c`,"g")];function CP(e){let t=e;for(let n of RP)t=t.replace(n,"");return t}var IP={list:rf,create:sf,update:of,remove:af,webSocketUrl:cf};async function C(e,t,n,r){let s=e;for(;s.endsWith("/");)s=s.slice(0,-1);let o=await M(`${s}${t}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),i=await o.text(),a={};try{a=i?JSON.parse(i):{}}catch{a={}}if(!o.ok)throw new Error(a?.error||a?.message||a?.details||i.slice(0,200)||`Request failed with ${o.status}`);return a}async function V$(e,t={}){let n=new URLSearchParams;t.projectId&&n.set("project_id",t.projectId),t.status&&n.set("status",t.status);let r=n.toString()?`?${n}`:"";return C(e,`/beeuni/tasks${r}`)}async function z$(e,t){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}`)}async function Y$(e,t){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}/events`)}async function Q$(e,t){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}/status`)}async function J$(e,t){return C(e,"/beeuni/tasks",{method:"POST",body:JSON.stringify(t)})}async function X$(e,t,n){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function Z$(e,t){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}/start`,{method:"POST"})}async function e0(e,t){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}/approve`,{method:"POST"})}async function t0(e,t){return C(e,`/beeuni/tasks/${encodeURIComponent(t)}`,{method:"DELETE"})}async function n0(e,t){let n=t?`?project_id=${encodeURIComponent(t)}`:"";return C(e,`/beeuni/tickets${n}`)}async function r0(e,t){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}`)}async function s0(e,t){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}/events`)}async function o0(e,t){return C(e,"/beeuni/tickets",{method:"POST",body:JSON.stringify(t)})}async function i0(e,t,n){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function a0(e,t,n){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}/status`,{method:"POST",body:JSON.stringify(n)})}async function c0(e,t,n){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function u0(e,t,n){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function l0(e,t,n){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function p0(e,t){return C(e,`/beeuni/tickets/${encodeURIComponent(t)}`,{method:"DELETE"})}async function d0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/columns`)}async function g0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function m0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/fields`)}async function f0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function y0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/templates`)}async function h0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function b0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/pm-session`,{method:"POST"})}async function _0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/agents`)}async function P0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function S0(e,t,n,r){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function x0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function w0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}/persona`)}async function v0(e,t,n=200){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/activity?limit=${n}`)}async function A0(e){return C(e,"/beeuni/projects")}async function k0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}`)}async function R0(e,t){return C(e,`/beeuni/projects/by-session/${encodeURIComponent(t)}`)}async function C0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/sessions`)}async function I0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}`,{method:"DELETE"})}async function T0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function E0(e,t,n="all"){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones?status=${n}`)}async function M0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`)}async function O0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/events`)}async function D0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function j0(e,t,n,r){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function $0(e,t,n,r){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function U0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function F0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function L0(e,t){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials`)}async function B0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}/events`)}async function N0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function q0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}`)}async function G0(e,t,n){return C(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var TP=1e4,EP={retryOnAuthError:!1};function vt(e,t,n){return C(e,t,{signal:AbortSignal.timeout(TP),...n},EP)}async function W0(e,t=!1){return(await vt(e,`/beeuni/services${t?"?all=true":""}`)).services??[]}async function K0(e){return(await vt(e,"/beeuni/services/templates")).templates??[]}async function H0(e,t){return(await vt(e,`/beeuni/services/${encodeURIComponent(t)}/logs`)).logs??[]}async function V0(e,t,n){let r=n==="delete",s=r?`/beeuni/services/${encodeURIComponent(t)}`:`/beeuni/services/${encodeURIComponent(t)}/${n}`;return vt(e,s,{method:r?"DELETE":"POST"})}async function z0(e,t){return vt(e,`/beeuni/services/reconcile${t?"?reload=true":""}`,{method:"POST"})}async function Y0(e,t){return vt(e,"/beeuni/services/register",{method:"POST",body:JSON.stringify(t)})}var Ce=new Map,MP=256,nn=class extends Error{constructor(t="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(t),this.name="RuntimeNotReadyError"}};function et(){let e=Re();if(!e)throw new nn;return Ie(e)}function Ie(e){if(!e)throw new Error("[opencode-sdk] getClientForUrl called without a url");let t=Ce.get(e);if(t)return Ce.delete(e),Ce.set(e,t),t;if(!ns())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureBeeuni()/createBeeuni() before talking to a sandbox runtime.");let n=Xt({baseUrl:e,fetch:M,eventTransport:Zm});return Ce.set(e,n),Ce.size>MP&&Ce.delete(Ce.keys().next().value),n}function rU(e){Ce.delete(e)}function sU(){Ce.clear()}var _r=new Map;function oU(e){if(!e)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let t=_r.get(e);if(t)return t;let n=Xt({baseUrl:e,fetch});return _r.set(e,n),n}function iU(e){_r.delete(e)}function aU(){_r.clear()}async function OP(e){let t=await e.text().catch(()=>"");try{let n=JSON.parse(t);return n?.error||n?.message||t||e.statusText||`HTTP ${e.status}`}catch{return t||e.statusText||`HTTP ${e.status}`}}async function cU(e){let t=Re();if(!t)throw new b("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let n=e==="full"?"/beeuni/refresh":"/global/dispose",r=await M(`${t}${n}`,{method:"POST"}),s=r.headers.get("content-type")??"",o=/^application\/([\w.+-]+\+)?json\b/i.test(s.trim());if(!r.ok)throw new b(`System reload failed (${r.status}): ${await OP(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});if(!o)throw new b(`System reload endpoint is unavailable on this sandbox (${n})`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});let i;try{i=await r.json()}catch(u){throw new b(`System reload returned malformed JSON from ${n}: ${u instanceof Error?u.message:String(u)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"})}let a=i===!0||typeof i=="object"&&i!==null&&i.ok===!0;return{success:a,mode:e,steps:a?[e==="full"?"refreshed workspace and restarted runtime":"reloaded config in place"]:[],errors:a?[]:[`the sandbox did not confirm the reload (${n})`]}}var lf="frontend";function Pr(e,t,n){(e==="error"?console.error:e==="warn"?console.warn:e==="debug"?console.debug:console.log)(`[${lf}] ${t}`,...n?[n]:[]);try{et().app.log({service:lf,level:e,message:t,extra:n})}catch{}}var Be={debug:(e,t)=>Pr("debug",e,t),info:(e,t)=>Pr("info",e,t),warn:(e,t)=>Pr("warn",e,t),error:(e,t)=>Pr("error",e,t)};function DP(e){return{type:"heartbeat-gap",gapMs:e}}function jP(e){switch(e.type){case"message.updated":return{type:"message.updated",sessionID:e.properties.sessionID,message:e.properties.info};case"message.removed":return{type:"message.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID};case"message.part.updated":return{type:"message.part.updated",sessionID:e.properties.sessionID,part:e.properties.part};case"message.part.removed":return{type:"message.part.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID,partID:e.properties.partID};case"session.status":return{type:"session.status",sessionID:e.properties.sessionID,status:e.properties.status};case"session.idle":return{type:"session.idle",sessionID:e.properties.sessionID};case"session.error":return{type:"session.error",sessionID:e.properties.sessionID,error:e.properties.error};case"question.asked":return{type:"question.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,questions:e.properties.questions,tool:e.properties.tool};case"question.replied":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"replied",answers:e.properties.answers};case"question.rejected":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"rejected"};case"permission.asked":return{type:"permission.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,permission:e.properties.permission,patterns:e.properties.patterns,tool:e.properties.tool};case"permission.replied":return{type:"permission.replied",sessionID:e.properties.sessionID,requestID:e.properties.requestID,reply:e.properties.reply};case"todo.updated":return{type:"todo.updated",sessionID:e.properties.sessionID,todos:e.properties.todos};case"server.connected":return{type:"connection",status:"connected"};default:return null}}var $P={now:()=>Date.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),random:()=>Math.random()},UP=16,FP=8,LP=6e4,BP=5e3,NP=250,qP=1e3,GP=3e4,WP=5,KP=1e4,HP=4,VP=.5,zP=3e3,YP=3e4,QP=2e4,JP=2e3,XP=8;function ZP(e){if(e.type==="session.status")return`session.status:${e.properties.sessionID}`;if(e.type==="lsp.updated")return"lsp.updated"}function eS(e,t){if(e?.type!=="message.part.delta"||t.type!=="message.part.delta")return;let n=e.properties,r=t.properties;if(n.partID!==r.partID||n.field!==r.field||n.messageID!==r.messageID||n.sessionID!==r.sessionID)return;let s=e.coalesced??[e];return s.push(t),{...t,properties:{...r,delta:n.delta+r.delta},coalesced:s}}function pf(e){if(e.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let t=()=>{};return{promise:new Promise(r=>{t=()=>r(),e.addEventListener("abort",t,{once:!0})}),cleanup:()=>e.removeEventListener("abort",t)}}var rn=new WeakMap;function tS(e,t,n){let r=t.timers??$P,s=t.connectTimeoutMs??QP,o=t.heartbeatTimeoutMs??LP,i=t.maxConsecutiveHardFailures??XP,a=new AbortController;function u(_,...S){for(let E of n){let w=_(E);if(w)try{w(...S)}catch(P){console.warn("[opencode-events] subscriber handler threw, skipping",P)}}}let p=null,d=!1,g=_=>{p!==_&&(p=_,_&&u(S=>S.onConnectionChange,_))},m=r.now(),f=null,h=[],x,D=0,j=new Map,L=()=>{if(x&&r.clearTimeout(x),x=void 0,h.length===0)return;let _=h;h=[],j.clear(),D=r.now(),m=r.now();for(let S of _)S&&u(E=>E.onEvent,S.event)},y=()=>{if(x)return;let _=r.now()-D;x=r.setTimeout(L,Math.max(0,UP-_))};return(async()=>{let _=0,S=0,E=0;for(;!a.signal.aborted;){let w=!1,P=!1,A,I,T=null,B=r.now(),$=new AbortController;g("connecting");let N=pf(a.signal);N.promise.then(()=>$.abort());try{let ie=await new Promise((ct,We)=>{let ee=!1;I=r.setTimeout(()=>{ee||(ee=!0,Be.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:s}),$.abort(),We(new Error(`SSE connect timed out after ${s}ms`)))},s),e.global.event({signal:$.signal,sseDefaultRetryDelay:zP,sseMaxRetryDelay:YP,sseMaxRetryAttempts:1}).then(Se=>{ee||(ee=!0,r.clearTimeout(I),ct(Se))},Se=>{ee||(ee=!0,r.clearTimeout(I),We(Se))})}),{stream:Dt}=ie;if(f){let ct=r.now()-f.lastActivityAt,We=f.eventful;f=null,(We||ct>BP)&&u(ee=>ee.onGapRehydrate,ct)}m=r.now();let Ge=()=>{r.clearTimeout(A),A=r.setTimeout(()=>{Be.warn("SSE heartbeat timeout, forcing reconnect"),$.abort()},o)};Ge();let En=r.now(),ib=Dt[Symbol.asyncIterator]();for(;!$.signal.aborted;){let ct=ib.next().then(xe=>({kind:"next",result:xe}),xe=>({kind:"error",error:xe})),We=pf($.signal),ee=await Promise.race([ct,We.promise.then(()=>({kind:"aborted"}))]);if(We.cleanup(),ee.kind==="aborted")break;if(ee.kind==="error")throw ee.error;if(ee.result.done)break;g("open"),Ge();let Se=ee.result.value,ut=Se&&typeof Se=="object"&&"payload"in Se?Se.payload:Se;if(!ut?.type)continue;ut.type!=="server.connected"&&(w=!0);let Zr=eS(h[h.length-1]?.event,ut);if(Zr)h[h.length-1]={type:Zr.type,event:Zr};else{let xe=ZP(ut);if(xe){let hi=j.get(xe);hi!==void 0&&(h[hi]=void 0),j.set(xe,h.length)}h.push({type:ut.type,event:ut})}y(),!(r.now()-En<FP)&&(En=r.now(),await new Promise(xe=>r.setTimeout(xe,0)))}P=w}catch(ie){if(a.signal.aborted)break;T=ie;let Dt=String(ie),Ge=jt(ie)||jt(ie?.cause);if(Be.error("SSE event stream error",{error:Dt,retryCount:_,isAuthError:Ge}),Ge)try{bs(),await hs(),Be.info("SSE: refreshed auth token after auth error")}catch(En){Be.error("SSE: failed to refresh auth token",{error:String(En)})}}finally{r.clearTimeout(A),r.clearTimeout(I),$.abort(),N.cleanup(),L()}if(a.signal.aborted)break;let q=r.now()-B,le=T?.cause?.status;if(S=!w&&(typeof le=="number"&&le>=400||q<JP)?S+1:0,S>=i){Be.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:S,lastError:String(T)}),p=null,d=!0,u(ie=>ie.onParked,{consecutiveFailures:S,lastError:T});break}g("lost"),f={lastActivityAt:m,eventful:(f?.eventful??!1)||w},E=P&&q<KP?E+1:0;let at=P&&E<=HP;at?_=0:(_++,_>1&&Be.warn("SSE event stream reconnecting",{retryCount:_}));let _e=at?NP:Math.min(qP*2**Math.min(_-1,WP),GP),Pe=Math.round(_e*(1+VP*(r.random?.()??0)));await new Promise(ie=>{let Dt=r.setTimeout(ie,Pe),Ge=()=>{r.clearTimeout(Dt),ie()};a.signal.addEventListener("abort",Ge,{once:!0})})}})(),{subscribers:n,connectionState:()=>p,isParked:()=>d,teardown:()=>{p=null,a.abort(),x&&r.clearTimeout(x)}}}function vo(e){let{onEvent:t,onGapRehydrate:n,onParked:r,onConnectionChange:s,signal:o}=e,i=e.client??(e.url?Ie(e.url):void 0);if(!i)throw new Error("openEventStream needs the session runtime `url`");let a={onEvent:t,onGapRehydrate:n,onParked:r,onConnectionChange:s},u=rn.get(i);if(u?.isParked()&&(rn.delete(i),u=void 0),!u)u=tS(i,e,new Set([a])),rn.set(i,u);else{u.subscribers.add(a);let f=u.connectionState();f&&s?.(f)}let p=u,d=!1,g=()=>{d||(d=!0,o&&o.removeEventListener("abort",m),p.subscribers.delete(a),p.subscribers.size===0&&(p.teardown(),rn.get(i)===p&&rn.delete(i)))},m=()=>g();return o&&(o.aborted?g():o.addEventListener("abort",m,{once:!0})),{close:g}}function df(e){return{abort:async()=>{let{runtimeSessionId:t,runtimeUrl:n}=await e.ensureReady();return Ie(n).session.abort({sessionID:t})},rewind:async t=>{let{runtimeSessionId:n,runtimeUrl:r}=await e.ensureReady();return Ie(r).session.revert({sessionID:n,messageID:t})},restoreRewind:async()=>{let{runtimeSessionId:t,runtimeUrl:n}=await e.ensureReady();return Ie(n).session.unrevert({sessionID:t})},stream:async t=>{let{runtimeUrl:n}=await e.ensureReady();return vo({url:n,onEvent:t.onEvent,onGapRehydrate:t.onGapRehydrate,signal:t.signal})}}}function yf(e){if(e.error){let t=e.error,n=t?.data?.message||t?.message||(typeof t?.error=="string"?t.error:null)||"SDK request failed";throw new b(n,{status:t?.response?.status??t?.status,response:t?.response,details:t})}return e.data}async function At(e){let t=await e.text().catch(()=>""),n=null;try{n=JSON.parse(t)}catch{}return n?.error||t||e.statusText||`HTTP ${e.status}`}function Y(e){let t=(e??Re()).trim();if(!t)throw new nn;return t}async function xr(e,t){let n=await M(`${Y(t)}${e}`);if(!n.ok)throw new b(await At(n),{status:n.status,response:n});return n.json()}var Ro=["/workspace","/tmp","/home","/opt"],nS=Ro.filter(e=>e!=="/workspace");function hf(e){return Ro.some(t=>e===t||e.startsWith(`${t}/`))}function un(e){return hf(e)?e:`/workspace/${e.replace(/^\/+/,"")}`}function tt(e){let t=e||"";if(t==="/workspace"||t==="/workspace/")return"";if(t.startsWith("/workspace/"))t=t.slice(11);else if(nS.some(n=>t===n||t.startsWith(`${n}/`)))return t;for(;t.startsWith("/");)t=t.slice(1);return t}var bf=tt;async function ln(e,t){let n=Y(t),r=tt(e)||".";return(await xr(`/file?path=${encodeURIComponent(r)}`,n)).map(o=>({...o,path:o.absolute||`/workspace/${o.path}`}))}async function pn(e,t){let n=Y(t),r=tt(e),s=await M(`${n}/file/content?path=${encodeURIComponent(r)}`);if(!s.ok)throw new b(await At(s),{status:s.status,response:s});return s.json()}async function rS(e,t,n){let r=Y(n),s=tt(e),o=await M(`${r}/file/raw?path=${encodeURIComponent(s)}`);if(!o.ok)throw new b(await At(o),{status:o.status,response:o});if((o.headers.get("content-type")||"").includes("text/html"))throw new b("File could not be loaded (raw byte route unavailable)",{status:o.status,response:o,code:"INVALID_CONTENT_TYPE"});let i=await o.blob();return t&&(!i.type||i.type==="application/octet-stream")?new Blob([i],{type:t}):i}var sS=8,Sr=0,_f=[];async function oS(){if(Sr<sS){Sr++;return}await new Promise(e=>_f.push(e)),Sr++}function iS(){Sr--,_f.shift()?.()}function aS(e,t){let n=Y(t);return Xn(`${n}/file/raw?path=${encodeURIComponent(tt(e))}`)}async function dn(e,t){await oS();try{let n=Y(t);try{return await rS(e,void 0,n)}catch{}let r=await pn(e,n);if(r.encoding==="base64"&&r.content){let s=Uint8Array.from(atob(r.content),o=>o.charCodeAt(0));return new Blob([s],{type:r.mimeType||"application/octet-stream"})}return new Blob([r.content??""],{type:r.mimeType||"text/plain;charset=utf-8"})}finally{iS()}}async function wr(e){return xr("/file/status",Y(e))}async function vr(e,t,n){let r=Y(n),s=new URLSearchParams({query:e});return t?.type&&s.set("type",t.type),t?.limit&&s.set("limit",String(t.limit)),xr(`/find/file?${s.toString()}`,r)}async function Ar(e,t){let n=Y(t);return(await xr(`/find?pattern=${encodeURIComponent(e)}`,n)).map(s=>({path:typeof s.path=="string"?s.path:s.path?.text??"",lines:typeof s.lines=="string"?s.lines:s.lines?.text??"",line_number:s.line_number,absolute_offset:s.absolute_offset,submatches:(s.submatches??[]).map(o=>({start:o.start,end:o.end}))}))}var sn=[400,1200],cS=e=>e===408||e===429||e===502||e===503||e===504,gf=e=>new Promise(t=>setTimeout(t,e));function uS(e){let t=e?.name;return t==="TimeoutError"||t==="AbortError"}var Ao=3e4,Pf=15*6e4,lS=256;function on(e){if(typeof e!="number"||!Number.isFinite(e)||e<=0)return Ao;let t=Ao+e/lS;return Math.min(Pf,Math.max(Ao,Math.round(t)))}async function pS(e){let t=await e.text().catch(()=>""),n=null;try{n=t?JSON.parse(t):null}catch{}let r=n?.error||n?.message||n?.data?.message;return typeof r=="string"&&r.trim()?r.trim():(e.headers.get("content-type")||"").includes("text/html")||/<html[\s>]/i.test(t)?e.status===502||/bad gateway/i.test(t)?"Bad gateway while reaching the sandbox upload service. Please retry.":e.statusText||`HTTP ${e.status}`:t.replace(/\s+/g," ").trim().slice(0,500)||e.statusText||`HTTP ${e.status}`}async function an(e,t){let n;for(let s=0;s<=sn.length;s++){let o;try{o=await t(e())}catch(a){if(n=a,uS(a)||s===sn.length)break;await gf(sn[s]);continue}if(o.ok)return o.json();let i=await pS(o);if(n=new b(`Upload failed (${o.status}): ${i}`,{status:o.status,response:o}),!cS(o.status)||s===sn.length)throw n;await gf(sn[s])}if(n instanceof b)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new b(`Upload failed: ${r}`)}var ko=8*1024*1024;function dS(e,t){if(!(typeof e?.size!="number"||!Number.isFinite(t))&&!(e.size>=t))throw new b(`Upload verification failed for ${e.path}: expected ${t} bytes, received ${e.size}`,{code:"UPLOAD_SIZE_MISMATCH"})}function mf(e,t){try{e?.onProgress?.(t)}catch{}}function ff(e,t,n){let r=new FormData,s=(t??"").trim();return s&&r.append("path",s.startsWith("/")?s:`/${s}`),n&&r.append("filename",n),n?r.append("file",e,n):r.append("file",e),r}function gS(e){let t=e.lastIndexOf("/");return t<0?{parent:"",name:e}:{parent:e.slice(0,t)||"/",name:e.slice(t+1)}}async function gn(e,t,n,r,s){let o=typeof r=="string"?r:void 0,i=typeof r=="string"?s:r,a=Y(o),u=on(e.size),p=n||(e instanceof File?e.name:"")||"";if(e.size<=ko){let f=await an(()=>ff(e,t,p),h=>M(`${a}/file/upload`,{method:"POST",body:h},{timeoutMs:u}));return dS(f[0],e.size),mf(i,{loadedBytes:e.size,totalBytes:e.size}),f}let g=(await an(()=>ff(new Blob([],{type:e.type}),t,p),f=>M(`${a}/file/upload`,{method:"POST",body:f},{timeoutMs:on(0)})))[0]?.path;if(!g)throw new b("Upload reservation returned no file path",{code:"UPLOAD_NO_RESULT"});let m=gS(g);if(!m.name)throw new b(`Upload reservation returned an invalid file path: ${g}`,{code:"UPLOAD_INVALID_PATH"});try{for(let f=0;f<e.size;f+=ko){let h=Math.min(e.size,f+ko),x=e.slice(f,h,e.type),D=await an(()=>{let j=new FormData;return m.parent&&j.append("path",m.parent),j.append("filename",m.name),j.append("first",f===0?"true":"false"),j.append("offset",String(f)),j.append("file",x,m.name),j},j=>M(`${a}/file/append`,{method:"POST",body:j},{timeoutMs:on(x.size)}));if(D.path!==g||D.size!==h)throw new b(`Upload verification failed for ${g}: expected ${h} bytes, received ${D.size}`,{code:"UPLOAD_SIZE_MISMATCH"});mf(i,{loadedBytes:h,totalBytes:e.size})}}catch(f){throw await kt(g,a).catch(()=>{}),f}return[{path:g,size:e.size}]}function mS(e,t,n){let r=Y(n);return an(()=>{let s=new FormData;return t&&s.append("path",t),s.append("file",{uri:e.uri,name:e.name,type:e.type||"application/octet-stream"}),s},s=>M(`${r}/file/upload`,{method:"POST",body:s},{timeoutMs:fS}))}var fS=Pf;function yS(e,t,n){let r=Y(n),s=on(t.size);return an(()=>{let o=new FormData;return o.append(e,t,e.split("/").pop()||"file"),o},o=>M(`${r}/file/upload`,{method:"POST",body:o},{timeoutMs:s}))}var cn=class extends b{path;constructor(t){super(`A file or folder already exists at ${t}`,{status:409,code:"FILE_EXISTS"}),this.name="FileExistsError",this.path=t}};async function kr(e,t){let n=Y(t),r=e.trim(),o=(r.startsWith("/")?r:`/${r}`).split("/"),i=o.pop()||"untitled",a=o.join("/")||"/workspace",u=un(`${a}/${i}`),p=[];try{p=await ln(Sf(u),n)}catch(g){if(!(g instanceof b&&g.status===404))throw g}if(p.some(g=>g.name===xf(u)))throw new cn(u);let d=await wf(u,new Blob([],{type:"application/octet-stream"}),n,{overwrite:!1});return[{path:d.path,size:d.bytes}]}async function Rr(e,t,n){let r=Y(n);return yS(t,await dn(e,r),r)}function hS(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Sf(e){let t=e.lastIndexOf("/");return t<=0?"/":e.slice(0,t)}function xf(e){return e.slice(e.lastIndexOf("/")+1)}function bS(){let e=typeof crypto<"u"?crypto:void 0;if(e?.randomUUID)return e.randomUUID();if(e?.getRandomValues){let t=new Uint8Array(8);return e.getRandomValues(t),[...t].map(n=>n.toString(16).padStart(2,"0")).join("")}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}async function Cr(e,t,n){let r=Y(n),s=un(hS(e.trim()));return wf(s,t,r,{overwrite:!0})}async function wf(e,t,n,r){let s=xf(e);if(!s)throw new b(`writeFile needs a file path, got "${e}"`,{code:"INVALID_PATH"});let o=Sf(e);await mn(o,n).catch(()=>{});let i=bS(),a=await gn(t,o,`.${s}.beeuni-write-${i}`,n),u=a[0]?.path;if(!u)throw new b(`Upload returned no file for ${e}`,{code:"UPLOAD_NO_RESULT"});let p=un(u);try{await vf(p,e,n,r.overwrite)}catch(g){throw await kt(p,n).catch(()=>{}),!r.overwrite&&g instanceof b&&g.status===409?new cn(e):g}let d=a[0]?.size;return{path:e,bytes:typeof d=="number"?d:t.size}}async function kt(e,t){let n=await M(`${Y(t)}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!n.ok)throw new b(`Delete failed (${n.status}): ${await At(n)}`,{status:n.status,response:n});return n.json()}async function mn(e,t){let n=await M(`${Y(t)}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!n.ok)throw new b(`Mkdir failed (${n.status}): ${await At(n)}`,{status:n.status,response:n});return n.json()}async function Ir(e,t,n){return vf(e,t,Y(n),!0)}async function vf(e,t,n,r){let s=await M(`${n}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r?{from:e,to:t}:{from:e,to:t,overwrite:!1})});if(!s.ok)throw new b(`Rename failed (${s.status}): ${await At(s)}`,{status:s.status,response:s});return s.json()}async function Af(){return yf(await et().project.current())}async function Co(){return yf(await et().global.health())}async function kf(){try{return(await Co()).healthy===!0}catch{return!1}}var _S={list:ln,read:pn,readBlob:dn,status:wr,findFiles:vr,findText:Ar,upload:gn,write:Cr,create:kr,copy:Rr,remove:kt,mkdir:mn,rename:Ir,currentProject:Af,health:Co,isReachable:kf,toDaemonPath:tt,toSandboxAbsolutePath:un,toWorkspaceRelative:bf};function Rf(e){return{list:async t=>ln(t,(await e()).runtimeUrl),read:async t=>pn(t,(await e()).runtimeUrl),readBlob:async t=>dn(t,(await e()).runtimeUrl),status:async()=>wr((await e()).runtimeUrl),findFiles:async(t,n)=>vr(t,n,(await e()).runtimeUrl),findText:async t=>Ar(t,(await e()).runtimeUrl),upload:async(t,n,r,s)=>gn(t,n,r,(await e()).runtimeUrl,s),write:async(t,n)=>Cr(t,n,(await e()).runtimeUrl),create:async t=>kr(t,(await e()).runtimeUrl),copy:async(t,n)=>Rr(t,n,(await e()).runtimeUrl),remove:async t=>kt(t,(await e()).runtimeUrl),mkdir:async t=>mn(t,(await e()).runtimeUrl),rename:async(t,n)=>Ir(t,n,(await e()).runtimeUrl)}}function Cf(e){return{get:t=>or(e.projectId,e.sessionId,t),presence:(t,n)=>c.put(`/projects/${e.projectId}/sessions/${e.sessionId}/presence`,t,{showErrors:!1,keepalive:n?.keepalive??!t.active}),cost:()=>dr(e.sessionId,{projectId:e.projectId}),update:t=>yl(e.projectId,e.sessionId,t),delete:()=>(e.forgetReady(),hl(e.projectId,e.sessionId)),start:(...t)=>Ye(e.projectId,e.sessionId,...t),startOrThrow:(...t)=>Nl(e.projectId,e.sessionId,...t),restart:()=>(e.forgetReady(),ar(e.projectId,e.sessionId)),stop:()=>(e.forgetReady(),cr(e.projectId,e.sessionId)),configState:()=>bl(e.projectId,e.sessionId),reloadConfig:t=>(e.forgetReady(),_l(e.projectId,e.sessionId,t)),reloadConfigStream:(...t)=>(e.forgetReady(),Pl(e.projectId,e.sessionId,...t)),setSharing:t=>Qu(e.projectId,e.sessionId,t),previews:()=>el(e.projectId,e.sessionId),participants:()=>Ju(e.projectId,e.sessionId),watch:()=>Xu(e.projectId,e.sessionId),setWatch:t=>Zu(e.projectId,e.sessionId,t),commit:t=>Nu(e.projectId,e.sessionId,t),publicShares:{list:()=>tl(e.projectId,e.sessionId),create:(...t)=>nl(e.projectId,e.sessionId,...t),revoke:(...t)=>rl(e.projectId,e.sessionId,...t)}}}function If(e){return{reminders:{list:()=>Gd(e.projectId,e.sessionId),create:t=>Wd(e.projectId,e.sessionId,t),update:(t,n)=>Ls(e.projectId,e.sessionId,t,n),remove:t=>Bs(e.projectId,e.sessionId,t)},audit:(t,n)=>il(e.projectId,e.sessionId,t,n),attachments:{upload:(t,n)=>xm(e.projectId,e.sessionId,t,n),read:(t,n)=>wm(`beeuni-attachment://${e.projectId}/${e.sessionId}/${t}`,n)},transcript:t=>al(e.projectId,e.sessionId,t),messageAuthors:()=>Al(e.projectId,e.sessionId),modelUsage:()=>kl(e.projectId,e.sessionId),transcriptSync:t=>cl(e.projectId,e.sessionId,t),turn:()=>ul(e.projectId,e.sessionId),prompts:{create:t=>ir(e.projectId,e.sessionId,t),list:()=>ll(e.projectId,e.sessionId),remove:t=>pl(e.projectId,e.sessionId,t),retry:t=>ml(e.projectId,e.sessionId,t),edit:(t,n)=>dl(e.projectId,e.sessionId,t,n),interrupt:t=>gl(e.projectId,e.sessionId,t),hold:t=>fl(e.projectId,e.sessionId,t)},ensureReady:e.ensureReady}}function SS(e,t){return e?.some(n=>n.startsWith("session."))?e.includes(t):!0}var xS=["control_plane","provider_ingress","daemon","upstream_port"];function Tf(e){return typeof e=="string"&&xS.includes(e)?e:null}function Ef(e){return e?e.runtimeReady!==void 0?e.runtimeReady===!0:e.harness?e.harness.ready===!0:e.opencode!==void 0?e.opencode==="ok"||e.opencode===!0:e.status!=="starting"&&e.status!=="down"&&e.status!=="error":!1}async function Mf(e,t){let n=(e===void 0?Re():e)||null;if(!n)return{status:0,ok:!1,health:null,body:"",hop:null,upstreamStatus:null};let r=await M(`${n}/beeuni/health`,{method:"GET",...t},{retryOnAuthError:!1}),s=await r.text().catch(()=>""),o=null;try{o=s?JSON.parse(s):null}catch{o=null}let i=o,a=Tf(r.headers.get("X-Beeuni-Proxy-Hop"))??Tf(o?.hop),u=Number(r.headers.get("X-Beeuni-Upstream-Status")),p=o?.upstream_status,d=Number.isFinite(u)&&u>0?u:typeof p=="number"?p:null;return{status:r.status,ok:r.ok,health:i,body:s,hop:a,upstreamStatus:d}}var Of=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,Df=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,jf=/^https?:\/\/(?:dev|staging|prod|preview)-p(\d+)-([a-z0-9-]+)\.[^/]+?(?::(\d+))?(\/.*)?$/i,$f=new Set([22,4096,parseInt($e.BEEUNI_MASTER,10)]);function wS(e){return Df.test(e)}function Tr(e){if(!e)return"/";let t=e,n=t.indexOf("](");n!==-1&&(t=t.slice(0,n));let r=t.toLowerCase().indexOf("%5d(");return r!==-1&&(t=t.slice(0,r)),t?t.startsWith("/")?t:`/${t}`:"/"}function vS(e){let t=e.indexOf("](");return t===-1?e:e.slice(0,t)}var AS=new Set(["'",'"',"`","<","(","["]),kS=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function RS(e){let t=0,n=e.length;for(;t<n&&(e[t]===" "||e[t]===" ");)t++;for(;n>t&&(e[n-1]===" "||e[n-1]===" ");)n--;for(;t<n&&AS.has(e[t]);)t++;for(;n>t&&kS.has(e[n-1]);)n--;return e.slice(t,n)}function CS(e){return e.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var IS=/^\/proxy\/(\d{1,5})(\/.*)?$/,TS=/^\/(connectors|settings|dashboard|projects|agents|skills|tools|commands|support|changelog|files|p|browser|desktop|terminal|sessions|services|workspace|channels|scheduled-tasks|marketplace|templates|tunnel|admin|auth)(\/|$|\?)/;function ES(e){if(!e)return!1;try{let t=new URL(e);return t.hostname!=="localhost"&&t.hostname!=="127.0.0.1"?!1:TS.test(t.pathname)}catch{return!1}}function Er(e){if(!e)return null;let t=RS(vS(e.trim())),n=Nf(t);if(n){let r=Tr(n.path||"/");return{originalUrl:`http://localhost:${n.port}${r}`,port:n.port,path:r}}try{let r=new URL(t);if(r.protocol!=="http:"&&r.protocol!=="https:"||r.hostname!=="localhost"&&r.hostname!=="127.0.0.1"||!r.port)return null;let s=parseInt(r.port,10);if(!Number.isInteger(s)||s<1||s>65535)return null;let o=`${r.pathname||"/"}${r.search}${r.hash}`,i=parseInt($e.BEEUNI_MASTER,10);if(s===i){let u=r.pathname.match(IS);if(u){let p=parseInt(u[1],10);if(p>=1&&p<=65535)return s=p,o=Tr(`${u[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${o}`,port:s,path:o}}}let a=Tr(o);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${a}`,port:s,path:a}}catch{let r=CS(e);return r&&r!==e?Er(r):null}}function MS(e){let t=[],n=/```[\s\S]*?```/g,r;for(;(r=n.exec(e))!==null;)t.push([r.index,r.index+r[0].length]);let s=/`[^`\n]+`/g;for(;(r=s.exec(e))!==null;){let o=r.index,i=o+r[0].length;t.some(([u,p])=>o>=u&&i<=p)||t.push([o,i])}return t}function OS(e,t){return t.some(([n,r])=>e>=n&&e<r)}function DS(e){let t=[],n=new Set,r=MS(e);Of.lastIndex=0;let s;for(;(s=Of.exec(e))!==null;){let o=Er(s[0]);if(!o)continue;let{originalUrl:i,port:a,path:u}=o;a<1||a>65535||$f.has(a)||n.has(i)||(n.add(i),t.push({originalUrl:i,port:a,path:u,startIndex:s.index,endIndex:s.index+i.length,inCodeBlock:OS(s.index,r)}))}return t}function LU(e){return DS(e).length>0}function jS(e){try{let{hostname:t}=new URL(e);return t==="localhost"||t==="127.0.0.1"}catch{return!1}}function Uf(e){return e.trim().toLowerCase().split("_").join("-")}function Ff(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function $S(e,t,n){let r=n.previewUrlTemplate;if(!r||!r.includes("{port}")||!r.includes("{sandbox}"))return null;let s=r.split("{port}").join(String(e)).split("{sandbox}").join(Uf(n.sandboxId));return`${Ff(s)}${t}`}function US(e){return e.sandboxId.trim().length>0}function nt(e,t,n){let r=Tr(t);if(!US(n))return NS(e,r);let s=$S(e,r,n);return s||(jS(n.apiBaseUrl)?`http://p${e}-${Uf(n.sandboxId)}.localhost:${n.backendPort}${r}`:`${Ff(n.apiBaseUrl)}/p/${n.sandboxId}/${e}${r}`)}function BU(e,t){if(!e)return;let r=e.replace(/^\/workspace\//,"").replace(/^\/+/,"").split("/").filter(Boolean).map(s=>encodeURIComponent(s)).join("/");return nt(3211,`/open?path=/workspace/${r}`,t)}function FS(e){return`/open?path=/${(e.startsWith("/workspace")?e:`/workspace/${e.replace(/^\/+/,"")}`).split("/").filter(Boolean).map(r=>encodeURIComponent(r)).join("/")}`}function NU(e){return`http://localhost:3211${FS(e)}`}function LS(){return"/health"}function qU(e){return nt(3211,LS(),e)}function GU(e,t){return nt(e,"/",t)}function BS(e){let t=Er(e);return!(!t||$f.has(t.port)||ES(e))}function Lf(e,t){if(!e)return e;let n=Er(e);return n?BS(n.originalUrl)?nt(n.port,n.path,t):n.originalUrl:e}function NS(e,t="/"){return`http://localhost:${e}${t}`}var Bf=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function Nf(e){let t=e.match(Df);if(t)return{port:parseInt(t[1],10),sandboxId:t[2],backendPort:t[3]?parseInt(t[3],10):80,path:t[4]||"/"};let n=e.match(jf);if(n){let s=443;try{let o=new URL(e);s=o.port?parseInt(o.port,10):o.protocol==="https:"?443:80}catch{return null}return{port:parseInt(n[1],10),sandboxId:n[2],backendPort:s,path:n[4]||"/"}}let r=e.match(Bf);if(r)try{let s=new URL(e);return{port:parseInt(r[2],10),sandboxId:r[1],backendPort:parseInt(s.port,10)||(s.protocol==="https:"?443:80),path:r[3]||"/"}}catch{return null}return null}function WU(e){try{let t=Nf(e);return t?`http://localhost:${t.port}${t.path}`:null}catch{return null}}function KU(e){return wS(e)||jf.test(e)||Bf.test(e)}function HU(e){try{let{hostname:t,port:n}=new URL(e);return(t==="localhost"||t==="127.0.0.1")&&n!==""}catch{return!1}}var fn="/web-proxy/";function VU(e,t){try{let n=new URL(e);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${fn}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,o=parseInt($e.BEEUNI_MASTER,10);return`${nt(o,"/",t).replace(/\/$/,"")}${s}`}catch{return null}}function zU(e){try{let t=new URL(e),n=t.pathname.indexOf(fn);if(n===-1)return null;let s=t.pathname.slice(n+fn.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let o=s[1],i=s[2],a=s[3]||"/";return`${o}://${i}${a}${t.search}${t.hash}`}catch{return null}}function YU(e){try{return new URL(e).pathname.includes(fn)}catch{return e.includes(fn)}}function QU(e){if(!e)return!1;let t=e.trim();return!!(/^https?:\/\/(?!localhost|127\.0\.0\.1)/i.test(t)||/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t))}function JU(e){let t=e.trim();return t?/^https?:\/\//i.test(t)?t:/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t)?`https://${t}`:null:null}function qf(e){return{health:t=>Mf(e.tryResolveReady()?.runtimeUrl??null,t),previewUrl:(t,n="/")=>nt(t,n,e.resolvePreviewOptsForSandbox(e.requireReady("previewUrl").sandboxId)),proxyUrl:t=>Lf(t,e.resolvePreviewOptsForSandbox(e.requireReady("proxyUrl").sandboxId)),sandboxPortUrl:t=>ze(e.requireReady("sandboxPortUrl").sandboxId,t)}}function Io(e,t,n,r){let s,o,{persistedPromptDefaults:i,clearPersistedDefaults:a}=$m(e,t),{ensureReady:u,tryResolveReady:p,requireReady:d,forgetReady:g}=Nm(e,t,n),m={projectId:e,sessionId:t,ensureReady:u,tryResolveReady:p,requireReady:d,forgetReady:g,resolvePreviewOptsForSandbox:r,get model(){return s},set model(f){s=f},get agent(){return o},set agent(f){o=f},clearPersistedDefaults:a,persistedPromptDefaults:i};return{...Cf(m),...If(m),...qf(m),...Hm(m),...Xm(m),...df(m),files:Rf(u),...Km(m),get runtime(){return Ie(d("runtime").runtimeUrl)}}}function Gf(e){return{apps:{list:()=>Pg(e),create:t=>Sg(e,t),get:t=>qs(e,t),update:(...t)=>xg(e,...t),access:{get:(...t)=>kg(e,...t),update:(...t)=>Cg(e,...t),session:(...t)=>Ig(e,...t),agents:t=>Rg(e,t)},remove:t=>wg(e,t),token:t=>vg(e,t),authEnv:t=>Ag(e,t),artifacts:{register:t=>Gs(e,t),uploadArchive:(...t)=>Tg(e,...t),finalize:(...t)=>Ws(e,...t)},deployments:{create:(...t)=>Eg(e,...t),list:t=>Mg(e,t),get:(...t)=>Og(e,...t),logs:(...t)=>Dg(e,...t),remove:(...t)=>Ug(e,...t)},start:t=>jg(e,t),stop:t=>$g(e,t),rollback:(...t)=>Fg(e,...t),machines:{list:t=>Lg(e,t),start:(t,n)=>Bg(e,t,n),stop:(t,n)=>Ng(e,t,n),restart:(t,n)=>qg(e,t,n),destroy:(t,n)=>Gg(e,t,n)},scale:(t,n)=>Wg(e,t,n),exec:(...t)=>Kg(e,...t),volumes:{list:t=>Hg(e,t),create:(...t)=>Vg(e,...t),update:(...t)=>zg(e,...t),destroy:(...t)=>Yg(e,...t),snapshots:(...t)=>Qg(e,...t),snapshot:(...t)=>Jg(e,...t),restore:(...t)=>Xg(e,...t),fork:(...t)=>Zg(e,...t)}}}}function Wf(e){return{list:()=>$a(e),invite:(...t)=>La(e,...t),update:(...t)=>Ua(e,...t),revoke:t=>Fa(e,t),pendingInvites:()=>Ba(e),resendInvite:(...t)=>qa(e,...t),revokeInvite:(...t)=>Na(e,...t),requests:()=>Oa(e),approveRequest:(...t)=>Da(e,...t),rejectRequest:(...t)=>ja(e,...t),groupGrants:()=>Ga(e),attachGroupGrant:(...t)=>Wa(e,...t),updateGroupGrant:(...t)=>Ka(e,...t),detachGroupGrant:t=>Ha(e,t),resourceGrants:{list:()=>Va(e),create:t=>za(e,t),remove:t=>Ya(e,t)}}}function Kf(e){return{tokens:{list:()=>eg(e),create:t=>tg(e,t),revoke:t=>ng(e,t)},setupLinks:{requestSecret:t=>lg(e,t),requestConnector:t=>pg(e,t)},validateManifest:t=>la(e,t),gitToken:()=>pa(e),agentIdentities:()=>pd(e),secrets:{list:()=>Za(e),upsert:t=>ec(e,t),setStrategy:(...t)=>tc(e,...t),broker:(...t)=>nc(e,...t),remove:t=>ic(e,t),setPersonal:(...t)=>ac(e,...t),removePersonal:t=>cc(e,t),setGitCredential:t=>oc(e,t),listProviderOAuth:()=>rc(e),startProviderOAuth:(...t)=>ms(e,...t),pollProviderOAuth:(...t)=>fs(e,...t),removeProviderOAuth:t=>sc(e,t)},access:Wf(e)}}function Hf(e){return{list:()=>xc(e),listAll:()=>wc(e),reconcile:(...t)=>vc(e,...t),reconcileMember:(...t)=>Ac(e,...t),updateCredential:(...t)=>kc(e,...t),revoke:(...t)=>Rc(e,...t),activate:(...t)=>Cc(e,...t),setDefault:(...t)=>Ic(e,...t),rename:(...t)=>Tc(e,...t),share:(...t)=>Mc(e,...t),addComputer:(...t)=>Ec(e,...t),pipedreamConnect:(...t)=>Oc(e,...t),pipedreamFinalize:(...t)=>Dc(e,...t)}}function Mr(e){return{catalog:t=>Lt(e,t),tools:()=>_s(e),search:(...t)=>Sc(e,...t),describe:(...t)=>Ps(e,...t),call:(...t)=>mt(e,...t),callAction:(t,n,r,s)=>mt(e,`${t}.${n}`,r,s),accounts:(...t)=>Ss(e,...t),uploadAttachment:(...t)=>xs(e,...t)}}function To(e,t){return{slug:t,run:(r,s,o)=>Rs(e,t,r,s,o),call:(r,s,o)=>mt(e,`${t}.${r}`,s,o),describe:async r=>r!==void 0?Ps(e,`${t}.${r}`):(await Lt(e,{slug:t,includeSchemas:!0,includeOutputSchemas:!0})).find(o=>o.slug===t)??null,accounts:()=>Ss(e,t),paginate:(r,s,o)=>nu(e,t,r,s,o),uploadAttachment:(r,s)=>xs(e,r,{...s,connector:t})}}var qS=100,GS=0,WS=new Set(["attachment_size_mismatch","attachment_failed"]),Vf=()=>new b("Attachment expired. Attach the file again.",{code:"attachment_expired"});function zf(e){if(!e||typeof e.attachment_id!="string"||!e.attachment_id||typeof e.filename!="string"||!e.filename||typeof e.mime!="string"||!e.mime||!Number.isSafeInteger(e.size)||e.size<=0||e.size>52428800||!Number.isFinite(Date.parse(e.expires_at))||Date.parse(e.expires_at)<=Date.now())throw new Error("Attachment metadata is invalid or expired. Attach the file again.");return{attachment_id:e.attachment_id,filename:e.filename,mime:e.mime,size:e.size,expires_at:e.expires_at}}function Yf(e,t={}){let n=t.concurrency??2;if(!Number.isInteger(n)||n<1||n>20)throw new Error("Attachment concurrency must be between 1 and 20");let r=new Map,s=new Set,o=new Set,i=0,a=!1,u,p={attachments:[]},d=()=>[...r.values()].filter(y=>!y.handedOff);function g(y,_){y.removalDeleted||(y.removalDeleted=!0,qt(e,_).catch(()=>{}))}function m(){u&&clearTimeout(u);let y=d().map(({item:S})=>S);(y.length!==p.attachments.length||y.some((S,E)=>S!==p.attachments[E]))&&(p={attachments:y});let _=Math.min(...y.filter(S=>S.status==="ready").map(S=>Date.parse(S.attachment.expires_at)));Number.isFinite(_)&&!a&&(u=setTimeout(()=>{for(let S of d())S.item.status==="ready"&&Date.parse(S.item.attachment.expires_at)<=Date.now()&&(S.item={...S.item,status:"error",error:Vf()});m()},Math.min(2147483647,Math.max(0,_-Date.now()))),typeof u=="object"&&"unref"in u&&u.unref());for(let S of s)S();for(let S of[...o])S()}function f(){if(a)throw new Error("Attachment controller is disposed");if(!e)throw new Error("A project is required to attach files");return e}function h(y){f();let _=d();if(_.length+y.length>20)throw new Error("A message can contain up to 20 attachments");if(y.some(E=>!Number.isSafeInteger(E)||E<=0||E>52428800))throw new Error("Each attachment must contain 1 byte to 50 MiB");if(_.reduce((E,w)=>E+w.item.size,0)+y.reduce((E,w)=>E+w,0)>104857600)throw new Error("Message attachments exceed 100 MiB")}function x(){for(let y of r.values()){if(i>=n)break;if(y.item.status!=="pending"||!y.item.file||a&&!y.handedOff)continue;let _=y.item.file;i++;let S=++y.generation,E=new AbortController;y.abort=E,y.item={...y.item,status:"uploading",error:void 0};let w=()=>(!a||y.handedOff===!0)&&r.get(y.item.id)===y&&y.generation===S,P,A=0,I,T=()=>{I=void 0,!(!w()||y.item.status!=="uploading"||P===void 0)&&(y.item={...y.item,receivedBytes:P},P=void 0,A=Date.now(),m())},B=$=>Math.floor($*100/y.item.size);nr(e,_,{resume:y.upload,signal:E.signal,onUpload:$=>{y.upload=$,y.removed&&(E.abort(),g(y,$.attachment_id))},onProgress:$=>{if(!w()||B($)===B(y.item.receivedBytes)||(P=$,I))return;let N=A+qS-Date.now();if(N<=0)return T();I=setTimeout(T,N),typeof I=="object"&&"unref"in I&&I.unref()},onProcessing:()=>{I&&clearTimeout(I),I=void 0,P=void 0,w()&&(y.item={...y.item,status:"processing",receivedBytes:y.item.size},m())}}).then($=>{w()&&(y.item={...y.item,status:"ready",attachment:zf($),receivedBytes:$.size})}).catch($=>{$ instanceof b&&WS.has($.code??"")&&(y.upload=void 0),w()&&(y.item={...y.item,status:$ instanceof b&&$.code==="ABORTED"?"aborted":"error",error:$ instanceof Error?$:new Error(String($))})}).finally(()=>{i--,I&&clearTimeout(I),y.abort===E&&(y.abort=void 0),m(),x()})}m()}function D(y){h(y.map(S=>S.size));let _=y.map(S=>{let E=`attachment-${++GS}`;return r.set(E,{generation:0,item:{id:E,file:S,filename:S.name,mime:S.type||"application/octet-stream",size:S.size,status:"pending",receivedBytes:0}}),E});return m(),x(),_}function j(y){let _=r.get(y);!_||_.item.status==="ready"||(_.generation++,_.abort?.abort(),_.item={..._.item,status:"aborted",error:new Error("Attachment upload cancelled")},m())}function L(y,{signal:_}={}){let S=[...y];return new Promise((E,w)=>{let P=()=>{o.delete(T),_?.removeEventListener("abort",I)},A=B=>{P(),w(B)},I=()=>A(ge()),T=()=>{let B=!1;for(let N of S){let q=r.get(N);if(!q)return A(new Error("Attachment was removed before it was sent"));if(a&&!q.handedOff)return A(new Error("Attachment controller is disposed"));if(q.item.status==="error"||q.item.status==="aborted")return A(q.item.error??new Error("Attachment upload failed"));q.item.status!=="ready"&&(B=!0)}if(B)return;let $;try{$=S.map(N=>{let q=zf(r.get(N).item.attachment);return{type:"file",attachment_id:q.attachment_id,filename:q.filename,mime:q.mime}})}catch(N){return A(N instanceof Error?N:new Error(String(N)))}P(),E($)};if(_?.aborted)return I();o.add(T),_?.addEventListener("abort",I,{once:!0}),T()})}return{add:y=>D([y])[0],addMany:D,retry(y){let _=r.get(y);if(_?.handedOff||f(),!(!_||_.item.status==="ready"||_.item.status==="uploading"||_.item.status==="processing"||_.item.status==="pending")){if(!_.item.file||_.upload&&Date.parse(_.upload.expires_at)<=Date.now())throw Vf();_.item={..._.item,status:"pending",error:void 0},x()}},async remove(y){let _=r.get(y);if(!_)return;_.removed=!0,_.generation++,r.delete(y);let S=_.upload?.attachment_id??_.item.attachment?.attachment_id;S&&_.abort?.abort(),m(),x(),S&&g(_,S)},abort:j,submit(y){if(!a){for(let _ of y){let S=r.get(_);S&&(S.handedOff=!0)}m()}},reclaim(y){if(!a){for(let _ of y){let S=r.get(_);S&&(S.handedOff=!1)}m()}},whenReady:L,forget(y=d().map(_=>_.item.id)){for(let _ of y){let S=r.get(_);S&&(S.generation++,S.abort?.abort(),r.delete(_))}m(),x()},dispose(){if(!a){a=!0,u&&clearTimeout(u);for(let y of r.values()){if(y.handedOff)continue;y.generation++,y.abort?.abort();let _=y.upload?.attachment_id??y.item.attachment?.attachment_id;_&&e&&qt(e,_).catch(()=>{})}s.clear(),m()}},getSnapshot:()=>p,subscribe(y){return s.add(y),()=>{s.delete(y)}}}}function Qf(e){return{attachments:{upload:(...t)=>nr(e,...t),delete:(...t)=>qt(e,...t),createController:t=>Yf(e,t)},get:t=>Gn(e,t),detail:()=>Wn(e),skills:{create:(...t)=>_a(e,...t)},audit:t=>sg(e,t),update:t=>Vn(e,t),archive:()=>zn(e),llmCatalog:()=>Kn(e),modelPicker:()=>Hn(e),modelAccess:()=>mr(e),setModelAccess:t=>fr(e,t),sandboxHealth:()=>Jn(e),onboardingComplete:(...t)=>ba(e,...t)}}function Jf(e){return{sessions:{list:t=>yt(e,t),listPage:t=>Yu(e,t),create:t=>ht(e,t),ensureWarm:()=>sl(e),claimWarm:t=>ol(e,t)},review:{list:t=>Ed(e,t),get:t=>Md(e,t),submit:t=>Od(e,t),act:(...t)=>Dd(e,...t),bulkAct:t=>jd(e,t)},approvals:{list:t=>Qa(e,t),resolve:(...t)=>Xa(e,...t),sessionsNeedingInput:t=>Ja(e,t)}}}function Xf(e){return{files:{list:t=>mu(e,t),listDirectory:t=>fu(e,t),read:(t,n)=>hu(e,t,n),search:(...t)=>yu(e,...t),archive:(...t)=>bu(e,...t),archiveRequest:(...t)=>_u(e,...t),history:(...t)=>Tu(e,...t)},git:{commits:()=>Ru(e),commit:t=>Cu(e,t),commitDiff:t=>Iu(e,t),branches:()=>ku(e),versionDiff:(...t)=>Eu(e,...t),inviteCollaborator:(...t)=>ua(e,...t)},changeRequests:{list:()=>Mu(e),get:t=>Ou(e,t),update:(...t)=>qu(e,...t),diff:t=>Du(e,t),mergePreview:t=>ju(e,t),open:(...t)=>$u(e,...t),merge:(...t)=>Uu(e,...t),close:(...t)=>Fu(e,...t),reopen:(...t)=>Lu(e,...t),requestChanges:(...t)=>Bu(e,...t)},...Jf(e)}}function Zf(e){return{policies:{list:()=>ru(e),set:(...t)=>su(e,...t)},reminders:{list:()=>zd(e),updateMany:(...t)=>Hd(e,...t),removeMany:(...t)=>Vd(e,...t)},triggers:{list:()=>Rl(e),eventApps:()=>Dl(e),eventTypes:(...t)=>Ol(e,...t),create:(...t)=>Cl(e,...t),update:(...t)=>Il(e,...t),remove:(...t)=>Tl(e,...t),fire:(...t)=>Ml(e,...t),setActivation:(...t)=>El(e,...t)},...Xf(e)}}function ey(e,t){return{connectors:{...Mr(e),list:()=>jc(e),config:(...n)=>qc(e,...n),create:(...n)=>Kc(e,...n),remove:(...n)=>Vc(e,...n),sync:()=>$c(e),auth:{discover:(...n)=>Hc(e,...n)},setName:(...n)=>Gc(e,...n),setCredentialMode:(...n)=>Uc(e,...n),setAuthorizationStrategy:(...n)=>Fc(e,...n),setCredential:(...n)=>Xc(e,...n),deleteCredential:(...n)=>Zc(e,...n),setSensitive:(...n)=>Lc(e,...n),connections:t,policies:{get:(...n)=>Bc(e,...n),set:(...n)=>Nc(e,...n)},pipedream:{listApps:(...n)=>zc(e,...n),listSections:(...n)=>Yc(e,...n),connect:(...n)=>Wc(e,...n),finalize:(...n)=>eu(e,...n)},discover:{list:(...n)=>ws(e,...n),sections:(...n)=>Qc(e,...n),detail:(...n)=>vs(e,...n)}},...Zf(e)}}function ty(e){return{gateway:{logs:t=>Np(e,t),log:t=>qp(e,t),overview:t=>Gp(e,t),series:t=>Wp(e,t),breakdown:t=>Kp(e,t),sessions:t=>Hp(e,t),errors:t=>Vp(e,t),budgets:()=>zp(e),setBudget:t=>Yp(e,t),deleteBudget:t=>Qp(e,t),keys:()=>Jp(e),createKey:t=>Xp(e,t),revokeKey:t=>Zp(e,t),routing:{get:()=>Up(e),set:t=>Fp(e,t),reset:()=>Lp(e),preview:t=>Bp(e,t)},playground:(t,n,r)=>ed(e,t,n,r)}}}function ny(e){return{modelDefaults:{get:()=>Gl(e),set:t=>Wl(e,t),clear:t=>Kl(e,t)},setDefaultAgent:t=>zl(e,t),sandbox:{list:()=>gu(e),snapshots:()=>iu(e),rebuildSnapshot:t=>au(e,t),fixWithAgent:()=>cu(e),createTemplate:t=>uu(e,t),updateTemplate:(...t)=>lu(e,...t),removeTemplate:t=>pu(e,t),buildTemplate:t=>du(e,t),setProvider:t=>ha(e,t)},setAgentScope:(...t)=>Vl(e,...t)}}function ry(e){return{channels:{slack:{installation:()=>xp(e),connect:t=>wp(e,t),mode:()=>vp(e),completeInstall:t=>kp(e,t),manifest:()=>Cp(e),disconnect:()=>Ip(e),getFile:t=>Tp(e,t),uploadFile:t=>Ep(e,t)},teams:{completeInstall:t=>Rp(e,t)},email:{installation:t=>Mp(e,t),mode:()=>Op(e),connect:t=>Dp(e,t),disconnect:t=>jp(e,t),updatePolicy:(...t)=>$p(e,...t)}},updateFeatureFlag:(...t)=>fa(e,...t),updateExperimentalFeature:(...t)=>ya(e,...t),...ny(e)}}function KS(){return et()}var sy=null,oy=!1;function HS(e){let t=sy;sy=e,!(oy||!t)&&(t.backendUrl===e.backendUrl&&t.getToken===e.getToken||(oy=!0,console.warn("[beeuni] createBeeuni() was called again with a different backendUrl or getToken. Every client shares one process-global config, so the earlier client now uses the new one. For several tenants in one process use createScopedBeeuni() from @beeuni/sdk/server.")))}function VS(e,t){t?.global!==!1&&HS(e),ts(e,t);let n=jm(e),{auth:r,accounts:s,iam:o,accountInvites:i}=Tm(),{billing:a,sandboxShares:u}=Rm(),{projects:p,github:d,gitBackend:g,connectStatus:m,marketplace:f}=km();function h(x){let D=Hf(x);return{...Qf(x),...Gf(x),...Kf(x),...ey(x,D),...ty(x),...ry(x),connector:j=>To(x,j),session:j=>Io(x,j,e,n)}}return{config:e,auth:r,accounts:s,providerConnections:{list:pm,saveApiKey:dm,remove:gm,startOAuth:mm,pollOAuth:fm,listProject:ym,setProject:hm},iam:o,accountInvites:i,projects:p,connectors:Mr(),connector:x=>To(void 0,x),project:h,session:(x,D)=>Io(x,D,e,n),github:d,gitBackend:g,billing:a,sandboxShares:u,connectStatus:m,marketplace:f,notifications:{registerDeviceToken:tm,unregisterDeviceToken:nm,list:rm,markRead:sm,preferences:om,updatePreferences:im,webPushPublicKey:am,registerWebPushSubscription:cm,unregisterWebPushSubscription:um},validateToken:ia,runtime:KS}}function zS(){let e=typeof crypto<"u"?crypto:void 0;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)e.getRandomValues(t);else for(let r=0;r<16;r++)t[r]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=[...t].map(r=>r.toString(16).padStart(2,"0"));return`${n[0]}${n[1]}${n[2]}${n[3]}-${n[4]}${n[5]}-${n[6]}${n[7]}-${n[8]}${n[9]}-${n.slice(10).join("")}`}function YS(){return{pending:[],failed:[],inFlightId:null,inFlightIds:[]}}function Rt(e){return e.inFlightIds?.length?e.inFlightIds:e.inFlightId?[e.inFlightId]:[]}function QS(e,t){return{...e,pending:[...e.pending,{...t,attempts:0}]}}function JS(e){if(Rt(e).length>0)return{state:e};let t=e.pending[0];if(!t)return{state:e};let n={...t,attempts:t.attempts+1};return{state:{...e,pending:[n,...e.pending.slice(1)],inFlightId:n.id,inFlightIds:[n.id]},claimed:n}}function XS(e){let t=Rt(e);return t.length===0?e:{...e,pending:e.pending.filter(n=>!t.includes(n.id)),inFlightId:null,inFlightIds:[]}}function ZS(e,t){let n=Rt(e);if(n.length===0)return e;let r=e.pending.filter(s=>n.includes(s.id));return r.length===0?{...e,inFlightId:null,inFlightIds:[]}:{pending:e.pending.filter(s=>!n.includes(s.id)),failed:[...e.failed,...r.map(s=>({...s,lastError:t}))],inFlightId:null,inFlightIds:[]}}function ex(e,t){let n=e.failed.find(o=>o.id===t);if(!n)return e;let{lastError:r,...s}=n;return{...e,pending:[...e.pending,s],failed:e.failed.filter(o=>o.id!==t)}}function tx(e,t){return Rt(e).includes(t)?e:e.pending.some(n=>n.id===t)?{...e,pending:e.pending.filter(n=>n.id!==t)}:e.failed.some(n=>n.id===t)?{...e,failed:e.failed.filter(n=>n.id!==t)}:e}function nx(e,t,n){return Rt(e).includes(t)||!e.pending.some(r=>r.id===t)?e:{...e,pending:e.pending.map(r=>r.id===t?{...r,text:n}:r)}}function rx(e,t,n){let r=Rt(e);if(r.includes(t))return e;let s=e.pending.findIndex(p=>p.id===t);if(s===-1)return e;let o=r.length,i=Math.min(Math.max(n,o),e.pending.length-1);if(i===s)return e;let a=[...e.pending],[u]=a.splice(s,1);return a.splice(i,0,u),{...e,pending:a}}var iy={thinking:!1,toolDetails:!0,assistantMetadata:!0};function sx(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function ox(e){let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60),r=t%60;return`${n}m ${r.toFixed(0)}s`}function ix(e,t){if(e.type==="text"&&!e.synthetic)return`${e.text??""}
|
|
19
|
+
`);a=d.pop()??"";for(let g of d){let m={},y=[];for(let h of g.split(`
|
|
20
|
+
`))if(h.startsWith("data:"))y.push(h.replace(/^data:\s*/,""));else if(h.startsWith("id:"))m.id=h.replace(/^id:\s*/,"");else if(h.startsWith("retry:")){let w=Number.parseInt(h.replace(/^retry:\s*/,""),10);Number.isNaN(w)||(m.retry=w)}y.length&&(m.data=y.join(`
|
|
21
|
+
`)),yield m}}}finally{r.removeEventListener("abort",i),o.releaseLock()}}}async function*cS(e,t,n){let r=e.eventTransport??$o(e.fetch??globalThis.fetch),s=n.signal??new AbortController().signal,o=n.sseDefaultRetryDelay??3e3,i;for(let a=1;!s.aborted;a++)try{let c=new Headers(n.headers);i!==void 0&&c.set("Last-Event-ID",i);for await(let p of r({url:new URL(t).href,headers:c,signal:s}))if(p.id!==void 0&&(i=p.id),p.retry!==void 0&&(o=p.retry),p.data!==void 0)try{yield JSON.parse(p.data)}catch{yield p.data}return}catch(c){if(n.onSseError?.(c),n.sseMaxRetryAttempts!==void 0&&a>=n.sseMaxRetryAttempts)return;let p=Math.min(o*2**(a-1),n.sseMaxRetryDelay??3e4);await new Promise(d=>setTimeout(d,p))}}function hn(e){let t=s=>(o,i)=>aS(e,oS(e.baseUrl,s,o,i)),n=s=>o=>t(s)(void 0,o);return{session:{list:t("session.list"),get:t("session.get"),create:t("session.create"),delete:t("session.delete"),update:t("session.update"),status:t("session.status"),messages:t("session.messages"),prompt:t("session.prompt"),promptAsync:t("session.promptAsync"),abort:t("session.abort"),revert:t("session.revert"),unrevert:t("session.unrevert"),summarize:t("session.summarize"),command:t("session.command"),share:t("session.share"),unshare:t("session.unshare"),fork:t("session.fork"),diff:t("session.diff"),todo:t("session.todo")},permission:{list:t("permission.list"),reply:t("permission.reply")},question:{list:t("question.list"),reply:t("question.reply"),reject:t("question.reject")},part:{update:t("part.update"),delete:t("part.delete")},file:{list:t("file.list"),read:t("file.read")},find:{files:t("find.files")},vcs:{diff:t("vcs.diff")},global:{event:async(s={})=>({stream:cS(e,`${e.baseUrl.replace(/\/$/,"")}/global/event`,s)}),health:n("global.health"),dispose:n("global.dispose"),config:{get:n("global.config.get"),update:t("global.config.update")}},provider:{list:t("provider.list"),auth:t("provider.auth"),oauth:{authorize:t("provider.oauth.authorize"),callback:t("provider.oauth.callback")}},auth:{set:t("auth.set")},app:{agents:t("app.agents"),skills:t("app.skills"),log:t("app.log")},command:{list:t("command.list")},tool:{ids:t("tool.ids"),list:t("tool.list")},mcp:{status:t("mcp.status"),add:t("mcp.add"),connect:t("mcp.connect"),disconnect:t("mcp.disconnect"),auth:{start:t("mcp.auth.start"),callback:t("mcp.auth.callback"),remove:t("mcp.auth.remove")}},project:{list:t("project.list"),current:t("project.current")},path:{get:t("path.get")}}}var af=200;async function lS(e){let t=await e.text().catch(()=>"");try{let n=JSON.parse(t);return n.data?.message||n.error||n.message||t||`HTTP ${e.status}`}catch{return t||`HTTP ${e.status}`}}function dt(e,t){if(e.error===void 0)return e.data;let n=e.error,r=typeof n=="string"?n:n?.data?.message||n?.message||n?.error||"request failed";throw new _(`${t}: ${r}`,{...e.response?{status:e.response.status,response:e.response}:{}})}function cf(e){let t=e.runtimeUrl.replace(/\/$/,""),n=hn({baseUrl:t,fetch:e.fetch});return{messages:async(r={})=>{let s=encodeURIComponent(r.conversationId??e.rootId),o=async(c,p)=>{let d=new URLSearchParams;c!==void 0&&d.set("limit",String(c)),p&&d.set("before",p);let g=`/messages/${s}${d.size?`?${d}`:""}`,m=w=>e.fetch(new Request(`${t}${w}${g}`,{method:"GET",...r.signal?{signal:r.signal}:{}})),y=await m("/beeuni/runtime");if((y.status===404||(y.headers.get("content-type")??"").startsWith("text/html"))&&(y=await m("/beeuni/opencode")),!y.ok)throw new _(`Reading the session transcript failed: ${await lS(y)}`,{status:y.status,response:y});let h=await y.json();return{messages:h.messages??[],hasMore:h.has_more===!0}},i=await o(r.limit===void 0?void 0:Math.min(r.limit,af),r.before),a=[...i.messages];for(;r.limit!==void 0&&a.length<r.limit&&i.hasMore&&a.length>0&&(i=await o(Math.min(r.limit-a.length,af),a[0].info.id),!!i.messages.length);)a.unshift(...i.messages);return{messages:a,hasMore:i.hasMore}},pending:async()=>{let[r,s,o]=await Promise.all([n.session.status().then(i=>dt(i,"Reading the session status failed")),n.permission.list().then(i=>dt(i,"Reading permission requests failed")),n.question.list().then(i=>dt(i,"Reading questions failed"))]);return{statuses:r??{},permissions:s??[],questions:o??[]}},answerPermission:async(r,s,o)=>{dt(await n.permission.reply({requestID:r,reply:s,...o!==void 0?{message:o}:{}}),"Answering the permission request failed")},answerQuestion:async(r,s)=>{if(s===null){dt(await n.question.reject({requestID:r}),"Dismissing the question failed");return}dt(await n.question.reply({requestID:r,answers:s}),"Answering the question failed")},compact:async r=>{let s=r;if(!s){let o=await n.global.config.get().then(c=>c.error===void 0?c.data:null),i=typeof o?.model=="string"?o.model:"",a=i.indexOf("/");a>0&&a<i.length-1&&(s={providerID:i.slice(0,a),modelID:i.slice(a+1)})}if(!s)throw new _("Cannot compact: no model is set for this session",{code:"MODEL_REQUIRED"});return dt(await n.session.summarize({sessionID:e.rootId,providerID:s.providerID,modelID:s.modelID}),"Compacting the session failed"),s}}}function lf(e){async function t(){let{runtimeSessionId:n,runtimeUrl:r}=await e.ensureReady();return cf({runtimeUrl:r,rootId:n,fetch:j})}return{messages:async n=>(await t()).messages(n),pending:async()=>(await t()).pending(),answerPermission:async(n,r,s)=>(await t()).answerPermission(n,r,s),answerQuestion:async(n,r)=>(await t()).answerQuestion(n,r),compact:async n=>(await t()).compact(n)}}function uf(e){return{setModel:t=>{e.model=t},changeModel:async t=>{let n=await zu(e.projectId,e.sessionId,t);return e.clearPersistedDefaults(),n}}}var bn=BigInt(4096),Je=BigInt(0xffffffffffff),pf=Je+BigInt(1),uS=pf/BigInt(2),gt=BigInt(3600*1e3)*bn,Uo=120*1e3,pS=/^msg_[0-9a-f]{12}[A-Za-z0-9]{14}$/,dS=/^msg_([0-9a-f]{12})/,df="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function Ut(e){let t=dS.exec(e??"");return t?BigInt(`0x${t[1]}`):null}function _n(e){return BigInt(Math.trunc(e))*bn&Je}function Lt(e,t){let n=e-t&Je;return n>=uS&&(n-=pf),n}function gf(e){let t=null;for(let n of e)n!=null&&(t===null||Lt(n,t)>BigInt(0))&&(t=n);return t}function gS(e,t){let n=Ut(e);return n===null?!1:Lt(n,_n(t))>gt}function mS(e,t){let n=t===void 0?null:_n(t);return mf(e,r=>n===null||Lt(r,n)<=gt)}function mf(e,t){let n=[];for(let r of e){let s=Ut(r);s!==null&&t(s)&&n.push(s)}return gf(n)}function fS(){let e="",t=new Uint8Array(32);for(;e.length<14;){crypto.getRandomValues(t);for(let n of t)n<248&&e.length<14&&(e+=df[n%62])}return e}function ff(e){let t=e.random,n=_n(e.nowMs-(e.backdateMs??Uo)),r=e.newestKnownTime??null;if(r!==null){let o=Lt(r,n);o>=BigInt(0)&&o<=gt&&(n=r+BigInt(1)&Je)}let s="";if(t)for(let o=0;o<14;o++)s+=df[Math.min(61,Math.floor(t()*62))];else s=fS();return{id:`msg_${n.toString(16).padStart(12,"0")}${s}`,time:n}}function Lo(e={}){let t=e.nowMs??Date.now(),n=_n(t-Uo),r=mf(e.after??[],s=>{let o=Lt(s,n);return o>=BigInt(0)&&o<=gt});return ff({nowMs:t,newestKnownTime:r}).id}function yf(e){return{scope:()=>Vu(e.projectId,e.sessionId),providerSecretPool:{list:()=>Lc(e.projectId,e.sessionId),get:t=>Uc(e.projectId,e.sessionId,t),set:(t,n)=>Bc(e.projectId,e.sessionId,t,n)},rescope:t=>Hu(e.projectId,e.sessionId,t),setAgent:t=>{e.agent=t},send:async(t,n)=>{await e.ensureReady();let r=n?.model??e.model,s=n?.agent??e.agent,o=r&&s?{}:await e.persistedPromptDefaults(),i=r??o.model,a=s??o.agent,c=Lo(),p=await Ar(e.projectId,e.sessionId,{clientMessageId:c,messageId:c,remintOnDelivery:!0,parts:[{type:"text",text:t}],clientSentAtMs:Date.now(),...i||a?{overrides:{...i?{model:i}:{},...a?{agent:a}:{}}}:{}});if(p.state==="failed")throw new _("This prompt was refused: its earlier delivery already failed.",{code:"PROMPT_FAILED"});return p}}}var Bt="beeuni.transcript.v1",yS=["auth","rate_limit","credits","context_length","output_length","aborted","unknown"];function hf(e){return typeof e=="string"&&yS.includes(e)}var FU=["once","always","reject"],NU=["read","edit","glob","grep","list","bash","task","external_directory","todowrite","question","webfetch","websearch","lsp","doom_loop","skill"];var bf=async function*(e){let t=R().eventStreamTransport;if(!t){yield*$o(((s,o)=>j(s,o,{timeoutMs:null})))(e);return}let{headers:n,rejected:r}=await sr(e.url,e.headers);try{yield*t({...e,headers:n})}catch(s){throw s?.status===401&&r(),s}};function je(){let e=nf();return e||(R().billingEnabled??!1?"":up())}async function Bo(e,t){return(await e.json().catch(()=>({})))?.error||e.statusText||t}function Fo(e){if(!e)throw new Error("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading");return e}async function _f(e){let t=Fo(e),n=await j(`${t}/env`);if(!n.ok)throw new Error(await Bo(n,"Failed to load secrets"));return(await n.json()).secrets??{}}async function Pf(e,t,n){let r=Fo(e),s=await j(`${r}/env/${encodeURIComponent(t)}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({value:n})});if(!s.ok)throw new Error(await Bo(s,"Failed to save secret"))}async function Sf(e,t){let n=Fo(e),r=await j(`${n}/env/${encodeURIComponent(t)}`,{method:"DELETE"});if(!r.ok)throw new Error(await Bo(r,"Failed to delete secret"))}var hS={list:_f,set:Pf,delete:Sf};async function bS(e,t,n){let r=e;for(;r.endsWith("/");)r=r.slice(0,-1);let s=await j(`${r}/beeuni/triggers${t}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}}),o=await s.json();if(!s.ok)throw new Error(o?.error||o?.message||`Request failed with ${s.status}`);return o}async function $r(e,t){let n=await e.json().catch(()=>({}));return n?.error||n?.message||e.statusText||t}function Pn(e){if(!e)throw new Error("[beeuni-pty] Server URL not ready \u2014 sandbox is still loading");return le(e)}async function xf(e){let t=Pn(e),n=await j(`${t}/beeuni/pty`);if(!n.ok)throw new Error(await $r(n,"Failed to list terminals"));return n.json()}async function wf(e,t){let n=Pn(e),r=await j(`${n}/beeuni/pty`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t??{})});if(!r.ok)throw new Error(await $r(r,"Failed to create terminal"));return r.json()}async function Af(e,t,n){let r=Pn(e),s=await j(`${r}/beeuni/pty/${encodeURIComponent(t)}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)});if(!s.ok)throw new Error(await $r(s,"Failed to update terminal"));return s.json()}async function vf(e,t){let n=Pn(e),r=await j(`${n}/beeuni/pty/${encodeURIComponent(t)}`,{method:"DELETE"});if(!r.ok)throw new Error(await $r(r,"Failed to remove terminal"))}async function kf(e,t,n){let r=Pn(t),o=`${(()=>{try{let p=new URL(r);return p.protocol==="https:"?p.protocol="wss:":p.protocol==="http:"&&(p.protocol="ws:"),typeof window<"u"&&window.location.protocol==="https:"&&p.protocol==="ws:"&&(p.protocol="wss:"),le(p.toString())}catch{return r.replace("https://","wss://").replace("http://","ws://")}})()}/beeuni/pty/${encodeURIComponent(e)}/connect`,i=new URLSearchParams,a=await ot();a&&i.set("token",a),n?.wake&&i.set("wake","1");let c=i.toString();return c?`${o}${o.includes("?")?"&":"?"}${c}`:o}function _S(e){let t=e.reason.trim().toLowerCase();return t.includes("pty not found")?"replace":t.includes("pty exited")?"ended":e.hadError||t.includes("idle timeout")||t.includes("upstream error")||e.code!==1e3?"reconnect":"ended"}var Qe="\x1B",Rf="\x07",PS="\0",No=`(?:${Rf}|${Qe}\\\\)`,SS=[new RegExp(`${Qe}\\]697;[^${Rf}${Qe}]*${No}`,"g"),new RegExp(`${PS}?\\{"cursor":\\d+\\}`,"g"),new RegExp(`${Qe}\\][0-9]+;rgb:[0-9a-fA-F/]+${No}`,"g"),new RegExp(`${Qe}\\]4;[0-9]+;rgb:[0-9a-fA-F/]+${No}`,"g"),new RegExp(`${Qe}\\[\\??[0-9;]*\\$y`,"g"),new RegExp(`${Qe}\\[\\d+;\\d+R`,"g"),new RegExp(`${Qe}\\[\\?[0-9;]*c`,"g")];function xS(e){let t=e;for(let n of SS)t=t.replace(n,"");return t}var wS={list:xf,create:wf,update:Af,remove:vf,webSocketUrl:kf};async function T(e,t,n,r){let s=e;for(;s.endsWith("/");)s=s.slice(0,-1);let o=await j(`${s}${t}`,{...n,headers:{"Content-Type":"application/json",...n?.headers}},r),i=await o.text(),a={};try{a=i?JSON.parse(i):{}}catch{a={}}if(!o.ok)throw new Error(a?.error||a?.message||a?.details||i.slice(0,200)||`Request failed with ${o.status}`);return a}async function cL(e,t={}){let n=new URLSearchParams;t.projectId&&n.set("project_id",t.projectId),t.status&&n.set("status",t.status);let r=n.toString()?`?${n}`:"";return T(e,`/beeuni/tasks${r}`)}async function lL(e,t){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}`)}async function uL(e,t){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}/events`)}async function pL(e,t){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}/status`)}async function dL(e,t){return T(e,"/beeuni/tasks",{method:"POST",body:JSON.stringify(t)})}async function gL(e,t,n){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function mL(e,t){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}/start`,{method:"POST"})}async function fL(e,t){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}/approve`,{method:"POST"})}async function yL(e,t){return T(e,`/beeuni/tasks/${encodeURIComponent(t)}`,{method:"DELETE"})}async function hL(e,t){let n=t?`?project_id=${encodeURIComponent(t)}`:"";return T(e,`/beeuni/tickets${n}`)}async function bL(e,t){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}`)}async function _L(e,t){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}/events`)}async function PL(e,t){return T(e,"/beeuni/tickets",{method:"POST",body:JSON.stringify(t)})}async function SL(e,t,n){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function xL(e,t,n){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}/status`,{method:"POST",body:JSON.stringify(n)})}async function wL(e,t,n){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}/assign`,{method:"POST",body:JSON.stringify(n)})}async function AL(e,t,n){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}/unassign`,{method:"POST",body:JSON.stringify(n)})}async function vL(e,t,n){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}/comments`,{method:"POST",body:JSON.stringify(n)})}async function kL(e,t){return T(e,`/beeuni/tickets/${encodeURIComponent(t)}`,{method:"DELETE"})}async function RL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/columns`)}async function CL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/columns`,{method:"PUT",body:JSON.stringify({columns:n})})}async function IL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/fields`)}async function TL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/fields`,{method:"PUT",body:JSON.stringify({fields:n})})}async function EL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/templates`)}async function ML(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/templates`,{method:"PUT",body:JSON.stringify({templates:n})})}async function OL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/pm-session`,{method:"POST"})}async function DL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/agents`)}async function jL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/agents`,{method:"POST",body:JSON.stringify(n)})}async function $L(e,t,n,r){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function UL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}`,{method:"DELETE"})}async function LL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/agents/${encodeURIComponent(n)}/persona`)}async function BL(e,t,n=200){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/activity?limit=${n}`)}async function FL(e){return T(e,"/beeuni/projects")}async function NL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}`)}async function qL(e,t){return T(e,`/beeuni/projects/by-session/${encodeURIComponent(t)}`)}async function GL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/sessions`)}async function WL(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}`,{method:"DELETE"})}async function KL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}`,{method:"PATCH",body:JSON.stringify(n)})}async function VL(e,t,n="all"){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones?status=${n}`)}async function HL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`)}async function zL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/events`)}async function YL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones`,{method:"POST",body:JSON.stringify(n)})}async function JL(e,t,n,r){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`,{method:"PATCH",body:JSON.stringify(r)})}async function QL(e,t,n,r){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/close`,{method:"POST",body:JSON.stringify(r)})}async function XL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}/reopen`,{method:"POST"})}async function ZL(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/milestones/${encodeURIComponent(n)}`,{method:"DELETE"})}async function eB(e,t){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials`)}async function tB(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}/events`)}async function nB(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials`,{method:"POST",body:JSON.stringify(n)})}async function rB(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}`)}async function sB(e,t,n){return T(e,`/beeuni/projects/${encodeURIComponent(t)}/credentials/${encodeURIComponent(n)}`,{method:"DELETE"})}var AS=1e4,vS={retryOnAuthError:!1};function Ft(e,t,n){return T(e,t,{signal:AbortSignal.timeout(AS),...n},vS)}async function oB(e,t=!1){return(await Ft(e,`/beeuni/services${t?"?all=true":""}`)).services??[]}async function iB(e){return(await Ft(e,"/beeuni/services/templates")).templates??[]}async function aB(e,t){return(await Ft(e,`/beeuni/services/${encodeURIComponent(t)}/logs`)).logs??[]}async function cB(e,t,n){let r=n==="delete",s=r?`/beeuni/services/${encodeURIComponent(t)}`:`/beeuni/services/${encodeURIComponent(t)}/${n}`;return Ft(e,s,{method:r?"DELETE":"POST"})}async function lB(e,t){return Ft(e,`/beeuni/services/reconcile${t?"?reload=true":""}`,{method:"POST"})}async function uB(e,t){return Ft(e,"/beeuni/services/register",{method:"POST",body:JSON.stringify(t)})}var $e=new Map,kS=256,Sn=class extends Error{constructor(t="[opencode-sdk] Server URL not ready \u2014 sandbox is still loading"){super(t),this.name="RuntimeNotReadyError"}};function mt(){let e=je();if(!e)throw new Sn;return Ue(e)}function Ue(e){if(!e)throw new Error("[opencode-sdk] getClientForUrl called without a url");let t=$e.get(e);if(t)return $e.delete(e),$e.set(e,t),t;if(!ws())throw new Error("[opencode-sdk] No auth token provider configured \u2014 call configureBeeuni()/createBeeuni() before talking to a sandbox runtime.");let n=hn({baseUrl:e,fetch:j,eventTransport:bf});return $e.set(e,n),$e.size>kS&&$e.delete($e.keys().next().value),n}function bB(e){$e.delete(e)}function _B(){$e.clear()}var Ur=new Map;function PB(e){if(!e)throw new Error("[opencode-sdk] getPublicClientForUrl called without a url");let t=Ur.get(e);if(t)return t;let n=hn({baseUrl:e,fetch});return Ur.set(e,n),n}function SB(e){Ur.delete(e)}function xB(){Ur.clear()}async function RS(e){let t=await e.text().catch(()=>"");try{let n=JSON.parse(t);return n?.error||n?.message||t||e.statusText||`HTTP ${e.status}`}catch{return t||e.statusText||`HTTP ${e.status}`}}async function wB(e){let t=je();if(!t)throw new _("[opencode-sdk] Server URL not ready \u2014 sandbox is still loading",{code:"RUNTIME_UNAVAILABLE"});let n=e==="full"?"/beeuni/refresh":"/global/dispose",r=await j(`${t}${n}`,{method:"POST"}),s=r.headers.get("content-type")??"",o=/^application\/([\w.+-]+\+)?json\b/i.test(s.trim());if(!r.ok)throw new _(`System reload failed (${r.status}): ${await RS(r)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});if(!o)throw new _(`System reload endpoint is unavailable on this sandbox (${n})`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"});let i;try{i=await r.json()}catch(c){throw new _(`System reload returned malformed JSON from ${n}: ${c instanceof Error?c.message:String(c)}`,{status:r.status,response:r,code:"RUNTIME_UNAVAILABLE"})}let a=i===!0||typeof i=="object"&&i!==null&&i.ok===!0;return{success:a,mode:e,steps:a?[e==="full"?"refreshed workspace and restarted runtime":"reloaded config in place"]:[],errors:a?[]:[`the sandbox did not confirm the reload (${n})`]}}var Cf="frontend";function Lr(e,t,n){(e==="error"?console.error:e==="warn"?console.warn:e==="debug"?console.debug:console.log)(`[${Cf}] ${t}`,...n?[n]:[]);try{mt().app.log({service:Cf,level:e,message:t,extra:n})}catch{}}var Xe={debug:(e,t)=>Lr("debug",e,t),info:(e,t)=>Lr("info",e,t),warn:(e,t)=>Lr("warn",e,t),error:(e,t)=>Lr("error",e,t)};function CS(e){return{type:"heartbeat-gap",gapMs:e}}function IS(e){switch(e.type){case"message.updated":return{type:"message.updated",sessionID:e.properties.sessionID,message:e.properties.info};case"message.removed":return{type:"message.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID};case"message.part.updated":return{type:"message.part.updated",sessionID:e.properties.sessionID,part:e.properties.part};case"message.part.removed":return{type:"message.part.removed",sessionID:e.properties.sessionID,messageID:e.properties.messageID,partID:e.properties.partID};case"session.status":return{type:"session.status",sessionID:e.properties.sessionID,status:e.properties.status};case"session.idle":return{type:"session.idle",sessionID:e.properties.sessionID};case"session.error":return{type:"session.error",sessionID:e.properties.sessionID,error:e.properties.error};case"question.asked":return{type:"question.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,questions:e.properties.questions,tool:e.properties.tool};case"question.replied":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"replied",answers:e.properties.answers};case"question.rejected":return{type:"question.answered",sessionID:e.properties.sessionID,requestID:e.properties.requestID,outcome:"rejected"};case"permission.asked":return{type:"permission.asked",sessionID:e.properties.sessionID,requestID:e.properties.id,permission:e.properties.permission,patterns:e.properties.patterns,tool:e.properties.tool};case"permission.replied":return{type:"permission.replied",sessionID:e.properties.sessionID,requestID:e.properties.requestID,reply:e.properties.reply};case"todo.updated":return{type:"todo.updated",sessionID:e.properties.sessionID,todos:e.properties.todos};case"server.connected":return{type:"connection",status:"connected"};default:return null}}var TS={now:()=>Date.now(),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),random:()=>Math.random()},ES=16,MS=8,OS=6e4,DS=5e3,jS=250,$S=1e3,US=3e4,LS=5,BS=1e4,FS=4,NS=.5,qS=3e3,GS=3e4,WS=2e4,KS=2e3,VS=8;function HS(e){if(e.type==="session.status")return`session.status:${e.properties.sessionID}`;if(e.type==="lsp.updated")return"lsp.updated"}function zS(e,t){if(e?.type!=="message.part.delta"||t.type!=="message.part.delta")return;let n=e.properties,r=t.properties;if(n.partID!==r.partID||n.field!==r.field||n.messageID!==r.messageID||n.sessionID!==r.sessionID)return;let s=e.coalesced??[e];return s.push(t),{...t,properties:{...r,delta:n.delta+r.delta},coalesced:s}}function If(e){if(e.aborted)return{promise:Promise.resolve(),cleanup:()=>{}};let t=()=>{};return{promise:new Promise(r=>{t=()=>r(),e.addEventListener("abort",t,{once:!0})}),cleanup:()=>e.removeEventListener("abort",t)}}var xn=new WeakMap;function YS(e,t,n){let r=t.timers??TS,s=t.connectTimeoutMs??WS,o=t.heartbeatTimeoutMs??OS,i=t.maxConsecutiveHardFailures??VS,a=new AbortController;function c(b,...S){for(let O of n){let C=b(O);if(C)try{C(...S)}catch(P){console.warn("[opencode-events] subscriber handler threw, skipping",P)}}}let p=null,d=!1,g=b=>{p!==b&&(p=b,b&&c(S=>S.onConnectionChange,b))},m=r.now(),y=null,h=[],w,M=0,B=new Map,F=()=>{if(w&&r.clearTimeout(w),w=void 0,h.length===0)return;let b=h;h=[],B.clear(),M=r.now(),m=r.now();for(let S of b)S&&c(O=>O.onEvent,S.event)},f=()=>{if(w)return;let b=r.now()-M;w=r.setTimeout(F,Math.max(0,ES-b))};return(async()=>{let b=0,S=0,O=0;for(;!a.signal.aborted;){let C=!1,P=!1,x,v,k=null,$=r.now(),D=new AbortController;g("connecting");let E=If(a.signal);E.promise.then(()=>D.abort());try{let Z=await new Promise((St,nt)=>{let ce=!1;v=r.setTimeout(()=>{ce||(ce=!0,Xe.warn("SSE connect timed out, forcing reconnect",{connectTimeoutMs:s}),D.abort(),nt(new Error(`SSE connect timed out after ${s}ms`)))},s),e.global.event({signal:D.signal,sseDefaultRetryDelay:qS,sseMaxRetryDelay:GS,sseMaxRetryAttempts:1}).then(Re=>{ce||(ce=!0,r.clearTimeout(v),St(Re))},Re=>{ce||(ce=!0,r.clearTimeout(v),nt(Re))})}),{stream:et}=Z;if(y){let St=r.now()-y.lastActivityAt,nt=y.eventful;y=null,(nt||St>DS)&&c(ce=>ce.onGapRehydrate,St)}m=r.now();let tt=()=>{r.clearTimeout(x),x=r.setTimeout(()=>{Xe.warn("SSE heartbeat timeout, forcing reconnect"),D.abort()},o)};tt();let Jn=r.now(),Fb=et[Symbol.asyncIterator]();for(;!D.signal.aborted;){let St=Fb.next().then(Ce=>({kind:"next",result:Ce}),Ce=>({kind:"error",error:Ce})),nt=If(D.signal),ce=await Promise.race([St,nt.promise.then(()=>({kind:"aborted"}))]);if(nt.cleanup(),ce.kind==="aborted")break;if(ce.kind==="error")throw ce.error;if(ce.result.done)break;g("open"),tt();let Re=ce.result.value,xt=Re&&typeof Re=="object"&&"payload"in Re?Re.payload:Re;if(!xt?.type)continue;xt.type!=="server.connected"&&(C=!0);let Ps=zS(h[h.length-1]?.event,xt);if(Ps)h[h.length-1]={type:Ps.type,event:Ps};else{let Ce=HS(xt);if(Ce){let Li=B.get(Ce);Li!==void 0&&(h[Li]=void 0),B.set(Ce,h.length)}h.push({type:xt.type,event:xt})}f(),!(r.now()-Jn<MS)&&(Jn=r.now(),await new Promise(Ce=>r.setTimeout(Ce,0)))}P=C}catch(Z){if(a.signal.aborted)break;k=Z;let et=String(Z),tt=en(Z)||en(Z?.cause);if(Xe.error("SSE event stream error",{error:et,retryCount:b,isAuthError:tt}),tt)try{js(),await ot(),Xe.info("SSE: refreshed auth token after auth error")}catch(Jn){Xe.error("SSE: failed to refresh auth token",{error:String(Jn)})}}finally{r.clearTimeout(x),r.clearTimeout(v),D.abort(),E.cleanup(),F()}if(a.signal.aborted)break;let q=r.now()-$,Q=k?.cause?.status;if(S=!C&&(typeof Q=="number"&&Q>=400||q<KS)?S+1:0,S>=i){Xe.error("SSE event stream parked \u2014 giving up after consecutive hard failures",{consecutiveFailures:S,lastError:String(k)}),p=null,d=!0,c(Z=>Z.onParked,{consecutiveFailures:S,lastError:k});break}g("lost"),y={lastActivityAt:m,eventful:(y?.eventful??!1)||C},O=P&&q<BS?O+1:0;let ve=P&&O<=FS;ve?b=0:(b++,b>1&&Xe.warn("SSE event stream reconnecting",{retryCount:b}));let Zt=ve?jS:Math.min($S*2**Math.min(b-1,LS),US),ke=Math.round(Zt*(1+NS*(r.random?.()??0)));await new Promise(Z=>{let et=r.setTimeout(Z,ke),tt=()=>{r.clearTimeout(et),Z()};a.signal.addEventListener("abort",tt,{once:!0})})}})(),{subscribers:n,connectionState:()=>p,isParked:()=>d,teardown:()=>{p=null,a.abort(),w&&r.clearTimeout(w)}}}function qo(e){let{onEvent:t,onGapRehydrate:n,onParked:r,onConnectionChange:s,signal:o}=e,i=e.client??(e.url?Ue(e.url):void 0);if(!i)throw new Error("openEventStream needs the session runtime `url`");let a={onEvent:t,onGapRehydrate:n,onParked:r,onConnectionChange:s},c=xn.get(i);if(c?.isParked()&&(xn.delete(i),c=void 0),!c)c=YS(i,e,new Set([a])),xn.set(i,c);else{c.subscribers.add(a);let y=c.connectionState();y&&s?.(y)}let p=c,d=!1,g=()=>{d||(d=!0,o&&o.removeEventListener("abort",m),p.subscribers.delete(a),p.subscribers.size===0&&(p.teardown(),xn.get(i)===p&&xn.delete(i)))},m=()=>g();return o&&(o.aborted?g():o.addEventListener("abort",m,{once:!0})),{close:g}}function Tf(e){return{abort:async()=>{let{runtimeSessionId:t,runtimeUrl:n}=await e.ensureReady();return Ue(n).session.abort({sessionID:t})},rewind:async t=>{let{runtimeSessionId:n,runtimeUrl:r}=await e.ensureReady();return Ue(r).session.revert({sessionID:n,messageID:t})},restoreRewind:async()=>{let{runtimeSessionId:t,runtimeUrl:n}=await e.ensureReady();return Ue(n).session.unrevert({sessionID:t})},stream:async t=>{let{runtimeUrl:n}=await e.ensureReady();return qo({url:n,onEvent:t.onEvent,onGapRehydrate:t.onGapRehydrate,signal:t.signal})}}}function Df(e){if(e.error){let t=e.error,n=t?.data?.message||t?.message||(typeof t?.error=="string"?t.error:null)||"SDK request failed";throw new _(n,{status:t?.response?.status??t?.status,response:t?.response,details:t})}return e.data}async function Nt(e){let t=await e.text().catch(()=>""),n=null;try{n=JSON.parse(t)}catch{}return n?.error||t||e.statusText||`HTTP ${e.status}`}function te(e){let t=(e??je()).trim();if(!t)throw new Sn;return t}async function Fr(e,t){let n=await j(`${te(t)}${e}`);if(!n.ok)throw new _(await Nt(n),{status:n.status,response:n});return n.json()}var Ko=["/workspace","/tmp","/home","/opt"],JS=Ko.filter(e=>e!=="/workspace");function jf(e){return Ko.some(t=>e===t||e.startsWith(`${t}/`))}function Rn(e){return jf(e)?e:`/workspace/${e.replace(/^\/+/,"")}`}function ft(e){let t=e||"";if(t==="/workspace"||t==="/workspace/")return"";if(t.startsWith("/workspace/"))t=t.slice(11);else if(JS.some(n=>t===n||t.startsWith(`${n}/`)))return t;for(;t.startsWith("/");)t=t.slice(1);return t}var $f=ft;async function Cn(e,t){let n=te(t),r=ft(e)||".";return(await Fr(`/file?path=${encodeURIComponent(r)}`,n)).map(o=>({...o,path:o.absolute||`/workspace/${o.path}`}))}async function In(e,t){let n=te(t),r=ft(e),s=await j(`${n}/file/content?path=${encodeURIComponent(r)}`);if(!s.ok)throw new _(await Nt(s),{status:s.status,response:s});return s.json()}async function QS(e,t,n){let r=te(n),s=ft(e),o=await j(`${r}/file/raw?path=${encodeURIComponent(s)}`);if(!o.ok)throw new _(await Nt(o),{status:o.status,response:o});if((o.headers.get("content-type")||"").includes("text/html"))throw new _("File could not be loaded (raw byte route unavailable)",{status:o.status,response:o,code:"INVALID_CONTENT_TYPE"});let i=await o.blob();return t&&(!i.type||i.type==="application/octet-stream")?new Blob([i],{type:t}):i}var XS=8,Br=0,Uf=[];async function ZS(){if(Br<XS){Br++;return}await new Promise(e=>Uf.push(e)),Br++}function ex(){Br--,Uf.shift()?.()}function tx(e,t){let n=te(t);return yr(`${n}/file/raw?path=${encodeURIComponent(ft(e))}`)}async function Tn(e,t){await ZS();try{let n=te(t);try{return await QS(e,void 0,n)}catch{}let r=await In(e,n);if(r.encoding==="base64"&&r.content){let s=Uint8Array.from(atob(r.content),o=>o.charCodeAt(0));return new Blob([s],{type:r.mimeType||"application/octet-stream"})}return new Blob([r.content??""],{type:r.mimeType||"text/plain;charset=utf-8"})}finally{ex()}}async function Nr(e){return Fr("/file/status",te(e))}async function qr(e,t,n){let r=te(n),s=new URLSearchParams({query:e});return t?.type&&s.set("type",t.type),t?.limit&&s.set("limit",String(t.limit)),Fr(`/find/file?${s.toString()}`,r)}async function Gr(e,t){let n=te(t);return(await Fr(`/find?pattern=${encodeURIComponent(e)}`,n)).map(s=>({path:typeof s.path=="string"?s.path:s.path?.text??"",lines:typeof s.lines=="string"?s.lines:s.lines?.text??"",line_number:s.line_number,absolute_offset:s.absolute_offset,submatches:(s.submatches??[]).map(o=>({start:o.start,end:o.end}))}))}var wn=[400,1200],nx=e=>e===408||e===429||e===502||e===503||e===504,Ef=e=>new Promise(t=>setTimeout(t,e));function rx(e){let t=e?.name;return t==="TimeoutError"||t==="AbortError"}var Go=3e4,Lf=15*6e4,sx=256;function An(e){if(typeof e!="number"||!Number.isFinite(e)||e<=0)return Go;let t=Go+e/sx;return Math.min(Lf,Math.max(Go,Math.round(t)))}async function ox(e){let t=await e.text().catch(()=>""),n=null;try{n=t?JSON.parse(t):null}catch{}let r=n?.error||n?.message||n?.data?.message;return typeof r=="string"&&r.trim()?r.trim():(e.headers.get("content-type")||"").includes("text/html")||/<html[\s>]/i.test(t)?e.status===502||/bad gateway/i.test(t)?"Bad gateway while reaching the sandbox upload service. Please retry.":e.statusText||`HTTP ${e.status}`:t.replace(/\s+/g," ").trim().slice(0,500)||e.statusText||`HTTP ${e.status}`}async function vn(e,t){let n;for(let s=0;s<=wn.length;s++){let o;try{o=await t(e())}catch(a){if(n=a,rx(a)||s===wn.length)break;await Ef(wn[s]);continue}if(o.ok)return o.json();let i=await ox(o);if(n=new _(`Upload failed (${o.status}): ${i}`,{status:o.status,response:o}),!nx(o.status)||s===wn.length)throw n;await Ef(wn[s])}if(n instanceof _)throw n;let r=n instanceof Error?n.message:String(n||"request failed");throw new _(`Upload failed: ${r}`)}var Wo=8*1024*1024;function ix(e,t){if(!(typeof e?.size!="number"||!Number.isFinite(t))&&!(e.size>=t))throw new _(`Upload verification failed for ${e.path}: expected ${t} bytes, received ${e.size}`,{code:"UPLOAD_SIZE_MISMATCH"})}function Mf(e,t){try{e?.onProgress?.(t)}catch{}}function Of(e,t,n){let r=new FormData,s=(t??"").trim();return s&&r.append("path",s.startsWith("/")?s:`/${s}`),n&&r.append("filename",n),n?r.append("file",e,n):r.append("file",e),r}function ax(e){let t=e.lastIndexOf("/");return t<0?{parent:"",name:e}:{parent:e.slice(0,t)||"/",name:e.slice(t+1)}}async function En(e,t,n,r,s){let o=typeof r=="string"?r:void 0,i=typeof r=="string"?s:r,a=te(o),c=An(e.size),p=n||(e instanceof File?e.name:"")||"";if(e.size<=Wo){let y=await vn(()=>Of(e,t,p),h=>j(`${a}/file/upload`,{method:"POST",body:h},{timeoutMs:c}));return ix(y[0],e.size),Mf(i,{loadedBytes:e.size,totalBytes:e.size}),y}let g=(await vn(()=>Of(new Blob([],{type:e.type}),t,p),y=>j(`${a}/file/upload`,{method:"POST",body:y},{timeoutMs:An(0)})))[0]?.path;if(!g)throw new _("Upload reservation returned no file path",{code:"UPLOAD_NO_RESULT"});let m=ax(g);if(!m.name)throw new _(`Upload reservation returned an invalid file path: ${g}`,{code:"UPLOAD_INVALID_PATH"});try{for(let y=0;y<e.size;y+=Wo){let h=Math.min(e.size,y+Wo),w=e.slice(y,h,e.type),M=await vn(()=>{let B=new FormData;return m.parent&&B.append("path",m.parent),B.append("filename",m.name),B.append("first",y===0?"true":"false"),B.append("offset",String(y)),B.append("file",w,m.name),B},B=>j(`${a}/file/append`,{method:"POST",body:B},{timeoutMs:An(w.size)}));if(M.path!==g||M.size!==h)throw new _(`Upload verification failed for ${g}: expected ${h} bytes, received ${M.size}`,{code:"UPLOAD_SIZE_MISMATCH"});Mf(i,{loadedBytes:h,totalBytes:e.size})}}catch(y){throw await qt(g,a).catch(()=>{}),y}return[{path:g,size:e.size}]}function cx(e,t,n){let r=te(n);return vn(()=>{let s=new FormData;return t&&s.append("path",t),s.append("file",{uri:e.uri,name:e.name,type:e.type||"application/octet-stream"}),s},s=>j(`${r}/file/upload`,{method:"POST",body:s},{timeoutMs:lx}))}var lx=Lf;function ux(e,t,n){let r=te(n),s=An(t.size);return vn(()=>{let o=new FormData;return o.append(e,t,e.split("/").pop()||"file"),o},o=>j(`${r}/file/upload`,{method:"POST",body:o},{timeoutMs:s}))}var kn=class extends _{path;constructor(t){super(`A file or folder already exists at ${t}`,{status:409,code:"FILE_EXISTS"}),this.name="FileExistsError",this.path=t}};async function Wr(e,t){let n=te(t),r=e.trim(),o=(r.startsWith("/")?r:`/${r}`).split("/"),i=o.pop()||"untitled",a=o.join("/")||"/workspace",c=Rn(`${a}/${i}`),p=[];try{p=await Cn(Bf(c),n)}catch(g){if(!(g instanceof _&&g.status===404))throw g}if(p.some(g=>g.name===Ff(c)))throw new kn(c);let d=await Nf(c,new Blob([],{type:"application/octet-stream"}),n,{overwrite:!1});return[{path:d.path,size:d.bytes}]}async function Kr(e,t,n){let r=te(n);return ux(t,await Tn(e,r),r)}function px(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Bf(e){let t=e.lastIndexOf("/");return t<=0?"/":e.slice(0,t)}function Ff(e){return e.slice(e.lastIndexOf("/")+1)}function dx(){let e=typeof crypto<"u"?crypto:void 0;if(e?.randomUUID)return e.randomUUID();if(e?.getRandomValues){let t=new Uint8Array(8);return e.getRandomValues(t),[...t].map(n=>n.toString(16).padStart(2,"0")).join("")}return`${Date.now().toString(36)}-${Math.random().toString(36).slice(2,10)}`}async function Vr(e,t,n){let r=te(n),s=Rn(px(e.trim()));return Nf(s,t,r,{overwrite:!0})}async function Nf(e,t,n,r){let s=Ff(e);if(!s)throw new _(`writeFile needs a file path, got "${e}"`,{code:"INVALID_PATH"});let o=Bf(e);await Mn(o,n).catch(()=>{});let i=dx(),a=await En(t,o,`.${s}.beeuni-write-${i}`,n),c=a[0]?.path;if(!c)throw new _(`Upload returned no file for ${e}`,{code:"UPLOAD_NO_RESULT"});let p=Rn(c);try{await qf(p,e,n,r.overwrite)}catch(g){throw await qt(p,n).catch(()=>{}),!r.overwrite&&g instanceof _&&g.status===409?new kn(e):g}let d=a[0]?.size;return{path:e,bytes:typeof d=="number"?d:t.size}}async function qt(e,t){let n=await j(`${te(t)}/file`,{method:"DELETE",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!n.ok)throw new _(`Delete failed (${n.status}): ${await Nt(n)}`,{status:n.status,response:n});return n.json()}async function Mn(e,t){let n=await j(`${te(t)}/file/mkdir`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({path:e})});if(!n.ok)throw new _(`Mkdir failed (${n.status}): ${await Nt(n)}`,{status:n.status,response:n});return n.json()}async function Hr(e,t,n){return qf(e,t,te(n),!0)}async function qf(e,t,n,r){let s=await j(`${n}/file/rename`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(r?{from:e,to:t}:{from:e,to:t,overwrite:!1})});if(!s.ok)throw new _(`Rename failed (${s.status}): ${await Nt(s)}`,{status:s.status,response:s});return s.json()}async function Gf(){return Df(await mt().project.current())}async function Vo(){return Df(await mt().global.health())}async function Wf(){try{return(await Vo()).healthy===!0}catch{return!1}}var gx={list:Cn,read:In,readBlob:Tn,status:Nr,findFiles:qr,findText:Gr,upload:En,write:Vr,create:Wr,copy:Kr,remove:qt,mkdir:Mn,rename:Hr,currentProject:Gf,health:Vo,isReachable:Wf,toDaemonPath:ft,toSandboxAbsolutePath:Rn,toWorkspaceRelative:$f};function Kf(e){return{list:async t=>Cn(t,(await e()).runtimeUrl),read:async t=>In(t,(await e()).runtimeUrl),readBlob:async t=>Tn(t,(await e()).runtimeUrl),status:async()=>Nr((await e()).runtimeUrl),findFiles:async(t,n)=>qr(t,n,(await e()).runtimeUrl),findText:async t=>Gr(t,(await e()).runtimeUrl),upload:async(t,n,r,s)=>En(t,n,r,(await e()).runtimeUrl,s),write:async(t,n)=>Vr(t,n,(await e()).runtimeUrl),create:async t=>Wr(t,(await e()).runtimeUrl),copy:async(t,n)=>Kr(t,n,(await e()).runtimeUrl),remove:async t=>qt(t,(await e()).runtimeUrl),mkdir:async t=>Mn(t,(await e()).runtimeUrl),rename:async(t,n)=>Hr(t,n,(await e()).runtimeUrl)}}function Vf(e){return{get:t=>wr(e.projectId,e.sessionId,t),presence:(t,n)=>l.put(`/projects/${e.projectId}/sessions/${e.sessionId}/presence`,t,{showErrors:!1,keepalive:n?.keepalive??!t.active}),cost:()=>Tr(e.sessionId,{projectId:e.projectId}),update:t=>Nu(e.projectId,e.sessionId,t),delete:()=>(e.forgetReady(),qu(e.projectId,e.sessionId)),start:(...t)=>ct(e.projectId,e.sessionId,...t),startOrThrow:(...t)=>dp(e.projectId,e.sessionId,...t),restart:()=>(e.forgetReady(),vr(e.projectId,e.sessionId)),stop:()=>(e.forgetReady(),kr(e.projectId,e.sessionId)),configState:()=>Gu(e.projectId,e.sessionId),reloadConfig:t=>(e.forgetReady(),Wu(e.projectId,e.sessionId,t)),reloadConfigStream:(...t)=>(e.forgetReady(),Ku(e.projectId,e.sessionId,...t)),setSharing:t=>Su(e.projectId,e.sessionId,t),previews:()=>vu(e.projectId,e.sessionId),participants:()=>xu(e.projectId,e.sessionId),watch:()=>wu(e.projectId,e.sessionId),setWatch:t=>Au(e.projectId,e.sessionId,t),commit:t=>su(e.projectId,e.sessionId,t),publicShares:{list:()=>ku(e.projectId,e.sessionId),create:(...t)=>Ru(e.projectId,e.sessionId,...t),revoke:(...t)=>Cu(e.projectId,e.sessionId,...t)}}}function Hf(e){return{reminders:{list:()=>mg(e.projectId,e.sessionId),create:t=>fg(e.projectId,e.sessionId,t),update:(t,n)=>ro(e.projectId,e.sessionId,t,n),remove:t=>so(e.projectId,e.sessionId,t)},audit:(t,n)=>Eu(e.projectId,e.sessionId,t,n),attachments:{upload:(t,n)=>Bm(e.projectId,e.sessionId,t,n),read:(t,n)=>Fm(`beeuni-attachment://${e.projectId}/${e.sessionId}/${t}`,n)},transcript:t=>Mu(e.projectId,e.sessionId,t),messageAuthors:()=>Ju(e.projectId,e.sessionId),modelUsage:()=>Qu(e.projectId,e.sessionId),transcriptSync:t=>Ou(e.projectId,e.sessionId,t),turn:()=>Du(e.projectId,e.sessionId),prompts:{create:t=>Ar(e.projectId,e.sessionId,t),list:()=>ju(e.projectId,e.sessionId),remove:t=>$u(e.projectId,e.sessionId,t),retry:t=>Bu(e.projectId,e.sessionId,t),edit:(t,n)=>Uu(e.projectId,e.sessionId,t,n),interrupt:t=>Lu(e.projectId,e.sessionId,t),hold:t=>Fu(e.projectId,e.sessionId,t)},ensureReady:e.ensureReady}}function fx(e,t){return e?.some(n=>n.startsWith("session."))?e.includes(t):!0}var yx=["control_plane","provider_ingress","daemon","upstream_port"];function zf(e){return typeof e=="string"&&yx.includes(e)?e:null}function Yf(e){return e?e.runtimeReady!==void 0?e.runtimeReady===!0:e.harness?e.harness.ready===!0:e.opencode!==void 0?e.opencode==="ok"||e.opencode===!0:e.status!=="starting"&&e.status!=="down"&&e.status!=="error":!1}async function Jf(e,t){let n=(e===void 0?je():e)||null;if(!n)return{status:0,ok:!1,health:null,body:"",hop:null,upstreamStatus:null};let r=await j(`${n}/beeuni/health`,{method:"GET",...t},{retryOnAuthError:!1}),s=await r.text().catch(()=>""),o=null;try{o=s?JSON.parse(s):null}catch{o=null}let i=o,a=zf(r.headers.get("X-Beeuni-Proxy-Hop"))??zf(o?.hop),c=Number(r.headers.get("X-Beeuni-Upstream-Status")),p=o?.upstream_status,d=Number.isFinite(c)&&c>0?c:typeof p=="number"?p:null;return{status:r.status,ok:r.ok,health:i,body:s,hop:a,upstreamStatus:d}}var Qf=/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s)"'<>]*/g,Xf=/^https?:\/\/p(\d+)-([^.]+)\.localhost(?::(\d+))?(\/.*)?$/,Zf=/^https?:\/\/(?:dev|staging|prod|preview)-p(\d+)-([a-z0-9-]+)\.[^/]+?(?::(\d+))?(\/.*)?$/i,ey=new Set([22,4096,parseInt(ze.BEEUNI_MASTER,10)]);function hx(e){return Xf.test(e)}function zr(e){if(!e)return"/";let t=e,n=t.indexOf("](");n!==-1&&(t=t.slice(0,n));let r=t.toLowerCase().indexOf("%5d(");return r!==-1&&(t=t.slice(0,r)),t?t.startsWith("/")?t:`/${t}`:"/"}function bx(e){let t=e.indexOf("](");return t===-1?e:e.slice(0,t)}var _x=new Set(["'",'"',"`","<","(","["]),Px=new Set([">","'",'"',"`",")","]",",",";",".","!","?"]);function Sx(e){let t=0,n=e.length;for(;t<n&&(e[t]===" "||e[t]===" ");)t++;for(;n>t&&(e[n-1]===" "||e[n-1]===" ");)n--;for(;t<n&&_x.has(e[t]);)t++;for(;n>t&&Px.has(e[n-1]);)n--;return e.slice(t,n)}function xx(e){return e.match(/https?:\/\/(?:localhost|127\.0\.0\.1):\d{1,5}[^\s"'<>)]*/i)?.[0]??null}var wx=/^\/proxy\/(\d{1,5})(\/.*)?$/,Ax=/^\/(connectors|settings|dashboard|projects|agents|skills|tools|commands|support|changelog|files|p|browser|desktop|terminal|sessions|services|workspace|channels|scheduled-tasks|marketplace|templates|tunnel|admin|auth)(\/|$|\?)/;function vx(e){if(!e)return!1;try{let t=new URL(e);return t.hostname!=="localhost"&&t.hostname!=="127.0.0.1"?!1:Ax.test(t.pathname)}catch{return!1}}function Yr(e){if(!e)return null;let t=Sx(bx(e.trim())),n=oy(t);if(n){let r=zr(n.path||"/");return{originalUrl:`http://localhost:${n.port}${r}`,port:n.port,path:r}}try{let r=new URL(t);if(r.protocol!=="http:"&&r.protocol!=="https:"||r.hostname!=="localhost"&&r.hostname!=="127.0.0.1"||!r.port)return null;let s=parseInt(r.port,10);if(!Number.isInteger(s)||s<1||s>65535)return null;let o=`${r.pathname||"/"}${r.search}${r.hash}`,i=parseInt(ze.BEEUNI_MASTER,10);if(s===i){let c=r.pathname.match(wx);if(c){let p=parseInt(c[1],10);if(p>=1&&p<=65535)return s=p,o=zr(`${c[2]||"/"}${r.search}${r.hash}`),{originalUrl:`http://localhost:${s}${o}`,port:s,path:o}}}let a=zr(o);return{originalUrl:`${r.protocol}//${r.hostname}:${s}${a}`,port:s,path:a}}catch{let r=xx(e);return r&&r!==e?Yr(r):null}}function kx(e){let t=[],n=/```[\s\S]*?```/g,r;for(;(r=n.exec(e))!==null;)t.push([r.index,r.index+r[0].length]);let s=/`[^`\n]+`/g;for(;(r=s.exec(e))!==null;){let o=r.index,i=o+r[0].length;t.some(([c,p])=>o>=c&&i<=p)||t.push([o,i])}return t}function Rx(e,t){return t.some(([n,r])=>e>=n&&e<r)}function Cx(e){let t=[],n=new Set,r=kx(e);Qf.lastIndex=0;let s;for(;(s=Qf.exec(e))!==null;){let o=Yr(s[0]);if(!o)continue;let{originalUrl:i,port:a,path:c}=o;a<1||a>65535||ey.has(a)||n.has(i)||(n.add(i),t.push({originalUrl:i,port:a,path:c,startIndex:s.index,endIndex:s.index+i.length,inCodeBlock:Rx(s.index,r)}))}return t}function eF(e){return Cx(e).length>0}function Ix(e){try{let{hostname:t}=new URL(e);return t==="localhost"||t==="127.0.0.1"}catch{return!1}}function ty(e){return e.trim().toLowerCase().split("_").join("-")}function ny(e){let t=e.length;for(;t>0&&e.charCodeAt(t-1)===47;)t--;return e.slice(0,t)}function Tx(e,t,n){let r=n.previewUrlTemplate;if(!r||!r.includes("{port}")||!r.includes("{sandbox}"))return null;let s=r.split("{port}").join(String(e)).split("{sandbox}").join(ty(n.sandboxId));return`${ny(s)}${t}`}function Ex(e){return e.sandboxId.trim().length>0}function yt(e,t,n){let r=zr(t);if(!Ex(n))return jx(e,r);let s=Tx(e,r,n);return s||(Ix(n.apiBaseUrl)?`http://p${e}-${ty(n.sandboxId)}.localhost:${n.backendPort}${r}`:`${ny(n.apiBaseUrl)}/p/${n.sandboxId}/${e}${r}`)}function tF(e,t){if(!e)return;let r=e.replace(/^\/workspace\//,"").replace(/^\/+/,"").split("/").filter(Boolean).map(s=>encodeURIComponent(s)).join("/");return yt(3211,`/open?path=/workspace/${r}`,t)}function Mx(e){return`/open?path=/${(e.startsWith("/workspace")?e:`/workspace/${e.replace(/^\/+/,"")}`).split("/").filter(Boolean).map(r=>encodeURIComponent(r)).join("/")}`}function nF(e){return`http://localhost:3211${Mx(e)}`}function Ox(){return"/health"}function rF(e){return yt(3211,Ox(),e)}function sF(e,t){return yt(e,"/",t)}function Dx(e){let t=Yr(e);return!(!t||ey.has(t.port)||vx(e))}function ry(e,t){if(!e)return e;let n=Yr(e);return n?Dx(n.originalUrl)?yt(n.port,n.path,t):n.originalUrl:e}function jx(e,t="/"){return`http://localhost:${e}${t}`}var sy=/^https?:\/\/[^/]+\/v1\/p\/([^/]+)\/(\d+)(\/.*)?$/;function oy(e){let t=e.match(Xf);if(t)return{port:parseInt(t[1],10),sandboxId:t[2],backendPort:t[3]?parseInt(t[3],10):80,path:t[4]||"/"};let n=e.match(Zf);if(n){let s=443;try{let o=new URL(e);s=o.port?parseInt(o.port,10):o.protocol==="https:"?443:80}catch{return null}return{port:parseInt(n[1],10),sandboxId:n[2],backendPort:s,path:n[4]||"/"}}let r=e.match(sy);if(r)try{let s=new URL(e);return{port:parseInt(r[2],10),sandboxId:r[1],backendPort:parseInt(s.port,10)||(s.protocol==="https:"?443:80),path:r[3]||"/"}}catch{return null}return null}function oF(e){try{let t=oy(e);return t?`http://localhost:${t.port}${t.path}`:null}catch{return null}}function iF(e){return hx(e)||Zf.test(e)||sy.test(e)}function aF(e){try{let{hostname:t,port:n}=new URL(e);return(t==="localhost"||t==="127.0.0.1")&&n!==""}catch{return!1}}var On="/web-proxy/";function cF(e,t){try{let n=new URL(e);if(n.protocol!=="http:"&&n.protocol!=="https:")return null;let r=n.protocol.replace(":",""),s=`${On}${r}/${n.host}${n.pathname}${n.search}${n.hash}`,o=parseInt(ze.BEEUNI_MASTER,10);return`${yt(o,"/",t).replace(/\/$/,"")}${s}`}catch{return null}}function lF(e){try{let t=new URL(e),n=t.pathname.indexOf(On);if(n===-1)return null;let s=t.pathname.slice(n+On.length).match(/^(https?)\/([\w.\-]+(?::\d+)?)(\/.*)?$/);if(!s)return null;let o=s[1],i=s[2],a=s[3]||"/";return`${o}://${i}${a}${t.search}${t.hash}`}catch{return null}}function uF(e){try{return new URL(e).pathname.includes(On)}catch{return e.includes(On)}}function pF(e){if(!e)return!1;let t=e.trim();return!!(/^https?:\/\/(?!localhost|127\.0\.0\.1)/i.test(t)||/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t))}function dF(e){let t=e.trim();return t?/^https?:\/\//i.test(t)?t:/^[a-z0-9][\w.-]*\.[a-z]{2,}/i.test(t)?`https://${t}`:null:null}function iy(e){return{health:t=>Jf(e.tryResolveReady()?.runtimeUrl??null,t),previewUrl:(t,n="/")=>yt(t,n,e.resolvePreviewOptsForSandbox(e.requireReady("previewUrl").sandboxId)),proxyUrl:t=>ry(t,e.resolvePreviewOptsForSandbox(e.requireReady("proxyUrl").sandboxId)),sandboxPortUrl:t=>at(e.requireReady("sandboxPortUrl").sandboxId,t)}}function Ho(e,t,n,r){let s,o,{persistedPromptDefaults:i,clearPersistedDefaults:a}=Zm(e,t),{ensureReady:c,tryResolveReady:p,requireReady:d,forgetReady:g}=sf(e,t,n),m={projectId:e,sessionId:t,ensureReady:c,tryResolveReady:p,requireReady:d,forgetReady:g,resolvePreviewOptsForSandbox:r,get model(){return s},set model(y){s=y},get agent(){return o},set agent(y){o=y},clearPersistedDefaults:a,persistedPromptDefaults:i};return{...Vf(m),...Hf(m),...iy(m),...uf(m),...yf(m),...Tf(m),files:Kf(c),...lf(m),get runtime(){return Ue(d("runtime").runtimeUrl)}}}function ay(e){return{apps:{list:()=>Kg(e),create:t=>Vg(e,t),get:t=>io(e,t),update:(...t)=>Hg(e,...t),access:{get:(...t)=>Qg(e,...t),update:(...t)=>Zg(e,...t),session:(...t)=>em(e,...t),agents:t=>Xg(e,t)},remove:t=>zg(e,t),token:t=>Yg(e,t),authEnv:t=>Jg(e,t),artifacts:{register:t=>ao(e,t),uploadArchive:(...t)=>tm(e,...t),finalize:(...t)=>co(e,...t)},deployments:{create:(...t)=>nm(e,...t),list:t=>rm(e,t),get:(...t)=>sm(e,...t),logs:(...t)=>om(e,...t),remove:(...t)=>cm(e,...t)},start:t=>im(e,t),stop:t=>am(e,t),rollback:(...t)=>lm(e,...t),machines:{list:t=>um(e,t),start:(t,n)=>pm(e,t,n),stop:(t,n)=>dm(e,t,n),restart:(t,n)=>gm(e,t,n),destroy:(t,n)=>mm(e,t,n)},scale:(t,n)=>fm(e,t,n),exec:(...t)=>ym(e,...t),volumes:{list:t=>hm(e,t),create:(...t)=>bm(e,...t),update:(...t)=>_m(e,...t),destroy:(...t)=>Pm(e,...t),snapshots:(...t)=>Sm(e,...t),snapshot:(...t)=>xm(e,...t),restore:(...t)=>wm(e,...t),fork:(...t)=>Am(e,...t)}}}}function cy(e){return{list:()=>tc(e),invite:(...t)=>sc(e,...t),update:(...t)=>nc(e,...t),revoke:t=>rc(e,t),pendingInvites:()=>oc(e),resendInvite:(...t)=>ac(e,...t),revokeInvite:(...t)=>ic(e,...t),requests:()=>Xa(e),approveRequest:(...t)=>Za(e,...t),rejectRequest:(...t)=>ec(e,...t),groupGrants:()=>cc(e),attachGroupGrant:(...t)=>lc(e,...t),updateGroupGrant:(...t)=>uc(e,...t),detachGroupGrant:t=>pc(e,t),resourceGrants:{list:()=>dc(e),create:t=>gc(e,t),remove:t=>mc(e,t)}}}function ly(e){return{tokens:{list:()=>vg(e),create:t=>kg(e,t),revoke:t=>Rg(e,t)},setupLinks:{requestSecret:t=>jg(e,t),requestConnector:t=>$g(e,t)},validateManifest:t=>Ea(e,t),gitToken:()=>Ma(e),agentIdentities:()=>$d(e),secrets:{list:()=>bc(e),upsert:t=>_c(e,t),setStrategy:(...t)=>Pc(e,...t),broker:(...t)=>Sc(e,...t),remove:t=>vc(e,t),setPersonal:(...t)=>kc(e,...t),removePersonal:t=>Rc(e,t),setGitCredential:t=>Ac(e,t),listProviderOAuth:()=>xc(e),startProviderOAuth:(...t)=>Ms(e,...t),pollProviderOAuth:(...t)=>Os(e,...t),removeProviderOAuth:t=>wc(e,t)},access:cy(e)}}function uy(e){return{list:()=>Nc(e),listAll:()=>qc(e),reconcile:(...t)=>Gc(e,...t),reconcileMember:(...t)=>Wc(e,...t),updateCredential:(...t)=>Kc(e,...t),revoke:(...t)=>Vc(e,...t),activate:(...t)=>Hc(e,...t),setDefault:(...t)=>zc(e,...t),rename:(...t)=>Yc(e,...t),share:(...t)=>Qc(e,...t),addComputer:(...t)=>Jc(e,...t),connect:(...t)=>Xc(e,...t),finalize:(...t)=>Zc(e,...t)}}function Jr(e){return{catalog:t=>rn(e,t),tools:()=>$s(e),search:(...t)=>Fc(e,...t),describe:(...t)=>Us(e,...t),call:(...t)=>Ct(e,...t),callAction:(t,n,r,s)=>Ct(e,`${t}.${n}`,r,s),accounts:(...t)=>Ls(e,...t),uploadAttachment:(...t)=>Bs(e,...t)}}function zo(e,t){return{slug:t,run:(r,s,o)=>Ws(e,t,r,s,o),call:(r,s,o)=>Ct(e,`${t}.${r}`,s,o),describe:async r=>r!==void 0?Us(e,`${t}.${r}`):(await rn(e,{slug:t,includeSchemas:!0,includeOutputSchemas:!0})).find(o=>o.slug===t)??null,accounts:()=>Ls(e,t),paginate:(r,s,o)=>_l(e,t,r,s,o),uploadAttachment:(r,s)=>Bs(e,r,{...s,connector:t})}}var $x=100,Ux=0,Lx=new Set(["attachment_size_mismatch","attachment_failed"]),py=()=>new _("Attachment expired. Attach the file again.",{code:"attachment_expired"});function dy(e){if(!e||typeof e.attachment_id!="string"||!e.attachment_id||typeof e.filename!="string"||!e.filename||typeof e.mime!="string"||!e.mime||!Number.isSafeInteger(e.size)||e.size<=0||e.size>52428800||!Number.isFinite(Date.parse(e.expires_at))||Date.parse(e.expires_at)<=Date.now())throw new Error("Attachment metadata is invalid or expired. Attach the file again.");return{attachment_id:e.attachment_id,filename:e.filename,mime:e.mime,size:e.size,expires_at:e.expires_at}}function gy(e,t={}){let n=t.concurrency??2;if(!Number.isInteger(n)||n<1||n>20)throw new Error("Attachment concurrency must be between 1 and 20");let r=new Map,s=new Set,o=new Set,i=0,a=!1,c,p={attachments:[]},d=()=>[...r.values()].filter(f=>!f.handedOff);function g(f,b){f.removalDeleted||(f.removalDeleted=!0,an(e,b).catch(()=>{}))}function m(){c&&clearTimeout(c);let f=d().map(({item:S})=>S);(f.length!==p.attachments.length||f.some((S,O)=>S!==p.attachments[O]))&&(p={attachments:f});let b=Math.min(...f.filter(S=>S.status==="ready").map(S=>Date.parse(S.attachment.expires_at)));Number.isFinite(b)&&!a&&(c=setTimeout(()=>{for(let S of d())S.item.status==="ready"&&Date.parse(S.item.attachment.expires_at)<=Date.now()&&(S.item={...S.item,status:"error",error:py()});m()},Math.min(2147483647,Math.max(0,b-Date.now()))),typeof c=="object"&&"unref"in c&&c.unref());for(let S of s)S();for(let S of[...o])S()}function y(){if(a)throw new Error("Attachment controller is disposed");if(!e)throw new Error("A project is required to attach files");return e}function h(f){y();let b=d();if(b.length+f.length>20)throw new Error("A message can contain up to 20 attachments");if(f.some(O=>!Number.isSafeInteger(O)||O<=0||O>52428800))throw new Error("Each attachment must contain 1 byte to 50 MiB");if(b.reduce((O,C)=>O+C.item.size,0)+f.reduce((O,C)=>O+C,0)>104857600)throw new Error("Message attachments exceed 100 MiB")}function w(){for(let f of r.values()){if(i>=n)break;if(f.item.status!=="pending"||!f.item.file||a&&!f.handedOff)continue;let b=f.item.file;i++;let S=++f.generation,O=new AbortController;f.abort=O,f.item={...f.item,status:"uploading",error:void 0};let C=()=>(!a||f.handedOff===!0)&&r.get(f.item.id)===f&&f.generation===S,P,x=0,v,k=()=>{v=void 0,!(!C()||f.item.status!=="uploading"||P===void 0)&&(f.item={...f.item,receivedBytes:P},P=void 0,x=Date.now(),m())},$=D=>Math.floor(D*100/f.item.size);Pr(e,b,{resume:f.upload,signal:O.signal,onUpload:D=>{f.upload=D,f.removed&&(O.abort(),g(f,D.attachment_id))},onProgress:D=>{if(!C()||$(D)===$(f.item.receivedBytes)||(P=D,v))return;let E=x+$x-Date.now();if(E<=0)return k();v=setTimeout(k,E),typeof v=="object"&&"unref"in v&&v.unref()},onProcessing:()=>{v&&clearTimeout(v),v=void 0,P=void 0,C()&&(f.item={...f.item,status:"processing",receivedBytes:f.item.size},m())}}).then(D=>{C()&&(f.item={...f.item,status:"ready",attachment:dy(D),receivedBytes:D.size})}).catch(D=>{D instanceof _&&Lx.has(D.code??"")&&(f.upload=void 0),C()&&(f.item={...f.item,status:D instanceof _&&D.code==="ABORTED"?"aborted":"error",error:D instanceof Error?D:new Error(String(D))})}).finally(()=>{i--,v&&clearTimeout(v),f.abort===O&&(f.abort=void 0),m(),w()})}m()}function M(f){h(f.map(S=>S.size));let b=f.map(S=>{let O=`attachment-${++Ux}`;return r.set(O,{generation:0,item:{id:O,file:S,filename:S.name,mime:S.type||"application/octet-stream",size:S.size,status:"pending",receivedBytes:0}}),O});return m(),w(),b}function B(f){let b=r.get(f);!b||b.item.status==="ready"||(b.generation++,b.abort?.abort(),b.item={...b.item,status:"aborted",error:new Error("Attachment upload cancelled")},m())}function F(f,{signal:b}={}){let S=[...f];return new Promise((O,C)=>{let P=()=>{o.delete(k),b?.removeEventListener("abort",v)},x=$=>{P(),C($)},v=()=>x(be()),k=()=>{let $=!1;for(let E of S){let q=r.get(E);if(!q)return x(new Error("Attachment was removed before it was sent"));if(a&&!q.handedOff)return x(new Error("Attachment controller is disposed"));if(q.item.status==="error"||q.item.status==="aborted")return x(q.item.error??new Error("Attachment upload failed"));q.item.status!=="ready"&&($=!0)}if($)return;let D;try{D=S.map(E=>{let q=dy(r.get(E).item.attachment);return{type:"file",attachment_id:q.attachment_id,filename:q.filename,mime:q.mime}})}catch(E){return x(E instanceof Error?E:new Error(String(E)))}P(),O(D)};if(b?.aborted)return v();o.add(k),b?.addEventListener("abort",v,{once:!0}),k()})}return{add:f=>M([f])[0],addMany:M,retry(f){let b=r.get(f);if(b?.handedOff||y(),!(!b||b.item.status==="ready"||b.item.status==="uploading"||b.item.status==="processing"||b.item.status==="pending")){if(!b.item.file||b.upload&&Date.parse(b.upload.expires_at)<=Date.now())throw py();b.item={...b.item,status:"pending",error:void 0},w()}},async remove(f){let b=r.get(f);if(!b)return;b.removed=!0,b.generation++,r.delete(f);let S=b.upload?.attachment_id??b.item.attachment?.attachment_id;S&&b.abort?.abort(),m(),w(),S&&g(b,S)},abort:B,submit(f){if(!a){for(let b of f){let S=r.get(b);S&&(S.handedOff=!0)}m()}},reclaim(f){if(!a){for(let b of f){let S=r.get(b);S&&(S.handedOff=!1)}m()}},whenReady:F,forget(f=d().map(b=>b.item.id)){for(let b of f){let S=r.get(b);S&&(S.generation++,S.abort?.abort(),r.delete(b))}m(),w()},dispose(){if(!a){a=!0,c&&clearTimeout(c);for(let f of r.values()){if(f.handedOff)continue;f.generation++,f.abort?.abort();let b=f.upload?.attachment_id??f.item.attachment?.attachment_id;b&&e&&an(e,b).catch(()=>{})}s.clear(),m()}},getSnapshot:()=>p,subscribe(f){return s.add(f),()=>{s.delete(f)}}}}function my(e){return{attachments:{upload:(...t)=>Pr(e,...t),delete:(...t)=>an(e,...t),createController:t=>gy(e,t)},get:t=>ar(e,t),detail:()=>cr(e),skills:{create:(...t)=>Fa(e,...t)},audit:t=>Ig(e,t),update:t=>pr(e,t),archive:()=>dr(e),llmCatalog:()=>lr(e),modelPicker:()=>ur(e),modelAccess:()=>Mr(e),setModelAccess:t=>Or(e,t),sandboxHealth:()=>fr(e),onboardingComplete:(...t)=>Ba(e,...t)}}function fy(e){return{sessions:{list:t=>Et(e,t),listPage:t=>Pu(e,t),create:t=>Mt(e,t),ensureWarm:()=>Iu(e),claimWarm:t=>Tu(e,t)},review:{list:t=>ng(e,t),get:t=>rg(e,t),submit:t=>sg(e,t),act:(...t)=>og(e,...t),bulkAct:t=>ig(e,t)},approvals:{list:t=>fc(e,t),resolve:(...t)=>hc(e,...t),sessionsNeedingInput:t=>yc(e,t)}}}function yy(e){return{files:{list:t=>El(e,t),listDirectory:t=>Ml(e,t),read:(t,n)=>Dl(e,t,n),search:(...t)=>Ol(e,...t),archive:(...t)=>jl(e,...t),archiveRequest:(...t)=>$l(e,...t),history:(...t)=>Hl(e,...t)},git:{commits:()=>Wl(e),commit:t=>Kl(e,t),commitDiff:t=>Vl(e,t),branches:()=>Gl(e),versionDiff:(...t)=>zl(e,...t),inviteCollaborator:(...t)=>Ta(e,...t)},changeRequests:{list:()=>Yl(e),get:t=>Jl(e,t),update:(...t)=>ou(e,...t),diff:t=>Ql(e,t),mergePreview:t=>Xl(e,t),open:(...t)=>Zl(e,...t),merge:(...t)=>eu(e,...t),close:(...t)=>tu(e,...t),reopen:(...t)=>nu(e,...t),requestChanges:(...t)=>ru(e,...t)},...fy(e)}}function hy(e){return{policies:{list:()=>Pl(e),set:(...t)=>Sl(e,...t)},reminders:{list:()=>_g(e),updateMany:(...t)=>hg(e,...t),removeMany:(...t)=>bg(e,...t)},triggers:{list:()=>Xu(e),eventApps:()=>op(e),eventTypes:(...t)=>sp(e,...t),create:(...t)=>Zu(e,...t),update:(...t)=>ep(e,...t),remove:(...t)=>tp(e,...t),fire:(...t)=>rp(e,...t),setActivation:(...t)=>np(e,...t)},...yy(e)}}function by(e,t){return{connectors:{...Jr(e),list:()=>el(e),config:(...n)=>al(e,...n),create:(...n)=>ul(e,...n),remove:(...n)=>dl(e,...n),sync:()=>tl(e),auth:{discover:(...n)=>pl(e,...n)},setName:(...n)=>cl(e,...n),setCredentialMode:(...n)=>nl(e,...n),setAuthorizationStrategy:(...n)=>rl(e,...n),setCredential:(...n)=>fl(e,...n),deleteCredential:(...n)=>yl(e,...n),setSensitive:(...n)=>sl(e,...n),connections:t,policies:{get:(...n)=>ol(e,...n),set:(...n)=>il(e,...n)},connect:(...n)=>ll(e,...n),finalize:(...n)=>hl(e,...n),discover:{list:(...n)=>Fs(e,...n),sections:(...n)=>gl(e,...n),detail:(...n)=>Ns(e,...n)}},...hy(e)}}function _y(e){return{gateway:{logs:t=>dd(e,t),log:t=>gd(e,t),overview:t=>md(e,t),series:t=>fd(e,t),breakdown:t=>yd(e,t),sessions:t=>hd(e,t),errors:t=>bd(e,t),budgets:()=>_d(e),setBudget:t=>Pd(e,t),deleteBudget:t=>Sd(e,t),keys:()=>xd(e),createKey:t=>wd(e,t),revokeKey:t=>Ad(e,t),routing:{get:()=>cd(e),set:t=>ld(e,t),reset:()=>ud(e),preview:t=>pd(e,t)},playground:(t,n,r)=>vd(e,t,n,r)}}}function Py(e){return{modelDefaults:{get:()=>mp(e),set:t=>fp(e,t),clear:t=>yp(e,t)},setDefaultAgent:t=>_p(e,t),sandbox:{list:()=>Tl(e),snapshots:()=>wl(e),rebuildSnapshot:t=>Al(e,t),fixWithAgent:()=>vl(e),createTemplate:t=>kl(e,t),updateTemplate:(...t)=>Rl(e,...t),removeTemplate:t=>Cl(e,t),buildTemplate:t=>Il(e,t),setProvider:t=>La(e,t)},setAgentScope:(...t)=>bp(e,...t)}}function Sy(e){return{channels:{slack:{installation:()=>Hp(e),connect:t=>zp(e,t),mode:()=>Yp(e),completeInstall:t=>Qp(e,t),manifest:()=>Zp(e),disconnect:()=>ed(e),getFile:t=>td(e,t),uploadFile:t=>nd(e,t)},teams:{completeInstall:t=>Xp(e,t)},email:{installation:t=>rd(e,t),mode:()=>sd(e),connect:t=>od(e,t),disconnect:t=>id(e,t),updatePolicy:(...t)=>ad(e,...t)}},updateFeatureFlag:(...t)=>$a(e,...t),updateExperimentalFeature:(...t)=>Ua(e,...t),...Py(e)}}async function xy(e){let t=e?.fetch??R().fetch??((s,o)=>fetch(s,o)),n=e?.backendUrl??R().backendUrl,r=await t(`${lt(n)}/clients/mobile`,{headers:{accept:"application/json"},...e?.signal?{signal:e.signal}:{}});if(!r.ok)throw new _(`Mobile client policy request failed (HTTP ${r.status})`,{status:r.status,response:r});return await r.json()}var Bx=/^v?(\d+)(?:\.(\d+))?(?:\.(\d+))?(?:[-+].*)?$/i;function rN(e,t){let n=o=>{let i=Bx.exec(o.trim());return i?[Number(i[1]),Number(i[2]??0),Number(i[3]??0)]:null},r=n(e),s=n(t);if(!r||!s)return null;for(let o=0;o<3;o++)if(r[o]!==s[o])return r[o]<s[o]?-1:1;return 0}function Fx(){return mt()}var wy=null,Ay=!1;function Nx(e){let t=wy;wy=e,!(Ay||!t)&&(t.backendUrl===e.backendUrl&&t.getToken===e.getToken||(Ay=!0,console.warn("[beeuni] createBeeuni() was called again with a different backendUrl or getToken. Every client shares one process-global config, so the earlier client now uses the new one. For several tenants in one process use createScopedBeeuni() from @beeuni/sdk/server.")))}function qx(e,t){t?.global!==!1&&Nx(e),xs(e,t);let n=Xm(e),{auth:r,accounts:s,iam:o,accountInvites:i}=Hm(),{billing:a,sandboxShares:c}=Wm(),{projects:p,github:d,connectStatus:g,marketplace:m}=Gm();function y(h){let w=uy(h);return{...my(h),...ay(h),...ly(h),...by(h,w),..._y(h),...Sy(h),connector:M=>zo(h,M),session:M=>Ho(h,M,e,n)}}return{config:e,auth:r,accounts:s,iam:o,accountInvites:i,projects:p,connectors:Jr(),connector:h=>zo(void 0,h),project:y,session:(h,w)=>Ho(h,w,e,n),github:d,billing:a,sandboxShares:c,connectStatus:g,marketplace:m,notifications:{registerDeviceToken:km,unregisterDeviceToken:Rm,list:Cm,markRead:Im,preferences:Tm,updatePreferences:Em,webPushPublicKey:Mm,registerWebPushSubscription:Om,unregisterWebPushSubscription:Dm},mobileClientPolicy:xy,validateToken:Ra,runtime:Fx}}function Gx(){let e=typeof crypto<"u"?crypto:void 0;if(e?.randomUUID)return e.randomUUID();let t=new Uint8Array(16);if(e?.getRandomValues)e.getRandomValues(t);else for(let r=0;r<16;r++)t[r]=Math.floor(Math.random()*256);t[6]=t[6]&15|64,t[8]=t[8]&63|128;let n=[...t].map(r=>r.toString(16).padStart(2,"0"));return`${n[0]}${n[1]}${n[2]}${n[3]}-${n[4]}${n[5]}-${n[6]}${n[7]}-${n[8]}${n[9]}-${n.slice(10).join("")}`}function Wx(){return{pending:[],failed:[],inFlightId:null,inFlightIds:[]}}function Gt(e){return e.inFlightIds?.length?e.inFlightIds:e.inFlightId?[e.inFlightId]:[]}function Kx(e,t){return{...e,pending:[...e.pending,{...t,attempts:0}]}}function Vx(e){if(Gt(e).length>0)return{state:e};let t=e.pending[0];if(!t)return{state:e};let n={...t,attempts:t.attempts+1};return{state:{...e,pending:[n,...e.pending.slice(1)],inFlightId:n.id,inFlightIds:[n.id]},claimed:n}}function Hx(e){let t=Gt(e);return t.length===0?e:{...e,pending:e.pending.filter(n=>!t.includes(n.id)),inFlightId:null,inFlightIds:[]}}function zx(e,t){let n=Gt(e);if(n.length===0)return e;let r=e.pending.filter(s=>n.includes(s.id));return r.length===0?{...e,inFlightId:null,inFlightIds:[]}:{pending:e.pending.filter(s=>!n.includes(s.id)),failed:[...e.failed,...r.map(s=>({...s,lastError:t}))],inFlightId:null,inFlightIds:[]}}function Yx(e,t){let n=e.failed.find(o=>o.id===t);if(!n)return e;let{lastError:r,...s}=n;return{...e,pending:[...e.pending,s],failed:e.failed.filter(o=>o.id!==t)}}function Jx(e,t){return Gt(e).includes(t)?e:e.pending.some(n=>n.id===t)?{...e,pending:e.pending.filter(n=>n.id!==t)}:e.failed.some(n=>n.id===t)?{...e,failed:e.failed.filter(n=>n.id!==t)}:e}function Qx(e,t,n){return Gt(e).includes(t)||!e.pending.some(r=>r.id===t)?e:{...e,pending:e.pending.map(r=>r.id===t?{...r,text:n}:r)}}function Xx(e,t,n){let r=Gt(e);if(r.includes(t))return e;let s=e.pending.findIndex(p=>p.id===t);if(s===-1)return e;let o=r.length,i=Math.min(Math.max(n,o),e.pending.length-1);if(i===s)return e;let a=[...e.pending],[c]=a.splice(s,1);return a.splice(i,0,c),{...e,pending:a}}var vy={thinking:!1,toolDetails:!0,assistantMetadata:!0};function Zx(e){return e&&e.charAt(0).toUpperCase()+e.slice(1)}function ew(e){let t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;let n=Math.floor(t/60),r=t%60;return`${n}m ${r.toFixed(0)}s`}function tw(e,t){if(e.type==="text"&&!e.synthetic)return`${e.text??""}
|
|
22
22
|
|
|
23
23
|
`;if(e.type==="reasoning")return t.thinking?`> _Thinking:_
|
|
24
24
|
>
|
|
@@ -51,15 +51,15 @@ ${s}
|
|
|
51
51
|
${e.state.error}
|
|
52
52
|
\`\`\`
|
|
53
53
|
`),n+=`
|
|
54
|
-
`,n}return""}function
|
|
54
|
+
`,n}return""}function nw(e,t){if(!t)return`## Assistant
|
|
55
55
|
|
|
56
|
-
`;let n=e.agent?
|
|
56
|
+
`;let n=e.agent?Zx(e.agent):"Assistant",r=e.modelID||"",s="";e.time?.completed&&e.time?.created&&(s=ew(e.time.completed-e.time.created));let o=[r,s].filter(Boolean).join(" \xB7 ");return o?`## ${n} (${o})
|
|
57
57
|
|
|
58
58
|
`:`## ${n}
|
|
59
59
|
|
|
60
|
-
`}function
|
|
60
|
+
`}function rw(e,t,n){let r="";e.role==="user"?r+=`## User
|
|
61
61
|
|
|
62
|
-
`:r+=
|
|
62
|
+
`:r+=nw(e,n.assistantMetadata);for(let s of t)r+=tw(s,n);return r}function sw(e,t,n=vy){let r=`# ${e.title||"Untitled Session"}
|
|
63
63
|
|
|
64
64
|
`;r+=`**Session ID:** \`${e.id}\`
|
|
65
65
|
`,r+=`**Created:** ${new Date(e.time.created).toLocaleString()}
|
|
@@ -67,30 +67,30 @@ ${e.state.error}
|
|
|
67
67
|
|
|
68
68
|
`,r+=`---
|
|
69
69
|
|
|
70
|
-
`;for(let s of t)r+=
|
|
70
|
+
`;for(let s of t)r+=rw(s.info,s.parts,n),r+=`---
|
|
71
71
|
|
|
72
|
-
`;return r}function
|
|
72
|
+
`;return r}function ow(e,t){return`session-${e}.md`}var Yo="An error occurred";var iw=["message","error","detail","error_description","msg","errors","data"];function Jo(e){let t=e.trim();for(let n=0;n<4;n++){let r=t.replace(/^(?:\d{3}\s+)?(?:[A-Za-z_$][\w$]*)?Error:\s*/,"").trim();if(r===t)break;t=r}return t}function Wt(e){if(!(typeof e!="string"||!e))try{return JSON.parse(e)}catch{return}}function aw(e){let t=e.match(/"(?:message|detail|error_description|msg)"\s*:\s*"((?:[^"\\]|\\.)*)"/);if(!t)return;let n=Wt(`"${t[1]}"`);return typeof n=="string"&&n.trim()?n.trim():void 0}function cw(e){if(!/^\s*<(?:!doctype|html|head|body)\b/i.test(e))return;let t=e.toLowerCase(),n=lw(e,t);if(n)return n;let r=pw(e,t);return r?r.slice(0,200):void 0}function Iy(e){return Number.isNaN(e)?!0:!(e>=48&&e<=57||e>=65&&e<=90||e>=97&&e<=122)}function ky(e,t){let n=e.indexOf(">",t);return n===-1?e.length:n+1}function lw(e,t){let n=0;for(;;){let r=t.indexOf("<title",n);if(r===-1)return;let s=r+6;if(!Iy(t.charCodeAt(s))){n=s;continue}let o=e.indexOf(">",s);if(o===-1)return;let i=e.indexOf("<",o+1);if(i!==-1&&t.startsWith("</title",i)){let a=e.slice(o+1,i).trim();if(a)return a}n=o+1}}var uw=["script","style"];function pw(e,t){let n=[],r=0;for(;r<e.length;){let s=e.indexOf("<",r);if(s===-1){n.push(e.slice(r));break}n.push(e.slice(r,s));let o=uw.find(i=>t.startsWith(`<${i}`,s)&&Iy(t.charCodeAt(s+i.length+1)));if(o){let i=t.indexOf(`</${o}`,s);r=i===-1?e.length:ky(e,i);continue}r=ky(e,s)}return n.join(" ").replace(/\s+/g," ").trim()}function dw(e){if(!e.startsWith("JSON parsing failed: Text:"))return;let t=e.match(/"model"\s*:\s*"([^"\\]{1,120})"/)?.[1]?.trim();return t?`The response from ${t} could not be read.`:"The model response could not be read."}function gw(e){let t=e.replace(/[_-]+/g," ").trim();return t&&t.charAt(0).toUpperCase()+t.slice(1)}function Ry(e,t,n){if(typeof e=="string")return Qr(e,t,n);if(e&&typeof e=="object")return Xr(e,t,n)}function Qr(e,t,n=new WeakSet){let r=Jo(e);if(!r)return;if(t>=4)return r;let s=dw(r);if(s)return s;let o=Wt(r);if(o!==void 0)return typeof o=="string"?Qr(o,t+1,n):o&&typeof o=="object"?Xr(o,t+1,n):String(o);let i=Ey(r);if(i){let a=Wt(i);if(a&&typeof a=="object"){let c=Xr(a,t+1,n);if(c)return c}}if(r.includes("{")){let a=aw(r);if(a)return Qr(a,t+1,n)??a}return cw(r)??r}function Xr(e,t,n=new WeakSet){if(t>=4||n.has(e))return;if(n.add(e),Array.isArray(e)){for(let i of e){let a=Ry(i,t,n);if(a)return a}return}let r=e;for(let i of iw){let a=Ry(r[i],t,n);if(a)return a}let s=r.type??r.code;if(typeof s=="string"&&s.trim())return gw(s);let o=r.status??r.statusCode??r.upstream_status;if(typeof o=="number"&&Number.isFinite(o))return`Request failed with status ${o}`}function he(e){return e?typeof e=="string"?Qr(e,0)??Yo:typeof e=="object"?Xr(e,0)??Yo:String(e):Yo}function Ty(e){let t=mw(e)?.trim();if(!t)return;let n=he(e);if(!(t===n||Jo(t)===n))return t}function mw(e){if(typeof e=="string")return e;if(!e||typeof e!="object")return;let t=e,n=t.data;if(n&&typeof n=="object"&&!Array.isArray(n)){let{message:r,responseBody:s}=n,o=[r,s].filter((i,a,c)=>typeof i=="string"&&i.trim()!==""&&c.indexOf(i)===a);if(o.length>0)return o.join(`
|
|
73
73
|
|
|
74
|
-
`)}if(typeof t.message=="string"&&t.message)return t.message;try{return JSON.stringify(e)}catch{return}}function dy(e){let t=e.indexOf("{"),n=e.lastIndexOf("}");if(!(t===-1||n===-1||n<=t))return e.slice(t,n+1)}function Px(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(typeof t.message=="string"&&t.message)return t.message;if(typeof t.error=="string"&&t.error)return t.error;let n=t.data;if(typeof n?.message=="string")return n.message;let r=t.error;if(typeof r?.message=="string")return r.message}function Sx(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(!n||typeof n!="object"||Array.isArray(n))continue;let r=n;!Number.isInteger(r.attempt)||r.attempt<1||typeof r.provider!="string"||!r.provider||typeof r.route_model!="string"||!r.route_model||typeof r.resolved_model!="string"||!r.resolved_model||typeof r.stage!="string"||!r.stage||typeof r.code!="string"&&!(typeof r.code=="number"&&Number.isFinite(r.code))||typeof r.message!="string"||!r.message||r.status!==void 0&&(!Number.isInteger(r.status)||r.status<100||r.status>599)||t.push({attempt:r.attempt,provider:r.provider,routeModel:r.route_model,resolvedModel:r.resolved_model,stage:r.stage,...typeof r.status=="number"?{status:r.status}:{},code:r.code,message:r.message})}return t.length>0?t:void 0}function uy(e){let t=typeof e.provider=="string"&&e.provider?e.provider:void 0,n=typeof e.code=="string"&&e.code?e.code:void 0,r=typeof e.suggestion=="string"&&e.suggestion?e.suggestion:void 0,s=typeof e.upstream_status=="number"?e.upstream_status:void 0,o=typeof e.request_id=="string"&&e.request_id?e.request_id:void 0,i=Sx(e.attempt_failures),a=typeof e.requested_model=="string"&&e.requested_model?e.requested_model:void 0,u=typeof e.resolved_model=="string"&&e.resolved_model?e.resolved_model:void 0;return!t&&!n&&!r&&s===void 0&&!o&&!i?void 0:{message:typeof e.message=="string"&&e.message||Px(e)||"",provider:t,code:n,suggestion:r,upstreamStatus:s,requestId:o,attemptFailures:i,...a?{requestedModel:a}:{},...u?{resolvedModel:u}:{}}}function he(e){if(e==null)return;if(typeof e=="string"){let a=Mo(e),u=Ct(a)??Ct(dy(a));return u!==void 0?he(u):void 0}if(typeof e!="object")return;let t=e,n=uy(t),r=typeof t.name=="string"&&typeof t.data=="object";if(n&&!r)return n;let s=t.error;if(s&&typeof s=="object"&&!Array.isArray(s)){let a=uy(s);if(a)return a}let o=t.data;if(o&&typeof o.responseBody=="string"){let a=Ct(o.responseBody);if(a!==void 0){let u=he(a);if(u)return u}}if(o&&typeof o.message=="string"){let a=he(o.message);if(a)return a}let i=t.cause;if(i&&typeof i=="object"){let a=i.body;if(a!==void 0){let u=he(a);if(u)return u}}return n}var gy={};function H(e,t){for(let n of t)gy[n]=e}H("read",["read"]);H("list",["list","ls"]);H("glob",["glob"]);H("grep",["grep"]);H("write",["write"]);H("edit",["edit","multiedit","morph_edit"]);H("apply_patch",["apply_patch","patch"]);H("bash",["bash"]);H("web_search",["web_search","websearch","image_search"]);H("webfetch",["webfetch","web_fetch","scrape_webpage","scrapewebpage"]);H("media",["image_gen","video_gen"]);H("show",["show","show_user","presentation_gen"]);H("task",["task"]);H("delegate",["agent_spawn","agent_task","agent_task_create","agent_task_start","task_create","task_start","session_spawn","session_start_background","agent_message","agent_task_message","task_message","agent_task_update","task_update","session_message","agent_status","agent_task_list","agent_task_get","task_list","task_get","agent_stop","agent_task_cancel","task_cancel","agent_task_approve","task_approve","task_done","task_delete"]);H("todowrite",["todowrite","todo_write","todoread"]);H("question",["question","ask"]);H("memory",["memory","memory_search","mem_search","ltm_search","get_mem"]);H("connectors",["connector_get","connector_list","connector_setup","beeuni_connector_call","beeuni_connectors","beeuni_connectors_connectors","beeuni_connectors_discover","beeuni_connectors_describe","beeuni_connectors_call","beeuni_connector_describe","beeuni_connector_discover"]);H("automations",["triggers"]);H("skill",["skill"]);H("context",["prune","distill","compress","context_info"]);H("retired",["integration_list","integration_connect","integration_search","integration_actions","integration_run","integration_request","integration_exec"]);var xx=[["pty_","pty"],["agent_","delegate"],["task_","delegate"],["session_","sessions"],["trigger_","automations"],["project_","projects"]];function re(e){let t=e.replace(/^oc[-_]/,"").replace(/-/g,"_"),n=gy[t];if(n)return n;for(let[r,s]of xx)if(t.startsWith(r))return s;return"other"}function Ne(e){for(let t of[e?.filePath,e?.file_path,e?.path])if(typeof t=="string"&&t)return t}var wx=["site","filetype","ext","inurl","allinurl","intitle","allintitle","intext","allintext","inanchor","inbody","before","after","daterange","related","cache","define","link","source","lang","loc","location","imagesize"];function vx(){return new RegExp(`(^|\\s)([-+]?)(${wx.join("|")}):("[^"]*"|\\S+)`,"gi")}function Ax(){return/(^|\s)-(?:"[^"]*"|\S+)/g}function kx(){return/(^|\s)(?:OR|AND)(?=\s|$)/g}function Rx(e){return e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}function Cx(e){return Rx(e).replace(/^[a-z]+:\/\//i,"").replace(/^www\./i,"").replace(/\/.*$/,"").trim()}function my(e){return e.length<=1?e[0]??"":`${e.slice(0,-1).join(", ")} or ${e[e.length-1]}`}function jr(e){let t=typeof e=="string"?e.trim():"";if(!t)return"";let n=[],r=t.replace(vx(),(s,o,i,a,u)=>{if(!i&&a.toLowerCase()==="site"){let p=Cx(u);p&&!n.includes(p)&&n.push(p)}return o});return r=r.replace(Ax(),"$1").replace(kx(),"$1").replace(/[()]/g," ").replace(/\s+/g," ").trim(),r?n.length>0?`${r} on ${my(n)}`:r:n.length>0?my(n):t}var Ix=/\s/,Tx=/\w/;function se(e){return e!==void 0&&Ix.test(e)}function yn(e){return e===`
|
|
75
|
-
`||e==="\r"||e==="\u2028"||e==="\u2029"}function
|
|
74
|
+
`)}if(typeof t.message=="string"&&t.message)return t.message;try{return JSON.stringify(e)}catch{return}}function Ey(e){let t=e.indexOf("{"),n=e.lastIndexOf("}");if(!(t===-1||n===-1||n<=t))return e.slice(t,n+1)}function fw(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e;if(typeof t.message=="string"&&t.message)return t.message;if(typeof t.error=="string"&&t.error)return t.error;let n=t.data;if(typeof n?.message=="string")return n.message;let r=t.error;if(typeof r?.message=="string")return r.message}function yw(e){if(!Array.isArray(e))return;let t=[];for(let n of e){if(!n||typeof n!="object"||Array.isArray(n))continue;let r=n;!Number.isInteger(r.attempt)||r.attempt<1||typeof r.provider!="string"||!r.provider||typeof r.route_model!="string"||!r.route_model||typeof r.resolved_model!="string"||!r.resolved_model||typeof r.stage!="string"||!r.stage||typeof r.code!="string"&&!(typeof r.code=="number"&&Number.isFinite(r.code))||typeof r.message!="string"||!r.message||r.status!==void 0&&(!Number.isInteger(r.status)||r.status<100||r.status>599)||t.push({attempt:r.attempt,provider:r.provider,routeModel:r.route_model,resolvedModel:r.resolved_model,stage:r.stage,...typeof r.status=="number"?{status:r.status}:{},code:r.code,message:r.message})}return t.length>0?t:void 0}function Cy(e){let t=typeof e.provider=="string"&&e.provider?e.provider:void 0,n=typeof e.code=="string"&&e.code?e.code:void 0,r=typeof e.suggestion=="string"&&e.suggestion?e.suggestion:void 0,s=typeof e.upstream_status=="number"?e.upstream_status:void 0,o=typeof e.request_id=="string"&&e.request_id?e.request_id:void 0,i=yw(e.attempt_failures),a=typeof e.requested_model=="string"&&e.requested_model?e.requested_model:void 0,c=typeof e.resolved_model=="string"&&e.resolved_model?e.resolved_model:void 0;return!t&&!n&&!r&&s===void 0&&!o&&!i?void 0:{message:typeof e.message=="string"&&e.message||fw(e)||"",provider:t,code:n,suggestion:r,upstreamStatus:s,requestId:o,attemptFailures:i,...a?{requestedModel:a}:{},...c?{resolvedModel:c}:{}}}function we(e){if(e==null)return;if(typeof e=="string"){let a=Jo(e),c=Wt(a)??Wt(Ey(a));return c!==void 0?we(c):void 0}if(typeof e!="object")return;let t=e,n=Cy(t),r=typeof t.name=="string"&&typeof t.data=="object";if(n&&!r)return n;let s=t.error;if(s&&typeof s=="object"&&!Array.isArray(s)){let a=Cy(s);if(a)return a}let o=t.data;if(o&&typeof o.responseBody=="string"){let a=Wt(o.responseBody);if(a!==void 0){let c=we(a);if(c)return c}}if(o&&typeof o.message=="string"){let a=we(o.message);if(a)return a}let i=t.cause;if(i&&typeof i=="object"){let a=i.body;if(a!==void 0){let c=we(a);if(c)return c}}return n}var Dy="beeuni-v1-import",hw={harness:Dy,harness_version:Bt,adapter_version:"1"},Qo={schema:We,v:1},bw={opencode:"[Tool execution was interrupted]",pi:"No result provided"},_w="[Old tool result content cleared]",Pw="The following tool was executed by the user",Sw=new Map(Object.entries({bash:"shell",powershell:"shell",read:"read",write:"write",edit:"edit",multiedit:"edit",patch:"patch",apply_patch:"patch",list:"list",ls:"list",glob:"glob",find:"glob",grep:"grep",webfetch:"web_fetch",websearch:"web_search",codesearch:"web_search",todowrite:"todo",todoread:"todo",task:"task",question:"question",plan_enter:"plan",plan_exit:"plan"})),xw=e=>Sw.get(e)??(e.includes("_")?"mcp":"other"),ww=new Map([["stop","stop"],["tool-calls","tool_calls"],["length","length"],["error","error"]]),Aw=new Map([["stop","stop"],["tool_calls","tool-calls"],["length","length"],["error","error"]]),N=e=>typeof e=="object"&&e!==null&&!Array.isArray(e),X=e=>typeof e=="string"?e:void 0,Le=e=>typeof e=="number"&&Number.isFinite(e)?e:void 0,ns=(e,t)=>Object.hasOwn(e,t)?e[t]:void 0,jy=(e,t,n)=>Object.defineProperty(e,t,{value:n,enumerable:!0,writable:!0,configurable:!0}),Kt=e=>Le(e)!==void 0&&Math.abs(e)<=864e13?new Date(e).toISOString():null,Vt=e=>{let t=e?Date.parse(e):NaN;return Number.isNaN(t)?void 0:t};function Xo(e,t){if(e===t)return!0;if(Array.isArray(e)||Array.isArray(t))return Array.isArray(e)&&Array.isArray(t)&&e.length===t.length&&e.every((r,s)=>Xo(r,t[s]));if(!N(e)||!N(t))return!1;let n=Object.keys(e).filter(r=>e[r]!==void 0);return n.length===Object.keys(t).filter(r=>t[r]!==void 0).length&&n.every(r=>Xo(e[r],ns(t,r)))}function es(e,t){if(Xo(e,t))return;if(e===void 0)return{del:!0};if(!N(e)||!N(t))return{set:e};let n={};for(let r of new Set([...Object.keys(e),...Object.keys(t)])){let s=es(ns(e,r),ns(t,r));s&&jy(n,r,s)}return{sub:n}}function ts(e,t){if(!t)return e;if("set"in t)return t.set;if("del"in t)return;let n=N(e)?{...e}:{};for(let[r,s]of Object.entries(t.sub)){let o=ts(ns(n,r),s);o===void 0?delete n[r]:jy(n,r,o)}return n}var Dn=e=>Object.values(e??{}).find(t=>t.version===Bt),rs=(e,t)=>({[e]:{version:Bt,...t}}),$y=(e,t)=>e.url!==void 0?{url:e.url}:e.ref!==void 0&&!t.fromV1?{url:e.ref}:{},My=e=>(e??[]).flatMap(t=>t.type==="text"?[t.text]:[]).join(""),vw=(e,t)=>({id:e.id,...t.sessionID!==null&&{sessionID:t.sessionID},messageID:t.messageID});function kw(e,t,n){let r=e.result,s=e.input===null||e.input===void 0?{}:{input:e.input},o=Vt(e.started_at)??t.created,i=Vt(e.ended_at)??o,a=r?.exit_code!==void 0?{exit:r.exit_code}:{};if(e.status==="pending")return{status:"pending",input:e.input??{},raw:""};if(e.status==="running")return{status:"running",input:e.input??{},...e.title&&{title:e.title},time:{start:o}};if(e.status==="error")return{status:"error",...s,error:My(r?.content),...r?.exit_code!==void 0&&{metadata:a},time:{start:o,end:i}};let c=(r?.content??[]).flatMap((d,g)=>d.type==="attachment"?[{...n,id:`${e.id}-a${g}`,type:"file",mime:d.mime,...$y(d,t)}]:[]),p=Vt(r?.cleared_at);return{status:"completed",...s,output:My(r?.content),title:e.title??"",metadata:a,time:{start:o,end:i,...p!==void 0&&{compacted:p}},...c.length&&{attachments:c}}}function Uy(e,t){let n=vw(e,t);switch(e.type){case"text":return{...n,type:"text",text:e.text,...e.synthetic!==void 0&&{synthetic:e.synthetic}};case"reasoning":return{...n,type:"reasoning",text:e.text,time:{start:t.created}};case"attachment":return{...n,type:"file",mime:e.mime,...e.name!==void 0&&{filename:e.name},...$y(e,t)};case"tool_call":return{...n,type:"tool",callID:e.call_id,tool:e.name,state:kw(e,t,{...t.sessionID!==null&&{sessionID:t.sessionID},messageID:t.messageID})};case"step":return e.phase==="start"?{...n,type:"step-start"}:{...n,type:"step-finish",reason:"stop",cost:0,tokens:{input:0,output:0,reasoning:0,cache:{read:0,write:0}}};case"compaction":return{...n,type:"compaction",auto:e.trigger==="auto"||e.trigger==="overflow",...e.trigger==="overflow"&&{overflow:!0},...e.first_kept_message_id!==null&&{tail_start_id:e.first_kept_message_id}};case"harness":return t.fromV1&&(e.harness==="opencode"||e.harness==="pi")?e.data:e.model_visible&&e.fallback_text!==void 0?{...n,type:"text",text:e.fallback_text,synthetic:!0}:void 0;case"subtask":return}}function Rw(e){return hf(e.code)?{name:e.code==="aborted"?"MessageAbortedError":"UnknownError",code:e.code,data:{message:e.message}}:{name:e.code,data:{message:e.message}}}function Ly(e,t,n={}){let r=e.usage,s=e.finish===null?void 0:Aw.get(e.finish);return{id:e.message_id,...t.sessionID!==null&&{sessionID:t.sessionID},role:"assistant",time:{created:t.created,...e.completed_at!==null&&{completed:Vt(e.completed_at)}},...e.reply_to&&{parentID:e.reply_to},modelID:e.model?.model??"",providerID:e.model?.provider??"",...e.model?.variant!==void 0&&{variant:e.model.variant},mode:e.agent??"",agent:e.agent??"",path:{cwd:"",root:""},cost:r?.cost??0,tokens:{input:r?.input??0,output:r?.output??0,reasoning:r?.reasoning??0,cache:{read:r?.cache_read??0,write:r?.cache_write??0}},...s&&{finish:s},...e.error&&{error:Rw(e.error)},...n}}function By(e,t){return e.role==="assistant"?Ly(e,t):{id:e.message_id,...t.sessionID!==null&&{sessionID:t.sessionID},role:"user",time:{created:t.created},agent:e.agent??"",model:{providerID:e.model?.provider??"",modelID:e.model?.model??"",...e.model?.variant!==void 0&&{variant:e.model.variant}}}}function Fy(e,t,n){let r=`${e.message_id}-summary`;return{info:Ly({...e,reply_to:e.message_id,agent:"compaction",finish:e.status==="complete"?"stop":null},n,{id:r,summary:!0}),parts:[{id:`${r}-p0`,...n.sessionID!==null&&{sessionID:n.sessionID},messageID:r,type:"text",text:t.summary}]}}function Cw(e,t,n){let r=n||e.producer.harness===Dy;if(!r&&(e.role==="system"||e.kind==="context"))return[];let s=Dn(e.ext)?.data,o=s&&"runtime_session_id"in s?s.runtime_session_id??null:t,i={sessionID:o,messageID:e.message_id,created:Vt(e.created_at),fromV1:r},a=s&&"parts"in s?s.parts:e.blocks.flatMap(d=>{let g=Uy(d,i);return g===void 0?[]:[ts(g,Dn(d.ext)?.data)]}),c=[{runtime_session_id:o,info:ts(By(e,i),s?.info),parts:a}],p=e.blocks.find(d=>d.type==="compaction");if(e.kind==="compaction"&&p&&p.summary!==null){let d=ts(Fy(e,p,i),s?.summary);c.push({runtime_session_id:o,info:d.info,parts:d.parts})}return c}var Zo=e=>Le(N(e.info)&&N(e.info.time)?e.info.time.created:void 0)??-1/0,Zr=e=>String(N(e.info)?e.info.id:""),Ny=(e,t)=>Zo(e)-Zo(t)||(Zr(e)<Zr(t)?-1:Zr(e)>Zr(t)?1:0),Oy=e=>{let t=Dn(e.ext);return t?t.native_id??null:e.thread_id};function qy(e){let t=structuredClone(e),n=t.threads.find(i=>i.parent_thread_id===null)??t.threads[0],r=t.threads.flatMap(i=>i.messages.flatMap(a=>Cw(a,Oy(i),Dn(i.ext)!==void 0))),s=Dn(t.ext)?.data,o=s&&"root_id"in s?s.root_id??null:n?Oy(n):null;return{session_id:t.session_id,root_id:o,rows:r.sort(Ny)}}function Iw(e){let t=e.role==="assistant"?{p:e.providerID,m:e.modelID,v:e.variant}:N(e.model)?{p:e.model.providerID,m:e.model.modelID,v:e.model.variant}:{},n=X(t.p),r=X(t.m);return n===void 0||r===void 0?null:{provider:n,model:r,...X(t.v)!==void 0&&{variant:t.v}}}function Tw(e){if(!N(e.tokens))return null;let t=e.tokens,n=N(t.cache)?t.cache:{};return{input:Le(t.input)??0,output:Le(t.output)??0,cache_read:Le(n.read)??0,cache_write:Le(n.write)??0,...Le(t.reasoning)!==void 0&&{reasoning:t.reasoning},...Le(e.cost)!==void 0&&{cost:e.cost}}}var Ew=e=>({code:X(e.code)||X(e.name)||"UnknownError",message:X(N(e.data)?e.data.message:void 0)??""});function Gy(e,t,n){let r=t.resolve(e);return r||n.attachment++,{mime:X(e.mime)??"application/octet-stream",...r&&{ref:r.ref,bytes:r.bytes,...r.sha256!==void 0&&{sha256:r.sha256}},...X(e.url)!==void 0&&{url:e.url}}}function Mw(e,t,n,r){let s=e.state,o=N(s.time)?s.time:{};N(s.input)||r.tool_input++;let i=N(s.metadata)&&Le(s.metadata.exit)!==void 0?{exit_code:s.metadata.exit}:{},a,c,p=s.input??null;if(s.status==="completed"){let m=(Array.isArray(s.attachments)?s.attachments:[]).filter(N).map(h=>{let{bytes:w,...M}=Gy(h,n,r);return{type:"attachment",...M}}),y=Kt(o.compacted);a="complete",c={content:[...X(s.output)!==void 0?[{type:"text",text:s.output}]:[],...m],is_error:!1,...i,...y&&{model_content:[{type:"text",text:_w}],cleared_at:y}}}else if(s.status==="error"){let m=X(s.error);a="error",c={content:m!==void 0?[{type:"text",text:m}]:[],is_error:!0,...m!==void 0&&{error:{message:m}},...i}}else if(n.live)a=s.status==="pending"?"pending":"running",a==="pending"&&X(s.raw)&&!(N(s.input)&&Object.keys(s.input).length)&&(p=s.raw);else{let m=bw[n.h];a="error",c={content:[{type:"text",text:m}],is_error:!0,synthetic:!0,error:{code:"interrupted",message:m}}}let d=Kt(o.start),g=Kt(o.end);return{type:"tool_call",id:t,call_id:e.callID,name:e.tool,kind:xw(e.tool),input:p,status:a,...c&&{result:c},...X(s.title)&&{title:s.title},...d&&{started_at:d},...g&&{ended_at:g}}}function Ow(e,t,n,r,s,o){let i=(a,c=!1)=>({type:"harness",id:t,harness:s.h,kind:a,data:e,model_visible:c,...c&&{fallback_text:Pw}});if(!N(e))return i("unknown");switch(e.type){case"text":return typeof e.text!="string"||e.ignored===!0?i("text"):{type:"text",id:t,text:e.text,...typeof e.synthetic=="boolean"&&{synthetic:e.synthetic}};case"reasoning":return typeof e.text!="string"?i("reasoning"):{type:"reasoning",id:t,text:e.text};case"file":return e.mime==="text/plain"||e.mime==="application/x-directory"?i("file"):{type:"attachment",id:t,...Gy(e,s,o),...X(e.filename)!==void 0&&{name:e.filename}};case"tool":return typeof e.callID=="string"&&typeof e.tool=="string"&&N(e.state)?Mw(e,t,s,o):i("tool");case"step-start":case"step-finish":return{type:"step",id:t,phase:e.type==="step-start"?"start":"finish"};case"compaction":{if(e!==n)return i("compaction");let a=e.overflow===!0?"overflow":e.auto===!0?"auto":"manual";return{type:"compaction",id:t,summary:r,first_kept_message_id:X(e.tail_start_id)??null,trigger:a}}case"subtask":return i("subtask",!0);default:return i(X(e.type)||"unknown")}}function Dw(e){let t=e.map((s,o)=>N(s)&&typeof s.id=="string"&&s.id?s.id:`#${o}`),n=new Set(t),r=new Set;return t.map(s=>{if(!r.has(s))return r.add(s),s;let o=2;for(;n.has(`${s}#${o}`);)o++;return n.add(`${s}#${o}`),`${s}#${o}`})}function jw(e,t,n,r,s,o){let i=N(e.info)?e.info:{},a=Array.isArray(e.parts)?e.parts:[],c=i.role==="user"?a.find(v=>N(v)&&v.type==="compaction"):void 0,p=t&&N(t.info)?t.info:void 0,d=i.role==="assistant"||i.role==="user"?i.role:"system",g=c?p:d==="assistant"?i:void 0,m=g&&N(g.error)?g.error:void 0,y=m?.name==="MessageAbortedError",h=g&&N(g.time)?Kt(g.time.completed):null,w=o.live?"streaming":"interrupted",M=g?m?y?"aborted":"error":h?"complete":w:c?w:"complete",B=Kt(N(i.time)?i.time.created:void 0)??"",F=t?(Array.isArray(t.parts)?t.parts:[]).flatMap(v=>N(v)&&v.type==="text"&&typeof v.text=="string"?[v.text]:[]).join(""):null,f={tool_input:0,cut_point:0,attachment:0},b=Dw(a),S=a.map((v,k)=>Ow(v,b[k],c,F,o,f)),O=S.some(v=>v.type==="text"||v.type==="attachment"||v.type==="tool_call"||v.type==="harness"&&v.model_visible),C=!s&&d!=="system"&&(c?M==="complete":!m||y&&O),P=s?"superseded":C||!m?void 0:y?"aborted":"failed_attempt";return c&&N(c)&&X(c.tail_start_id)===void 0&&f.cut_point++,{m:{...Qo,message_id:X(i.id)??"",thread_id:n,seq:r,role:d,kind:c?"compaction":"turn",status:M,in_context:C,...P&&{hidden_reason:P},agent:X(i.agent)??null,...d==="assistant"&&{reply_to:X(i.parentID)??null},model:Iw(i),usage:g?Tw(g):null,finish:!g||c?null:y?"aborted":m?"error":ww.get(i.finish)??null,error:m?Ew(m):null,created_at:B,completed_at:g||c?h:B||null,producer:hw,blocks:S},lost:f}}function $w(e,t,n,r,s){let o={};t.runtime_session_id!==r&&(o.runtime_session_id=t.runtime_session_id);let i={sessionID:t.runtime_session_id,messageID:e.message_id,created:Vt(e.created_at),fromV1:!0};Array.isArray(t.parts)?e.blocks.forEach((p,d)=>{if(p.type==="harness"||p.type==="subtask")return;let g=es(t.parts[d],Uy(p,i));g&&(p.ext=rs(s,{data:g}))}):o.parts=t.parts;let a=es(t.info,By(e,i));a&&(o.info=a);let c=e.blocks.find(p=>p.type==="compaction");if(n&&c){let p=es({info:n.info,parts:n.parts},Fy(e,c,i));p&&(o.summary=p)}Object.keys(o).length&&(e.ext=rs(s,{data:o}))}function Uw(e,t,n){if(t){for(let r of[!0,!1])for(let s of e)if(!(s.runtime_session_id===t||!Array.isArray(s.parts))){for(let o of s.parts)if(!(!N(o)||o.type!=="tool"||!N(o.state))&&(r?N(o.state.metadata)&&o.state.metadata.sessionId===t:n(o.state).includes(t)))return{row:s,part:o}}}}function Wy(e,t={}){let n={h:t.harness??"opencode",resolve:t.resolveAttachment??(()=>null),counts:{tool_input:0,cut_point:0,attachment:0},live:t.live===!0},r=structuredClone(e.rows).sort(Ny),s=new Map;for(let f of r){let b=s.get(f.runtime_session_id);b?b.push(f):s.set(f.runtime_session_id,[f])}let o=e.root_id,i=s.has(o),a=new Map,c=f=>a.get(f)??(a.set(f,JSON.stringify(f)),a.get(f)),p=new Map;for(let f of s.keys()){let b=i&&f===o?void 0:Uw(r,f,c);b&&p.set(f,b)}let d=[...r].reverse().find(f=>f.runtime_session_id===null||!p.has(f.runtime_session_id)),g=i||!d?o:d.runtime_session_id;s.has(g)||s.set(g,[]);let m=g||e.session_id,y=f=>f!==null&&p.has(f)?f:m,h=Kt(r.map(Zo).find(Number.isFinite))??"",w=[];for(let[f,b]of s){if(f!==g&&(f===null||!p.has(f)))continue;let S=f===g,O=S?r.filter(E=>E.runtime_session_id!==g&&y(E.runtime_session_id)===m):[],C=[...O,...b],P=new Set(O),x=new Map,v=new Set;for(let E of C){let q=N(E.info)?E.info:{};if(q.role!=="user"||!Array.isArray(E.parts)||!E.parts.some(V=>N(V)&&V.type==="compaction"))continue;let Q=C.find(V=>!v.has(V)&&V.runtime_session_id===E.runtime_session_id&&N(V.info)&&V.info.role==="assistant"&&V.info.summary===!0&&V.info.parentID===q.id);Q&&(x.set(E,Q),v.add(Q))}let k=[];for(let E of C){if(v.has(E))continue;let q=x.get(E),{m:Q,lost:V}=jw(E,q,S?m:f,k.length+1,P.has(E),n);if($w(Q,E,q,f,n.h),Q.in_context)for(let Xt of["tool_input","cut_point","attachment"])n.counts[Xt]+=V[Xt];k.push(Q)}let $=f===null?void 0:p.get(f),D=k.find(E=>E.role==="user"&&E.kind==="turn");w.push({...Qo,thread_id:S?m:f,parent_thread_id:$?y($.row.runtime_session_id):null,spawned_by:$&&typeof $.part.callID=="string"?{message_id:X($.row.info?.id)??"",call_id:$.part.callID}:null,agent:D?.agent??null,title:null,created_at:k[0]?.created_at||h,messages:k,ext:rs(n.h,f===null?{}:{native_id:f})})}w.sort((f,b)=>f.parent_thread_id===null?-1:b.parent_thread_id===null?1:F(f)-F(b));let M=w[0]?.messages.filter(f=>f.role==="user"&&f.kind==="turn").at(-1),B=n.counts.tool_input+n.counts.cut_point+n.counts.attachment>0;return{...Qo,session_id:e.session_id,title:null,created_at:h,restore_grade:B?"partial":"converted",grade_counts:n.counts,harness:{current:n.h,history:[]},selection:{agent:M?.agent??null,model:M?.model??null},todos:[],pending:{questions:[],permissions:[]},threads:w,...g!==o&&{ext:rs(n.h,{data:{root_id:o}})}};function F(f){return r.findIndex(b=>b.runtime_session_id===f.thread_id)}}var ei={schema:We,v:1},Lw=Object.freeze({}),Ky=new WeakMap;function Bw(e){let t=Ky.get(e);if(t&&t.state===e.state)return t.block;let n=e.sessionID??null,r={id:e.messageID,sessionID:e.sessionID,role:"assistant"},o=Wy({session_id:"",root_id:n,rows:[{runtime_session_id:n,info:r,parts:[e]}]},{live:!0}).threads[0].messages[0].blocks[0];return Ky.set(e,{state:e.state,block:o}),o}var Vy=new WeakMap;function Be(e){let t=Vy.get(e);if(t)return t;let n={...ei,thread_id:"",parent_thread_id:null,spawned_by:null,agent:null,title:null,created_at:"",ext:{opencode:{version:Bt}},messages:[{...ei,message_id:"",thread_id:"",seq:1,role:"assistant",kind:"turn",status:"complete",in_context:!0,model:null,usage:null,finish:null,error:null,created_at:"",completed_at:null,producer:{harness:"",harness_version:"",adapter_version:""},blocks:[e]}]},{rows:r}=qy({...ei,session_id:"",title:null,created_at:"",restore_grade:"native",harness:{current:"",history:[]},selection:{agent:null,model:null},todos:[],pending:{questions:[],permissions:[]},threads:[n]}),s=r[0].parts[0];return Vy.set(e,s),s}var Fe=e=>typeof e=="object"&&e!==null&&e.type==="tool_call";function Fw(e){let t=Be(e).state.metadata;return typeof t=="object"&&t!==null&&!Array.isArray(t)&&Object.keys(t).length?t:Lw}var Hy={};function Y(e,t){for(let n of t)Hy[n]=e}Y("read",["read"]);Y("list",["list","ls"]);Y("glob",["glob"]);Y("grep",["grep"]);Y("write",["write"]);Y("edit",["edit","multiedit","morph_edit"]);Y("apply_patch",["apply_patch","patch"]);Y("bash",["bash"]);Y("web_search",["web_search","websearch","image_search"]);Y("webfetch",["webfetch","web_fetch","scrape_webpage","scrapewebpage"]);Y("media",["image_gen","video_gen"]);Y("show",["show","show_user","presentation_gen"]);Y("task",["task"]);Y("delegate",["agent_spawn","agent_task","agent_task_create","agent_task_start","task_create","task_start","session_spawn","session_start_background","agent_message","agent_task_message","task_message","agent_task_update","task_update","session_message","agent_status","agent_task_list","agent_task_get","task_list","task_get","agent_stop","agent_task_cancel","task_cancel","agent_task_approve","task_approve","task_done","task_delete"]);Y("todowrite",["todowrite","todo_write","todoread"]);Y("question",["question","ask"]);Y("memory",["memory","memory_search","mem_search","ltm_search","get_mem"]);Y("connectors",["connector_get","connector_list","connector_setup","beeuni_connector_call","beeuni_connectors","beeuni_connectors_connectors","beeuni_connectors_discover","beeuni_connectors_describe","beeuni_connectors_call","beeuni_connector_describe","beeuni_connector_discover"]);Y("automations",["triggers"]);Y("skill",["skill"]);Y("context",["prune","distill","compress","context_info"]);Y("retired",["integration_list","integration_connect","integration_search","integration_actions","integration_run","integration_request","integration_exec"]);var Nw=[["pty_","pty"],["agent_","delegate"],["task_","delegate"],["session_","sessions"],["trigger_","automations"],["project_","projects"]];function pe(e){let t=e.replace(/^oc[-_]/,"").replace(/-/g,"_"),n=Hy[t];if(n)return n;for(let[r,s]of Nw)if(t.startsWith(r))return s;return"other"}function Ze(e){for(let t of[e?.filePath,e?.file_path,e?.path])if(typeof t=="string"&&t)return t}var qw=["site","filetype","ext","inurl","allinurl","intitle","allintitle","intext","allintext","inanchor","inbody","before","after","daterange","related","cache","define","link","source","lang","loc","location","imagesize"];function Gw(){return new RegExp(`(^|\\s)([-+]?)(${qw.join("|")}):("[^"]*"|\\S+)`,"gi")}function Ww(){return/(^|\s)-(?:"[^"]*"|\S+)/g}function Kw(){return/(^|\s)(?:OR|AND)(?=\s|$)/g}function Vw(e){return e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}function Hw(e){return Vw(e).replace(/^[a-z]+:\/\//i,"").replace(/^www\./i,"").replace(/\/.*$/,"").trim()}function zy(e){return e.length<=1?e[0]??"":`${e.slice(0,-1).join(", ")} or ${e[e.length-1]}`}function ss(e){let t=typeof e=="string"?e.trim():"";if(!t)return"";let n=[],r=t.replace(Gw(),(s,o,i,a,c)=>{if(!i&&a.toLowerCase()==="site"){let p=Hw(c);p&&!n.includes(p)&&n.push(p)}return o});return r=r.replace(Ww(),"$1").replace(Kw(),"$1").replace(/[()]/g," ").replace(/\s+/g," ").trim(),r?n.length>0?`${r} on ${zy(n)}`:r:n.length>0?zy(n):t}var zw=/\s/,Yw=/\w/;function de(e){return e!==void 0&&zw.test(e)}function jn(e){return e===`
|
|
75
|
+
`||e==="\r"||e==="\u2028"||e==="\u2029"}function ti(e){return e!==void 0&&Yw.test(e)}function ht(e){let t="";for(let n of e)t+=n.length===1?String.fromCharCode(Jw(n.charCodeAt(0))):n;return t}function Jw(e){if(e<128)return e>=97&&e<=122?e-32:e;let t=String.fromCharCode(e).toUpperCase();if(t.length!==1)return e;let n=t.charCodeAt(0);return n<128?e:n}function Ne(e){let t=e.length;for(;t>0&&e[t-1]==="/";)t--;return e.slice(0,t)}function Yy(e){let t=0;for(;t<e.length&&e[t]==="/";)t++;return Ne(e.slice(t))}function $n(e,t,n){let r=e.indexOf(t);if(r===-1)return null;let s=e.indexOf(n,r+t.length);return s===-1?null:e.slice(r+t.length,s)}function ni(e,t){let n=$n(e,`<${t}>`,`</${t}>`);return n===null?null:(n.startsWith(`
|
|
76
76
|
`)&&(n=n.slice(1)),n.endsWith(`
|
|
77
|
-
`)&&(n=n.slice(0,-1)),n)}function jo(e,t,n=0){let r=e.indexOf(`<${t}`,n);if(r===-1)return null;let s=e.indexOf(">",r+1+t.length);return s===-1?null:{open:r,end:s}}function yy(e,t){let n=jo(e,t);return n?e.slice(n.open+1+t.length,n.end):null}function hy(e,t){let n=jo(e,t);if(!n)return null;let r=e.indexOf(`</${t}>`,n.end+1);return r===-1?null:e.slice(n.end+1,r)}function by(e,t){let n=`</${t}>`,r="",s=0;for(;;){let o=jo(e,t,s);if(!o)break;let i=e.indexOf(n,o.end+1);if(i===-1)break;r+=e.slice(s,o.open),s=i+n.length}return r+e.slice(s)}function _y(e,t,n){let r=[];for(let s of e.split(/[\n\r\u2028\u2029]/)){let o=0;for(;;){let i=s.indexOf(t,o);if(i===-1)break;let a=s.indexOf(n,i+t.length);if(a===-1)break;r.push(s.slice(i+t.length,a)),o=a+n.length}}return r}function bn(e){let t=e.trimEnd();if(!t.endsWith("}"))return null;let n=t.indexOf(":");for(;n!==-1;){let r=n+1;for(;r<t.length&&se(t[r]);)r++;if(t[r]==="{")return t.slice(r);n=t.indexOf(":",n+1)}return null}function Py(e,t,n){let r=rt(t),s=rt(n);for(let o of rt(e).split(/[\n\r\u2028\u2029]/)){let i=o.indexOf(r);if(i!==-1&&o.lastIndexOf(s)>=i+r.length)return!0}return!1}function Sy(e,t){let n=rt(e),r=t.map(rt),s=e.length,o=u=>{let p=u;for(;p<s&&se(e[p]);)p++;return p},i=u=>{for(let p=u;p<s;p++)if(yn(e[p]))return p+1;return-1},a=0;for(;a!==-1&&a<=s;){let u=o(a);if(u>=s)return null;let p=r.find(d=>n.startsWith(d,u));if(p!==void 0){let d=o(u+p.length);if(e[d]===":"){let g=o(d+1);if(g<s){let m=g;for(;m<s&&!yn(e[m]);)m++;for(;m>g+1&&se(e[m-1]);)m--;return e.slice(g,m)}for(let m=s-1;m>d;m--)if(!yn(e[m]))return e[m];return null}}a=i(u)}return null}function xy(e){let t=e.length,n=new Array(t+1);n[0]=0;for(let a=1;a<=t;a++)n[a]=se(e[a-1])?n[a-1]:a;let r=new Array(t+1).fill(-1);for(let a=t-1;a>=0;a--){if(r[a]=r[a+1],e[a]!=="\u2014"||!se(e[a-1]))continue;let u=a+1;if(se(e[u])){for(;u<t&&se(e[u]);)u++;Oo(e[u])&&(r[a]=a)}}let s=new Array(t+1);s[0]=0;for(let a=0;a<t;a++)s[a+1]=s[a]+(yn(e[a])?1:0);let o=(a,u)=>s[u]===s[a],i=a=>{let u=a+1;for(;se(e[u]);)u++;let p=u;for(;p<t&&Oo(e[p]);)p++;return e.slice(u,p)};for(let a=e.indexOf("**task-");a!==-1;a=e.indexOf("**task-",a+1)){let u=a+7;for(;u<t&&/[a-z0-9]/.test(e[u]);)u++;if(u===a+7||e[u]!=="*"||e[u+1]!=="*")continue;let p=u+2,d=p;for(;d<t&&se(e[d]);)d++;if(d!==p){if(d<t&&d+2<=t){let g=r[d+2]??-1;if(g!==-1){let m=Math.max(d+1,n[g]);if(o(d,m))return{id:e.slice(a+2,u),title:e.slice(d,m),status:i(g)}}}if(d<t&&r[d]===d){for(let g=d-2;g>=p+1;g--)if(!yn(e[g]))return{id:e.slice(a+2,u),title:e[g],status:i(d)}}}}return null}function wy(e){let t=(i,a)=>i.slice(a,a+6).toLowerCase()==="error:",n=0;for(;;){let i=n;for(;i<e.length&&se(e[i]);)i++;if(!t(e,i))break;for(i+=6;i<e.length&&se(e[i]);)i++;n=i}let r=e.slice(n),s="",o=0;for(;o<r.length;){if(t(r,o)&&(o===0||!Oo(r[o-1]))){let i=o,a=0;for(;t(r,i);){for(i+=6;i<r.length&&se(r[i]);)i++;a++}if(a>=2){o=i;continue}}s+=r[o],o++}return s}function vy(e,t){let n=t?"![":"[",r="",s=0,o=-2,i=-2;for(let a=e.indexOf(n);a!==-1;){let u=a+n.length;if(o<u&&(o=e.indexOf("]",u)),o===-1)break;let p=o;if(e[p+1]!=="("){a=e.indexOf(n,p+1);continue}if(i<p+2&&(i=e.indexOf(")",p+2)),i===-1)break;r+=e.slice(s,a)+(t?" ":e.slice(u,p)),s=i+1,a=e.indexOf(n,s)}return r+e.slice(s)}function Ay(e){return vy(e,!0)}function ky(e){return vy(e,!1)}function Mx(e,t){let n=e.slice(t,t+8).toLowerCase();return n.startsWith("http://")||n.startsWith("https://")}function Ry(e,t){let n=rt(e),r=rt(t),s=e.length,o=i=>{let a=i;for(;a<s&&se(e[a]);)a++;return a};for(let i=n.indexOf(r);i!==-1;i=n.indexOf(r,i+1)){let a=o(i+r.length);if(e[a]!==":")continue;let u=o(a+1);for(let p=u;p<s;){if(!se(e[p])){p++;continue}let d=o(p);if(Mx(e,d))return e.slice(u,p);p=d}return e.slice(u)}return null}var Ox=new Set(["read","glob","grep","list"]);function z(e){return e.replace(/^oc-/,"").replace(/-/g,"_")}function dL(e){return Ox.has(re(e))}function gL(e){let t=0,n=0,r=0;for(let s of e){let o=re(s.tool);o==="read"?t++:o==="glob"||o==="grep"?n++:o==="list"&&r++}return{read:t,search:n,list:r}}function $o(e){if(!e)return"";let t=Te(e.replace(/\\/g,"/")),n=t.lastIndexOf("/");return n>=0?t.slice(n+1):t}function $r(e,t=60){if(!e)return"";let n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,t)}\u2026`:n}function Uo(e){let n=(e.state??{}).input??{};switch(z(e.tool)){case"read":case"edit":case"write":case"morph_edit":{let o=n.filePath??n.file_path??n.path;return o?$o(String(o)):""}case"glob":return n.pattern?String(n.pattern):"";case"grep":{let o=n.pattern??n.query,i=n.path??n.include;return o&&i?`"${$r(String(o),40)}" in ${$o(String(i))}`:o?`"${$r(String(o),60)}"`:""}case"list":return n.path?$o(String(n.path)):"";case"bash":return $r(String(n.command??""),80);default:break}let s=["description","query","url","filePath","file_path","path","pattern","name","prompt"];for(let o of s){let i=n[o];if(typeof i=="string"&&i.length>0)return $r(o==="query"&&jr(i)||i,60)}return""}var Dx={read:"Read",search:"Search",list:"List",shell:"Shell",edit:"Edit",write:"Write",fetch:"Fetch",webSearch:"Web Search",scrape:"Scrape",applyPatch:"Apply Patch",task:"Task",worker:"Worker",workspace:"Workspace"};function mL(e,t={}){let n={...Dx,...t},r=z(e.tool),s=Uo(e);switch(r){case"read":return{title:n.read,subtitle:s};case"glob":case"grep":return{title:n.search,subtitle:s};case"list":return{title:n.list,subtitle:s};case"bash":return{title:n.shell,subtitle:s};case"edit":case"morph_edit":return{title:n.edit,subtitle:s};case"write":return{title:n.write,subtitle:s};case"webfetch":case"web_fetch":return{title:n.fetch,subtitle:s};case"websearch":case"web_search":return{title:n.webSearch,subtitle:s};case"scrape":case"scrape_webpage":return{title:n.scrape,subtitle:s};case"apply_patch":return{title:n.applyPatch,subtitle:s};case"task":return{title:n.task,subtitle:s};case"session_spawn":case"session_start_background":return{title:n.worker,subtitle:s};case"project_select":case"project_list":return{title:n.workspace,subtitle:s};default:return{title:r.replace(/_/g," ").replace(/\b\w/g,i=>i.toUpperCase()),subtitle:s}}}function Ee(e){return e.type==="text"}function Me(e){return e.type==="reasoning"}function X(e){return e.type==="tool"}function Iy(e){return e.type==="file"}function _L(e){return e.type==="agent"}function PL(e){return e.type==="compaction"}function SL(e){return e.type==="snapshot"}function xL(e){return e.type==="patch"}function wL(e){return e.type==="step-start"||e.type==="step-finish"}function vL(e){if(Ee(e)||Me(e))return e.text}function AL(e){if(!Iy(e))return!1;let t=e.mime;return t.startsWith("image/")||t==="application/pdf"}function kL(e){let t=[],n=[];for(let r of e)Iy(r)?t.push(r):n.push(r);return{attachments:t,stickyParts:n}}function RL(e,t){let n=[];return e?.tool&&n.push(e.tool),t?.tool&&n.push(t.tool),n}function CL(e,t,n){return n.some(r=>r.messageID===t&&r.callID===e.callID)}var jx=new Set(["todoread","context_info"]);function $x(e){return!jx.has(e.tool)}var Ux=new Set(["task","agent_spawn","agent_message","agent_task","agent_task_update","agent_task_message","agent_task_start","task_create","task_start","task_update","task_message"]);function Ty(e){let t=e.tool||"";if(t.startsWith("oc-"))return;let n=re(t);if(n==="task"||n==="delegate"){let r=e.state?.metadata?.sessionId;if(typeof r=="string"&&r)return r;if(n==="task"&&e.state?.status==="error")return e.state.error?.match(/\btask_id:\s*(ses_[A-Za-z0-9]+)/)?.[1]}return Fx(t,e.state)}function Fx(e,t){let n=z(e);if(Ux.has(n)){let r=t?.title?.match(/\bses_[a-zA-Z0-9]+/);return r?r[0]:t?.output?.match(/\bses_[a-zA-Z0-9]+/)?.[0]}if(n==="session_spawn"||n==="session_start_background")return t?.output?.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/)?.[1]}function IL(e){if(e)for(let t=e.length-1;t>=0;t--){let n=e[t]?.info;if(n?.role==="assistant"&&n.error)return de(n.error)}}function TL(e){let t=[];for(let n of e)if(n.info.role==="assistant")for(let r of n.parts)X(r)&&$x(r)&&t.push(r);return t}function EL(e,t={}){switch(z(e)){case"webfetch":return{icon:"globe",title:"Web Fetch",subtitle:t.url};case"websearch":case"web_search":return{icon:"search",title:"Web Search",subtitle:t.query};case"scrape_webpage":return{icon:"globe",title:"Scrape",subtitle:t.urls?.split?.(",")[0]};case"image_search":return{icon:"image",title:"Image Search",subtitle:t.query};case"image_gen":return{icon:"image",title:"Image Gen",subtitle:t.prompt?.slice?.(0,40)};case"video_gen":return{icon:"cpu",title:"Video Gen",subtitle:t.prompt?.slice?.(0,40)};case"presentation_gen":{let n=t.action||"";return{icon:"presentation",title:{create_slide:"Create Slide",list_slides:"List Slides",preview:"Preview",export_pdf:"Export PDF",export_pptx:"Export PPTX"}[n]||"Presentation",subtitle:t.slide_title||t.presentation_name}}case"show":case"show_user":return{icon:"globe",title:"Output",subtitle:t.title||t.description};case"task":return{icon:"square-kanban",title:`Agent (${t.subagent_type||"task"})`,subtitle:qx(t)};case"session_spawn":case"session_start_background":return{icon:"square-kanban",title:`Worker (${t.agent||"BeeuniWorker"})`,subtitle:t.description||t.prompt?.slice(0,60)};case"apply_patch":return{icon:"file-pen",title:"Patch",subtitle:t.files?.length?`${t.files.length} file${t.files.length>1?"s":""}`:void 0};case"todoread":return{icon:"check-square",title:"Todos (read)"};case"prune":return{icon:"scissors",title:"DCP Prune",subtitle:t.reason};case"distill":return{icon:"scissors",title:"DCP Distill"};case"compress":return{icon:"scissors",title:"DCP Compress",subtitle:t.topic};case"context_info":return{icon:"scissors",title:"Context Info"};case"session_read":return{icon:"glasses",title:`Session Read (${t.mode||"summary"})`,subtitle:t.session_id?.slice(-12)};case"session_search":return{icon:"search",title:"Session Search",subtitle:t.query};case"session_message":return{icon:"message-circle",title:"Message \u2192 Session",subtitle:t.session_id?.slice(-12)};case"session_lineage":return{icon:"list-tree",title:"Session Lineage",subtitle:t.session_id?.slice(-12)};case"session_list_background":case"session_list_spawned":return{icon:"layers",title:"Background Sessions",subtitle:t.project||"all"};case"session_stats":return{icon:"layers",title:"Session Stats",subtitle:t.session_id?.slice(-12)||"current"};case"session_list":return{icon:"list",title:"Session List",subtitle:t.search};case"session_get":return{icon:"book-open",title:"Session Get",subtitle:t.session_id?.slice(-12)};case"session_context":return{icon:"book-open",title:"Session Context",subtitle:t.session_id?.slice(-12)};case"project_delete":return{icon:"trash-2",title:"Workspace Delete Disabled",subtitle:t.project};case"project_list":return{icon:"folder",title:"Projects"};case"project_get":case"project_update":return{icon:"folder",title:"Project",subtitle:t.name||t.project};case"project_select":return{icon:"folder",title:"Project Select",subtitle:t.project};case"project_create":return{icon:"folder-plus",title:"Project Create",subtitle:t.name};case"triggers":case"trigger_create":return{icon:"clock",title:"Create Trigger",subtitle:t.name};case"trigger_list":return{icon:"clock",title:"List Triggers"};case"trigger_get":return{icon:"clock",title:"Trigger Details",subtitle:t.name||t.id};case"trigger_delete":return{icon:"clock",title:"Delete Trigger",subtitle:t.name||t.id};case"trigger_update":return{icon:"clock",title:"Update Trigger",subtitle:t.name||t.id};case"trigger_test":return{icon:"clock",title:"Test Trigger",subtitle:t.name||t.id};case"trigger_pause":return{icon:"clock",title:"Pause Trigger",subtitle:t.name||t.id};case"trigger_resume":return{icon:"clock",title:"Resume Trigger",subtitle:t.name||t.id};case"agent_spawn":return{icon:"cpu",title:`Agent (${t.agent_type||"worker"})`,subtitle:t.description};case"agent_message":return{icon:"message-circle",title:"Agent Message",subtitle:t.agent_id};case"agent_stop":return{icon:"ban",title:"Agent Stop",subtitle:t.agent_id};case"agent_status":return{icon:"layers",title:"Agent Status"};case"agent_task":return{icon:"check-square",title:"Create Task",subtitle:t.title};case"agent_task_update":return{icon:"check-square",title:"Update Task",subtitle:t.task_id};case"agent_task_list":return{icon:"check-square",title:"List Tasks"};case"agent_task_get":return{icon:"check-square",title:"Task Details",subtitle:t.task_id};case"task_create":return{icon:"plus",title:"Create Task",subtitle:t.title};case"task_list":return{icon:"list",title:"Tasks",subtitle:t.status||"all"};case"task_update":return{icon:"refresh-cw",title:"Update Task",subtitle:t.id};case"task_done":return{icon:"check-circle",title:"Task Done",subtitle:t.id};case"task_delete":return{icon:"trash-2",title:"Delete Task",subtitle:t.id};case"pty_spawn":return{icon:"terminal",title:"Spawn",subtitle:t.title||t.command};case"pty_read":return{icon:"terminal",title:"Terminal Output",subtitle:t.id};case"pty_write":case"pty_input":return{icon:"terminal",title:"Terminal Input",subtitle:t.id};case"pty_kill":return{icon:"terminal",title:"Kill Process",subtitle:t.id};default:return Lx(e,t)}}function Lx(e,t){switch(re(e)){case"read":return{icon:"glasses",title:"Read",subtitle:Bx(Ne(t))};case"list":return{icon:"list",title:"List",subtitle:Nx(t.path)};case"glob":return{icon:"search",title:"Glob",subtitle:t.pattern};case"grep":return{icon:"search",title:"Grep",subtitle:t.pattern};case"bash":return{icon:"terminal",title:"Shell",subtitle:t.description};case"edit":return{icon:"file-pen",title:"Edit",subtitle:Cy(Ne(t))};case"write":return{icon:"file-pen",title:"Write",subtitle:Cy(Ne(t))};case"todowrite":return{icon:"check-square",title:"Todos"};case"question":return{icon:"message-circle",title:"Questions"};default:return{icon:"cpu",title:e}}}function Bx(e){if(!e)return;let t=e.split("/");return t[t.length-1]||e}function Cy(e){if(!e)return;let t=e.split("/"),n=t[t.length-1]||e;if(t.length<=1)return n;let r=t[t.length-2];return r?`${n} /${r}`:n}function Nx(e){if(!e)return;let t=e.lastIndexOf("/");if(!(t<0))return e.slice(0,t)||"/"}function ML(e,t){if(!t)return e;if(e.startsWith(t)){let n=e.slice(t.length);return n.startsWith("/")?n.slice(1):n}return e}function _n(e,t=120){if(typeof e!="string")return"";let n=e.split(`
|
|
78
|
-
`).map(r=>r.trim()).find(Boolean);return n?n.length>t?`${n.slice(0,t).trim()}\u2026`:n:""}function
|
|
79
|
-
`))r.startsWith("+")&&!r.startsWith("+++")?t++:r.startsWith("-")&&!r.startsWith("---")&&n++;return{additions:t,deletions:n}}function
|
|
80
|
-
|
|
81
|
-
`)}var kw=new Set(["get_mem","memory_search","mem_search","ltm_search","dcp_compress","dcp_distill","dcp_prune","prune","distill","compress","context_info"]),Rw={read:{verb:"Read",running:"Reading",objectKeys:["filePath","path","file"]},write:{verb:"Wrote",running:"Writing",objectKeys:["filePath","path","file"]},edit:{verb:"Edited",running:"Editing",objectKeys:["filePath","path","file"]},apply_patch:{verb:"Edited",running:"Editing",objectKeys:["filePath","path"]},bash:{verb:"Ran",running:"Running",objectKeys:["command"]},glob:{verb:"Searched",running:"Searching",objectKeys:["pattern"]},grep:{verb:"Searched",running:"Searching",objectKeys:["pattern"]},list:{verb:"Listed",running:"Listing",objectKeys:["path"]},web_search:{verb:"Searched",running:"Searching",objectKeys:["query"]},websearch:{verb:"Searched",running:"Searching",objectKeys:["query"]},webfetch:{verb:"Fetched",running:"Fetching",objectKeys:["url"]},web_fetch:{verb:"Fetched",running:"Fetching",objectKeys:["url"]},scrape:{verb:"Scraped",running:"Scraping",objectKeys:["url"]},scrape_webpage:{verb:"Scraped",running:"Scraping",objectKeys:["url"]},task:{verb:"Delegated",running:"Delegating",objectKeys:["description"]},memory:{verb:"Remembered",running:"Remembering"},get_mem:{verb:"Recalled",running:"Recalling"},memory_search:{verb:"Recalled",running:"Recalling",objectKeys:["query"]},mem_search:{verb:"Recalled",running:"Recalling",objectKeys:["query"]},ltm_search:{verb:"Recalled",running:"Recalling",objectKeys:["query"]},dcp_compress:{verb:"Compacted",running:"Compacting"},dcp_distill:{verb:"Distilled",running:"Distilling"},dcp_prune:{verb:"Pruned",running:"Pruning"},compress:{verb:"Compacted",running:"Compacting"},distill:{verb:"Distilled",running:"Distilling"},prune:{verb:"Pruned",running:"Pruning"},context_info:{verb:"Checked context",running:"Checking context"}};function Cw(e,t){if(e==="filePath"||e==="path"||e==="file"){let n=t.split("/");return n[n.length-1]||t}return e==="query"&&jr(t)||t}function Iw(e,t){if(!t||typeof e!="object"||e===null)return;let n=e;for(let r of t){let s=n[r];if(typeof s=="string"&&s.trim())return Cw(r,s.trim())}}function Gy(e){if(Me(e))return{verb:"Thought",running:"Thinking",object:void 0,tier:"reasoning"};if(!X(e))return{verb:"Used",running:"Using",object:void 0,tier:"primary"};let t=pe(e.tool),n=Rw[t],r=e.state?.input;return n?{verb:n.verb,running:n.running,object:Iw(r,n.objectKeys),tier:kw.has(t)?"plumbing":"primary"}:{verb:"Used",running:"Using",object:t,tier:"primary"}}function PB(e){let t=0,n=0,r=!1,s=!1;for(let o of e){if(Gy(o).tier==="plumbing"){r=!0;continue}if(Me(o)){if(!o.text?.trim())continue;s||(s=!0,t+=1);continue}s=!1,t+=1,X(o)&&qy(o)!=="ok"&&(n+=1)}return{total:t,failed:n,completed:t-n,hasPlumbing:r}}function qo(e){return`${e} ${e===1?"step":"steps"}`}function SB(e,t){let{total:n,failed:r,completed:s,hasPlumbing:o}=e;return t?n===0?"Working":`Working \xB7 ${qo(n)}`:n===0?o?"Housekeeping":"Worked":r===0?`Completed ${qo(n)}`:s===0?`${qo(n)} failed`:`Completed ${s} of ${n} steps \xB7 ${r} failed`}function wB(e){let t=!1,n=!1,r=!1,s=null,o=p=>{let d=p;return d?.summary!==!0?!1:(t=!0,!d.time?.completed&&!d.error&&(r=!0),s==null&&d.error!=null&&(s=d.error),!0)},i=p=>{for(let d of p??[])d.type==="compaction"?(t=!0,n=!0):d.type==="text"&&d.text?.trim()&&(n=!0)},u=(e.userMessage?.parts??[]).some(p=>p.type==="compaction");u&&(t=!0),e.userMessage&&o(e.userMessage.info)&&i(e.userMessage.parts);for(let p of e.assistantMessages)o(p.info),i(p.parts);return u&&e.assistantMessages.length===0&&(r=!0),{isCompaction:t,hasContent:n,inFlight:r,error:s}}function kB(e){let t=(e??"").trimStart();return t.startsWith("{")||t.startsWith("[")}function RB(e,t=2e3){let n=(e??"").trim();try{let r=JSON.parse(n);if(typeof r=="string")try{r=JSON.parse(r)}catch{}r&&typeof r=="object"&&(n=JSON.stringify(r,null,2))}catch{}return n.length>t?{text:n.slice(0,t).trimEnd(),truncatedChars:n.length-t}:{text:n,truncatedChars:0}}function CB(e,t=200){let n=e??"";return n=n.replace(/\\n/g," "),n=Ay(n),n=ky(n),n=n.replace(/[#*_`>]+/g," "),n=n.replace(/\s+/g," ").trim(),n=n.replace(/\b(\w{2,})(?:\s+\1\b)+/gi,"$1"),n.length>t?n.slice(0,t).trimEnd()+"\u2026":n}function IB(e){let t=(e??"").trim();if(!t)return null;let n;try{if(n=JSON.parse(t),typeof n=="string")try{n=JSON.parse(n)}catch{return null}}catch{return null}if(!n||typeof n!="object"||Array.isArray(n))return null;let r=n;if(r.success!==!1||typeof r.error!="string"||!r.error.trim())return null;let s=r.error.trim(),o;for(let i=0;i<3;i++){let a=bn(s);if(a===null)break;let u;try{u=JSON.parse(a)}catch{break}if(typeof u.status=="number"&&(o=u.status),typeof u.message=="string"&&u.message.trim())s=u.message.trim();else if(typeof u.error=="string"&&u.error.trim())s=u.error.trim();else break}return{message:s,status:o}}function Sn(e){try{return JSON.parse(`"${e}"`)}catch{return e}}function Go(e,t=30){if(!e)return[];let n=[],r=new Set,s=(a,u,p)=>{!/^https?:\/\//i.test(u)||r.has(u)||n.length>=t||(r.add(u),n.push({title:a.trim()||u,url:u,snippet:p?.trim()||void 0}))},o=/"title"\s*:\s*"((?:\\.|[^"\\])*)"\s*,\s*"url"\s*:\s*"((?:\\.|[^"\\])*)"(?:\s*,\s*"(?:snippet|content|text)"\s*:\s*"((?:\\.|[^"\\])*)")?/g,i;for(;(i=o.exec(e))!==null;)if(s(Sn(i[1]),Sn(i[2]),i[3]?Sn(i[3]):void 0),n.length>=t)return n;if(n.length===0){let a=/"url"\s*:\s*"((?:\\.|[^"\\])*)"[^{}]{0,400}?"title"\s*:\s*"((?:\\.|[^"\\])*)"/g;for(;(i=a.exec(e))!==null;)if(s(Sn(i[2]),Sn(i[1])),n.length>=t)return n}return n}function Wy(e,t=!1){if(typeof e=="object"&&e!==null)return e;if(typeof e!="string")return null;try{let n=JSON.parse(e);if(typeof n=="string")try{n=JSON.parse(n)}catch{}return typeof n=="object"?n:null}catch{let n=t&&e.trim().replace(/^\uFEFF/,"");if(n&&n!==e)try{return JSON.parse(n)}catch{}return null}}function Nr(e){return e.filter(t=>t.title&&t.url).map(t=>({title:t.title,url:t.url,snippet:t.snippet||t.content||t.text||void 0,author:t.author||void 0,publishedDate:t.publishedDate||t.published_date||void 0}))}function Ky(e){if(!e)return[];let t=Wy(e,!0);if(t?.success===!1)return[];if(Array.isArray(t?.results)&&t.results.length>0){let n=t.results[0];if(n&&typeof n.query=="string"){let r=[];for(let s of t.results)typeof s.query=="string"&&r.push({query:s.query,answer:s.answer||void 0,sources:Array.isArray(s.results)?Nr(s.results):[]});if(r.length>0)return r}else if(n&&(n.title||n.url)){let r=Nr(t.results);if(r.length>0)return[{query:t.query||"",answer:t.answer||void 0,sources:r}]}}if(t?.query&&typeof t.query=="string")return[{query:t.query,answer:t.answer||void 0,sources:Array.isArray(t.results)?Nr(t.results):[]}];if(Array.isArray(t)&&t.length>0&&t[0]&&(t[0].title||t[0].url)){let n=Nr(t);if(n.length>0)return[{query:"",sources:n}]}if(typeof e=="string"){let n=e.split(/(?=^Title: )/m).filter(Boolean),r=[];for(let s of n){let o=s.match(/^Title:\s*(.+)/m),i=s.match(/^URL:\s*(.+)/m),a=s.match(/^Author:\s*(.+)/m),u=s.match(/^Published Date:\s*(.+)/m),p=s.match(/^Text:\s*([\s\S]*?)$/m);o&&i&&r.push({title:o[1].trim(),url:i[1].trim(),snippet:p?.[1]?.trim()||void 0,author:a?.[1]?.trim()||void 0,publishedDate:u?.[1]?.trim()||void 0})}if(r.length>0)return[{query:"",sources:r}]}if(typeof e=="string"){let n=Go(e);if(n.length>0)return[{query:"",sources:n.map(r=>({title:r.title,url:r.url,snippet:r.snippet}))}]}return[]}function Wo(e){try{return new URL(e).hostname.replace("www.","")}catch{return e}}function OB(e){try{let t=new URL(e).hostname.replace(/^www\./,""),n=t.split(".");return n.length<=2?t:n.slice(-2).join(".")}catch{return Wo(e)}}function DB(e){try{return`https://www.google.com/s2/favicons?domain=${new URL(e).hostname.replace(/^www\./,"")}&sz=128`}catch{return null}}function jB(e){if(!e)return!1;let t=e.slice(0,600).toLowerCase();return t.includes("<!doctype html")||t.includes("<html")?!0:/<\/(body|head|div|p|span|table)>/i.test(e.slice(0,3e3))}function Tw(e){let t=e.urls??e.url;if(typeof t=="string")return t.split(/[\s,]+/).map(n=>n.trim()).filter(n=>/^https?:\/\//i.test(n));if(Array.isArray(t)){let n=[];for(let r of t){if(typeof r!="string")continue;let s=r.trim();/^https?:\/\//i.test(s)&&n.push(s)}return n}return[]}function Ew(e,t){if(t.length===0)return[];let n=e.replace(/^Error:\s*/i,"").trim();return t.map(r=>{let s=Ry(n,r)?.trim()||n;return{url:r,success:!1,error:s}})}function $B(e,t){let n=Mw(e);if(n?.results?.length)return n.results;let r=typeof e=="string"?e:"";return r.trim()?Ew(r,Tw(t)):[]}function Mw(e){if(!e)return null;let t=Wy(e);if(!t)return null;if(t.results&&Array.isArray(t.results))return{total:t.total||t.results.length,successful:t.successful??t.results.filter(n=>n.success!==!1).length,failed:t.failed??t.results.filter(n=>n.success===!1).length,results:t.results.map(n=>({url:n.url||"",success:n.success!==!1,title:n.title||void 0,content:n.content||n.text||n.snippet||void 0,error:n.error||void 0}))};if(typeof e=="string"){let n=Go(e);if(n.length>0)return{total:n.length,successful:n.length,failed:0,results:n.map(r=>({url:r.url,success:!0,title:r.title||void 0,content:r.snippet||void 0}))}}return null}function Ow(e){if(typeof e!="string"||!e.trim())return null;try{let t=new URL(e.trim());return t.protocol==="http:"||t.protocol==="https:"?t.toString():null}catch{return null}}var Dw={read:"explore",list:"explore",glob:"explore",grep:"explore",write:"edit",edit:"edit",apply_patch:"edit",bash:"run",pty:"run",web_search:"web",webfetch:"web",media:"create",show:"create",task:"delegate",delegate:"delegate",sessions:"sessions",todowrite:"plan",question:"ask",memory:"memory",connectors:"connectors",automations:"automations",projects:"projects",skill:"skills",context:"hidden",retired:"retired",other:"other"};function Ko(e){return Dw[re(e)]}function qr(e){let t=z(e).replace(/__+/g,"/");return(t.includes("/")?t.slice(t.lastIndexOf("/")+1):t).replace(/_/g," ").trim().replace(/\b\w/g,r=>r.toUpperCase())}var jw={run:"Terminal",memory:"Memory"};function qB(e){let t=Ko(e);return(t==="hidden"?void 0:jw[t])??qr(e)}function xn(e,t,n){return e===1?t:n}function Ho(e){return e.length===0?"":e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e.slice(0,-1).join(", ")}, and ${e[e.length-1]}`}function zy(e){return e.length?Uo(e[0]):""}function be(e){return(e.state??{}).input??{}}var $w={agent_spawn:"spawn",agent_task:"spawn",agent_task_create:"spawn",agent_task_start:"spawn",task:"spawn",task_create:"spawn",task_start:"spawn",session_spawn:"spawn",session_start_background:"spawn",agent_message:"message",agent_task_message:"message",task_message:"message",session_message:"message",agent_status:"status",agent_task_list:"status",agent_task_get:"status",task_list:"status",task_get:"status",agent_stop:"stop",agent_task_cancel:"stop",task_cancel:"stop",agent_task_approve:"done",task_approve:"done",task_done:"done",task_delete:"delete"};function Uw(e){let t=z(e.tool);if(t==="agent_task_update"||t==="task_update")switch(be(e).action||""){case"start":return"spawn";case"cancel":return"stop";case"approve":return"done";default:return"message"}return $w[t]??"message"}function Hy(e){switch(e){case"create":return"create";case"update":return"update";case"delete":return"delete";case"test":return"test";case"pause":case"resume":return"control";case"list":case"get":return"read";default:return"unknown"}}function Fw(e){let t=z(e.tool);if(t==="triggers"){let r=be(e).action||"list";return Hy(r)}let n=t.match(/^trigger_(.+)$/);return Hy(n?n[1]:"list")}var Lw={connector_setup:"connect",connector_get:"read",connector_list:"read",beeuni_connector_discover:"read",beeuni_connector_describe:"read",beeuni_connectors:"read",beeuni_connectors_connectors:"read",beeuni_connectors_discover:"read",beeuni_connectors_describe:"read",beeuni_connector_call:"call",beeuni_connectors_call:"call"};function Bw(e){return Lw[z(e.tool)]??"read"}var Nw={project_get:"open",project_list:"open",project_select:"open",project_update:"update",project_create:"create",project_delete:"delete"};function qw(e){return Nw[z(e.tool)]??"open"}function It(e){return e.every(t=>t===e[0])}var Gw={view:"read",create:"write",str_replace:"write",insert:"write",rename:"write",delete:"delete"};function Ww(e){if(z(e.tool)!=="memory")return"read";let n=be(e).command;return n&&Gw[n]||"unknown"}var Kw={generate:"Made an image",edit:"Edited an image",upscale:"Upscaled an image",remove_bg:"Removed an image background"},Hw={create_slide:"Added a slide to a presentation",list_slides:"Checked a presentation's slides",list_presentations:"Checked your presentations",delete_slide:"Deleted a slide from a presentation",delete_presentation:"Deleted a presentation",validate_slide:"Checked a slide",export_pdf:"Exported a presentation to PDF",export_pptx:"Exported a presentation to PPTX",preview:"Previewed a presentation",serve:"Previewed a presentation"};function Vw(e){let t=Te(e.replace(/\\/g,"/")),n=t.lastIndexOf("/");return n>=0?t.slice(n+1):t}function zw(e){let t=be(e),n=typeof t.title=="string"?t.title.trim():"";if(n)return n;let r=typeof t.description=="string"?t.description.trim():"";if(r)return Yw(r,60);let s=typeof t.path=="string"?t.path:"";if(s)return Vw(s);let o=typeof t.url=="string"?t.url:"";if(o){let i=Ow(o);return i?Wo(i):"a link"}return""}function Yw(e,t=60){let n=e.replace(/\s+/g," ").trim();return n.length>t?n.slice(0,t-1)+"\u2026":n}function Qw(e){let t=be(e).action;return t&&Kw[t]||"Worked on an image"}function Jw(e){let t=be(e).action;return t&&Hw[t]||"Worked on a presentation"}function Xw(e){return e.slice(0,e.indexOf(":"))}var Zw={generate:"image:generate",edit:"image:edit",upscale:"image:upscale",remove_bg:"image:remove_bg"},ev={create_slide:"presentation:create_slide",list_slides:"presentation:list_slides",list_presentations:"presentation:list_presentations",delete_slide:"presentation:delete_slide",delete_presentation:"presentation:delete_presentation",validate_slide:"presentation:validate_slide",export_pdf:"presentation:export_pdf",export_pptx:"presentation:export_pptx",preview:"presentation:preview",serve:"presentation:preview"};function tv(e){let t=z(e.tool);if(t==="image_gen"){let n=be(e).action;return n&&Zw[n]||"image:unknown"}if(t==="video_gen")return"video:create";if(t==="presentation_gen"){let n=be(e).action;return n&&ev[n]||"presentation:unknown"}return"shown:result"}var nv=new Set(["create_slide","export_pdf","export_pptx"]);function GB(e){let t=z(e.tool);if(t==="image_gen")return"image";if(t==="video_gen")return"video";if(t==="presentation_gen"){let n=be(e).action;return n?nv.has(n)?"presentation":null:"presentation"}return null}var rv={"image:generate":e=>`Made ${e} images`,"image:edit":e=>`Edited ${e} images`,"image:upscale":e=>`Upscaled ${e} images`,"image:remove_bg":e=>`Removed backgrounds from ${e} images`,"image:unknown":e=>`Worked on ${e} images`,"video:create":e=>`Made ${e} videos`,"presentation:create_slide":e=>`Added ${e} slides`,"presentation:delete_slide":e=>`Deleted ${e} slides`,"presentation:delete_presentation":e=>`Deleted ${e} presentations`,"presentation:list_slides":()=>"Checked a presentation's slides","presentation:list_presentations":()=>"Checked your presentations","presentation:validate_slide":()=>"Checked slides","presentation:export_pdf":e=>`Exported ${e} presentations to PDF`,"presentation:export_pptx":e=>`Exported ${e} presentations to PPTX`,"presentation:preview":e=>`Previewed ${e} presentations`,"presentation:unknown":e=>`Worked on ${e} presentations`,"shown:result":e=>`Showed you ${e} results`},Vy={image:"image",video:"video",presentation:"presentation",shown:"result"};function sv(e){let t={image:0,video:0,presentation:0,shown:0};for(let r of e)t[Xw(r)]++;let n=[];return Object.keys(t).forEach(r=>{let s=t[r];s&&n.push(`${s} ${xn(s,Vy[r],`${Vy[r]}s`)}`)}),`Worked on ${Ho(n)}`}function Yy(e,t){let n=t.length,r=zy(t);switch(e){case"explore":{let s=t.filter(o=>z(o.tool)==="read").length;return s===n?`Read ${n} ${xn(n,"file","files")}`:s===0?"Looked through your files":`Looked through your files \xB7 ${s} read`}case"edit":{let s=new Set(t.map(i=>Ne(be(i))).filter(Boolean)).size||n,o=t.every(i=>z(i.tool)==="write")?"Wrote":"Updated";return s===1?r?`${o} ${r}`:`${o} a file`:`${o} ${s} files`}case"run":return n===1?"Ran a command":`Ran ${n} commands`;case"web":{let s=u=>{let p=z(u.tool);return p==="web_search"||p==="websearch"||p==="image_search"},o=t.filter(s).length;if(o===n)return`Searched the web \xB7 ${n} ${xn(n,"query","queries")}`;if(o===0)return`Read ${n} ${xn(n,"page","pages")}`;let i=new Set;for(let u of t)if(s(u)){let p=u.state?.output;for(let d of Ky(p).flatMap(g=>g.sources))d.url&&i.add(d.url)}else{let p=u.state?.input?.url;typeof p=="string"&&p&&i.add(p)}let a=i.size||n;return`Searched and read ${a} ${xn(a,"source","sources")}`}case"create":{if(n===1){let o=t[0],i=z(o.tool);if(i==="image_gen")return Qw(o);if(i==="video_gen")return"Made a video";if(i==="presentation_gen")return Jw(o);let a=zw(o);return a?`Showed you ${a}`:"Showed you the result"}let s=t.map(tv);return It(s)?rv[s[0]](n):sv(s)}case"plan":return n===1?"Planned the work":`Planned the work \xB7 ${n} steps`;case"delegate":{let s=t.map(Uw);if(It(s))switch(s[0]){case"spawn":return n===1?"Asked a helper agent":`Worked with ${n} helper agents`;case"message":return n===1?"Sent instructions to a helper agent":`Sent instructions to ${n} helper agents`;case"status":return"Checked on a helper agent";case"stop":return n===1?"Stopped a helper agent":`Stopped ${n} helper agents`;case"done":return n===1?"A helper agent finished a task":`Helper agents finished ${n} tasks`;case"delete":return n===1?"Removed a task":`Removed ${n} tasks`}return n===1?"Worked with a helper agent":`Worked with helper agents \xB7 ${n} steps`}case"sessions":return"Checked earlier work";case"memory":{let s=t.map(Ww);if(It(s))switch(s[0]){case"write":return n===1?"Wrote to its memory":`Wrote to its memory \xB7 ${n} updates`;case"delete":return n===1?"Deleted from its memory":`Deleted ${n} things from its memory`;case"read":return"Recalled what you told it before"}return"Worked with its memory"}case"connectors":{let s=t.map(Bw);if(It(s))switch(s[0]){case"connect":return n===1?r?`Connected to ${r}`:"Connected a connector":`Connected ${n} connectors`;case"call":return n===1?"Used a connector":`Made ${n} connector calls`;case"read":return"Checked your connectors"}return"Worked with your connectors"}case"automations":{let s=t.map(Fw);if(It(s))switch(s[0]){case"create":return n===1?"Set up an automation":`Set up ${n} automations`;case"update":return n===1?"Updated an automation":`Updated ${n} automations`;case"delete":return n===1?"Deleted an automation":`Deleted ${n} automations`;case"control":return n===1?"Adjusted an automation":`Adjusted ${n} automations`;case"test":return n===1?"Tested an automation":`Tested ${n} automations`;case"read":return"Checked your automations";case"unknown":return"Worked with your automations"}return"Worked with your automations"}case"projects":{let s=t.map(qw);if(It(s))switch(s[0]){case"delete":return n===1?"Tried to delete a project \u2014 deletion isn't allowed":`Tried to delete ${n} projects \u2014 deletion isn't allowed`;case"create":return n===1?r?`Created ${r}`:"Created a project":`Created ${n} projects`;case"update":return n===1?r?`Updated ${r}`:"Updated your project":`Updated ${n} projects`;case"open":return n===1?r?`Opened ${r}`:"Opened your project":`Opened ${n} projects`}return r?`Worked in ${r}`:"Worked in your project"}case"skills":return n===1?r?`Used the ${r} skill`:"Used a skill":`Used ${n} skills`;case"ask":return"Asked you a question";case"retired":return"Used a connector that has since been removed";case"other":{if(n===1)return`Used ${qr(t[0].tool)}`;let s=Array.from(new Set(t.map(o=>qr(o.tool))));return s.length===1?`Used ${s[0]} \xB7 ${n} times`:`Used ${Ho(s)}`}}}function Qy(e,t){let n=zy(t);switch(e){case"explore":return"Couldn't read your files";case"edit":{if(t.length===1){let r=z(t[0].tool)==="write"?"write":"update";return n?`Couldn't ${r} ${n}`:`Couldn't ${r} a file`}return"Couldn't update some files"}case"run":return"A command failed";case"web":return"Couldn't finish searching the web";case"create":return"Couldn't finish making that";case"plan":return"Couldn't update the plan";case"delegate":return"A helper agent hit a problem";case"sessions":return"Couldn't check earlier work";case"memory":return"Couldn't reach its memory";case"connectors":return"Couldn't reach a connector";case"automations":return"Hit a problem with your automations";case"projects":return"Hit a problem with your project";case"skills":return"Couldn't use a skill";case"ask":return"Couldn't ask you a question";case"retired":return"Used a connector that has since been removed";case"other":{let r=t.filter(i=>i.state?.status==="error"),s=r.length?r:t,o=Array.from(new Set(s.map(i=>qr(i.tool))));return`Couldn't finish using ${Ho(o)}`}}}function ov(e){return e.some(t=>t.state?.status==="running"||t.state?.status==="pending")?"running":e.some(t=>t.state?.status==="error")?"error":"done"}function iv(e){let t=Number.POSITIVE_INFINITY,n=0;for(let r of e){let s=r.state.time;typeof s?.start=="number"&&(t=Math.min(t,s.start)),typeof s?.end=="number"&&(n=Math.max(n,s.end))}if(!(!Number.isFinite(t)||n<=t))return n-t}function Jy(e,t){let n=ov(t);return{id:t[0].callID,family:e,label:n==="error"?Qy(e,t):Yy(e,t),parts:t,status:n,durationMs:n==="running"?void 0:iv(t)}}function Xy(e){let t=[],n=null,r=[],s=()=>{n&&r.length&&t.push(Jy(n,r)),n=null,r=[]};for(let o of e){let i=Ko(o.tool);if(i!=="hidden"&&!Vs(o)){if(_m(o.tool)){s(),t.push(Jy(i,[o]));continue}i!==n&&(s(),n=i),r.push(o)}}return s(),t}function av(e){let t=e.time?.end;return!(typeof t=="number"&&t>0)}function QB(e,t){let n=[],r=null,s=[],o=()=>{if(r&&r.texts.length>0){let{startedAt:a,endedAt:u}=r,p=typeof a=="number"&&typeof u=="number"&&u>a?u-a:void 0;n.push({kind:"thought",key:r.key,texts:r.texts,running:r.running,durationMs:p})}r=null},i=()=>{if(s.length!==0){for(let a of Xy(s))n.push(a.parts.length===1?{kind:"part",key:a.parts[0].id,part:a.parts[0]}:{kind:"group",key:`group-${a.parts[0].id}`,step:a});s=[]}};for(let a of e)if(t(a)!=="plumbing"){if(Me(a)){let u=a.text?.trim();if(!u)continue;i(),r||(r={key:`thought-${a.id}`,texts:[],running:!1}),r.texts.push(u);let p=a.time;r.startedAt===void 0&&typeof p?.start=="number"&&(r.startedAt=p.start),r.endedAt=typeof p?.end=="number"&&p.end>0?p.end:void 0,r.running=av(a);continue}if(o(),X(a)){s.push(a);continue}i(),n.push({kind:"part",key:a.id,part:a})}o(),i();for(let a=0;a<n.length-1;a++){let u=n[a];u.kind==="thought"&&(u.running=!1)}return n}var cv=/^(thinking|thought|considering|planning|deciding|weighing|exploring|analy[sz]ing|reasoning|working out|figuring)/i;function uv(e){return e.replace(/```[\s\S]*?```/g," ").replace(/`([^`]*)`/g,"$1").replace(/^#{1,6}\s*/gm,"").replace(/\*\*([^*]*)\*\*/g,"$1").replace(/(^|\s)[*_]([^*_]+)[*_]/g,"$1$2").replace(/^\s*[-*+]\s+/gm,"").replace(/\s+/g," ").trim()}function JB(e){let t=e.flatMap(s=>{let o=uv(s);return o?[o]:[]}).join(" ").trim();return t?cv.test(t)?t:`Thinking about ${/^[A-Z][a-z]/.test(t)?t[0].toLowerCase()+t.slice(1):t}`:"Thinking"}function lv(e){return e?.info?.time??{}}function ZB(e){let t=lv(e).created;return typeof t!="number"||!Number.isFinite(t)||t<=0?null:t}var Gr=6e4,pv=10080*Gr,Zy=1440;function eh(e){let t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}function dv(e,t){let n=t.getTime()-e.getTime(),r=n/Gr,s=(i,a)=>`${i} ${a}${i===1?"":"s"} ago`;if(r<60)return s(Math.round(r),"minute");if(r<Zy)return s(Math.round(r/60),"hour");let o=(n-(eh(t)-eh(e)))/Gr;return s(Math.round(o/Zy),"day")}function rh(e){if(typeof e!="number"||!Number.isFinite(e)||e<=0)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t}var th=new Map;function gv(e,t){let n={...e,...t.timeZone?{timeZone:t.timeZone}:{}},r=`${t.locale??""}|${JSON.stringify(n)}`,s=th.get(r);return s||(s=new Intl.DateTimeFormat(t.locale,n),th.set(r,s)),s}function Wr(e,t,n){return gv(t,n).formatToParts(e).map(r=>r.type==="dayPeriod"?mv(r.value,n):r.value).join("")}function mv(e,t){let n=/^([ap])\.?\s?m\.?$/i.exec(e.trim());return n?`${n[1].toUpperCase()}M`:e.toLocaleUpperCase(t.locale)}function nh(e,t){return Wr(e,{year:"numeric"},t)}function eN(e,t,n={}){let r=rh(e);if(!r)return"";let s=i=>Wr(r,{month:"long",day:"numeric",...i?{year:"numeric"}:{}},n);if(t===null)return s(!0);let o=Math.max(0,t-r.getTime());return o<Gr?"just now":o<pv?dv(r,new Date(t)):s(nh(r,n)!==nh(new Date(t),n))}function tN(e,t={}){let n=rh(e);if(!n)return"";let r=Wr(n,{month:"long",day:"numeric",year:"numeric"},t),s=Wr(n,{hour:"numeric",minute:"2-digit"},t);return`${r} ${s}`}function oN(e,t={}){let n=[],r=[],s=()=>{r.length>0&&(n.push({kind:"burst",parts:r}),r=[])};for(let o of e)if(!Pm(o)){if(Ee(o)){s(),n.push({kind:"text",part:o});continue}if(X(o)&&(Sm(o.tool)||!!t.standaloneCallIds?.has(o.callID))){s(),n.push({kind:"standalone",part:o});continue}r.push(o)}return s(),n}function fv(e){let t=pe(e);return t==="show"||t==="show_user"}function uN(e,t={}){let n=[],r=[],s=()=>{r.length===1?n.push(r[0]):r.length>1&&n.push({kind:"show-group",parts:r.map(o=>o.part)}),r=[]};for(let o of e){if(o.kind==="standalone"&&fv(o.part.tool)&&!t.standaloneCallIds?.has(o.part.callID)){r.push(o);continue}s(),n.push(o)}return s(),n}var yv=["title","description","path","url","content","language","aspect_ratio","attachment"];function sh(e,t){if(!t||typeof t!="object")return null;let n=t;if(yr(n))return null;let r={callID:e,status:"ready",type:typeof n.type=="string"?n.type:""};for(let s of yv){let o=n[s];typeof o=="string"&&o&&(r[s]=o)}return r}function hv(e){if(Array.isArray(e))return e.length>0?e:null;if(typeof e!="string"||!e.trim())return null;try{let t=JSON.parse(e);return Array.isArray(t)&&t.length>0?t:null}catch{return null}}function lN(e){let t=[];for(let n of e){let r=n.state,s=r.input??{};if(r.status==="error"){let a=typeof s.title=="string"&&s.title?s.title:void 0;t.push({callID:n.callID,status:"error",type:"error",...a?{title:a}:{},error:typeof r.error=="string"?r.error:""});continue}let o=hv(s.items),i=o?o.map(a=>sh(n.callID,a)).filter(a=>!!a):[sh(n.callID,s)].filter(a=>!!a);if(i.length>0){t.push(...i);continue}(r.status==="running"||r.status==="pending")&&t.push({callID:n.callID,status:"pending",type:""})}return t}function oh(e){return!e.working||e.awaitingUser?!1:e.isRetrying?!0:!e.hasError}var bv=e=>e.time?.completed;function mN(e){return!e.hasPendingTurns||!e.newestAssistantCompleted?!1:e.pendingDelivery||!!e.deliveringBelow||e.activeTurnId!==null&&e.activeTurnId!==e.workingTurnId}function _v(e,t){let n=e.userMessage.info.id;return t.pendingTurnIds.has(n)||e.assistantMessages.length===0&&t.pendingPromptIds.has(n)}function fN(e){let t=e.turns.find(r=>e.deliveringPromptIds.has(r.userMessage.info.id));if(t)return t.userMessage.info.id;let n=e.turns.findIndex(r=>_v(r,e));return n<=0?null:e.turns[n-1].userMessage.info.id}function yN(e){return e.isTurnWorking&&!e.pendingDelivery&&e.activeTurnId===e.turnId}function hN(e){if(e.confirmedActive)return!1;let{workingTurnId:t,pendingTurnIds:n}=e.resolution;return e.sessionWorking&&(t===null?n[0]:t)===e.turnId?e.inboxPrompt?.state==="waiting"||e.inboxPrompt?.state==="failed":n.includes(e.turnId)||!!e.inboxPrompt}function bN(e){return!e.lastTurnWorking||e.workingTurnId===null||e.suppressed?!1:oh({working:!0,hasError:e.workingTurnHasError,isRetrying:e.isRetrying,awaitingUser:e.awaitingUser})}function _N(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n].userMessage.info.id;if(t(r))return e[n].assistantMessages.length===0?r:null}return null}function PN(e){let{turns:t}=e;if(t.length===0)return{workingTurnId:null,pendingTurnIds:[]};let n=-1;for(let a=t.length-1;a>=0;a--)if(t[a].assistantMessages.length>0){n=a;break}let r=t.slice(n+1).map(a=>a.userMessage.info.id),s=a=>({workingTurnId:t[a].userMessage.info.id,pendingTurnIds:t.slice(a+1).map(u=>u.userMessage.info.id)}),o=e.hintMessageId??null;if(o){if(n>=0&&t[n].userMessage.info.id===o)return s(n);let a=r.indexOf(o);if(a>=0)return s(n+1+a)}if(n>=0){let a=t[n],u=a.assistantMessages[a.assistantMessages.length-1];if(!bv(u.info)&&!u.info.error)return s(n)}let i=e.unrunTurnIds;if(r.length>0){for(let a=t.length-1;a>n;a--)if(!i?.has(t[a].userMessage.info.id))return s(a)}return n<0?{workingTurnId:null,pendingTurnIds:r}:s(n)}function Pv(e){let t=e.userMessage.parts;if(t.length===0||!t.every(o=>Ee(o)&&o.synthetic)||e.assistantMessages.length!==1)return!1;let r=e.assistantMessages[0].parts;if(r.length!==1)return!1;let s=r[0];return X(s)&&s.tool==="bash"}function wN(e){if(Pv(e))return e.assistantMessages[0].parts[0]}function RN(e,t){for(let n=t.length-1;n>=0;n--)if(t[n].info.role==="user")return t[n].info.id===e;return!1}function CN(e,t){return!t||!e?!1:e.type!=="idle"}function IN(e,t){return!e&&!!t}function TN(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return he(n.error)?.message||de(n.error)}}function EN(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return py(n.error)}}function MN(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return he(n.error)}}function ih(e){if(e){if(X(e))switch(e.tool){case"task":case"session_spawn":case"session_start_background":case"session-spawn":case"session-start-background":return"Handing off to an agent...";case"agent_spawn":case"agent-spawn":case"agent_task":case"agent-task":return"Handing off to an agent...";case"agent_task_update":case"agent-task-update":case"task_update":case"task-update":return"Updating progress...";case"agent_message":case"agent-message":case"agent_task_message":case"agent-task-message":case"task_message":case"task-message":return"Checking in with an agent...";case"task_create":case"task-create":case"task_start":case"task-start":return"Starting a new task...";case"task_list":case"task-list":return"Reviewing the task list...";case"task_done":case"task-done":return"Updating progress...";case"todowrite":case"todoread":return"Planning...";case"read":return"Reading files...";case"list":case"grep":case"glob":return"Searching files...";case"webfetch":case"scrape-webpage":return"Reading a web page...";case"websearch":case"web-search":case"web_search":return"Searching the web...";case"image-search":return"Searching for images...";case"image-gen":return"Creating an image...";case"video-gen":return"Creating a video...";case"presentation-gen":return"Creating a presentation...";case"show":case"show-user":return"Sharing the result...";case"edit":case"write":case"morph_edit":return"Making changes...";case"bash":return"Working on the computer...";case"apply_patch":return"Making changes...";case"prune":return"Tidying up memory...";case"distill":return"Tidying up memory...";case"compress":return"Tidying up memory...";case"context_info":return"Refreshing memory...";default:return"Working on it..."}if(Me(e)){let t=e.text?.trimStart();if(t){let n=t.match(/^\*\*(.+?)\*\*/);if(n)return`Thinking about ${n[1].trim()}...`}return"Thinking..."}if(Ee(e))return"Gathering thoughts..."}}function ON(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n].part,s=X(r)?r:void 0;if(s&&(s.tool==="task"||s.tool==="agent_task"||s.tool==="agent-task"||s.tool==="task_create"||s.tool==="task-create"||s.tool==="task_start"||s.tool==="task-start")&&s.state.status==="running"&&t&&t.length>0){for(let i=t.length-1;i>=0;i--){let a=t[i];if(a.info.role==="assistant")for(let u=a.parts.length-1;u>=0;u--){let p=ih(a.parts[u]);if(p)return p}}return"Handing off to an agent..."}let o=ih(r);if(o)return o}return"Figuring out what\u2019s next..."}function DN(e){if(!Number.isFinite(e)||e<1e3)return"";let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60),r=t%60;return r>0?`${n}m ${r}s`:`${n}m`}var ah=1.2;function ch(e,t){if(!e)return 0;let n=e.input??0,r=(e.output??0)+(e.reasoning??0),s=e.cache?.read??0,o=e.cache?.write??0,i=Math.max(0,n-s-o),u=[...t.tiers??[],...t.contextOver200k?[t.contextOver200k]:[]].filter(d=>n>d.contextThreshold).sort((d,g)=>g.contextThreshold-d.contextThreshold)[0]??t,p=i/1e6*u.inputPer1M;return p+=r/1e6*u.outputPer1M,s>0&&(p+=s/1e6*(u.cacheReadPer1M??u.inputPer1M)),o>0&&(p+=o/1e6*(u.cacheWritePer1M??u.inputPer1M)),p}function Vo(e,t){return e==="codex"||e==="openai-codex"||e==="beeuni"&&!!t?.startsWith("codex/")}function uh(e,t,n,r){if(Vo(t,n))return 0;let s=e.cost||0;if(s>0)return s;if(!r||!t||!n)return 0;let o=r(t,n);return o?ch(e.tokens,o):0}function lh(e){if(e.role!=="assistant")return{};let t=e;return{providerID:t.providerID,modelID:t.modelID}}function jN(e,t){let n=0,r=0,s=0,o=0,i=0,a=0,u=!1;for(let{part:p,message:d}of e)if(p.type==="step-finish"){u=!0;let g=p,{providerID:m,modelID:f}=lh(d.info);n+=uh(g,m,f,t),r+=g.tokens?.input||0,s+=g.tokens?.output||0,o+=g.tokens?.reasoning||0,i+=g.tokens?.cache?.read||0,a+=g.tokens?.cache?.write||0}if(!u){let p=new Set;for(let{message:d}of e){if(d.info.role!=="assistant")continue;let g=d.info;if(p.has(g.id))continue;p.add(g.id);let m=ph(g,t),f=g.tokens&&Vo(g.providerID,g.modelID);if(m<=0&&!f)continue;u=!0,n+=m;let h=g.tokens;h&&(r+=h.input??0,s+=h.output??0,o+=h.reasoning??0,i+=h.cache?.read??0,a+=h.cache?.write??0)}}if(u)return{cost:n*ah,tokens:{input:r,output:s,reasoning:o,cacheRead:i,cacheWrite:a}}}function ph(e,t){if(Vo(e.providerID,e.modelID)||!t||!e.providerID||!e.modelID||!e.tokens)return 0;let n=t(e.providerID,e.modelID);return n?ch({input:e.tokens.input,output:e.tokens.output,reasoning:e.tokens.reasoning,cache:e.tokens.cache},n):0}function $N(e,t){let n=0;for(let r of e){if(r.info?.role!=="assistant")continue;let s=r.info,{providerID:o,modelID:i}=lh(s),a=0,u=!1;for(let p of r.parts)p.type==="step-finish"&&(u=!0,a+=uh(p,o,i,t));u||(a+=ph(s,t)),n+=a}return n*ah}function UN(e){return e===0?"$0.00":e<.001?`$${e.toFixed(4)}`:e<.01?`$${e.toFixed(3)}`:`$${e.toFixed(2)}`}function FN(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}k`:`${Math.round(e/1e3)}k`}function LN(e){if(!e||e.type!=="retry")return;let t=e,n=de(t.message);return{attempt:t.attempt,message:n.length>60?`${n.slice(0,60)}...`:n,next:t.next,details:he(t.message)}}function BN(e){if(!(!e||e.type!=="retry"))return de(e.message)}function NN(e){return(e.info.summary?.diffs?.length??0)>0}function WN(e){if(!e)return"";let t=e;return t=t.replace(/^##\s*Worker Result\s*\n/i,""),t=t.replace(/^\*\*Agent:\*\*.*\n?/m,""),t=t.replace(/^\*\*Task:\*\*.*\n?/m,""),t=t.replace(/^\*\*Status:\*\*.*\n?/m,""),t=t.replace(/^\*\*Session:\*\*.*\n?/m,""),t=t.replace(/^\*\*Duration:\*\*.*\n?/m,""),t=by(t,"beeuni_goal_system"),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* created and started\..*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* created:.*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* started\..*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* failed to start.*$/gm,""),t=t.replace(/^Message sent to task.*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* approved.*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* cancelled.*$/gm,""),t=t.replace(/Worker session: ses_[a-zA-Z0-9]+/g,""),t=t.replace(/^---\s*\n/gm,""),t=t.trim(),t||""}function KN(e){return e?e.split(`
|
|
82
|
-
`).filter(n=>n.trim()).length<=3:!1}function
|
|
83
|
-
`).filter(r=>r.trim()&&!r.startsWith("#"))[0]?.replace(/^\*\*.*?\*\*\s*/,"").trim();return n?n.length>120?n.slice(0,120).trim()+"\u2026":n:null}function
|
|
84
|
-
`).filter(r=>r.trim());for(let r of n){let s=
|
|
85
|
-
`),r=n===-1?e:e.slice(0,n),s=n===-1?"":e.slice(n+1);if(
|
|
77
|
+
`)&&(n=n.slice(0,-1)),n)}function ri(e,t,n=0){let r=e.indexOf(`<${t}`,n);if(r===-1)return null;let s=e.indexOf(">",r+1+t.length);return s===-1?null:{open:r,end:s}}function Jy(e,t){let n=ri(e,t);return n?e.slice(n.open+1+t.length,n.end):null}function Qy(e,t){let n=ri(e,t);if(!n)return null;let r=e.indexOf(`</${t}>`,n.end+1);return r===-1?null:e.slice(n.end+1,r)}function Xy(e,t){let n=`</${t}>`,r="",s=0;for(;;){let o=ri(e,t,s);if(!o)break;let i=e.indexOf(n,o.end+1);if(i===-1)break;r+=e.slice(s,o.open),s=i+n.length}return r+e.slice(s)}function Zy(e,t,n){let r=[];for(let s of e.split(/[\n\r\u2028\u2029]/)){let o=0;for(;;){let i=s.indexOf(t,o);if(i===-1)break;let a=s.indexOf(n,i+t.length);if(a===-1)break;r.push(s.slice(i+t.length,a)),o=a+n.length}}return r}function Un(e){let t=e.trimEnd();if(!t.endsWith("}"))return null;let n=t.indexOf(":");for(;n!==-1;){let r=n+1;for(;r<t.length&&de(t[r]);)r++;if(t[r]==="{")return t.slice(r);n=t.indexOf(":",n+1)}return null}function eh(e,t,n){let r=ht(t),s=ht(n);for(let o of ht(e).split(/[\n\r\u2028\u2029]/)){let i=o.indexOf(r);if(i!==-1&&o.lastIndexOf(s)>=i+r.length)return!0}return!1}function th(e,t){let n=ht(e),r=t.map(ht),s=e.length,o=c=>{let p=c;for(;p<s&&de(e[p]);)p++;return p},i=c=>{for(let p=c;p<s;p++)if(jn(e[p]))return p+1;return-1},a=0;for(;a!==-1&&a<=s;){let c=o(a);if(c>=s)return null;let p=r.find(d=>n.startsWith(d,c));if(p!==void 0){let d=o(c+p.length);if(e[d]===":"){let g=o(d+1);if(g<s){let m=g;for(;m<s&&!jn(e[m]);)m++;for(;m>g+1&&de(e[m-1]);)m--;return e.slice(g,m)}for(let m=s-1;m>d;m--)if(!jn(e[m]))return e[m];return null}}a=i(c)}return null}function nh(e){let t=e.length,n=new Array(t+1);n[0]=0;for(let a=1;a<=t;a++)n[a]=de(e[a-1])?n[a-1]:a;let r=new Array(t+1).fill(-1);for(let a=t-1;a>=0;a--){if(r[a]=r[a+1],e[a]!=="\u2014"||!de(e[a-1]))continue;let c=a+1;if(de(e[c])){for(;c<t&&de(e[c]);)c++;ti(e[c])&&(r[a]=a)}}let s=new Array(t+1);s[0]=0;for(let a=0;a<t;a++)s[a+1]=s[a]+(jn(e[a])?1:0);let o=(a,c)=>s[c]===s[a],i=a=>{let c=a+1;for(;de(e[c]);)c++;let p=c;for(;p<t&&ti(e[p]);)p++;return e.slice(c,p)};for(let a=e.indexOf("**task-");a!==-1;a=e.indexOf("**task-",a+1)){let c=a+7;for(;c<t&&/[a-z0-9]/.test(e[c]);)c++;if(c===a+7||e[c]!=="*"||e[c+1]!=="*")continue;let p=c+2,d=p;for(;d<t&&de(e[d]);)d++;if(d!==p){if(d<t&&d+2<=t){let g=r[d+2]??-1;if(g!==-1){let m=Math.max(d+1,n[g]);if(o(d,m))return{id:e.slice(a+2,c),title:e.slice(d,m),status:i(g)}}}if(d<t&&r[d]===d){for(let g=d-2;g>=p+1;g--)if(!jn(e[g]))return{id:e.slice(a+2,c),title:e[g],status:i(d)}}}}return null}function rh(e){let t=(i,a)=>i.slice(a,a+6).toLowerCase()==="error:",n=0;for(;;){let i=n;for(;i<e.length&&de(e[i]);)i++;if(!t(e,i))break;for(i+=6;i<e.length&&de(e[i]);)i++;n=i}let r=e.slice(n),s="",o=0;for(;o<r.length;){if(t(r,o)&&(o===0||!ti(r[o-1]))){let i=o,a=0;for(;t(r,i);){for(i+=6;i<r.length&&de(r[i]);)i++;a++}if(a>=2){o=i;continue}}s+=r[o],o++}return s}function sh(e,t){let n=t?"![":"[",r="",s=0,o=-2,i=-2;for(let a=e.indexOf(n);a!==-1;){let c=a+n.length;if(o<c&&(o=e.indexOf("]",c)),o===-1)break;let p=o;if(e[p+1]!=="("){a=e.indexOf(n,p+1);continue}if(i<p+2&&(i=e.indexOf(")",p+2)),i===-1)break;r+=e.slice(s,a)+(t?" ":e.slice(c,p)),s=i+1,a=e.indexOf(n,s)}return r+e.slice(s)}function oh(e){return sh(e,!0)}function ih(e){return sh(e,!1)}function Qw(e,t){let n=e.slice(t,t+8).toLowerCase();return n.startsWith("http://")||n.startsWith("https://")}function ah(e,t){let n=ht(e),r=ht(t),s=e.length,o=i=>{let a=i;for(;a<s&&de(e[a]);)a++;return a};for(let i=n.indexOf(r);i!==-1;i=n.indexOf(r,i+1)){let a=o(i+r.length);if(e[a]!==":")continue;let c=o(a+1);for(let p=c;p<s;){if(!de(e[p])){p++;continue}let d=o(p);if(Qw(e,d))return e.slice(c,p);p=d}return e.slice(c)}return null}var Xw=new Set(["read","glob","grep","list"]);function ee(e){return e.replace(/^oc-/,"").replace(/-/g,"_")}function NN(e){return Xw.has(pe(e))}function qN(e){let t=0,n=0,r=0;for(let s of e){let o=pe(s.tool);o==="read"?t++:o==="glob"||o==="grep"?n++:o==="list"&&r++}return{read:t,search:n,list:r}}function si(e){if(!e)return"";let t=Ne(e.replace(/\\/g,"/")),n=t.lastIndexOf("/");return n>=0?t.slice(n+1):t}function os(e,t=60){if(!e)return"";let n=e.replace(/\s+/g," ").trim();return n.length>t?`${n.slice(0,t)}\u2026`:n}function oi(e){let n=(e.state??{}).input??{};switch(ee(e.tool)){case"read":case"edit":case"write":case"morph_edit":{let o=n.filePath??n.file_path??n.path;return o?si(String(o)):""}case"glob":return n.pattern?String(n.pattern):"";case"grep":{let o=n.pattern??n.query,i=n.path??n.include;return o&&i?`"${os(String(o),40)}" in ${si(String(i))}`:o?`"${os(String(o),60)}"`:""}case"list":return n.path?si(String(n.path)):"";case"bash":return os(String(n.command??""),80);default:break}let s=["description","query","url","filePath","file_path","path","pattern","name","prompt"];for(let o of s){let i=n[o];if(typeof i=="string"&&i.length>0)return os(o==="query"&&ss(i)||i,60)}return""}var Zw={read:"Read",search:"Search",list:"List",shell:"Shell",edit:"Edit",write:"Write",fetch:"Fetch",webSearch:"Web Search",scrape:"Scrape",applyPatch:"Apply Patch",task:"Task",worker:"Worker",workspace:"Workspace"};function GN(e,t={}){let n=Fe(e)?Be(e):e,r={...Zw,...t},s=ee(n.tool),o=oi(n);switch(s){case"read":return{title:r.read,subtitle:o};case"glob":case"grep":return{title:r.search,subtitle:o};case"list":return{title:r.list,subtitle:o};case"bash":return{title:r.shell,subtitle:o};case"edit":case"morph_edit":return{title:r.edit,subtitle:o};case"write":return{title:r.write,subtitle:o};case"webfetch":case"web_fetch":return{title:r.fetch,subtitle:o};case"websearch":case"web_search":return{title:r.webSearch,subtitle:o};case"scrape":case"scrape_webpage":return{title:r.scrape,subtitle:o};case"apply_patch":return{title:r.applyPatch,subtitle:o};case"task":return{title:r.task,subtitle:o};case"session_spawn":case"session_start_background":return{title:r.worker,subtitle:o};case"project_select":case"project_list":return{title:r.workspace,subtitle:o};default:return{title:s.replace(/_/g," ").replace(/\b\w/g,a=>a.toUpperCase()),subtitle:o}}}function qe(e){return e.type==="text"}function Ge(e){return e.type==="reasoning"}function ie(e){return e.type==="tool"}function lh(e){return e.type==="file"}function YN(e){return e.type==="agent"}function JN(e){return e.type==="compaction"}function QN(e){return e.type==="snapshot"}function XN(e){return e.type==="patch"}function ZN(e){return e.type==="step-start"||e.type==="step-finish"}function eq(e){if(qe(e)||Ge(e))return e.text}function tq(e){if(!lh(e))return!1;let t=e.mime;return t.startsWith("image/")||t==="application/pdf"}function nq(e){let t=[],n=[];for(let r of e)lh(r)?t.push(r):n.push(r);return{attachments:t,stickyParts:n}}function rq(e,t){let n=[];return e?.tool&&n.push(e.tool),t?.tool&&n.push(t.tool),n}function sq(e,t,n){return n.some(r=>r.messageID===t&&r.callID===e.callID)}var eA=new Set(["todoread","context_info"]);function tA(e){return!eA.has(Fe(e)?e.name:e.tool)}var nA=new Set(["task","agent_spawn","agent_message","agent_task","agent_task_update","agent_task_message","agent_task_start","task_create","task_start","task_update","task_message"]);function uh(e){let t=Fe(e)?Be(e):e,n=t.tool||"";if(n.startsWith("oc-"))return;let r=pe(n);if(r==="task"||r==="delegate"){let s=t.state?.metadata?.sessionId;if(typeof s=="string"&&s)return s;if(r==="task"&&t.state?.status==="error")return t.state.error?.match(/\btask_id:\s*(ses_[A-Za-z0-9]+)/)?.[1]}return rA(n,t.state)}function rA(e,t){let n=ee(e);if(nA.has(n)){let r=t?.title?.match(/\bses_[a-zA-Z0-9]+/);return r?r[0]:t?.output?.match(/\bses_[a-zA-Z0-9]+/)?.[0]}if(n==="session_spawn"||n==="session_start_background")return t?.output?.match(/\*?\*?Session:?\*?\*?\s*(ses_[a-zA-Z0-9]+)/)?.[1]}function oq(e){if(e)for(let t=e.length-1;t>=0;t--){let n=e[t]?.info;if(n?.role==="assistant"&&n.error)return he(n.error)}}function iq(e){let t=[];for(let n of e)if(n.info.role==="assistant")for(let r of n.parts)ie(r)&&tA(r)&&t.push(r);return t}function aq(e,t={}){switch(ee(e)){case"webfetch":return{icon:"globe",title:"Web Fetch",subtitle:t.url};case"websearch":case"web_search":return{icon:"search",title:"Web Search",subtitle:t.query};case"scrape_webpage":return{icon:"globe",title:"Scrape",subtitle:t.urls?.split?.(",")[0]};case"image_search":return{icon:"image",title:"Image Search",subtitle:t.query};case"image_gen":return{icon:"image",title:"Image Gen",subtitle:t.prompt?.slice?.(0,40)};case"video_gen":return{icon:"cpu",title:"Video Gen",subtitle:t.prompt?.slice?.(0,40)};case"presentation_gen":{let n=t.action||"";return{icon:"presentation",title:{create_slide:"Create Slide",list_slides:"List Slides",preview:"Preview",export_pdf:"Export PDF",export_pptx:"Export PPTX"}[n]||"Presentation",subtitle:t.slide_title||t.presentation_name}}case"show":case"show_user":return{icon:"globe",title:"Output",subtitle:t.title||t.description};case"task":return{icon:"square-kanban",title:`Agent (${t.subagent_type||"task"})`,subtitle:aA(t)};case"session_spawn":case"session_start_background":return{icon:"square-kanban",title:`Worker (${t.agent||"BeeuniWorker"})`,subtitle:t.description||t.prompt?.slice(0,60)};case"apply_patch":return{icon:"file-pen",title:"Patch",subtitle:t.files?.length?`${t.files.length} file${t.files.length>1?"s":""}`:void 0};case"todoread":return{icon:"check-square",title:"Todos (read)"};case"prune":return{icon:"scissors",title:"DCP Prune",subtitle:t.reason};case"distill":return{icon:"scissors",title:"DCP Distill"};case"compress":return{icon:"scissors",title:"DCP Compress",subtitle:t.topic};case"context_info":return{icon:"scissors",title:"Context Info"};case"session_read":return{icon:"glasses",title:`Session Read (${t.mode||"summary"})`,subtitle:t.session_id?.slice(-12)};case"session_search":return{icon:"search",title:"Session Search",subtitle:t.query};case"session_message":return{icon:"message-circle",title:"Message \u2192 Session",subtitle:t.session_id?.slice(-12)};case"session_lineage":return{icon:"list-tree",title:"Session Lineage",subtitle:t.session_id?.slice(-12)};case"session_list_background":case"session_list_spawned":return{icon:"layers",title:"Background Sessions",subtitle:t.project||"all"};case"session_stats":return{icon:"layers",title:"Session Stats",subtitle:t.session_id?.slice(-12)||"current"};case"session_list":return{icon:"list",title:"Session List",subtitle:t.search};case"session_get":return{icon:"book-open",title:"Session Get",subtitle:t.session_id?.slice(-12)};case"session_context":return{icon:"book-open",title:"Session Context",subtitle:t.session_id?.slice(-12)};case"project_delete":return{icon:"trash-2",title:"Workspace Delete Disabled",subtitle:t.project};case"project_list":return{icon:"folder",title:"Projects"};case"project_get":case"project_update":return{icon:"folder",title:"Project",subtitle:t.name||t.project};case"project_select":return{icon:"folder",title:"Project Select",subtitle:t.project};case"project_create":return{icon:"folder-plus",title:"Project Create",subtitle:t.name};case"triggers":case"trigger_create":return{icon:"clock",title:"Create Trigger",subtitle:t.name};case"trigger_list":return{icon:"clock",title:"List Triggers"};case"trigger_get":return{icon:"clock",title:"Trigger Details",subtitle:t.name||t.id};case"trigger_delete":return{icon:"clock",title:"Delete Trigger",subtitle:t.name||t.id};case"trigger_update":return{icon:"clock",title:"Update Trigger",subtitle:t.name||t.id};case"trigger_test":return{icon:"clock",title:"Test Trigger",subtitle:t.name||t.id};case"trigger_pause":return{icon:"clock",title:"Pause Trigger",subtitle:t.name||t.id};case"trigger_resume":return{icon:"clock",title:"Resume Trigger",subtitle:t.name||t.id};case"agent_spawn":return{icon:"cpu",title:`Agent (${t.agent_type||"worker"})`,subtitle:t.description};case"agent_message":return{icon:"message-circle",title:"Agent Message",subtitle:t.agent_id};case"agent_stop":return{icon:"ban",title:"Agent Stop",subtitle:t.agent_id};case"agent_status":return{icon:"layers",title:"Agent Status"};case"agent_task":return{icon:"check-square",title:"Create Task",subtitle:t.title};case"agent_task_update":return{icon:"check-square",title:"Update Task",subtitle:t.task_id};case"agent_task_list":return{icon:"check-square",title:"List Tasks"};case"agent_task_get":return{icon:"check-square",title:"Task Details",subtitle:t.task_id};case"task_create":return{icon:"plus",title:"Create Task",subtitle:t.title};case"task_list":return{icon:"list",title:"Tasks",subtitle:t.status||"all"};case"task_update":return{icon:"refresh-cw",title:"Update Task",subtitle:t.id};case"task_done":return{icon:"check-circle",title:"Task Done",subtitle:t.id};case"task_delete":return{icon:"trash-2",title:"Delete Task",subtitle:t.id};case"pty_spawn":return{icon:"terminal",title:"Spawn",subtitle:t.title||t.command};case"pty_read":return{icon:"terminal",title:"Terminal Output",subtitle:t.id};case"pty_write":case"pty_input":return{icon:"terminal",title:"Terminal Input",subtitle:t.id};case"pty_kill":return{icon:"terminal",title:"Kill Process",subtitle:t.id};default:return sA(e,t)}}function sA(e,t){switch(pe(e)){case"read":return{icon:"glasses",title:"Read",subtitle:oA(Ze(t))};case"list":return{icon:"list",title:"List",subtitle:iA(t.path)};case"glob":return{icon:"search",title:"Glob",subtitle:t.pattern};case"grep":return{icon:"search",title:"Grep",subtitle:t.pattern};case"bash":return{icon:"terminal",title:"Shell",subtitle:t.description};case"edit":return{icon:"file-pen",title:"Edit",subtitle:ch(Ze(t))};case"write":return{icon:"file-pen",title:"Write",subtitle:ch(Ze(t))};case"todowrite":return{icon:"check-square",title:"Todos"};case"question":return{icon:"message-circle",title:"Questions"};default:return{icon:"cpu",title:e}}}function oA(e){if(!e)return;let t=e.split("/");return t[t.length-1]||e}function ch(e){if(!e)return;let t=e.split("/"),n=t[t.length-1]||e;if(t.length<=1)return n;let r=t[t.length-2];return r?`${n} /${r}`:n}function iA(e){if(!e)return;let t=e.lastIndexOf("/");if(!(t<0))return e.slice(0,t)||"/"}function cq(e,t){if(!t)return e;if(e.startsWith(t)){let n=e.slice(t.length);return n.startsWith("/")?n.slice(1):n}return e}function Ln(e,t=120){if(typeof e!="string")return"";let n=e.split(`
|
|
78
|
+
`).map(r=>r.trim()).find(Boolean);return n?n.length>t?`${n.slice(0,t).trim()}\u2026`:n:""}function aA(e){let t=Ln(e.description);if(t)return t;let n=Ln(e.title,80);if(n)return n;let r=Ln(e.message);if(r)return r;let s=Ln(e.prompt);if(s)return s;let o=Ln(e.agent_id,40);return o?`Agent ${o}`:"Worker task"}function lq(e,t){return!e||!t?[]:(e[t]??[]).filter(r=>r.severity===1).slice(0,3)}function uq(e,t){return e.find(n=>n.tool?.callID===t)}function pq(e,t){return e.find(n=>n.tool?.callID===t)}var cA=/\x1B\[[\d;]*[A-Za-z]|\x1B\][^\x07]{0,512}\x07|\x1B[()#][A-Z0-9]|\x1B\[?[\d;]*[hl]|\x1B[>=<]|\x1B\[[?]?\d*[A-Z]|\x1B\[\d*[JKHG]|\x1B\[\d*;\d*[Hf]|\x1b\[[0-9;]*m/g;function dq(e){return e?e.replace(cA,""):""}var lA={bash:"Shell",pty_spawn:"Spawn Terminal",pty_read:"Terminal Output",pty_write:"Terminal Input",pty_input:"Terminal Input",pty_kill:"Kill Process",read:"Read File",list:"List Directory",ls:"List Directory",write:"Write File",edit:"Edit File",multiedit:"Edit File",morph_edit:"Edit File",apply_patch:"Apply Patch",patch:"Apply Patch",grep:"Search Code",glob:"Find Files",image_search:"Image Search",session_search:"Search Sessions",webfetch:"Fetch Page",scrape_webpage:"Scrape Page",websearch:"Web Search",web_search:"Web Search",image_gen:"Generate Image",video_gen:"Generate Video",task:"Delegate to Agent",todowrite:"Plan Tasks",todoread:"Read Plan",question:"Ask Question",presentation_gen:"Presentation",show:"Show Output",show_user:"Show Output",prune:"Prune Context",distill:"Distill Context",compress:"Compress Context",context_info:"Context Info"},uA={read:"files",list:"files",glob:"search",grep:"search",write:"edit",edit:"edit",apply_patch:"edit",bash:"shell",pty:"shell",web_search:"web",webfetch:"web",media:"web",show:"task",task:"task",delegate:"task",sessions:"task",todowrite:"task",question:"task",automations:"task",projects:"task",memory:"other",connectors:"other",skill:"other",context:"other",retired:"other",other:"other"};function pA(e){return e.replace(/^oc[-_]/,"")}function ph(e){return pA(e).replace(/-/g,"_")}function dh(e){return ph(e).split(/[_\s]+/).filter(Boolean).map(n=>n.charAt(0).toUpperCase()+n.slice(1)).join(" ")}function ii(e){return{label:lA[ph(e)]??dh(e),category:uA[pe(e)]}}var dA=256*1024;function gA(e){switch(e.status){case"pending":return"pending";case"running":return"running";case"completed":return"done";case"error":return"error";default:return e}}function mA(e){if(e===void 0)return{};if(e.length>dA)return{outputText:e};try{return{outputParsed:JSON.parse(e),outputText:e}}catch{return{outputText:e}}}function fA(e){if(typeof e!="object"||e===null||Array.isArray(e))return;let t=e,n=t.success===!1,r=t.error,s=typeof r=="string"&&r.length>0||typeof r=="object"&&r!==null;if(!(!n&&!s))return s?he(r):typeof t.message=="string"&&t.message?t.message:"Tool reported failure"}var ae=e=>typeof e=="string"?e:void 0,is=e=>typeof e=="number"?e:void 0,as=e=>e&&typeof e=="object"&&!Array.isArray(e)?e:void 0;function ai(e){return Object.fromEntries(Object.entries(e).filter(([,t])=>t!==void 0))}var yA=new Set(["add","update","delete","move"]);function hA(e,t,n){if(e==="apply_patch"){let c=(Array.isArray(n.files)?n.files:[]).flatMap(p=>{let d=as(p),g=d&&(ae(d.relativePath)||ae(d.filePath));if(!d||!g)return[];let m=ae(d.type);return[ai({path:g,type:m&&yA.has(m)?m:void 0,before:ae(d.before),after:ae(d.after),patch:ae(d.patch)??ae(d.diff),additions:is(d.additions),deletions:is(d.deletions),movePath:ae(d.movePath)})]});return c.length?c:void 0}let r=Ze(t);if(!r)return;if(e==="read")return[{path:r}];if(e==="write")return[ai({path:r,after:ae(t.content)})];if(e!=="edit")return;let s=as(n.filediff),o=s?void 0:ae(n.patch),i=o?bA(o):void 0;return[ai({path:r,before:ae(s?.before)??ae(t.oldString),after:ae(s?.after)??ae(t.newString),patch:o,additions:is(s?.additions)??i?.additions,deletions:is(s?.deletions)??i?.deletions})]}function bA(e){let t=0,n=0;for(let r of e.split(`
|
|
79
|
+
`))r.startsWith("+")&&!r.startsWith("+++")?t++:r.startsWith("-")&&!r.startsWith("---")&&n++;return{additions:t,deletions:n}}function _A(e){let t=e.answers;if(Array.isArray(t))return t.map(n=>Array.isArray(n)?n.filter(r=>typeof r=="string"):[])}function gh(e,t){let n="title"in t?t.title:void 0,r=t.status==="completed"?t.output:void 0,{outputParsed:s,outputText:o}=mA(r),i=gA(t),a=t.status==="error"?t.error:void 0;if(i==="done"){let m=fA(s);m&&(i="error",a=m)}let c=pe(e),p=t.input??{},d="metadata"in t&&as(t.metadata)||{},g=as(d.diagnostics);return{name:e,kind:c,title:n||ii(e).label,status:i,input:t.input,output:r,outputParsed:s,outputText:o,error:a,files:hA(c,p,d),diff:ae(d.patch)??ae(d.diff),diagnostics:g,answers:c==="question"?_A(d):void 0,childSessionId:uh({tool:e,state:t})}}function Sq(e){let t=Fe(e)?Be(e):e;return gh(t.tool,t.state)}function PA(e){return{kind:"text",id:e.id,text:e.text,synthetic:!!e.synthetic}}function SA(e){return{kind:"reasoning",id:e.id,text:e.text}}function xA(e){return{kind:"tool",id:e.id,tool:gh(e.tool,e.state)}}function wA(e){let t=e.mime;return{kind:"file",id:e.id,filename:e.filename,mime:t,url:e.url,isImage:t.startsWith("image/"),isPdf:t==="application/pdf"}}function AA(e){return{kind:"subtask",id:e.id,description:e.description,agent:e.agent,prompt:e.prompt,model:e.model}}function vA(e){return{kind:"patch",id:e.id,hash:e.hash,files:e.files,fileCount:e.files.length}}function kA(e){return{kind:"snapshot",id:e.id,snapshot:e.snapshot}}function RA(e){return{kind:"agent",id:e.id,name:e.name}}function CA(e){return{kind:"retry",id:e.id,attempt:e.attempt,message:he(e.error),createdAt:e.time.created}}function IA(e){return{kind:"compaction",id:e.id,auto:e.auto,overflow:!!e.overflow,tailStartId:e.tail_start_id}}function TA(e){return{kind:"step",id:e.id,phase:"start",snapshot:e.snapshot}}function EA(e){return{kind:"step",id:e.id,phase:"finish",snapshot:e.snapshot,reason:e.reason,cost:e.cost,tokens:e.tokens}}function mh(e){switch(e.type){case"text":return PA(e);case"reasoning":return SA(e);case"tool":return xA(e);case"file":return wA(e);case"subtask":return AA(e);case"patch":return vA(e);case"snapshot":return kA(e);case"agent":return RA(e);case"retry":return CA(e);case"compaction":return IA(e);case"step-start":return TA(e);case"step-finish":return EA(e);default:return{kind:"unknown",raw:e}}}function MA(e){if(!e)return;let t=typeof e=="object"&&"name"in e&&typeof e.name=="string"?e.name:"Error",n=we(e);return{name:t,message:n?.message||he(e),provider:n?.provider,code:n?.code,suggestion:n?.suggestion,upstreamStatus:n?.upstreamStatus,requestId:n?.requestId,attemptFailures:n?.attemptFailures}}function OA(e){switch(e.kind){case"text":case"reasoning":return e.text.trim().length>0;case"step":return!1;default:return!0}}function DA(e){let t=e.parts.map(mh),n=e.info.role==="assistant"?e.info.error:void 0,r=MA(n),s=!r&&!t.some(OA);return{parts:t,error:r,isEmpty:s}}var ci=Je+BigInt(1),fh=ci/BigInt(2);function cs(e){return BigInt(Math.trunc(e))*bn}function li(e,t){let r=t-(t&Je)+e;return r-t>fh?r-=ci:t-r>fh&&(r+=ci),r}function yh(e,t){let n=Ut(e.info.id)??BigInt(0),r=e.info.time?.created;if(typeof r!="number")return li(n,t);let s=cs(r),o=li(n,s);return(o>s?o-s:s-o)<=gt?o:s}function hh(e){return Ut(e)===null?1:0}function bh(e,t){return e<t?-1:e>t?1:0}function Cq(e,t){return _h(e,t,cs(Date.now()))}function jA(e){let t=null;for(let n of e){let r=n.info.time?.created;typeof r=="number"&&(t===null||r>t)&&(t=r)}return cs(t??Date.now())}function _h(e,t,n){let r=hh(e.info.id),s=hh(t.info.id);if(r!==s)return r-s;if(r===0){let a=yh(e,n),c=yh(t,n);return a!==c?a<c?-1:1:bh(e.info.id,t.info.id)}let o=typeof e.info.time?.created=="number"?e.info.time.created:null,i=typeof t.info.time?.created=="number"?t.info.time.created:null;return o===null&&i===null?0:o===null?1:i===null?-1:o!==i?o<i?-1:1:bh(e.info.id,t.info.id)}function Iq(e,t){let n=new Map([...t?.pendingMessageIds??[]].map((d,g)=>[d,g])),r=jA(e),s=[...e].sort((d,g)=>{let m=n.get(d.info.id),y=n.get(g.info.id);return m!==void 0&&y!==void 0?m-y:m!==void 0?1:y!==void 0?-1:_h(d,g,r)}),o=[],i=new Map;for(let d of s)if(d.info.role==="user"){if(i.has(d.info.id))continue;let g={userMessage:d,assistantMessages:[]};o.push(g),i.set(d.info.id,g)}let a=null,c=[],p=[];for(let d of s){if(d.info.role==="user"){a=i.get(d.info.id)??null;continue}if(d.info.role!=="assistant")continue;let g=d.info,m=g.tokens;if(!(!g.error&&d.parts.length===0&&m?.input===0&&m.output===0&&m.reasoning===0)){if(g.parentID){let y=i.get(g.parentID);if(y){y.assistantMessages.push(d);continue}}if(a){a.assistantMessages.push(d);continue}if(g.parentID){let y=c[c.length-1];y&&y.userMessage.info.id===g.parentID?y.assistantMessages.push(d):c.push({userMessage:UA(g.parentID,d),assistantMessages:[d],partial:!0});continue}p.push(d)}}if(p.length>0){let d=o[0]??c[0];if(d)d.assistantMessages.unshift(...p);else{let[g,...m]=p;o.push({userMessage:g,assistantMessages:m})}}return c.length>0?[...c,...o]:o}var Bn=new Map,$A=256;function UA(e,t){let n=t.info,r=n.time?.created,s=`${n.sessionID??""}|${e}|${r??""}`,o=Bn.get(s);if(o)return o;let i={info:{id:e,role:"user",...n.sessionID?{sessionID:n.sessionID}:{},...typeof r=="number"?{time:{created:r}}:{}},parts:[]};if(Bn.size>=$A){let a=Bn.keys().next().value;a!==void 0&&Bn.delete(a)}return Bn.set(s,i),i}function Tq(e){let t=[];for(let n of e.assistantMessages)for(let r of n.parts)t.push({part:r,message:n});return t}function Eq(e){for(let t=e.length-1;t>=0;t--){let n=e[t].part;if(qe(n)&&n.text?.trim())return n}}function Mq(e){return e.some(({part:t})=>t.type==="tool"||t.type==="compaction"||t.type==="snapshot"||t.type==="patch")}function Oq(e,t,n){if(n)return[];let r=[];for(let s of e.assistantMessages)for(let o of s.parts){if(!ie(o))continue;let i=o,a=i.state?.metadata?.answers;i.tool==="question"&&(a?.length??0)>0&&r.push({part:o,message:s})}return r}function Dq(e){let t=new Map;for(let n of e){if(!n.parentID)continue;let r=t.get(n.parentID);r?r.push(n.id):t.set(n.parentID,[n.id])}return t}function jq(e){let t=e-6e4;return(n,r)=>{let s=n.time.updated??n.time.created,o=r.time.updated??r.time.created,i=s>t,a=o>t;return i&&a?n.id<r.id?-1:n.id>r.id?1:0:i&&!a?-1:!i&&a?1:o-s}}function LA(e,t){let n=e.get(t);if(!n||n.length===0)return[];let r=[];for(let s of n)r.push(s),r.push(...LA(e,s));return r}function BA(e){if(!e||typeof e!="object")return!1;let t=e.data;return!!t&&typeof t=="object"&&t.isRetryable===!0}function Uq(e){if(!e?.length)return!1;for(let t=e.length-1;t>=0;t--){let n=e[t].info;if(n.role==="assistant")return!n.time?.completed&&BA(n.error)}return!1}function ls(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Sh(e){let t=e.trim();return t.length>500?!1:!!(/^Error:\s/i.test(t)||/^([\w._-]+Error|[\w._-]+Exception):\s/i.test(t)||/Traceback \(most recent call last\)/i.test(t)||/^\s*\[\s*\{[\s\S]*"message"\s*:/.test(t))}function Nq(e){return!!e&&(Sh(e)||WA(e)!==null)}function xh(e){let t=Fe(e)?Be(e):e,n=Ph.get(t);if(n&&n.state===t.state)return n.outcome;let r=FA(t);return Ph.set(t,{state:t.state,outcome:r}),r}var Ph=new WeakMap;function FA(e){let t=e.state;if(t.status==="error")return"failed";if(t.status!=="completed")return"ok";let n=typeof t.output=="string"?t.output.trim():"";if(!n)return"ok";if(Sh(n))return"failed";let r=NA(n);return r===void 0?"ok":qA(r)?"failed":GA(r)}function NA(e){try{return JSON.parse(e)}catch{return}}function qA(e){return ls(e)&&e.success===!1&&typeof e.error=="string"}function GA(e){let t=ls(e)?e.results:void 0;if(!Array.isArray(t)||t.length===0)return"ok";let n=t.filter(r=>r!==null&&typeof r=="object"&&r.success===!1).length;return n===0?"ok":n===t.length?"failed":"partial"}function WA(e){let t=e.trim();if(!t)return null;let n;try{n=JSON.parse(t)}catch{return null}if(!ls(n)||n.success!==!1||typeof n.error!="string")return null;let r={errorSummary:n.error.trim(),hint:typeof n.hint=="string"?n.hint.trim():void 0},s=Un(r.errorSummary);if(s===null)return r;try{let o=JSON.parse(s);typeof o.message=="string"&&o.message.trim()&&(r.nestedMessage=o.message.trim()),typeof o.status=="number"&&(r.status=o.status),typeof o.error=="boolean"&&(r.nestedError=o.error)}catch{}return r}function qq(e){return rh(e).replace(/\s+/g," ").trim()||e.trim()}function Gq(e){let t=e.trim();if(!t)return null;let n;try{n=JSON.parse(t)}catch{return null}if(!ls(n))return null;let r=n.success,s=n.error,o=n.hint;if(r!==!1||typeof s!="string")return null;let i=[];i.push(s.trim());let a=Un(s);if(a!==null)try{let p=JSON.parse(a).message;typeof p=="string"&&p.trim()&&i.push(`Details: ${p.trim()}`)}catch{}return typeof o=="string"&&o.trim()&&i.push(`Hint: ${o.trim()}`),i.join(`
|
|
80
|
+
|
|
81
|
+
`)}var KA=new Set(["get_mem","memory_search","mem_search","ltm_search","dcp_compress","dcp_distill","dcp_prune","prune","distill","compress","context_info"]),VA={read:{verb:"Read",running:"Reading",objectKeys:["filePath","path","file"]},write:{verb:"Wrote",running:"Writing",objectKeys:["filePath","path","file"]},edit:{verb:"Edited",running:"Editing",objectKeys:["filePath","path","file"]},apply_patch:{verb:"Edited",running:"Editing",objectKeys:["filePath","path"]},bash:{verb:"Ran",running:"Running",objectKeys:["command"]},glob:{verb:"Searched",running:"Searching",objectKeys:["pattern"]},grep:{verb:"Searched",running:"Searching",objectKeys:["pattern"]},list:{verb:"Listed",running:"Listing",objectKeys:["path"]},web_search:{verb:"Searched",running:"Searching",objectKeys:["query"]},websearch:{verb:"Searched",running:"Searching",objectKeys:["query"]},webfetch:{verb:"Fetched",running:"Fetching",objectKeys:["url"]},web_fetch:{verb:"Fetched",running:"Fetching",objectKeys:["url"]},scrape:{verb:"Scraped",running:"Scraping",objectKeys:["url"]},scrape_webpage:{verb:"Scraped",running:"Scraping",objectKeys:["url"]},task:{verb:"Delegated",running:"Delegating",objectKeys:["description"]},memory:{verb:"Remembered",running:"Remembering"},get_mem:{verb:"Recalled",running:"Recalling"},memory_search:{verb:"Recalled",running:"Recalling",objectKeys:["query"]},mem_search:{verb:"Recalled",running:"Recalling",objectKeys:["query"]},ltm_search:{verb:"Recalled",running:"Recalling",objectKeys:["query"]},dcp_compress:{verb:"Compacted",running:"Compacting"},dcp_distill:{verb:"Distilled",running:"Distilling"},dcp_prune:{verb:"Pruned",running:"Pruning"},compress:{verb:"Compacted",running:"Compacting"},distill:{verb:"Distilled",running:"Distilling"},prune:{verb:"Pruned",running:"Pruning"},context_info:{verb:"Checked context",running:"Checking context"}};function HA(e,t){if(e==="filePath"||e==="path"||e==="file"){let n=t.split("/");return n[n.length-1]||t}return e==="query"&&ss(t)||t}function zA(e,t){if(!t||typeof e!="object"||e===null)return;let n=e;for(let r of t){let s=n[r];if(typeof s=="string"&&s.trim())return HA(r,s.trim())}}function wh(e){if(Ge(e))return{verb:"Thought",running:"Thinking",object:void 0,tier:"reasoning"};if(!ie(e))return{verb:"Used",running:"Using",object:void 0,tier:"primary"};let t=fe(e.tool),n=VA[t],r=e.state?.input;return n?{verb:n.verb,running:n.running,object:zA(r,n.objectKeys),tier:KA.has(t)?"plumbing":"primary"}:{verb:"Used",running:"Using",object:t,tier:"primary"}}function Xq(e){let t=0,n=0,r=!1,s=!1;for(let o of e){if(wh(o).tier==="plumbing"){r=!0;continue}if(Ge(o)){if(!o.text?.trim())continue;s||(s=!0,t+=1);continue}s=!1,t+=1,ie(o)&&xh(o)!=="ok"&&(n+=1)}return{total:t,failed:n,completed:t-n,hasPlumbing:r}}function ui(e){return`${e} ${e===1?"step":"steps"}`}function Zq(e,t){let{total:n,failed:r,completed:s,hasPlumbing:o}=e;return t?n===0?"Working":`Working \xB7 ${ui(n)}`:n===0?o?"Housekeeping":"Worked":r===0?`Completed ${ui(n)}`:s===0?`${ui(n)} failed`:`Completed ${s} of ${n} steps \xB7 ${r} failed`}function tG(e){let t=!1,n=!1,r=!1,s=null,o=p=>{let d=p;return d?.summary!==!0?!1:(t=!0,!d.time?.completed&&!d.error&&(r=!0),s==null&&d.error!=null&&(s=d.error),!0)},i=p=>{for(let d of p??[])d.type==="compaction"?(t=!0,n=!0):d.type==="text"&&d.text?.trim()&&(n=!0)},c=(e.userMessage?.parts??[]).some(p=>p.type==="compaction");c&&(t=!0),e.userMessage&&o(e.userMessage.info)&&i(e.userMessage.parts);for(let p of e.assistantMessages)o(p.info),i(p.parts);return c&&e.assistantMessages.length===0&&(r=!0),{isCompaction:t,hasContent:n,inFlight:r,error:s}}function sG(e){let t=(e??"").trimStart();return t.startsWith("{")||t.startsWith("[")}function oG(e,t=2e3){let n=(e??"").trim();try{let r=JSON.parse(n);if(typeof r=="string")try{r=JSON.parse(r)}catch{}r&&typeof r=="object"&&(n=JSON.stringify(r,null,2))}catch{}return n.length>t?{text:n.slice(0,t).trimEnd(),truncatedChars:n.length-t}:{text:n,truncatedChars:0}}function iG(e,t=200){let n=e??"";return n=n.replace(/\\n/g," "),n=oh(n),n=ih(n),n=n.replace(/[#*_`>]+/g," "),n=n.replace(/\s+/g," ").trim(),n=n.replace(/\b(\w{2,})(?:\s+\1\b)+/gi,"$1"),n.length>t?n.slice(0,t).trimEnd()+"\u2026":n}function aG(e){let t=(e??"").trim();if(!t)return null;let n;try{if(n=JSON.parse(t),typeof n=="string")try{n=JSON.parse(n)}catch{return null}}catch{return null}if(!n||typeof n!="object"||Array.isArray(n))return null;let r=n;if(r.success!==!1||typeof r.error!="string"||!r.error.trim())return null;let s=r.error.trim(),o;for(let i=0;i<3;i++){let a=Un(s);if(a===null)break;let c;try{c=JSON.parse(a)}catch{break}if(typeof c.status=="number"&&(o=c.status),typeof c.message=="string"&&c.message.trim())s=c.message.trim();else if(typeof c.error=="string"&&c.error.trim())s=c.error.trim();else break}return{message:s,status:o}}function Fn(e){try{return JSON.parse(`"${e}"`)}catch{return e}}function pi(e,t=30){if(!e)return[];let n=[],r=new Set,s=(a,c,p)=>{!/^https?:\/\//i.test(c)||r.has(c)||n.length>=t||(r.add(c),n.push({title:a.trim()||c,url:c,snippet:p?.trim()||void 0}))},o=/"title"\s*:\s*"((?:\\.|[^"\\])*)"\s*,\s*"url"\s*:\s*"((?:\\.|[^"\\])*)"(?:\s*,\s*"(?:snippet|content|text)"\s*:\s*"((?:\\.|[^"\\])*)")?/g,i;for(;(i=o.exec(e))!==null;)if(s(Fn(i[1]),Fn(i[2]),i[3]?Fn(i[3]):void 0),n.length>=t)return n;if(n.length===0){let a=/"url"\s*:\s*"((?:\\.|[^"\\])*)"[^{}]{0,400}?"title"\s*:\s*"((?:\\.|[^"\\])*)"/g;for(;(i=a.exec(e))!==null;)if(s(Fn(i[2]),Fn(i[1])),n.length>=t)return n}return n}function Ah(e,t=!1){if(typeof e=="object"&&e!==null)return e;if(typeof e!="string")return null;try{let n=JSON.parse(e);if(typeof n=="string")try{n=JSON.parse(n)}catch{}return typeof n=="object"?n:null}catch{let n=t&&e.trim().replace(/^\uFEFF/,"");if(n&&n!==e)try{return JSON.parse(n)}catch{}return null}}function us(e){return e.filter(t=>t.title&&t.url).map(t=>({title:t.title,url:t.url,snippet:t.snippet||t.content||t.text||void 0,author:t.author||void 0,publishedDate:t.publishedDate||t.published_date||void 0}))}function vh(e){if(!e)return[];let t=Ah(e,!0);if(t?.success===!1)return[];if(Array.isArray(t?.results)&&t.results.length>0){let n=t.results[0];if(n&&typeof n.query=="string"){let r=[];for(let s of t.results)typeof s.query=="string"&&r.push({query:s.query,answer:s.answer||void 0,sources:Array.isArray(s.results)?us(s.results):[]});if(r.length>0)return r}else if(n&&(n.title||n.url)){let r=us(t.results);if(r.length>0)return[{query:t.query||"",answer:t.answer||void 0,sources:r}]}}if(t?.query&&typeof t.query=="string")return[{query:t.query,answer:t.answer||void 0,sources:Array.isArray(t.results)?us(t.results):[]}];if(Array.isArray(t)&&t.length>0&&t[0]&&(t[0].title||t[0].url)){let n=us(t);if(n.length>0)return[{query:"",sources:n}]}if(typeof e=="string"){let n=e.split(/(?=^Title: )/m).filter(Boolean),r=[];for(let s of n){let o=s.match(/^Title:\s*(.+)/m),i=s.match(/^URL:\s*(.+)/m),a=s.match(/^Author:\s*(.+)/m),c=s.match(/^Published Date:\s*(.+)/m),p=s.match(/^Text:\s*([\s\S]*?)$/m);o&&i&&r.push({title:o[1].trim(),url:i[1].trim(),snippet:p?.[1]?.trim()||void 0,author:a?.[1]?.trim()||void 0,publishedDate:c?.[1]?.trim()||void 0})}if(r.length>0)return[{query:"",sources:r}]}if(typeof e=="string"){let n=pi(e);if(n.length>0)return[{query:"",sources:n.map(r=>({title:r.title,url:r.url,snippet:r.snippet}))}]}return[]}function di(e){try{return new URL(e).hostname.replace("www.","")}catch{return e}}function pG(e){try{let t=new URL(e).hostname.replace(/^www\./,""),n=t.split(".");return n.length<=2?t:n.slice(-2).join(".")}catch{return di(e)}}function dG(e){try{return`https://www.google.com/s2/favicons?domain=${new URL(e).hostname.replace(/^www\./,"")}&sz=128`}catch{return null}}function gG(e){if(!e)return!1;let t=e.slice(0,600).toLowerCase();return t.includes("<!doctype html")||t.includes("<html")?!0:/<\/(body|head|div|p|span|table)>/i.test(e.slice(0,3e3))}function YA(e){let t=e.urls??e.url;if(typeof t=="string")return t.split(/[\s,]+/).map(n=>n.trim()).filter(n=>/^https?:\/\//i.test(n));if(Array.isArray(t)){let n=[];for(let r of t){if(typeof r!="string")continue;let s=r.trim();/^https?:\/\//i.test(s)&&n.push(s)}return n}return[]}function JA(e,t){if(t.length===0)return[];let n=e.replace(/^Error:\s*/i,"").trim();return t.map(r=>{let s=ah(n,r)?.trim()||n;return{url:r,success:!1,error:s}})}function mG(e,t){let n=QA(e);if(n?.results?.length)return n.results;let r=typeof e=="string"?e:"";return r.trim()?JA(r,YA(t)):[]}function QA(e){if(!e)return null;let t=Ah(e);if(!t)return null;if(t.results&&Array.isArray(t.results))return{total:t.total||t.results.length,successful:t.successful??t.results.filter(n=>n.success!==!1).length,failed:t.failed??t.results.filter(n=>n.success===!1).length,results:t.results.map(n=>({url:n.url||"",success:n.success!==!1,title:n.title||void 0,content:n.content||n.text||n.snippet||void 0,error:n.error||void 0}))};if(typeof e=="string"){let n=pi(e);if(n.length>0)return{total:n.length,successful:n.length,failed:0,results:n.map(r=>({url:r.url,success:!0,title:r.title||void 0,content:r.snippet||void 0}))}}return null}function XA(e){if(typeof e!="string"||!e.trim())return null;try{let t=new URL(e.trim());return t.protocol==="http:"||t.protocol==="https:"?t.toString():null}catch{return null}}var ZA={read:"explore",list:"explore",glob:"explore",grep:"explore",write:"edit",edit:"edit",apply_patch:"edit",bash:"run",pty:"run",web_search:"web",webfetch:"web",media:"create",show:"create",task:"delegate",delegate:"delegate",sessions:"sessions",todowrite:"plan",question:"ask",memory:"memory",connectors:"connectors",automations:"automations",projects:"projects",skill:"skills",context:"hidden",retired:"retired",other:"other"};function gi(e){return ZA[pe(e)]}function ps(e){let t=ee(e).replace(/__+/g,"/");return(t.includes("/")?t.slice(t.lastIndexOf("/")+1):t).replace(/_/g," ").trim().replace(/\b\w/g,r=>r.toUpperCase())}var ev={run:"Terminal",memory:"Memory"};function PG(e){let t=gi(e);return(t==="hidden"?void 0:ev[t])??ps(e)}function Nn(e,t,n){return e===1?t:n}function mi(e){return e.length===0?"":e.length===1?e[0]:e.length===2?`${e[0]} and ${e[1]}`:`${e.slice(0,-1).join(", ")}, and ${e[e.length-1]}`}function Ch(e){return e.length?oi(e[0]):""}function Ae(e){return(e.state??{}).input??{}}var tv={agent_spawn:"spawn",agent_task:"spawn",agent_task_create:"spawn",agent_task_start:"spawn",task:"spawn",task_create:"spawn",task_start:"spawn",session_spawn:"spawn",session_start_background:"spawn",agent_message:"message",agent_task_message:"message",task_message:"message",session_message:"message",agent_status:"status",agent_task_list:"status",agent_task_get:"status",task_list:"status",task_get:"status",agent_stop:"stop",agent_task_cancel:"stop",task_cancel:"stop",agent_task_approve:"done",task_approve:"done",task_done:"done",task_delete:"delete"};function nv(e){let t=ee(e.tool);if(t==="agent_task_update"||t==="task_update")switch(Ae(e).action||""){case"start":return"spawn";case"cancel":return"stop";case"approve":return"done";default:return"message"}return tv[t]??"message"}function kh(e){switch(e){case"create":return"create";case"update":return"update";case"delete":return"delete";case"test":return"test";case"pause":case"resume":return"control";case"list":case"get":return"read";default:return"unknown"}}function rv(e){let t=ee(e.tool);if(t==="triggers"){let r=Ae(e).action||"list";return kh(r)}let n=t.match(/^trigger_(.+)$/);return kh(n?n[1]:"list")}var sv={connector_setup:"connect",connector_get:"read",connector_list:"read",beeuni_connector_discover:"read",beeuni_connector_describe:"read",beeuni_connectors:"read",beeuni_connectors_connectors:"read",beeuni_connectors_discover:"read",beeuni_connectors_describe:"read",beeuni_connector_call:"call",beeuni_connectors_call:"call"};function ov(e){return sv[ee(e.tool)]??"read"}var iv={project_get:"open",project_list:"open",project_select:"open",project_update:"update",project_create:"create",project_delete:"delete"};function av(e){return iv[ee(e.tool)]??"open"}function Ht(e){return e.every(t=>t===e[0])}var cv={view:"read",create:"write",str_replace:"write",insert:"write",rename:"write",delete:"delete"};function lv(e){if(ee(e.tool)!=="memory")return"read";let n=Ae(e).command;return n&&cv[n]||"unknown"}var uv={generate:"Made an image",edit:"Edited an image",upscale:"Upscaled an image",remove_bg:"Removed an image background"},pv={create_slide:"Added a slide to a presentation",list_slides:"Checked a presentation's slides",list_presentations:"Checked your presentations",delete_slide:"Deleted a slide from a presentation",delete_presentation:"Deleted a presentation",validate_slide:"Checked a slide",export_pdf:"Exported a presentation to PDF",export_pptx:"Exported a presentation to PPTX",preview:"Previewed a presentation",serve:"Previewed a presentation"};function dv(e){let t=Ne(e.replace(/\\/g,"/")),n=t.lastIndexOf("/");return n>=0?t.slice(n+1):t}function gv(e){let t=Ae(e),n=typeof t.title=="string"?t.title.trim():"";if(n)return n;let r=typeof t.description=="string"?t.description.trim():"";if(r)return mv(r,60);let s=typeof t.path=="string"?t.path:"";if(s)return dv(s);let o=typeof t.url=="string"?t.url:"";if(o){let i=XA(o);return i?di(i):"a link"}return""}function mv(e,t=60){let n=e.replace(/\s+/g," ").trim();return n.length>t?n.slice(0,t-1)+"\u2026":n}function fv(e){let t=Ae(e).action;return t&&uv[t]||"Worked on an image"}function yv(e){let t=Ae(e).action;return t&&pv[t]||"Worked on a presentation"}function hv(e){return e.slice(0,e.indexOf(":"))}var bv={generate:"image:generate",edit:"image:edit",upscale:"image:upscale",remove_bg:"image:remove_bg"},_v={create_slide:"presentation:create_slide",list_slides:"presentation:list_slides",list_presentations:"presentation:list_presentations",delete_slide:"presentation:delete_slide",delete_presentation:"presentation:delete_presentation",validate_slide:"presentation:validate_slide",export_pdf:"presentation:export_pdf",export_pptx:"presentation:export_pptx",preview:"presentation:preview",serve:"presentation:preview"};function Pv(e){let t=ee(e.tool);if(t==="image_gen"){let n=Ae(e).action;return n&&bv[n]||"image:unknown"}if(t==="video_gen")return"video:create";if(t==="presentation_gen"){let n=Ae(e).action;return n&&_v[n]||"presentation:unknown"}return"shown:result"}var Sv=new Set(["create_slide","export_pdf","export_pptx"]);function SG(e){let t=ee(e.tool);if(t==="image_gen")return"image";if(t==="video_gen")return"video";if(t==="presentation_gen"){let n=Ae(e).action;return n?Sv.has(n)?"presentation":null:"presentation"}return null}var xv={"image:generate":e=>`Made ${e} images`,"image:edit":e=>`Edited ${e} images`,"image:upscale":e=>`Upscaled ${e} images`,"image:remove_bg":e=>`Removed backgrounds from ${e} images`,"image:unknown":e=>`Worked on ${e} images`,"video:create":e=>`Made ${e} videos`,"presentation:create_slide":e=>`Added ${e} slides`,"presentation:delete_slide":e=>`Deleted ${e} slides`,"presentation:delete_presentation":e=>`Deleted ${e} presentations`,"presentation:list_slides":()=>"Checked a presentation's slides","presentation:list_presentations":()=>"Checked your presentations","presentation:validate_slide":()=>"Checked slides","presentation:export_pdf":e=>`Exported ${e} presentations to PDF`,"presentation:export_pptx":e=>`Exported ${e} presentations to PPTX`,"presentation:preview":e=>`Previewed ${e} presentations`,"presentation:unknown":e=>`Worked on ${e} presentations`,"shown:result":e=>`Showed you ${e} results`},Rh={image:"image",video:"video",presentation:"presentation",shown:"result"};function wv(e){let t={image:0,video:0,presentation:0,shown:0};for(let r of e)t[hv(r)]++;let n=[];return Object.keys(t).forEach(r=>{let s=t[r];s&&n.push(`${s} ${Nn(s,Rh[r],`${Rh[r]}s`)}`)}),`Worked on ${mi(n)}`}function Ih(e,t){let n=t.length,r=Ch(t);switch(e){case"explore":{let s=t.filter(o=>ee(o.tool)==="read").length;return s===n?`Read ${n} ${Nn(n,"file","files")}`:s===0?"Looked through your files":`Looked through your files \xB7 ${s} read`}case"edit":{let s=new Set(t.map(i=>Ze(Ae(i))).filter(Boolean)).size||n,o=t.every(i=>ee(i.tool)==="write")?"Wrote":"Updated";return s===1?r?`${o} ${r}`:`${o} a file`:`${o} ${s} files`}case"run":return n===1?"Ran a command":`Ran ${n} commands`;case"web":{let s=c=>{let p=ee(c.tool);return p==="web_search"||p==="websearch"||p==="image_search"},o=t.filter(s).length;if(o===n)return`Searched the web \xB7 ${n} ${Nn(n,"query","queries")}`;if(o===0)return`Read ${n} ${Nn(n,"page","pages")}`;let i=new Set;for(let c of t)if(s(c)){let p=c.state?.output;for(let d of vh(p).flatMap(g=>g.sources))d.url&&i.add(d.url)}else{let p=c.state?.input?.url;typeof p=="string"&&p&&i.add(p)}let a=i.size||n;return`Searched and read ${a} ${Nn(a,"source","sources")}`}case"create":{if(n===1){let o=t[0],i=ee(o.tool);if(i==="image_gen")return fv(o);if(i==="video_gen")return"Made a video";if(i==="presentation_gen")return yv(o);let a=gv(o);return a?`Showed you ${a}`:"Showed you the result"}let s=t.map(Pv);return Ht(s)?xv[s[0]](n):wv(s)}case"plan":return n===1?"Planned the work":`Planned the work \xB7 ${n} steps`;case"delegate":{let s=t.map(nv);if(Ht(s))switch(s[0]){case"spawn":return n===1?"Asked a helper agent":`Worked with ${n} helper agents`;case"message":return n===1?"Sent instructions to a helper agent":`Sent instructions to ${n} helper agents`;case"status":return"Checked on a helper agent";case"stop":return n===1?"Stopped a helper agent":`Stopped ${n} helper agents`;case"done":return n===1?"A helper agent finished a task":`Helper agents finished ${n} tasks`;case"delete":return n===1?"Removed a task":`Removed ${n} tasks`}return n===1?"Worked with a helper agent":`Worked with helper agents \xB7 ${n} steps`}case"sessions":return"Checked earlier work";case"memory":{let s=t.map(lv);if(Ht(s))switch(s[0]){case"write":return n===1?"Wrote to its memory":`Wrote to its memory \xB7 ${n} updates`;case"delete":return n===1?"Deleted from its memory":`Deleted ${n} things from its memory`;case"read":return"Recalled what you told it before"}return"Worked with its memory"}case"connectors":{let s=t.map(ov);if(Ht(s))switch(s[0]){case"connect":return n===1?r?`Connected to ${r}`:"Connected a connector":`Connected ${n} connectors`;case"call":return n===1?"Used a connector":`Made ${n} connector calls`;case"read":return"Checked your connectors"}return"Worked with your connectors"}case"automations":{let s=t.map(rv);if(Ht(s))switch(s[0]){case"create":return n===1?"Set up an automation":`Set up ${n} automations`;case"update":return n===1?"Updated an automation":`Updated ${n} automations`;case"delete":return n===1?"Deleted an automation":`Deleted ${n} automations`;case"control":return n===1?"Adjusted an automation":`Adjusted ${n} automations`;case"test":return n===1?"Tested an automation":`Tested ${n} automations`;case"read":return"Checked your automations";case"unknown":return"Worked with your automations"}return"Worked with your automations"}case"projects":{let s=t.map(av);if(Ht(s))switch(s[0]){case"delete":return n===1?"Tried to delete a project \u2014 deletion isn't allowed":`Tried to delete ${n} projects \u2014 deletion isn't allowed`;case"create":return n===1?r?`Created ${r}`:"Created a project":`Created ${n} projects`;case"update":return n===1?r?`Updated ${r}`:"Updated your project":`Updated ${n} projects`;case"open":return n===1?r?`Opened ${r}`:"Opened your project":`Opened ${n} projects`}return r?`Worked in ${r}`:"Worked in your project"}case"skills":return n===1?r?`Used the ${r} skill`:"Used a skill":`Used ${n} skills`;case"ask":return"Asked you a question";case"retired":return"Used a connector that has since been removed";case"other":{if(n===1)return`Used ${ps(t[0].tool)}`;let s=Array.from(new Set(t.map(o=>ps(o.tool))));return s.length===1?`Used ${s[0]} \xB7 ${n} times`:`Used ${mi(s)}`}}}function Th(e,t){let n=Ch(t);switch(e){case"explore":return"Couldn't read your files";case"edit":{if(t.length===1){let r=ee(t[0].tool)==="write"?"write":"update";return n?`Couldn't ${r} ${n}`:`Couldn't ${r} a file`}return"Couldn't update some files"}case"run":return"A command failed";case"web":return"Couldn't finish searching the web";case"create":return"Couldn't finish making that";case"plan":return"Couldn't update the plan";case"delegate":return"A helper agent hit a problem";case"sessions":return"Couldn't check earlier work";case"memory":return"Couldn't reach its memory";case"connectors":return"Couldn't reach a connector";case"automations":return"Hit a problem with your automations";case"projects":return"Hit a problem with your project";case"skills":return"Couldn't use a skill";case"ask":return"Couldn't ask you a question";case"retired":return"Used a connector that has since been removed";case"other":{let r=t.filter(i=>i.state?.status==="error"),s=r.length?r:t,o=Array.from(new Set(s.map(i=>ps(i.tool))));return`Couldn't finish using ${mi(o)}`}}}function Av(e){return e.some(t=>t.state?.status==="running"||t.state?.status==="pending")?"running":e.some(t=>t.state?.status==="error")?"error":"done"}function vv(e){let t=Number.POSITIVE_INFINITY,n=0;for(let r of e){let s=r.state.time;typeof s?.start=="number"&&(t=Math.min(t,s.start)),typeof s?.end=="number"&&(n=Math.max(n,s.end))}if(!(!Number.isFinite(t)||n<=t))return n-t}function Eh(e,t){let n=Av(t);return{id:t[0].callID,family:e,label:n==="error"?Th(e,t):Ih(e,t),parts:t,status:n,durationMs:n==="running"?void 0:vv(t)}}function Mh(e){let t=[],n=null,r=[],s=()=>{n&&r.length&&t.push(Eh(n,r)),n=null,r=[]};for(let o of e){let i=gi(o.tool);if(i!=="hidden"&&!po(o)){if($m(o.tool)){s(),t.push(Eh(i,[o]));continue}i!==n&&(s(),n=i),r.push(o)}}return s(),t}function kv(e){let t=e.time?.end;return!(typeof t=="number"&&t>0)}function CG(e,t){let n=[],r=null,s=[],o=()=>{if(r&&r.texts.length>0){let{startedAt:a,endedAt:c}=r,p=typeof a=="number"&&typeof c=="number"&&c>a?c-a:void 0;n.push({kind:"thought",key:r.key,texts:r.texts,running:r.running,durationMs:p})}r=null},i=()=>{if(s.length!==0){for(let a of Mh(s))n.push(a.parts.length===1?{kind:"part",key:a.parts[0].id,part:a.parts[0]}:{kind:"group",key:`group-${a.parts[0].id}`,step:a});s=[]}};for(let a of e)if(t(a)!=="plumbing"){if(Ge(a)){let c=a.text?.trim();if(!c)continue;i(),r||(r={key:`thought-${a.id}`,texts:[],running:!1}),r.texts.push(c);let p=a.time;r.startedAt===void 0&&typeof p?.start=="number"&&(r.startedAt=p.start),r.endedAt=typeof p?.end=="number"&&p.end>0?p.end:void 0,r.running=kv(a);continue}if(o(),ie(a)){s.push(a);continue}i(),n.push({kind:"part",key:a.id,part:a})}o(),i();for(let a=0;a<n.length-1;a++){let c=n[a];c.kind==="thought"&&(c.running=!1)}return n}var Rv=/^(thinking|thought|considering|planning|deciding|weighing|exploring|analy[sz]ing|reasoning|working out|figuring)/i;function Cv(e){return e.replace(/```[\s\S]*?```/g," ").replace(/`([^`]*)`/g,"$1").replace(/^#{1,6}\s*/gm,"").replace(/\*\*([^*]*)\*\*/g,"$1").replace(/(^|\s)[*_]([^*_]+)[*_]/g,"$1$2").replace(/^\s*[-*+]\s+/gm,"").replace(/\s+/g," ").trim()}function IG(e){let t=e.flatMap(s=>{let o=Cv(s);return o?[o]:[]}).join(" ").trim();return t?Rv.test(t)?t:`Thinking about ${/^[A-Z][a-z]/.test(t)?t[0].toLowerCase()+t.slice(1):t}`:"Thinking"}function Iv(e){return e?.info?.time??{}}function EG(e){let t=Iv(e).created;return typeof t!="number"||!Number.isFinite(t)||t<=0?null:t}var ds=6e4,Tv=10080*ds,Oh=1440;function Dh(e){let t=new Date(Date.UTC(e.getFullYear(),e.getMonth(),e.getDate(),e.getHours(),e.getMinutes(),e.getSeconds(),e.getMilliseconds()));return t.setUTCFullYear(e.getFullYear()),e.getTime()-t.getTime()}function Ev(e,t){let n=t.getTime()-e.getTime(),r=n/ds,s=(i,a)=>`${i} ${a}${i===1?"":"s"} ago`;if(r<60)return s(Math.round(r),"minute");if(r<Oh)return s(Math.round(r/60),"hour");let o=(n-(Dh(t)-Dh(e)))/ds;return s(Math.round(o/Oh),"day")}function Uh(e){if(typeof e!="number"||!Number.isFinite(e)||e<=0)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t}var jh=new Map;function Mv(e,t){let n={...e,...t.timeZone?{timeZone:t.timeZone}:{}},r=`${t.locale??""}|${JSON.stringify(n)}`,s=jh.get(r);return s||(s=new Intl.DateTimeFormat(t.locale,n),jh.set(r,s)),s}function gs(e,t,n){return Mv(t,n).formatToParts(e).map(r=>r.type==="dayPeriod"?Ov(r.value,n):r.value).join("")}function Ov(e,t){let n=/^([ap])\.?\s?m\.?$/i.exec(e.trim());return n?`${n[1].toUpperCase()}M`:e.toLocaleUpperCase(t.locale)}function $h(e,t){return gs(e,{year:"numeric"},t)}function MG(e,t,n={}){let r=Uh(e);if(!r)return"";let s=i=>gs(r,{month:"long",day:"numeric",...i?{year:"numeric"}:{}},n);if(t===null)return s(!0);let o=Math.max(0,t-r.getTime());return o<ds?"just now":o<Tv?Ev(r,new Date(t)):s($h(r,n)!==$h(new Date(t),n))}function OG(e,t={}){let n=Uh(e);if(!n)return"";let r=gs(n,{month:"long",day:"numeric",year:"numeric"},t),s=gs(n,{hour:"numeric",minute:"2-digit"},t);return`${r} ${s}`}function UG(e,t={}){let n=[],r=[],s=()=>{r.length>0&&(n.push({kind:"burst",parts:r}),r=[])};for(let o of e)if(!Um(o)){if(qe(o)){s(),n.push({kind:"text",part:o});continue}if(ie(o)&&(Lm(o.tool)||!!t.standaloneCallIds?.has(o.callID))){s(),n.push({kind:"standalone",part:o});continue}r.push(o)}return s(),n}function Dv(e){let t=fe(e);return t==="show"||t==="show_user"}function NG(e,t={}){let n=[],r=[],s=()=>{r.length===1?n.push(r[0]):r.length>1&&n.push({kind:"show-group",parts:r.map(o=>o.part)}),r=[]};for(let o of e){if(o.kind==="standalone"&&Dv(o.part.tool)&&!t.standaloneCallIds?.has(o.part.callID)){r.push(o);continue}s(),n.push(o)}return s(),n}var jv=["title","description","path","url","content","language","aspect_ratio","attachment"];function Lh(e,t){if(!t||typeof t!="object")return null;let n=t;if(Dr(n))return null;let r={callID:e,status:"ready",type:typeof n.type=="string"?n.type:""};for(let s of jv){let o=n[s];typeof o=="string"&&o&&(r[s]=o)}return r}function $v(e){if(Array.isArray(e))return e.length>0?e:null;if(typeof e!="string"||!e.trim())return null;try{let t=JSON.parse(e);return Array.isArray(t)&&t.length>0?t:null}catch{return null}}function qG(e){let t=[];for(let n of e){let r=n.state,s=r.input??{};if(r.status==="error"){let a=typeof s.title=="string"&&s.title?s.title:void 0;t.push({callID:n.callID,status:"error",type:"error",...a?{title:a}:{},error:typeof r.error=="string"?r.error:""});continue}let o=$v(s.items),i=o?o.map(a=>Lh(n.callID,a)).filter(a=>!!a):[Lh(n.callID,s)].filter(a=>!!a);if(i.length>0){t.push(...i);continue}(r.status==="running"||r.status==="pending")&&t.push({callID:n.callID,status:"pending",type:""})}return t}function Bh(e){return!e.working||e.awaitingUser?!1:e.isRetrying?!0:!e.hasError}var Uv=e=>e.time?.completed;function VG(e){return!e.hasPendingTurns||!e.newestAssistantCompleted?!1:e.pendingDelivery||!!e.deliveringBelow||e.activeTurnId!==null&&e.activeTurnId!==e.workingTurnId}function Lv(e,t){let n=e.userMessage.info.id;return t.pendingTurnIds.has(n)||e.assistantMessages.length===0&&t.pendingPromptIds.has(n)}function HG(e){let t=e.turns.find(r=>e.deliveringPromptIds.has(r.userMessage.info.id));if(t)return t.userMessage.info.id;let n=e.turns.findIndex(r=>Lv(r,e));return n<=0?null:e.turns[n-1].userMessage.info.id}function zG(e){return e.isTurnWorking&&!e.pendingDelivery&&e.activeTurnId===e.turnId}function YG(e){if(e.confirmedActive)return!1;let{workingTurnId:t,pendingTurnIds:n}=e.resolution;return e.sessionWorking&&(t===null?n[0]:t)===e.turnId?e.inboxPrompt?.state==="waiting"||e.inboxPrompt?.state==="failed":n.includes(e.turnId)||!!e.inboxPrompt}function JG(e){return!e.lastTurnWorking||e.workingTurnId===null||e.suppressed?!1:Bh({working:!0,hasError:e.workingTurnHasError,isRetrying:e.isRetrying,awaitingUser:e.awaitingUser})}function QG(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n].userMessage.info.id;if(t(r))return e[n].assistantMessages.length===0?r:null}return null}function XG(e){let{turns:t}=e;if(t.length===0)return{workingTurnId:null,pendingTurnIds:[]};let n=-1;for(let a=t.length-1;a>=0;a--)if(t[a].assistantMessages.length>0){n=a;break}let r=t.slice(n+1).map(a=>a.userMessage.info.id),s=a=>({workingTurnId:t[a].userMessage.info.id,pendingTurnIds:t.slice(a+1).map(c=>c.userMessage.info.id)}),o=e.hintMessageId??null;if(o){if(n>=0&&t[n].userMessage.info.id===o)return s(n);let a=r.indexOf(o);if(a>=0)return s(n+1+a)}if(n>=0){let a=t[n],c=a.assistantMessages[a.assistantMessages.length-1];if(!Uv(c.info)&&!c.info.error)return s(n)}let i=e.unrunTurnIds;if(r.length>0){for(let a=t.length-1;a>n;a--)if(!i?.has(t[a].userMessage.info.id))return s(a)}return n<0?{workingTurnId:null,pendingTurnIds:r}:s(n)}function n1(e,t){for(let n=t.length-1;n>=0;n--)if(t[n].info.role==="user")return t[n].info.id===e;return!1}function r1(e,t){return!t||!e?!1:e.type!=="idle"}function s1(e,t){return!e&&!!t}function o1(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return we(n.error)?.message||he(n.error)}}function i1(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return Ty(n.error)}}function a1(e){for(let t of e.assistantMessages){let n=t.info;if(n.error)return we(n.error)}}function Fh(e){if(e){if(ie(e))switch(e.tool){case"task":case"session_spawn":case"session_start_background":case"session-spawn":case"session-start-background":return"Handing off to an agent...";case"agent_spawn":case"agent-spawn":case"agent_task":case"agent-task":return"Handing off to an agent...";case"agent_task_update":case"agent-task-update":case"task_update":case"task-update":return"Updating progress...";case"agent_message":case"agent-message":case"agent_task_message":case"agent-task-message":case"task_message":case"task-message":return"Checking in with an agent...";case"task_create":case"task-create":case"task_start":case"task-start":return"Starting a new task...";case"task_list":case"task-list":return"Reviewing the task list...";case"task_done":case"task-done":return"Updating progress...";case"todowrite":case"todoread":return"Planning...";case"read":return"Reading files...";case"list":case"grep":case"glob":return"Searching files...";case"webfetch":case"scrape-webpage":return"Reading a web page...";case"websearch":case"web-search":case"web_search":return"Searching the web...";case"image-search":return"Searching for images...";case"image-gen":return"Creating an image...";case"video-gen":return"Creating a video...";case"presentation-gen":return"Creating a presentation...";case"show":case"show-user":return"Sharing the result...";case"edit":case"write":case"morph_edit":return"Making changes...";case"bash":return"Working on the computer...";case"apply_patch":return"Making changes...";case"prune":return"Tidying up memory...";case"distill":return"Tidying up memory...";case"compress":return"Tidying up memory...";case"context_info":return"Refreshing memory...";default:return"Working on it..."}if(Ge(e)){let t=e.text?.trimStart();if(t){let n=t.match(/^\*\*(.+?)\*\*/);if(n)return`Thinking about ${n[1].trim()}...`}return"Thinking..."}if(qe(e))return"Gathering thoughts..."}}function c1(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n].part,s=ie(r)?r:void 0;if(s&&(s.tool==="task"||s.tool==="agent_task"||s.tool==="agent-task"||s.tool==="task_create"||s.tool==="task-create"||s.tool==="task_start"||s.tool==="task-start")&&s.state.status==="running"&&t&&t.length>0){for(let i=t.length-1;i>=0;i--){let a=t[i];if(a.info.role==="assistant")for(let c=a.parts.length-1;c>=0;c--){let p=Fh(a.parts[c]);if(p)return p}}return"Handing off to an agent..."}let o=Fh(r);if(o)return o}return"Figuring out what\u2019s next..."}function Nh(e){if(!Number.isFinite(e)||e<1e3)return"";let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60),r=t%60;return r>0?`${n}m ${r}s`:`${n}m`}function l1(e){let t={input:0,output:0,reasoning:0,cacheRead:0,cacheWrite:0},n=!1,r=i=>{n=!0,t.input+=i.input??0,t.output+=i.output??0,t.reasoning+=i.reasoning??0,t.cacheRead+=i.cache?.read??0,t.cacheWrite+=i.cache?.write??0},s=new Set;for(let{part:i,message:a}of e){if(i.type!=="step-finish")continue;let c=i.tokens;c&&(s.add(a.info.id),r(c))}let o=new Set;for(let{message:i}of e){if(i.info.role!=="assistant"||s.has(i.info.id)||o.has(i.info.id))continue;o.add(i.info.id);let a=i.info.tokens;a&&r(a)}return n?t:void 0}function u1(e){return e===0?"$0.00":e<.001?`$${e.toFixed(4)}`:e<.01?`$${e.toFixed(3)}`:`$${e.toFixed(2)}`}function p1(e){return e<1e3?String(e):e<1e4?`${(e/1e3).toFixed(1)}k`:`${Math.round(e/1e3)}k`}function d1(e){if(!e||e.type!=="retry")return;let t=e,n=he(t.message);return{attempt:t.attempt,message:n.length>60?`${n.slice(0,60)}...`:n,next:t.next,details:we(t.message)}}function g1(e){if(!(!e||e.type!=="retry"))return he(e.message)}function m1(e){return(e.info.summary?.diffs?.length??0)>0}function qh(e){if(e.kind==="show-group")return!0;if(e.kind!=="standalone")return!1;let t=fe(e.part.tool);return t==="show"||t==="show_user"}function Bv(e){return e.kind==="text"&&!e.part.text?.trim()}function b1(e,t){if(t.working)return null;let n=-1;for(let s=e.length-1;s>=0;s--){let o=e[s];if(!(qh(o)||Bv(o))){o.kind==="text"&&(n=s);break}}let r={work:[],hoisted:[],final:[]};return e.forEach((s,o)=>{o===n?r.final.push(s):qh(s)?r.hoisted.push(s):r.work.push(s)}),r.work.length>0?r:null}function _1(e){let t=e==null?"":Nh(e);return t?`Worked for ${t}`:"Worked"}function Fv(e){let t=e.userMessage.parts;if(t.length===0||!t.every(o=>qe(o)&&o.synthetic)||e.assistantMessages.length!==1)return!1;let r=e.assistantMessages[0].parts;if(r.length!==1)return!1;let s=r[0];return ie(s)&&s.tool==="bash"}function x1(e){if(Fv(e))return e.assistantMessages[0].parts[0]}function v1(e){if(!e)return"";let t=e;return t=t.replace(/^##\s*Worker Result\s*\n/i,""),t=t.replace(/^\*\*Agent:\*\*.*\n?/m,""),t=t.replace(/^\*\*Task:\*\*.*\n?/m,""),t=t.replace(/^\*\*Status:\*\*.*\n?/m,""),t=t.replace(/^\*\*Session:\*\*.*\n?/m,""),t=t.replace(/^\*\*Duration:\*\*.*\n?/m,""),t=Xy(t,"beeuni_goal_system"),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* created and started\..*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* created:.*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* started\..*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* failed to start.*$/gm,""),t=t.replace(/^Message sent to task.*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* approved.*$/gm,""),t=t.replace(/^Task \*\*task-[a-z0-9]+\*\* cancelled.*$/gm,""),t=t.replace(/Worker session: ses_[a-zA-Z0-9]+/g,""),t=t.replace(/^---\s*\n/gm,""),t=t.trim(),t||""}function k1(e){return e?e.split(`
|
|
82
|
+
`).filter(n=>n.trim()).length<=3:!1}function R1(e){if(!e)return null;let n=e.split(`
|
|
83
|
+
`).filter(r=>r.trim()&&!r.startsWith("#"))[0]?.replace(/^\*\*.*?\*\*\s*/,"").trim();return n?n.length>120?n.slice(0,120).trim()+"\u2026":n:null}function C1(e){if(!e)return[];let t=[],n=e.split(`
|
|
84
|
+
`).filter(r=>r.trim());for(let r of n){let s=nh(r);if(s){let o=r.match(/\bses_[a-zA-Z0-9]+/);t.push({...s,sessionId:o?.[0]})}}return t}var bt={write:{verb:"Wrote",running:"Writing",failed:"Couldn't write"},edit:{verb:"Edited",running:"Editing",failed:"Couldn't update"},delete:{verb:"Deleted",running:"Deleting",failed:"Couldn't delete"},rename:{verb:"Renamed",running:"Renaming",failed:"Couldn't rename"},change:{verb:"Changed",running:"Changing",failed:"Couldn't apply"},read:{verb:"Read",running:"Reading",failed:"Couldn't read"},list:{verb:"Listed",running:"Listing",failed:"Couldn't list"}};function T1(e,t){let n=bt[e];return t==="running"?n.running:t==="failed"?n.failed:n.verb}function E1(e,t){return t?"failed":e?"running":"done"}var D1={view:"View",create:"Create",str_replace:"Edit",insert:"Insert",delete:"Delete",rename:"Rename"};function j1(e){return e?e.replace(/^\.\//,"").replace(/^(?:\.beeuni\/)?memory(?:\/|$)/,"").replace(/\/$/,"")||"memory":""}function $1(e,t){if(!e)return null;let n=e.indexOf(`
|
|
85
|
+
`),r=n===-1?e:e.slice(0,n),s=n===-1?"":e.slice(n+1);if(eh(r,"content of "," with line numbers"))return{type:"file",content:s.split(`
|
|
86
86
|
`).map(i=>i.replace(/^\s*\d+(\t|$)/,"")).join(`
|
|
87
87
|
`)};if(/files and directories/i.test(r)){let o=t.replace(/\/$/,""),i=[];for(let a of s.split(`
|
|
88
|
-
`)){if(!a.trim())continue;let
|
|
88
|
+
`)){if(!a.trim())continue;let c=a.indexOf(" ");if(c===-1)continue;let p=a.slice(0,c).trim(),d=a.slice(c+1).trim();d!==o&&i.push({size:p,path:d,isDir:!/\.\w+$/.test(d)})}return{type:"dir",entries:i}}return null}var Nv={add:{...bt.write,icon:"create"},delete:{...bt.delete,icon:"delete"},move:{...bt.rename,icon:"edit"},update:{...bt.edit,icon:"edit"}},Gh={...bt.change,icon:"edit"};function B1(e){if(e.length===0)return Gh;let t=Wh(e[0]);for(let n=1;n<e.length;n++)if(Wh(e[n])!==t)return Gh;return Nv[t]}function Wh(e){return e==="add"||e==="delete"||e==="move"?e:"update"}function N1(e){if(!e)return null;try{return JSON.parse(e)}catch{return e.startsWith("Error:")?{success:!1,action:"unknown",error:e.replace(/^Error:\s*/,"")}:null}}function G1(e,t){if(!e)return null;let n=/"([^"]*)"="([^"]*)"/g,r=[],s;for(;(s=n.exec(e))!==null;)r.push(s[2]);return r.length===0?null:Array.from({length:Math.max(t,r.length)},(o,i)=>r[i]?[r[i]]:[])}function V1(e){if(!e)return null;let t=$n(e,"<path>","</path>"),n=t!==null?t.trim():void 0,r=ni(e,"content");if(r!==null){let o=r.split(`
|
|
89
89
|
`).map(i=>i.replace(/^\s*\d+:\s?/,"")).join(`
|
|
90
|
-
`);return{path:n,type:"file",content:o}}let s=
|
|
91
|
-
`).map(i=>i.trim()).filter(i=>i&&!/^\(\d+\s+entr/i.test(i));return{path:n,type:"directory",entries:o}}return null}function
|
|
92
|
-
\u2026`:e}function
|
|
90
|
+
`);return{path:n,type:"file",content:o}}let s=ni(e,"entries");if(s!==null){let o=s.split(`
|
|
91
|
+
`).map(i=>i.trim()).filter(i=>i&&!/^\(\d+\s+entr/i.test(i));return{path:n,type:"directory",entries:o}}return null}function Y1(e){let t=Qy(e,"skill_content");return t!==null?t.trim():e}function qv(e){let t=$n(e,"<skill_files>","</skill_files>");return t===null?[]:Zy(t,"<file>","</file>").map(n=>n.trim())}function Gv(e){let t=Jy(e,"skill_content");if(t===null)return"";for(let n of["dir","directory","path","base","baseDir","base_dir"]){let r=t.match(new RegExp(`\\b${n}\\s*=\\s*["']([^"']+)["']`,"i"));if(r?.[1]?.trim())return r[1].trim()}return""}function Wv(e){return th(e,["Base directory","Directory","Skill directory"])?.trim()??""}function Kv(e){return Ne(Gv(e)||Wv(e))}function J1(e){for(let t of["dir","directory","path","skillPath","location"]){let n=e[t];if(typeof n=="string"&&n.trim())return Ne(n.trim())}return""}var Vv="skills";function Hv(e){let t=Yy(e?.trim()??"");if(!t||t.toLowerCase()==="skill")return"";let n=t.split("/").map(s=>s.trim());if(n.some(s=>s===".."||s==="."))return"";let r=n.at(-1)??"";return r?`${Vv}/${r}`:""}function Q1(e,t,n){let s=Ne(t?.trim()??"")||Kv(e)||Hv(n),o=qv(e).find(i=>/(^|\/)SKILL\.md$/i.test(i));if(o){if(o.startsWith("/"))return o;if(s)return`${s}/${o}`}return s?`${s}/SKILL.md`:null}var zv=4e3;function qn(e,t=zv){return e.length>t?`${e.slice(0,t)}
|
|
92
|
+
\u2026`:e}function Kh(e){if(e!==void 0)try{return qn(JSON.stringify(e,null,2))}catch{return}}function H(...e){for(let t of e)if(typeof t=="string"&&t.length>0)return t}function _t(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)?e:void 0}function Yv(e){let t=H(e.input?.query)??"";if(e.status==="error")return{kind:"web-search",query:t,error:e.error??"Search failed"};let n=_t(e.outputParsed);if(!n)return{kind:"web-search",query:t};let s=(Array.isArray(n.results)?n.results:Array.isArray(n.images)?n.images:[]).slice(0,50).map(o=>{let i=_t(o)??{};return{title:H(i.title)??"",url:H(i.url,i.link)??"",snippet:H(i.snippet,i.description,i.source)}});return{kind:"web-search",query:H(n.query)??t,results:s.length>0?s:void 0,answer:H(n.answer)}}var Jv=/<exit_code>\s*(-?\d+)\s*<\/exit_code>/;function Hh(e){let t=e.match(Jv);return t?Number(t[1]):void 0}function Qv(e,t,n){let r="",s=0;for(;;){let o=e.indexOf(t,s);if(o===-1)return r+e.slice(s);let i=e.indexOf(n,o+t.length);if(i===-1)return r+e.slice(s);r+=e.slice(s,o),s=i+n.length}}var Xv=["<system_info>","</system_info>","<exit_code>","</exit_code>","<stderr_note>","</stderr_note>"];function Zv(e){let t=-1;for(let n of Xv){let r=e.indexOf(n);r!==-1&&(t===-1||r<t)&&(t=r)}return t===-1?e:e.slice(0,t)}var ek=/\x1B\[[\d;]*[A-Za-z]|\x1B\][^\x07]{0,512}\x07|\x1B[()#][A-Z0-9]|\x1B\[?[\d;]*[hl]|\x1B[>=<]|\x1B\[[?]?\d*[A-Z]|\x1B\[\d*[JKHG]|\x1B\[\d*;\d*[Hf]|\x1b\[[0-9;]*m/g;function tk(e){return e.replace(ek,"")}function nk(e){let t=H(e.input?.command)??"",n=e.output??"",r=Hh(n),o=tk(Zv(Qv(n,"<bash_metadata>","</bash_metadata>"))).trim()||(e.status==="error"?e.error:void 0);return{kind:"shell",command:t,stdout:o||void 0,exitCode:r}}function yi(e){return H(e.input?.filePath,e.input?.file_path,e.input?.path)??""}function rk(e){let t=e.status==="error"?e.error:e.output&&qn(e.output)||void 0;return{kind:"file-read",path:yi(e),preview:t}}function sk(e){let t=H(e.input?.content),n=e.status==="error"?e.error:qn(t??e.output??"")||void 0;return{kind:"file-write",path:yi(e),preview:n}}var ok=256*1024;function ik(e,t){if(e.length+t.length>ok)return;let n=e.split(`
|
|
93
93
|
`),r=t.split(`
|
|
94
|
-
`),s=0;for(;s<n.length&&s<r.length&&n[s]===r[s];)s++;let o=n.length,i=r.length;for(;o>s&&i>s&&n[o-1]===r[i-1];)o--,i--;let a=[];for(let
|
|
95
|
-
`).map(t=>t.trim()).filter(t=>t.startsWith("/")||t.startsWith("./")||t.startsWith("~")).map(t=>({path:t}))}function Hv(e){let t=K(e.input?.pattern,e.input?.query)??"";if(e.status==="error"||!e.output)return{kind:"search",pattern:t};let n=hh.test(e.output.trim())?Wv(e.output):Kv(e.output);return{kind:"search",pattern:t,matches:n.length>0?n.slice(0,200):void 0}}function Vv(e){let t=K(e.input?.description,e.input?.title,e.input?.prompt)??e.title,n=K(e.input?.subagent_type,e.input?.agent);return{kind:"task",description:t,agent:n}}function zo(e){let t=ot(e)??{};return{content:K(t.content)??"",status:K(t.status)??"pending",priority:K(t.priority)}}function zv(e){let t=e.input?.todos;if(Array.isArray(t))return{kind:"todo",items:t.map(zo)};if(Array.isArray(e.outputParsed))return{kind:"todo",items:e.outputParsed.map(zo)};let n=ot(e.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(zo)}:{kind:"todo",items:[]}}function Yv(e){return{kind:"question",questions:(Array.isArray(e.input?.questions)?e.input.questions:[]).map(r=>{let s=ot(r)??{},i=(Array.isArray(s.options)?s.options:[]).flatMap(a=>{let u=ot(a),p=u&&K(u.label);return p?[{label:p,description:u?K(u.description):void 0}]:[]});return{question:K(s.question)??"",header:K(s.header),options:i}})}}function Qv(e){let n=e.input&&Object.keys(e.input).length>0?mh(e.input):void 0,r;return e.outputParsed!==void 0?r=typeof e.outputParsed=="string"?wn(e.outputParsed):mh(e.outputParsed):e.outputText!==void 0?r=wn(e.outputText):r=e.error,{kind:"generic",label:e.title,inputPretty:n,outputPretty:r}}function Jv(e){switch(re(e.name)){case"web_search":return Iv(e);case"bash":return $v(e);case"read":return Uv(e);case"write":return Fv(e);case"edit":return qv(e);case"grep":case"glob":return Hv(e);case"task":return Vv(e);case"todowrite":return zv(e);case"question":return Yv(e);default:return Qv(e)}}var Xv=new Set(["AbortError","MessageAbortedError"]),Zv=["operation was aborted","aborted by user","interrupted by user","cancelled by user","canceled by user","request was cancelled","request was canceled","aborterror"],eA=["unreachable","upstream","econnreset","econnrefused","socket hang up","network","fetch failed","timed out","timeout","gateway","502","503","504"];function bh(e){let t=e.toLowerCase();return eA.some(n=>t.includes(n))?!1:Zv.some(n=>t.includes(n))}function tA(e){let t=e.data,n=t&&typeof t=="object"?t.message:void 0;return typeof n=="string"?n:typeof e.message=="string"?e.message:void 0}function Kr(e){if(typeof e=="string")return bh(e);if(!e||typeof e!="object")return!1;let t=e,n=t.name;if(typeof n=="string"&&Xv.has(n))return!0;let r=tA(t);return typeof r=="string"?bh(r):!1}var nA=["user","runtime-disposed","orphan-finalized","wake"],Pq=["orphan-finalized","wake"];function Sq(e){if(!e||typeof e!="object")return;let t=e.data;if(!t||typeof t!="object")return;let n=t.reason;if(!(typeof n!="string"||!n))return nA.includes(n)?n:void 0}var Hr="beeuni-active-instance",rA=["/dashboard","/agents","/p","/workspace","/settings","/browser","/desktop","/services","/sessions","/terminal","/files","/scheduled-tasks","/commands","/tools","/configuration","/changelog","/legacy","/credits-explained"];function sA(e){return rA.some(t=>e===t||e.startsWith(`${t}/`))}function vn(e){let t=e.match(/^\/instances\/([^/]+)(?:\/(.*))?$/);if(!t)return null;let n=decodeURIComponent(t[1]),r=t[2]??"";return{instanceId:n,innerPath:r?`/${r}`:""}}function wq(e){let t=vn(e);return!!t&&t.innerPath===""}function vq(e){let t=vn(e);return!t||!t.innerPath?e:t.innerPath}function oA(e,t){if(!e)return t;if(t.startsWith("/")||(t=`/${t}`),t.startsWith("/instances/")){let n=vn(t);return n?`/instances/${encodeURIComponent(e)}${n.innerPath}`:t}return sA(t)?`/instances/${encodeURIComponent(e)}${t}`:t}function iA(e){return e?vn(e)?.instanceId??null:null}function Aq(){return typeof window>"u"?null:iA(window.location.pathname)||aA()}function aA(){if(typeof document>"u")return null;let e=document.cookie.match(new RegExp(`(?:^|; )${Hr}=([^;]+)`));return e?decodeURIComponent(e[1]):null}function kq(e){if(typeof document>"u")return;let t=n=>{document.cookie=n};if(typeof window<"u"&&window.location.pathname.startsWith("/projects")){t(`${Hr}=; Max-Age=0; Path=/; SameSite=Lax`);return}if(!e){t(`${Hr}=; Max-Age=0; Path=/; SameSite=Lax`);return}t(`${Hr}=${encodeURIComponent(e)}; Path=/; SameSite=Lax`)}function Rq(e,t){return t?oA(t,e):e}function Cq(e){let t=vn(e);return t?t.innerPath||"/dashboard":e}function An(e){if(e instanceof Error)return e.message;if(typeof e=="string")return e;if(e&&typeof e=="object")try{return JSON.stringify(e)}catch{return String(e)}return String(e??"")}function _h(e){let t=An(e).trim();if(!t)return null;let n=[t,t.replace(/^Failed to perform action:\s*/i,"").trim()],r=t.indexOf("{");r>=0&&n.push(t.slice(r));for(let s of n)if(s)try{return JSON.parse(s)}catch{}return null}var Tq=_h;function Qo(e){let t=_h(e);if(!t||typeof t!="object")return null;let n=t;return n.name==="ConfigInvalidError"?n:null}var Eq=Qo;function cA(e){return Qo(e)!==null}var Mq=cA,uA=[/sandbox not ready/i,/sandbox is not (?:ready|running)/i,/opencode (?:session )?(?:is )?not ready/i,/\bsandbox_not_ready\b/,/\bsandbox_lifecycle_unavailable\b/],Oq=["runtime_not_ready","sandbox runtime not ready","opencode not ready"],lA=/\bruntime_not_ready\b|sandbox runtime not ready|opencode not ready/i;function pA(e){return lA.test(An(e))}function kn(e){let t=An(e);return t?pA(t)||uA.some(n=>n.test(t)):!1}var dA=/server url not ready|sandbox is still loading/i;function Dq(e){return dA.test(An(e))||kn(e)}var Vr=class extends Error{constructor(t){let n=t?.trim();super(n&&kn(n)?n:n?`sandbox not ready: ${n}`:"sandbox not ready"),this.name="SandboxNotReadyError"}};function gA(e){let t=Qo(e);if(t){let s=(t.data?.path??"OpenCode config").replace(/^\/workspace\//,""),o=t.data?.issues?.[0]?.message,i=t.data?.issues?.[0]?.path?.join("."),a=i?.startsWith("permission")?"Remove the invalid permission frontmatter entry or replace it with valid OpenCode permission config.":"Fix the invalid config entry, then restart this session.";return{title:"OpenCode config is invalid",message:`${s} is preventing OpenCode from loading. ${a}`,detail:o?`${i?`${i}: `:""}${o}`:void 0}}let n=An(e);return kn(n)?{title:"Session is waking up",message:"This session slept to save compute. Your conversation is safe \u2014 sending a message wakes it back up."}:{title:"The session runtime failed to load",message:n||"The sandbox is running, but its runtime returned an error."}}var jq=gA;function Ph(e){if(!e.external_id){if(e.base_url)return e.base_url;throw new Error(`Cannot build sandbox URL: missing external_id for ${e.provider} sandbox "${e.sandbox_id}"`)}return`${Ue()}/p/${e.external_id}/${$e.BEEUNI_MASTER}`}function Lq(e,t){return e.external_id?`${Ue()}/p/${e.external_id}/${t}`:null}async function Wq(){let e=await c.get("/setup/sandbox-providers");if(e.error)throw e.error;return e.data}async function mA(e){let t=await Qe();if(t)return{sandbox:t.sandbox,created:!1};let r=(await dt())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await ht(r.project_id,{...e?.provider?{provider:e.provider}:{}}),o=(await Ye(r.project_id,s.session_id))?.sandbox??null;return{sandbox:Zs(r,s,o),created:!0}}async function Kq(){return(await Qe().catch(()=>null))?.sandbox??null}async function Hq(e){return{sandbox:(await mA(e)).sandbox}}async function Vq(e){let t=Ht(e);return t?(await Qe(t).catch(()=>null))?.sandbox??null:null}async function zq(e,t){throw await Qe(e)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function Yq(e){let t=Ht(e);return(await eo().catch(()=>[])).map(r=>r.sandbox).filter(r=>!t||r.sandbox_id===t||r.external_id===t)}async function Qq(){return null}async function Jq(e){if(!e)throw new Error("No sandbox selected for workload restart");let t=await Qe(e);if(!t)throw new Error("Project session sandbox not found");await ar(t.project.project_id,t.session.session_id)}async function Xq(e){if(!e)throw new Error("No sandbox selected to stop");let t=await Qe(e);if(!t)throw new Error("Project session sandbox not found");await cr(t.project.project_id,t.session.session_id)}async function Zq(e){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function eG(e){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function Jo(e,t,n){let r=Ph(e),s=await M(`${te(r)}${t}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...n});if(!s.ok){let o=await s.text().catch(()=>"");throw new Error(o||`Request failed (${s.status})`)}return await s.json()}async function oG(e,t){return Jo(e,`/beeuni/projects/${encodeURIComponent(t)}/members`,{method:"GET"})}async function iG(e,t,n,r="member"){await Jo(e,`/beeuni/projects/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function aG(e,t,n){await Jo(e,`/beeuni/projects/${encodeURIComponent(t)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}var Xo="Use the account invite functions (acceptAccountInvite, declineAccountInvite).";async function lG(e){throw F("getInvite",Xo)}async function pG(e){throw F("acceptInvite",Xo)}async function dG(e){throw F("declineInvite",Xo)}async function mG(e){throw new Error("Backups are not exposed for project-session sandboxes")}async function fG(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function yG(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function hG(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function _G(e){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function PG(e){throw new Error("SSH connection details are not exposed for project-session sandboxes")}var fA=["pulling","patching","stopping","removing","recreating","restarting","verifying","starting","health_check"];function vG(e){return fA.includes(e)}async function AG(e){return{phase:"idle",progress:0,message:"Sandbox image updates are managed by project-session provisioning.",targetVersion:null,previousVersion:null,currentVersion:e?.version??null,error:null,startedAt:null,updatedAt:null}}async function kG(e){let t=e?`?channel=${e}`:"",r=await(await we(`${Ue()}/platform/sandbox/version/latest${t}`,{headers:{Accept:"application/json"}},{},"Version check failed")).json();try{let s=await yA(e||"stable");r.changelog=s.find(o=>o.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function yA(e){let t=e?`?channel=${e}`:"";return(await(await we(`${Ue()}/platform/sandbox/version/changelog${t}`,{headers:{Accept:"application/json"}},{},"Changelog fetch failed")).json()).changelog}async function RG(){return(await we(`${Ue()}/platform/sandbox/version/all`,{headers:{Accept:"application/json"}},{},"All versions fetch failed")).json()}async function CG(e,t){throw new Error("Sandbox image updates are managed by project-session provisioning")}async function IG(e){}async function TG(e){}async function OG(e){return{serverTypes:[],location:e||"hel1"}}async function DG(e){throw new Error("Retired instance provisioning is unavailable. Create a project session with daytona, platinum, or e2b.")}async function jG(e){throw F("deleteInstance")}async function $G(e,t){}async function UG(){throw F("claimComputer")}async function FG(e){return null}function LG(e,t){throw F("getSandboxProvisionStreamUrl")}var zr=class extends Error{constructor(n,r,s){super(n);this.status=r;this.body=s;this.name="HostBoundaryError"}status;body};function Sh(e,t){let n=new Headers(e.headers);return n.set("Accept","application/json"),t&&n.set("Content-Type","application/json"),e.accessToken&&n.set("Authorization",`Bearer ${e.accessToken}`),n}async function xh(e){let t=await e.text().catch(()=>"");if(!t)return null;try{return JSON.parse(t)}catch{return t}}function wh(e,t){if(t&&typeof t=="object"){let n=t;for(let r of["error_description","error","message"])if(typeof n[r]=="string"&&n[r])return n[r]}return typeof t=="string"&&t?t:e.statusText||`HTTP ${e.status}`}async function V(e,t,n){let r=n?.body!==void 0,s=await fetch(`${Vt(t.backendUrl)}${e}`,{method:n?.method??"GET",headers:Sh(t,r),...r?{body:JSON.stringify(n.body)}:{},...t.signal?{signal:t.signal}:{},...t.cache?{cache:t.cache}:{},...t.next?{next:t.next}:{}}),o=await xh(s);if(!s.ok)throw new zr(wh(s,o),s.status,o);return o}function hA(e){let t=new URLSearchParams;e?.query&&t.set("query",e.query),e?.type&&t.set("type",e.type),e?.source&&t.set("source",e.source),e?.limit!==void 0&&t.set("limit",String(e.limit)),e?.offset!==void 0&&t.set("offset",String(e.offset));let n=t.toString();return n?`?${n}`:""}function WG(e,t){return V(`/marketplace/items${hA(t)}`,e)}function KG(e){return V("/marketplace/marketplaces",e)}function HG(e,t){return V(`/marketplace/items/${encodeURIComponent(e)}`,t)}function VG(e,t,n){return V(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`,n)}function zG(e,t){return V("/access/check-email",t,{method:"POST",body:{email:e}})}function YG(e,t){return V("/access/request-access",t,{method:"POST",body:e})}function QG(e){return V("/auth/logout",e,{method:"POST",body:{}})}function JG(e,t){return V(`/oauth/authorize/consent/${encodeURIComponent(e)}`,t)}function XG(e,t){return V("/oauth/authorize/consent",t,{method:"POST",body:{request_id:e.requestId,approved:e.approved}})}function ZG(e,t){return V(`/setup-links/connectors/${encodeURIComponent(e)}`,t)}function e1(e,t){return V(`/setup-links/connectors/${encodeURIComponent(e)}/start`,t,{method:"POST",body:{}})}function t1(e,t,n={}){return V(`/setup-links/connectors/${encodeURIComponent(e)}/finalize`,t,{method:"POST",body:n.connectionId?{connection_id:n.connectionId}:{}})}function n1(e,t){return V(`/setup-links/secret/${encodeURIComponent(e)}`,t)}function r1(e,t,n,r){return V(`/setup-links/secret/${encodeURIComponent(e)}`,n,{method:"POST",body:{values:t,...r?.only_requester?{only_requester:!0}:{}}})}function s1(e,t){return V(`/p/public-share/${encodeURIComponent(e)}`,t)}function o1(e,t,n){return V(`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/start`,n,{method:"POST",body:{}})}function i1(e){return V("/system/maintenance",e)}function a1(e,t){return V("/system/maintenance",t,{method:"PUT",body:e})}function c1(e){return V("/user-roles",e)}function u1(e,t){return V("/system/demo-request",t,{method:"POST",body:e})}async function l1(e,t,n){let r=await fetch(`${Vt(n.backendUrl)}/accounts/${encodeURIComponent(e)}/audit/export?${bt(t)}`,{headers:Sh(n,!1),...n.signal?{signal:n.signal}:{}});if(!r.ok){let s=await xh(r);throw new zr(wh(r,s),r.status,s)}return{blob:await r.blob(),filename:r.headers.get("content-disposition")?.match(/filename="([^"]+)"/)?.[1]??null,capped:r.headers.get("x-audit-capped")==="true",rowCount:r.headers.get("x-audit-row-count"),complete:r.headers.get("x-audit-complete")!=="false",nextCursor:r.headers.get("x-audit-next-cursor")||null}}async function p1(e,t){throw F("openStressTestStream")}function d1(e,t){throw F("buildPublicTemplateUrl")}async function g1(e,t,n){throw F("getPublicTemplate")}var bA="beeuni:connect-link:";function Zo(e){let t=2166136261,n=16777619^e.length;for(let r=0;r<e.length;r+=1){let s=e.charCodeAt(r);t=Math.imul(t^s,16777619)>>>0,n=Math.imul(n^s,1540483477)>>>0}return`${bA}${t.toString(36)}${n.toString(36)}`}function f1(e,{storage:t}={}){let n=new Map,r=new Map,s=i=>{if(t)try{let a=t.getItem(Zo(i));if(!a)return;let u=JSON.parse(a);if(Date.parse(u.expires_at)<=Date.now()){t.removeItem(Zo(i));return}return u}catch{return}},o=(i,a)=>{if(t)try{t.setItem(Zo(i),JSON.stringify(a))}catch{}};return{peek(i){let a=r.get(i);if(a)return a;let u=s(i);return u&&r.set(i,u),u},load(i){let a=n.get(i);if(a)return a;let u=e(i).then(p=>(r.set(i,p),o(i,p),p),p=>{throw n.delete(i),p});return n.set(i,u),u}}}var vh="Could not start the connect flow.";async function y1(e){let t;try{t=await e.start()}catch(r){return{kind:"error",message:r instanceof Error?r.message:vh}}if(t.connect_url)return{kind:"popup",url:t.connect_url};if(!t.connected)return{kind:"error",message:vh};let n=null;try{n=(await e.finalize()).connected_as??null}catch{}return{kind:"connected",alreadyConnected:t.already_connected===!0,connectedAs:n}}var _A=3e3,PA=5e3,SA=5*6e4;function h1(e,t){let n=e===0?_A:PA;return t+n>SA?null:n}function b1(e){let t=e.project_name?.trim();return{app:e.name?.trim()||e.app?.trim()||e.slug,project:t&&t!=="this project"?t:null}}async function S1(){let e=await c.get("/platform/github-app/status",{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App status request failed");return e.data}async function x1(e={}){let t=await c.post("/platform/github-app/manifest-start",e,{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App manifest-start request failed");return t.data}async function w1(e){let t=await c.post("/platform/github-app/app",{app_id:e.appId,private_key:e.privateKey,installation_id:e.installationId,slug:e.slug,client_id:e.clientId,client_secret:e.clientSecret},{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub App configuration request failed");return t.data}async function v1(e){let t=await c.post("/platform/github-app/pat",e,{showErrors:!1});if(t.error)throw t.error;if(!t.data)throw new Error("GitHub token configuration request failed");return t.data}async function A1(){let e=await c.delete("/platform/github-app",{showErrors:!1});if(e.error)throw e.error;if(!e.data)throw new Error("GitHub App disconnect request failed");return e.data}var R1="1";var xA="beeuni.query-cache";function kh(e){return!!e&&typeof e.then=="function"}function Ah(e){return kh(e)?e:Promise.resolve()}function C1(e){if(e[0]!=="kx")return!1;let t=e[1];if(t==="accounts")return e.length===3&&typeof e[2]=="string"&&e[2]!=="anonymous";if(t==="projects")return e.length===3;if(t!=="project"||typeof e[2]!="string")return!1;let n=e[3];if(e.length===4)return n==="summary"||n==="detail";if(n!=="sessions")return!1;if(e.length===6)return e[4]==="list-paged";if(e.length===7&&e[4]==="list-paged"){let r=e[6];return typeof r=="object"&&r!==null&&!r.q}return e.length===7&&e[4]==="list-children"?e[6]==="":e.length===5&&e[4]!=="list"&&e[4]!=="list-paged"}function I1(e){let{storage:t,userId:n,shouldPersist:r,version:s="1",maxAgeMs:o=6048e5,maxBytes:i=1e6,throttleMs:a=1e3,namespace:u=xA,now:p=()=>Date.now()}=e,d=`${u}:${n}`,g=null,m=!1,f=null,h=Promise.resolve(),x=()=>{try{return Ah(t.removeItem(d)).catch(()=>{})}catch{return Promise.resolve()}},D=(w,P)=>{if(!P)return 0;let A;try{A=JSON.parse(P)}catch{return x(),0}if(!A||A.v!==s||A.user!==n||!Array.isArray(A.queries)||p()-A.at>o)return x(),0;let I=0;for(let T of A.queries){if(!T||!Array.isArray(T.k)||T.d===void 0||typeof T.t!="number"||p()-T.t>o||!r(T.k))continue;let B=w.getQueryState(T.k);B&&B.data!==void 0&&B.dataUpdatedAt>=T.t||(w.setQueryData(T.k,T.d,{updatedAt:T.t}),w.invalidateQueries?.({queryKey:T.k,exact:!0,refetchType:"none"}),I+=1)}return I},j=w=>w.getQueryCache().getAll().filter(P=>P.state.data!==void 0&&r(P.queryKey)).map(P=>({k:P.queryKey,d:P.state.data,t:P.state.dataUpdatedAt})).sort((P,A)=>A.t-P.t),L=(w,P)=>{let A=[],I=0;for(let T of w){let B=JSON.stringify(T).length+1;I+B>P||(A.push(T),I+=B)}return A},y=async w=>{let P=L(j(w),i);for(;;){let A={v:s,user:n,at:p(),queries:P};try{await Ah(t.setItem(d,JSON.stringify(A)));return}catch{if(P.length===0)return;P=P.slice(0,Math.floor(P.length/2))}}},_=()=>{f!==null&&(clearTimeout(f),f=null)},S=()=>{_();let w=g;return!w||!m||(m=!1,h=h.then(()=>y(w)).catch(()=>{})),h},E=()=>{m=!0,f===null&&(f=setTimeout(()=>{f=null,S()},a))};return{storageKey:d,restore(w){let P;try{P=t.getItem(d)}catch{return 0}return kh(P)?P.then(A=>D(w,A)).catch(()=>0):D(w,P)},persist(w){g=w,m=!0;let P=w.getQueryCache().subscribe(A=>{A.type!=="updated"&&A.type!=="removed"&&A.type!=="added"||r(A.query.queryKey)&&E()});return()=>{P(),g===w&&(g=null,_())}},flush(){return S()},async clear(){_(),g=null,m=!1,await h,await x()}}}function T1(){let e;try{e=globalThis.localStorage}catch{e=void 0}if(!e)return null;let t=e;return{getItem:n=>{try{return t.getItem(n)}catch{return null}},setItem:(n,r)=>t.setItem(n,r),removeItem:n=>{try{t.removeItem(n)}catch{}}}}var wA="/beeuni/part/";function vA(e){return typeof e=="string"&&e.startsWith(wA)}async function D1(e){if(!vA(e))throw new Error(`not an attachment part reference: ${e}`);let t=Re();if(!t)throw new Error("runtime url not bound");let n=await M(`${t}${e}`);if(!n.ok)throw new Error(`attachment part fetch failed: ${n.status}`);return n.blob()}function Rh(e){try{let t=new URL(e);if(/^\/proxy\/\d+(?:\/|$)/.test(t.pathname))return`${t.origin}/v1/p/auth`;let n=t.pathname.indexOf("/p/");return n!==-1?`${t.origin}${t.pathname.slice(0,n)}/p/auth`:`${t.origin}/v1/p/auth`}catch{return null}}function AA(e,t){try{let n=new URL(e),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))return!1;let o=new Set;if(t)try{o.add(new URL(t).origin)}catch{}return typeof window<"u"&&o.add(window.location.origin),o.has(n.origin)}catch{return!1}}function Ch(e,t){return AA(e,t)?(t?Rh(t):null)??Rh(e):null}function Yr(e){try{let{hostname:t}=new URL(e);return/^p\d+-[^.]+\./.test(t)||/^(?:dev|staging|prod|preview)-p\d+-[a-z0-9-]+\./i.test(t)}catch{return!1}}function Ih(e,t){try{let n=new URL(e);return n.searchParams.set("token",t),n.toString()}catch{return e}}var kA=/^p\d{1,5}-[a-z0-9-]+\.localhost$/;function RA(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function CA(e,t){if(!t.includes("{port}")||!t.includes("{sandbox}"))return!1;let n=t.indexOf("://");if(n<=0)return!1;let r=t.slice(0,n).toLowerCase();if(r!=="https"&&r!=="http")return!1;let s=(t.slice(n+3).split("/")[0]??"").toLowerCase(),o=`${r}://${s}`.split("{port}").map(i=>i.split("{sandbox}").map(RA).join("[a-z0-9-]+")).join("\\d{1,5}");return new RegExp(`^${o}$`).test(e)}function IA(e){try{let t=new URL(e);return t.hostname==="localhost"||t.hostname==="127.0.0.1"?t:null}catch{return null}}function Th(e){return e.port?e.port:e.protocol==="https:"?"443":"80"}function TA(e,t){let n;try{n=new URL(e)}catch{return!1}return n.protocol!=="https:"&&n.protocol!=="http:"?!1:kA.test(n.hostname)?t.backendUrls.some(r=>{let s=IA(r);return s!==null&&Th(s)===Th(n)}):t.templates.some(r=>CA(n.origin,r))}async function Eh(e,t={}){if(!Yr(e))return!1;let n=k().backendUrl;n&&await Je(n).catch(()=>null);let r=[n,t.serverUrl].filter(s=>typeof s=="string"&&s.length>0);return TA(e,{templates:Mm(),backendUrls:r})}async function EA(e,t={}){let n=Ch(e,t.serverUrl||k().backendUrl||void 0);if(!n)return!1;let r=await Ft();if(!r)return!1;try{return(await fetch(n,{method:"POST",credentials:"include",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json"}})).ok}catch{return!1}}async function K1(e,t={}){if(Yr(e)){if(!await Eh(e,t))return e;let n=await Ft();return n?Ih(e,n):e}return await EA(e,t),e}var V1=3e3;function MA(e){return!Number.isFinite(e)||e<100||e>599?"unknown":e===502||e===503||e===504?"unreachable":e===401||e===403?"unknown":"reachable"}async function z1(e,t){if(!e||t?.signal?.aborted)return"unknown";let n=new AbortController,r=()=>n.abort();t?.signal?.addEventListener("abort",r);let s=setTimeout(r,t?.timeoutMs??3e3);try{let o=await fetch(e,{method:"HEAD",credentials:"include",cache:"no-store",signal:n.signal});return MA(o.status)}catch{return"unknown"}finally{clearTimeout(s),t?.signal?.removeEventListener("abort",r)}}function OA(e){let t=e;for(;t.endsWith("/");)t=t.slice(0,-1);return t}function J1(e,t){throw F("buildPresentationTemplatePdfUrl")}function X1(e,t){throw F("buildPresentationTemplateImageUrl")}function DA(e,t){return`${OA(e)}/presentation/convert-to-${t}`}async function Z1(e,t,n,r){let s=DA(t,e),o=r?.pollIntervalMs??2500,i=r?.timeoutMs??4*6e4,a=Date.now(),u=!1;for(;;){let p=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({presentation_path:n,download:!0}),...r?.signal?{signal:r.signal}:{}}),d=p.headers.get("content-type")||"";if(p.ok&&(d.includes("pdf")||d.includes("presentation")||d.includes("octet-stream"))){let h=await p.blob();if(h.size===0)throw new Error("Downloaded file is empty");return h}if(p.status===202){if(u||(u=!0,r?.onGenerating?.()),Date.now()-a>i)throw new Error(`Timed out waiting for the ${e.toUpperCase()} to generate`);await new Promise((h,x)=>{let D=setTimeout(h,o);r?.signal?.addEventListener("abort",()=>{clearTimeout(D),x(r.signal?.reason??new DOMException("Aborted","AbortError"))},{once:!0})});continue}let m=await p.text().catch(()=>""),f=p.statusText;try{let h=JSON.parse(m);f=String(h.error||h.detail||h.message||f)}catch{m&&(f=m)}throw new Error(`Failed to download ${e.toUpperCase()}: ${f} (HTTP ${p.status})`)}}function nW(e){return e.activityFresh||e.runtimeReady?"live":e.unreachable||e.stalled?"unreachable":e.sandbox==="stopped"||e.sandbox==="archived"||e.sandbox==="provisioning"||e.sandbox==="queued"||e.sandbox==="branching"?"waking":e.sandbox==="completed"?"unknown":e.sandbox==="failed"?"unreachable":e.sandbox==="running"?"connecting":"unknown"}function rW(e){return e==="unreachable"}function sW(e){return!e||e.status===0?"unknown":e.ok&&Ef(e.health)?"live":e.hop==="control_plane"?"waking":e.ok||e.health?.status==="starting"?"connecting":"unreachable"}var jA=1e4,oW={connection:"unknown",faultSinceMs:null};function iW(e,t,n,r=jA){if(t==="unknown")return e;if(t==="live"||t==="waking")return{connection:t,faultSinceMs:null};let s=e.faultSinceMs??n;return n-s>=r?{connection:t,faultSinceMs:s}:{connection:e.connection==="unknown"?"connecting":e.connection,faultSinceMs:s}}function Mh({optimistic:e,abort:t,inbox:n,server:r,stream:s,activity:o,nowMs:i}){let a=!!e&&i-e.atMs<ei,u=!!t&&i-t.atMs<ri;return{receiptLive:a,receiptTurnId:e?e.turnId===void 0?e.messageId:e.turnId:null,serverFloor:a?e?.acceptedAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,streamFloor:a?e?.atMs:Number.NEGATIVE_INFINITY,abortLive:u,abortFloor:u?t?.settledAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,serverFresh:!!r&&i-r.atMs<=ti,streamFresh:!!s&&i-s.atMs<=Rn,inboxFresh:!!n&&i-n.atMs<=ni,activityFresh:!!o&&i-o.atMs<=Rn}}function Tt(e){if(!e)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function si(e,t,n){if(!t)return!1;let r=Tt(e.started_at);if(r===null||r>=t.atMs)return!1;let s=n?.lastEnded,o=Tt(s?.ended_at);return!(s&&o!==null&&Math.abs(o-t.atMs)<=1e3&&s.turn_token!==e.turn_token)}function $A(e,t,n,r){let{activity:s,server:o}=e,{serverFresh:i,abortFloor:a,activityFresh:u}=t;return u&&(!n||s.atMs>n.atMs)&&s.atMs>=a?{state:"working",source:"stream",turnId:i?o.turns.find(d=>d.state==="active"&&!si(d,n,o))?.message_id??null:null,since:s.atMs,serverOpenTurnToken:r}:null}function UA(e,t,n,r){let{server:s,stream:o}=e,{serverFresh:i,abortFloor:a}=t,u=i?s.turns.filter(g=>!si(g,n,s)):[],p=u.find(g=>g.state==="active")??u[0],d=!!o&&!(o.type==="idle"&&o.origin==="local");return p&&s.atMs>=a&&(!d||s.atMs>=o.atMs)?{result:{...p.state==="delivering"?{pendingDelivery:!0}:{},state:"working",source:"server",turnId:p.message_id,since:Tt(p.started_at)??s.atMs,serverOpenTurnToken:r},openTurn:p}:{result:null,openTurn:p}}function FA(e,t,n){let{inbox:r,server:s,stream:o}=e,{inboxFresh:i,abortFloor:a,streamFresh:u,serverFresh:p,receiptLive:d,receiptTurnId:g,abortLive:m}=t;if(i&&r.pending>0&&r.atMs>=a)return{...u&&o.type!=="idle"&&(!p||o.atMs>s.atMs)&&o.atMs>=a?{}:{pendingDelivery:!0},state:"working",source:"server",turnId:d?g:null,since:r.atMs,serverOpenTurnToken:n};let f=r?.drainedAtMs;return i&&r.pending===0&&f!=null&&!m&&!(p&&s.atMs>=f)?{pendingDelivery:!0,state:"working",source:"server",turnId:null,since:f,serverOpenTurnToken:n}:null}function LA(e,t,n,r){let{server:s,stream:o,optimistic:i,nowMs:a}=e,{serverFresh:u,serverFloor:p,streamFresh:d,streamFloor:g,abortFloor:m,receiptLive:f,receiptTurnId:h}=t,x=u&&!n&&s.atMs>=p,D=d&&o.atMs>=g&&(o.type==="idle"||o.atMs>=m);if(x&&(!o||s.atMs>=o.atMs))return{state:"idle",source:"server",turnId:null,since:Tt(s.lastEnded?.ended_at)??s.atMs,serverOpenTurnToken:r};if(D)return{state:o.type==="idle"?"idle":"working",source:"stream",turnId:null,since:o.atMs,serverOpenTurnToken:r};if(f)return{pendingDelivery:!0,state:"working",source:"optimistic",turnId:h,since:i.atMs,serverOpenTurnToken:r};let j=s&&o?s.atMs>=o.atMs?{source:"server",atMs:s.atMs}:{source:"stream",atMs:o.atMs}:s?{source:"server",atMs:s.atMs}:o?{source:"stream",atMs:o.atMs}:{source:"server",atMs:a};return{state:"idle",source:j.source,turnId:null,since:j.atMs,serverOpenTurnToken:r}}function Oh(e){let t=Mh(e),{server:n,stream:r}=e,s=r&&r.type==="idle"&&r.origin!=="local"?r:null,o=n?.turns[0]?.turn_token??null,i=$A(e,t,s,o);if(i)return i;let{result:a,openTurn:u}=UA(e,t,s,o);return a??FA(e,t,o)??LA(e,t,u,o)}var ei=6e4,ti=45e3,Rn=45e3,ni=1e4,hW=3e3,ri=15e3;function bW(e,t){return t?t.serverAtMs!=null&&e.serverAtMs!=null?e.serverAtMs>=t.serverAtMs:e.atMs>=t.atMs:!0}function _W(e){let t=0;for(let n of e)(n.state==="queued"||n.state==="delivering"||n.state==="waiting"&&n.reason!=="held")&&(t+=1);return t}function SW(e){return Oh(e)}function xW(e){let{optimistic:t,abort:n,inbox:r,server:s,stream:o,activity:i,nowMs:a}=e,u=[null,t?t.atMs+ei:null,n?n.atMs+ri:null,r?r.atMs+ni:null,s?s.atMs+ti:null,o?o.atMs+Rn:null,i?i.atMs+Rn:null],p=null;for(let d of u)d===null||d<=a||(p===null||d<p)&&(p=d);return p}function BA(e,t){if(!e||!t)return null;let n=e.recent_failures?.find(o=>o.message_id===t),r=e.last_ended,s=n?.error??(r?.message_id===t&&r.end_reason==="failed"?r.error:void 0);return!s?.message||Kr({name:s.name??void 0,message:s.message})?null:s}var NA="SandboxMemoryGuard";function kW(e,t,n){if(!e||!t||n.hasError&&!n.isAbort)return null;let r=BA(e,t);if(r?.message){if(r.name!==NA)return{kind:"cause",name:r.name,message:r.message};let a=r.message.match(/(\d{1,3})%/)?.[1],u=r.message.split(":")[0]?.trim()||null;return{kind:"sandbox-memory",usedPct:a?Number(a):null,detail:u}}let s=e.recent_failures?.find(a=>a.message_id===t);if(!s)return null;let o=s.ended_at?Date.parse(s.ended_at):Number.NaN;return Number.isFinite(o)&&typeof e.atMs=="number"&&e.atMs-o<2500?null:{kind:"unexplained"}}var CW=6e4;function IW(e){return e.serverCompactingAtMs!==null?!0:e.optimisticAtMs===null?!1:e.nowMs-e.optimisticAtMs<6e4}function TW(e){if(e.serverCompactingAtMs!==null||e.optimisticAtMs===null)return null;let t=e.optimisticAtMs+6e4;return t>e.nowMs?t:null}var qA=9e4;function EW(e){return e.serverCompactingAtMs===null?null:e.serverCompactingAtMs+qA}var OW=75e3,DW=2,jW=2e4;function Dh(){return{status:"idle",dispatch:"none",fingerprint:null,lastProgressAtMs:null,lastDispatchAtMs:null,attempts:[],msSinceProgress:0,settled:!1}}function $W(e){return e.filter(t=>t!=null).join("|")}function GA(e,t){return e.length===0?"retry-start":e.filter(r=>r.step==="restart").length<t?"restart":null}function UW(e,t,n={}){let r=n.noProgressMs??75e3,s=n.maxRestarts??2,o=n.cooldownMs??2e4;if(t.runtimeReachable)return{...Dh(),settled:!0};if(!t.waking)return{...e,dispatch:"none",fingerprint:null,lastProgressAtMs:null,msSinceProgress:0};if(e.settled)return{...Dh(),settled:!0};let i=e.lastProgressAtMs,a=i===null,u=t.progress!==e.fingerprint,p=i===null||u?t.nowMs:i,d=Math.max(0,t.nowMs-p),g={...e,dispatch:"none",fingerprint:t.progress,lastProgressAtMs:p,msSinceProgress:d,status:e.attempts.length>0?"escalating":"waking"};if(e.status==="exhausted")return{...g,status:"exhausted"};let m=!a&&!u&&d>=r;if(!t.serverGaveUp&&!m||e.lastDispatchAtMs!==null&&t.nowMs-e.lastDispatchAtMs<o)return g;let f=GA(e.attempts,s);return f?{...g,status:"escalating",dispatch:f,attempts:[...e.attempts,{step:f,atMs:t.nowMs}],lastDispatchAtMs:t.nowMs,lastProgressAtMs:t.nowMs,msSinceProgress:0}:{...g,status:"exhausted"}}var WA={"retry-start":"retrying",restart:"restarting"};function FW(e){if(e.status!=="escalating")return null;let t=e.attempts[e.attempts.length-1];return t?`Still waking \u2014 ${WA[t.step]} the runtime (attempt ${e.attempts.length+1})`:null}function KA(e){return e===1?"once":e===2?"twice":`${e} times`}function LW(e){if(e.status!=="exhausted")return null;let t=e.attempts.filter(s=>s.step==="restart").length,n=e.attempts.some(s=>s.step==="retry-start");if(!n&&t===0)return null;let r=[];return n&&r.push("re-issuing the wake"),t>0&&r.push(`restarting the session ${KA(t)}`),`Tried: ${r.join(", then ")}.`}var NW={"needs-you":{label:"Needs you",tone:"actionable",description:"Waiting for your review"},starting:{label:"Starting",tone:"progress",description:"Its computer is starting"},running:{label:"Running",tone:"live",description:"Its computer is up"},done:{label:"Done",tone:"muted",description:"Finished"},stopped:{label:"Stopped",tone:"muted",description:"Asleep. Opening it wakes its computer"},failed:{label:"Failed",tone:"danger",description:"Its computer didn't start"},legacy:{label:"Legacy",tone:"muted",description:"Imported. Open it to restore"}};function HA(e){return!!(e.metadata??{}).legacy_migration}function qW(e,t=0){if(t>0)return"needs-you";switch(e.status){case"queued":case"branching":case"provisioning":return"starting";case"running":return"running";case"completed":case"stopped":return HA(e)?"legacy":e.status==="completed"?"done":"stopped";case"failed":return"failed";default:return"stopped"}}function GW(e){switch(e){case"waking":return{label:"Waking computer",tone:"progress"};case"connecting":return{label:"Connecting",tone:"progress"};case"unreachable":return{label:"Can't reach computer",tone:"danger"};default:return null}}var WW={unreachable:"Lost contact with this session's computer. Messages you send are queued until it reconnects.",unreachableMidTurn:"Lost contact with this session's computer while a turn is still open. Messages you send stay queued until it answers.",stalled:"Waking this session's computer is taking longer than usual. Messages you send are queued.",starting:"Starting this session's computer. Your message sends automatically.",idle:"This session's computer is asleep. Your next message wakes it up and is delivered.",waking:"Waking this session's computer. Messages you send are queued and go out automatically."};function KW(e){return e===null?"Waiting to retry":e>0?`Retrying in ${e}s`:"Retrying now"}function oi(e){return e.runtime_sessions??e.opencode_sessions??[]}function VA(e){let t=oi(e),n=e.runtime_session_id??e.opencode_session_id;return n?t.find(r=>r.id===n)??null:t.find(r=>!r.parent_id)??null}function VW(e){let t=VA(e);return t?oi(e).filter(n=>n.parent_id===t.id&&!n.archived_at).sort((n,r)=>(r.updated_at??0)-(n.updated_at??0)||n.id.localeCompare(r.id)):[]}function zW(e,t){if(!t)return null;let n=e.find(r=>r.session_id===t||(r.runtime_session_id??r.opencode_session_id)===t);return n||(e.find(r=>oi(r).some(s=>s.id===t))??null)}var zA=new Set;function YA(e){for(let t of[...zA])try{t(e)}catch{}}var QA=12e4,Qr=class extends Error{constructor(t){super(`Session history read did not settle within ${t}ms`),this.name="SessionSyncReadTimeoutError"}},JA=1e3,XA=15e3,jh=100,ZA=50,ek=10;function $h(e){let t=e.fetch??globalThis.fetch,n=e.baseUrl.replace(/\/$/,"");return async({limit:r,before:s},o)=>{let i=new URLSearchParams({limit:String(r)});s&&i.set("before",s);let a=await e.getToken?.(),u=await t(`${n}/session/${encodeURIComponent(e.sessionId)}/message?${i}`,{headers:a?{Authorization:`Bearer ${a}`}:void 0,...o?{signal:o}:{}});if(!u.ok)throw u.status===503?new Vr(`session ${u.status}`):new b(`Session synchronization failed: ${u.status}`,{status:u.status});return{messages:await u.json(),nextCursor:u.headers.get("x-next-cursor")||void 0}}}function tk(e){return rk($h(e))}function nk(e){return new ii({...e,loadPage:$h(e)})}async function rk(e){let t=[],n=new Set,r;do{let i=await e({limit:jh,...r?{before:r}:{}});if(t.push(i.messages),r=i.nextCursor,r&&n.has(r))throw new Error(`Session history cursor repeated: ${r}`);r&&n.add(r)}while(r);let s=[],o=new Set;for(let i=t.length-1;i>=0;i--)for(let a of t[i])o.has(a.info.id)||(o.add(a.info.id),s.push(a));return s}var sk={now:Date.now,setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e)},ii=class{options;scheduler;livenessIntervalMs;verifyIntervalMs;readTimeoutMs;lastTailReadAt;retryAttempt=0;tailUnavailable=!1;tailRetryTimer;snapshot={freshness:"idle",hasOlder:!1,isLoadingOlder:!1};nextCursor;knownUserMessageIds=new Set;olderHistoryStarted=!1;tailRequest;turnEndPending=!1;olderRequest;livenessTimer;livenessBusy=!1;streamReliable=!1;lastActivityAt;listeners=new Set;destroyed=!1;abortController=new AbortController;constructor(t){this.options=t,this.scheduler=t.scheduler??sk,this.livenessIntervalMs=t.livenessIntervalMs??1e4,this.verifyIntervalMs=t.verifyIntervalMs??3e4,this.readTimeoutMs=t.readTimeoutMs??QA,this.lastActivityAt=this.scheduler.now(),this.lastTailReadAt=this.scheduler.now()}getSnapshot=()=>this.snapshot;subscribe=t=>(this.listeners.add(t),()=>this.listeners.delete(t));start(){return this.snapshot.freshness==="fresh"?Promise.resolve():this.reconcile("initial")}reconcile(t="manual"){return this.destroyed?Promise.resolve():this.tailRequest?this.tailRequest:(this.update({freshness:this.snapshot.freshness==="idle"||this.snapshot.freshness==="loading"?"loading":"stale"}),this.tailRequest=this.loadTail(t).finally(()=>{this.tailRequest=void 0}),this.tailRequest)}loadOlder=()=>{if(this.destroyed||!this.nextCursor)return Promise.resolve();if(this.olderRequest)return this.olderRequest;let t=this.nextCursor;return this.update({isLoadingOlder:!0}),this.olderRequest=this.loadCompleteOlderTurn(t).then(n=>{this.destroyed||(this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted=!0,this.setCursor(n.nextCursor))}).finally(()=>{this.olderRequest=void 0,this.update({isLoadingOlder:!1})}),this.olderRequest};noteActivity(){this.lastActivityAt=this.scheduler.now(),this.snapshot.freshness!=="fresh"&&this.update({freshness:"fresh"})}setStreamReliable(t){this.streamReliable=t}setBusy(t,n=!1){let r=this.livenessBusy&&!t;if(this.livenessBusy=t,!t&&!n){this.stopLivenessTimer(),r&&!this.destroyed&&this.reconcileTurnEnd();return}r&&!this.destroyed&&this.reconcileTurnEnd(),this.livenessTimer===void 0&&(this.lastActivityAt=this.scheduler.now(),this.livenessTimer=this.scheduler.setInterval(()=>{this.checkLiveness()},this.livenessIntervalMs))}destroy(){this.destroyed=!0,this.stopLivenessTimer(),this.tailRetryTimer!==void 0&&(this.cancelTimer(this.tailRetryTimer),this.tailRetryTimer=void 0),this.abortController.abort(),this.listeners.clear()}reconcileTurnEnd(){if(!this.tailRequest){this.reconcile("turn-end");return}this.turnEndPending||(this.turnEndPending=!0,this.tailRequest.finally(()=>{this.turnEndPending=!1,this.destroyed||this.reconcile("turn-end")}))}async loadTail(t){this.lastTailReadAt=this.scheduler.now();try{let n=await this.loadPage("tail",t);if(this.destroyed)return;this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted||this.setCursor(n.nextCursor),this.update({freshness:"fresh"}),this.options.markLoaded(),this.retryAttempt=0,this.tailUnavailable=!1}catch(n){if(this.destroyed||this.abortController.signal.aborted)return;let r=n instanceof Qr;if(!r&&Kr(n))return;if(r||this.update({freshness:kn(n)?"loading":"error"}),n instanceof b&&(n.status===404||n.status===410)){this.tailUnavailable=!0,this.cancelTimer(this.tailRetryTimer),this.tailRetryTimer=void 0;return}this.scheduleTailRetry(t)}}scheduleTailRetry(t){if(this.destroyed||this.tailRetryTimer!==void 0)return;let n=Math.min(JA*2**this.retryAttempt,XA);this.retryAttempt+=1,this.tailRetryTimer=this.startTimer(()=>{this.tailRetryTimer=void 0,!this.destroyed&&this.reconcile(t)},n)}async loadPage(t,n,r){let s=this.scheduler.now();try{let o=await this.boundedRead(i=>this.options.loadPage({limit:t==="tail"?ZA:jh,...r?{before:r}:{}},i));return this.options.onTelemetry?.({operation:t,reason:n,durationMs:this.scheduler.now()-s,messageCount:o.messages.length,succeeded:!0}),o}catch(o){throw this.options.onTelemetry?.({operation:t,reason:n,durationMs:this.scheduler.now()-s,messageCount:0,succeeded:!1}),o}}boundedRead(t){let n=this.abortController.signal,r=new AbortController,s=()=>r.abort(n.reason);n.aborted?r.abort(n.reason):n.addEventListener("abort",s,{once:!0});let o,i=new Promise((u,p)=>{o=this.startTimer(()=>{let d=new Qr(this.readTimeoutMs);p(d),r.abort(d)},this.readTimeoutMs)}),a;try{a=t(r.signal)}catch(u){a=Promise.reject(u)}return Promise.race([a,i]).finally(()=>{this.cancelTimer(o),n.removeEventListener("abort",s)})}async loadCompleteOlderTurn(t){let n=await this.loadPage("older","manual",t);return this.loadCompleteTurn(n,"older","manual",t,r=>{this.rememberUserMessages(r.messages),this.options.hydrate(r.messages),this.setCursor(r.nextCursor)})}async loadCompleteTurn(t,n,r,s,o){let i=[...t.messages],a=new Set(this.knownUserMessageIds),u=new Set(s?[s]:[]),p=t.nextCursor,d=0;for(let g of t.messages)g.info.role==="user"&&a.add(g.info.id);for(;p&&d<ek&&i.some(g=>g.info.role==="assistant"&&!!g.info.parentID&&!a.has(g.info.parentID));){if(u.has(p))throw new Error(`Session history cursor repeated: ${p}`);u.add(p);let g;try{g=await this.loadPage(n,r,p)}catch(m){throw o?.({messages:[...i],nextCursor:p}),m}if(this.destroyed)return{messages:i,nextCursor:p};d+=1,i.unshift(...g.messages);for(let m of g.messages)m.info.role==="user"&&a.add(m.info.id);p=g.nextCursor,o?.({messages:[...i],nextCursor:p})}return{messages:i,nextCursor:p}}rememberUserMessages(t){for(let n of t)n.info.role==="user"&&this.knownUserMessageIds.add(n.info.id)}async checkLiveness(){if(this.destroyed||this.tailUnavailable||this.streamReliable)return;let t=this.scheduler.now(),n=t-this.lastActivityAt>this.livenessIntervalMs,r=t-this.lastTailReadAt>=this.verifyIntervalMs;!(this.livenessBusy&&n)&&!r||(await this.raceDeadline(this.reconcile("poll"),this.livenessIntervalMs),this.lastActivityAt=this.scheduler.now())}raceDeadline(t,n){return new Promise(r=>{let s,o=!1,i=()=>{o||(o=!0,this.cancelTimer(s),r())};s=this.startTimer(i,n),t.then(i,i)})}setCursor(t){this.nextCursor=t,this.update({hasOlder:!!t})}stopLivenessTimer(){this.livenessTimer!==void 0&&(this.scheduler.clearInterval(this.livenessTimer),this.livenessTimer=void 0)}startTimer(t,n){return this.scheduler.setTimeout?this.scheduler.setTimeout(t,n):setTimeout(t,n)}cancelTimer(t){t!==void 0&&(this.scheduler.clearTimeout?this.scheduler.clearTimeout(t):clearTimeout(t))}update(t){let n={...this.snapshot,...t};if(!(n.freshness===this.snapshot.freshness&&n.hasOlder===this.snapshot.hasOlder&&n.isLoadingOlder===this.snapshot.isLoadingOlder)){this.snapshot=n;for(let r of this.listeners)r()}}};function ok(e){return e?.available&&e.source==="mirror"&&e.complete&&e.total===0&&e.messages.length===0?e.runtime_session_id??e.opencode_session_id??null:null}function ik(e){return e.savedEmptyRoot!==null&&e.savedEmptyRoot===e.rootSessionId&&e.turnRead&&!e.hasEndedTurn&&!e.hasOpenOrQueuedTurn}function bK(e){throw F("buildTunnelEventStreamUrl")}function _K(e){let{url:t,token:n,method:r="GET",body:s,onEvent:o,onOpen:i,onError:a,onClose:u,signal:p}=e,d=new Map,g=null,m=!1,f="";function h(y,_){o?.(y,_);let S=d.get(y);if(S)for(let E of S)try{E(_)}catch{}}async function x(){if(m)return;let y=new AbortController;g=y,p&&(p.aborted?y.abort():p.addEventListener("abort",()=>y.abort(),{once:!0}));let _=y.signal;try{let S={Accept:"text/event-stream",Authorization:`Bearer ${n}`};r!=="GET"&&s!==void 0&&(S["Content-Type"]="application/json"),f&&(S["Last-Event-ID"]=f);let E=await fetch(t,{method:r,headers:S,body:r!=="GET"&&s!==void 0?JSON.stringify(s):void 0,signal:_,credentials:"include"});if(!E.ok)throw new Error(`SSE connection failed: ${E.status} ${E.statusText}`);if(!E.body)throw new Error("SSE response has no body");i?.();let w=E.body.getReader(),P=new TextDecoder,A="",I="message",T=[],B=N=>{if(N===""){T.length>0&&h(I,T.join(`
|
|
96
|
-
`)),I="message",T=[];return}if(N.startsWith(":"))return;let q=N.indexOf(":"),le=q===-1?N:N.slice(0,q),ue=q===-1?"":N.slice(q+1);ue.startsWith(" ")&&(ue=ue.slice(1)),le==="event"?I=ue.trim()||"message":le==="data"?T.push(ue):le==="id"&&!ue.includes("\0")&&(f=ue)},$=N=>{let q="";!N&&A.endsWith("\r")&&(q="\r",A=A.slice(0,-1));let le=A.split(/\r\n|\n|\r/);A=(le.pop()??"")+q;for(let ue of le)B(ue)};for(;!m;){let{done:N,value:q}=await w.read();if(N)break;A+=P.decode(q,{stream:!0}),$(!1)}m||(A+=P.decode(),$(!0),u?.())}catch(S){if(m||S instanceof DOMException&&S.name==="AbortError")return;a?.(S instanceof Error?S:new Error(String(S)))}}function D(){m=!0,g?.abort(),g=null,d.clear()}function j(y,_){let S=d.get(y)??new Set;S.add(_),d.set(y,S)}function L(y,_){d.get(y)?.delete(_)}return{connect:x,close:D,addEventListener:j,removeEventListener:L}}function PK(e,t){throw F("createTunnelEventStream")}var Uh="/_beeuni/viewer",Jr=6e4,Et=new Map;function ak(){Et.clear(),Cn.clear()}async function ck(e,t){let n;try{n=await t(e,{credentials:"same-origin",headers:{accept:"application/json"}})}catch{return null}if(n.status===401||n.status===404||!n.ok)return null;let r=await n.json().catch(()=>null);return r&&typeof r.user_id=="string"?r:null}async function Fh(e={}){let t=e.path??Uh,n=e.fetch??((o,i)=>fetch(o,i)),r=Et.get(t);if(r&&!r.inflight&&r.expiresAt>Date.now())return r.session;if(r?.inflight)return r.inflight;let s=ck(t,n).then(o=>{let i=o?.expires_at?Date.parse(o.expires_at):Number.NaN,a=Number.isFinite(i)?i-Jr:Date.now()+Jr;return Et.set(t,{session:o,expiresAt:a}),o});return Et.set(t,{session:r?.session??null,expiresAt:0,inflight:s}),s}function uk(e={}){let t=e.path??Uh;return Object.assign(async()=>(await Fh(e))?.access_token??null,{invalidate:n=>{let r=Et.get(t);r&&!r.inflight&&r.session?.access_token===n&&Et.delete(t)}})}var Cn=new Map;async function lk(e,t){try{let n=await t(e,{credentials:"same-origin",headers:{accept:"application/json"}});if(!n.ok){if(n.status===403){let o=await n.json().catch(()=>null);o?.error==="app_not_linked"&&console.warn(`[beeuni] ${String(o.error_description)}`)}return null}let r=await n.json().catch(()=>null);if(!r||typeof r.token!="string")return null;let s=typeof r.expires_at=="string"?Date.parse(r.expires_at):Number.NaN;return Cn.set(e,{token:r.token,refreshAt:Number.isFinite(s)?s-Jr:Date.now()+Jr}),r.token}catch{return null}}function Lh(e={}){let t=e.path??"/_beeuni/token",n=e.audience===void 0?t:`${t}?audience=${encodeURIComponent(e.audience)}`,r=e.fetch??((s,o)=>fetch(s,o));return async(s={})=>{let o=Cn.get(n);if(o instanceof Promise)return o;if(o&&!s.forceRefreshToken&&o.refreshAt>Date.now())return o.token;let i=lk(n,r).then(a=>(a===null&&Cn.delete(n),a));return Cn.set(n,i),i}}function pk(e,t={}){let n=t.origin??globalThis.location?.origin;if(!n)throw new Error("beeuniBinding needs the App origin: pass { origin } outside a browser.");return{url:`${te(n)}/_beeuni/apps/${encodeURIComponent(e)}`,token:Lh({audience:e,fetch:t.fetch})}}var it=class extends Error{code;constructor(t,n){super(n),this.name="BeeuniMemberError",this.code=t}},ce=e=>typeof e=="string"&&e.length>0?e:null;function Bh(e){let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{return[]}return Array.isArray(t)?t.filter(n=>typeof n=="string"):[]}function ci(e){if(!e||typeof e!="object")return null;let t=e,n=ce(t.sub)??ce(t.subject)??ce(t.user_id)??ce(t.userId);return n?{userId:n,email:ce(t.email),name:ce(t.name),picture:ce(t.picture)??ce(t.pictureUrl),groups:Bh(t.groups),groupIds:Bh(t.group_ids??t.groupIds),role:ce(t.role),accountId:ce(t.account_id)??ce(t.accountId),projectId:ce(t.project_id)??ce(t.projectId)}:null}function dk(e,t={}){let n=ci(e);if(!n)throw new it("unauthenticated","Sign in with Beeuni to continue.");let{groups:r,roles:s}=t;if(r&&!r.some(o=>n.groups.includes(o)||n.groupIds.includes(o)))throw new it("forbidden",`Only members of ${r.join(" or ")||"no group"} may do this.`);if(s&&!s.some(o=>n.role===o))throw new it("forbidden",`Only ${s.join(" or ")||"no role"} members may do this.`);return n}var gk=60,ai=new Map;function qh(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n=atob(t+"=".repeat((4-t.length%4)%4));return Uint8Array.from(n,r=>r.charCodeAt(0))}function Nh(e){return JSON.parse(new TextDecoder().decode(qh(e)))}async function mk(e,t){if(typeof e!="string")return e;if(e.startsWith("data:")){let n=e.indexOf(","),r=e.slice(5,n),s=e.slice(n+1),o=r.endsWith(";base64")?new TextDecoder().decode(Uint8Array.from(atob(s),i=>i.charCodeAt(0))):decodeURIComponent(s);return JSON.parse(o)}if(/^https?:\/\//.test(e)){let n=ai.get(e);return n||(n=t(e,{headers:{accept:"application/json"}}).then(async r=>{if(!r.ok)throw new Error(`key set ${r.status}`);return await r.json()}),n.catch(()=>ai.delete(e)),ai.set(e,n)),n}return JSON.parse(e)}async function fk(e,t={}){let n=y=>{throw new it("unauthenticated",`Beeuni sign-in token refused: ${y}.`)},r=t.jwks??je("BEEUNI_AUTH_JWKS"),s=t.issuer??je("BEEUNI_AUTH_ISSUER"),o=t.audience??je("BEEUNI_AUTH_AUDIENCE");if(!r)return n("no key set configured (BEEUNI_AUTH_JWKS)");if(o!==!1&&!o)return n("no audience configured (BEEUNI_AUTH_AUDIENCE, or `audience: false` to accept any App)");let i=typeof e=="string"?e.split("."):[];if(i.length!==3)return n("malformed");let[a,u,p]=i,d,g;try{d=Nh(a),g=Nh(u)}catch{return n("malformed")}if(d.alg!=="ES256")return n("unsupported algorithm");let m;try{m=await mk(r,t.fetch??((y,_)=>fetch(y,_)))}catch{return n("key set unavailable")}let f=(m.keys??[]).filter(y=>y.kty==="EC"&&(d.kid===void 0||y.kid===d.kid));if(f.length===0)return n("unknown key");let h=new TextEncoder().encode(`${a}.${u}`),x;try{x=qh(p)}catch{return n("malformed")}let D=!1;for(let y of f)try{let{kid:_,alg:S,use:E,key_ops:w,...P}=y,A=await crypto.subtle.importKey("jwk",P,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"]);if(await crypto.subtle.verify({name:"ECDSA",hash:"SHA-256"},A,x,h)){D=!0;break}}catch{}if(!D)return n("bad signature");let j=Math.floor(Date.now()/1e3);if(typeof g.exp!="number"||g.exp+gk<j)return n("expired");if(s&&g.iss!==s)return n("wrong issuer");if(o){let y=g.aud;if(!(y===o||Array.isArray(y)&&y.includes(o)))return n("wrong audience")}let L=ci(g);return L||n("no subject")}function Gh(e){let t=e.agents.map(yk),n=e.default_agent??e.open_code_default_agent;return n?t.sort((r,s)=>r.name===n?-1:s.name===n?1:0):t}function yk(e){return{name:e.name,description:e.description??void 0,mode:e.mode??void 0,source:e.source,hidden:e.enabled===!1}}function Wh(e,t){if(!Array.isArray(e))return[];let n=t?.includeSubagents===!0;return e.filter(r=>Xs(n?{...r,mode:null}:r))}function hk(e){let t=e.boundAgent?.trim()||null;if(!Array.isArray(e.agents)){let o=e.selectedAgent?.trim();return o?{selected:o,disabled:!1,reason:"loading"}:{selected:t,disabled:!1,reason:"loading"}}let n=Wh(e.agents);if(n.length===0)return t?{selected:t,disabled:!1,reason:"bound"}:{selected:null,disabled:!0,reason:"no_access"};let r=e.selectedAgent?.trim();if(r&&n.some(o=>o.name===r))return{selected:r,disabled:!1,reason:"selected"};if(t)return{selected:t,disabled:!1,reason:"bound"};let s=e.defaultAgent?.trim();return s&&n.some(o=>o.name===s)?{selected:s,disabled:!1,reason:"default"}:{selected:n[0].name,disabled:!1,reason:"first_accessible"}}var bk=Gh;function Kh(e){return e.providerID==="beeuni"||e.providerID==="opencode"?e.modelID:`${e.providerID}/${e.modelID}`}function ui(e){return{providerID:"beeuni",modelID:e}}function _k(e,t){let n=e.startsWith("beeuni/")?e.slice(7):e;if(!t){let r=n.indexOf("/");if(r>0&&r<n.length-1)return{providerID:n.slice(0,r),modelID:n.slice(r+1)}}return ui(n)}var li=[{id:"hpc-ai",env:["HPC_AI_API_KEY"]},{id:"ai-router",env:["AI_ROUTER_API_KEY"]},{id:"mixlayer",env:["MIXLAYER_API_KEY"]},{id:"qiniu-ai",env:["QINIU_API_KEY"]},{id:"neuralwatt",env:["NEURALWATT_API_KEY"]},{id:"umans-ai-coding-plan",env:["UMANS_AI_CODING_PLAN_API_KEY"]},{id:"iteracompute",env:["ITERACOMPUTE_API_KEY"]},{id:"cloudflare-workers-ai",env:["CLOUDFLARE_ACCOUNT_ID","CLOUDFLARE_API_KEY"]},{id:"meganova",env:["MEGANOVA_API_KEY"]},{id:"infomaniak",env:["INFOMANIAK_API_KEY","INFOMANIAK_PRODUCT_ID"]},{id:"orcarouter",env:["ORCAROUTER_API_KEY"]},{id:"zenifra",env:["ZENIFRA_AI_KEY"]},{id:"nvidia",env:["NVIDIA_API_KEY"]},{id:"qvac",env:["QVAC_API_KEY"]},{id:"iflowcn",env:["IFLOW_API_KEY"]},{id:"claudinio",env:["CLAUDINIO_API_KEY"]},{id:"cortecs",env:["CORTECS_API_KEY"]},{id:"nano-gpt",env:["NANO_GPT_API_KEY"]},{id:"modelscope",env:["MODELSCOPE_API_KEY"]},{id:"synthetic",env:["SYNTHETIC_API_KEY"]},{id:"jalapeno",env:["JALAPENO_API_KEY"]},{id:"abliteration-ai",env:["ABLIT_KEY"]},{id:"deepseek",env:["DEEPSEEK_API_KEY"]},{id:"greenpt",env:["GREENPT_API_KEY"]},{id:"xpersona",env:["XPERSONA_API_KEY"]},{id:"tencent-tokenhub",env:["TENCENT_TOKENHUB_API_KEY"]},{id:"stepfun-step-plan",env:["STEPFUN_API_KEY"]},{id:"xiaomi-token-plan-sgp",env:["XIAOMI_API_KEY"]},{id:"the-grid-ai",env:["THEGRID_API_KEY"]},{id:"google-vertex",env:["GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION","GOOGLE_APPLICATION_CREDENTIALS"]},{id:"alibaba-token-plan",env:["ALIBABA_TOKEN_PLAN_API_KEY"]},{id:"agentrouter",env:["AGENTROUTER_API_KEY"]},{id:"google",env:["GOOGLE_API_KEY","GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"]},{id:"model-oracle-ai",env:["MODEL_ORACLE_API_KEY"]},{id:"deepinfra",env:["DEEPINFRA_API_KEY"]},{id:"meta",env:["META_MODEL_API_KEY"]},{id:"huggingface",env:["HF_TOKEN"]},{id:"impossibl",env:["IMPOSSIBL_API_KEY"]},{id:"jiekou",env:["JIEKOU_API_KEY"]},{id:"longcat",env:["LONGCAT_API_KEY"]},{id:"inception",env:["INCEPTION_API_KEY"]},{id:"openrouter",env:["OPENROUTER_API_KEY"]},{id:"google-vertex-anthropic",env:["GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION","GOOGLE_APPLICATION_CREDENTIALS"]},{id:"poolside",env:["POOLSIDE_API_KEY"]},{id:"hetzner",env:["HETZNER_API_KEY"]},{id:"regolo-ai",env:["REGOLO_API_KEY"]},{id:"lynkr",env:["LYNKR_API_KEY"]},{id:"lucidquery",env:["LUCIDQUERY_API_KEY"]},{id:"blueclaw",env:["BLUECLAW_API_KEY"]},{id:"standardcompute",env:["STANDARDCOMPUTE_API_KEY"]},{id:"auriko",env:["AURIKO_API_KEY"]},{id:"daoxe",env:["DAOXE_API_KEY"]},{id:"moonshotai",env:["MOONSHOT_API_KEY"]},{id:"crossmodel",env:["CROSSMODEL_API_KEY"]},{id:"kenari",env:["KENARI_API_KEY"]},{id:"clarifai",env:["CLARIFAI_PAT"]},{id:"snowflake-cortex",env:["SNOWFLAKE_ACCOUNT","SNOWFLAKE_CORTEX_PAT"]},{id:"anthropic",env:["ANTHROPIC_API_KEY"]},{id:"cohere",env:["COHERE_API_KEY"]},{id:"zai",env:["ZHIPU_API_KEY"]},{id:"routing-run",env:["ROUTING_RUN_API_KEY"]},{id:"stackit",env:["STACKIT_API_KEY"]},{id:"databricks",env:["DATABRICKS_HOST","DATABRICKS_TOKEN"]},{id:"moark",env:["MOARK_API_KEY"]},{id:"salad-cloud",env:["SALAD_CLOUD_API_KEY"]},{id:"alibaba-cn",env:["DASHSCOPE_API_KEY"]},{id:"kosmik",env:["KOSMIK_API_KEY"]},{id:"minimax-cn-coding-plan",env:["MINIMAX_API_KEY"]},{id:"amazon-bedrock",env:["AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_REGION","AWS_BEARER_TOKEN_BEDROCK"]},{id:"unorouter",env:["UNOROUTER_API_KEY"]},{id:"crusoe",env:["CRUSOE_API_KEY"]},{id:"dinference",env:["DINFERENCE_API_KEY"]},{id:"openai",env:["OPENAI_API_KEY"]},{id:"opencode-go",env:["OPENCODE_API_KEY"]},{id:"opper",env:["OPPER_API_KEY"]},{id:"xai",env:["XAI_API_KEY"]},{id:"stepfun-ai",env:["STEPFUN_API_KEY"]},{id:"lmstudio",env:["LMSTUDIO_API_KEY"]},{id:"ambient",env:["AMBIENT_API_KEY"]},{id:"llmgateway-providers",env:["LLMGATEWAY_API_KEY"]},{id:"vivgrid",env:["VIVGRID_API_KEY"]},{id:"nebius",env:["NEBIUS_API_KEY"]},{id:"echo",env:["ECHO_API_KEY"]},{id:"cloudferro-sherlock",env:["CLOUDFERRO_SHERLOCK_API_KEY"]},{id:"nearai",env:["NEARAI_API_KEY"]},{id:"xiaomi-token-plan-cn",env:["XIAOMI_API_KEY"]},{id:"tinfoil",env:["TINFOIL_API_KEY"]},{id:"zhipuai-coding-plan",env:["ZHIPU_API_KEY"]},{id:"llmtr",env:["LLMTR_API_KEY"]},{id:"merge-gateway",env:["MERGE_GATEWAY_API_KEY"]},{id:"inceptron",env:["INCEPTRON_API_KEY"]},{id:"ovhcloud",env:["OVHCLOUD_API_KEY"]},{id:"aki-io",env:["AKI_IO_API_KEY"]},{id:"stepfun",env:["STEPFUN_API_KEY"]},{id:"llama",env:["LLAMA_API_KEY"]},{id:"cloudflare-ai-gateway",env:["CLOUDFLARE_API_TOKEN","CLOUDFLARE_ACCOUNT_ID","CLOUDFLARE_GATEWAY_ID"]},{id:"drun",env:["DRUN_API_KEY"]},{id:"sarvam",env:["SARVAM_API_KEY"]},{id:"digitalocean",env:["DIGITALOCEAN_ACCESS_TOKEN"]},{id:"alibaba-coding-plan-cn",env:["ALIBABA_CODING_PLAN_API_KEY"]},{id:"neosmith",env:["NEOSMITH_API_KEY"]},{id:"stepfun-ai-step-plan",env:["STEPFUN_API_KEY"]},{id:"fastrouter",env:["FASTROUTER_API_KEY"]},{id:"privatemode-ai",env:["PRIVATEMODE_API_KEY","PRIVATEMODE_ENDPOINT"]},{id:"zeldoc",env:["ZELDOC_API_KEY"]},{id:"lilac",env:["LILAC_API_KEY"]},{id:"io-net",env:["IOINTELLIGENCE_API_KEY"]},{id:"berget",env:["BERGET_API_KEY"]},{id:"xiaomi",env:["XIAOMI_API_KEY"]},{id:"minimax-coding-plan",env:["MINIMAX_API_KEY"]},{id:"zai-coding-plan",env:["ZHIPU_API_KEY"]},{id:"alibaba",env:["DASHSCOPE_API_KEY"]},{id:"sakana",env:["SAKANA_API_KEY"]},{id:"zenmux",env:["ZENMUX_API_KEY"]},{id:"perplexity-agent",env:["PERPLEXITY_API_KEY"]},{id:"alibaba-coding-plan",env:["ALIBABA_CODING_PLAN_API_KEY"]},{id:"ollama-cloud",env:["OLLAMA_API_KEY"]},{id:"perplexity",env:["PERPLEXITY_API_KEY"]},{id:"gmicloud",env:["GMICLOUD_API_KEY"]},{id:"umans-ai",env:["UMANS_AI_API_KEY"]},{id:"sap-ai-core",env:["AICORE_SERVICE_KEY"]},{id:"inference",env:["INFERENCE_API_KEY"]},{id:"arcee",env:["ARCEE_API_KEY"]},{id:"qihang-ai",env:["QIHANG_API_KEY"]},{id:"kuae-cloud-coding-plan",env:["KUAE_API_KEY"]},{id:"submodel",env:["SUBMODEL_INSTAGEN_ACCESS_KEY"]},{id:"scx-ai",env:["SCX_API_KEY"]},{id:"freemodel",env:["FREEMODEL_API_KEY"]},{id:"nova",env:["NOVA_API_KEY"]},{id:"togetherai",env:["TOGETHER_API_KEY"]},{id:"ofox",env:["OFOX_API_KEY"]},{id:"friendli",env:["FRIENDLI_TOKEN"]},{id:"inferx",env:["INFERX_API_KEY"]},{id:"helicone",env:["HELICONE_API_KEY"]},{id:"zhipuai",env:["ZHIPU_API_KEY"]},{id:"neon",env:["NEON_AI_GATEWAY_BASE_URL","NEON_AI_GATEWAY_TOKEN"]},{id:"evroc",env:["EVROC_API_KEY"]},{id:"azure-cognitive-services",env:["AZURE_COGNITIVE_SERVICES_RESOURCE_NAME","AZURE_COGNITIVE_SERVICES_API_KEY"]},{id:"pendra",env:["PENDRA_API_KEY"]},{id:"302ai",env:["302AI_API_KEY"]},{id:"opencode",env:["OPENCODE_API_KEY"]},{id:"requesty",env:["REQUESTY_API_KEY"]},{id:"siliconflow",env:["SILICONFLOW_API_KEY"]},{id:"atomic-chat",env:["ATOMIC_CHAT_API_KEY"]},{id:"hyper",env:["HYPER_API_KEY"]},{id:"subconscious",env:["SUBCONSCIOUS_API_KEY"]},{id:"azure",env:["AZURE_RESOURCE_NAME","AZURE_API_KEY"]},{id:"trustedrouter",env:["TRUSTEDROUTER_API_KEY"]},{id:"scaleway",env:["SCALEWAY_API_KEY"]},{id:"frogbot",env:["FROGBOT_API_KEY"]},{id:"thinkingmachines",env:["TINKER_API_KEY"]},{id:"baseten",env:["BASETEN_API_KEY"]},{id:"siliconflow-cn",env:["SILICONFLOW_CN_API_KEY"]},{id:"minimax-cn",env:["MINIMAX_API_KEY"]},{id:"poe",env:["POE_API_KEY"]},{id:"mistral",env:["MISTRAL_API_KEY"]},{id:"modal",env:["MODAL_PROXY_TOKEN"]},{id:"aihubmix",env:["AIHUBMIX_API_KEY"]},{id:"cline-pass",env:["CLINE_API_KEY"]},{id:"empiriolabs",env:["EMPIRIOLABS_API_KEY"]},{id:"morph",env:["MORPH_API_KEY"]},{id:"tencent-coding-plan",env:["TENCENT_CODING_PLAN_API_KEY"]},{id:"xiaomi-token-plan-ams",env:["XIAOMI_API_KEY"]},{id:"scnet-token-plan",env:["SCNET_API_KEY"]},{id:"anyapi",env:["ANYAPI_API_KEY"]},{id:"cerebras",env:["CEREBRAS_API_KEY"]},{id:"amd",env:["AMD_API_KEY"]},{id:"bailing",env:["BAILING_API_TOKEN"]},{id:"watsonx",env:["WATSONX_AI_APIKEY","WATSONX_AI_PROJECT_ID"]},{id:"vercel",env:["AI_GATEWAY_API_KEY"]},{id:"edenai",env:["EDENAI_API_KEY"]},{id:"novita-ai",env:["NOVITA_API_KEY"]},{id:"upstage",env:["UPSTAGE_API_KEY"]},{id:"llmgateway",env:["LLMGATEWAY_API_KEY"]},{id:"chutes",env:["CHUTES_API_KEY"]},{id:"crof",env:["CROF_API_KEY"]},{id:"v0",env:["V0_API_KEY"]},{id:"groq",env:["GROQ_API_KEY"]},{id:"runinfra",env:["RUNINFRA_GATEWAY_KEY"]},{id:"agnes",env:["AGNES_API_KEY"]},{id:"gitlab",env:["GITLAB_TOKEN"]},{id:"alibaba-token-plan-cn",env:["ALIBABA_TOKEN_PLAN_API_KEY"]},{id:"coralbricks",env:["CORAL_API_KEY"]},{id:"aiand",env:["AIAND_API_KEY"]},{id:"github-copilot",env:["GITHUB_TOKEN"]},{id:"wafer.ai",env:["WAFER_API_KEY"]},{id:"modelis",env:["MODELIS_API_KEY"]},{id:"ebcloud",env:["EBCLOUD_API_KEY"]},{id:"tensorx",env:["TENSORX_API_KEY"]},{id:"tencent-token-plan",env:["TENCENT_TOKEN_PLAN_API_KEY"]},{id:"kilo",env:["KILO_API_KEY"]},{id:"pioneer",env:["PIONEER_API_KEY"]},{id:"venice",env:["VENICE_API_KEY"]},{id:"fireworks-ai",env:["FIREWORKS_API_KEY"]},{id:"moonshotai-cn",env:["MOONSHOT_API_KEY"]},{id:"wandb",env:["WANDB_API_KEY"]},{id:"kimi-for-coding",env:["KIMI_API_KEY"]},{id:"abacus",env:["ABACUS_API_KEY"]},{id:"minimax",env:["MINIMAX_API_KEY"]},{id:"vultr",env:["VULTR_API_KEY"]}];function pi(e){if(!e.released)return null;let t=new Date(e.released).getTime();return Number.isNaN(t)?null:t}function Sk(e){if(e.provider)return e.provider;let t=e.id.indexOf("/");return t===-1?"beeuni":e.id.slice(0,t)}function Hh(e,t){let n=new Map;for(let r of e){let s=t(r),o=n.get(s);o?o.push(r):n.set(s,[r])}return n}function oe(e){let t=e.includes("/")?e.slice(e.indexOf("/")+1):e;return t.startsWith("global.")?2:/^(us|eu|jp|apac|au|ca|sa|us-gov)\./.test(t)?1:0}function Vh(e){return e.reduce((t,n)=>{let r=pi(n)??0,s=pi(t)??0;return r!==s?r>s?n:t:oe(n.id)>oe(t.id)?n:t})}function di(e,t){let n=(t?.now??new Date).getTime(),r=(t?.windowMonths??6)*2630016e3,s=new Set;for(let[,o]of Hh(e,Sk)){let a=[...Hh(o,p=>p.family||p.id).values()].map(Vh),u=a.filter(p=>{let d=pi(p);return d!==null&&Math.abs(n-d)<r});for(let p of u.length>0?u:[Vh(a)])s.add(p.id)}return s}function Xr(e){let t=e.filter(r=>r.status!=="deprecated"&&r.status!=="beta"&&r.tool_call!==!1),n=t.length>0?t:e;return n.some(r=>oe(r.id)>0)?n.filter(r=>oe(r.id)>0):n}function In(e){let t;for(let n of Xr(e)){if(!t){t=n;continue}let r=(n.released??"").localeCompare(t.released??"");(r>0||r===0&&oe(n.id)>oe(t.id))&&(t=n)}return t}var xk={"amazon-bedrock":{methods:[{label:"Bearer token",envVars:["AWS_BEARER_TOKEN_BEDROCK","AWS_REGION"]}]},google:{methods:[{envVars:["GOOGLE_GENERATIVE_AI_API_KEY"]},{envVars:["GOOGLE_API_KEY"]},{envVars:["GEMINI_API_KEY"]}]}};function zh(e){return`${e.toUpperCase().replace(/[^A-Z0-9]+/g,"_")}_API_KEY`}var wk=(()=>{let e=new Map;for(let{id:n,env:r}of li)r.length===1&&e.set(r[0],[...e.get(r[0])??[],n]);let t=new Map;for(let[n,r]of e){if(r.length<2)continue;let s=[...r].sort((o,i)=>o.length-i.length||o.localeCompare(i));t.set(n,r.find(o=>zh(o)===n)??s[0])}return t})();function Yh(e){let t=xk[e.id];if(t)return t;let n=e.env??[],r=n.length===1?wk.get(n[0]):void 0;return r&&r!==e.id?{methods:[{envVars:[zh(e.id)]}]}:{methods:n.length>0?[{envVars:n}]:[]}}function gi(e,t){return e.methods.some(n=>n.envVars.length>0&&n.envVars.every(t))}var vk=["low","medium","high"];function Qh(e){if(!e)return{temperature:!1,topP:!1};let t=e.reasoning_options?.find(a=>a.type==="effort"),n=e.reasoning_options?.find(a=>a.type==="budget_tokens"),r=t?.values?.length?{values:t.values}:n?{values:[...vk]}:void 0,s=e.temperature===!0,o=e.limit?.output,i=typeof o=="number"&&o>0?{ceiling:o}:void 0;return{reasoningEffort:r,temperature:s,topP:s,maxOutputTokens:i}}var Jh=li;var Ak=[{id:"gpt-6-astra",name:"GPT-6 Astra",upstreamModelId:"openai/gpt-6-astra",transport:"openrouter",pricingRef:"openrouter/openai/gpt-6-astra",pricing:{inputPerMillion:10,cachedInputPerMillion:1,cacheWritePerMillion:12.5,outputPerMillion:50,contextOver200k:{contextThreshold:272e3,inputPerMillion:20,cachedInputPerMillion:2,cacheWritePerMillion:25,outputPerMillion:75}},tier:"flagship",vision:!0,limit:{context:105e4,output:128e3},openrouterProvider:{order:["openai"],allow_fallbacks:!0}},{id:"gpt-6-sol",name:"GPT-6 Sol",upstreamModelId:"openai/gpt-6-sol",transport:"openrouter",pricingRef:"openrouter/openai/gpt-6-sol",pricing:{inputPerMillion:2.2,cachedInputPerMillion:.22,cacheWritePerMillion:2.75,outputPerMillion:11,contextOver200k:{contextThreshold:272e3,inputPerMillion:4.4,cachedInputPerMillion:.44,cacheWritePerMillion:5.5,outputPerMillion:16.5}},tier:"balanced",vision:!0,limit:{context:105e4,output:128e3},openrouterProvider:{only:["azure/us"],allow_fallbacks:!1,zdr:!0,data_collection:"deny"}}],OK=new Map(Ak.map(e=>[e.id,e]));var Xh=["gpt-6-astra","gpt-6-sol"],Zh="gpt-6-astra",eb="gpt-6-sol";var nb=Jh.map(e=>({id:e.id,authRequirement:Yh(e)})),Tn=new Set(["beeuni"]),mi=new Set(["beeuni"]);function Mt(e){let t=Array.isArray(e.all)?e.all:[],n=Array.isArray(e.connected)?e.connected:[];if(t.length>0||n.length>0)return{...e,all:t,connected:n};let r=e.providers,s=Array.isArray(r)?r:[];return s.length===0?{...e,all:[],connected:[]}:{...e,all:s,connected:s.map(o=>o.id)}}function kk(e){if(!e)return!1;let t=Mt(e),n=Array.isArray(t.all)?t.all:[],r=Array.isArray(t.connected)?t.connected:[];return r.length===0?!1:n.some(s=>r.includes(s.id)&&s.models&&Object.keys(s.models).length>0)}function Rk(e){let t=Mt(e),n=Array.isArray(t.all)?t.all:[],r=Array.isArray(t.connected)?t.connected:[];return{...t,all:n.filter(s=>!mi.has(s.id)),connected:r.filter(s=>!mi.has(s))}}function Ck(e,t,n){let r=Mt(e),s=Array.isArray(r.all)?r.all:[],o=new Set(s.map(a=>a.id)),i=new Set(Array.isArray(r.connected)?r.connected:[]);for(let a of n)o.has(a.id)&&gi(a.authRequirement,u=>t.has(u))&&i.add(a.id);return o.has("codex")&&(t.has("CODEX_AUTH_JSON")||t.has("OPENCODE_AUTH_JSON"))&&i.add("codex"),{...r,connected:[...i]}}var Ik=new Map(["anthropic","openai","google","x-ai","xai","deepseek","mistral","groq","perplexity","openrouter"].map((e,t)=>[e,t]));function Tk(e){let t=e.reasoning_options??[],n=t.find(r=>r.type==="effort");return n?(n.values??[]).flatMap(r=>r===null?["none"]:typeof r=="string"?[r]:[]):t.some(r=>r.type==="budget_tokens")?["high","max"]:[]}var fi="opencode";function Ek(e){return e.cost?.input===0&&e.cost?.output===0}function tb(e){return e===fi?Number.MAX_SAFE_INTEGER:Ik.get(e)??Number.MAX_SAFE_INTEGER-1}function Mk(e,t){let n=Dk(t),r={},s=(e.providers??[]).map(o=>{let i=(o.models??[]).filter(a=>a.status!=="deprecated");return o.id===fi&&!n.has(fi)?{...o,models:i.filter(Ek),keyless:!0}:{...o,models:i,keyless:!1}}).filter(o=>(o.keyless||n.has(o.id))&&!mi.has(o.id)&&(o.models?.length??0)>0).sort((o,i)=>tb(o.id)-tb(i.id)).map(o=>{let i=[...o.models].sort((u,p)=>(p.released??"").localeCompare(u.released??"")||oe(p.id)-oe(u.id)),a=In(i)?.id??i[0]?.id;return a&&(r[o.id]=a),{id:o.id,name:o.name,source:o.keyless?"api":"env",models:Object.fromEntries(i.map(u=>{let p=Tk(u);return[u.id,{id:u.id,name:u.name,...u.released?{release_date:u.released}:{},...u.family?{family:u.family}:{},...u.reasoning!==void 0?{reasoning:u.reasoning}:{},...u.reasoning_options?{reasoning_options:u.reasoning_options}:{},...u.tool_call!==void 0?{tool_call:u.tool_call}:{},...u.attachment!==void 0?{attachment:u.attachment}:{},...u.modalities?{modalities:u.modalities}:{},...u.limit?{limit:u.limit}:{},...u.cost?{cost:u.cost}:{},...u.description?{description:u.description}:{},...u.open_weights!==void 0?{open_weights:u.open_weights}:{},...u.last_updated?{last_updated:u.last_updated}:{},...p.length>0?{variants:Object.fromEntries(p.map(d=>[d,{}]))}:{}}]}))}});return{all:s,connected:s.map(o=>o.id),default:r}}function Ok(e,t){if(!e)return t;if(!t)return e;let n=Mt(e),r=Mt(t),s=new Map;for(let d of Array.isArray(r.all)?r.all:[])s.set(d.id,d);let o=[],i=new Set;for(let d of Array.isArray(n.all)?n.all:[])o.push(s.get(d.id)??d),i.add(d.id);for(let d of Array.isArray(r.all)?r.all:[])i.has(d.id)||(o.push(d),i.add(d.id));let a=[],u=new Set;for(let d of[...Array.isArray(n.connected)?n.connected:[],...Array.isArray(r.connected)?r.connected:[]])u.has(d)||(a.push(d),u.add(d));let p={...r.default??{}};for(let[d,g]of Object.entries(n.default??{})){let m=s.get(d);(!m||m.models&&g in m.models)&&(p[d]=g)}return{...r,all:o,connected:a,default:p}}function Dk(e){let t=new Set;for(let n of nb)gi(n.authRequirement,r=>e.has(r))&&t.add(n.id);return(e.has("CODEX_AUTH_JSON")||e.has("OPENCODE_AUTH_JSON"))&&t.add("codex"),t}function jk(e){let t=Object.fromEntries(Object.entries(e.models??{}).filter(([r])=>r!=="auto"&&r!=="beeuni/auto").map(([r,s])=>{if(s.variants&&Object.keys(s.variants).length>0)return[r,s];let o=Qh({id:r,name:s.name,reasoning:s.reasoning,reasoning_options:s.reasoning_options}).reasoningEffort?.values;return o?.length?[r,{...s,variants:Object.fromEntries(o.map(i=>[i,{}]))}]:[r,s]})),n=Object.keys(t)[0];return{default:n?{beeuni:n}:{},connected:["beeuni"],all:[{id:"beeuni",name:"Beeuni",source:"gateway",models:t}]}}function $k(e,t){return Rk(Ck(Mt(e),t,nb))}function Uk(e){if(e.gatewayEnabled)return e.modelPicker?jk(e.modelPicker):void 0;let t=e.secretNames??new Set,n=e.runtimeProviders?$k(e.runtimeProviders,t):void 0;return Ok(e.llmCatalogProviders?Mk(e.llmCatalogProviders,t):void 0,kk(n)?n:void 0)}function Fk(e){return"capabilities"in e&&e.capabilities!=null}function yi(e,t){let n=e.find(r=>r.providerID===t.providerID&&r.modelID===t.modelID);return!!n&&n.enabled!==!1}function Lk(e,t){if(!e)return[];let n=t?.providerMode??"gateway",r=Array.isArray(e.all)?e.all:[],s=Array.isArray(e.connected)?e.connected:[],o=[];for(let i of r)if(s.includes(i.id)&&!(n==="gateway"?!Tn.has(i.id):Tn.has(i.id)))for(let[a,u]of Object.entries(i.models)){if(a==="auto"||a==="beeuni/auto")continue;let p;if(Fk(u)){let d=u.capabilities;p={reasoning:d.reasoning??!1,vision:d.input?d.input.image??!1:void 0,toolcall:d.toolcall??!1}}else{let d=u.modalities?.input;p={reasoning:u.reasoning??!1,vision:d?d.includes("image"):u.attachment,toolcall:u.tool_call??!1}}o.push({id:Kh({providerID:i.id,modelID:a}),providerID:i.id,providerName:u.provider_name??i.name,modelID:a,modelName:(u.name||a).replace("(latest)","").trim(),variants:u.variants,capabilities:p,contextWindow:u.limit?.context,releaseDate:u.release_date,family:u.family,cost:u.cost?{input:u.cost.input??0,output:u.cost.output??0}:void 0,providerSource:i.source,provider:u.provider,reasoningOptions:u.reasoning_options,description:u.description,openWeights:u.open_weights,lastUpdated:u.last_updated,enabled:u.enabled,free:u.free===!0})}return o}function rb(e){return new Map(e.map(t=>[`${t.providerID}:${t.modelID}`,t]))}var Bk=new Set([Zh]),Nk="beeuni",sb="codex",qk=new Set(Xh);function Gk(e,t){if(t)return t;let n=e.indexOf("/");return n===-1?e:e.slice(0,n)}function Ot(e){return Bk.has(e.modelID)}function Wk(e){return di(e.map(t=>({id:`${t.providerID}:${t.modelID}`,released:t.releaseDate,family:t.family,provider:t.provider??t.providerID})))}function Kk(e){let{connectedProviderIds:t}=e,n=e.freeTier??!1,r=Wk(e.catalogModels),s=rb(e.catalogModels),o=new Map;for(let i of e.pins??[])o.set(`${i.providerID}:${i.modelID}`,i.visibility);return i=>{let a=`${i.providerID}:${i.modelID}`,u=o.get(a);if(u==="hide")return!1;if(i.providerID===Nk){let d=Gk(i.modelID,i.provider),g=d===sb?t?.has(sb)??!1:t?.has(d)??!1;if(qk.has(i.modelID))return!n||i.modelID===eb;if(!g)return!1;if(u==="show"||r.has(a))return!0;let m=s.get(a);if(!m?.releaseDate)return Ot(i);try{let f=new Date(m.releaseDate);if(Number.isNaN(f.getTime()))return Ot(i)}catch{return Ot(i)}return!1}if(u==="show"||r.has(a))return!0;let p=s.get(a);if(!p?.releaseDate)return Ot(i);try{let d=new Date(p.releaseDate);if(Number.isNaN(d.getTime()))return Ot(i)}catch{return Ot(i)}return!1}}function Hk(e,t){return t.search.trim().length>0||e.providerID==="beeuni"||t.selected&&t.selected.providerID===e.providerID&&t.selected.modelID===e.modelID?!0:t.isStoreVisible({providerID:e.providerID,modelID:e.modelID})}function ob(e,t){if(!e||Tn.has(e.providerID)||oe(e.modelID)>0)return e;let n=t.filter(i=>i.providerID===e.providerID&&i.enabled!==!1);if(!n.some(i=>oe(i.modelID)>0))return e;let r=i=>oe(i)===1&&i.slice(i.indexOf(".")+1)===e.modelID,o=(n.find(i=>i.modelID===`global.${e.modelID}`)??n.find(i=>r(i.modelID)))?.modelID??In(n.map(i=>({id:i.modelID,released:i.releaseDate})))?.id;return!o||o===e.modelID?e:{...e,modelID:o}}function Vk(e,t){let n=(t?e?.agentDefaults?.[t]:void 0)??e?.projectDefault??e?.accountDefault??e?.platformDefault;return n?ui(n):void 0}function zk(e){let{models:t,providers:n}=e,r=u=>yi(t,u),s=u=>u.find(p=>!!p&&r(p)),o=(()=>{if(e.configModel){let u=e.configModel.split("/");if(u.length>=2){let[p,...d]=u,g=d.join("/");if(r({providerID:p,modelID:g}))return{providerID:p,modelID:g}}}for(let u of e.recent??[])if(r(u))return u;if(n){let u=n.default||{},p=Array.isArray(n.all)?n.all:[],d=Array.isArray(n.connected)?n.connected:[],g=p.filter(m=>d.includes(m.id));for(let m of g){let f=u[m.id];if(f){let h={providerID:m.id,modelID:f};if(r(h))return h}for(let h of Xr(Object.keys(m.models).map(x=>({id:x})))){let x={providerID:m.id,modelID:h.id};if(r(x))return x}}}})(),i=s(e.picks??[]),a=i??s([e.serverDefault,e.globalDefault,e.agentModel,o]);return{model:ob(a,t),explicit:i,fallback:o}}export{nA as ABORT_REASONS,Pq as ABORT_REASONS_NOT_YET_EMITTED,Ei as ACCOUNTS_LIST_UNAVAILABLE_CODE,Hr as ACTIVE_INSTANCE_COOKIE,Ti as ANALYTICS_UNAVAILABLE_CODE,wA as ATTACHMENT_PART_REF_PREFIX,b as ApiError,J as AuthError,w$ as BEEUNI_TRANSCRIPT_SCHEMA,it as BeeuniMemberError,Ke as BillingError,jA as CONNECTION_FAULT_GRACE_MS,_A as CONNECTOR_POLL_FIRST_DELAY_MS,PA as CONNECTOR_POLL_INTERVAL_MS,SA as CONNECTOR_POLL_WINDOW_MS,Ox as CONTEXT_TOOLS,ah as COST_MARKUP,As as ConnectorApprovalPendingError,Qn as ConnectorCallError,ks as ConnectorPageLimitError,Dx as DEFAULT_CONTEXT_TOOL_TRIGGER_LABELS,ND as DEFAULT_NOTIFICATION_PREFERENCES,iy as DEFAULT_TRANSCRIPT_OPTIONS,fA as DESTRUCTIVE_PHASES,ss as FEATURE_DISABLED_CODE,FR as FEATURE_FLAG_KEYS,Ri as FEATURE_NOT_SUPPORTED_CODE,st as FILE_VERBS,cn as FileExistsError,zt as HeadlessAuthError,zr as HostBoundaryError,hb as IMPERSONATION_HEADER,BD as INBOX_NOTIFICATION_KINDS,ni as INBOX_OBSERVATION_MAX_MS,oW as INITIAL_SETTLED_CONNECTION,rA as INSTANCE_SCOPED_ROUTES,Xb as MAX_PROMPT_ATTACHMENTS_BYTES,Cs as MAX_PROMPT_ATTACHMENT_BYTES,Pu as MAX_PROMPT_ATTACHMENT_FILES,ZN as MEMORY_VERBS,Ci as MODEL_NOT_SERVABLE_CODE,Y_ as NO_GROUP_ACTIVITY_TOOLS,ri as OPTIMISTIC_ABORT_MAX_MS,CW as OPTIMISTIC_COMPACTION_MAX_MS,ei as OPTIMISTIC_RECEIPT_MAX_MS,R1 as PERSISTED_QUERY_CACHE_VERSION,kw as PLUMBING_TOOLS,V1 as PREVIEW_PROBE_TIMEOUT_MS,LI as PROJECT_SESSION_NAME_LOOKUP_LIMIT,FI as PROJECT_SESSION_PAGE_DEFAULT_LIMIT,S_ as PROJECT_SESSION_PAGE_MAX_LIMIT,Ii as PROVISION_IN_FLIGHT_CODE,Fs as PublicSessionShareError,Oq as RUNTIME_NOT_READY_MARKERS,k$ as RUNTIME_PERMISSION_CAPABILITIES,A$ as RUNTIME_PERMISSION_REPLIES,lt as RequestTooLargeError,nn as RuntimeNotReadyError,Ro as SANDBOX_FS_ROOTS,$e as SANDBOX_PORTS,qA as SERVER_COMPACTION_REVALIDATE_MS,ti as SERVER_OBSERVATION_MAX_MS,NW as SESSION_LIST_STATUS,WW as SESSION_NOTICE,Q_ as STANDALONE_TOOLS,Rn as STREAM_OBSERVATION_MAX_MS,Vr as SandboxNotReadyError,Pt as SessionNotReadyError,Ms as SessionStartError,hW as TURN_END_LEDGER_LAG_MS,xP as TURN_ERROR_CODES,jW as WAKE_ESCALATION_COOLDOWN_MS,DW as WAKE_MAX_RESTARTS,OW as WAKE_NO_PROGRESS_MS,_o as WIRE_ID_BACKDATE_MS,Ze as WIRE_ID_CLOCK_TOLERANCE,Fe as WIRE_ID_TIME_MASK,Zt as WIRE_ID_TIME_SCALE,hP as WIRE_MESSAGE_ID,Qk as __getConfigResolver,Yk as __setConfigResolver,Sq as abortErrorReason,ta as acceptAccountInvite,pG as acceptInvite,Dd as actReviewItem,Cc as activateConnection,Ec as addComputerToProject,ad as addGroupMembers,bg as addMarketplaceSource,UW as advanceWakeEscalation,_w as allDescendantIds,Ih as appendPreviewToken,Da as approveProjectAccessRequest,e0 as approveTask,zn as archiveProject,c0 as assignTicket,Wa as attachGroupToProject,go as authMfa,uo as authUser,M as authenticatedFetch,Xn as authenticatedRequest,K1 as authorizePreviewUrl,c as backendApi,uk as beeuniAppViewerToken,pk as beeuniBinding,IP as beeuniPty,Lh as beeuniToken,HT as bindSlackIdentity,VT as bindTeamsIdentity,nc as brokerProjectSecretRequest,T1 as browserKeyValueStorage,oA as buildInstancePath,X1 as buildPresentationTemplateImageUrl,J1 as buildPresentationTemplatePdfUrl,Ch as buildPreviewAuthEndpoint,d1 as buildPublicTemplateUrl,DA as buildRuntimePresentationConversionUrl,du as buildSandboxTemplate,Ew as buildScrapeFailureResults,qU as buildStaticFileHealthPreviewUrl,NU as buildStaticFileLocalUrl,BU as buildStaticFilePreviewUrl,FS as buildStaticFileServicePath,bK as buildTunnelEventStreamUrl,VU as buildWebProxyUrl,jd as bulkActReviewItems,ME as bulkDeletePolicies,OE as bulkImportPolicies,PB as burstSummary,SB as burstSummaryLabel,mt as callConnector,nO as cancelAccountDeletion,Ji as cancelAccountInvite,Zq as cancelSandbox,TG as cancelSandboxUpdate,dp as cancelScheduledChange,up as cancelSubscription,zG as checkAccessEmail,rB as childMapByParent,UG as claimComputer,JS as claimNext,OT as claimPerSeatBilling,ol as claimWarmProjectSession,Dy as classifyPart,MA as classifyPreviewProbeStatus,AP as classifyPtyClose,fw as classifyTurn,lB as cleanErrorMessage,CB as cleanResultSnippet,WN as cleanWorkerOutput,ak as clearBeeuniAppViewerCache,Oi as clearImpersonationSession,Kl as clearModelDefault,kI as clearSessionFresh,Fu as closeChangeRequest,$0 as closeMilestone,ZL as collectTurnParts,l0 as commentTicket,Nu as commitSessionChanges,TW as compactionExpiryAtMs,wB as compactionTurnInfo,JL as compareMessagesForDisplay,XS as completeInFlight,kp as completeSlackInstall,Rp as completeTeamsInstall,Wh as composerSelectableAgents,ih as computeStatusFromPart,yp as configureAutoTopup,ts as configureBeeuni,ap as confirmCheckoutSession,Dp as connectEmail,wp as connectSlack,sW as connectionFromHealth,rW as connectionIsFaulted,IC as connectionSharedWithEveryone,Hb as connectorConnect,Vb as connectorFinalize,b1 as connectorHeadline,qB as contextLabelForTool,gL as contextToolSummary,mL as contextToolTrigger,PO as convertPresentationToGoogleSlides,Z1 as convertRuntimePresentation,Rr as copyFile,bp as costExportUrl,_W as countLiveInboxPrompts,kO as countReviewItemsBySegment,Bi as createAccount,ag as createAccountAuditWebhook,pc as createAccountSecretResource,Qd as createAccountToken,Sg as createApp,Ig as createAppAccessSession,Eg as createAppDeployment,vg as createAppToken,Vg as createAppVolume,Jg as createAppVolumeSnapshot,GB as createArtifactKind,Rd as createAssignment,EM as createAuditWebhook,fG as createBackup,VS as createBeeuni,sf as createBeeuniPty,fo as createBeeuniSession,ip as createCheckoutSession,Kc as createConnector,f1 as createConnectorLinkInfoCache,kr as createFile,Xp as createGatewayKey,rd as createGroup,nk as createHttpSessionSyncController,DG as createInstance,nD as createMarketplaceInstallSession,D0 as createMilestone,Kk as createModelVisibility,xd as createOAuthClient,MT as createPerSeatCheckout,I1 as createPersistedQueryCache,IE as createPolicy,cp as createPortalSession,da as createProject,P0 as createProjectAgent,tg as createProjectCliToken,ga as createProjectRepo,za as createProjectResourceGrant,ht as createProjectSession,_a as createProjectSkill,Cl as createProjectTrigger,Yf as createPromptAttachmentController,md as createRole,_K as createSSEStream,Hq as createSandbox,Ld as createSandboxShare,uu as createSandboxTemplate,CI as createSavedCopyStore,GE as createScimToken,wM as createServiceAccountApi,ir as createSessionPrompt,nl as createSessionPublicShare,YS as createSessionQueue,Wd as createSessionReminder,cM as createSsoGroupMapping,J$ as createTask,o0 as createTicket,PK as createTunnelEventStream,Hu as currentSavedCopyStore,na as declineAccountInvite,dG as declineInvite,rO as deleteAccountImmediately,mc as deleteAccountSecretResource,wg as deleteApp,Ug as deleteAppDeployment,OM as deleteAuditWebhook,hG as deleteBackup,I0 as deleteBeeuniProject,Vc as deleteConnector,Zc as deleteConnectorCredential,G0 as deleteCredential,OD as deleteDriveFile,nf as deleteEnv,kt as deleteFile,Qp as deleteGatewayBudget,Ta as deleteGitHubInstallation,od as deleteGroup,jG as deleteInstance,F0 as deleteMilestone,Ad as deleteOAuthClient,cc as deletePersonalProjectSecret,EE as deletePolicy,x0 as deleteProjectAgent,sc as deleteProjectProviderOAuth,Ya as deleteProjectResourceGrant,ic as deleteProjectSecret,hl as deleteProjectSession,Tl as deleteProjectTrigger,qt as deletePromptAttachment,hd as deleteRole,pu as deleteSandboxTemplate,AM as deleteServiceAccountApi,pl as deleteSessionPrompt,Bs as deleteSessionReminder,Vd as deleteSessionReminders,uM as deleteSsoGroupMapping,iM as deleteSsoProvider,t0 as deleteTask,p0 as deleteTicket,gm as deleteUserProviderConnection,ea as describeAccountInvite,Ps as describeConnectorTool,Gg as destroyAppMachine,Yg as destroyAppVolume,Ha as detachGroupFromProject,DS as detectLocalhostUrls,VW as directSubsessions,vM as disableServiceAccountApi,jp as disconnectEmail,A1 as disconnectGitHubApp,Ip as disconnectSlack,OC as discoverConnectionOAuth2,DC as discoverConnectionOAuth2Resource,Hc as discoverConnectorAuth,Qq as discoverLocalSandbox,kD as dismissDriveConflict,l1 as downloadAccountAudit,CD as downloadDriveFile,rU as dropClientForUrl,iU as dropPublicClientForUrl,nx as editQueued,dl as editSessionPrompt,QS as enqueue,b0 as ensurePmSession,EA as ensurePreviewSessionCookie,TC as ensureProjectConnectorConnection,mA as ensureSandbox,sl as ensureWarmProjectSession,wP as env,io as exchangeCode,Kg as execInApp,og as exportAccountAudit,he as extractGatewayErrorDetails,vn as extractInstanceRoute,Av as extractSkillBaseDir,mq as extractSkillContent,xv as extractSkillFiles,HN as extractWorkerPreview,ZS as failInFlight,fN as fallbackBusyRowAfterTurnId,Ko as familyForTool,Si as featureDisabledKey,Am as featureFlags,IT as fetchAccountStateWithToken,OR as fetchAccountsWithToken,D1 as fetchAttachmentPart,Fh as fetchBeeuniAppViewer,qT as fetchCostExportCsv,bu as fetchProjectArchive,dI as fetchProjectFileRaw,HR as fetchProjectsForAccountWithToken,wm as fetchSessionAttachment,aS as fileDownloadRequest,QN as filePhase,YN as fileVerb,_S as files,Ws as finalizeAppArtifact,t1 as finalizeConnectorSetupLink,NI as findActiveTranscriptShare,vr as findFiles,eB as findLastTextPart,gj as findSessionAttachments,Ar as findText,Ml as fireProjectTrigger,cu as fixSandboxWithAgent,Lk as flattenModels,JB as flattenThought,Zg as forkAppVolume,wi as formatBillingErrorForUI,UN as formatCost,DN as formatDuration,pB as formatJsonFailureOutput,eN as formatMessageDay,tN as formatMessageExact,jq as formatOpenCodeRuntimeError,RB as formatRawOutput,gA as formatRuntimeError,FN as formatTokens,ux as formatTranscript,_N as freshSendHint,zS as generateSessionId,Ni as getAccount,Gi as getAccountBranding,eO as getAccountDeletionStatus,Zl as getAccountState,ep as getAccountStateMinimal,aA as getActiveInstanceIdFromCookie,fO as getAdminBootModes,pO as getAdminProviderAnalytics,cO as getAdminProviderDistribution,gO as getAdminProviderFallback,sO as getAdminRole,qx as getAgentCardLabel,ST as getAgentConfig,w0 as getAgentPersona,RG as getAllVersions,nB as getAnsweredQuestionParts,qs as getApp,kg as getAppAccess,Ag as getAppAuthEnv,Og as getAppDeployment,Dg as getAppDeploymentLogs,XO as getApprovalLink,Ft as getAuthToken,xC as getAuthTokenWithRetry,fp as getAutoTopupSettings,ET as getAutoTopupSetupStatus,k0 as getBeeuniProject,R0 as getBeeuniProjectBySession,cf as getBeeuniPtyWebSocketUrl,rp as getBillingCreditBreakdown,op as getBillingTierConfigurations,np as getBillingTransactionsSummary,sp as getBillingUsageHistory,Ou as getChangeRequest,Du as getChangeRequestDiff,ju as getChangeRequestMergePreview,IL as getChildSessionError,Ty as getChildSessionId,TL as getChildSessionToolParts,et as getClient,Ie as getClientForUrl,Jc as getConnectStatus,MC as getConnectionOAuth2Application,LC as getConnectionOAuth2Status,BC as getConnectionPolicies,Lt as getConnectorCatalog,qc as getConnectorConfig,Bc as getConnectorPolicies,ZG as getConnectorSetupLink,NT as getCostSummary,iA as getCurrentInstanceIdFromPathname,Aq as getCurrentInstanceIdFromWindow,Af as getCurrentProject,Ql as getDefaultAccountState,OL as getDiagnostics,Nx as getDirectory,vs as getDiscoverConnector,HC as getDiscoverIntegration,em as getDriveFileUrl,Mp as getEmailInstallation,Op as getEmailMode,NM as getEnterpriseDemo,wr as getFileStatus,Cy as getFileWithDir,Bx as getFilename,SD as getFolderAccess,yA as getFullChangelog,Kp as getGatewayBreakdown,zp as getGatewayBudgets,Vp as getGatewayErrors,Jp as getGatewayKeys,qp as getGatewayLog,Gp as getGatewayOverview,Up as getGatewayRoutingPolicy,Wp as getGatewaySeries,Hp as getGatewaySessions,S1 as getGitHubAppStatus,xa as getGitHubInstallation,_O as getGoogleAuthUrl,nd as getGroup,RL as getHiddenToolParts,Pb as getImpersonationSession,lG as getInvite,OG as getJustavpsServerTypes,kG as getLatestSandboxVersion,i1 as getMaintenanceConfig,Ea as getManagedGitBackend,qR as getManagedGitStatus,fg as getMarketplaceCatalogItem,yg as getMarketplaceCatalogItemFile,zE as getMfaRequired,M0 as getMilestone,Gl as getModelDefaults,om as getNotificationPreferences,Sd as getOAuthClient,JG as getOAuthConsentRequest,Eq as getOpenCodeConfigInvalidError,vL as getPartText,hM as getPatPolicy,DL as getPermissionForTool,Gn as getProject,v0 as getProjectActivity,Cu as getProjectCommit,Iu as getProjectCommitDiff,Wn as getProjectDetail,PD as getProjectDrive,Tu as getProjectFileHistory,pa as getProjectGitToken,Kn as getProjectLlmCatalog,BR as getProjectLlmCatalogProviders,mr as getProjectModelAccess,Hn as getProjectModelPicker,Jn as getProjectSandboxHealth,GR as getProjectSandboxProviderTransition,or as getProjectSession,bl as getProjectSessionConfigState,Sl as getProjectSessionScope,JD as getProjectStarterSuggestions,gp as getProrationPreview,Wq as getProviders,GU as getProxyBaseUrl,oU as getPublicClientForUrl,HG as getPublicMarketplaceItem,VG as getPublicMarketplaceItemFile,DO as getPublicSessionShare,jO as getPublicSessionShareMessages,s1 as getPublicShareByToken,g1 as getPublicTemplate,jL as getQuestionForTool,sE as getReferralCode,aE as getReferralStats,LN as getRetryInfo,BN as getRetryMessage,Md as getReviewItem,dd as getRolePermissions,gd as getRoleUsage,Qo as getRuntimeConfigInvalidError,PG as getSSHConnection,Kq as getSandbox,Vq as getSandboxById,Lq as getSandboxPortUrl,FG as getSandboxProvisionStatus,LG as getSandboxProvisionStreamUrl,AG as getSandboxUpdateStatus,Ph as getSandboxUrl,ze as getSandboxUrlForExternalId,n1 as getSecretSetupLink,Co as getServerHealth,H0 as getServiceLogs,il as getSessionAudit,$N as getSessionCost,dr as getSessionCostRecord,V_ as getSessionDrives,Mf as getSessionHealth,Al as getSessionMessageAuthors,kl as getSessionModelUsage,qI as getSessionOpenBundle,JE as getSessionOversight,Ju as getSessionParticipants,gM as getSessionPolicy,el as getSessionPreviewCandidates,bc as getSessionProviderSecretPool,al as getSessionTranscript,cl as getSessionTranscriptSync,ul as getSessionTurn,Xu as getSessionWatch,wN as getShellModePart,Tp as getSlackChannelFile,xp as getSlackInstallation,Cp as getSlackManifest,vp as getSlackMode,nM as getSsoProvider,LS as getStaticFileHealthPath,hs as getSupabaseAccessToken,Nb as getSupabaseAccessTokenWithRetry,z$ as getTask,Q$ as getTaskStatus,oD as getTemplate,r0 as getTicket,EL as getToolInfo,Uo as getToolPrimaryArg,lx as getTranscriptFilename,jN as getTurnCost,TN as getTurnError,MN as getTurnErrorDetails,EN as getTurnErrorRawText,ON as getTurnStatus,hp as getUsageRollup,c1 as getUserRolesWithToken,Eu as getVersionDiff,am as getWebPushPublicKey,CN as getWorkingState,fc as grantAccountSecretResource,iG as grantSandboxProjectAccess,wT as grantSecretToAgent,XL as groupMessagesIntoTurns,uN as groupShowSegments,Xy as groupSteps,NN as hasDiffs,LU as hasLocalhostUrls,US as hasPreviewTarget,iB as hasRetryingAssistantTurn,DP as heartbeatGapEvent,fl as holdSessionPrompts,Ud as humanizeReviewActionPath,jr as humanizeSearchQuery,My as humanizeToolName,Di as impersonationHeaders,sM as importSsoProviderFromMetadata,bW as inboxObservationSupersedes,Dh as initialWakeEscalationState,Ne as inputPath,iD as installTemplate,gl as interruptSessionPrompt,bs as invalidateTokenCache,Yi as inviteAccountMember,La as inviteProjectMember,ua as inviteRepoCollaborator,Kr as isAbortError,vb as isAdminBypassEnabled,_L as isAgentPart,ES as isAppRouteUrl,AL as isAttachment,vA as isAttachmentPartRef,jt as isAuthFailure,xi as isBillingError,PL as isCompactionPart,ns as isConfigured,dL as isContextTool,vG as isDestructivePhase,ik as isEmptyConversation,Vs as isEmptyShowPart,uB as isErrorOutput,QU as isExternalUrl,Pi as isFeatureDisabledError,Iy as isFilePart,bb as isImpersonationSessionLive,wq as isInstanceDetailPath,sA as isInstanceScopedAppPath,HU as isInternalLocalhostUrl,Pm as isInvisibleActivityPart,aC as isInviteSent,RN as isLastUserMessage,HA as isLegacyMigratedSession,LR as isManagedGithubProject,_m as isNoGroupActivityTool,yi as isOfferedModel,Mq as isOpenCodeConfigInvalidError,Wu as isPaintableSavedCopy,xL as isPatchPart,C1 as isPersistableQueryKey,KU as isPreviewUrl,BS as isProxiableLocalhostUrl,rj as isQuestionTool,Me as isReasoningPart,Pw as isRetryableTurnError,cA as isRuntimeConfigInvalidError,pA as isRuntimeNotReadyResponse,Ef as isRuntimeReady,Dq as isRuntimeStartingError,kn as isSandboxNotReadyError,Xs as isSelectableAgent,kf as isServerReachable,dj as isSessionAttachmentRef,Gu as isSessionFresh,rT as isSessionStartError,nj as isShellActivityTool,Pv as isShellMode,KN as isShortOutput,ZD as isShowContentUnavailable,yr as isShowPayloadEmpty,SL as isSnapshotPart,Sm as isStandaloneActivityTool,wL as isStepPart,Yr as isSubdomainPreviewUrl,Ee as isTextPart,X as isToolPart,CL as isToolPartHidden,v$ as isTurnErrorCode,hf as isUnderSandboxRoot,YU as isWebProxyUrl,_P as isWireIdAheadOf,oa as leaveAccount,Ca as linkGitHubInstallation,Pa as linkRepository,rg as listAccountAudit,ig as listAccountAuditWebhooks,Qi as listAccountInvites,zi as listAccountMembers,wE as listAccountResourceGrants,lc as listAccountSecretResources,fM as listAccountSessions,Yd as listAccountTokens,Li as listAccounts,UE as listActions,uO as listAdminSandboxes,ld as listAgentIdentities,wc as listAllConnections,Rg as listAppAgents,Mg as listAppDeployments,Lg as listAppMachines,Qg as listAppVolumeSnapshots,Hg as listAppVolumes,Pg as listApps,kd as listAssignments,DM as listAuditEvents,TM as listAuditWebhooks,mG as listBackups,C0 as listBeeuniProjectSessions,A0 as listBeeuniProjects,rf as listBeeuniPty,tp as listBillingTransactions,Mu as listChangeRequests,QT as listChannelBindings,d0 as listColumns,WC as listConnectSections,GC as listConnectToolkits,xc as listConnections,Ss as listConnectorAccounts,_s as listConnectorTools,jc as listConnectors,BT as listCostByProject,B0 as listCredentialEvents,L0 as listCredentials,ws as listDiscoverConnectors,KC as listDiscoverIntegrations,Qc as listDiscoverSections,AD as listDriveConflicts,RD as listDriveFiles,K_ as listDriveFolder,DD as listDriveVersions,ef as listEnv,mg as listFeaturedMarketplaces,m0 as listFields,ln as listFiles,vD as listFolderPrincipals,Np as listGatewayLogs,wa as listGitHubInstallations,Aa as listGitHubRepositories,ka as listGitHubRepositoryBranches,id as listGroupMembers,yE as listGroupProjectGrants,td as listGroups,va as listLinkableGitHubInstallations,Ma as listManagedGitRepositories,dg as listMarketplaceCatalogItems,hg as listMarketplaceSources,gg as listMarketplaces,hE as listMemberGroups,bE as listMemberProjectAccess,O0 as listMilestoneEvents,E0 as listMilestones,Zi as listMyAccountInvites,rm as listNotifications,Pd as listOAuthClients,Xd as listOAuthGrants,Qa as listPendingApprovals,Ba as listPendingProjectInvites,Id as listPermissions,zc as listPipedreamApps,Yc as listPipedreamSections,CE as listPolicies,$a as listProjectAccess,Oa as listProjectAccessRequests,pd as listProjectAgentIdentities,_0 as listProjectAgents,sg as listProjectAudit,ku as listProjectBranches,eg as listProjectCliTokens,Ru as listProjectCommits,fu as listProjectDirectory,mu as listProjectFiles,Ga as listProjectGroupGrants,ym as listProjectPersonalProviders,ru as listProjectPolicies,rc as listProjectProviderOAuth,zd as listProjectReminders,Va as listProjectResourceGrants,ou as listProjectSandboxTemplates,gu as listProjectSandboxes,Za as listProjectSecrets,yt as listProjectSessions,Yu as listProjectSessionsPage,iu as listProjectSnapshots,Dl as listProjectTriggerEventApps,Ol as listProjectTriggerEventTypes,Rl as listProjectTriggers,dt as listProjects,ca as listProjectsForAccount,WG as listPublicMarketplaceItems,KG as listPublicMarketplaces,cE as listReferrals,Ed as listReviewItems,ud as listRoles,oG as listSandboxProjectMembers,Fd as listSandboxShares,Yq as listSandboxes,qE as listScimTokens,xM as listServiceAccountsApi,K0 as listServiceTemplates,W0 as listServices,qC as listSessionConnectRequests,_p as listSessionCosts,$D as listSessionDrives,ll as listSessionPrompts,_c as listSessionProviderSecretPools,tl as listSessionPublicShares,Gd as listSessionReminders,Ja as listSessionsNeedingInput,qO as listSignedInDevices,aM as listSsoGroupMappings,Y$ as listTaskEvents,V$ as listTasks,y0 as listTemplates,s0 as listTicketEvents,n0 as listTickets,pm as listUserProviderConnections,tk as loadHttpSessionHistory,Je as loadPreviewUrlTemplate,Ny as looksLikeError,jB as looksLikeHtml,kB as looksLikeJsonPayload,ED as makeDriveFolder,CO as mapApiReviewItem,$G as markInstanceError,sm as markNotificationsRead,rr as markSessionFresh,Ym as maxWireIdClock,eq as memoryRelPath,QB as mergeBurstSteps,Uu as mergeChangeRequest,ZB as messageCreatedAt,lv as messageTime,dO as migrateAdminSandboxProvider,Po as mintWireMessageId,Jm as mintWireMessageIdAbove,mn as mkdir,Hk as modelInDefaultView,_k as modelRefToKey,MD as moveDriveFile,Qy as narrateFailedStep,Yy as narrateStep,qr as narrationToolName,jP as narrowChatEvent,PP as newestWireIdClock,h1 as nextConnectorPollDelay,pe as normalizeActivityToolName,Cq as normalizeAppPathname,JU as normalizeExternalInput,z as normalizeName,Ey as normalizeToolName,YA as notifyHostSignal,$u as openChangeRequest,vo as openEventStream,p1 as openStressTestStream,nu as paginateConnector,jn as parseBillingError,IB as parseEmbeddedFailure,bj as parseFlagOverride,Aw as parseJsonFailure,Er as parseLocalhostUrl,tq as parseMemoryView,Tq as parseOpenCodeErrorPayload,iq as parsePresentationOutput,Tf as parseProxyHop,cq as parseQuestionAnswersFromOutput,pq as parseReadOutput,_h as parseRuntimeErrorPayload,Tw as parseScrapeInputUrls,Mw as parseScrapeOutput,Nf as parseSubdomainUrl,VN as parseTaskRows,zU as parseWebProxyUrl,Ky as parseWebSearchOutput,qy as partOutcome,T0 as patchBeeuniProject,sq as patchVerb,Uk as pickerProviderList,Wc as pipedreamConnect,Oc as pipedreamConnectConnection,eu as pipedreamFinalize,Dc as pipedreamFinalizeConnection,k as platformConfig,FC as pollConnectionOAuth2DeviceAuthorization,fs as pollProjectProviderOAuth,fm as pollUserProviderOAuth,Bp as previewGatewayRoute,YE as previewMfaRequired,zT as previewSlackIdentity,YT as previewTeamsIdentity,bd as probeEffectivePermission,_d as probeEffectivePermissions,z1 as probePreviewPort,_u as projectArchiveRequest,IW as projectCompacting,bk as projectConfigAgentsToOpenCodeAgents,Gh as projectConfigAgentsToRuntimeAgents,nW as projectSessionConnection,zW as projectSessionForRuntimeId,nT as projectSessionStartSeed,SW as projectWorking,ma as provisionProject,NR as provisionProjectStream,VR as provisionProjectWithToken,Lf as proxyLocalhostUrl,WU as proxyUrlToInternal,mp as purchaseCredits,EC as putConnectionOAuth2Application,py as rawErrorText,eG as reactivateSandbox,lp as reactivateSubscription,ci as readBeeuniMember,dn as readBlob,ID as readDriveFile,pn as readFile,hu as readProjectFile,av as reasoningIsRunning,au as rebuildProjectSnapshot,vc as reconcileConnection,Ac as reconcileMemberConnection,z0 as reconcileServices,QG as recordPlatformLogout,Go as recoverLinkResults,oE as refreshReferralCode,Yt as refreshSession,Gs as registerAppArtifact,jC as registerConnectionOAuth2Client,tm as registerDeviceToken,Y0 as registerService,cm as registerWebPushSubscription,ja as rejectProjectAccessRequest,ML as relativizePath,_l as reloadProjectSessionConfig,Pl as reloadProjectSessionConfigStream,ug as removeAccountAuditWebhook,Hi as removeAccountBrandingAsset,ra as removeAccountMember,af as removeBeeuniPty,cd as removeGroupMember,_g as removeMarketplaceSource,tx as removeQueued,Tc as renameConnection,Ir as renameFile,zq as renameSandbox,Lu as reopenChangeRequest,U0 as reopenMilestone,rx as reorderQueued,g0 as replaceColumns,f0 as replaceFields,Sa as replaceProjectRepository,h0 as replaceTemplates,tO as requestAccountDeletion,Bu as requestChangesOnChangeRequest,iC as requestProjectAccess,pg as requestProjectConnector,lg as requestProjectSecret,TT as requestTopUp,dk as requireBeeuniMember,Xi as resendAccountInvite,qa as resendPendingProjectInvite,Vi as resetAccountBranding,sU as resetClient,Lp as resetGatewayRoutingPolicy,ao as resetPassword,aU as resetPublicClient,IG as resetSandboxUpdateStatus,Xa as resolveApproval,hk as resolveComposerAgent,zk as resolveComposerModel,y1 as resolveConnectorStart,Vk as resolveModelDefault,BI as resolvePublicShareUrl,$B as resolveScrapeResults,PN as resolveWorkingTurn,CT as resolvedPlan,qg as restartAppMachine,ar as restartProjectSession,Jq as restartSandbox,Xg as restoreAppVolume,yG as restoreBackup,jD as restoreDriveVersion,gc as retryAccountSecretResource,ex as retryFailed,ml as retrySessionPrompt,q0 as revealCredential,AO as reviewItemTarget,M_ as reviewSegmentForStatus,RO as reviewVerdictForStatus,yc as revokeAccountSecretResourceGrant,yM as revokeAccountSession,Jd as revokeAccountToken,Cd as revokeAssignment,Rc as revokeConnection,Zp as revokeGatewayKey,Zd as revokeOAuthGrant,Na as revokePendingProjectInvite,Fa as revokeProjectAccess,ng as revokeProjectCliToken,aG as revokeSandboxProjectAccess,Bd as revokeSandboxShare,WE as revokeScimToken,rl as revokeSessionPublicShare,nt as rewriteLocalhostUrl,Fg as rollbackApp,VA as rootRuntimeSession,dc as rotateAccountSecretResource,vd as rotateOAuthClientSecret,Rs as runConnector,ed as runGatewayPlayground,pC as runProjectProviderOAuthFlow,oi as runtimeSessionsOf,SS as runtimeSupports,CP as sanitizePtyChunk,Ra as saveGitHubInstallation,dm as saveUserProviderApiKey,ok as savedCopyEmptyRoot,Wg as scaleApp,pp as scheduleDowngrade,Sc as searchConnectorTools,yu as searchProjectFiles,oN as segmentTurn,Sj as selectableProjectAgents,ro as sendMagicLink,uE as sendReferralEmails,EW as serverCompactionRevalidateAtMs,V0 as serviceAction,GW as sessionConnectionLabel,qW as sessionListStatus,vl as sessionModelPin,UI as sessionParentId,WI as sessionPromptActions,sT as sessionStartKey,hc as setAccountSecretResourceAccess,kq as setActiveInstanceCookie,yO as setAdminBootModes,wb as setAdminBypass,lO as setAdminProviderDistribution,mO as setAdminProviderFallback,Vl as setAgentScope,SC as setBootstrapAuthToken,PC as setCachedAuthToken,NC as setConnectionPolicies,Fc as setConnectorAuthorizationStrategy,Xc as setConnectorCredential,Uc as setConnectorCredentialMode,Gc as setConnectorName,Nc as setConnectorPolicies,VC as setConnectorSecretBinding,Lc as setConnectorSensitive,Ic as setDefaultConnection,qM as setEnterpriseDemo,tf as setEnv,Yp as setGatewayBudget,Fp as setGatewayRoutingPolicy,w1 as setGitHubAppFromExisting,v1 as setGitHubAppPat,iR as setImpersonationSession,a1 as setMaintenanceConfig,FE as setMemberSuperAdmin,QE as setMfaRequired,Wl as setModelDefault,ac as setPersonalProjectSecret,fr as setProjectModelAccess,pT as setProjectModelEnablement,ba as setProjectOnboardingComplete,KR as setProjectOnboardingProfile,hm as setProjectPersonalProvider,su as setProjectPolicies,tc as setProjectSecretStrategy,wl as setProjectSessionModel,xl as setProjectSessionScope,Qu as setProjectSessionSharing,El as setProjectTriggersActivation,II as setSavedCopyStore,XE as setSessionOversight,Pc as setSessionProviderSecretPool,Zu as setSessionWatch,iW as settleSessionConnection,_G as setupSSH,Mc as shareConnection,xD as shareFolder,sj as shellActivityGroupLabel,yh as shellExitCode,xb as shouldAttachImpersonation,IN as shouldHideResponsePart,$x as shouldShowToolPart,mN as shouldSuppressWorkingTurnBusy,lN as showGroupItems,oh as showTurnBusyIndicator,no as signInWithPassword,oo as signInWithProvider,po as signInWithSso,mo as signOut,GO as signOutDevice,to as signUp,yq as skillDocumentPath,fq as skillInputDir,sB as sortSessions,kL as splitUserParts,jg as startApp,Bg as startAppMachine,$C as startConnectionOAuth2Authorization,UC as startConnectionOAuth2DeviceAuthorization,e1 as startConnectorSetupLink,x1 as startGitHubAppManifest,ms as startProjectProviderOAuth,Ye as startProjectSession,Nl as startProjectSessionOrThrow,o1 as startSessionWithToken,Z$ as startTask,mm as startUserProviderOAuth,Gy as stepLabel,$g as stopApp,Ng as stopAppMachine,cr as stopProjectSession,Xq as stopSandbox,Ia as storeGitHubUserToken,$L as stripAnsi,vq as stripInstancePrefix,te as stripTrailingSlashes,YG as submitAccessRequest,u1 as submitDemoRequest,XG as submitOAuthConsent,Od as submitReviewItem,r1 as submitSecretSetupLink,aR as subscribeToImpersonation,kR as supabaseClient,$c as syncConnectors,DT as syncSubscription,cU as systemReload,tt as toDaemonPath,Rq as toInstanceAwarePath,NS as toInternalUrl,un as toSandboxAbsolutePath,WL as toToolView,bf as toWorkspaceRelative,Fo as toolInfo,re as toolKind,Jv as toolViewModel,CG as triggerSandboxUpdate,vP as triggersRequest,BA as turnEndCause,kW as turnEndNotice,tB as turnHasSteps,yN as turnIsConfirmedActive,hN as turnRendersQueued,KW as turnRetryLabel,u0 as unassignTicket,nm as unregisterDeviceToken,um as unregisterWebPushSubscription,wD as unshareFolder,de as unwrapError,cg as updateAccountAuditWebhook,Wi as updateAccountBranding,sa as updateAccountMemberRole,qi as updateAccountName,xT as updateAgentConfig,xg as updateApp,Cg as updateAppAccess,zg as updateAppVolume,MM as updateAuditWebhook,of as updateBeeuniPty,qu as updateChangeRequest,JT as updateChannelBinding,kc as updateConnectionCredential,$p as updateEmailPolicy,ya as updateExperimentalFeature,fa as updateFeatureFlag,sd as updateGroup,j0 as updateMilestone,im as updateNotificationPreferences,wd as updateOAuthClient,co as updatePassword,bM as updatePatPolicy,TE as updatePolicy,Vn as updateProject,Ua as updateProjectAccess,S0 as updateProjectAgent,zl as updateProjectDefaultAgent,Ka as updateProjectGroupGrant,ha as updateProjectSandboxProvider,yl as updateProjectSession,Il as updateProjectTrigger,fd as updateRole,yd as updateRolePermissions,lu as updateSandboxTemplate,mM as updateSessionPolicy,Ls as updateSessionReminder,Hd as updateSessionReminders,X$ as updateTask,WR as updateTemplateWarmPool,i0 as updateTicket,a0 as updateTicketStatus,lo as updateUserMetadata,Ki as uploadAccountBrandingAsset,Tg as uploadAppArtifactArchive,xs as uploadConnectorAttachment,TD as uploadDriveFile,gn as uploadFile,mS as uploadNativeFile,nr as uploadPromptAttachment,xm as uploadSessionAttachment,Ep as uploadSlackChannelFile,on as uploadTimeoutMsForBytes,N0 as upsertCredential,oc as upsertProjectGitCredential,ec as upsertProjectSecret,rM as upsertSsoProvider,la as validateProjectManifest,iE as validateReferralCode,ia as validateToken,fk as verifyBeeuniToken,tE as verifyGatewayProvider,so as verifyOtp,oM as verifySsoDomain,LW as wakeEscalationAttemptSummary,FW as wakeEscalationNote,$W as wakeProgressFingerprint,xt as wireIdClock,en as wireIdClockAt,wt as wireIdClockDelta,xW as workingExpiryAtMs,bN as workingTurnDrawsBusyRow,oj as writeActivityGroupLabel,Cr as writeFile,Wo as wsDomain,DB as wsFavicon,OB as wsRootDomain};
|
|
94
|
+
`),s=0;for(;s<n.length&&s<r.length&&n[s]===r[s];)s++;let o=n.length,i=r.length;for(;o>s&&i>s&&n[o-1]===r[i-1];)o--,i--;let a=[];for(let c=0;c<s;c++)a.push({type:"unchanged",text:n[c]});for(let c=s;c<o;c++)a.push({type:"removed",text:n[c]});for(let c=s;c<i;c++)a.push({type:"added",text:r[c]});for(let c=o;c<n.length;c++)a.push({type:"unchanged",text:n[c]});return a}function ak(e){let t=H(e?.oldString),n=H(e?.newString);return t!==void 0&&n!==void 0?[[t,n]]:(Array.isArray(e?.edits)?e.edits:[]).flatMap(s=>{let o=_t(s),i=o&&H(o.oldText),a=o&&H(o.newText);return i!==void 0&&a!==void 0?[[i,a]]:[]})}function ck(e){let t=ak(e.input),n=t.map(([s,o])=>ik(s,o)),r=t.length&&n.every(Boolean)?n.flatMap(s=>s??[]):void 0;return{kind:"file-edit",path:yi(e),diff:r}}var zh=/^Found\s+(\d+)\s+match/i,lk=/^(\/[^:]+?):\s*/,Vh=/Line\s+(\d+):/g;function uk(e){let t=e.trim(),n=t.match(zh),r=n?t.slice(n[0].length).trim():t;if(!r)return[];let s=[];for(let o of r.split(/\n\n+/)){let i=o.trim();if(!i)continue;let a=i.match(lk);if(!a)continue;let c=a[1],p=i.slice(a[0].length),d=[],g;for(Vh.lastIndex=0;(g=Vh.exec(p))!==null;)d.push({line:Number(g[1]),contentStart:g.index+g[0].length,headerStart:g.index});for(let m=0;m<d.length;m++){let y=m+1<d.length?d[m+1].headerStart:p.length,h=p.slice(d[m].contentStart,y).trim();s.push({path:c,line:d[m].line,content:h.endsWith(";")?h.slice(0,-1):h})}}return s}function pk(e){return e.trim().split(`
|
|
95
|
+
`).map(t=>t.trim()).filter(t=>t.startsWith("/")||t.startsWith("./")||t.startsWith("~")).map(t=>({path:t}))}function dk(e){let t=H(e.input?.pattern,e.input?.query)??"";if(e.status==="error"||!e.output)return{kind:"search",pattern:t};let n=zh.test(e.output.trim())?uk(e.output):pk(e.output);return{kind:"search",pattern:t,matches:n.length>0?n.slice(0,200):void 0}}function gk(e){let t=H(e.input?.description,e.input?.title,e.input?.prompt)??e.title,n=H(e.input?.subagent_type,e.input?.agent);return{kind:"task",description:t,agent:n}}function fi(e){let t=_t(e)??{};return{content:H(t.content)??"",status:H(t.status)??"pending",priority:H(t.priority)}}function mk(e){let t=e.input?.todos;if(Array.isArray(t))return{kind:"todo",items:t.map(fi)};if(Array.isArray(e.outputParsed))return{kind:"todo",items:e.outputParsed.map(fi)};let n=_t(e.outputParsed);return n&&Array.isArray(n.todos)?{kind:"todo",items:n.todos.map(fi)}:{kind:"todo",items:[]}}function fk(e){return{kind:"question",questions:(Array.isArray(e.input?.questions)?e.input.questions:[]).map(r=>{let s=_t(r)??{},i=(Array.isArray(s.options)?s.options:[]).flatMap(a=>{let c=_t(a),p=c&&H(c.label);return p?[{label:p,description:c?H(c.description):void 0}]:[]});return{question:H(s.question)??"",header:H(s.header),options:i}})}}function yk(e){let n=e.input&&Object.keys(e.input).length>0?Kh(e.input):void 0,r;return e.outputParsed!==void 0?r=typeof e.outputParsed=="string"?qn(e.outputParsed):Kh(e.outputParsed):e.outputText!==void 0?r=qn(e.outputText):r=e.error,{kind:"generic",label:e.title,inputPretty:n,outputPretty:r}}function hk(e){switch(pe(e.name)){case"web_search":return Yv(e);case"bash":return nk(e);case"read":return rk(e);case"write":return sk(e);case"edit":return ck(e);case"grep":case"glob":return dk(e);case"task":return gk(e);case"todowrite":return mk(e);case"question":return fk(e);default:return yk(e)}}var bk=new Set(["AbortError","MessageAbortedError"]),_k=["operation was aborted","aborted by user","interrupted by user","cancelled by user","canceled by user","request was cancelled","request was canceled","aborterror"],Pk=["unreachable","upstream","econnreset","econnrefused","socket hang up","network","fetch failed","timed out","timeout","gateway","502","503","504"];function Yh(e){let t=e.toLowerCase();return Pk.some(n=>t.includes(n))?!1:_k.some(n=>t.includes(n))}function Sk(e){let t=e.data,n=t&&typeof t=="object"?t.message:void 0;return typeof n=="string"?n:typeof e.message=="string"?e.message:void 0}function ms(e){if(typeof e=="string")return Yh(e);if(!e||typeof e!="object")return!1;let t=e,n=t.name;if(typeof n=="string"&&bk.has(n))return!0;let r=Sk(t);return typeof r=="string"?Yh(r):!1}var xk=["user","runtime-disposed","orphan-finalized","wake"],tW=["orphan-finalized","wake"];function nW(e){if(!e||typeof e!="object")return;let t=e.data;if(!t||typeof t!="object")return;let n=t.reason;if(!(typeof n!="string"||!n))return xk.includes(n)?n:void 0}function Gn(e){if(e instanceof Error)return e.message;if(typeof e=="string")return e;if(e&&typeof e=="object")try{return JSON.stringify(e)}catch{return String(e)}return String(e??"")}function Jh(e){let t=Gn(e).trim();if(!t)return null;let n=[t,t.replace(/^Failed to perform action:\s*/i,"").trim()],r=t.indexOf("{");r>=0&&n.push(t.slice(r));for(let s of n)if(s)try{return JSON.parse(s)}catch{}return null}var sW=Jh;function hi(e){let t=Jh(e);if(!t||typeof t!="object")return null;let n=t;return n.name==="ConfigInvalidError"?n:null}var oW=hi;function wk(e){return hi(e)!==null}var iW=wk,Ak=[/sandbox not ready/i,/sandbox is not (?:ready|running)/i,/opencode (?:session )?(?:is )?not ready/i,/\bsandbox_not_ready\b/,/\bsandbox_lifecycle_unavailable\b/],aW=["runtime_not_ready","sandbox runtime not ready","opencode not ready"],vk=/\bruntime_not_ready\b|sandbox runtime not ready|opencode not ready/i;function kk(e){return vk.test(Gn(e))}function Wn(e){let t=Gn(e);return t?kk(t)||Ak.some(n=>n.test(t)):!1}var Rk=/server url not ready|sandbox is still loading/i;function cW(e){return Rk.test(Gn(e))||Wn(e)}var fs=class extends Error{constructor(t){let n=t?.trim();super(n&&Wn(n)?n:n?`sandbox not ready: ${n}`:"sandbox not ready"),this.name="SandboxNotReadyError"}};function Ck(e){let t=hi(e);if(t){let s=(t.data?.path??"OpenCode config").replace(/^\/workspace\//,""),o=t.data?.issues?.[0]?.message,i=t.data?.issues?.[0]?.path?.join("."),a=i?.startsWith("permission")?"Remove the invalid permission frontmatter entry or replace it with valid OpenCode permission config.":"Fix the invalid config entry, then restart this session.";return{title:"OpenCode config is invalid",message:`${s} is preventing OpenCode from loading. ${a}`,detail:o?`${i?`${i}: `:""}${o}`:void 0}}let n=Gn(e);return Wn(n)?{title:"Session is waking up",message:"This session slept to save compute. Your conversation is safe \u2014 sending a message wakes it back up."}:{title:"The session runtime failed to load",message:n||"The sandbox is running, but its runtime returned an error."}}var lW=Ck;function Qh(e){if(!e.external_id){if(e.base_url)return e.base_url;throw new Error(`Cannot build sandbox URL: missing external_id for ${e.provider} sandbox "${e.sandbox_id}"`)}return`${Ye()}/p/${e.external_id}/${ze.BEEUNI_MASTER}`}function gW(e,t){return e.external_id?`${Ye()}/p/${e.external_id}/${t}`:null}async function bW(){let e=await l.get("/setup/sandbox-providers");if(e.error)throw e.error;return e.data}async function Ik(e){let t=await ut();if(t)return{sandbox:t.sandbox,created:!1};let r=(await kt())[0];if(!r)throw new Error("Create a project before starting a sandbox");let s=await Mt(r.project_id,{...e?.provider?{provider:e.provider}:{}}),o=(await ct(r.project_id,s.session_id))?.sandbox??null;return{sandbox:bo(r,s,o),created:!0}}async function _W(){return(await ut().catch(()=>null))?.sandbox??null}async function PW(e){return{sandbox:(await Ik(e)).sandbox}}async function SW(e){let t=dn(e);return t?(await ut(t).catch(()=>null))?.sandbox??null:null}async function xW(e,t){throw await ut(e)?new Error("Renaming project-session sandboxes is not exposed by the current API"):new Error("Project session sandbox not found")}async function wW(e){let t=dn(e);return(await _o().catch(()=>[])).map(r=>r.sandbox).filter(r=>!t||r.sandbox_id===t||r.external_id===t)}async function AW(){return null}async function vW(e){if(!e)throw new Error("No sandbox selected for workload restart");let t=await ut(e);if(!t)throw new Error("Project session sandbox not found");await vr(t.project.project_id,t.session.session_id)}async function kW(e){if(!e)throw new Error("No sandbox selected to stop");let t=await ut(e);if(!t)throw new Error("Project session sandbox not found");await kr(t.project.project_id,t.session.session_id)}async function RW(e){throw new Error("Cancellation is not exposed for project-session sandboxes")}async function CW(e){throw new Error("Reactivation is not exposed for project-session sandboxes")}async function bi(e,t,n){let r=Qh(e),s=await j(`${le(r)}${t}`,{signal:AbortSignal.timeout(8e3),headers:{"Content-Type":"application/json"},...n});if(!s.ok){let o=await s.text().catch(()=>"");throw new Error(o||`Request failed (${s.status})`)}return await s.json()}async function OW(e,t){return bi(e,`/beeuni/projects/${encodeURIComponent(t)}/members`,{method:"GET"})}async function DW(e,t,n,r="member"){await bi(e,`/beeuni/projects/${encodeURIComponent(t)}/members`,{method:"POST",body:JSON.stringify({user_id:n,role:r})})}async function jW(e,t,n){await bi(e,`/beeuni/projects/${encodeURIComponent(t)}/members/${encodeURIComponent(n)}`,{method:"DELETE"})}var _i="Use the account invite functions (acceptAccountInvite, declineAccountInvite).";async function LW(e){throw G("getInvite",_i)}async function BW(e){throw G("acceptInvite",_i)}async function FW(e){throw G("declineInvite",_i)}async function qW(e){throw new Error("Backups are not exposed for project-session sandboxes")}async function GW(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function WW(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function KW(e,t){throw new Error("Backups are not exposed for project-session sandboxes")}async function HW(e){throw new Error("SSH setup is not exposed for project-session sandboxes")}async function zW(e){throw new Error("SSH connection details are not exposed for project-session sandboxes")}async function Tk(e){let t=e?`?channel=${e}`:"",r=await(await Ie(`${Ye()}/platform/sandbox/version/latest${t}`,{headers:{Accept:"application/json"}},{},"Version check failed")).json();try{let s=await Xh(e||"stable");r.changelog=s.find(o=>o.version===r.version)??s[0]??null}catch{r.changelog=null}return r}async function Xh(e){let t=e?`?channel=${e}`:"";return(await(await Ie(`${Ye()}/platform/sandbox/version/changelog${t}`,{headers:{Accept:"application/json"}},{},"Changelog fetch failed")).json()).changelog}async function Ek(){return(await Ie(`${Ye()}/platform/sandbox/version/all`,{headers:{Accept:"application/json"}},{},"All versions fetch failed")).json()}var Kn=class extends Error{constructor(n,r,s){super(n);this.status=r;this.body=s;this.name="HostBoundaryError"}status;body};function Zh(e,t){let n=new Headers(e.headers);return n.set("Accept","application/json"),t&&n.set("Content-Type","application/json"),e.accessToken&&n.set("Authorization",`Bearer ${e.accessToken}`),n}async function eb(e){let t=await e.text().catch(()=>"");if(!t)return null;try{return JSON.parse(t)}catch{return t}}function tb(e,t){if(t&&typeof t=="object"){let n=t;for(let r of["error_description","error","message"])if(typeof n[r]=="string"&&n[r])return n[r]}return typeof t=="string"&&t?t:e.statusText||`HTTP ${e.status}`}async function se(e,t,n){let r=n?.body!==void 0,s=await fetch(`${lt(t.backendUrl)}${e}`,{method:n?.method??"GET",headers:Zh(t,r),...r?{body:JSON.stringify(n.body)}:{},...t.signal?{signal:t.signal}:{},...t.cache?{cache:t.cache}:{},...t.next?{next:t.next}:{}}),o=await eb(s);if(!s.ok)throw new Kn(tb(s,o),s.status,o);return o}function Mk(e){let t=new URLSearchParams;e?.query&&t.set("query",e.query),e?.type&&t.set("type",e.type),e?.source&&t.set("source",e.source),e?.limit!==void 0&&t.set("limit",String(e.limit)),e?.offset!==void 0&&t.set("offset",String(e.offset));let n=t.toString();return n?`?${n}`:""}function Ok(e,t){return se(`/marketplace/items${Mk(t)}`,e)}function Dk(e){return se("/marketplace/marketplaces",e)}function jk(e,t){return se(`/marketplace/items/${encodeURIComponent(e)}`,t)}function $k(e,t,n){return se(`/marketplace/items/${encodeURIComponent(e)}/file?path=${encodeURIComponent(t)}`,n)}function Uk(e,t){return se("/access/check-email",t,{method:"POST",body:{email:e}})}function Lk(e,t){return se("/access/request-access",t,{method:"POST",body:e})}function Bk(e){return se("/auth/logout",e,{method:"POST",body:{}})}function Fk(e,t){return se(`/oauth/authorize/consent/${encodeURIComponent(e)}`,t)}function Nk(e,t){return se("/oauth/authorize/consent",t,{method:"POST",body:{request_id:e.requestId,approved:e.approved}})}function qk(e,t){return se(`/setup-links/connectors/${encodeURIComponent(e)}`,t)}function Gk(e,t){return se(`/setup-links/connectors/${encodeURIComponent(e)}/start`,t,{method:"POST",body:{}})}function Wk(e,t,n={}){return se(`/setup-links/connectors/${encodeURIComponent(e)}/finalize`,t,{method:"POST",body:n.connectionId?{connection_id:n.connectionId}:{}})}function Kk(e,t){return se(`/setup-links/secret/${encodeURIComponent(e)}`,t)}function Vk(e,t,n,r){return se(`/setup-links/secret/${encodeURIComponent(e)}`,n,{method:"POST",body:{values:t,...r?.only_requester?{only_requester:!0}:{}}})}function Hk(e,t){return se(`/p/public-share/${encodeURIComponent(e)}`,t)}function zk(e,t,n){return se(`/projects/${encodeURIComponent(e)}/sessions/${encodeURIComponent(t)}/start`,n,{method:"POST",body:{}})}function Yk(e,t){return se("/system/demo-request",t,{method:"POST",body:e})}async function Jk(e,t,n){let r=await fetch(`${lt(n.backendUrl)}/accounts/${encodeURIComponent(e)}/audit/export?${Ot(t)}`,{headers:Zh(n,!1),...n.signal?{signal:n.signal}:{}});if(!r.ok){let s=await eb(r);throw new Kn(tb(r,s),r.status,s)}return{blob:await r.blob(),filename:r.headers.get("content-disposition")?.match(/filename="([^"]+)"/)?.[1]??null,capped:r.headers.get("x-audit-capped")==="true",rowCount:r.headers.get("x-audit-row-count"),complete:r.headers.get("x-audit-complete")!=="false",nextCursor:r.headers.get("x-audit-next-cursor")||null}}function Qk(e,t){throw G("buildPublicTemplateUrl")}async function Xk(e,t,n){throw G("getPublicTemplate")}var Zk="beeuni:connect-link:";function Pi(e){let t=2166136261,n=16777619^e.length;for(let r=0;r<e.length;r+=1){let s=e.charCodeAt(r);t=Math.imul(t^s,16777619)>>>0,n=Math.imul(n^s,1540483477)>>>0}return`${Zk}${t.toString(36)}${n.toString(36)}`}function rK(e,{storage:t}={}){let n=new Map,r=new Map,s=i=>{if(t)try{let a=t.getItem(Pi(i));if(!a)return;let c=JSON.parse(a);if(Date.parse(c.expires_at)<=Date.now()){t.removeItem(Pi(i));return}return c}catch{return}},o=(i,a)=>{if(t)try{t.setItem(Pi(i),JSON.stringify(a))}catch{}};return{peek(i){let a=r.get(i);if(a)return a;let c=s(i);return c&&r.set(i,c),c},load(i){let a=n.get(i);if(a)return a;let c=e(i).then(p=>(r.set(i,p),o(i,p),p),p=>{throw n.delete(i),p});return n.set(i,c),c}}}var nb="Could not start the connect flow.";async function sK(e){let t;try{t=await e.start()}catch(r){return{kind:"error",message:r instanceof Error?r.message:nb}}if(t.connect_url)return{kind:"popup",url:t.connect_url};if(!t.connected)return{kind:"error",message:nb};let n=null;try{n=(await e.finalize()).connected_as??null}catch{}return{kind:"connected",alreadyConnected:t.already_connected===!0,connectedAs:n}}var eR=3e3,tR=5e3,nR=5*6e4;function oK(e,t){let n=e===0?eR:tR;return t+n>nR?null:n}function iK(e){let t=e.project_name?.trim();return{app:e.name?.trim()||e.app?.trim()||e.slug,project:t&&t!=="this project"?t:null}}var PK="1";var rR="beeuni.query-cache";function sb(e){return!!e&&typeof e.then=="function"}function rb(e){return sb(e)?e:Promise.resolve()}function SK(e){if(e[0]!=="kx")return!1;let t=e[1];if(t==="accounts")return e.length===3&&typeof e[2]=="string"&&e[2]!=="anonymous";if(t==="projects")return e.length===3;if(t!=="project"||typeof e[2]!="string")return!1;let n=e[3];if(e.length===4)return n==="summary"||n==="detail";if(n!=="sessions")return!1;if(e.length===6)return e[4]==="list-paged";if(e.length===7&&e[4]==="list-paged"){let r=e[6];return typeof r=="object"&&r!==null&&!r.q}return e.length===7&&e[4]==="list-children"?e[6]==="":e.length===5&&e[4]!=="list"&&e[4]!=="list-paged"}function xK(e){let{storage:t,userId:n,shouldPersist:r,version:s="1",maxAgeMs:o=6048e5,maxBytes:i=1e6,throttleMs:a=1e3,namespace:c=rR,now:p=()=>Date.now()}=e,d=`${c}:${n}`,g=null,m=!1,y=null,h=Promise.resolve(),w=()=>{try{return rb(t.removeItem(d)).catch(()=>{})}catch{return Promise.resolve()}},M=(C,P)=>{if(!P)return 0;let x;try{x=JSON.parse(P)}catch{return w(),0}if(!x||x.v!==s||x.user!==n||!Array.isArray(x.queries)||p()-x.at>o)return w(),0;let v=0;for(let k of x.queries){if(!k||!Array.isArray(k.k)||k.d===void 0||typeof k.t!="number"||p()-k.t>o||!r(k.k))continue;let $=C.getQueryState(k.k);$&&$.data!==void 0&&$.dataUpdatedAt>=k.t||(C.setQueryData(k.k,k.d,{updatedAt:k.t}),C.invalidateQueries?.({queryKey:k.k,exact:!0,refetchType:"none"}),v+=1)}return v},B=C=>C.getQueryCache().getAll().filter(P=>P.state.data!==void 0&&r(P.queryKey)).map(P=>({k:P.queryKey,d:P.state.data,t:P.state.dataUpdatedAt})).sort((P,x)=>x.t-P.t),F=(C,P)=>{let x=[],v=0;for(let k of C){let $=JSON.stringify(k).length+1;v+$>P||(x.push(k),v+=$)}return x},f=async C=>{let P=F(B(C),i);for(;;){let x={v:s,user:n,at:p(),queries:P};try{await rb(t.setItem(d,JSON.stringify(x)));return}catch{if(P.length===0)return;P=P.slice(0,Math.floor(P.length/2))}}},b=()=>{y!==null&&(clearTimeout(y),y=null)},S=()=>{b();let C=g;return!C||!m||(m=!1,h=h.then(()=>f(C)).catch(()=>{})),h},O=()=>{m=!0,y===null&&(y=setTimeout(()=>{y=null,S()},a))};return{storageKey:d,restore(C){let P;try{P=t.getItem(d)}catch{return 0}return sb(P)?P.then(x=>M(C,x)).catch(()=>0):M(C,P)},persist(C){g=C,m=!0;let P=C.getQueryCache().subscribe(x=>{x.type!=="updated"&&x.type!=="removed"&&x.type!=="added"||r(x.query.queryKey)&&O()});return()=>{P(),g===C&&(g=null,b())}},flush(){return S()},async clear(){b(),g=null,m=!1,await h,await w()}}}function wK(){let e;try{e=globalThis.localStorage}catch{e=void 0}if(!e)return null;let t=e;return{getItem:n=>{try{return t.getItem(n)}catch{return null}},setItem:(n,r)=>t.setItem(n,r),removeItem:n=>{try{t.removeItem(n)}catch{}}}}var sR="/beeuni/part/";function oR(e){return typeof e=="string"&&e.startsWith(sR)}async function RK(e){if(!oR(e))throw new Error(`not an attachment part reference: ${e}`);let t=je();if(!t)throw new Error("runtime url not bound");let n=await j(`${t}${e}`);if(!n.ok)throw new Error(`attachment part fetch failed: ${n.status}`);return n.blob()}function ob(e){try{let t=new URL(e);if(/^\/proxy\/\d+(?:\/|$)/.test(t.pathname))return`${t.origin}/v1/p/auth`;let n=t.pathname.indexOf("/p/");return n!==-1?`${t.origin}${t.pathname.slice(0,n)}/p/auth`:`${t.origin}/v1/p/auth`}catch{return null}}function iR(e,t){try{let n=new URL(e),r=n.pathname;if(!(/^\/v1\/p\/[^/]+\/\d+(?:\/|$)/.test(r)||/^\/proxy\/\d+(?:\/|$)/.test(r)))return!1;let o=new Set;if(t)try{o.add(new URL(t).origin)}catch{}return typeof window<"u"&&o.add(window.location.origin),o.has(n.origin)}catch{return!1}}function ib(e,t){return iR(e,t)?(t?ob(t):null)??ob(e):null}function ys(e){try{let{hostname:t}=new URL(e);return/^p\d+-[^.]+\./.test(t)||/^(?:dev|staging|prod|preview)-p\d+-[a-z0-9-]+\./i.test(t)}catch{return!1}}function ab(e,t){try{let n=new URL(e);return n.searchParams.set("token",t),n.toString()}catch{return e}}var aR=/^p\d{1,5}-[a-z0-9-]+\.localhost$/;function cR(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function lR(e,t){if(!t.includes("{port}")||!t.includes("{sandbox}"))return!1;let n=t.indexOf("://");if(n<=0)return!1;let r=t.slice(0,n).toLowerCase();if(r!=="https"&&r!=="http")return!1;let s=(t.slice(n+3).split("/")[0]??"").toLowerCase(),o=`${r}://${s}`.split("{port}").map(i=>i.split("{sandbox}").map(cR).join("[a-z0-9-]+")).join("\\d{1,5}");return new RegExp(`^${o}$`).test(e)}function uR(e){try{let t=new URL(e);return t.hostname==="localhost"||t.hostname==="127.0.0.1"?t:null}catch{return null}}function cb(e){return e.port?e.port:e.protocol==="https:"?"443":"80"}function pR(e,t){let n;try{n=new URL(e)}catch{return!1}return n.protocol!=="https:"&&n.protocol!=="http:"?!1:aR.test(n.hostname)?t.backendUrls.some(r=>{let s=uR(r);return s!==null&&cb(s)===cb(n)}):t.templates.some(r=>lR(n.origin,r))}async function lb(e,t={}){if(!ys(e))return!1;let n=R().backendUrl;n&&await pt(n).catch(()=>null);let r=[n,t.serverUrl].filter(s=>typeof s=="string"&&s.length>0);return pR(e,{templates:Ym(),backendUrls:r})}async function dR(e,t={}){let n=ib(e,t.serverUrl||R().backendUrl||void 0);if(!n)return!1;let r=await ot();if(!r)return!1;try{return(await fetch(n,{method:"POST",credentials:"include",headers:{Authorization:`Bearer ${r}`,"Content-Type":"application/json"}})).ok}catch{return!1}}async function LK(e,t={}){if(ys(e)){if(!await lb(e,t))return e;let n=await ot();return n?ab(e,n):e}return await dR(e,t),e}var FK=3e3;function gR(e){return!Number.isFinite(e)||e<100||e>599?"unknown":e===502||e===503||e===504?"unreachable":e===401||e===403?"unknown":"reachable"}async function NK(e,t){if(!e||t?.signal?.aborted)return"unknown";let n=new AbortController,r=()=>n.abort();t?.signal?.addEventListener("abort",r);let s=setTimeout(r,t?.timeoutMs??3e3);try{let o=await fetch(e,{method:"HEAD",credentials:"include",cache:"no-store",signal:n.signal});return gR(o.status)}catch{return"unknown"}finally{clearTimeout(s),t?.signal?.removeEventListener("abort",r)}}function mR(e){let t=e;for(;t.endsWith("/");)t=t.slice(0,-1);return t}function WK(e,t){throw G("buildPresentationTemplatePdfUrl")}function KK(e,t){throw G("buildPresentationTemplateImageUrl")}function fR(e,t){return`${mR(e)}/presentation/convert-to-${t}`}async function VK(e,t,n,r){let s=fR(t,e),o=r?.pollIntervalMs??2500,i=r?.timeoutMs??4*6e4,a=Date.now(),c=!1;for(;;){let p=await fetch(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({presentation_path:n,download:!0}),...r?.signal?{signal:r.signal}:{}}),d=p.headers.get("content-type")||"";if(p.ok&&(d.includes("pdf")||d.includes("presentation")||d.includes("octet-stream"))){let h=await p.blob();if(h.size===0)throw new Error("Downloaded file is empty");return h}if(p.status===202){if(c||(c=!0,r?.onGenerating?.()),Date.now()-a>i)throw new Error(`Timed out waiting for the ${e.toUpperCase()} to generate`);await new Promise((h,w)=>{let M=setTimeout(h,o);r?.signal?.addEventListener("abort",()=>{clearTimeout(M),w(r.signal?.reason??new DOMException("Aborted","AbortError"))},{once:!0})});continue}let m=await p.text().catch(()=>""),y=p.statusText;try{let h=JSON.parse(m);y=String(h.error||h.detail||h.message||y)}catch{m&&(y=m)}throw new Error(`Failed to download ${e.toUpperCase()}: ${y} (HTTP ${p.status})`)}}function YK(e){return e.activityFresh||e.runtimeReady?"live":e.unreachable||e.stalled?"unreachable":e.sandbox==="stopped"||e.sandbox==="archived"||e.sandbox==="provisioning"||e.sandbox==="queued"||e.sandbox==="branching"?"waking":e.sandbox==="completed"?"unknown":e.sandbox==="failed"?"unreachable":e.sandbox==="running"?"connecting":"unknown"}function JK(e){return e==="unreachable"}function QK(e){return!e||e.status===0?"unknown":e.ok&&Yf(e.health)?"live":e.hop==="control_plane"?"waking":e.ok||e.health?.status==="starting"?"connecting":"unreachable"}var yR=1e4,XK={connection:"unknown",faultSinceMs:null};function ZK(e,t,n,r=yR){if(t==="unknown")return e;if(t==="live"||t==="waking")return{connection:t,faultSinceMs:null};let s=e.faultSinceMs??n;return n-s>=r?{connection:t,faultSinceMs:s}:{connection:e.connection==="unknown"?"connecting":e.connection,faultSinceMs:s}}function ub({optimistic:e,abort:t,inbox:n,server:r,stream:s,activity:o,nowMs:i}){let a=!!e&&i-e.atMs<Si,c=!!t&&i-t.atMs<Ai;return{receiptLive:a,receiptTurnId:e?e.turnId===void 0?e.messageId:e.turnId:null,serverFloor:a?e?.acceptedAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,streamFloor:a?e?.atMs:Number.NEGATIVE_INFINITY,abortLive:c,abortFloor:c?t?.settledAtMs??Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY,serverFresh:!!r&&i-r.atMs<=xi,streamFresh:!!s&&i-s.atMs<=Vn,inboxFresh:!!n&&i-n.atMs<=wi,activityFresh:!!o&&i-o.atMs<=Vn}}function zt(e){if(!e)return null;let t=Date.parse(e);return Number.isNaN(t)?null:t}function vi(e,t,n){if(!t)return!1;let r=zt(e.started_at);if(r===null||r>=t.atMs)return!1;let s=n?.lastEnded,o=zt(s?.ended_at);return!(s&&o!==null&&Math.abs(o-t.atMs)<=1e3&&s.turn_token!==e.turn_token)}function hR(e,t,n,r){let{activity:s,server:o}=e,{serverFresh:i,abortFloor:a,activityFresh:c}=t;return c&&(!n||s.atMs>n.atMs)&&s.atMs>=a?{state:"working",source:"stream",turnId:i?o.turns.find(d=>d.state==="active"&&!vi(d,n,o))?.message_id??null:null,since:s.atMs,serverOpenTurnToken:r}:null}function bR(e,t,n,r){let{server:s,stream:o}=e,{serverFresh:i,abortFloor:a}=t,c=i?s.turns.filter(g=>!vi(g,n,s)):[],p=c.find(g=>g.state==="active")??c[0],d=!!o&&!(o.type==="idle"&&o.origin==="local");return p&&s.atMs>=a&&(!d||s.atMs>=o.atMs)?{result:{...p.state==="delivering"?{pendingDelivery:!0}:{},state:"working",source:"server",turnId:p.message_id,since:zt(p.started_at)??s.atMs,serverOpenTurnToken:r},openTurn:p}:{result:null,openTurn:p}}function _R(e,t,n){let{inbox:r,server:s,stream:o}=e,{inboxFresh:i,abortFloor:a,streamFresh:c,serverFresh:p,receiptLive:d,receiptTurnId:g,abortLive:m}=t;if(i&&r.pending>0&&r.atMs>=a)return{...c&&o.type!=="idle"&&(!p||o.atMs>s.atMs)&&o.atMs>=a?{}:{pendingDelivery:!0},state:"working",source:"server",turnId:d?g:null,since:r.atMs,serverOpenTurnToken:n};let y=r?.drainedAtMs;return i&&r.pending===0&&y!=null&&!m&&!(p&&s.atMs>=y)?{pendingDelivery:!0,state:"working",source:"server",turnId:null,since:y,serverOpenTurnToken:n}:null}function PR(e,t,n,r){let{server:s,stream:o,optimistic:i,nowMs:a}=e,{serverFresh:c,serverFloor:p,streamFresh:d,streamFloor:g,abortFloor:m,receiptLive:y,receiptTurnId:h}=t,w=c&&!n&&s.atMs>=p,M=d&&o.atMs>=g&&(o.type==="idle"||o.atMs>=m);if(w&&(!o||s.atMs>=o.atMs))return{state:"idle",source:"server",turnId:null,since:zt(s.lastEnded?.ended_at)??s.atMs,serverOpenTurnToken:r};if(M)return{state:o.type==="idle"?"idle":"working",source:"stream",turnId:null,since:o.atMs,serverOpenTurnToken:r};if(y)return{pendingDelivery:!0,state:"working",source:"optimistic",turnId:h,since:i.atMs,serverOpenTurnToken:r};let B=s&&o?s.atMs>=o.atMs?{source:"server",atMs:s.atMs}:{source:"stream",atMs:o.atMs}:s?{source:"server",atMs:s.atMs}:o?{source:"stream",atMs:o.atMs}:{source:"server",atMs:a};return{state:"idle",source:B.source,turnId:null,since:B.atMs,serverOpenTurnToken:r}}function pb(e){let t=ub(e),{server:n,stream:r}=e,s=r&&r.type==="idle"&&r.origin!=="local"?r:null,o=n?.turns[0]?.turn_token??null,i=hR(e,t,s,o);if(i)return i;let{result:a,openTurn:c}=bR(e,t,s,o);return a??_R(e,t,o)??PR(e,t,c,o)}var Si=6e4,xi=45e3,Vn=45e3,wi=1e4,uV=3e3,Ai=15e3;function pV(e,t){return t?t.serverAtMs!=null&&e.serverAtMs!=null?e.serverAtMs>=t.serverAtMs:e.atMs>=t.atMs:!0}function dV(e){let t=0;for(let n of e)(n.state==="queued"||n.state==="delivering"||n.state==="waiting"&&n.reason!=="held")&&(t+=1);return t}function mV(e){return pb(e)}function fV(e){let{optimistic:t,abort:n,inbox:r,server:s,stream:o,activity:i,nowMs:a}=e,c=[null,t?t.atMs+Si:null,n?n.atMs+Ai:null,r?r.atMs+wi:null,s?s.atMs+xi:null,o?o.atMs+Vn:null,i?i.atMs+Vn:null],p=null;for(let d of c)d===null||d<=a||(p===null||d<p)&&(p=d);return p}function SR(e,t){if(!e||!t)return null;let n=e.recent_failures?.find(o=>o.message_id===t),r=e.last_ended,s=n?.error??(r?.message_id===t&&r.end_reason==="failed"?r.error:void 0);return!s?.message||ms({name:s.name??void 0,message:s.message})?null:s}var xR="SandboxMemoryGuard";function _V(e,t,n){if(!e||!t||n.hasError&&!n.isAbort)return null;let r=SR(e,t);if(r?.message){if(r.name!==xR)return{kind:"cause",name:r.name,message:r.message};let a=r.message.match(/(\d{1,3})%/)?.[1],c=r.message.split(":")[0]?.trim()||null;return{kind:"sandbox-memory",usedPct:a?Number(a):null,detail:c}}let s=e.recent_failures?.find(a=>a.message_id===t);if(!s)return null;let o=s.ended_at?Date.parse(s.ended_at):Number.NaN;return Number.isFinite(o)&&typeof e.atMs=="number"&&e.atMs-o<2500?null:{kind:"unexplained"}}var SV=6e4;function xV(e){return e.serverCompactingAtMs!==null?!0:e.optimisticAtMs===null?!1:e.nowMs-e.optimisticAtMs<6e4}function wV(e){if(e.serverCompactingAtMs!==null||e.optimisticAtMs===null)return null;let t=e.optimisticAtMs+6e4;return t>e.nowMs?t:null}var wR=9e4;function AV(e){return e.serverCompactingAtMs===null?null:e.serverCompactingAtMs+wR}var kV=75e3,RV=2,CV=2e4;function db(){return{status:"idle",dispatch:"none",fingerprint:null,lastProgressAtMs:null,lastDispatchAtMs:null,attempts:[],msSinceProgress:0,settled:!1}}function IV(e){return e.filter(t=>t!=null).join("|")}function AR(e,t){return e.length===0?"retry-start":e.filter(r=>r.step==="restart").length<t?"restart":null}function TV(e,t,n={}){let r=n.noProgressMs??75e3,s=n.maxRestarts??2,o=n.cooldownMs??2e4;if(t.runtimeReachable)return{...db(),settled:!0};if(!t.waking)return{...e,dispatch:"none",fingerprint:null,lastProgressAtMs:null,msSinceProgress:0};if(e.settled)return{...db(),settled:!0};let i=e.lastProgressAtMs,a=i===null,c=t.progress!==e.fingerprint,p=i===null||c?t.nowMs:i,d=Math.max(0,t.nowMs-p),g={...e,dispatch:"none",fingerprint:t.progress,lastProgressAtMs:p,msSinceProgress:d,status:e.attempts.length>0?"escalating":"waking"};if(e.status==="exhausted")return{...g,status:"exhausted"};let m=!a&&!c&&d>=r;if(!t.serverGaveUp&&!m||e.lastDispatchAtMs!==null&&t.nowMs-e.lastDispatchAtMs<o)return g;let y=AR(e.attempts,s);return y?{...g,status:"escalating",dispatch:y,attempts:[...e.attempts,{step:y,atMs:t.nowMs}],lastDispatchAtMs:t.nowMs,lastProgressAtMs:t.nowMs,msSinceProgress:0}:{...g,status:"exhausted"}}var vR={"retry-start":"retrying",restart:"restarting"};function EV(e){if(e.status!=="escalating")return null;let t=e.attempts[e.attempts.length-1];return t?`Still waking \u2014 ${vR[t.step]} the runtime (attempt ${e.attempts.length+1})`:null}function kR(e){return e===1?"once":e===2?"twice":`${e} times`}function MV(e){if(e.status!=="exhausted")return null;let t=e.attempts.filter(s=>s.step==="restart").length,n=e.attempts.some(s=>s.step==="retry-start");if(!n&&t===0)return null;let r=[];return n&&r.push("re-issuing the wake"),t>0&&r.push(`restarting the session ${kR(t)}`),`Tried: ${r.join(", then ")}.`}var DV={"needs-you":{label:"Needs you",tone:"actionable",description:"Waiting for your review"},starting:{label:"Starting",tone:"progress",description:"Its computer is starting"},running:{label:"Running",tone:"live",description:"Its computer is up"},done:{label:"Done",tone:"muted",description:"Finished"},stopped:{label:"Stopped",tone:"muted",description:"Asleep. Opening it wakes its computer"},failed:{label:"Failed",tone:"danger",description:"Its computer didn't start"},legacy:{label:"Legacy",tone:"muted",description:"Imported. Open it to restore"}};function RR(e){return!!(e.metadata??{}).legacy_migration}function jV(e,t=0){if(t>0)return"needs-you";switch(e.status){case"queued":case"branching":case"provisioning":return"starting";case"running":return"running";case"completed":case"stopped":return RR(e)?"legacy":e.status==="completed"?"done":"stopped";case"failed":return"failed";default:return"stopped"}}function $V(e){switch(e){case"waking":return{label:"Waking computer",tone:"progress"};case"connecting":return{label:"Connecting",tone:"progress"};case"unreachable":return{label:"Can't reach computer",tone:"danger"};default:return null}}var UV={unreachable:"Lost contact with this session's computer. Messages you send are queued until it reconnects.",unreachableMidTurn:"Lost contact with this session's computer while a turn is still open. Messages you send stay queued until it answers.",stalled:"Waking this session's computer is taking longer than usual. Messages you send are queued.",starting:"Starting this session's computer. Your message sends automatically.",idle:"This session's computer is asleep. Your next message wakes it up and is delivered.",waking:"Waking this session's computer. Messages you send are queued and go out automatically."};function LV(e){return e===null?"Waiting to retry":e>0?`Retrying in ${e}s`:"Retrying now"}function ki(e){return e.runtime_sessions??e.opencode_sessions??[]}function CR(e){let t=ki(e),n=e.runtime_session_id??e.opencode_session_id;return n?t.find(r=>r.id===n)??null:t.find(r=>!r.parent_id)??null}function FV(e){let t=CR(e);return t?ki(e).filter(n=>n.parent_id===t.id&&!n.archived_at).sort((n,r)=>(r.updated_at??0)-(n.updated_at??0)||n.id.localeCompare(r.id)):[]}function NV(e,t){if(!t)return null;let n=e.find(r=>r.session_id===t||(r.runtime_session_id??r.opencode_session_id)===t);return n||(e.find(r=>ki(r).some(s=>s.id===t))??null)}var IR=new Set;function TR(e){for(let t of[...IR])try{t(e)}catch{}}function ER(e){return e==="TIMEOUT"||e==="request_deadline"}function MR(e){let t=mb(e)?e.code:void 0;return typeof t=="string"?t:void 0}var mb=e=>typeof e=="object"&&e!==null;function gb(e){let t=e?.metadata;return!!mb(t)&&t.warm===!0}var OR=5,DR=2e3,jR=e=>new Promise(t=>setTimeout(t,e));async function $R(e,{attempts:t=OR,delayMs:n=DR,sleep:r=jR}={}){for(let s=0;s<t;s++){s>0&&await r(n);try{if(await e())return!0}catch{}}return!1}function cH(e,t){let n=new Map,r=new Set,s=new Set,o=new Set,i=0,a=(c,p,d)=>{if(r.has(c)||n.has(c))return Promise.resolve();r.add(c);let g=i,m=(async()=>{let y=null;try{let h=await e.ensure(c,p);if(g!==i)return;s.has(h.sessionId)?y=h.sessionId:n.set(c,h)}catch{}finally{g===i&&r.delete(c)}y&&d>0&&await a(c,y,d-1)})();return o.add(m),m.finally(()=>o.delete(m)),m};return{ensure:(c,p)=>a(c,p?.excludeSessionId,1),take:(c,p,{replenish:d})=>{let g=n.get(c);return g?(n.delete(c),s.add(g.sessionId),d&&a(c,g.sessionId,1),t.fits(g,p)?g:null):null},prime:async(c,p,d)=>{try{return await e.claim(c,d),!0}catch(g){return ER(MR(g))?$R(async()=>!gb(await e.read(c,p.sessionId)),t.sleep?{sleep:t.sleep}:{}):!1}},dropBySessionId:c=>{for(let[p,d]of n)if(d.sessionId===c)return n.delete(p),s.add(c),p;return null},revalidate:async c=>{let p=n.get(c);if(!p)return!1;try{if(gb(await e.read(c,p.sessionId)))return!1}catch{return!1}return n.get(c)?.sessionId!==p.sessionId?!1:(n.delete(c),s.add(p.sessionId),!0)},held:c=>n.get(c)??null,reset:()=>{i+=1,n.clear(),r.clear(),s.clear()},settled:async()=>{for(;o.size>0;)await Promise.all([...o])}}}var UR=12e4,hs=class extends Error{constructor(t){super(`Session history read did not settle within ${t}ms`),this.name="SessionSyncReadTimeoutError"}},LR=1e3,BR=15e3,fb=100,FR=50,NR=10;function yb(e){let t=e.fetch??globalThis.fetch,n=e.baseUrl.replace(/\/$/,"");return async({limit:r,before:s},o)=>{let i=new URLSearchParams({limit:String(r)});s&&i.set("before",s);let a=await e.getToken?.(),c=await t(`${n}/session/${encodeURIComponent(e.sessionId)}/message?${i}`,{headers:a?{Authorization:`Bearer ${a}`}:void 0,...o?{signal:o}:{}});if(!c.ok)throw c.status===503?new fs(`session ${c.status}`):new _(`Session synchronization failed: ${c.status}`,{status:c.status});return{messages:await c.json(),nextCursor:c.headers.get("x-next-cursor")||void 0}}}function qR(e){return WR(yb(e))}function GR(e){return new Ri({...e,loadPage:yb(e)})}async function WR(e){let t=[],n=new Set,r;do{let i=await e({limit:fb,...r?{before:r}:{}});if(t.push(i.messages),r=i.nextCursor,r&&n.has(r))throw new Error(`Session history cursor repeated: ${r}`);r&&n.add(r)}while(r);let s=[],o=new Set;for(let i=t.length-1;i>=0;i--)for(let a of t[i])o.has(a.info.id)||(o.add(a.info.id),s.push(a));return s}var KR={now:Date.now,setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e),setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e)},Ri=class{options;scheduler;livenessIntervalMs;verifyIntervalMs;readTimeoutMs;lastTailReadAt;retryAttempt=0;tailUnavailable=!1;tailRetryTimer;snapshot={freshness:"idle",hasOlder:!1,isLoadingOlder:!1};nextCursor;knownUserMessageIds=new Set;olderHistoryStarted=!1;tailRequest;turnEndPending=!1;olderRequest;livenessTimer;livenessBusy=!1;streamReliable=!1;lastActivityAt;listeners=new Set;destroyed=!1;abortController=new AbortController;constructor(t){this.options=t,this.scheduler=t.scheduler??KR,this.livenessIntervalMs=t.livenessIntervalMs??1e4,this.verifyIntervalMs=t.verifyIntervalMs??3e4,this.readTimeoutMs=t.readTimeoutMs??UR,this.lastActivityAt=this.scheduler.now(),this.lastTailReadAt=this.scheduler.now()}getSnapshot=()=>this.snapshot;subscribe=t=>(this.listeners.add(t),()=>this.listeners.delete(t));start(){return this.snapshot.freshness==="fresh"?Promise.resolve():this.reconcile("initial")}reconcile(t="manual"){return this.destroyed?Promise.resolve():this.tailRequest?this.tailRequest:(this.update({freshness:this.snapshot.freshness==="idle"||this.snapshot.freshness==="loading"?"loading":"stale"}),this.tailRequest=this.loadTail(t).finally(()=>{this.tailRequest=void 0}),this.tailRequest)}loadOlder=()=>{if(this.destroyed||!this.nextCursor)return Promise.resolve();if(this.olderRequest)return this.olderRequest;let t=this.nextCursor;return this.update({isLoadingOlder:!0}),this.olderRequest=this.loadCompleteOlderTurn(t).then(n=>{this.destroyed||(this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted=!0,this.setCursor(n.nextCursor))}).finally(()=>{this.olderRequest=void 0,this.update({isLoadingOlder:!1})}),this.olderRequest};noteActivity(){this.lastActivityAt=this.scheduler.now(),this.snapshot.freshness!=="fresh"&&this.update({freshness:"fresh"})}setStreamReliable(t){this.streamReliable=t}setBusy(t,n=!1){let r=this.livenessBusy&&!t;if(this.livenessBusy=t,!t&&!n){this.stopLivenessTimer(),r&&!this.destroyed&&this.reconcileTurnEnd();return}r&&!this.destroyed&&this.reconcileTurnEnd(),this.livenessTimer===void 0&&(this.lastActivityAt=this.scheduler.now(),this.livenessTimer=this.scheduler.setInterval(()=>{this.checkLiveness()},this.livenessIntervalMs))}destroy(){this.destroyed=!0,this.stopLivenessTimer(),this.tailRetryTimer!==void 0&&(this.cancelTimer(this.tailRetryTimer),this.tailRetryTimer=void 0),this.abortController.abort(),this.listeners.clear()}reconcileTurnEnd(){if(!this.tailRequest){this.reconcile("turn-end");return}this.turnEndPending||(this.turnEndPending=!0,this.tailRequest.finally(()=>{this.turnEndPending=!1,this.destroyed||this.reconcile("turn-end")}))}async loadTail(t){this.lastTailReadAt=this.scheduler.now();try{let n=await this.loadPage("tail",t);if(this.destroyed)return;this.rememberUserMessages(n.messages),this.options.hydrate(n.messages),this.olderHistoryStarted||this.setCursor(n.nextCursor),this.update({freshness:"fresh"}),this.options.markLoaded(),this.retryAttempt=0,this.tailUnavailable=!1}catch(n){if(this.destroyed||this.abortController.signal.aborted)return;let r=n instanceof hs;if(!r&&ms(n))return;if(r||this.update({freshness:Wn(n)?"loading":"error"}),n instanceof _&&(n.status===404||n.status===410)){this.tailUnavailable=!0,this.cancelTimer(this.tailRetryTimer),this.tailRetryTimer=void 0;return}this.scheduleTailRetry(t)}}scheduleTailRetry(t){if(this.destroyed||this.tailRetryTimer!==void 0)return;let n=Math.min(LR*2**this.retryAttempt,BR);this.retryAttempt+=1,this.tailRetryTimer=this.startTimer(()=>{this.tailRetryTimer=void 0,!this.destroyed&&this.reconcile(t)},n)}async loadPage(t,n,r){let s=this.scheduler.now();try{let o=await this.boundedRead(i=>this.options.loadPage({limit:t==="tail"?FR:fb,...r?{before:r}:{}},i));return this.options.onTelemetry?.({operation:t,reason:n,durationMs:this.scheduler.now()-s,messageCount:o.messages.length,succeeded:!0}),o}catch(o){throw this.options.onTelemetry?.({operation:t,reason:n,durationMs:this.scheduler.now()-s,messageCount:0,succeeded:!1}),o}}boundedRead(t){let n=this.abortController.signal,r=new AbortController,s=()=>r.abort(n.reason);n.aborted?r.abort(n.reason):n.addEventListener("abort",s,{once:!0});let o,i=new Promise((c,p)=>{o=this.startTimer(()=>{let d=new hs(this.readTimeoutMs);p(d),r.abort(d)},this.readTimeoutMs)}),a;try{a=t(r.signal)}catch(c){a=Promise.reject(c)}return Promise.race([a,i]).finally(()=>{this.cancelTimer(o),n.removeEventListener("abort",s)})}async loadCompleteOlderTurn(t){let n=await this.loadPage("older","manual",t);return this.loadCompleteTurn(n,"older","manual",t,r=>{this.rememberUserMessages(r.messages),this.options.hydrate(r.messages),this.setCursor(r.nextCursor)})}async loadCompleteTurn(t,n,r,s,o){let i=[...t.messages],a=new Set(this.knownUserMessageIds),c=new Set(s?[s]:[]),p=t.nextCursor,d=0;for(let g of t.messages)g.info.role==="user"&&a.add(g.info.id);for(;p&&d<NR&&i.some(g=>g.info.role==="assistant"&&!!g.info.parentID&&!a.has(g.info.parentID));){if(c.has(p))throw new Error(`Session history cursor repeated: ${p}`);c.add(p);let g;try{g=await this.loadPage(n,r,p)}catch(m){throw o?.({messages:[...i],nextCursor:p}),m}if(this.destroyed)return{messages:i,nextCursor:p};d+=1,i.unshift(...g.messages);for(let m of g.messages)m.info.role==="user"&&a.add(m.info.id);p=g.nextCursor,o?.({messages:[...i],nextCursor:p})}return{messages:i,nextCursor:p}}rememberUserMessages(t){for(let n of t)n.info.role==="user"&&this.knownUserMessageIds.add(n.info.id)}async checkLiveness(){if(this.destroyed||this.tailUnavailable||this.streamReliable)return;let t=this.scheduler.now(),n=t-this.lastActivityAt>this.livenessIntervalMs,r=t-this.lastTailReadAt>=this.verifyIntervalMs;!(this.livenessBusy&&n)&&!r||(await this.raceDeadline(this.reconcile("poll"),this.livenessIntervalMs),this.lastActivityAt=this.scheduler.now())}raceDeadline(t,n){return new Promise(r=>{let s,o=!1,i=()=>{o||(o=!0,this.cancelTimer(s),r())};s=this.startTimer(i,n),t.then(i,i)})}setCursor(t){this.nextCursor=t,this.update({hasOlder:!!t})}stopLivenessTimer(){this.livenessTimer!==void 0&&(this.scheduler.clearInterval(this.livenessTimer),this.livenessTimer=void 0)}startTimer(t,n){return this.scheduler.setTimeout?this.scheduler.setTimeout(t,n):setTimeout(t,n)}cancelTimer(t){t!==void 0&&(this.scheduler.clearTimeout?this.scheduler.clearTimeout(t):clearTimeout(t))}update(t){let n={...this.snapshot,...t};if(!(n.freshness===this.snapshot.freshness&&n.hasOlder===this.snapshot.hasOlder&&n.isLoadingOlder===this.snapshot.isLoadingOlder)){this.snapshot=n;for(let r of this.listeners)r()}}};function VR(e){return e?.available&&e.source==="mirror"&&e.complete&&e.total===0&&e.messages.length===0?e.runtime_session_id??e.opencode_session_id??null:null}function HR(e){return e.savedEmptyRoot!==null&&e.savedEmptyRoot===e.rootSessionId&&e.turnRead&&!e.hasEndedTurn&&!e.hasOpenOrQueuedTurn}function yH(e){throw G("buildTunnelEventStreamUrl")}function hH(e){let{url:t,token:n,method:r="GET",body:s,onEvent:o,onOpen:i,onError:a,onClose:c,signal:p}=e,d=new Map,g=null,m=!1,y="";function h(f,b){o?.(f,b);let S=d.get(f);if(S)for(let O of S)try{O(b)}catch{}}async function w(){if(m)return;let f=new AbortController;g=f,p&&(p.aborted?f.abort():p.addEventListener("abort",()=>f.abort(),{once:!0}));let b=f.signal;try{let S={Accept:"text/event-stream",Authorization:`Bearer ${n}`};r!=="GET"&&s!==void 0&&(S["Content-Type"]="application/json"),y&&(S["Last-Event-ID"]=y);let O=await fetch(t,{method:r,headers:S,body:r!=="GET"&&s!==void 0?JSON.stringify(s):void 0,signal:b,credentials:"include"});if(!O.ok)throw new Error(`SSE connection failed: ${O.status} ${O.statusText}`);if(!O.body)throw new Error("SSE response has no body");i?.();let C=O.body.getReader(),P=new TextDecoder,x="",v="message",k=[],$=E=>{if(E===""){k.length>0&&h(v,k.join(`
|
|
96
|
+
`)),v="message",k=[];return}if(E.startsWith(":"))return;let q=E.indexOf(":"),Q=q===-1?E:E.slice(0,q),V=q===-1?"":E.slice(q+1);V.startsWith(" ")&&(V=V.slice(1)),Q==="event"?v=V.trim()||"message":Q==="data"?k.push(V):Q==="id"&&!V.includes("\0")&&(y=V)},D=E=>{let q="";!E&&x.endsWith("\r")&&(q="\r",x=x.slice(0,-1));let Q=x.split(/\r\n|\n|\r/);x=(Q.pop()??"")+q;for(let V of Q)$(V)};for(;!m;){let{done:E,value:q}=await C.read();if(E)break;x+=P.decode(q,{stream:!0}),D(!1)}m||(x+=P.decode(),D(!0),c?.())}catch(S){if(m||S instanceof DOMException&&S.name==="AbortError")return;a?.(S instanceof Error?S:new Error(String(S)))}}function M(){m=!0,g?.abort(),g=null,d.clear()}function B(f,b){let S=d.get(f)??new Set;S.add(b),d.set(f,S)}function F(f,b){d.get(f)?.delete(b)}return{connect:w,close:M,addEventListener:B,removeEventListener:F}}function bH(e,t){throw G("createTunnelEventStream")}var hb="/_beeuni/viewer",bs=6e4,Yt=new Map;function zR(){Yt.clear(),Hn.clear()}async function YR(e,t){let n;try{n=await t(e,{credentials:"same-origin",headers:{accept:"application/json"}})}catch{return null}if(n.status===401||n.status===404||!n.ok)return null;let r=await n.json().catch(()=>null);return r&&typeof r.user_id=="string"?r:null}async function bb(e={}){let t=e.path??hb,n=e.fetch??((o,i)=>fetch(o,i)),r=Yt.get(t);if(r&&!r.inflight&&r.expiresAt>Date.now())return r.session;if(r?.inflight)return r.inflight;let s=YR(t,n).then(o=>{let i=o?.expires_at?Date.parse(o.expires_at):Number.NaN,a=Number.isFinite(i)?i-bs:Date.now()+bs;return Yt.set(t,{session:o,expiresAt:a}),o});return Yt.set(t,{session:r?.session??null,expiresAt:0,inflight:s}),s}function JR(e={}){let t=e.path??hb;return Object.assign(async()=>(await bb(e))?.access_token??null,{invalidate:n=>{let r=Yt.get(t);r&&!r.inflight&&r.session?.access_token===n&&Yt.delete(t)}})}var Hn=new Map;async function QR(e,t){try{let n=await t(e,{credentials:"same-origin",headers:{accept:"application/json"}});if(!n.ok){if(n.status===403){let o=await n.json().catch(()=>null);o?.error==="app_not_linked"&&console.warn(`[beeuni] ${String(o.error_description)}`)}return null}let r=await n.json().catch(()=>null);if(!r||typeof r.token!="string")return null;let s=typeof r.expires_at=="string"?Date.parse(r.expires_at):Number.NaN;return Hn.set(e,{token:r.token,refreshAt:Number.isFinite(s)?s-bs:Date.now()+bs}),r.token}catch{return null}}function _b(e={}){let t=e.path??"/_beeuni/token",n=e.audience===void 0?t:`${t}?audience=${encodeURIComponent(e.audience)}`,r=e.fetch??((s,o)=>fetch(s,o));return async(s={})=>{let o=Hn.get(n);if(o instanceof Promise)return o;if(o&&!s.forceRefreshToken&&o.refreshAt>Date.now())return o.token;let i=QR(n,r).then(a=>(a===null&&Hn.delete(n),a));return Hn.set(n,i),i}}function XR(e,t={}){let n=t.origin??globalThis.location?.origin;if(!n)throw new Error("beeuniBinding needs the App origin: pass { origin } outside a browser.");return{url:`${le(n)}/_beeuni/apps/${encodeURIComponent(e)}`,token:_b({audience:e,fetch:t.fetch})}}var Pt=class extends Error{code;constructor(t,n){super(n),this.name="BeeuniMemberError",this.code=t}},ye=e=>typeof e=="string"&&e.length>0?e:null;function Pb(e){let t=e;if(typeof e=="string")try{t=JSON.parse(e)}catch{return[]}return Array.isArray(t)?t.filter(n=>typeof n=="string"):[]}function Ii(e){if(!e||typeof e!="object")return null;let t=e,n=ye(t.sub)??ye(t.subject)??ye(t.user_id)??ye(t.userId);return n?{userId:n,email:ye(t.email),name:ye(t.name),picture:ye(t.picture)??ye(t.pictureUrl),groups:Pb(t.groups),groupIds:Pb(t.group_ids??t.groupIds),role:ye(t.role),accountId:ye(t.account_id)??ye(t.accountId),projectId:ye(t.project_id)??ye(t.projectId)}:null}function ZR(e,t={}){let n=Ii(e);if(!n)throw new Pt("unauthenticated","Sign in with Beeuni to continue.");let{groups:r,roles:s}=t;if(r&&!r.some(o=>n.groups.includes(o)||n.groupIds.includes(o)))throw new Pt("forbidden",`Only members of ${r.join(" or ")||"no group"} may do this.`);if(s&&!s.some(o=>n.role===o))throw new Pt("forbidden",`Only ${s.join(" or ")||"no role"} members may do this.`);return n}var eC=60,Ci=new Map;function xb(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n=atob(t+"=".repeat((4-t.length%4)%4));return Uint8Array.from(n,r=>r.charCodeAt(0))}function Sb(e){return JSON.parse(new TextDecoder().decode(xb(e)))}async function tC(e,t){if(typeof e!="string")return e;if(e.startsWith("data:")){let n=e.indexOf(","),r=e.slice(5,n),s=e.slice(n+1),o=r.endsWith(";base64")?new TextDecoder().decode(Uint8Array.from(atob(s),i=>i.charCodeAt(0))):decodeURIComponent(s);return JSON.parse(o)}if(/^https?:\/\//.test(e)){let n=Ci.get(e);return n||(n=t(e,{headers:{accept:"application/json"}}).then(async r=>{if(!r.ok)throw new Error(`key set ${r.status}`);return await r.json()}),n.catch(()=>Ci.delete(e)),Ci.set(e,n)),n}return JSON.parse(e)}async function nC(e,t={}){let n=f=>{throw new Pt("unauthenticated",`Beeuni sign-in token refused: ${f}.`)},r=t.jwks??He("BEEUNI_AUTH_JWKS"),s=t.issuer??He("BEEUNI_AUTH_ISSUER"),o=t.audience??He("BEEUNI_AUTH_AUDIENCE");if(!r)return n("no key set configured (BEEUNI_AUTH_JWKS)");if(o!==!1&&!o)return n("no audience configured (BEEUNI_AUTH_AUDIENCE, or `audience: false` to accept any App)");let i=typeof e=="string"?e.split("."):[];if(i.length!==3)return n("malformed");let[a,c,p]=i,d,g;try{d=Sb(a),g=Sb(c)}catch{return n("malformed")}if(d.alg!=="ES256")return n("unsupported algorithm");let m;try{m=await tC(r,t.fetch??((f,b)=>fetch(f,b)))}catch{return n("key set unavailable")}let y=(m.keys??[]).filter(f=>f.kty==="EC"&&(d.kid===void 0||f.kid===d.kid));if(y.length===0)return n("unknown key");let h=new TextEncoder().encode(`${a}.${c}`),w;try{w=xb(p)}catch{return n("malformed")}let M=!1;for(let f of y)try{let{kid:b,alg:S,use:O,key_ops:C,...P}=f,x=await crypto.subtle.importKey("jwk",P,{name:"ECDSA",namedCurve:"P-256"},!1,["verify"]);if(await crypto.subtle.verify({name:"ECDSA",hash:"SHA-256"},x,w,h)){M=!0;break}}catch{}if(!M)return n("bad signature");let B=Math.floor(Date.now()/1e3);if(typeof g.exp!="number"||g.exp+eC<B)return n("expired");if(s&&g.iss!==s)return n("wrong issuer");if(o){let f=g.aud;if(!(f===o||Array.isArray(f)&&f.includes(o)))return n("wrong audience")}let F=Ii(g);return F||n("no subject")}function wb(e){let t=e.agents.map(rC),n=e.default_agent??e.open_code_default_agent;return n?t.sort((r,s)=>r.name===n?-1:s.name===n?1:0):t}function rC(e){return{name:e.name,description:e.description??void 0,mode:e.mode??void 0,source:e.source,hidden:e.enabled===!1}}function Ab(e,t){if(!Array.isArray(e))return[];let n=t?.includeSubagents===!0;return e.filter(r=>ho(n?{...r,mode:null}:r))}function sC(e){let t=e.boundAgent?.trim()||null;if(!Array.isArray(e.agents)){let o=e.selectedAgent?.trim();return o?{selected:o,disabled:!1,reason:"loading"}:{selected:t,disabled:!1,reason:"loading"}}let n=Ab(e.agents);if(n.length===0)return t?{selected:t,disabled:!1,reason:"bound"}:{selected:null,disabled:!0,reason:"no_access"};let r=e.selectedAgent?.trim();if(r&&n.some(o=>o.name===r))return{selected:r,disabled:!1,reason:"selected"};if(t)return{selected:t,disabled:!1,reason:"bound"};let s=e.defaultAgent?.trim();return s&&n.some(o=>o.name===s)?{selected:s,disabled:!1,reason:"default"}:{selected:n[0].name,disabled:!1,reason:"first_accessible"}}var oC=wb;function vb(e){return e.providerID==="beeuni"||e.providerID==="opencode"?e.modelID:`${e.providerID}/${e.modelID}`}function Ti(e){return{providerID:"beeuni",modelID:e}}function iC(e,t){let n=e.startsWith("beeuni/")?e.slice(7):e;if(!t){let r=n.indexOf("/");if(r>0&&r<n.length-1)return{providerID:n.slice(0,r),modelID:n.slice(r+1)}}return Ti(n)}var Ei=[{id:"deepinfra",env:["DEEPINFRA_API_KEY"]},{id:"perplexity-agent",env:["PERPLEXITY_API_KEY"]},{id:"bailing",env:["BAILING_API_TOKEN"]},{id:"poe",env:["POE_API_KEY"]},{id:"cerebras",env:["CEREBRAS_API_KEY"]},{id:"groq",env:["GROQ_API_KEY"]},{id:"blueclaw",env:["BLUECLAW_API_KEY"]},{id:"zai",env:["ZHIPU_API_KEY"]},{id:"empiriolabs",env:["EMPIRIOLABS_API_KEY"]},{id:"sensenova",env:["SENSENOVA_API_KEY"]},{id:"alibaba-token-plan",env:["ALIBABA_TOKEN_PLAN_API_KEY"]},{id:"cloudflare-workers-ai",env:["CLOUDFLARE_ACCOUNT_ID","CLOUDFLARE_API_KEY"]},{id:"engy",env:["ENGY_API_KEY"]},{id:"poolside",env:["POOLSIDE_API_KEY"]},{id:"nano-gpt",env:["NANO_GPT_API_KEY"]},{id:"abliteration-ai",env:["ABLIT_KEY"]},{id:"crof",env:["CROF_API_KEY"]},{id:"standardcompute",env:["STANDARDCOMPUTE_API_KEY"]},{id:"cloudferro-sherlock",env:["CLOUDFERRO_SHERLOCK_API_KEY"]},{id:"anthropic",env:["ANTHROPIC_API_KEY"]},{id:"tinfoil",env:["TINFOIL_API_KEY"]},{id:"llama",env:["LLAMA_API_KEY"]},{id:"cohere",env:["COHERE_API_KEY"]},{id:"deepseek",env:["DEEPSEEK_API_KEY"]},{id:"baseten",env:["BASETEN_API_KEY"]},{id:"nan",env:["NAN_API_KEY"]},{id:"stepfun-ai-step-plan",env:["STEPFUN_API_KEY"]},{id:"nearai",env:["NEARAI_API_KEY"]},{id:"wandb",env:["WANDB_API_KEY"]},{id:"subconscious",env:["SUBCONSCIOUS_API_KEY"]},{id:"zeldoc",env:["ZELDOC_API_KEY"]},{id:"databricks",env:["DATABRICKS_HOST","DATABRICKS_TOKEN"]},{id:"umans-ai-coding-plan",env:["UMANS_AI_CODING_PLAN_API_KEY"]},{id:"kuae-cloud-coding-plan",env:["KUAE_API_KEY"]},{id:"umans-ai",env:["UMANS_AI_API_KEY"]},{id:"siliconflow",env:["SILICONFLOW_API_KEY"]},{id:"minimax-coding-plan",env:["MINIMAX_API_KEY"]},{id:"alibaba-coding-plan",env:["ALIBABA_CODING_PLAN_API_KEY"]},{id:"lilac",env:["LILAC_API_KEY"]},{id:"moonshotai-cn",env:["MOONSHOT_API_KEY"]},{id:"bothub",env:["BOTHUB_API_KEY"]},{id:"xiaomi-token-plan-cn",env:["XIAOMI_API_KEY"]},{id:"privatemode-ai",env:["PRIVATEMODE_API_KEY","PRIVATEMODE_ENDPOINT"]},{id:"llmgateway-providers",env:["LLMGATEWAY_API_KEY"]},{id:"above",env:["ABOVE_API_KEY"]},{id:"kilo",env:["KILO_API_KEY"]},{id:"venice",env:["VENICE_API_KEY"]},{id:"alibaba-token-plan-cn",env:["ALIBABA_TOKEN_PLAN_API_KEY"]},{id:"ai21",env:["AI21_API_KEY"]},{id:"lowrouter",env:["LOWROUTER_API_KEY"]},{id:"inference",env:["INFERENCE_API_KEY"]},{id:"iflowcn",env:["IFLOW_API_KEY"]},{id:"minimax-cn-coding-plan",env:["MINIMAX_API_KEY"]},{id:"thinkingmachines",env:["TINKER_API_KEY"]},{id:"stepfun-step-plan",env:["STEPFUN_API_KEY"]},{id:"melious",env:["MELIOUS_API_KEY"]},{id:"berget",env:["BERGET_API_KEY"]},{id:"snowflake-cortex",env:["SNOWFLAKE_ACCOUNT","SNOWFLAKE_CORTEX_PAT"]},{id:"sarvam",env:["SARVAM_API_KEY"]},{id:"nova",env:["NOVA_API_KEY"]},{id:"abacus",env:["ABACUS_API_KEY"]},{id:"novita-ai",env:["NOVITA_API_KEY"]},{id:"302ai",env:["302AI_API_KEY"]},{id:"openrouter",env:["OPENROUTER_API_KEY"]},{id:"perplexity",env:["PERPLEXITY_API_KEY"]},{id:"iteracompute",env:["ITERACOMPUTE_API_KEY"]},{id:"the-grid-ai",env:["THEGRID_API_KEY"]},{id:"meta",env:["META_MODEL_API_KEY"]},{id:"cline-pass",env:["CLINE_API_KEY"]},{id:"modal",env:["MODAL_PROXY_TOKEN"]},{id:"coralbricks",env:["CORAL_API_KEY"]},{id:"routing-run",env:["ROUTING_RUN_API_KEY"]},{id:"echo",env:["ECHO_API_KEY"]},{id:"neuralwatt",env:["NEURALWATT_API_KEY"]},{id:"gitlab",env:["GITLAB_TOKEN"]},{id:"infer",env:["INFER_API_KEY"]},{id:"azure",env:["AZURE_RESOURCE_NAME","AZURE_API_KEY"]},{id:"freemodel",env:["FREEMODEL_API_KEY"]},{id:"azure-cognitive-services",env:["AZURE_COGNITIVE_SERVICES_RESOURCE_NAME","AZURE_COGNITIVE_SERVICES_API_KEY"]},{id:"pendra",env:["PENDRA_API_KEY"]},{id:"moark",env:["MOARK_API_KEY"]},{id:"atomic-chat",env:["ATOMIC_CHAT_API_KEY"]},{id:"qihang-ai",env:["QIHANG_API_KEY"]},{id:"ai-router",env:["AI_ROUTER_API_KEY"]},{id:"llmtr",env:["LLMTR_API_KEY"]},{id:"alibaba",env:["DASHSCOPE_API_KEY"]},{id:"auriko",env:["AURIKO_API_KEY"]},{id:"zenmux",env:["ZENMUX_API_KEY"]},{id:"unorouter",env:["UNOROUTER_API_KEY"]},{id:"salad-cloud",env:["SALAD_CLOUD_API_KEY"]},{id:"vispark",env:["VISPARK_LAB_API_KEY"]},{id:"siliconflow-cn",env:["SILICONFLOW_CN_API_KEY"]},{id:"regolo-ai",env:["REGOLO_API_KEY"]},{id:"xiaomi-token-plan-ams",env:["XIAOMI_API_KEY"]},{id:"inceptron",env:["INCEPTRON_API_KEY"]},{id:"upstage",env:["UPSTAGE_API_KEY"]},{id:"vultr",env:["VULTR_API_KEY"]},{id:"huggingface",env:["HF_TOKEN"]},{id:"volcengine",env:["ARK_API_KEY"]},{id:"impossibl",env:["IMPOSSIBL_API_KEY"]},{id:"xpersona",env:["XPERSONA_API_KEY"]},{id:"qiniu-ai",env:["QINIU_API_KEY"]},{id:"modelscope",env:["MODELSCOPE_API_KEY"]},{id:"google",env:["GOOGLE_API_KEY","GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"]},{id:"vancine",env:["VANCINE_API_KEY"]},{id:"zhipuai-coding-plan",env:["ZHIPU_API_KEY"]},{id:"lucidquery",env:["LUCIDQUERY_API_KEY"]},{id:"gmicloud",env:["GMICLOUD_API_KEY"]},{id:"oci",env:["OCI_GENAI_API_KEY"]},{id:"cloudflare-ai-gateway",env:["CLOUDFLARE_API_TOKEN","CLOUDFLARE_ACCOUNT_ID","CLOUDFLARE_GATEWAY_ID"]},{id:"clarifai",env:["CLARIFAI_PAT"]},{id:"aiand",env:["AIAND_API_KEY"]},{id:"frogbot",env:["FROGBOT_API_KEY"]},{id:"stackit",env:["STACKIT_API_KEY"]},{id:"anyapi",env:["ANYAPI_API_KEY"]},{id:"crusoe",env:["CRUSOE_API_KEY"]},{id:"volcengine-coding-plan",env:["ARK_CODING_PLAN_API_KEY"]},{id:"jiekou",env:["JIEKOU_API_KEY"]},{id:"ollama-cloud",env:["OLLAMA_API_KEY"]},{id:"agentrouter",env:["AGENTROUTER_API_KEY"]},{id:"tencent-tokenhub",env:["TENCENT_TOKENHUB_API_KEY"]},{id:"watsonx",env:["WATSONX_AI_APIKEY","WATSONX_AI_PROJECT_ID"]},{id:"ambient",env:["AMBIENT_API_KEY"]},{id:"model-oracle-ai",env:["MODEL_ORACLE_API_KEY"]},{id:"xai",env:["XAI_API_KEY"]},{id:"nebius",env:["NEBIUS_API_KEY"]},{id:"minimax-cn",env:["MINIMAX_API_KEY"]},{id:"scaleway",env:["SCALEWAY_API_KEY"]},{id:"vercel",env:["AI_GATEWAY_API_KEY"]},{id:"zai-coding-plan",env:["ZHIPU_API_KEY"]},{id:"ebcloud",env:["EBCLOUD_API_KEY"]},{id:"greenpt",env:["GREENPT_API_KEY"]},{id:"mixlayer",env:["MIXLAYER_API_KEY"]},{id:"hyper",env:["HYPER_API_KEY"]},{id:"jalapeno",env:["JALAPENO_API_KEY"]},{id:"dinference",env:["DINFERENCE_API_KEY"]},{id:"neosmith",env:["NEOSMITH_API_KEY"]},{id:"fireworks-ai",env:["FIREWORKS_API_KEY"]},{id:"stepfun-ai",env:["STEPFUN_API_KEY"]},{id:"fastrouter",env:["FASTROUTER_API_KEY"]},{id:"orcarouter",env:["ORCAROUTER_API_KEY"]},{id:"friendli",env:["FRIENDLI_TOKEN"]},{id:"kimi-code-plan-cn",env:["KIMI_API_KEY"]},{id:"inco",env:["INCO_API_KEY"]},{id:"sakana",env:["SAKANA_API_KEY"]},{id:"scx-ai",env:["SCX_API_KEY"]},{id:"zenifra",env:["ZENIFRA_AI_KEY"]},{id:"tokenrouter",env:["TOKENROUTER_API_KEY"]},{id:"google-vertex-anthropic",env:["GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION","GOOGLE_APPLICATION_CREDENTIALS"]},{id:"moonshotai",env:["MOONSHOT_API_KEY"]},{id:"ainetcafe",env:["AINETCAFE_API_KEY"]},{id:"wallaby",env:["WALLABY_API_KEY"]},{id:"bee",env:["BEE_API_KEY"]},{id:"scnet-token-plan",env:["SCNET_API_KEY"]},{id:"ofox",env:["OFOX_API_KEY"]},{id:"neon",env:["NEON_AI_GATEWAY_BASE_URL","NEON_AI_GATEWAY_TOKEN"]},{id:"aihubmix",env:["AIHUBMIX_API_KEY"]},{id:"merge-gateway",env:["MERGE_GATEWAY_API_KEY"]},{id:"opper",env:["OPPER_API_KEY"]},{id:"nvidia",env:["NVIDIA_API_KEY"]},{id:"pioneer",env:["PIONEER_API_KEY"]},{id:"xiaomi",env:["XIAOMI_API_KEY"]},{id:"xiaomi-token-plan-sgp",env:["XIAOMI_API_KEY"]},{id:"minimax",env:["MINIMAX_API_KEY"]},{id:"github-copilot",env:["GITHUB_TOKEN"]},{id:"inferx",env:["INFERX_API_KEY"]},{id:"opencode-go",env:["OPENCODE_API_KEY"]},{id:"openreason",env:["OPENREASON_API_KEY"]},{id:"lmstudio",env:["LMSTUDIO_API_KEY"]},{id:"aki-io",env:["AKI_IO_API_KEY"]},{id:"tensorx",env:["TENSORX_API_KEY"]},{id:"longcat",env:["LONGCAT_API_KEY"]},{id:"pareto",env:["PARETO_API_KEY"]},{id:"chutes",env:["CHUTES_API_KEY"]},{id:"edenai",env:["EDENAI_API_KEY"]},{id:"stepfun",env:["STEPFUN_API_KEY"]},{id:"hpc-ai",env:["HPC_AI_API_KEY"]},{id:"tencent-coding-plan",env:["TENCENT_CODING_PLAN_API_KEY"]},{id:"tempr",env:["TEMPR_API_KEY"]},{id:"inception",env:["INCEPTION_API_KEY"]},{id:"modelis",env:["MODELIS_API_KEY"]},{id:"opencode",env:["OPENCODE_API_KEY"]},{id:"kenari",env:["KENARI_API_KEY"]},{id:"kimi-code-plan-global",env:["KIMI_API_KEY"]},{id:"trustedrouter",env:["TRUSTEDROUTER_API_KEY"]},{id:"wafer.ai",env:["WAFER_API_KEY"]},{id:"zhipuai",env:["ZHIPU_API_KEY"]},{id:"lynkr",env:["LYNKR_API_KEY"]},{id:"meganova",env:["MEGANOVA_API_KEY"]},{id:"ovhcloud",env:["OVHCLOUD_API_KEY"]},{id:"requesty",env:["REQUESTY_API_KEY"]},{id:"mistral",env:["MISTRAL_API_KEY"]},{id:"amazon-bedrock",env:["AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_REGION","AWS_BEARER_TOKEN_BEDROCK"]},{id:"synthetic",env:["SYNTHETIC_API_KEY"]},{id:"llmgateway",env:["LLMGATEWAY_API_KEY"]},{id:"sap-ai-core",env:["AICORE_SERVICE_KEY"]},{id:"vivgrid",env:["VIVGRID_API_KEY"]},{id:"klokintegration",env:["KLOKINTEGRATION_API_KEY"]},{id:"google-vertex",env:["GOOGLE_VERTEX_PROJECT","GOOGLE_VERTEX_LOCATION","GOOGLE_APPLICATION_CREDENTIALS"]},{id:"evroc",env:["EVROC_API_KEY"]},{id:"tokengo",env:["TOKENGO_API_KEY"]},{id:"submodel",env:["SUBMODEL_INSTAGEN_ACCESS_KEY"]},{id:"kosmik",env:["KOSMIK_API_KEY"]},{id:"tencent-token-plan",env:["TENCENT_TOKEN_PLAN_API_KEY"]},{id:"togetherai",env:["TOGETHER_API_KEY"]},{id:"helicone",env:["HELICONE_API_KEY"]},{id:"cortecs",env:["CORTECS_API_KEY"]},{id:"agnes",env:["AGNES_API_KEY"]},{id:"daoxe",env:["DAOXE_API_KEY"]},{id:"morph",env:["MORPH_API_KEY"]},{id:"openai",env:["OPENAI_API_KEY"]},{id:"alibaba-coding-plan-cn",env:["ALIBABA_CODING_PLAN_API_KEY"]},{id:"io-net",env:["IOINTELLIGENCE_API_KEY"]},{id:"infomaniak",env:["INFOMANIAK_API_KEY","INFOMANIAK_PRODUCT_ID"]},{id:"llmtech",env:["LLMTECH_API_KEY"]},{id:"crossmodel",env:["CROSSMODEL_API_KEY"]},{id:"arcee",env:["ARCEE_API_KEY"]},{id:"drun",env:["DRUN_API_KEY"]},{id:"amd",env:["AMD_API_KEY"]},{id:"qvac",env:["QVAC_API_KEY"]},{id:"claudinio",env:["CLAUDINIO_API_KEY"]},{id:"runinfra",env:["RUNINFRA_GATEWAY_KEY"]},{id:"hetzner",env:["HETZNER_API_KEY"]},{id:"digitalocean",env:["DIGITALOCEAN_ACCESS_TOKEN"]},{id:"aixy",env:["AIXY_API_KEY"]},{id:"alibaba-cn",env:["DASHSCOPE_API_KEY"]}];function Mi(e){if(!e.released)return null;let t=new Date(e.released).getTime();return Number.isNaN(t)?null:t}function cC(e){if(e.provider)return e.provider;let t=e.id.indexOf("/");return t===-1?"beeuni":e.id.slice(0,t)}function kb(e,t){let n=new Map;for(let r of e){let s=t(r),o=n.get(s);o?o.push(r):n.set(s,[r])}return n}function ge(e){let t=e.includes("/")?e.slice(e.indexOf("/")+1):e;return t.startsWith("global.")?2:/^(us|eu|jp|apac|au|ca|sa|us-gov)\./.test(t)?1:0}function Rb(e){return e.reduce((t,n)=>{let r=Mi(n)??0,s=Mi(t)??0;return r!==s?r>s?n:t:ge(n.id)>ge(t.id)?n:t})}function Oi(e,t){let n=(t?.now??new Date).getTime(),r=(t?.windowMonths??6)*2630016e3,s=new Set;for(let[,o]of kb(e,cC)){let a=[...kb(o,p=>p.family||p.id).values()].map(Rb),c=a.filter(p=>{let d=Mi(p);return d!==null&&Math.abs(n-d)<r});for(let p of c.length>0?c:[Rb(a)])s.add(p.id)}return s}function _s(e){let t=e.filter(r=>r.status!=="deprecated"&&r.status!=="beta"&&r.tool_call!==!1),n=t.length>0?t:e;return n.some(r=>ge(r.id)>0)?n.filter(r=>ge(r.id)>0):n}function zn(e){let t;for(let n of _s(e)){if(!t){t=n;continue}let r=(n.released??"").localeCompare(t.released??"");(r>0||r===0&&ge(n.id)>ge(t.id))&&(t=n)}return t}var lC={"amazon-bedrock":{methods:[{label:"Bearer token",envVars:["AWS_BEARER_TOKEN_BEDROCK","AWS_REGION"]}]},google:{methods:[{envVars:["GOOGLE_GENERATIVE_AI_API_KEY"]},{envVars:["GOOGLE_API_KEY"]},{envVars:["GEMINI_API_KEY"]}]}};function Cb(e){return`${e.toUpperCase().replace(/[^A-Z0-9]+/g,"_")}_API_KEY`}var uC=(()=>{let e=new Map;for(let{id:n,env:r}of Ei)r.length===1&&e.set(r[0],[...e.get(r[0])??[],n]);let t=new Map;for(let[n,r]of e){if(r.length<2)continue;let s=[...r].sort((o,i)=>o.length-i.length||o.localeCompare(i));t.set(n,r.find(o=>Cb(o)===n)??s[0])}return t})();function Ib(e){let t=lC[e.id];if(t)return t;let n=e.env??[],r=n.length===1?uC.get(n[0]):void 0;return r&&r!==e.id?{methods:[{envVars:[Cb(e.id)]}]}:{methods:n.length>0?[{envVars:n}]:[]}}function Di(e,t){return e.methods.some(n=>n.envVars.length>0&&n.envVars.every(t))}var pC=["low","medium","high"];function Tb(e){if(!e)return{temperature:!1,topP:!1};let t=e.reasoning_options?.find(a=>a.type==="effort"),n=e.reasoning_options?.find(a=>a.type==="budget_tokens"),r=t?.values?.length?{values:t.values}:n?{values:[...pC]}:void 0,s=e.temperature===!0,o=e.limit?.output,i=typeof o=="number"&&o>0?{ceiling:o}:void 0;return{reasoningEffort:r,temperature:s,topP:s,maxOutputTokens:i}}var Eb=Ei;var dC=[{id:"gpt-6-astra",name:"GPT-6 Astra",upstreamModelId:"openai/gpt-6-astra",transport:"openrouter",pricingRef:"openrouter/openai/gpt-6-astra",pricing:{inputPerMillion:10,cachedInputPerMillion:1,cacheWritePerMillion:12.5,outputPerMillion:50,contextOver200k:{contextThreshold:272e3,inputPerMillion:20,cachedInputPerMillion:2,cacheWritePerMillion:25,outputPerMillion:75}},tier:"flagship",vision:!0,limit:{context:105e4,output:128e3},openrouterProvider:{order:["openai"],allow_fallbacks:!0}},{id:"gpt-6-sol",name:"GPT-6 Sol",upstreamModelId:"openai/gpt-6-sol",transport:"openrouter",pricingRef:"openrouter/openai/gpt-6-sol",pricing:{inputPerMillion:2.2,cachedInputPerMillion:.22,cacheWritePerMillion:2.75,outputPerMillion:11,contextOver200k:{contextThreshold:272e3,inputPerMillion:4.4,cachedInputPerMillion:.44,cacheWritePerMillion:5.5,outputPerMillion:16.5}},tier:"balanced",vision:!0,limit:{context:105e4,output:128e3},openrouterProvider:{only:["azure/us"],allow_fallbacks:!1,zdr:!0,data_collection:"deny"}}],EH=new Map(dC.map(e=>[e.id,e]));var Mb=["gpt-6-astra","gpt-6-sol"],Ob="gpt-6-astra",Db="gpt-6-sol";var $b=Eb.map(e=>({id:e.id,authRequirement:Ib(e)})),Yn=new Set(["beeuni"]),ji=new Set(["beeuni"]);function Jt(e){let t=Array.isArray(e.all)?e.all:[],n=Array.isArray(e.connected)?e.connected:[];if(t.length>0||n.length>0)return{...e,all:t,connected:n};let r=e.providers,s=Array.isArray(r)?r:[];return s.length===0?{...e,all:[],connected:[]}:{...e,all:s,connected:s.map(o=>o.id)}}function gC(e){if(!e)return!1;let t=Jt(e),n=Array.isArray(t.all)?t.all:[],r=Array.isArray(t.connected)?t.connected:[];return r.length===0?!1:n.some(s=>r.includes(s.id)&&s.models&&Object.keys(s.models).length>0)}function mC(e){let t=Jt(e),n=Array.isArray(t.all)?t.all:[],r=Array.isArray(t.connected)?t.connected:[];return{...t,all:n.filter(s=>!ji.has(s.id)),connected:r.filter(s=>!ji.has(s))}}function fC(e,t,n){let r=Jt(e),s=Array.isArray(r.all)?r.all:[],o=new Set(s.map(a=>a.id)),i=new Set(Array.isArray(r.connected)?r.connected:[]);for(let a of n)o.has(a.id)&&Di(a.authRequirement,c=>t.has(c))&&i.add(a.id);return o.has("codex")&&(t.has("CODEX_AUTH_JSON")||t.has("OPENCODE_AUTH_JSON"))&&i.add("codex"),{...r,connected:[...i]}}var yC=new Map(["anthropic","openai","google","x-ai","xai","deepseek","mistral","groq","perplexity","openrouter"].map((e,t)=>[e,t]));function hC(e){let t=e.reasoning_options??[],n=t.find(r=>r.type==="effort");return n?(n.values??[]).flatMap(r=>r===null?["none"]:typeof r=="string"?[r]:[]):t.some(r=>r.type==="budget_tokens")?["high","max"]:[]}var $i="opencode";function bC(e){return e.cost?.input===0&&e.cost?.output===0}function jb(e){return e===$i?Number.MAX_SAFE_INTEGER:yC.get(e)??Number.MAX_SAFE_INTEGER-1}function _C(e,t){let n=SC(t),r={},s=(e.providers??[]).map(o=>{let i=(o.models??[]).filter(a=>a.status!=="deprecated");return o.id===$i&&!n.has($i)?{...o,models:i.filter(bC),keyless:!0}:{...o,models:i,keyless:!1}}).filter(o=>(o.keyless||n.has(o.id))&&!ji.has(o.id)&&(o.models?.length??0)>0).sort((o,i)=>jb(o.id)-jb(i.id)).map(o=>{let i=[...o.models].sort((c,p)=>(p.released??"").localeCompare(c.released??"")||ge(p.id)-ge(c.id)),a=zn(i)?.id??i[0]?.id;return a&&(r[o.id]=a),{id:o.id,name:o.name,source:o.keyless?"api":"env",models:Object.fromEntries(i.map(c=>{let p=hC(c);return[c.id,{id:c.id,name:c.name,...c.released?{release_date:c.released}:{},...c.family?{family:c.family}:{},...c.reasoning!==void 0?{reasoning:c.reasoning}:{},...c.reasoning_options?{reasoning_options:c.reasoning_options}:{},...c.tool_call!==void 0?{tool_call:c.tool_call}:{},...c.attachment!==void 0?{attachment:c.attachment}:{},...c.modalities?{modalities:c.modalities}:{},...c.limit?{limit:c.limit}:{},...c.cost?{cost:c.cost}:{},...c.description?{description:c.description}:{},...c.open_weights!==void 0?{open_weights:c.open_weights}:{},...c.last_updated?{last_updated:c.last_updated}:{},...p.length>0?{variants:Object.fromEntries(p.map(d=>[d,{}]))}:{}}]}))}});return{all:s,connected:s.map(o=>o.id),default:r}}function PC(e,t){if(!e)return t;if(!t)return e;let n=Jt(e),r=Jt(t),s=new Map;for(let d of Array.isArray(r.all)?r.all:[])s.set(d.id,d);let o=[],i=new Set;for(let d of Array.isArray(n.all)?n.all:[])o.push(s.get(d.id)??d),i.add(d.id);for(let d of Array.isArray(r.all)?r.all:[])i.has(d.id)||(o.push(d),i.add(d.id));let a=[],c=new Set;for(let d of[...Array.isArray(n.connected)?n.connected:[],...Array.isArray(r.connected)?r.connected:[]])c.has(d)||(a.push(d),c.add(d));let p={...r.default??{}};for(let[d,g]of Object.entries(n.default??{})){let m=s.get(d);(!m||m.models&&g in m.models)&&(p[d]=g)}return{...r,all:o,connected:a,default:p}}function SC(e){let t=new Set;for(let n of $b)Di(n.authRequirement,r=>e.has(r))&&t.add(n.id);return(e.has("CODEX_AUTH_JSON")||e.has("OPENCODE_AUTH_JSON"))&&t.add("codex"),t}function xC(e){let t=Object.fromEntries(Object.entries(e.models??{}).filter(([r])=>r!=="auto"&&r!=="beeuni/auto").map(([r,s])=>{if(s.variants&&Object.keys(s.variants).length>0)return[r,s];let o=Tb({id:r,name:s.name,reasoning:s.reasoning,reasoning_options:s.reasoning_options}).reasoningEffort?.values;return o?.length?[r,{...s,variants:Object.fromEntries(o.map(i=>[i,{}]))}]:[r,s]})),n=Object.keys(t)[0];return{default:n?{beeuni:n}:{},connected:["beeuni"],all:[{id:"beeuni",name:"Beeuni",source:"gateway",models:t}]}}function wC(e,t){return mC(fC(Jt(e),t,$b))}function AC(e){if(e.gatewayEnabled)return e.modelPicker?xC(e.modelPicker):void 0;let t=e.secretNames??new Set,n=e.runtimeProviders?wC(e.runtimeProviders,t):void 0;return PC(e.llmCatalogProviders?_C(e.llmCatalogProviders,t):void 0,gC(n)?n:void 0)}function vC(e){return"capabilities"in e&&e.capabilities!=null}function Ui(e,t){let n=e.find(r=>r.providerID===t.providerID&&r.modelID===t.modelID);return!!n&&n.enabled!==!1}function kC(e,t){if(!e)return[];let n=t?.providerMode??"gateway",r=Array.isArray(e.all)?e.all:[],s=Array.isArray(e.connected)?e.connected:[],o=[];for(let i of r)if(s.includes(i.id)&&!(n==="gateway"?!Yn.has(i.id):Yn.has(i.id)))for(let[a,c]of Object.entries(i.models)){if(a==="auto"||a==="beeuni/auto")continue;let p;if(vC(c)){let d=c.capabilities;p={reasoning:d.reasoning??!1,vision:d.input?d.input.image??!1:void 0,toolcall:d.toolcall??!1}}else{let d=c.modalities?.input;p={reasoning:c.reasoning??!1,vision:d?d.includes("image"):c.attachment,toolcall:c.tool_call??!1}}o.push({id:vb({providerID:i.id,modelID:a}),providerID:i.id,providerName:c.provider_name??i.name,modelID:a,modelName:(c.name||a).replace("(latest)","").trim(),variants:c.variants,capabilities:p,contextWindow:c.limit?.context,releaseDate:c.release_date,family:c.family,cost:c.cost?{input:c.cost.input??0,output:c.cost.output??0}:void 0,providerSource:i.source,provider:c.provider,reasoningOptions:c.reasoning_options,description:c.description,openWeights:c.open_weights,lastUpdated:c.last_updated,enabled:c.enabled,free:c.free===!0})}return o}function Ub(e){return new Map(e.map(t=>[`${t.providerID}:${t.modelID}`,t]))}var RC=new Set([Ob]),CC="beeuni",Lb="codex",IC=new Set(Mb);function TC(e,t){if(t)return t;let n=e.indexOf("/");return n===-1?e:e.slice(0,n)}function Qt(e){return RC.has(e.modelID)}function EC(e){return Oi(e.map(t=>({id:`${t.providerID}:${t.modelID}`,released:t.releaseDate,family:t.family,provider:t.provider??t.providerID})))}function MC(e){let{connectedProviderIds:t}=e,n=e.freeTier??!1,r=EC(e.catalogModels),s=Ub(e.catalogModels),o=new Map;for(let i of e.pins??[])o.set(`${i.providerID}:${i.modelID}`,i.visibility);return i=>{let a=`${i.providerID}:${i.modelID}`,c=o.get(a);if(c==="hide")return!1;if(i.providerID===CC){let d=TC(i.modelID,i.provider),g=d===Lb?t?.has(Lb)??!1:t?.has(d)??!1;if(IC.has(i.modelID))return!n||i.modelID===Db;if(!g)return!1;if(c==="show"||r.has(a))return!0;let m=s.get(a);if(!m?.releaseDate)return Qt(i);try{let y=new Date(m.releaseDate);if(Number.isNaN(y.getTime()))return Qt(i)}catch{return Qt(i)}return!1}if(c==="show"||r.has(a))return!0;let p=s.get(a);if(!p?.releaseDate)return Qt(i);try{let d=new Date(p.releaseDate);if(Number.isNaN(d.getTime()))return Qt(i)}catch{return Qt(i)}return!1}}function OC(e,t){return t.search.trim().length>0||e.providerID==="beeuni"||t.selected&&t.selected.providerID===e.providerID&&t.selected.modelID===e.modelID?!0:t.isStoreVisible({providerID:e.providerID,modelID:e.modelID})}function Bb(e,t){if(!e||Yn.has(e.providerID)||ge(e.modelID)>0)return e;let n=t.filter(i=>i.providerID===e.providerID&&i.enabled!==!1);if(!n.some(i=>ge(i.modelID)>0))return e;let r=i=>ge(i)===1&&i.slice(i.indexOf(".")+1)===e.modelID,o=(n.find(i=>i.modelID===`global.${e.modelID}`)??n.find(i=>r(i.modelID)))?.modelID??zn(n.map(i=>({id:i.modelID,released:i.releaseDate})))?.id;return!o||o===e.modelID?e:{...e,modelID:o}}function DC(e,t){let n=(t?e?.agentDefaults?.[t]:void 0)??e?.projectDefault??e?.accountDefault??e?.platformDefault;return n?Ti(n):void 0}function jC(e){let{models:t,providers:n}=e,r=c=>Ui(t,c),s=c=>c.find(p=>!!p&&r(p)),o=(()=>{if(e.configModel){let c=e.configModel.split("/");if(c.length>=2){let[p,...d]=c,g=d.join("/");if(r({providerID:p,modelID:g}))return{providerID:p,modelID:g}}}for(let c of e.recent??[])if(r(c))return c;if(n){let c=n.default||{},p=Array.isArray(n.all)?n.all:[],d=Array.isArray(n.connected)?n.connected:[],g=p.filter(m=>d.includes(m.id));for(let m of g){let y=c[m.id];if(y){let h={providerID:m.id,modelID:y};if(r(h))return h}for(let h of _s(Object.keys(m.models).map(w=>({id:w})))){let w={providerID:m.id,modelID:h.id};if(r(w))return w}}}})(),i=s(e.picks??[]),a=i??s([e.serverDefault,e.globalDefault,e.agentModel,o]);return{model:Bb(a,t),explicit:i,fallback:o}}export{xk as ABORT_REASONS,tW as ABORT_REASONS_NOT_YET_EMITTED,Xi as ACCOUNTS_LIST_UNAVAILABLE_CODE,Qi as ANALYTICS_UNAVAILABLE_CODE,sR as ATTACHMENT_PART_REF_PREFIX,_ as ApiError,oe as AuthError,Bt as BEEUNI_TRANSCRIPT_SCHEMA,Pt as BeeuniMemberError,rt as BillingError,yR as CONNECTION_FAULT_GRACE_MS,eR as CONNECTOR_POLL_FIRST_DELAY_MS,tR as CONNECTOR_POLL_INTERVAL_MS,nR as CONNECTOR_POLL_WINDOW_MS,Xw as CONTEXT_TOOLS,qs as ConnectorApprovalPendingError,mr as ConnectorCallError,Gs as ConnectorPageLimitError,Zw as DEFAULT_CONTEXT_TOOL_TRIGGER_LABELS,m$ as DEFAULT_NOTIFICATION_PREFERENCES,vy as DEFAULT_TRANSCRIPT_OPTIONS,vs as FEATURE_DISABLED_CODE,xI as FEATURE_FLAG_KEYS,zi as FEATURE_NOT_SUPPORTED_CODE,bt as FILE_VERBS,kn as FileExistsError,gn as HeadlessAuthError,Kn as HostBoundaryError,g$ as INBOX_NOTIFICATION_KINDS,wi as INBOX_OBSERVATION_MAX_MS,XK as INITIAL_SETTLED_CONNECTION,K_ as KNOWN_TOOL_KINDS,E_ as MAX_PROMPT_ATTACHMENTS_BYTES,Ks as MAX_PROMPT_ATTACHMENT_BYTES,Ul as MAX_PROMPT_ATTACHMENT_FILES,D1 as MEMORY_VERBS,Yi as MODEL_NOT_SERVABLE_CODE,GP as NO_GROUP_ACTIVITY_TOOLS,Ai as OPTIMISTIC_ABORT_MAX_MS,SV as OPTIMISTIC_COMPACTION_MAX_MS,Si as OPTIMISTIC_RECEIPT_MAX_MS,PK as PERSISTED_QUERY_CACHE_VERSION,KA as PLUMBING_TOOLS,FK as PREVIEW_PROBE_TIMEOUT_MS,TE as PROJECT_SESSION_NAME_LOOKUP_LIMIT,IE as PROJECT_SESSION_PAGE_DEFAULT_LIMIT,pP as PROJECT_SESSION_PAGE_MAX_LIMIT,Ji as PROVISION_IN_FLIGHT_CODE,no as PublicSessionShareError,aW as RUNTIME_NOT_READY_MARKERS,NU as RUNTIME_PERMISSION_CAPABILITIES,FU as RUNTIME_PERMISSION_REPLIES,wt as RequestTooLargeError,Sn as RuntimeNotReadyError,Ko as SANDBOX_FS_ROOTS,ze as SANDBOX_PORTS,wR as SERVER_COMPACTION_REVALIDATE_MS,xi as SERVER_OBSERVATION_MAX_MS,DV as SESSION_LIST_STATUS,cn as SESSION_LOG_MINOR,We as SESSION_LOG_SCHEMA,UV as SESSION_NOTICE,WP as STANDALONE_TOOLS,Vn as STREAM_OBSERVATION_MAX_MS,fs as SandboxNotReadyError,jt as SessionNotReadyError,Js as SessionStartError,uV as TURN_END_LEDGER_LAG_MS,yS as TURN_ERROR_CODES,CV as WAKE_ESCALATION_COOLDOWN_MS,RV as WAKE_MAX_RESTARTS,kV as WAKE_NO_PROGRESS_MS,Uo as WIRE_ID_BACKDATE_MS,gt as WIRE_ID_CLOCK_TOLERANCE,Je as WIRE_ID_TIME_MASK,bn as WIRE_ID_TIME_SCALE,pS as WIRE_MESSAGE_ID,UC as __getConfigResolver,$C as __setConfigResolver,nW as abortErrorReason,xa as acceptAccountInvite,BW as acceptInvite,og as actReviewItem,Hc as activateConnection,Jc as addComputerToProject,Md as addGroupMembers,Gg as addMarketplaceSource,TV as advanceWakeEscalation,LA as allDescendantIds,ab as appendPreviewToken,Za as approveProjectAccessRequest,fL as approveTask,dr as archiveProject,wL as assignTicket,lc as attachGroupToProject,Eo as authMfa,Co as authUser,j as authenticatedFetch,yr as authenticatedRequest,LK as authorizePreviewUrl,l as backendApi,JR as beeuniAppViewerToken,XR as beeuniBinding,wS as beeuniPty,_b as beeuniToken,UM as bindSlackIdentity,LM as bindTeamsIdentity,Sc as brokerProjectSecretRequest,wK as browserKeyValueStorage,KK as buildPresentationTemplateImageUrl,WK as buildPresentationTemplatePdfUrl,ib as buildPreviewAuthEndpoint,Qk as buildPublicTemplateUrl,fR as buildRuntimePresentationConversionUrl,Il as buildSandboxTemplate,JA as buildScrapeFailureResults,rF as buildStaticFileHealthPreviewUrl,nF as buildStaticFileLocalUrl,tF as buildStaticFilePreviewUrl,Mx as buildStaticFileServicePath,yH as buildTunnelEventStreamUrl,cF as buildWebProxyUrl,ig as bulkActReviewItems,wO as bulkDeletePolicies,AO as bulkImportPolicies,Xq as burstSummary,Zq as burstSummaryLabel,Ct as callConnector,AP as cancelAccountDeletion,ba as cancelAccountInvite,RW as cancelSandbox,Up as cancelScheduledChange,Dp as cancelSubscription,Uk as checkAccessEmail,Dq as childMapByParent,Vx as claimNext,AM as claimPerSeatBilling,Tu as claimWarmProjectSession,mh as classifyPart,gR as classifyPreviewProbeStatus,_S as classifyPtyClose,DA as classifyTurn,qq as cleanErrorMessage,iG as cleanResultSnippet,v1 as cleanWorkerOutput,zR as clearBeeuniAppViewerCache,yp as clearModelDefault,pE as clearSessionFresh,tu as closeChangeRequest,QL as closeMilestone,Tq as collectTurnParts,vL as commentTicket,su as commitSessionChanges,wV as compactionExpiryAtMs,tG as compactionTurnInfo,Cq as compareMessagesForDisplay,rN as compareSemver,Hx as completeInFlight,Qp as completeSlackInstall,Xp as completeTeamsInstall,Ab as composerSelectableAgents,Fh as computeStatusFromPart,Np as configureAutoTopup,xs as configureBeeuni,Mp as confirmCheckoutSession,od as connectEmail,zp as connectSlack,QK as connectionFromHealth,JK as connectionIsFaulted,mT as connectionSharedWithEveryone,ll as connectorConnect,Xc as connectorConnectConnection,hl as connectorFinalize,Zc as connectorFinalizeConnection,iK as connectorHeadline,PG as contextLabelForTool,qN as contextToolSummary,GN as contextToolTrigger,HD as convertPresentationToGoogleSlides,VK as convertRuntimePresentation,Kr as copyFile,Gp as costExportUrl,dV as countLiveInboxPrompts,ZD as countReviewItemsBySegment,aa as createAccount,Mg as createAccountAuditWebhook,Tc as createAccountSecretResource,Sg as createAccountToken,Vg as createApp,em as createAppAccessSession,nm as createAppDeployment,Yg as createAppToken,bm as createAppVolume,xm as createAppVolumeSnapshot,SG as createArtifactKind,Xd as createAssignment,SD as createAuditWebhook,GW as createBackup,qx as createBeeuni,wf as createBeeuniPty,Oo as createBeeuniSession,Ep as createCheckoutSession,ul as createConnector,rK as createConnectorLinkInfoCache,Wr as createFile,wd as createGatewayKey,Cd as createGroup,GR as createHttpSessionSyncController,Ij as createMarketplaceInstallSession,YL as createMilestone,MC as createModelVisibility,Hd as createOAuthClient,wM as createPerSeatCheckout,xK as createPersistedQueryCache,PO as createPolicy,Op as createPortalSession,Oa as createProject,jL as createProjectAgent,kg as createProjectCliToken,Da as createProjectRepo,gc as createProjectResourceGrant,Mt as createProjectSession,Fa as createProjectSkill,Zu as createProjectTrigger,gy as createPromptAttachmentController,Bd as createRole,hH as createSSEStream,PW as createSandbox,ug as createSandboxShare,kl as createSandboxTemplate,_E as createSavedCopyStore,DO as createScimToken,gD as createServiceAccountApi,Ar as createSessionPrompt,Ru as createSessionPublicShare,Wx as createSessionQueue,fg as createSessionReminder,XO as createSsoGroupMapping,dL as createTask,PL as createTicket,bH as createTunnelEventStream,cH as createWarmSessionPool,hu as currentSavedCopyStore,wa as declineAccountInvite,FW as declineInvite,vP as deleteAccountImmediately,Oc as deleteAccountSecretResource,zg as deleteApp,cm as deleteAppDeployment,wD as deleteAuditWebhook,KW as deleteBackup,WL as deleteBeeuniProject,dl as deleteConnector,yl as deleteConnectorCredential,sB as deleteCredential,i$ as deleteDriveFile,Sf as deleteEnv,qt as deleteFile,Sd as deleteGatewayBudget,Qa as deleteGitHubInstallation,Td as deleteGroup,ZL as deleteMilestone,Jd as deleteOAuthClient,Rc as deletePersonalProjectSecret,xO as deletePolicy,UL as deleteProjectAgent,wc as deleteProjectProviderOAuth,mc as deleteProjectResourceGrant,vc as deleteProjectSecret,qu as deleteProjectSession,tp as deleteProjectTrigger,an as deletePromptAttachment,qd as deleteRole,Cl as deleteSandboxTemplate,fD as deleteServiceAccountApi,$u as deleteSessionPrompt,so as deleteSessionReminder,bg as deleteSessionReminders,ZO as deleteSsoGroupMapping,JO as deleteSsoProvider,yL as deleteTask,kL as deleteTicket,Sa as describeAccountInvite,Us as describeConnectorTool,mm as destroyAppMachine,Pm as destroyAppVolume,pc as detachGroupFromProject,Cx as detectLocalhostUrls,FV as directSubsessions,mD as disableServiceAccountApi,id as disconnectEmail,ed as disconnectSlack,bT as discoverConnectionOAuth2,_T as discoverConnectionOAuth2Resource,pl as discoverConnectorAuth,AW as discoverLocalSandbox,Zj as dismissDriveConflict,Jk as downloadAccountAudit,t$ as downloadDriveFile,bB as dropClientForUrl,SB as dropPublicClientForUrl,Qx as editQueued,Uu as editSessionPrompt,Kx as enqueue,OL as ensurePmSession,dR as ensurePreviewSessionCookie,fT as ensureProjectConnectorConnection,Ik as ensureSandbox,Iu as ensureWarmProjectSession,hS as env,vo as exchangeCode,ym as execInApp,Tg as exportAccountAudit,we as extractGatewayErrorDetails,Kv as extractSkillBaseDir,Y1 as extractSkillContent,qv as extractSkillFiles,R1 as extractWorkerPreview,zx as failInFlight,HG as fallbackBusyRowAfterTurnId,gi as familyForTool,qi as featureDisabledKey,qm as featureFlags,PM as fetchAccountStateWithToken,hI as fetchAccountsWithToken,RK as fetchAttachmentPart,bb as fetchBeeuniAppViewer,OM as fetchCostExportCsv,jl as fetchProjectArchive,QT as fetchProjectFileRaw,TI as fetchProjectsForAccountWithToken,Fm as fetchSessionAttachment,tx as fileDownloadRequest,E1 as filePhase,T1 as fileVerb,gx as files,co as finalizeAppArtifact,Wk as finalizeConnectorSetupLink,ME as findActiveTranscriptShare,qr as findFiles,Eq as findLastTextPart,O$ as findSessionAttachments,Gr as findText,rp as fireProjectTrigger,vl as fixSandboxWithAgent,kC as flattenModels,IG as flattenThought,Am as forkAppVolume,Wi as formatBillingErrorForUI,u1 as formatCost,Nh as formatDuration,Gq as formatJsonFailureOutput,MG as formatMessageDay,OG as formatMessageExact,lW as formatOpenCodeRuntimeError,oG as formatRawOutput,Ck as formatRuntimeError,p1 as formatTokens,sw as formatTranscript,QG as freshSendHint,Gx as generateSessionId,ca as getAccount,ua as getAccountBranding,xP as getAccountDeletionStatus,Ap as getAccountState,vp as getAccountStateMinimal,aA as getAgentCardLabel,dM as getAgentConfig,LL as getAgentPersona,Ek as getAllVersions,Oq as getAnsweredQuestionParts,io as getApp,Qg as getAppAccess,Jg as getAppAuthEnv,sm as getAppDeployment,om as getAppDeploymentLogs,vj as getApprovalLink,ot as getAuthToken,oT as getAuthTokenWithRetry,Fp as getAutoTopupSettings,xM as getAutoTopupSetupStatus,NL as getBeeuniProject,qL as getBeeuniProjectBySession,kf as getBeeuniPtyWebSocketUrl,Cp as getBillingCreditBreakdown,Tp as getBillingTierConfigurations,Rp as getBillingTransactionsSummary,Ip as getBillingUsageHistory,Jl as getChangeRequest,Ql as getChangeRequestDiff,Xl as getChangeRequestMergePreview,oq as getChildSessionError,uh as getChildSessionId,iq as getChildSessionToolParts,mt as getClient,Ue as getClientForUrl,ml as getConnectStatus,hT as getConnectionOAuth2Application,AT as getConnectionOAuth2Status,vT as getConnectionPolicies,rn as getConnectorCatalog,al as getConnectorConfig,ol as getConnectorPolicies,qk as getConnectorSetupLink,MM as getCostSummary,Gf as getCurrentProject,Sp as getDefaultAccountState,lq as getDiagnostics,iA as getDirectory,Ns as getDiscoverConnector,ET as getDiscoverIntegration,vm as getDriveFileUrl,rd as getEmailInstallation,sd as getEmailMode,ED as getEnterpriseDemo,Nr as getFileStatus,ch as getFileWithDir,oA as getFilename,zj as getFolderAccess,Xh as getFullChangelog,yd as getGatewayBreakdown,_d as getGatewayBudgets,bd as getGatewayErrors,xd as getGatewayKeys,gd as getGatewayLog,md as getGatewayOverview,cd as getGatewayRoutingPolicy,fd as getGatewaySeries,hd as getGatewaySessions,Ga as getGitHubInstallation,VD as getGoogleAuthUrl,Rd as getGroup,rq as getHiddenToolParts,LW as getInvite,Tk as getLatestSandboxVersion,NI as getManagedGitBackend,kI as getManagedGitStatus,Fg as getMarketplaceCatalogItem,Ng as getMarketplaceCatalogItemFile,BO as getMfaRequired,HL as getMilestone,xy as getMobileClientPolicy,mp as getModelDefaults,Tm as getNotificationPreferences,Vd as getOAuthClient,Fk as getOAuthConsentRequest,oW as getOpenCodeConfigInvalidError,eq as getPartText,aD as getPatPolicy,uq as getPermissionForTool,ar as getProject,BL as getProjectActivity,Kl as getProjectCommit,Vl as getProjectCommitDiff,cr as getProjectDetail,Hj as getProjectDrive,Hl as getProjectFileHistory,Ma as getProjectGitToken,lr as getProjectLlmCatalog,AI as getProjectLlmCatalogProviders,Mr as getProjectModelAccess,ur as getProjectModelPicker,fr as getProjectSandboxHealth,RI as getProjectSandboxProviderTransition,wr as getProjectSession,Gu as getProjectSessionConfigState,Vu as getProjectSessionScope,Lp as getProrationPreview,bW as getProviders,sF as getProxyBaseUrl,PB as getPublicClientForUrl,jk as getPublicMarketplaceItem,$k as getPublicMarketplaceItemFile,aj as getPublicSessionShare,cj as getPublicSessionShareMessages,Hk as getPublicShareByToken,Xk as getPublicTemplate,pq as getQuestionForTool,YM as getReferralCode,XM as getReferralStats,d1 as getRetryInfo,g1 as getRetryMessage,rg as getReviewItem,Ud as getRolePermissions,Ld as getRoleUsage,hi as getRuntimeConfigInvalidError,zW as getSSHConnection,_W as getSandbox,SW as getSandboxById,gW as getSandboxPortUrl,Qh as getSandboxUrl,at as getSandboxUrlForExternalId,Kk as getSecretSetupLink,Vo as getServerHealth,aB as getServiceLogs,Eu as getSessionAudit,Tr as getSessionCostRecord,NP as getSessionDrives,Jf as getSessionHealth,Ju as getSessionMessageAuthors,Qu as getSessionModelUsage,OE as getSessionOpenBundle,qO as getSessionOversight,xu as getSessionParticipants,rD as getSessionPolicy,vu as getSessionPreviewCandidates,Uc as getSessionProviderSecretPool,Mu as getSessionTranscript,Ou as getSessionTranscriptSync,Du as getSessionTurn,wu as getSessionWatch,x1 as getShellModePart,td as getSlackChannelFile,Hp as getSlackInstallation,Zp as getSlackManifest,Yp as getSlackMode,HO as getSsoProvider,Ox as getStaticFileHealthPath,lL as getTask,pL as getTaskStatus,Mj as getTemplate,bL as getTicket,aq as getToolInfo,oi as getToolPrimaryArg,ow as getTranscriptFilename,o1 as getTurnError,a1 as getTurnErrorDetails,i1 as getTurnErrorRawText,c1 as getTurnStatus,l1 as getTurnTokens,qp as getUsageRollup,zl as getVersionDiff,Mm as getWebPushPublicKey,r1 as getWorkingState,Dc as grantAccountSecretResource,DW as grantSandboxProjectAccess,mM as grantSecretToAgent,Iq as groupMessagesIntoTurns,NG as groupShowSegments,Mh as groupSteps,m1 as hasDiffs,eF as hasLocalhostUrls,Ex as hasPreviewTarget,Uq as hasRetryingAssistantTurn,CS as heartbeatGapEvent,Fu as holdSessionPrompts,cg as humanizeReviewActionPath,ss as humanizeSearchQuery,dh as humanizeToolName,zO as importSsoProviderFromMetadata,pV as inboxObservationSupersedes,db as initialWakeEscalationState,Ze as inputPath,Oj as installTemplate,Lu as interruptSessionPrompt,js as invalidateTokenCache,ya as inviteAccountMember,sc as inviteProjectMember,Ta as inviteRepoCollaborator,ms as isAbortError,YN as isAgentPart,vx as isAppRouteUrl,tq as isAttachment,oR as isAttachmentPartRef,en as isAuthFailure,Gi as isBillingError,JN as isCompactionPart,ws as isConfigured,NN as isContextTool,HR as isEmptyConversation,po as isEmptyShowPart,Nq as isErrorOutput,pF as isExternalUrl,Ni as isFeatureDisabledError,lh as isFilePart,aF as isInternalLocalhostUrl,Um as isInvisibleActivityPart,VI as isInviteSent,n1 as isLastUserMessage,RR as isLegacyMigratedSession,wI as isManagedGithubProject,$m as isNoGroupActivityTool,Ui as isOfferedModel,iW as isOpenCodeConfigInvalidError,tP as isPaintableSavedCopy,XN as isPatchPart,SK as isPersistableQueryKey,iF as isPreviewUrl,Dx as isProxiableLocalhostUrl,w$ as isQuestionTool,Ge as isReasoningPart,BA as isRetryableTurnError,wk as isRuntimeConfigInvalidError,kk as isRuntimeNotReadyResponse,Yf as isRuntimeReady,cW as isRuntimeStartingError,Wn as isSandboxNotReadyError,ho as isSelectableAgent,Wf as isServerReachable,M$ as isSessionAttachmentRef,iu as isSessionFresh,zE as isSessionStartError,x$ as isShellActivityTool,Fv as isShellMode,k1 as isShortOutput,_$ as isShowContentUnavailable,Dr as isShowPayloadEmpty,QN as isSnapshotPart,Lm as isStandaloneActivityTool,ZN as isStepPart,ys as isSubdomainPreviewUrl,qe as isTextPart,ie as isToolPart,sq as isToolPartHidden,hf as isTurnErrorCode,jf as isUnderSandboxRoot,uF as isWebProxyUrl,gS as isWireIdAheadOf,ka as leaveAccount,Ya as linkGitHubInstallation,Na as linkRepository,Cg as listAccountAudit,Eg as listAccountAuditWebhooks,ha as listAccountInvites,fa as listAccountMembers,mO as listAccountResourceGrants,Ic as listAccountSecretResources,oD as listAccountSessions,Pg as listAccountTokens,ia as listAccounts,CO as listActions,jd as listAgentIdentities,qc as listAllConnections,Xg as listAppAgents,rm as listAppDeployments,um as listAppMachines,Sm as listAppVolumeSnapshots,hm as listAppVolumes,Kg as listApps,Qd as listAssignments,AD as listAuditEvents,PD as listAuditWebhooks,qW as listBackups,GL as listBeeuniProjectSessions,FL as listBeeuniProjects,xf as listBeeuniPty,kp as listBillingTransactions,Yl as listChangeRequests,NM as listChannelBindings,RL as listColumns,IT as listConnectSections,CT as listConnectToolkits,Nc as listConnections,Ls as listConnectorAccounts,$s as listConnectorTools,el as listConnectors,EM as listCostByProject,tB as listCredentialEvents,eB as listCredentials,Fs as listDiscoverConnectors,TT as listDiscoverIntegrations,gl as listDiscoverSections,Xj as listDriveConflicts,e$ as listDriveFiles,BP as listDriveFolder,a$ as listDriveVersions,_f as listEnv,Bg as listFeaturedMarketplaces,IL as listFields,Cn as listFiles,Qj as listFolderPrincipals,dd as listGatewayLogs,Wa as listGitHubInstallations,Va as listGitHubRepositories,Ha as listGitHubRepositoryBranches,Ed as listGroupMembers,aO as listGroupProjectGrants,kd as listGroups,Ka as listLinkableGitHubInstallations,Ug as listMarketplaceCatalogItems,qg as listMarketplaceSources,Lg as listMarketplaces,cO as listMemberGroups,lO as listMemberProjectAccess,zL as listMilestoneEvents,VL as listMilestones,Pa as listMyAccountInvites,Cm as listNotifications,Kd as listOAuthClients,wg as listOAuthGrants,fc as listPendingApprovals,oc as listPendingProjectInvites,eg as listPermissions,_O as listPolicies,tc as listProjectAccess,Xa as listProjectAccessRequests,$d as listProjectAgentIdentities,DL as listProjectAgents,Ig as listProjectAudit,Gl as listProjectBranches,vg as listProjectCliTokens,Wl as listProjectCommits,Ml as listProjectDirectory,El as listProjectFiles,cc as listProjectGroupGrants,Pl as listProjectPolicies,xc as listProjectProviderOAuth,_g as listProjectReminders,dc as listProjectResourceGrants,xl as listProjectSandboxTemplates,Tl as listProjectSandboxes,bc as listProjectSecrets,Et as listProjectSessions,Pu as listProjectSessionsPage,wl as listProjectSnapshots,op as listProjectTriggerEventApps,sp as listProjectTriggerEventTypes,Xu as listProjectTriggers,kt as listProjects,Ia as listProjectsForAccount,Ok as listPublicMarketplaceItems,Dk as listPublicMarketplaces,ZM as listReferrals,ng as listReviewItems,Dd as listRoles,OW as listSandboxProjectMembers,lg as listSandboxShares,wW as listSandboxes,OO as listScimTokens,dD as listServiceAccountsApi,iB as listServiceTemplates,oB as listServices,RT as listSessionConnectRequests,Wp as listSessionCosts,l$ as listSessionDrives,ju as listSessionPrompts,Lc as listSessionProviderSecretPools,ku as listSessionPublicShares,mg as listSessionReminders,yc as listSessionsNeedingInput,fj as listSignedInDevices,QO as listSsoGroupMappings,uL as listTaskEvents,cL as listTasks,EL as listTemplates,_L as listTicketEvents,hL as listTickets,qR as loadHttpSessionHistory,pt as loadPreviewUrlTemplate,Sh as looksLikeError,gG as looksLikeHtml,sG as looksLikeJsonPayload,s$ as makeDriveFolder,tj as mapApiReviewItem,Im as markNotificationsRead,Sr as markSessionFresh,gf as maxWireIdClock,j1 as memoryRelPath,CG as mergeBurstSteps,eu as mergeChangeRequest,EG as messageCreatedAt,Iv as messageTime,Lo as mintWireMessageId,ff as mintWireMessageIdAbove,Mn as mkdir,OC as modelInDefaultView,iC as modelRefToKey,o$ as moveDriveFile,Th as narrateFailedStep,Ih as narrateStep,ps as narrationToolName,IS as narrowChatEvent,mS as newestWireIdClock,oK as nextConnectorPollDelay,fe as normalizeActivityToolName,dF as normalizeExternalInput,ee as normalizeName,ph as normalizeToolName,TR as notifyHostSignal,Zl as openChangeRequest,qo as openEventStream,_l as paginateConnector,er as parseBillingError,aG as parseEmbeddedFailure,L$ as parseFlagOverride,WA as parseJsonFailure,Yr as parseLocalhostUrl,$1 as parseMemoryView,sW as parseOpenCodeErrorPayload,N1 as parsePresentationOutput,zf as parseProxyHop,G1 as parseQuestionAnswersFromOutput,V1 as parseReadOutput,Jh as parseRuntimeErrorPayload,YA as parseScrapeInputUrls,QA as parseScrapeOutput,oy as parseSubdomainUrl,C1 as parseTaskRows,lF as parseWebProxyUrl,vh as parseWebSearchOutput,xh as partOutcome,KL as patchBeeuniProject,B1 as patchVerb,AC as pickerProviderList,R as platformConfig,wT as pollConnectionOAuth2DeviceAuthorization,Os as pollProjectProviderOAuth,pd as previewGatewayRoute,FO as previewMfaRequired,BM as previewSlackIdentity,FM as previewTeamsIdentity,Gd as probeEffectivePermission,Wd as probeEffectivePermissions,NK as probePreviewPort,$l as projectArchiveRequest,xV as projectCompacting,oC as projectConfigAgentsToOpenCodeAgents,wb as projectConfigAgentsToRuntimeAgents,YK as projectSessionConnection,NV as projectSessionForRuntimeId,HE as projectSessionStartSeed,mV as projectWorking,ja as provisionProject,vI as provisionProjectStream,EI as provisionProjectWithToken,ry as proxyLocalhostUrl,oF as proxyUrlToInternal,Bp as purchaseCredits,yT as putConnectionOAuth2Application,Ty as rawErrorText,CW as reactivateSandbox,jp as reactivateSubscription,Ii as readBeeuniMember,Tn as readBlob,n$ as readDriveFile,In as readFile,Dl as readProjectFile,kv as reasoningIsRunning,Al as rebuildProjectSnapshot,Gc as reconcileConnection,Wc as reconcileMemberConnection,lB as reconcileServices,Bk as recordPlatformLogout,pi as recoverLinkResults,JM as refreshReferralCode,mn as refreshSession,ao as registerAppArtifact,PT as registerConnectionOAuth2Client,km as registerDeviceToken,uB as registerService,Om as registerWebPushSubscription,ec as rejectProjectAccessRequest,cq as relativizePath,Wu as reloadProjectSessionConfig,Ku as reloadProjectSessionConfigStream,Dg as removeAccountAuditWebhook,ga as removeAccountBrandingAsset,Aa as removeAccountMember,vf as removeBeeuniPty,Od as removeGroupMember,Wg as removeMarketplaceSource,Jx as removeQueued,Yc as renameConnection,Hr as renameFile,xW as renameSandbox,nu as reopenChangeRequest,XL as reopenMilestone,Xx as reorderQueued,CL as replaceColumns,TL as replaceFields,qa as replaceProjectRepository,ML as replaceTemplates,wP as requestAccountDeletion,ru as requestChangesOnChangeRequest,KI as requestProjectAccess,$g as requestProjectConnector,jg as requestProjectSecret,SM as requestTopUp,ZR as requireBeeuniMember,_a as resendAccountInvite,ac as resendPendingProjectInvite,ma as resetAccountBranding,_B as resetClient,ud as resetGatewayRoutingPolicy,ko as resetPassword,xB as resetPublicClient,hc as resolveApproval,sC as resolveComposerAgent,jC as resolveComposerModel,sK as resolveConnectorStart,DC as resolveModelDefault,EE as resolvePublicShareUrl,mG as resolveScrapeResults,XG as resolveWorkingTurn,_M as resolvedPlan,gm as restartAppMachine,vr as restartProjectSession,vW as restartSandbox,wm as restoreAppVolume,WW as restoreBackup,c$ as restoreDriveVersion,Mc as retryAccountSecretResource,Yx as retryFailed,Bu as retrySessionPrompt,rB as revealCredential,XD as reviewItemTarget,kP as reviewSegmentForStatus,ej as reviewVerdictForStatus,jc as revokeAccountSecretResourceGrant,iD as revokeAccountSession,xg as revokeAccountToken,Zd as revokeAssignment,Vc as revokeConnection,Ad as revokeGatewayKey,Ag as revokeOAuthGrant,ic as revokePendingProjectInvite,rc as revokeProjectAccess,Rg as revokeProjectCliToken,jW as revokeSandboxProjectAccess,pg as revokeSandboxShare,jO as revokeScimToken,Cu as revokeSessionPublicShare,yt as rewriteLocalhostUrl,lm as rollbackApp,CR as rootRuntimeSession,Ec as rotateAccountSecretResource,Yd as rotateOAuthClientSecret,Ws as runConnector,vd as runGatewayPlayground,JI as runProjectProviderOAuthFlow,ki as runtimeSessionsOf,fx as runtimeSupports,xS as sanitizePtyChunk,za as saveGitHubInstallation,VR as savedCopyEmptyRoot,fm as scaleApp,$p as scheduleDowngrade,Fc as searchConnectorTools,Ol as searchProjectFiles,UG as segmentTurn,N$ as selectableProjectAgents,xo as sendMagicLink,eO as sendReferralEmails,AV as serverCompactionRevalidateAtMs,cB as serviceAction,$V as sessionConnectionLabel,jV as sessionListStatus,Yu as sessionModelPin,CE as sessionParentId,jE as sessionPromptActions,YE as sessionStartKey,$c as setAccountSecretResourceAccess,bp as setAgentScope,aT as setBootstrapAuthToken,iT as setCachedAuthToken,kT as setConnectionPolicies,rl as setConnectorAuthorizationStrategy,fl as setConnectorCredential,nl as setConnectorCredentialMode,cl as setConnectorName,il as setConnectorPolicies,MT as setConnectorSecretBinding,sl as setConnectorSensitive,zc as setDefaultConnection,MD as setEnterpriseDemo,Pf as setEnv,Pd as setGatewayBudget,ld as setGatewayRoutingPolicy,IO as setMemberSuperAdmin,NO as setMfaRequired,fp as setModelDefault,kc as setPersonalProjectSecret,Or as setProjectModelAccess,nM as setProjectModelEnablement,Ba as setProjectOnboardingComplete,II as setProjectOnboardingProfile,Sl as setProjectPolicies,Pc as setProjectSecretStrategy,zu as setProjectSessionModel,Hu as setProjectSessionScope,Su as setProjectSessionSharing,np as setProjectTriggersActivation,PE as setSavedCopyStore,GO as setSessionOversight,Bc as setSessionProviderSecretPool,Au as setSessionWatch,ZK as settleSessionConnection,HW as setupSSH,Qc as shareConnection,Yj as shareFolder,A$ as shellActivityGroupLabel,Hh as shellExitCode,s1 as shouldHideResponsePart,tA as shouldShowToolPart,VG as shouldSuppressWorkingTurnBusy,qG as showGroupItems,Bh as showTurnBusyIndicator,So as signInWithPassword,Ao as signInWithProvider,To as signInWithSso,Mo as signOut,yj as signOutDevice,Po as signUp,Q1 as skillDocumentPath,J1 as skillInputDir,jq as sortSessions,b1 as splitTurnWork,nq as splitUserParts,im as startApp,pm as startAppMachine,ST as startConnectionOAuth2Authorization,xT as startConnectionOAuth2DeviceAuthorization,Gk as startConnectorSetupLink,Ms as startProjectProviderOAuth,ct as startProjectSession,dp as startProjectSessionOrThrow,zk as startSessionWithToken,mL as startTask,wh as stepLabel,am as stopApp,dm as stopAppMachine,kr as stopProjectSession,kW as stopSandbox,Ja as storeGitHubUserToken,dq as stripAnsi,le as stripTrailingSlashes,Lk as submitAccessRequest,Yk as submitDemoRequest,Nk as submitOAuthConsent,sg as submitReviewItem,Vk as submitSecretSetupLink,tl as syncConnectors,vM as syncSubscription,wB as systemReload,ft as toDaemonPath,jx as toInternalUrl,Rn as toSandboxAbsolutePath,Sq as toToolView,$f as toWorkspaceRelative,Bw as toolCallBlock,Fw as toolCallMetadata,ii as toolInfo,pe as toolKind,hk as toolViewModel,bS as triggersRequest,SR as turnEndCause,_V as turnEndNotice,Mq as turnHasSteps,zG as turnIsConfirmedActive,YG as turnRendersQueued,LV as turnRetryLabel,AL as unassignTicket,Rm as unregisterDeviceToken,Dm as unregisterWebPushSubscription,Jj as unshareFolder,he as unwrapError,Og as updateAccountAuditWebhook,pa as updateAccountBranding,va as updateAccountMemberRole,la as updateAccountName,gM as updateAgentConfig,Hg as updateApp,Zg as updateAppAccess,_m as updateAppVolume,xD as updateAuditWebhook,Af as updateBeeuniPty,ou as updateChangeRequest,qM as updateChannelBinding,Kc as updateConnectionCredential,ad as updateEmailPolicy,Ua as updateExperimentalFeature,$a as updateFeatureFlag,Id as updateGroup,JL as updateMilestone,Em as updateNotificationPreferences,zd as updateOAuthClient,Ro as updatePassword,cD as updatePatPolicy,SO as updatePolicy,pr as updateProject,nc as updateProjectAccess,$L as updateProjectAgent,_p as updateProjectDefaultAgent,uc as updateProjectGroupGrant,La as updateProjectSandboxProvider,Nu as updateProjectSession,ep as updateProjectTrigger,Fd as updateRole,Nd as updateRolePermissions,Rl as updateSandboxTemplate,sD as updateSessionPolicy,ro as updateSessionReminder,hg as updateSessionReminders,gL as updateTask,CI as updateTemplateWarmPool,SL as updateTicket,xL as updateTicketStatus,Io as updateUserMetadata,da as uploadAccountBrandingAsset,tm as uploadAppArtifactArchive,Bs as uploadConnectorAttachment,r$ as uploadDriveFile,En as uploadFile,cx as uploadNativeFile,Pr as uploadPromptAttachment,Bm as uploadSessionAttachment,nd as uploadSlackChannelFile,An as uploadTimeoutMsForBytes,nB as upsertCredential,Ac as upsertProjectGitCredential,_c as upsertProjectSecret,Ea as validateProjectManifest,QM as validateReferralCode,Ra as validateToken,nC as verifyBeeuniToken,VM as verifyGatewayProvider,wo as verifyOtp,YO as verifySsoDomain,MV as wakeEscalationAttemptSummary,EV as wakeEscalationNote,IV as wakeProgressFingerprint,Ut as wireIdClock,_n as wireIdClockAt,Lt as wireIdClockDelta,_1 as workedForLabel,fV as workingExpiryAtMs,JG as workingTurnDrawsBusyRow,v$ as writeActivityGroupLabel,Vr as writeFile,di as wsDomain,dG as wsFavicon,pG as wsRootDomain};
|